Skip to content

Commit 718fe31

Browse files
YacobBYBelval
authored andcommitted
Add --case upper/lower argument
1 parent d342133 commit 718fe31

1 file changed

Lines changed: 42 additions & 27 deletions

File tree

  • TextRecognitionDataGenerator

TextRecognitionDataGenerator/run.py

Lines changed: 42 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,14 @@
1414
from data_generator import FakeTextDataGenerator
1515
from multiprocessing import Pool
1616

17+
1718
def margins(margin):
1819
margins = margin.split(',')
1920
if len(margins) == 1:
2021
return [margins[0]] * 4
2122
return [int(m) for m in margins]
2223

24+
2325
def parse_arguments():
2426
"""
2527
Parse the command line arguments of the program.
@@ -260,10 +262,16 @@ def parse_arguments():
260262
nargs="?",
261263
help="Define font to be used"
262264
)
263-
264-
265+
parser.add_argument(
266+
"-ca",
267+
"--case",
268+
type=str,
269+
nargs="?",
270+
help="Generate upper or lowercase only. arguments: upper or lower. Example: --case upper"
271+
)
265272
return parser.parse_args()
266273

274+
267275
def load_dict(lang):
268276
"""
269277
Read the dictionnary file and returns all words in it.
@@ -274,6 +282,7 @@ def load_dict(lang):
274282
lang_dict = [l for l in d.read().splitlines() if len(l) > 0]
275283
return lang_dict
276284

285+
277286
def load_fonts(lang):
278287
"""
279288
Load all fonts in the fonts directories
@@ -284,6 +293,7 @@ def load_fonts(lang):
284293
else:
285294
return [os.path.join('fonts/latin', font) for font in os.listdir('fonts/latin')]
286295

296+
287297
def main():
288298
"""
289299
Description: Main function
@@ -327,36 +337,40 @@ def main():
327337
else:
328338
strings = create_strings_from_dict(args.length, args.random, args.count, lang_dict)
329339

340+
if args.case == 'upper':
341+
strings = [x.upper() for x in strings]
342+
if args.case == 'lower':
343+
strings = [x.lower() for x in strings]
330344

331345
string_count = len(strings)
332346

333347
p = Pool(args.thread_count)
334348
for _ in tqdm(p.imap_unordered(
335-
FakeTextDataGenerator.generate_from_tuple,
336-
zip(
337-
[i for i in range(0, string_count)],
338-
strings,
339-
[fonts[rnd.randrange(0, len(fonts))] for _ in range(0, string_count)],
340-
[args.output_dir] * string_count,
341-
[args.format] * string_count,
342-
[args.extension] * string_count,
343-
[args.skew_angle] * string_count,
344-
[args.random_skew] * string_count,
345-
[args.blur] * string_count,
346-
[args.random_blur] * string_count,
347-
[args.background] * string_count,
348-
[args.distorsion] * string_count,
349-
[args.distorsion_orientation] * string_count,
350-
[args.handwritten] * string_count,
351-
[args.name_format] * string_count,
352-
[args.width] * string_count,
353-
[args.alignment] * string_count,
354-
[args.text_color] * string_count,
355-
[args.orientation] * string_count,
356-
[args.space_width] * string_count,
357-
[args.margins] * string_count,
358-
[args.fit] * string_count
359-
)
349+
FakeTextDataGenerator.generate_from_tuple,
350+
zip(
351+
[i for i in range(0, string_count)],
352+
strings,
353+
[fonts[rnd.randrange(0, len(fonts))] for _ in range(0, string_count)],
354+
[args.output_dir] * string_count,
355+
[args.format] * string_count,
356+
[args.extension] * string_count,
357+
[args.skew_angle] * string_count,
358+
[args.random_skew] * string_count,
359+
[args.blur] * string_count,
360+
[args.random_blur] * string_count,
361+
[args.background] * string_count,
362+
[args.distorsion] * string_count,
363+
[args.distorsion_orientation] * string_count,
364+
[args.handwritten] * string_count,
365+
[args.name_format] * string_count,
366+
[args.width] * string_count,
367+
[args.alignment] * string_count,
368+
[args.text_color] * string_count,
369+
[args.orientation] * string_count,
370+
[args.space_width] * string_count,
371+
[args.margins] * string_count,
372+
[args.fit] * string_count
373+
)
360374
), total=args.count):
361375
pass
362376
p.terminate()
@@ -368,5 +382,6 @@ def main():
368382
file_name = str(i) + "." + args.extension
369383
f.write("{} {}\n".format(file_name, strings[i]))
370384

385+
371386
if __name__ == '__main__':
372387
main()

0 commit comments

Comments
 (0)