文档图像矫正方法、电子设备及存储介质与流程

未命名 07-23 阅读:104 评论:0


1.本技术涉及电子技术领域,尤其涉及一种文档图像矫正方法、电子设备及存储介质。


背景技术:

2.随着电子设备的发展和普及,一些电子设备可以支持光学字符识别(optical character recognition,ocr)功能,用户可以使用电子设备来对纸质文档进行拍摄,得到文档图像,并采用ocr功能来自动识别文档图像中的文本信息。
3.然而,受到拍摄设备、拍照水平、环境以及纸张状态等因素的影响,拍摄得到的文档图像的内容可能会存在不同程度的弯折、弯曲、褶皱或者透视等扭曲情况,从而影响ocr识别得到的文本信息的准确率。
4.因此,如何对存在扭曲的文档图像进行矫正,是一个需要解决的问题。


技术实现要素:

5.本技术实施例提供一种文档图像矫正方法、电子设备及存储介质,在对扭曲文档图像进行矫正的过程中,对扭曲文档图像的边缘进行补充,来改善矫正后的文档图像的边缘处的文字信息丢失的情况,从而提升矫正后的文档图像的质量。
6.第一方面,本技术实施例提出一种文档图像矫正方法,应用于电子设备,该方法包括:获取扭曲文档图像;采用文档矫正模型对扭曲文档图像进行处理,得到扭曲文档图像对应的多个第一控制点的坐标位置,第一控制点包括扭曲文档图像中的文本特征所处的点,文本特征包括文档边缘、文本行以及插图边缘线中的至少一项;根据多个第一控制点的坐标位置,对扭曲文档图像的边缘进行补充,得到第一文档图像;对第一文档图像进行采样,得到第二文档图像。
7.这样,本技术实施例针对边缘不完整的扭曲文档图像,可以对扭曲文档图像的边缘进行补充,并对边缘补充后的第一文档图像进行采样,以实现文档矫正,因此,本技术实施例可以改善矫正后的文档图像的边缘处的文字信息丢失的情况,从而提升矫正后的文档图像的质量。
8.在一种可能的实现方式中,根据多个第一控制点的坐标位置,对扭曲文档图像的边缘进行补充,得到第一文档图像,包括:根据多个第一控制点的坐标位置,确定扭曲文档图像的四周边缘处待补充的边缘尺寸;采用扭曲文档图像的四周边缘中的每个目标边缘处的边缘图像,对扭曲文档图像中属于同一方位的目标边缘进行补充,得到第三文档图像;基于第三文档图像,生成第一文档图像。其中,扭曲文档图像的四周边缘包括左侧边缘、右侧边缘、上侧边缘和下侧边缘,目标边缘包括左侧边缘、右侧边缘、上侧边缘和下侧边缘中的至少一个边缘,每个目标边缘处的边缘图像的尺寸等于同一方位的目标边缘处待补充的边缘尺寸。这样,本技术实施例根据扭曲文档图像的四周边缘处待补充的边缘尺寸,分别对扭曲文档图像的左侧边缘、右侧边缘、上侧边缘和下侧边缘进行边缘补充,以实现对扭曲文档
图像的边缘进行修复。
9.在一种可能的实现方式中,根据多个第一控制点的坐标位置,确定扭曲文档图像的四周边缘处待补充的边缘尺寸,包括:获取多个第一控制点的坐标位置中的第一坐标值、第二坐标值、第三坐标值和第四坐标值;第一坐标值为多个第一控制点的坐标位置在扭曲文档图像的宽度方向上对应的多个坐标值中的最小值,第二坐标值为多个第一控制点的坐标位置在扭曲文档图像的高度方向上对应的多个坐标值中的最小值,第三坐标值为多个第一控制点的坐标位置在扭曲文档图像的宽度方向上对应的多个坐标值中的最大值,第四坐标值为多个第一控制点的坐标位置在扭曲文档图像的高度方向上对应的多个坐标值中的最大值;根据第一坐标值,确定左侧边缘处待补充的边缘尺寸;根据第二坐标值,确定上侧边缘处待补充的边缘尺寸;根据第三坐标值和扭曲文档图像的宽度,确定右侧边缘处待补充的边缘尺寸;根据第四坐标值和扭曲文档图像的高度,确定下侧边缘处待补充的边缘尺寸。这样,根据多个第一控制点的坐标位置、扭曲文档图像的宽度以及扭曲文档图像的高度,可以较为简单地确定出扭曲文档图像的左侧边缘、右侧边缘、上侧边缘和下侧边缘处待补充的边缘尺寸。
10.在一种可能的实现方式中,根据第一坐标值,确定左侧边缘处待补充的边缘尺寸,包括:在第一坐标值小于0的情况下,将第一坐标值的负值确定为左侧边缘处待补充的边缘尺寸。相应的,根据第二坐标值,确定上侧边缘处待补充的边缘尺寸,包括:在第二坐标值小于0的情况下,将第二坐标值的负值确定为上侧边缘处待补充的边缘尺寸。相应的,根据第三坐标值和扭曲文档图像的宽度,确定右侧边缘处待补充的边缘尺寸,包括:在第三坐标值大于扭曲文档图像的宽度的情况下,将第三坐标值与扭曲文档图像的宽度的差值,确定为右侧边缘处待补充的边缘尺寸。相应的,根据第四坐标值和扭曲文档图像的高度,确定下侧边缘处待补充的边缘尺寸,包括:在第四坐标值大于扭曲文档图像的高度的情况下,将第四坐标值与扭曲文档图像的高度的差值,确定下侧边缘处待补充的边缘尺寸。其中,在第一坐标值大于或等于0的情况下,左侧边缘处待补充的边缘尺寸等于0;在第二坐标值大于或等于0的情况下,上侧边缘处待补充的边缘尺寸等于0;在第三坐标值小于或等于扭曲文档图像的宽度的情况下,右侧边缘处待补充的边缘尺寸等于0;在第四坐标值小于或等于扭曲文档图像的高度的情况下,下侧边缘处待补充的边缘尺寸等于0。这样,可精确计算出扭曲文档图像的左侧边缘、右侧边缘、上侧边缘和下侧边缘处待补充的边缘尺寸,进而提高扭曲文档图像的边缘补充的效果。
11.在一种可能的实现方式中,基于第三文档图像,生成第一文档图像,包括:对第三文档图像进行模糊处理,得到第四文档图像;采用扭曲文档图像,替换第四文档图像中除已补充的边缘图像所在区域外的其他区域,得到第一文档图像。这样,对第三文档图像进行模糊处理,并采用扭曲文档图像,替换模糊处理后得到的第四文档图像中除已补充的边缘图像所在区域外的其他区域,以改善字迹重复出现的现象。
12.在一种可能的实现方式中,在采用文档矫正模型对扭曲文档图像进行处理,得到扭曲文档图像对应的多个第一控制点的坐标位置之前,还包括:对扭曲文档图像进行预处理,得到高频信息图和灰度图。相应的,采用文档矫正模型对扭曲文档图像进行处理,得到扭曲文档图像对应的多个第一控制点的坐标位置,包括:将高频信息图与灰度图并联拼接后输入文档矫正模型,得到扭曲文档图像对应的多个第一控制点的坐标位置。这样,通过对
扭曲文档图像进行预处理,去除扭曲文档图像中的低频信息,保留文档边缘、文本行以及插图边缘线等高频信息,获得高频信息图,以减少扭曲文档图像中的低频信息所造成的干扰。
13.在一种可能的实现方式中,对扭曲文档图像进行预处理,得到高频信息图和灰度图,包括:将扭曲文档图像转换为预设尺寸的预处理文档图像;将预处理文档图像转换成灰度图;对灰度图进行傅里叶变换,得到第一频域图;获取低频信息图,低频信息图的尺寸与预处理文档图像的尺寸相同,且低频信息图中每个像素点的像素值均为同一数值;对低频信息图进行傅里叶变换,得到第二频域图;采用第二频域图中预设区域处的频域值,替换第一频域图中预设区域处的频域值,得到第三频域图;对第三频域图进行傅里叶逆变换,得到高频信息图。这样,可以利用傅里叶变换和傅里叶逆变换等算法,去除扭曲文档图像中的低频信息,保留文档边缘、文本行以及插图边缘线等高频信息,获得高频信息图。
14.在一种可能的实现方式中,文档矫正模型包括特征提取模块和预测控制点模块。采用文档矫正模型对扭曲文档图像进行处理,得到扭曲文档图像对应的多个第一控制点的坐标位置,包括:采用特征提取模块对扭曲文档图像进行处理,得到扭曲文档图像对应的语义特征图;采用预测控制点模块对语义特征图进行处理,得到扭曲文档图像对应的多个第一控制点的坐标位置。这样,特征提取模块和预测控制点模块可以组成文档矫正模型,基于特征提取模块提取出扭曲文档图像中的语义特征,进而方便预测控制点模块可以从中提取出多个第一控制点的坐标位置。
15.在一种可能的实现方式中,特征提取模块包括多个空洞卷积网络,以及位于相邻两个空洞卷积网络之间的池化层,每个空洞卷积网络包括多个空洞卷积层。在除最后一个空洞卷积网络外的每个空洞卷积网络中,最后一个空洞卷积层的输出作为池化层的输入;每个池化层的输出作为后一个空洞卷积网络中的第一个空洞卷积层的输入。这样,采用轻量级的级联空洞卷积网络作为特征提取模块,来提取更大视野的文档边缘、文本行以及插图边缘线等语义特征,从而能够获取整个弯曲文本行的信息。
16.在一种可能的实现方式中,在每个空洞卷积网络中,任意两个空洞卷积层的空洞率不同。这样,在每个空洞卷积网络中,避免各个空洞卷积层采用同一空洞率,以防止出现空洞现象。
17.在一种可能的实现方式中,在每个空洞卷积网络中,按照多个空洞卷积层级联的先后顺序,多个空洞卷积层的空洞率从大到小设置。这样,使得轻量级的级联空洞卷积网络提取到的信息是从整体到局部的,相当于先关注文本行的整体方向信息再关注局部方向信息,提高对扭曲文档图像中的空白处方向的约束,从而提高文本的整体平整性。
18.在一种可能的实现方式中,预测控制点模块包括多个卷积层,语义特征图作为第一个卷积层的输入,最后一个卷积层的输出为扭曲文档图像对应的多个第一控制点的坐标位置,且最后一个卷积层的通道数等于2。
19.在一种可能的实现方式中,对第一文档图像进行采样,得到第二文档图像,包括:根据多个第一控制点的坐标位置和参考点的坐标位置,对第一文档图像进行采样,得到第二文档图像;参考点包括非扭曲文档图像中的文本特征所处的点,文本特征包括文档边缘、文本行以及插图边缘线中的至少一项。这样,可以基于多个第一控制点的坐标位置和参考点的坐标位置,对第一文档图像进行采样,以实现文档矫正。
20.在一种可能的实现方式中,根据多个第一控制点的坐标位置和参考点的坐标位
置,对第一文档图像进行采样,得到第二文档图像,包括:对多个第一控制点的坐标位置进行插值,得到扭曲文档图像对应的多个第二控制点的坐标位置;在扭曲文档图像的宽度方向上的第二控制点的数量,等于扭曲文档图像在宽度方向上的像素点数量,在扭曲文档图像的高度方向上的第二控制点的数量,等于扭曲文档图像在高度方向上的像素点数量;生成多个第二控制点中的每个第二控制点的坐标位置,与其对应的参考点的坐标位置之间的第一坐标对应关系,参考点的坐标位置与第二控制点的坐标位置一一对应;根据第一文档图像中已补充的边缘图像所在的方位,调整第一坐标对应关系中每个参考点的坐标位置对应的第二控制点的坐标位置,得到第二坐标对应关系;根据第二坐标对应关系对第一文档图像进行采样,得到第二文档图像,第二文档图像中的每个参考点的坐标位置处的像素值,等于第一文档图像中与参考点对应的第二控制点的坐标位置处的像素值。这样,根据第二坐标对应关系对第一文档图像进行采样,使得最终矫正得到的第二文档图像的质量更佳。
21.在一种可能的实现方式中,文档矫正模型是基于目标损失函数训练得到的,目标损失函数包括控制点距离损失函数和多尺度交叉方向损失函数,多尺度交叉方向损失函数包括多个尺度范围内的局部交叉方向损失之和。这样,加入多尺度交叉方向损失,可以提高整体文本行的方向约束,进而提高文本行的局部平滑性和整体平整性。
22.第二方面,本技术实施例提出一种电子设备,包括存储器和处理器,存储器用于存储计算机程序,处理器用于调用计算机程序,以执行上述的文档图像矫正方法。
23.第三方面,本技术实施例提出一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令被运行时,实现上述的文档图像矫正方法。
24.第二方面和第三方面各可能的实现方式,效果与第一方面以及第一方面的可能的设计中的效果类似,在此不再赘述。
附图说明
25.图1为本技术实施例提供的电子设备的硬件系统结构示意图;图2为本技术实施例提供的电子设备的软件系统结构示意图;图3为本技术实施例提供的一种开启文档图像校正功能的界面示意图;图4为本技术实施例提供的另一种开启文档图像校正功能的界面示意图;图5为本技术实施例提供的一种文档图像校正方法的处理流程图;图6为本技术实施例提供的对扭曲文档图像进行预处理的处理流程图;图7为本技术实施例提供的特征提取模块的结构示意图;图8为本技术实施例提供的空洞卷积对应的感受野的示意图;图9为本技术实施例提供的采用同一空洞率的空洞卷积造成空洞现象的示意图;图10为本技术实施例提供的预测控制点模块的结构示意图;图11为本技术实施例提供的对扭曲文档图像的边缘进行补充的流程图;图12为本技术实施例提供的一种文档图像校正装置的结构示意图;图13为本技术实施例提供的一种芯片的结构示意图。
具体实施方式
26.为了便于清楚描述本技术实施例的技术方案,在本技术的实施例中,采用了“第
一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一芯片和第二芯片仅仅是为了区分不同的芯片,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
27.需要说明的是,本技术实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本技术中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
28.本技术实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b的情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
29.在用户使用电子设备的过程中,可能会使用电子设备来对纸质文档进行拍摄,得到文档图像,并采用ocr功能来自动识别文档图像中的文本信息。然而,受到拍摄设备、拍照水平、环境以及纸张状态等因素的影响,拍摄得到的文档图像的内容可能会存在不同程度的弯折、弯曲、褶皱或者透视等扭曲形变情况。
30.例如,纸质文档由于各种原因,其本身会存在一定程度的弯折、弯曲或褶皱等,从而导致拍摄得到的文档图像的内容也表现出一定程度的弯折、弯曲或褶皱。或者,在拍摄纸质文档的过程中,如果纸质文档所处的平面与摄像头的成像平面不是平行的,即摄像头是从一定的倾斜角度下来拍摄纸质文档的,会导致拍摄得到的文档图像发生透视等形变情况。这种透视形变具体可呈现为距离摄像头越近的部分在文档图像中表现的越大,距离摄像头越远的部分在文档图像中表现的越小。
31.下面将这些内容中存在弯折、弯曲、褶皱或者透视等扭曲形变情况的文档图像,统称为扭曲文档图像。
32.在一些实施例中,可采用文档矫正技术来改善扭曲文档图像的扭曲形变问题,将扭曲文档图像恢复为规整(或平整)的文档图像,以提升文档ocr识别的准确率和文档图像质量,进而提升学习、办公效率。规整的文档图像也可称为非扭曲文档图像,非扭曲文档图像的内容不存在弯折、弯曲、褶皱或者透视等扭曲形变情况。
33.但是,对于一些边缘不完整的扭曲文档图像,在采用文档矫正技术对扭曲文档图像进行矫正之后,会导致矫正后的文档图像的边缘处的文字信息丢失,从而影响矫正后的文档图像的质量。
34.基于此,本技术实施例提供一种文档图像矫正方法,通过采用文档矫正模型对扭曲文档图像进行处理,得到扭曲文档图像对应的多个第一控制点的坐标位置,根据多个第一控制点的坐标位置,对扭曲文档图像的边缘进行补充,得到第一文档图像,对第一文档图像进行采样,得到第二文档图像。因此,本技术实施例针对边缘不完整的扭曲文档图像,可以对扭曲文档图像的边缘进行补充,并对边缘补充后的第一文档图像进行采样,以实现文档矫正,这样,本技术实施例可以改善矫正后的文档图像的边缘处的文字信息丢失的情况,
从而提升矫正后的文档图像的质量。
35.可以理解的是,本技术实施例不仅可以适用于边缘不完整的扭曲文档图像的矫正处理,还可以适用于边缘完整的扭曲文档图像的矫正处理。
36.本技术实施例提供的文档图像矫正方法,可以应用在具备文档图像矫正功能的电子设备中。电子设备包括终端设备,终端设备也可以称为终端(terminal)、用户设备(user equipment,ue)、移动台(mobile station,ms)、移动终端(mobile terminal,mt)等。电子设备可以是手机(mobile phone)、平板电脑(pad)、智能电视、穿戴式设备、带无线收发功能的电脑、虚拟现实(virtual reality,vr)终端设备、增强现实(augmented reality,ar)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。本技术的实施例对电子设备所采用的具体技术和具体设备形态不做限定。
37.为了能够更好地理解本技术实施例,下面对本技术实施例的电子设备的结构进行介绍。
38.图1示出了电子设备100的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriberidentification module,sim)卡接口195等。其中,传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
39.可以理解的是,本技术实施例示意的结构并不构成对电子设备100的具体限定。在本技术另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
40.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processingunit,gpu),图像信号处理器(image signal processor,isp),控制器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
41.控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
42.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从存储器中调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
43.充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过usb接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
44.电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
45.电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
46.天线1和天线2用于发射和接收电磁波信号。移动通信模块150可以提供应用在电子设备100上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
47.无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
48.在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。
49.电子设备100通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
50.显示屏194用于显示图像、显示视频和接收滑动操作等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,lcd),有机发光二极管(organic light-emittingdiode,oled),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diod,amoled),柔性发光二极管(flex light-emittingdiode,fled),miniled,microled,micro-oled,量子点发光二极管(quantum dot lightemitting diodes,qled)等。在一些实施例中,电子设备100可以包括1个或n个显示屏194,n为大于1的正整数。
51.电子设备100可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处理器等实现拍摄功能。
52.isp用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将电信号传递给isp处理,转化为肉眼可见的图像。isp还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,isp可以设置在摄像头193中。
53.摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,电子设备100可以包括1个或n个摄像头193,n为大于1的正整数。
54.数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
55.视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,mpeg)1,mpeg2,mpeg3,mpeg4等。
56.npu为神经网络(neural-network,nn)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过npu可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
57.外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
58.内部存储器121可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备100的各种功能应用以及数据处理。
59.电子设备100可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。
60.按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
61.马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用程序(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈
效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
62.指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
63.sim卡接口195用于连接sim卡。sim卡可以通过插入sim卡接口195,或从sim卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或n个sim卡接口,n为大于1的正整数。sim卡接口195可以支持nano sim卡,micro sim卡,sim卡等。同一个sim卡接口195可以同时插入多张卡。多张卡的类型可以相同,也可以不同。sim卡接口195也可以兼容不同类型的sim卡。sim卡接口195也可以兼容外部存储卡。电子设备100通过sim卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用esim,即:嵌入式sim卡。esim卡可以嵌在电子设备100中,不能和电子设备100分离。
64.电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构,等。本技术实施例以分层架构的android系统为例,示例性说明电子设备100的软件结构。
65.图2是本技术实施例的电子设备100的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将android系统分为四层,从上至下分别为应用层,应用程序框架层,安卓运行时(android runtime)和系统库,以及内核层。
66.应用层可以包括一系列应用程序包。如图2所示,应用程序包可以包括相机、图库、日历、电话、邮箱、设置和音乐等应用程序。
67.图库应用是电子设备上安装的一款用于进行图像或视频管理的应用程序,其又可以称为相册应用,本技术实施例对该应用程序的名称不进行限定。图库应用可以支持用户对存储在电子设备上的图像或视频进行各种操作,如浏览、编辑、删除、分享等操作。
68.在一些实施例中,应用层还可以包括文档矫正模块,文档矫正模块可以执行本技术实施例的文档图像矫正方法。
69.一种可能的实现方式,文档矫正模块可以与相机应用、图库应用等应用程序独立设置。相机应用可以触发文档矫正模块,以调用文档矫正模块来执行本技术实施例的文档图像矫正方法;图库应用也可以触发文档矫正模块,以调用文档矫正模块来执行本技术实施例的文档图像矫正方法。
70.另一种可能的实现方式,文档矫正模块可以内置于相机应用中,在相机应用中实现本技术实施例的文档图像矫正方法;文档矫正模块也可以内置于图库应用中,在图库应用中实现本技术实施例的文档图像矫正方法。
71.应用程序框架层为应用层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
72.如图2所示,应用程序框架层可以包括输入系统、窗口管理器、内容提供器、资源管理器和视图系统等。
73.输入系统用于管理输入设备的程序。例如,输入系统可以确定鼠标点击操作、键盘输入操作和触摸滑动等输入操作。
74.窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状
态栏,锁定屏幕,截取屏幕等。
75.内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。该数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
76.资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
77.视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
78.android runtime包括核心库和虚拟机。android runtime负责安卓系统的调度和管理。
79.核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
80.应用层和应用程序框架层运行在虚拟机中。虚拟机将应用层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
81.系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:opengl es),二维图形引擎(例如:sgl)等。
82.表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2d和3d图层的融合。
83.媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:mpeg2,h.262,mp3,aac,amr,jpg,png等。
84.三维图形处理库用于实现三维图形绘图,图像渲染、合成和图层处理等。二维图形引擎是2d绘图的绘图引擎。
85.内核层是硬件和软件之间的层。内核层至少包含显示驱动、摄像头驱动和传感器驱动等。
86.需要说明的是,本技术实施例虽然以android系统进行说明,但是文档图像矫正方法的原理同样适用于ios或windows等操作系统的电子设备。
87.下面以具体的实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以独立实现,也可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
88.为了便于理解,本技术实施例以手机作为电子设备,首先结合本技术实施例示出的一些用户界面,来说明开启文档图像校正功能的具体方式。
89.具体的,本技术实施例可以采用以下两种方式,来开启文档图像校正功能。第一种方式是通过相机应用来开启文档图像校正功能,第二种方式是通过图库应用来开启文档图像校正功能。
90.第一种方式,用户在点亮电子设备的屏幕且控制电子设备处于解锁状态时,电子设备可显示如图3中的(a)所示的第一界面301。其中,第一界面301可以为电子设备的桌面,在电子设备的桌面上显示有安装的多个应用程序的图标,如文件管理应用图标、电子邮件应用图标、天气应用图标、计算器应用图标、时钟应用图标、录音机应用图标、音乐应用图
标、设置应用图标、图库应用图标、通讯录应用图标、电话应用图标、信息应用图标以及相机应用图标3011等。
91.用户可以对相机应用图标3011进行触控操作,该触控操作可以是点击操作、长按操作等,使得电子设备接收到用户对相机应用图标3011的触控操作,电子设备响应于该触控操作,启动相机应用。
92.在相机应用启动之后,电子设备可以显示如图3中的(b)所示的第二界面302。其中,第二界面302可以为相机应用所提供的用于实现拍摄功能的取景界面,其包括取景框3021、拍照控件3022以及多种拍摄模式所对应的功能控件等。
93.取景框3021用于实时显示摄像头采集的图像内容。多种拍摄模式所对应的功能控件可以包括文档扫描模式控件、人像模式控件、拍照模式控件、录像模式控件、专业模式控件以及用于开启相机应用中的更多功能的更多控件等。在第二界面302的显示期间内,电子设备可以接收用户对文档扫描模式控件、人像模式控件、拍照模式控件、录像模式控件、专业模式控件以及更多控件中的任一控件的触控操作,该触控操作可以为点击操作等,并基于该触控操作确定切换后的拍摄模式。
94.此外,第二界面302中还可以包括以下任意一种或多种控件:用于打开图库的控件、用于切换前置或后置摄像头的切换控件、用于设置闪光灯开启或关闭的闪光灯控件、用于开启人工智能(artificial intelligence,ai)摄影功能的控件、用于对相机应用进行设置的设置控件等。其中,该用于打开图库的控件可用于开启图库应用。
95.可以理解的是,在图3中的(b)所示的第二界面302中,文档扫描模式控件是在拍摄模式的一级菜单中设置的。在另一种可能的实现方式中,也可以将文档扫描模式控件设置在更多控件下的二级菜单中。本技术实施例对此不进行限定。
96.当用户需要进行文档扫描时,电子设备可以接收用户对文档扫描模式控件的触控操作,电子设备响应于该触控操作,切换当前的拍摄模式为文档扫描模式。用户可以采用摄像头采集纸质文档对应的扭曲文档图像,从而实现在取景框3021内显示采集到的扭曲文档图像。
97.当用户确定取景框3021内显示的扭曲文档图像符合用户需求时,用户可以对拍照控件3022进行触控操作,该触控操作可以为点击操作等,则电子设备可接收到用户对拍照控件3022的触控操作,电子设备响应于该触控操作,显示如图3中的(c)所示的第三界面303。
98.其中,第三界面303可以为拍摄得到的扭曲文档图像的预览界面,其显示有拍摄得到的扭曲文档图像;此外,第三界面303还包括重拍控件以及确定并继续控件3031等。
99.当电子设备接收到用户对重拍控件的触控操作时,该触控操作可以为点击操作等,则电子设备响应于该触控操作,重新显示如图3中的(b)所示的第二界面302,并重新拍摄纸质文档对应的扭曲文档图像,以在第二界面302的取景框3021内重新显示最新采集到的扭曲文档图像。
100.而当电子设备接收到用户对确定并继续控件3031的触控操作时,该触控操作可以为点击操作等,则电子设备响应于该触控操作,显示如图3中的(d)所示的第四界面304。
101.其中,第四界面304显示有拍摄得到的扭曲文档图像;此外,第四界面304还包括原图控件、扭曲矫正控件3041以及保存到相册控件等。
102.当用户不想要对第四界面304中显示的扭曲文档图像进行矫正时,用户可以依次对第四界面304中的原图控件以及第四界面304中的保存到相册控件进行触控操作,该触控操作为点击操作等,则电子设备依次接收到用户对第四界面304中的原图控件以及第四界面304中的保存到相册控件的触控操作,并响应于该触控操作,将第四界面304中显示的扭曲文档图像保存到相册中。
103.当用户想要对第四界面304中显示的扭曲文档图像进行矫正时,用户可以对第四界面304中的扭曲矫正控件3041进行触控操作,该触控操作可以为点击操作等,则电子设备可接收到用户对第四界面304中的扭曲矫正控件3041的触控操作,并响应于该触控操作,以执行本技术实施例中的文档图像矫正方法的流程。
104.并且,在执行完成本技术实施例中的文档图像矫正方法的流程之后,电子设备可以显示如图3中的(e)所示的第五界面305。第五界面305中显示有矫正后的文档图像,下面将矫正后的文档图像统称为第二文档图像。
105.此外,第五界面305还包括保存到相册控件等。当电子设备接收到用户对第五界面305中的保存到相册控件的触控操作时,该触控操作可以为点击操作等,则电子设备将矫正后得到的第二文档图像保存到相册中。
106.可以理解的是,图3中的(a)至图3中的(e)所示的界面,仅作为电子设备通过相机应用来开启文档图像校正功能过程中的用户界面的一种示例,并不能构成对本技术实施例的限定。
107.第二种方式,用户在点亮电子设备的屏幕且控制电子设备处于解锁状态时,电子设备可显示如图4中的(a)所示的第六界面401。图4中的(a)所示的第六界面401与图3中的(a)所示的第一界面301类似。
108.其中,第六界面401可以为电子设备的桌面,在电子设备的桌面上显示有安装的多个应用程序的图标,如文件管理应用图标、电子邮件应用图标、天气应用图标、计算器应用图标、时钟应用图标、录音机应用图标、音乐应用图标、设置应用图标、图库应用图标4011、通讯录应用图标、电话应用图标、信息应用图标以及相机应用图标等。
109.用户可以对图库应用图标4011进行触控操作,该触控操作可以是点击操作、长按操作等,使得电子设备接收到用户对图库应用图标4011的触控操作,电子设备响应于该触控操作,启动图库应用。
110.在图库应用启动之后,电子设备可以显示如图4中的(b)所示的第七界面402。其中,第七界面402可以为图库应用的应用界面,其包括电子设备中存储的各个图像或视频的缩略图。
111.缩略图对应的图像可以是采用相机应用拍摄得到的图像,也可以是电子设备截屏产生的图像,还可以是其他电子设备发送的图像等。在本技术实施例中,缩略图对应的图像可以包括本技术实施例中待矫正处理的扭曲文档图像。例如,缩略图4021对应的图像为相机应用拍摄得到的扭曲文档图像。
112.用户可以对缩略图4021进行触控操作,该触控操作可以是点击操作、长按操作等,使得电子设备接收到用户对缩略图4021的触控操作,电子设备响应于该触控操作,打开缩略图4021对应的扭曲文档图像。
113.电子设备在打开缩略图4021对应的扭曲文档图像之后,电子设备可以显示如图4
中的(c)所示的第八界面403。其中,第八界面403显示有缩略图4021对应的扭曲文档图像;此外,第八界面403还包括扭曲矫正控件4031、分享控件、收藏控件、编辑控件、删除控件以及更多控件等。
114.第八界面403中的扭曲矫正控件4031可用于触发对该扭曲文档图像进行矫正处理;分享控件可用于触发对该扭曲文档图像的分享;收藏控件可用于触发收藏该扭曲文档图像;编辑控件可用于触发对该扭曲文档图像的旋转、裁剪、增加滤镜、虚化等编辑功能;删除控件可用于触发删除该扭曲文档图像;更多控件可用于触发打开更多与该扭曲文档图像相关的功能。
115.当用户想要对第八界面403中显示的扭曲文档图像进行矫正时,用户可以对第八界面403中的扭曲矫正控件3041进行触控操作,该触控操作可以为点击操作等,则电子设备可接收到用户对第八界面403中的扭曲矫正控件3041的触控操作,并响应于该触控操作,以执行本技术实施例中的文档图像矫正方法的流程。
116.并且,在执行完成本技术实施例中的文档图像矫正方法的流程之后,电子设备可以显示如图4中的(d)所示的第九界面404。第九界面404中显示有矫正后得到的第二文档图像。
117.此外,第九界面404还包括保存到相册控件等。当电子设备接收到用户对第九界面404中的保存到相册控件的触控操作时,该触控操作可以为点击操作等,则电子设备响应于该触控操作,将矫正后得到的第二文档图像保存到相册中。
118.可以理解的是,图4中的(a)至图4中的(d)所示的界面,仅作为电子设备通过图库应用来开启文档图像校正功能过程中的用户界面的一种示例,并不能构成对本技术实施例的限定。
119.应理解,当扭曲文档图像被存储在电子设备的图库应用中之后,用户可以通过点击图库应用图标等方式直接进入图库应用,并对其中的扭曲文档图像进行浏览、扭曲矫正等操作;此外,用户还可以通过电子设备上安装的第三方应用调用相应的接口,访问电子设备的图库应用,并对其中的扭曲文档图像进行浏览、扭曲矫正以及上传到第三方应用等操作。
120.下面详细说明本技术实施例中的电子设备对扭曲文档图像进行矫正处理,得到第二文档图像的具体实现方式。
121.示例性的,图5为本技术实施例提供的一种文档图像校正方法的处理流程图,其可以应用于电子设备中。参照图5所示,该文档图像校正方法具体可以包括如下步骤:步骤501,电子设备获取扭曲文档图像。
122.在一些实施例中,扭曲文档图像的内容存在扭曲现象,例如,存在弯折、弯曲、褶皱或者透视等扭曲现象。
123.其中,扭曲文档图像的内容可以包括但不限于以下至少一项:表格、各种语言符号(如中文、英文、韩文、法文等的文字符号)、数字、图章、条形码、二维码或各种发票等,如出租车发票、机票以及各种商品的税收发票等。本技术实施例对扭曲文档图像的具体内容不进行限定。
124.步骤502,电子设备对扭曲文档图像进行预处理,得到高频信息图和灰度图。
125.为了获取更加丰富的文档边缘、文本行以及插图边缘线等高频信息,本技术实施
例可以利用傅里叶变换和傅里叶逆变换等算法,去除扭曲文档图像中的低频信息,保留文档边缘、文本行以及插图边缘线等高频信息,获得高频信息图,以减少扭曲文档图像中的低频信息所造成的干扰。同时,本技术实施例还可以保留扭曲文档图像的原始信息,以弥补傅里叶变换中因参数固定丢失的语义信息。
126.在一些实施例中,电子设备将扭曲文档图像转换为预设尺寸的预处理文档图像;电子设备将预处理文档图像转换成灰度图;电子设备对灰度图进行傅里叶变换,得到第一频域图;电子设备获取低频信息图,低频信息图的尺寸与预处理文档图像的尺寸相同,且低频信息图中每个像素点的像素值均为同一数值;电子设备对低频信息图进行傅里叶变换,得到第二频域图;电子设备采用第二频域图中预设区域处的频域值,替换第一频域图中预设区域处的频域值,得到第三频域图;电子设备对第三频域图进行傅里叶逆变换,得到高频信息图。
127.其中,扭曲文档图像的尺寸可以为h*w,w指的是扭曲文档图像的宽度,即宽度方向上的像素点数量,h指的是扭曲文档图像的高度,即高度方向上的像素点数量。例如,扭曲文档图像的尺寸为640像素*480像素,即扭曲文档图像在高度方向上的像素点数量为640个,扭曲文档图像在宽度方向上的像素点数量为480个。
128.由于后续输入至文档矫正模型的高频信息图和灰度图为固定的预设尺寸大小的图像,而扭曲文档图像的尺寸不固定,这样,扭曲文档图像的尺寸可能不为预设尺寸。因此,电子设备可以先将扭曲文档图像转换为预设尺寸的预处理文档图像。
129.在扭曲文档图像的尺寸大于预设尺寸的情况下,电子设备可以对扭曲文档图像进行缩小处理,以将扭曲文档图像转换为预设尺寸的预处理文档图像;在扭曲文档图像的尺寸小于预设尺寸的情况下,电子设备可以对扭曲文档图像进行放大处理,以将扭曲文档图像转换为预设尺寸的预处理文档图像。
130.当然,可以理解的是,在扭曲文档图像的尺寸等于预设尺寸的情况下,电子设备可以无需对扭曲文档图像进行放大或缩小处理,直接将扭曲文档图像作为预处理文档图像。值得注意的是,扭曲文档图像的尺寸等于预设尺寸指的是,扭曲文档图像的宽度与预设尺寸包含的宽度值相等,且扭曲文档图像的高度与预设尺寸包含的高度值也相等。
131.例如,扭曲文档图像的尺寸为640像素*480像素,预设尺寸可以为248像素*248像素,则电子设备可以对扭曲文档图像进行缩小处理,以将尺寸为640像素*480像素的扭曲文档图像,转换为尺寸为248像素*248像素的预处理文档图像。
132.如图6所示,电子设备在将扭曲文档图像转换为预设尺寸的预处理文档图像之后,电子设备可以将预处理文档图像转换成灰度图。因此,灰度图的尺寸与预处理文档图像的尺寸相同,即灰度图的尺寸也为预设尺寸。
133.通常,扭曲文档图像可以为彩色图像,在对扭曲文档图像进行放大或缩小后得到的预处理文档图像也为彩色图像。彩色图像包括红色通道、绿色通道和蓝色通道,灰度图仅包括一个通道,因此,将预处理文档图像转换为灰度图,也就是将预处理文档图像中的每个像素点的红色通道、绿色通道和蓝色通道,转换成一个通道。
134.具体的,可以采用如下计算公式将预处理文档图像转换为灰度图:其中,y表示灰度图中的像素点的灰度值,r表示预处理文档图像中的像素点包括
的红色通道的像素值,g表示预处理文档图像中的像素点包括的绿色通道的像素值,b表示预处理文档图像中的像素点包括的蓝色通道的像素值。
135.需要说明的是,图6未示出将扭曲文档图像转换为预设尺寸的预处理文档图像的过程,应理解,在扭曲文档图像的尺寸不等于预设尺寸的情况下,电子设备需要先将扭曲文档图像转换为预设尺寸的预处理文档图像,然后再将预处理文档图像转换成灰度图。
136.如图6所示,电子设备在将预处理文档图像转换成灰度图之后,电子设备可以对灰度图进行傅里叶变换,得到第一频域图。第一频域图包括灰度图的频域信息。
137.并且,如图6所示,电子设备可以生成一个尺寸与预处理文档图像的尺寸相同,且每个像素点的像素值均为同一数值的低频信息图,即低频信息图的尺寸与预处理文档图像的尺寸相同,且低频信息图中每个像素点的像素值均为同一数值。
138.例如,低频信息图的尺寸为248像素*248像素,低频信息图中每个像素点的像素值均为255。由于预处理得到的高频信息图中,文字所在位置外的其余背景部分需要呈白色的,因此,将低频信息图中每个像素点的像素值均设置为255,可提高高频信息图中文字与背景之间的对比度。
139.如图6所示,电子设备在生成低频信息图之后,电子设备可以对低频信息图进行傅里叶变换,得到第二频域图。第二频域图包括低频信息图的频域信息。然后,电子设备采用第二频域图中预设区域处的频域值,替换第一频域图中预设区域处的频域值,得到第三频域图。
140.例如,预设区域可以为第二频域图的中心区域以及第一频域图的中心区域,这样,电子设备采用第二频域图的中心区域处的频域值,替换第一频域图的中心区域处的频域值,得到第三频域图。
141.如图6所示,电子设备在得到第三频域图之后,电子设备对第三频域图进行傅里叶逆变换,得到高频信息图。
142.因此,按照上述方式,电子设备实现对扭曲文档图像进行预处理,得到扭曲文档图像对应的高频信息图和灰度图。
143.步骤503,电子设备将高频信息图与灰度图并联拼接后输入文档矫正模型,得到扭曲文档图像对应的多个第一控制点的坐标位置。
144.在一些实施例中,电子设备在得到高频信息图和灰度图之后,电子设备将高频信息图与灰度图进行并联拼接,作为文档矫正模型的输入,以输入到文档矫正模型中,文档矫正模型则可以输出得到扭曲文档图像对应的多个第一控制点的坐标位置。
145.应理解,高频信息图与灰度图并联拼接,指的是将高频信息图与灰度图按照通道维度进行拼接,即将尺寸相同的高频信息图与灰度图的通道进行堆叠。
146.第一控制点指的是扭曲文档图像中的文本特征所处的点,文本特征包括文档边缘、文本行以及插图边缘线等特征中的至少一项。若扭曲文档图像中的文档有边缘,则部分第一控制点分布在文档的边缘;若扭曲文档图像中的文档的边缘缺失,则部分第一控制点是预测出的位于文档边缘的一些控制点;而扭曲文档图像的中间区域处依次相邻的第一控制点,其分布方向与文本行的延伸方向是一致的。
147.在一些相关技术中,电子设备是直接将扭曲文档图像作为文档矫正模型的输入,以输入到文档矫正模型中。而本技术实施例可以将高频信息图与灰度图进行并联拼接,作
为文档矫正模型的输入,由于去除扭曲文档图像中的低频信息,保留文档边缘、文本行以及插图边缘线等高频信息,则可以减少扭曲文档图像中的低频信息所造成的干扰,提高扭曲文档图像的矫正效果。
148.在本技术实施例中,文档矫正模型可以包括特征提取模块和预测控制点模块。
149.若电子设备未对扭曲文档图像进行预处理,且直接将扭曲文档图像作为文档矫正模型的输入,则电子设备采用特征提取模块对扭曲文档图像进行处理,得到扭曲文档图像对应的语义特征图;电子设备采用预测控制点模块对语义特征图进行处理,得到扭曲文档图像对应的多个第一控制点的坐标位置。
150.若电子设备对扭曲文档图像进行预处理,且将高频信息图与灰度图并联拼接后作为文档矫正模型的输入,则电子设备采用特征提取模块对高频信息图与灰度图并联拼接后的图像进行处理,得到扭曲文档图像对应的语义特征图;电子设备采用预测控制点模块对语义特征图进行处理,得到扭曲文档图像对应的多个第一控制点的坐标位置。
151.其中,特征提取模块可以为轻量级的级联空洞卷积网络。具体的,电子设备在得到高频信息图和灰度图之后,电子设备将高频信息图与灰度图进行并联拼接,作为文档矫正模型中的特征提取模块的输入,通过轻量级的级联空洞卷积网络提取文档边缘、文本行以及插图边缘线等语义特征,以输出得到扭曲文档图像对应的语义特征图。然后,电子设备将扭曲文档图像对应的语义特征图作为文档矫正模型中的预测控制点模块的输入,通过预测控制点模块回归扭曲文档的控制点的坐标位置,从而输出得到扭曲文档图像对应的多个第一控制点的坐标位置。
152.针对扭曲文档图像的矫正任务,其期望是同一行弯曲文本在矫正后呈现水平或垂直方向,而在一些相关技术中,其是采用残差网络(residual neural network,resnet)中的resnet18网络作为特征提取模块,但是,resnet18网络中的普通卷积层在提取特征时的感受野过小,仅仅能够获取局部文本行信息。而本技术实施例可以采用轻量级的级联空洞卷积网络作为特征提取模块,来提取更大视野的文档边缘、文本行以及插图边缘线等语义特征,从而能够获取整个弯曲文本行的信息。
153.在一些实施例中,特征提取模块包括多个空洞卷积网络,以及位于相邻两个空洞卷积网络之间的池化层,每个空洞卷积网络包括多个空洞卷积层;在除最后一个空洞卷积网络外的每个空洞卷积网络中,最后一个空洞卷积层的输出作为池化层的输入;每个池化层的输出作为后一个空洞卷积网络中的第一个空洞卷积层的输入。
154.示例性的,图7以特征提取模块包括四个空洞卷积网络为例,说明本技术实施例中的特征提取模块的具体结构。
155.参照图7所示,特征提取模块包括四个空洞卷积网络,其分别为第一空洞卷积网络、第二空洞卷积网络、第三空洞卷积网络和第四空洞卷积网络;特征提取模块还包括第一池化层,第二池化层和第三池化层,第一池化层位于第一空洞卷积网络与第二空洞卷积网络之间,第二池化层位于第二空洞卷积网络与第三空洞卷积网络之间,第三池化层位于第三空洞卷积网络与第四空洞卷积网络之间。
156.其中,第一空洞卷积网络包括三个空洞卷积层,其分别为第一空洞卷积层、第二空洞卷积层和第三空洞卷积层;第二空洞卷积网络包括三个空洞卷积层,其分别为第四空洞卷积层、第五空洞卷积层和第六空洞卷积层;第三空洞卷积网络包括五个空洞卷积层,其分
别为第七空洞卷积层、第八空洞卷积层、第九空洞卷积层、第十空洞卷积层和第十一空洞卷积层;第四空洞卷积网络也包括五个空洞卷积层,其分别为第十二空洞卷积层、第十三空洞卷积层、第十四空洞卷积层、第十五空洞卷积层和第十六空洞卷积层。
157.如图7所示,高频信息图与灰度图并联拼接后的图像规格为248*248*2,其表示宽度为248像素,高度为248像素,通道数为2。高频信息图与灰度图并联拼接后输入第一空洞卷积层,第一空洞卷积层对高频信息图与灰度图并联拼接后的图像进行空洞卷积处理,得到第一特征图;第一特征图输入第二空洞卷积层,第二空洞卷积层对第一特征图进行空洞卷积处理,得到第二特征图;第二特征图输入第三空洞卷积层,第三空洞卷积层对第二特征图进行空洞卷积处理,得到第三特征图。由于第一空洞卷积层、第二空洞卷积层和第三空洞卷积层的通道数均为32,因此,第三特征图的图像规格为248*248*32,其表示宽度为248像素,高度为248像素,通道数为32。
158.如图7所示,第三特征图输入第一池化层,第一池化层对第三特征图进行池化处理,得到第四特征图。
159.通常,两种常见的池化处理为均值池化(average pooling)和最大值池化(max pooling),上面两种池化处理均是在特征图的宽度和高度这两个维度进行处理,并不影响输出特征图的通道数。
160.可选的,本技术实施例可以采用均值池化方式对第三特征图进行池化处理。其中,第一池化层的池化窗口可以为2*2,这样,第一池化层可以对第三特征图中的2*2的池化窗口内的所有像素点取平均值,以将第三特征图的宽度和高度都降低一半,从而得到第四特征图。因此,第四特征图的图像规格为124*124*32,其表示宽度为124像素,高度为124像素,通道数为32。
161.可以理解的是,本技术实施例也可以采用最大值池化方式对第三特征图进行池化处理,本技术实施例对第一池化层的池化方式不进行限定。
162.如图7所示,第四特征图输入第四空洞卷积层,第四空洞卷积网络对第四特征图进行空洞卷积处理,得到第五特征图;第五特征图输入第五空洞卷积层,第五空洞卷积层对第五特征图进行空洞卷积处理,得到第六特征图;第六特征图输入第六空洞卷积层,第六空洞卷积层对第六特征图进行空洞卷积处理,得到第七特征图。由于第四空洞卷积层、第五空洞卷积层和第六空洞卷积层的通道数均为64,因此,第七特征图的图像规格为124*124*64,其表示宽度为124像素,高度为124像素,通道数为64。
163.如图7所示,第七特征图输入第二池化层,第二池化层对第七特征图进行池化处理,得到第八特征图。
164.可选的,本技术实施例可以采用均值池化的方式对第七特征图进行池化处理。其中,第二池化层的池化窗口可以为2*2,这样,第二池化层可以对第七特征图中的2*2的池化窗口内的所有像素点取平均值,以将第七特征图的宽度和高度都降低一半,从而得到第八特征图。因此,第八特征图的图像规格为62*62*64,其表示宽度为62像素,高度为62像素,通道数为64。
165.可以理解的是,本技术实施例也可以采用最大值池化方式对第七特征图进行池化处理,本技术实施例对第二池化层的池化方式不进行限定。
166.如图7所示,第八特征图输入第七空洞卷积层,第七空洞卷积层对第八特征图进行
空洞卷积处理,得到第九特征图;第九特征图输入第八空洞卷积层,第八空洞卷积层对第九特征图进行空洞卷积处理,得到第十特征图;第十特征图输入第九空洞卷积层,第九空洞卷积层对第十特征图进行空洞卷积处理,得到第十一特征图;第十一特征图输入第十空洞卷积层,第十空洞卷积层对第十一特征图进行空洞卷积处理,得到第十二特征图;第十二特征图输入第十一空洞卷积层,第十一空洞卷积层对第十二特征图进行空洞卷积处理,得到第十三特征图。由于第七空洞卷积层、第八空洞卷积层、第九空洞卷积层、第十空洞卷积层和第十一空洞卷积层的通道数均为128,因此,第十三特征图的图像规格为62*62*128,其表示宽度为62像素,高度为62像素,通道数为128。
167.如图7所示,第十三特征图输入第三池化层,第三池化层对第十三特征图进行池化处理,得到第十四特征图。
168.可选的,本技术实施例可以采用均值池化的方式对第十三特征图进行池化处理。其中,第三池化层的池化窗口可以为2*2,这样,第三池化层可以对第十三特征图中的2*2的池化窗口内的所有像素点取平均值,以将第十三特征图的宽度和高度都降低一半,从而得到第十四特征图。因此,第十四特征图的图像规格为31*31*128,其表示宽度为31像素,高度为31像素,通道数为128。
169.可以理解的是,本技术实施例也可以采用最大值池化方式对第十三特征图进行池化处理,本技术实施例对第三池化层的池化方式不进行限定。
170.如图7所示,第十四特征图输入第十二空洞卷积层,第十二空洞卷积层对第十四特征图进行空洞卷积处理,得到第十五特征图;第十五特征图输入第十三空洞卷积层,第十三空洞卷积层对第十五特征图进行空洞卷积处理,得到第十六特征图;第十六特征图输入第十四空洞卷积层,第十四空洞卷积层对第十六特征图进行空洞卷积处理,得到第十七特征图;第十七特征图输入第十五空洞卷积层,第十五空洞卷积层对第十七特征图进行空洞卷积处理,得到第十八特征图;第十八特征图输入第十六空洞卷积层,第十六空洞卷积层对第十八特征图进行空洞卷积处理,得到扭曲文档图像对应的语义特征图。由于第十二空洞卷积层、第十三空洞卷积层、第十四空洞卷积层、第十五空洞卷积层和第十六空洞卷积层的通道数均为256,因此,语义特征图的图像规格为31*31*256,其表示宽度为31像素,高度为31像素,通道数为256。
171.上述的第一空洞卷积层至第十六空洞卷积层的卷积核均为3*3的卷积核。本技术实施例可以使用多个较小卷积核的卷积层,来代替卷积核较大的卷积层,一方面可以减少参数,另一方面相当于进行了更多的非线性映射,可以增加特征提取模块的拟合表达能力。并且,特征提取模块中的第一空洞卷积网络的通道数为32,后面每个空洞卷积网络的通道数都进行了翻倍,最终使得第四空洞卷积网络的通道数达到256,通道数的增加,可以使得更多的信息被提取出来。
172.此外,上述的第一空洞卷积层至第十六空洞卷积层的卷积核均为具有空洞率的3*3的卷积核。与传统的卷积核相比,在卷积层的计算量不变的情况下,空洞卷积比传统卷积具有更大的感受野,从而可以从图像中提取出更大视觉范围的特征,减少卷积过程中图像中信息的丢失。
173.其中,在卷积神经网络中,感受野是卷积神经网络每一层输出的特征图上的像素点在输入图像上映射的区域大小。空洞率也可以称为扩张率。
174.示例性的,如图8所示,当某个空洞卷积层的卷积核尺寸为3*3,空洞率为2时,其感受野可以达到5
×
5,图8中的填充部分表示尺寸为3*3空洞率为2的卷积核。
175.下表示出了卷积核尺寸为3*3时,不同空洞率对应的感受野的大小对照表:可以看出,针对3*3的卷积核,当空洞率等于17时,其感受野可以达到35
×
35;当空洞率等于11时,其感受野可以达到23
×
23;当空洞率等于8时,其感受野可以达到17
×
17;当空洞率等于5时,其感受野可以达到11
×
11;当空洞率等于3时,其感受野可以达到7
×
7;当空洞率等于1时,其感受野为3
×
3。因此,当空洞率越大时,其感受野也越大;当空洞率越小时,其感受野也越小。
176.在一些实施例中,在每个空洞卷积网络中,任意两个空洞卷积层的空洞率不同。
177.示例性的,如图7所示,在第一空洞卷积网络中,第一空洞卷积层的空洞率等于17,第二空洞卷积层的空洞率等于11,第三空洞卷积层的空洞率等于5,即第一空洞卷积层、第二空洞卷积层和第三空洞卷积层的空洞率均不同。在第二空洞卷积网络中,第四空洞卷积层的空洞率等于11,第五空洞卷积层的空洞率等于8,第六空洞卷积层的空洞率等于5,即第四空洞卷积层、第五空洞卷积层和第六空洞卷积层的空洞率均不同。在第三空洞卷积网络中,第七空洞卷积层的空洞率等于11,第八空洞卷积层的空洞率等于8,第九空洞卷积层的空洞率等于5,第十空洞卷积层的空洞率等于3,第十一空洞卷积层的空洞率等于1,即第七空洞卷积层、第八空洞卷积层、第九空洞卷积层、第十空洞卷积层和第十一空洞卷积层的空洞率均不同。在第四空洞卷积网络中,第十二空洞卷积层的空洞率等于11,第十三空洞卷积层的空洞率等于8,第十四空洞卷积层的空洞率等于5,第十五空洞卷积层的空洞率等于3,第十六空洞卷积层的空洞率等于1,即第十二空洞卷积层、第十三空洞卷积层、第十四空洞卷积层、第十五空洞卷积层和第十六空洞卷积层的空洞率均不同。
178.图9为本技术实施例提供的采用同一空洞率的空洞卷积造成空洞现象的示意图,其示出了多次叠加空洞率为2的3*3卷积核的卷积结果。图9中的(a)、图9中的(b)和图9中的(c),从左到右依次属于上下层关系,某一层得到的卷积结果来自上一层。图9中最中间的填充部分表示需要进行卷积处理的待处理像素点,对于待处理像素点而言,图9中其他的填充部分表示参与卷积运算的周围像素点,周围像素点填充的深浅程度表示参与卷积运算时的利用程度。
179.可以看出,在每个空洞卷积网络中,若多个空洞卷积层仅仅使用同一空洞率,在第二个空洞卷积层时也就会无法获取中间间隔部分的信息,使得有些像素点根本没有被利用到,即丢失局部信息,会损失信息的连续性和相关性,则出现空洞现象,也可称为网络效应。为了防止出现空洞现象,在每个空洞卷积网络中,避免各个空洞卷积层采用同一空洞率,即避免采用相同间隔的空洞卷积。
180.进一步的,在每个空洞卷积网络中,按照多个空洞卷积层级联的先后顺序,多个空洞卷积层的空洞率从大到小设置。
181.示例性的,如图7所示,在第一空洞卷积网络中,第一空洞卷积层的空洞率大于第二空洞卷积层的空洞率,第二空洞卷积层的空洞率大于第三空洞卷积层的空洞率。在第二
空洞卷积网络中,第四空洞卷积层的空洞率大于第五空洞卷积层的空洞率,第五空洞卷积层的空洞率大于第六空洞卷积层的空洞率。在第三空洞卷积网络中,第七空洞卷积层的空洞率大于第八空洞卷积层的空洞率,第八空洞卷积层的空洞率大于第九空洞卷积层的空洞率,第九空洞卷积层的空洞率大于第十空洞卷积层的空洞率,第十空洞卷积层的空洞率大于第十一空洞卷积层的空洞率。在第四空洞卷积网络中,第十二空洞卷积层的空洞率大于第十三空洞卷积层的空洞率,第十三空洞卷积层的空洞率大于第十四空洞卷积层的空洞率,第十四空洞卷积层的空洞率大于第十五空洞卷积层的空洞率,第十五空洞卷积层的空洞率大于第十六空洞卷积层的空洞率。
182.因此,本技术实施例在每个空洞卷积网络中,按照多个空洞卷积层级联的先后顺序,将多个空洞卷积层的空洞率从大到小设置,使得轻量级的级联空洞卷积网络提取到的信息是从整体到局部的,相当于先关注文本行的整体方向信息再关注局部方向信息,提高对扭曲文档图像中的空白处方向的约束,从而提高文本的整体平整性。
183.在一些实施例中,预测控制点模块包括多个卷积层,语义特征图作为第一个卷积层的输入,最后一个卷积层的输出为扭曲文档图像对应的多个第一控制点的坐标位置,且最后一个卷积层的通道数等于2。
184.示例性的,图10以预测控制点模块包括三个卷积层为例,说明本技术实施例中的预测控制点模块的具体结构。
185.参照图10所示,预测控制点模块包括三个卷积层,其分别为第一卷积层、第二卷积层和第三卷积层。其中,第一卷积层的卷积核尺寸可以为1*1,第二卷积层的卷积核尺寸可以为3*3,第三卷积层的卷积核尺寸可以为3*3。
186.如图10所示,语义特征图输入第一卷积层,第一卷积层对语义特征图进行卷积处理,得到第十九特征图。由于第一卷积层的通道数为128,因此,第十九特征图的图像规格为31*31*128,其表示宽度为31像素,高度为31像素,通道数为128。
187.第十九特征图输入第二卷积层,第二卷积层对第十九特征图进行卷积处理,得到第二十特征图。由于第二卷积层的通道数为32,因此,第二十特征图的图像规格为31*31*32,其表示宽度为31像素,高度为31像素,通道数为32。
188.第二十特征图输入第三卷积层,第三卷积层对第二十特征图进行卷积处理,得到第二十一特征图,第二十一特征图包括扭曲文档图像对应的多个第一控制点的坐标位置。由于第三卷积层的通道数为2,因此,第二十一特征图的图像规格为31*31*2,其表示宽度为31像素,高度为31像素,通道数为2。也就是说,第二十一特征图包括31*31个第一控制点的坐标位置,通道数2对应的数据实际上表示每个第一控制点沿x方向的坐标和沿y方向的坐标,x方向为扭曲文档图像的宽度方向,y方向为扭曲文档图像的高度方向。
189.在使用文档矫正模型之前,需要对文档矫正模型进行训练。实际上,是对文档矫正模型中的特征提取模块和预测控制点模块一起训练的。
190.具体的,获取样本图像,样本图像包括样本文档图像对应的高频信息图与样本文档图像对应的灰度图并联拼接后的图像;将样本图像输入待训练的文档矫正模型,得到样本图像对应的多个预测控制点的坐标位置;基于目标损失函数,确定样本图像对应的多个预测控制点的坐标位置,与样本图像对应的多个真实控制点的坐标位置之间的距离损失;基于距离损失对待训练的文档矫正模型中的模型参数进行调整,直至待训练的文档矫正模
型收敛,以训练得到文档矫正模型。因此,文档矫正模型是基于目标损失函数训练得到的。
191.其中,样本图像对应的多个真实控制点的坐标位置可以是人为标定的;模型参数可以是特征提取模块和预测控制点模块中的卷积核的参数。
192.在训练得到文档矫正模型的过程中,因为希望文档矫正模型的输出尽可能的接近真正想要预测的值,所以可以通过比较当前文档矫正模型的预测值和真正想要的目标值,再根据两者之间的差异情况来更新文档矫正模型中的模型参数(当然,在第一次更新之前通常会有初始化的过程,即为文档矫正模型中的各层预先配置参数),比如,如果文档矫正模型的预测值高了,就调整权重向量让它的预测值低一些,不断的调整,直到文档矫正模型能够预测出真正想要的目标值或与真正想要的目标值非常接近的值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是目标损失函数(loss function),它们是用于衡量预测值和目标值的差异的重要方程。其中,以目标损失函数举例,目标损失函数的输出值越高表示差异越大,那么文档矫正模型的训练就变成了尽可能缩小这个损失的过程。
193.需要说明的是,对于文档矫正模型的获取,本技术实施例的执行主体可以为电子设备,电子设备可以接收来自服务器的文档矫正模型,文档矫正模型是服务器训练得到的。
194.在一些相关技术中,在训练文档矫正模型的过程中,目标损失函数包括控制点距离损失函数和单尺度交叉方向损失函数。以单尺度交叉方向损失函数为控制点周围的16个控制点的单一局部交叉方向损失函数为例,对于文字间隔较大的场景,若仅使用某个控制点周围16个控制点的单一局部交叉方向损失函数,仅可以保证局部文字方向,对于扭曲文档图像中的空白处方向的约束过小,导致整体文本行的方向约束过小,进而导致对于整体文本行的方向会偏离。
195.因此,本技术实施例加入多尺度交叉方向损失,即其中一个控制点的方向由周围不同范围(如4个、16个以及28个)的控制点进行多尺度约束,提高整体文本行的方向约束,进而提高文本行的局部平滑性和整体平整性。
196.这样,目标损失函数包括控制点距离损失函数和多尺度交叉方向损失函数,多尺度交叉方向损失函数包括多个尺度范围内的局部交叉方向损失之和。具体的,目标损失函数的表达式为:数的表达式为:数的表达式为:其中,表示预测控制点与真实控制点之间的损失,表示预测控制点与真实控制点之间的距离损失,表示第i个范围的局部方向交叉损失。表示控制点的个数,表示真实控制点的坐标位置,表示预测控制点的坐标位置,表示控制点的真实局部交
叉方向,其实际上为方向向量,表示控制点的预测局部交叉方向,其实际上为方向向量。
197.示例性的,其中一个控制点的方向,可以分别由周围的4个控制点、周围的16个控制点以及周围的28个控制点进行多尺度约束。
198.在另一种可能的实现方式中,电子设备也可以不对扭曲文档图像进行预处理,直接将扭曲文档图像输入文档矫正模型中,采用文档矫正模型对扭曲文档图像进行处理,得到扭曲文档图像对应的多个第一控制点的坐标位置。
199.步骤504,电子设备根据多个第一控制点的坐标位置,对扭曲文档图像的边缘进行补充,得到第一文档图像。
200.在一些场景中,扭曲文档图像可能存在边缘不完整的情况,因此,电子设备在获得扭曲文档图像对应的多个第一控制点的坐标位置之后,根据多个第一控制点的坐标位置,对扭曲文档图像的边缘进行补充,来改善矫正后的文档图像的边缘处的文字信息丢失的情况。
201.示例性的,图11为本技术实施例提供的对扭曲文档图像的边缘进行补充的流程图。参照图11所示,电子设备可以参照下面的步骤1101至步骤1109对扭曲文档图像的边缘进行补充。
202.步骤1101,电子设备获取扭曲文档图像的宽度、扭曲文档图像的高度以及多个第一控制点的坐标位置。
203.步骤1102,电子设备获取多个第一控制点的坐标位置中的第一坐标值、第二坐标值、第三坐标值和第四坐标值。
204.在本技术实施例中,电子设备可以获取文档矫正模型输出的扭曲文档图像对应的多个第一控制点的坐标位置,电子设备还可以获取扭曲文档图像宽度w和扭曲文档图像的高度h。
205.然后,电子设备可以获取扭曲文档图像对应的多个第一控制点的坐标位置中的第一坐标值、第二坐标值、第三坐标值和第四坐标值。其中,第一坐标值为多个第一控制点的坐标位置在扭曲文档图像的宽度方向上对应的多个坐标值中的最小值;第二坐标值为多个第一控制点的坐标位置在扭曲文档图像的高度方向上对应的多个坐标值中的最小值;第三坐标值为多个第一控制点的坐标位置在扭曲文档图像的宽度方向上对应的多个坐标值中的最大值;第四坐标值为多个第一控制点的坐标位置在扭曲文档图像的高度方向上对应的多个坐标值中的最大值。
206.需要说明的是,本技术实施例可以以扭曲文档图像的左上角为坐标原点,向右方向为宽度方向的正方向,向下方向为高度方向的正方向为例,来表示第一控制点的坐标位置,以及计算扭曲文档图像的四周边缘处待补充的边缘尺寸等。
207.步骤1103,电子设备根据第一坐标值,确定左侧边缘处待补充的边缘尺寸。
208.具体的,电子设备可以采用下面的公式,计算扭曲文档图像的左侧边缘处待补充的边缘尺寸:因此,在第一坐标值小于0的情况下,电子设备将第一坐标值的负值确定为左侧边
缘处待补充的边缘尺寸,即左侧边缘处待补充的边缘尺寸为第一坐标值取负数后得到的数值;在第一坐标值大于或等于0的情况下,左侧边缘处待补充的边缘尺寸等于0。
209.也就是说,当第一坐标值大于或等于0时,说明扭曲文档图像的左侧边缘是完整的,则扭曲文档图像的左侧边缘不需要进行边缘补充;当第一坐标值小于0时,说明扭曲文档图像的左侧边缘是不完整的,则扭曲文档图像的左侧边缘需要进行边缘补充。
210.步骤1104,电子设备根据第二坐标值,确定上侧边缘处待补充的边缘尺寸。
211.具体的,电子设备可以采用下面的公式,计算扭曲文档图像的上侧边缘处待补充的边缘尺寸:因此,在第二坐标值小于0的情况下,电子设备将第二坐标值的负值确定为上侧边缘处待补充的边缘尺寸,即上侧边缘处待补充的边缘尺寸为第二坐标值取负数后得到的数值;在第二坐标值大于或等于0的情况下,上侧边缘处待补充的边缘尺寸等于0。
212.也就是说,当第二坐标值大于或等于0时,说明扭曲文档图像的上侧边缘是完整的,则扭曲文档图像的上侧边缘不需要进行边缘补充;当第二坐标值小于0时,说明扭曲文档图像的上侧边缘是不完整的,则扭曲文档图像的上侧边缘需要进行边缘补充。
213.步骤1105,电子设备根据第三坐标值和扭曲文档图像的宽度,确定右侧边缘处待补充的边缘尺寸。
214.具体的,电子设备可以采用下面的公式,计算扭曲文档图像的右侧边缘处待补充的边缘尺寸:因此,在第三坐标值大于扭曲文档图像的宽度的情况下,电子设备将第三坐标值与扭曲文档图像的宽度的差值,确定为右侧边缘处待补充的边缘尺寸;在第三坐标值小于或等于扭曲文档图像的宽度的情况下,右侧边缘处待补充的边缘尺寸等于0。
215.也就是说,当第三坐标值小于或等于扭曲文档图像的宽度时,说明扭曲文档图像的右侧边缘是完整的,则扭曲文档图像的右侧边缘不需要进行边缘补充;当第三坐标值大于扭曲文档图像的宽度时,说明扭曲文档图像的右侧边缘是不完整的,则扭曲文档图像的右侧边缘需要进行边缘补充。
216.步骤1106,电子设备根据第四坐标值和扭曲文档图像的高度,确定下侧边缘处待补充的边缘尺寸。
217.具体的,电子设备可以采用下面的公式,计算扭曲文档图像的下侧边缘处待补充的边缘尺寸:因此,在第四坐标值大于扭曲文档图像的高度的情况下,电子设备将第四坐标值与扭曲文档图像的高度的差值,确定下侧边缘处待补充的边缘尺寸;在第四坐标值小于或等于扭曲文档图像的高度的情况下,下侧边缘处待补充的边缘尺寸等于0。
218.也就是说,当第四坐标值小于或等于扭曲文档图像的高度时,说明扭曲文档图像
的下侧边缘是完整的,则扭曲文档图像的下侧边缘不需要进行边缘补充;当第四坐标值大于扭曲文档图像的高度时,说明扭曲文档图像的下侧边缘是不完整的,则扭曲文档图像的下侧边缘需要进行边缘补充。
219.因此,按照上述的步骤1102至步骤1106,使得电子设备根据多个第一控制点的坐标位置,确定扭曲文档图像的四周边缘处待补充的边缘尺寸。其中,扭曲文档图像的四周边缘包括左侧边缘、右侧边缘、上侧边缘和下侧边缘。
220.步骤1107,电子设备采用扭曲文档图像的四周边缘中的每个目标边缘处的边缘图像,对扭曲文档图像中属于同一方位的目标边缘进行补充,得到第三文档图像;目标边缘包括左侧边缘、右侧边缘、上侧边缘和下侧边缘中的至少一个边缘,每个目标边缘处的边缘图像的尺寸等于同一方位的目标边缘处待补充的边缘尺寸。
221.针对扭曲文档图像的左侧边缘,电子设备可以采用扭曲文档图像的左侧边缘处的边缘图像,对扭曲文档图像的左侧边缘进行补充,且左侧边缘处的边缘图像的尺寸等于左侧边缘处待补充的边缘尺寸。
222.具体的,电子设备采用扭曲文档图像的左侧边缘处的至少一列像素点,对扭曲文档图像的左侧边缘进行扩展,其中,补充的像素点的列数与左侧边缘处待补充的边缘尺寸的大小相关。并且,以从左到右的方向开始进行像素点的列数计数为例,扭曲文档图像的左侧边缘补充后,其左侧边缘处补充的第m列像素点的像素值,等于未进行边缘补充时的扭曲文档图像的左侧边缘的第m列像素点的像素值,m为正整数。
223.针对扭曲文档图像的上侧边缘,电子设备可以采用扭曲文档图像的上侧边缘处的边缘图像,对扭曲文档图像的上侧边缘进行补充,且上侧边缘处的边缘图像的尺寸等于上侧边缘处待补充的边缘尺寸。
224.具体的,电子设备采用扭曲文档图像的上侧边缘处的至少一行像素点,对扭曲文档图像的上侧边缘进行扩展,其中,补充的像素点的行数与上侧边缘处待补充的边缘尺寸的大小相关。并且,以从上到下的方向开始进行像素点的行数计数为例,扭曲文档图像的上侧边缘补充后,其上侧边缘处补充的第k行像素点的像素值,等于未进行边缘补充时的扭曲文档图像的上侧边缘的第k行像素点的像素值,k为正整数。
225.针对扭曲文档图像的右侧边缘,电子设备可以采用扭曲文档图像的右侧边缘处的边缘图像,对扭曲文档图像的右侧边缘进行补充,且右侧边缘处的边缘图像的尺寸等于右侧边缘处待补充的边缘尺寸。
226.具体的,电子设备采用扭曲文档图像的右侧边缘处的至少一列像素点,对扭曲文档图像的右侧边缘进行扩展,其中,补充的像素点的列数与右侧边缘处待补充的边缘尺寸的大小相关。并且,以从右向左的方向开始进行像素点的列数计数为例,扭曲文档图像的右侧边缘补充后,其右侧边缘处补充的第m列像素点的像素值,等于未进行边缘补充时的扭曲文档图像的右侧边缘的第m列像素点的像素值,m为正整数。
227.针对扭曲文档图像的下侧边缘,电子设备可以采用扭曲文档图像的下侧边缘处的边缘图像,对扭曲文档图像的下侧边缘进行补充,且下侧边缘处的边缘图像的尺寸等于下侧边缘处待补充的边缘尺寸。
228.具体的,电子设备采用扭曲文档图像的下侧边缘处的至少一行像素点,对扭曲文
档图像的下侧边缘进行扩展,其中,补充的像素点的行数与下侧边缘处待补充的边缘尺寸的大小相关。并且,以从下到上的方向开始进行像素点的行数计数为例,扭曲文档图像的下侧边缘补充后,其下侧边缘处补充的第k行像素点的像素值,等于未进行边缘补充时的扭曲文档图像的下侧边缘的第k行像素点的像素值,k为正整数。
229.综上,电子设备可以根据扭曲文档图像的四周边缘处待补充的边缘尺寸,分别对扭曲文档图像的左侧边缘、右侧边缘、上侧边缘和下侧边缘进行边缘补充,以实现在第一控制点超出扭曲文档图像时,进行扭曲文档图像的边缘修复。
230.步骤1108,电子设备对第三文档图像进行模糊处理,得到第四文档图像。
231.步骤1109,电子设备采用扭曲文档图像,替换第四文档图像中除已补充的边缘图像所在区域外的其他区域,得到第一文档图像。
232.在一些实施例中,电子设备在对扭曲文档图像的左侧边缘、右侧边缘、上侧边缘和下侧边缘进行边缘补充,得到第三文档图像之后,电子设备可以采用尺寸为h*h的模糊核,对第三文档图像进行模糊处理,得到第四文档图像。
233.模糊核实际上一个矩阵,清晰图像与模糊核卷积后会导致图像变得模糊,因此称为模糊核,模糊核为卷积核的一种。本技术实施例中的模糊核的权重值可以预先设置好。
234.由于模糊核的尺寸是预先设置好的,因此,在采用模糊核对第三文档图像进行模糊处理时,模糊核除了对第三文档图像中已补充的边缘图像进行模糊处理外,还可能会对原本的扭曲文档图像部分进行模糊处理。为了提高图像的清晰度,在模糊处理得到第四文档图像之后,电子设备还可以采用扭曲文档图像,替换第四文档图像中除已补充的边缘图像所在区域外的其他区域,得到第一文档图像。
235.因此,按照上述的步骤1108和步骤1109,使得电子设备可以基于第三文档图像,生成第一文档图像。
236.在另一些实施例中,电子设备可以将第三文档图像作为第一文档图像。也就是说,电子设备可以不对第三文档图像进行模糊处理。
237.需要说明的是,若不对第三文档图像进行模糊处理,可能会导致最终矫正得到第二文档图像中,原本扭曲文档图像所在区域的一些字迹,会在补充的边缘部分重复出现。因此,本技术实施例可以对第三文档图像进行模糊处理,并采用扭曲文档图像,替换模糊处理后得到的第四文档图像中除已补充的边缘图像所在区域外的其他区域,以改善字迹重复出现的现象。
238.在一些相关技术中,针对一些边缘不完整的扭曲文档图像,其边缘处存在空白,若仅关注内部文本行的矫正,而并未对扭曲文档图像的边缘进行补充,会存在缩边现象,从而导致矫正后的文档图像的边缘处的文字信息丢失。而本技术实施例针对边缘不完整的扭曲文档图像,其可以基于预测得到的第一控制点在空白处会按照文本行的方向往外扩充,来对扭曲文档图像的边缘进行补充,以改善矫正后的文档图像的边缘处的文字信息丢失的情况,从而提升矫正后的文档图像的质量。
239.步骤505,电子设备对多个第一控制点的坐标位置进行插值,得到扭曲文档图像对应的多个第二控制点的坐标位置。
240.其中,在扭曲文档图像的宽度方向上的第二控制点的数量,等于扭曲文档图像在宽度方向上的像素点数量,在扭曲文档图像的高度方向上的第二控制点的数量,等于扭曲
文档图像在高度方向上的像素点数量。
241.电子设备在执行完成上述的步骤503,得到扭曲文档图像对应的多个第一控制点的坐标位置之后,电子设备可以对多个第一控制点的坐标位置进行插值,将31*31个第一控制点插值到h*w个第二控制点,从而得到扭曲文档图像对应的多个第二控制点的坐标位置。
242.可以理解的是,第二控制点的数量大于第一控制点的数量,多个第二控制点中的一部分实际上是第一控制点,多个第二控制点的另一部分实际上是插值得到的控制点。
243.本技术实施例在对多个第一控制点的坐标位置进行插值时,其插值算法可以为双线性插值或其他方式,本技术实施例不对插值算法进行限定。
244.需要说明的是,上述的步骤504和步骤505不存在固定的先后顺序,其可以根据实际情况执行相应的操作。
245.步骤506,电子设备生成多个第二控制点中的每个第二控制点的坐标位置,与其对应的参考点的坐标位置之间的第一坐标对应关系。
246.电子设备在将31*31个第一控制点插值到h*w个第二控制点之后,电子设备可以生成多个第二控制点中的每个第二控制点的坐标位置,与其对应的参考点的坐标位置之间的第一坐标对应关系。
247.其中,参考点的坐标位置与第二控制点的坐标位置一一对应,即参考点的数量也为h*w个。参考点指的是非扭曲文档图像中的文本特征所处的点,文本特征包括文档边缘、文本行以及插图边缘线等特征中的至少一项,各个参考点的坐标位置均匀分布。
248.示例性的,第一行第一个第二控制点的坐标位置,其对应的参考点的坐标位置为(0,0),第一行第二个第二控制点的坐标位置,其对应的参考点的坐标位置为(1,0),以此类推,第一行最后一个第二控制点的坐标位置,其对应的参考点的坐标位置为(w,0);第二行第一个第二控制点的坐标位置,其对应的参考点的坐标位置为(0,1),以此类推,最后一行第一个第二控制点的坐标位置,其对应的参考点的坐标位置为(0,h),最后一行最后一个第二控制点的坐标位置,其对应的参考点的坐标位置为(w,h)。其余未说明的第二控制点的坐标位置与其对应的参考点之间的第一坐标对应关系,与上述关系类似,在此不再赘述。
249.步骤507,电子设备根据第一文档图像中已补充的边缘图像所在的方位,调整第一坐标对应关系中每个参考点的坐标位置对应的第二控制点的坐标位置,得到第二坐标对应关系。
250.在一些实施例中,由于步骤504对扭曲文档图像的边缘进行了补充,其可能会导致第二控制点的坐标位置与其对应的参考点的坐标位置之间的第一坐标对应关系中,第二控制点的坐标位置发生变化,因此,电子设备需要调整第一坐标对应关系中每个参考点的坐标位置对应的第二控制点的坐标位置。
251.若步骤504中,电子设备对扭曲文档图像的上侧边缘处补充了宽度为的边缘图像,则第一坐标对应关系中的每个第二控制点的坐标位置中,其y坐标需要加上。若步骤504中,电子设备对扭曲文档图像的左侧边缘处补充了的边缘图像,则第一坐标对应关系中的每个第二控制点的坐标位置中,其x坐标需要加上。若步骤504中,电子设备对扭曲文档图像的下侧边缘处补充了宽度为的边缘图像,则第一坐标对应关系中的每个第二控制点的坐标位置保持不变。若步骤504中,电子设备对扭曲文档图像的右
侧边缘处补充了宽度为的边缘图像,则第一坐标对应关系中的每个第二控制点的坐标位置也保持不变。
252.因此,电子设备可以按照上述方式,调整第一坐标对应关系中每个参考点的坐标位置对应的第二控制点的坐标位置,得到第二坐标对应关系。
253.例如,在第一坐标对应关系中,若第一行第一个第二控制点的坐标位置为(-3,2),其对应的参考点的坐标位置为(0,0),且电子设备对扭曲文档图像的左侧边缘处补充了6列像素点。因此,需要对第一坐标对应关系中的第一行第一个第二控制点的x坐标加上6,使得第二坐标对应关系中,第一行第一个第二控制点的坐标位置为(3,2),其对应的参考点的坐标位置为(0,0)。
254.步骤508,电子设备根据第二坐标对应关系对第一文档图像进行采样,得到第二文档图像;第二文档图像中的每个参考点的坐标位置处的像素值,等于第一文档图像中与参考点对应的第二控制点的坐标位置处的像素值。
255.在一些实施例中,电子设备在执行完成步骤504和步骤507之后,电子设备可以根据第二坐标对应关系中,每个第二控制点的坐标位置与参考点的坐标位置之间的一一对应关系,对第一文档图像进行采样,得到第二文档图像。
256.其中,第二文档图像中的每个参考点的坐标位置处的像素值,等于第一文档图像中与参考点对应的第二控制点的坐标位置处的像素值。此时,参考点的坐标位置与第二控制点的坐标位置之间的一一对应关系,属于第二坐标对应关系。
257.例如,在第二坐标对应关系中,第一文档图像中第一行第一个第二控制点的坐标位置为(3,2),其对应的参考点的坐标位置为(0,0),因此,电子设备可以采用第一行第一个第二控制点的坐标位置(3,2)处的像素值,作为参考点的坐标位置(0,0)处的像素值,得到第二文档图像。
258.因此,按照上述的步骤505至步骤508,使得电子设备可以根据多个第一控制点的坐标位置和参考点的坐标位置,对第一文档图像进行采样,得到第二文档图像。
259.可以理解的是,本技术实施例也可以采用其他方式对第一文档图像进行采样,得到第二文档图像,来实现文档图像。
260.综上,针对一些边缘不完整的扭曲文档图像,一些相关技术的文档矫正算法在进行文档矫正后,可能存在矫正后的文档图像的边缘处的文字信息丢失的问题。基于此,本技术实施例提出了一种文档图像矫正方法,其可以包括扭曲文档图像的预处理、特征提取模块的网络优化、目标损失函数的网络优化,以及扭曲文档图像的边缘补充等。
261.针对一些边缘不完整的扭曲文档图像场景,本技术实施例可以在电子设备侧部署文档图像矫正方法,其可以在客观、主观指标好等原则的基础上,对扭曲文档图像进行矫正。
262.针对一些边缘不完整的扭曲文档图像,若未对扭曲文档图像进行边缘补充,其校正后得到的矫正图像的边缘处的文字信息可能会丢失,从而导致校正后得到的矫正图像的效果不佳,而本技术实施例在对扭曲文档图像进行矫正的过程中,其还可以对扭曲文档图像进行边缘补充,可以改善矫正后的文档图像的边缘处的文字信息丢失的情况,从而提升矫正后的文档图像的质量。
263.上面结合图3至图11,对本技术实施例提供的文档图像矫正方法进行了说明,下面
对本技术实施例提供的执行上述方法的装置进行描述。如图12所示,图12为本技术实施例提供的一种文档图像校正装置的结构示意图。该文档图像校正装置可以是本技术实施例中的电子设备,或电子设备内的芯片或芯片系统。
264.如图12所示,该文档图像校正装置1200包括处理单元1201。其中,处理单元1201用于支持文档图像校正装置1200执行上述的处理步骤。
265.具体的,处理单元1201用于获取扭曲文档图像;处理单元1201用于采用文档矫正模型对扭曲文档图像进行处理,得到扭曲文档图像对应的多个第一控制点的坐标位置;处理单元1201用于根据多个第一控制点的坐标位置,对扭曲文档图像的边缘进行补充,得到第一文档图像;处理单元1201用于对第一文档图像进行采样,得到第二文档图像。
266.在一种可能的实现方式中,该文档图像校正装置1200还包括存储单元1202。存储单元1202和处理单元1201通过线路相连。存储单元1202可以包括一个或者多个存储器,存储器可以是一个或者多个设备、电路中用于存储程序或者数据的器件。存储单元1202可以独立存在,通过通信总线与处理单元1201相连。存储单元1202也可以和处理单元1201集成在一起。
267.存储单元1202可以存储电子设备中的方法的计算机执行指令,以使处理单元1201执行上述实施例中的方法。存储单元1202可以是寄存器、缓存或者随机存取存储器(randomaccessmemory,ram)等,存储单元1202可以和处理单元1201集成在一起。存储单元1202可以是只读存储器(read-only memory,rom)或者可存储静态信息和指令的其他类型的静态存储设备,存储单元1202可以与处理单元1201相独立。
268.图13为本技术实施例提供的一种芯片的结构示意图。如图13所示,芯片1300包括一个或两个以上(包括两个)处理器1301、通信线路1302和通信接口1303,可选的,芯片1300还包括存储器1304。
269.在一些实施方式中,存储器1304存储了如下的元素:可执行模块或者数据结构,或者他们的子集,或者他们的扩展集。
270.上述本技术实施例描述的方法可以应用于处理器1301中,或者由处理器1301实现。处理器1301可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1301中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1301可以是通用处理器(例如,微处理器或常规处理器)、数字信号处理器、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门、晶体管逻辑器件或分立硬件组件,处理器1301可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。
271.结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。其中,软件模块可以位于随机存储器、只读存储器、可编程只读存储器或带电可擦写可编程存储器(electricallyerasable programmable read only memory,eeprom)等本领域成熟的存储介质中。该存储介质位于存储器1304,处理器1301读取存储器1304中的信息,结合其硬件完成上述方法的步骤。
272.处理器1301、存储器1304以及通信接口1303之间可以通过通信线路1302进行通信。
273.在上述实施例中,存储器存储的供处理器执行的指令可以以计算机程序产品的形式实现。其中,计算机程序产品可以是事先写入在存储器中,也可以是以软件形式下载并安装在存储器中。
274.本技术实施例还提供一种计算机程序产品,其包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本技术实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包括一个或多个可用介质集成的服务器、数据中心等数据存储设备。例如,可用介质可以包括磁性介质(例如,软盘、硬盘或磁带)、光介质(例如,数字通用光盘(digital versatile disc,dvd))、或者半导体介质(例如,固态硬盘(solid state disk,ssd))等。
275.本技术实施例提供一种电子设备,该电子设备包括处理器和存储器,存储器用于存储计算机程序,处理器用于执行计算机程序,以执行上述的文档图像矫正方法。
276.本技术实施例提供一种芯片。芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行上述实施例中的技术方案。其实现原理和技术效果与上述相关实施例类似,此处不再赘述。
277.本技术实施例还提供了一种计算机可读存储介质。计算机可读存储介质存储有计算机程序或指令。计算机程序或指令被处理器执行时实现上述方法。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或者在计算机可读介质上传输。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何目标介质。
278.作为一种可能的设计,计算机可读介质可以包括紧凑型光盘只读储存器(compactdisc read-only memory,cd-rom)、ram、rom、eeprom或其它光盘存储器;计算机可读介质可以包括磁盘存储器或其它磁盘存储设备。而且,任何连接线也可以被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,dsl或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,dsl或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘(cd),激光盘,光盘,dvd,软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。上述的组合也应包括在计算机可读介质的范围内。
279.本技术实施例是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理单元以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理单元执行的指令
产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
280.以上的具体实施方式,对本技术的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本技术的具体实施方式而已,并不用于限定本技术的保护范围,凡在本技术的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本技术的保护范围之内。

