Closed liangxinxin closed 6 months ago
你好,我也遇到了这样的问题。请问你现在有解决思路了吗?可否交流一下
我打算在返回的box上加一个OCR过程,识别 box的内容
完全不用啊,你传参时候,使用合合ocr或者百度付费ocr,就可以全识别了
完全不用啊,你传参时候,使用合合ocr或者百度付费ocr,就可以全识别了
那你不微调模型吗
你不读源码?在源码里面把self.ocr_result换成你自己的ocr就行了啊。因为付费的提供每个字的box。所以这样打的框,100%准
请提出你的问题
当输入图片,输出预测结果时,会出现某个字段的预测box是正确的,但是box中包含的字符存在缺失的情况
在确定预测的box包含的字符这一步,会用到计算字符宽度的逻辑,这个字符宽度目前是用的平均宽度,实际上 一行文本同时包含 中文、数字、字母时,每个字符宽度是不一样的,那么此处使用平均宽度来计算当前字符box是否在预测的box中, 会判断错误
代码中计算字符宽度代码如下: if len(segment) == 2 or (len(segment) == 3 and segment[2] != "table"): char_w = (sbox[2] - sbox[0]) 1.0 / text_len # 遍历每个字符box,判断是否在标注的box的io1 flag = False for i in range(text_len): cbox = [sbox[0] + i char_w, sbox[1], sbox[0] + (i + 1) * char_w, sbox[3]] c_covered = _io1(cbox, box) if c_covered >= threshold: positions.append(global_offset) elif ( cbox[2] == min(cbox[2], box[2]) and cbox[0] == max(cbox[0], box[0]) and cbox[1] < box[1] and cbox[3] > box[3] ): if c_covered > 0.5: positions.append(global_offset) global_offset += 1
请问如何改进这一步,准确的定位预测box中包含的字符?谢谢
我也遇到了这个问题,定位么也是宽度计算问题,想问下后来有从代码层面解决么
数字和大小写字母,汉字分别给不同宽度
请提出你的问题
当输入图片,输出预测结果时,会出现某个字段的预测box是正确的,但是box中包含的字符存在缺失的情况
在确定预测的box包含的字符这一步,会用到计算字符宽度的逻辑,这个字符宽度目前是用的平均宽度,实际上 一行文本同时包含 中文、数字、字母时,每个字符宽度是不一样的,那么此处使用平均宽度来计算当前字符box是否在预测的box中, 会判断错误
代码中计算字符宽度代码如下: if len(segment) == 2 or (len(segment) == 3 and segment[2] != "table"): char_w = (sbox[2] - sbox[0]) * 1.0 / text_len
遍历每个字符box,判断是否在标注的box的io1
请问如何改进这一步,准确的定位预测box中包含的字符?谢谢