我需要使用OpenCV来检测图像中的所有文本块,以准备将它们发送到OCR。 从我对OpenCV的有限知识来看,这是我可能的解决方案之一,但我不确定如何将其转化为真正的解决方案。
这会有用吗?如果是这样,我如何“执行”这个?扫描可能有多个文本块,我在iOS上这样做。
这适用于名片等内容吗?每个角落可能都有文本块?我只需要扫描文本并一起扫描组/块。
答案 0 :(得分:4)
我最近使用以下方法来提取文本blob:
以上对于干净背景的文本效果相当不错,但是如果有很多非文本艺术作品,它确实检测到非文本blob,因为唯一的OCR前过滤是“类似大小和附近”度量标准。
如果您正在扫描名片,它可能已经足够好了。
您需要为您的域校准“附近”和类似大小的启发式方法。
对于“相似大小”,我使用3/5和5/3之间关键点大小的比率,并且“附近”定义为关键点之间的距离小于两者中最小关键点大小的7/4倍。
在自然图像中,您需要更强大的方法。为此,我可以推荐以下论文: