PSENet
PSENet copied to clipboard
合并文本框
如何合并pse给出的文本框?
如何合并图中的文本框,请给我一些建议,🙏。
我觉得从标注上把他们标注为一行,然后重新训练网络可能会比较好。 从图里面的结果看来,这是word level的,然后您这边需要line level的标注。 这是两种不同级别的标注方案。
每个bbox的中心点向y轴 投影 可以分行 行内再排个序就行了
@xdker 我这个是两栏式的,如果投影的话,左右两栏的文本会被连在一起,可以通过设置一个阈值分开左右两栏的文本,但是很难找到一个阈值覆盖所有的两栏式的文本。
文本框未合并的效果
合并文本框之后的效果,水平框距离多远需要合并,根据阈值操作
请问一下你是怎样实现矩形框合并的 @chen849157649
请问一下你是怎样实现矩形框合并的 @chen849157649
@mayidu ,点击https://github.com/xiaomaxiao/PSENET/blob/master/predict.py#L64,这个项目中写了文本框合并操作。你参考看看
感谢!
@chen849157649 大神你好,你发的那个合并框的链接过期啦,能否再发一个,想了解一下怎么做的
@chen849157649 大神你好,你发的那个合并框的链接过期啦,能否再发一个,想了解一下怎么做的
@jiangzz1628 复制链接到浏览器再打开
那个PSENET合并的是水平框,我比较想知道那些带角度的框怎么合并的?比如两个同一角度的文本行,检测两个框却是一个水平一个倾斜,这种有思路么?
那个PSENET合并的是水平框,我比较想知道那些带角度的框怎么合并的?比如两个同一角度的文本行,检测两个框却是一个水平一个倾斜,这种有思路么?
github上有个table-ocr的项目,里面有根据斜率合并的版本https://github.com/chineseocr/table-ocr
def draw_bbox(bboxs,img):
bboxs_res = []
for bbox in bboxs:
bbox = np.reshape(bbox,(4,2))
cv2.drawContours(img, [bbox],-1, (0, 255, 0), 2)
bboxs_res.append(bbox)
return bboxs_res, img
box = self.detector.predict(img_path) #作者模型的输出
img = cv2.imread(img_path)
bboxs_res, box_img = draw_bbox(box['bboxes'], img)