技术特征:
1.一种文档图像矫正方法,其特征在于,应用于电子设备,所述方法包括:获取扭曲文档图像;采用文档矫正模型对所述扭曲文档图像进行处理,得到所述扭曲文档图像对应的多个第一控制点的坐标位置;所述第一控制点包括所述扭曲文档图像中的文本特征所处的点,所述文本特征包括文档边缘、文本行以及插图边缘线中的至少一项;根据所述多个第一控制点的坐标位置,对所述扭曲文档图像的边缘进行补充,得到第一文档图像;对所述第一文档图像进行采样,得到第二文档图像。2.根据权利要求1所述的方法,其特征在于,所述根据所述多个第一控制点的坐标位置,对所述扭曲文档图像的边缘进行补充,得到第一文档图像,包括:根据所述多个第一控制点的坐标位置,确定所述扭曲文档图像的四周边缘处待补充的边缘尺寸;采用所述扭曲文档图像的四周边缘中的每个目标边缘处的边缘图像,对所述扭曲文档图像中属于同一方位的所述目标边缘进行补充,得到第三文档图像;基于所述第三文档图像,生成所述第一文档图像;其中,所述扭曲文档图像的四周边缘包括左侧边缘、右侧边缘、上侧边缘和下侧边缘,所述目标边缘包括所述左侧边缘、所述右侧边缘、所述上侧边缘和所述下侧边缘中的至少一个边缘,每个所述目标边缘处的边缘图像的尺寸等于同一方位的所述目标边缘处待补充的边缘尺寸。3.根据权利要求2所述的方法,其特征在于,所述根据所述多个第一控制点的坐标位置,确定所述扭曲文档图像的四周边缘处待补充的边缘尺寸,包括:获取所述多个第一控制点的坐标位置中的第一坐标值、第二坐标值、第三坐标值和第四坐标值;所述第一坐标值为所述多个第一控制点的坐标位置在所述扭曲文档图像的宽度方向上对应的多个坐标值中的最小值,所述第二坐标值为所述多个第一控制点的坐标位置在所述扭曲文档图像的高度方向上对应的多个坐标值中的最小值,所述第三坐标值为所述多个第一控制点的坐标位置在所述扭曲文档图像的宽度方向上对应的多个坐标值中的最大值,所述第四坐标值为所述多个第一控制点的坐标位置在所述扭曲文档图像的高度方向上对应的多个坐标值中的最大值;根据所述第一坐标值,确定所述左侧边缘处待补充的边缘尺寸;根据所述第二坐标值,确定所述上侧边缘处待补充的边缘尺寸;根据所述第三坐标值和所述扭曲文档图像的宽度,确定所述右侧边缘处待补充的边缘尺寸;根据所述第四坐标值和所述扭曲文档图像的高度,确定所述下侧边缘处待补充的边缘尺寸。4.根据权利要求3所述的方法,其特征在于,所述根据所述第一坐标值,确定所述左侧边缘处待补充的边缘尺寸,包括:在所述第一坐标值小于0的情况下,将所述第一坐标值的负值确定为所述左侧边缘处待补充的边缘尺寸;相应的,所述根据所述第二坐标值,确定所述上侧边缘处待补充的边缘尺寸,包括:
在所述第二坐标值小于0的情况下,将所述第二坐标值的负值确定为所述上侧边缘处待补充的边缘尺寸;相应的,所述根据所述第三坐标值和所述扭曲文档图像的宽度,确定所述右侧边缘处待补充的边缘尺寸,包括:在所述第三坐标值大于所述扭曲文档图像的宽度的情况下,将所述第三坐标值与所述扭曲文档图像的宽度的差值,确定为所述右侧边缘处待补充的边缘尺寸;相应的,所述根据所述第四坐标值和所述扭曲文档图像的高度,确定所述下侧边缘处待补充的边缘尺寸,包括:在所述第四坐标值大于所述扭曲文档图像的高度的情况下,将所述第四坐标值与所述扭曲文档图像的高度的差值,确定所述下侧边缘处待补充的边缘尺寸;其中,在所述第一坐标值大于或等于0的情况下,所述左侧边缘处待补充的边缘尺寸等于0;在所述第二坐标值大于或等于0的情况下,所述上侧边缘处待补充的边缘尺寸等于0;在所述第三坐标值小于或等于所述扭曲文档图像的宽度的情况下,所述右侧边缘处待补充的边缘尺寸等于0;在所述第四坐标值小于或等于所述扭曲文档图像的高度的情况下,所述下侧边缘处待补充的边缘尺寸等于0。5.根据权利要求2所述的方法,其特征在于,所述基于所述第三文档图像,生成所述第一文档图像,包括:对所述第三文档图像进行模糊处理,得到第四文档图像;采用所述扭曲文档图像,替换所述第四文档图像中除已补充的边缘图像所在区域外的其他区域,得到所述第一文档图像。6.根据权利要求1所述的方法,其特征在于,在所述采用文档矫正模型对所述扭曲文档图像进行处理,得到所述扭曲文档图像对应的多个第一控制点的坐标位置之前,还包括:对所述扭曲文档图像进行预处理,得到高频信息图和灰度图;相应的,所述采用文档矫正模型对所述扭曲文档图像进行处理,得到所述扭曲文档图像对应的多个第一控制点的坐标位置,包括:将所述高频信息图与灰度图并联拼接后输入所述文档矫正模型,得到所述扭曲文档图像对应的多个第一控制点的坐标位置。7.根据权利要求6所述的方法,其特征在于,所述对所述扭曲文档图像进行预处理,得到高频信息图和灰度图,包括:将所述扭曲文档图像转换为预设尺寸的预处理文档图像;将所述预处理文档图像转换成所述灰度图;对所述灰度图进行傅里叶变换,得到第一频域图;获取低频信息图;所述低频信息图的尺寸与所述预处理文档图像的尺寸相同,且所述低频信息图中每个像素点的像素值均为同一数值;对所述低频信息图进行傅里叶变换,得到第二频域图;采用所述第二频域图中预设区域处的频域值,替换所述第一频域图中所述预设区域处的频域值,得到第三频域图;对所述第三频域图进行傅里叶逆变换,得到所述高频信息图。8.根据权利要求1所述的方法,其特征在于,所述文档矫正模型包括特征提取模块和预
测控制点模块;所述采用文档矫正模型对所述扭曲文档图像进行处理,得到所述扭曲文档图像对应的多个第一控制点的坐标位置,包括:采用所述特征提取模块对所述扭曲文档图像进行处理,得到所述扭曲文档图像对应的语义特征图;采用所述预测控制点模块对所述语义特征图进行处理,得到所述扭曲文档图像对应的多个第一控制点的坐标位置。9.根据权利要求8所述的方法,其特征在于,所述特征提取模块包括多个空洞卷积网络,以及位于相邻两个所述空洞卷积网络之间的池化层,每个所述空洞卷积网络包括多个空洞卷积层;在除最后一个所述空洞卷积网络外的每个所述空洞卷积网络中,最后一个所述空洞卷积层的输出作为所述池化层的输入;每个所述池化层的输出作为后一个所述空洞卷积网络中的第一个所述空洞卷积层的输入。10.根据权利要求9所述的方法,其特征在于,在每个所述空洞卷积网络中,任意两个所述空洞卷积层的空洞率不同。11.根据权利要求10所述的方法,其特征在于,在每个所述空洞卷积网络中,按照所述多个空洞卷积层级联的先后顺序,所述多个空洞卷积层的空洞率从大到小设置。12.根据权利要求8所述的方法,其特征在于,所述预测控制点模块包括多个卷积层,所述语义特征图作为第一个所述卷积层的输入,最后一个所述卷积层的输出为所述扭曲文档图像对应的多个第一控制点的坐标位置,且最后一个所述卷积层的通道数等于2。13.根据权利要求1所述的方法,其特征在于,所述对所述第一文档图像进行采样,得到第二文档图像,包括:根据所述多个第一控制点的坐标位置和参考点的坐标位置,对所述第一文档图像进行采样,得到第二文档图像;所述参考点包括非扭曲文档图像中的文本特征所处的点,所述文本特征包括文档边缘、文本行以及插图边缘线中的至少一项。14.根据权利要求13所述的方法,其特征在于,所述根据所述多个第一控制点的坐标位置和参考点的坐标位置,对所述第一文档图像进行采样,得到第二文档图像,包括:对所述多个第一控制点的坐标位置进行插值,得到所述扭曲文档图像对应的多个第二控制点的坐标位置;在所述扭曲文档图像的宽度方向上的所述第二控制点的数量,等于所述扭曲文档图像在宽度方向上的像素点数量,在所述扭曲文档图像的高度方向上的所述第二控制点的数量,等于所述扭曲文档图像在高度方向上的像素点数量;生成所述多个第二控制点中的每个所述第二控制点的坐标位置,与其对应的所述参考点的坐标位置之间的第一坐标对应关系;所述参考点的坐标位置与所述第二控制点的坐标位置一一对应;根据所述第一文档图像中已补充的边缘图像所在的方位,调整所述第一坐标对应关系中每个所述参考点的坐标位置对应的第二控制点的坐标位置,得到第二坐标对应关系;根据所述第二坐标对应关系对所述第一文档图像进行采样,得到第二文档图像;所述第二文档图像中的每个所述参考点的坐标位置处的像素值,等于所述第一文档图像中与所述参考点对应的第二控制点的坐标位置处的像素值。15.根据权利要求1至14中任一项所述的方法,其特征在于,所述文档矫正模型是基于
目标损失函数训练得到的,所述目标损失函数包括控制点距离损失函数和多尺度交叉方向损失函数,所述多尺度交叉方向损失函数包括多个尺度范围内的局部交叉方向损失之和。16.一种电子设备,其特征在于,包括存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以执行如权利要求1至15中任一项所述的文档图像矫正方法。17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序或指令,当所述计算机程序或指令被运行时,实现如权利要求1至15中任一项所述的文档图像矫正方法。

技术总结
本申请实施例提供一种文档图像矫正方法、电子设备及存储介质,应用于电子技术领域。该方法获取扭曲文档图像,采用文档矫正模型对扭曲文档图像进行处理,得到扭曲文档图像对应的多个第一控制点的坐标位置,根据多个第一控制点的坐标位置,对扭曲文档图像的边缘进行补充,得到第一文档图像,对第一文档图像进行采样,得到第二文档图像。因此,本申请实施例针对边缘不完整的扭曲文档图像,对扭曲文档图像的边缘进行补充,并对边缘补充后的第一文档图像进行采样,以实现文档矫正,因此,本申请实施例可以改善矫正后的文档图像的边缘处的文字信息丢失的情况,从而提升矫正后的文档图像的质量。量。量。


技术研发人员:程自华 孙斌 宓振鹏 刘石磊
受保护的技术使用者:荣耀终端有限公司
技术研发日:2023.06.15
技术公布日:2023/7/21
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