我试图在R中使用tesserect包从某些打印表单中提取一些信息。但是,我发现很难处理某些字符超出表单边距的情况。
阅读一些教程后,删除边框似乎可以改善我的结果。无论如何,我可以使用包给availbe来做到这一点。我已经查看了包裹" magick"而且似乎没有检测边界的功能。 最后,如果有另一种方法来处理这个问题,请告诉我。 感谢
答案 0 :(得分:0)
是的,你是对的,绝对从图像中删除线条/网格将提高OCR的准确性。
假设图像中只有水平和垂直线以及印刷文本,这是我的方法,你可以试一试。
1)根据图像中的线条找到长度超过给定阈值的水平线。
2)找到线条粗细
3)扫描线像素,如果线像素上方和下方没有黑色像素,则删除它们。此步骤将避免在删除行时删除字符像素。
4)对于垂直线使用相同的1,2。
5)如果线像素的左右位置没有黑色像素,则再次扫描垂直线并删除线像素。