@@ -47,11 +47,19 @@ TESSDATA_PREFIX=${TESSDATA_PREFIX:-}
47
47
48
48
# Logging helper functions.
49
49
tlog () {
50
- echo -e $* 2>&1 1>&2 | tee -a ${LOG_FILE}
50
+ if test -z " ${LOG_FILE:- } " ; then
51
+ echo -e $*
52
+ else
53
+ echo -e $* | tee -a ${LOG_FILE}
54
+ fi
51
55
}
52
56
53
57
err_exit () {
54
- echo -e " ERROR: " $* 2>&1 1>&2 | tee -a ${LOG_FILE}
58
+ if test -z " ${LOG_FILE:- } " ; then
59
+ echo -e " ERROR: " $*
60
+ else
61
+ echo -e " ERROR: " $* | tee -a ${LOG_FILE}
62
+ fi
55
63
exit 1
56
64
}
57
65
@@ -95,8 +103,8 @@ check_file_readable() {
95
103
# if it looks like a flag.
96
104
# Usage: parse_value VAR_NAME VALUE
97
105
parse_value () {
98
- local val=" $2 "
99
- if [[ -z $val ]]; then
106
+ local val=" ${2 :- } "
107
+ if [[ -z " $val " ]]; then
100
108
err_exit " Missing value for variable $1 "
101
109
exit
102
110
fi
@@ -137,19 +145,19 @@ parse_flags() {
137
145
parse_value " EXPOSURES" " $exp "
138
146
i=$(( j- 1 )) ;;
139
147
--fonts_dir)
140
- parse_value " FONTS_DIR" ${ARGV[$j]}
148
+ parse_value " FONTS_DIR" ${ARGV[$j]:- }
141
149
i=$j ;;
142
150
--lang)
143
- parse_value " LANG_CODE" ${ARGV[$j]}
151
+ parse_value " LANG_CODE" ${ARGV[$j]:- }
144
152
i=$j ;;
145
153
--langdata_dir)
146
- parse_value " LANGDATA_ROOT" ${ARGV[$j]}
154
+ parse_value " LANGDATA_ROOT" ${ARGV[$j]:- }
147
155
i=$j ;;
148
156
--maxpages)
149
- parse_value " MAX_PAGES" ${ARGV[$j]}
157
+ parse_value " MAX_PAGES" ${ARGV[$j]:- }
150
158
i=$j ;;
151
159
--output_dir)
152
- parse_value " OUTPUT_DIR" ${ARGV[$j]}
160
+ parse_value " OUTPUT_DIR" ${ARGV[$j]:- }
153
161
i=$j ;;
154
162
--overwrite)
155
163
OVERWRITE=1 ;;
@@ -162,18 +170,18 @@ parse_flags() {
162
170
--noextract_font_properties)
163
171
EXTRACT_FONT_PROPERTIES=0 ;;
164
172
--tessdata_dir)
165
- parse_value " TESSDATA_DIR" ${ARGV[$j]}
173
+ parse_value " TESSDATA_DIR" ${ARGV[$j]:- }
166
174
i=$j ;;
167
175
--training_text)
168
- parse_value " TRAINING_TEXT" " ${ARGV[$j]} "
176
+ parse_value " TRAINING_TEXT" " ${ARGV[$j]:- } "
169
177
i=$j ;;
170
178
--wordlist)
171
- parse_value " WORDLIST_FILE" ${ARGV[$j]}
179
+ parse_value " WORDLIST_FILE" ${ARGV[$j]:- }
172
180
i=$j ;;
173
181
--workspace_dir)
174
182
rmdir " $FONT_CONFIG_CACHE "
175
183
rmdir " $WORKSPACE_DIR "
176
- parse_value " WORKSPACE_DIR" ${ARGV[$j]}
184
+ parse_value " WORKSPACE_DIR" ${ARGV[$j]:- }
177
185
FONT_CONFIG_CACHE=$WORKSPACE_DIR /fc-cache
178
186
mkdir -p $FONT_CONFIG_CACHE
179
187
i=$j ;;
@@ -182,13 +190,13 @@ parse_flags() {
182
190
esac
183
191
i=$(( i+ 1 ))
184
192
done
185
- if [[ -z ${LANG_CODE} ]]; then
193
+ if [[ -z ${LANG_CODE:- } ]]; then
186
194
err_exit " Need to specify a language --lang"
187
195
fi
188
- if [[ -z ${LANGDATA_ROOT} ]]; then
196
+ if [[ -z ${LANGDATA_ROOT:- } ]]; then
189
197
err_exit " Need to specify path to language files --langdata_dir"
190
198
fi
191
- if [[ -z ${TESSDATA_DIR} ]]; then
199
+ if [[ -z ${TESSDATA_DIR:- } ]]; then
192
200
if [[ -z ${TESSDATA_PREFIX} ]]; then
193
201
err_exit " Need to specify a --tessdata_dir or have a " \
194
202
" TESSDATA_PREFIX variable defined in your environment"
@@ -267,13 +275,13 @@ generate_font_image() {
267
275
268
276
# Phase I : Generate (I)mages from training text for each font.
269
277
phase_I_generate_image () {
270
- local par_factor=$1
278
+ local par_factor=${1 :- }
271
279
if [[ -z ${par_factor} || ${par_factor} -le 0 ]]; then
272
280
par_factor=1
273
281
fi
274
282
tlog " \n=== Phase I: Generating training images ==="
275
- if [[ -z ${TRAINING_TEXT} ]] || [[ ! -r ${TRAINING_TEXT} ]] ; then
276
- err_exit " Could not find training text file ${TRAINING_TEXT} "
283
+ if [[ -z ${TRAINING_TEXT:- } ]] || test ! -r " ${TRAINING_TEXT} " ; then
284
+ err_exit " Could not find training text file ${TRAINING_TEXT:- } "
277
285
fi
278
286
CHAR_SPACING=" 0.0"
279
287
@@ -545,7 +553,7 @@ make__lstmdata() {
545
553
--puncs " ${lang_prefix} .punc" \
546
554
--output_dir " ${OUTPUT_DIR} " --lang " ${LANG_CODE} " \
547
555
" ${pass_through} " " ${lang_is_rtl} "
548
-
556
+
549
557
if (( SAVE_BOX_TIFF)) ; then
550
558
tlog " \n=== Saving box/tiff pairs for training data ==="
551
559
for f in " ${TRAINING_DIR} /${LANG_CODE} " .* .box; do
0 commit comments