Convert between text-label and text-index
| 200 | |
| 201 | |
| 202 | class CTCLabelDecode(BaseRecLabelDecode): |
| 203 | """ Convert between text-label and text-index """ |
| 204 | |
| 205 | def __init__( |
| 206 | self, |
| 207 | config, |
| 208 | #character_dict_path=None, |
| 209 | #character_type='ch', |
| 210 | #use_space_char=False, |
| 211 | **kwargs): |
| 212 | super(CTCLabelDecode, self).__init__(config) |
| 213 | |
| 214 | def __call__(self, preds, label=None, *args, **kwargs): |
| 215 | preds_idx = preds.argmax(axis=2) |
| 216 | preds_prob = preds.max(axis=2) |
| 217 | text = self.decode(preds_idx, preds_prob, is_remove_duplicate=True) |
| 218 | if label is None: |
| 219 | return text |
| 220 | label = self.decode(label) |
| 221 | return text, label |
| 222 | |
| 223 | def add_special_char(self, dict_character): |
| 224 | dict_character = ['blank'] + dict_character |
| 225 | return dict_character |
| 226 | |
| 227 | class OCRReader(object): |
| 228 | def __init__(self, |