MCPcopy Create free account
hub / github.com/Topdu/OpenOCR / __init__

Method __init__

openrec/preprocess/ctc_label_encode.py:11–47  ·  view source on GitHub ↗
(
        self,
        max_text_length,
        character_dict_path=None,
        use_space_char=False,
        lower=False,
    )

Source from the content-addressed store, hash-verified

9 """Convert between text-label and text-index."""
10
11 def __init__(
12 self,
13 max_text_length,
14 character_dict_path=None,
15 use_space_char=False,
16 lower=False,
17 ):
18 self.max_text_len = max_text_length
19 self.beg_str = 'sos'
20 self.end_str = 'eos'
21 self.lower = lower
22 self.reverse = False
23 if character_dict_path is None:
24 logger = get_logger()
25 logger.warning(
26 'The character_dict_path is None, model can only recognize number and lower letters'
27 )
28 self.character_str = '0123456789abcdefghijklmnopqrstuvwxyz'
29 dict_character = list(self.character_str)
30 self.lower = True
31 else:
32 self.character_str = []
33 with open(character_dict_path, 'rb') as fin:
34 lines = fin.readlines()
35 for line in lines:
36 line = line.decode('utf-8').strip('\n').strip('\r\n')
37 self.character_str.append(line)
38 if use_space_char:
39 self.character_str.append(' ')
40 dict_character = list(self.character_str)
41 if 'arabic' in character_dict_path:
42 self.reverse = True
43 dict_character = self.add_special_char(dict_character)
44 self.dict = {}
45 for i, char in enumerate(dict_character):
46 self.dict[char] = i
47 self.character = dict_character
48
49 def label_reverse(self, text):
50 text_re = []

Callers

nothing calls this directly

Calls 3

add_special_charMethod · 0.95
get_loggerFunction · 0.90
decodeMethod · 0.45

Tested by

no test coverage detected