背景介绍
给出一张文档材料,如何在一大堆的材料中做文档图片的比对呢? 给出这个问题的同时,我想到了各种图像相似度计算方法, 各种距离方法。然而,我忽略了文档图像的本质。
什么是文档图片
文档图片也就是我们经常看到的扫描件吧,他和我们常见的照片还是有很大的。照片的元素丰富,而文档一般只有文字、表格、图片,还有一些附件信息组成。文档图片还有的特点就是背景负责,同一份文档,通过不同设备的采集,所附加的噪音可能大不相同。还有采样设备的差异,导致采样率差距很大,采集的图片大小不一致。还有一种情况,同一份文档,有的文档盖了一个章,一份文档盖了3个章。
扫描的图片可能会增加一些黑色的斑点,而拍照甚至会改变背景颜色。如果用上述的方法,会直接导致图片检测误差太大。
总结一下,文档图片的特征:
- 1 元素单一: 文字、表格、图片
- 2.背景差距大;
- 3.大小有差别;
- 4.附近信息的差异;
设计思路
既然常规的方法我们用不着,那么就设计一点其他方法吧,好在文件流转的过程中通过了OCR 识别方法,可以通过接口获取到每个文字的坐标信息,图片的大小信息,以及一些文档关键元素(章、图片、二维码)的类别和坐标。
利用这些信息,我们可以通过文字的坐标信息比对来判断文档图片的“骨架”的相似度,然后通过文字的编辑距离来判断内容的相似性。文件的附加信息可以通过信息的类别和具体的内容进行比对。
- 面积比 : 源文件与目标文件骨架网络交叉面积与源文件的面积的比,用于计算骨架上的重合度。
- 编辑距离 : 用于计算文字上的相似度
- IOU,目标检测常用的指标,表示2个面积的交集与并集的比,如果大于一定的阈值,在提取具体的内容进行细节的比对
总结
通过比对现有方法的效果和这种综合方法的效果,可以发现,这种方法更适合文档图像,但是,这种方法有严重的依赖性,依赖于OCR组件与相应的检出工具,对性能有很大的影响。