图像处理方法、装置、设备及介质
文献发布时间:2023-06-19 09:41:38
技术领域
本发明涉及图像处理技术领域,特别是涉及一种图像处理方法、装置、设备及介质。
背景技术
在光学字符识别(OCR,Optical Character Recognition)领域,一类经常遇到的场景是,需要对一个固定模版的证件(比如身份证、驾驶证、购车发票等具有固定制式的证件或物品)进行文字内容的识别。在对固定模板类的图像进行文字内容的识别时,通常需要采用对需要识别的目标文本区域(比如身份证上的姓名、性别、民族等)进行定位,即标定出每个目标文本区域在图像中的位置,从而向用户输出具体每个文本区域的识别结果。
在进行文本区域的定位时,相关技术中,一般是先对图像中的内容进行关键词匹配等方式进行文本区域的归类和定位。但是,采用上述方法时,对关键词匹配的精度要求都非常高,一旦匹配稍有偏差便极易导致归类和定位错误,从而最终归类准确率较低的问题。
发明内容
鉴于上述问题,提出了本发明实施例的一种图像处理方法、装置、设备及介质,以便克服上述问题或者至少部分地解决上述问题。
为了解决上述问题,本发明的第一方面,公开了一种图像处理方法,所述方法包括:
对待处理图像进行特征提取,得到所述待处理图像的特征图;
确定所述特征图上的每个特征点的属性预测值,一个特征点的属性预测值表征所述待处理图像中与该特征点对应的像素点属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别;
根据所述特征图上的每个特征点的属性预测值,标记所述待处理图像上的各个文本区域的位置和类别。
本发明实施例的第二方面,还公开了一种图像处理装置,包括:
特征提取模块,用于对待处理图像进行特征提取,得到所述待处理图像的特征图;
预测值确定模块,用于确定所述特征图上的每个特征点的属性预测值,一个特征点的属性预测值表征所述待处理图像中与该特征点对应的像素点属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别;
标记模块,用于根据所述特征图上的每个特征点的属性预测值,标记所述待处理图像上的各个文本区域的位置和类别。
本发明实施例的第三方面,还公开了一种电子设备,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述设备执行如本发明第一方面实施例所述的图像处理方法。
本发明实施例的第四方面,还公开了一种计算机可读存储介质,其存储的计算机程序使得处理器执行如本发明第一方面实施例所述的图像处理方法。
本发明实施例包括以下优点:
在本发明实施例中,可以对待处理图像进行特征提取,从而得到待处理图像的特征图,进而确定特征图上包括的每个特征点的属性预测值,其中,属性预测值可以表征待处理图像中与该特征点对应的像素点属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别,从而根据属性预测值对待处理图像上的各个文本区域的位置和类别进行分别标记。
一方面,由于本发明实施例中,一个特征点的属性预测值表征待处理图像中与该特征点对应的像素点属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别,可见,本发明在进行文本区域的分类时,是像素级的分类,即依托于像素点进行分类,因此,使得分类的精度更细,从而提高了文本区域的分类精确度。
又一方面,本发明在像素级的分类的基础上,由于确定了同一特征点在不同维度的信息,即属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别三种维度的信息,不仅丰富了进行分类时所依据的参考信息,而且从文本区域归类的角度上,该三种维度的信息之间也存在紧密关联,由此,通过相互关联的信息可以更加准确定位特征点对应的像素点在待处理图像中的位置和类别。因此,综合上述信息可以更加精确地定位出各个文本区域的位置和类别,从而使得本发明的文本区域的分类结果更加可靠。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的图像处理方法的步骤流程图;
图2是本发明实施例又一图像处理方法的步骤流程图;
图3是本发明实施例对身份证图像进行图像处理的示意图;
图4是本发明实施例又一图像处理方法的步骤流程图;
图5是本发明实施例对训练预设模型的步骤流程图;
图6是本发明实施例对模板图像样本进行特征提取的示意图;
图7是本发明实施例的一种预设模型的结构示意图;
图8是本发明本实施例中的图像处理装置的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
相关技术中,在对固定模板类的图像中的图像进行文字域定位和归类时,一般采用下面二种方式:
一种方式是对检测得到的文本行的内容进行识别,最后通过文本内容关键词匹配等方式来对这些文本行进行文字域归类。例如,对于身份证图像,是先对身份证图像中的“姓名”、“性别”、“身份证号码”等文本行进行检测,从而对这些文本行中的文字内容进行识别,识别出“姓名张三”的文本内容时,便可以根据“姓名”关键字匹配,或者得到该“姓名张三”的文本区域归类到“姓名”类别。
但是,此种方式对文字识别的精度要求都非常高,一旦文字内容识别稍有偏差就容易使得归类出现错误。
另一种方式是对检测文本位置,通过检测到的文本位置对这些文本行进行文字域归类,但是此种方式需要较高的位置检测精度,一旦坐标检测有误差,则就容易使得归类出现错误。
上述二种方式均不能得到较高精度的文本区域的归类。有鉴于此,本申请人提出了如下核心技术构思之一:对图像进行像素级的分类,即通过确定图像上每个像素点为文本区域的概率、与文本区域四个顶点的距离、以及属于哪一个文本区域,这样,综合考虑各像素点的上述三种信息去确定一个文本区域的类别和位置,从而提高对文本区域归类的精确度。
参照图1所示,图1示出了本发明实施例的一种图像处理方法的步骤流程图。
如图1所示,本实施例的一种图像处理方法具体可以包括以下步骤:
步骤S101:对待处理图像进行特征提取,得到所述待处理图像的特征图。
本实施例中,待处理图像可以是指对具有固定制式的物品所拍摄的图像,在该待处理图像中可以包括多个图像区域,这些图像区域的位置在待处理图像上可以被提前指定,例如身份证、银行卡等具有标准规范的物品,其包括了姓名、身份证等文本所组成的区域,这些区域在身份证上具有指定的位置范围,因此,在身份证图像便相应地具有姓名、身份证等文本所组成的图像区域。
本实施例中,对待处理图像进行特征提取,可以是指对待处理图像进行多种尺度的特征提取,并对多种尺度的特征图进行融合得到的融合特征图。采用多尺度特征提取,可以避免因待处理图像上的文字大小不一而导致的特征提取不够准确的问题,从而可以从整体上准确描述待处理图像的图像特征。
步骤S102:确定所述特征图上的每个特征点的属性预测值,一个特征点的属性预测值表征所述待处理图像中与该特征点对应的像素点属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别。
本实施例中,在得到的特征图中可以包括多个像素点,其中,该特征图上的像素点可以被称为特征点。由于特征图可以反映待处理图像的整体特征,则一个特征图上的特征点可以对应待处理图像上的一小块区域,即一个特征点可以描述待处理图像上一小块区域内的整体特征。实际中,待处理图像上的一小块区域是由一个或多个像素点组成,因此,特征图上的每个特征点可以对应待处理图像中的一个或多个像素点。
本实施例中,特征点的属性预测值可以包括三个维度的信息,分别是:该特征点对应的像素点属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别。实际中,属性预测值可以是一个三维向量值,通过该三维向量值记录上述信息。
示例地,以身份证为例,对于特征图中的特征点A,该特征点A对应身份证图像中的一小块区域,该一小块区域可以包括一个或多个像素点。特征点A的属性预测值为{0.8、(3,2,1,3),1},其中,0.8表示特征点A对应的像素点属于文本区域的概率为0.8,(3,2,1,3)表示该特征点A对应的像素点到文本区域的4个位置点的预测距离分别是3、2、1、3;该特征点A对应的像素点所属的文本区域的预测类别是1。例如,1表示是“姓名”类别。
本实施例中,由于特征图上的每个特征点可以对应待处理图像中的多个像素点,得到了每个特征点的属性预测值,便得到了每个特征点对应到待处理图像中的各像素点在待处理图像中被预测到的位置信息和类别信息。
步骤S103:根据所述特征图上的每个特征点的属性预测值,标记所述待处理图像上的各个文本区域的位置和类别。
本实施例中,由于特征图上的每个特征点可以对应待处理图像中的一个或多个像素点,因此,通过特征点的属性预测值,可以得到待处理图像中各个小块区域属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别。进而,便可以根据各个小块区域属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别,对属于同一预测类别、且属于文本区域的小块区域,按照这些小块区域与所属的文本区域的预测距离进行归类合并,从而实现了对处理图像上的各个文本区域的位置和类别的标记。
示例地,仍以身份证图像为例,对于特征图中的特征点A和特征点B,如该特征点A对应身份证图像中的一小块区域C、特征点B对应身份证图像中的一小块区域D,特征点A的属性预测值为{0.8,(3,2,1,3),1}、特征点B的属性预测值为{0.78,(4,2.5,0.8,2.8),1};可见特征点A和特征点B属于文本区域的概率接近,与所属的文本区域的多个位置点的预测距离也接近,且所属的文本区域的预测类别一致,则可以根据该特征点A和特征点B的属性预测值,将身份证图像中小块区域C和小块区域D标记为同一个文本区域,并可以确定该文本区域的类别为1,此外,可以根据小块区域C和小块区域D与所属的文本区域的多个位置点的预测距离,确定该文本区域在身份证图像中的位置。
由于在待处理图像中属于同一文本区域的两个相邻小块区域,二者属于文本区域的概率非常接近、与该文本区域的多个位置点的预测距离也非常相近、且属于该文本区域的预测类别也是同一类别,实际中,在属于文本区域的概率非常接近、与该文本区域的多个位置点的预测距离也非常相近的情况下,属于该文本区域的预测类别也应该属于同一类别。这样,一个特征点的属性预测值所包括的三种信息之间便存在紧密的关联性,从而在依据上述三种信息对文本区域的位置和类别进行标记时,使得所标记的文本区域的位置和类别会更加可靠,由此提高了对文本区域进行定位和归类的准确度。
本发明实施例中,由于特征图可以反映待处理图像的整体图像特征,特征图上的特征点可以对应待处理图像上的一个或多个像素点,且特征点的属性预测值表征待处理图像中与该特征点对应的像素点属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别。可见,本发明在进行文本区域的分类时,是依托于像素点进行分类,因此,使得分类的精度更细,从而提高了文本区域的分类精确度。
相比于相关技术中利用关键词匹配、位置匹配或坐标点匹配的方式,本实施方式充分利用了特征图上每个特征点所表征的三个维度的信息,从而实现了较高精度的文本域归类。
参照图2及图3所示,图2示出了本发明实施例中的又一种图像处理方法的步骤流程图,图3示出了对身份证图像进行图像处理的示意图。
本实施例中,待处理图像可以是对原始图像进行矫正后的图像,具体地,该原始图像包括目标对象的图像,其中,目标对象是具有固定模板的对象,即具有固定制式物品的图像,例如,身份证、银行卡等。
实际中,由于在对目标对象进行拍摄得到原始图像时,会出现摄像头的摄像界面不能对齐目标对象的边缘的问题,特别是在拍摄证件图像时,目标对象在摄像界面中往往是倾斜的,这样,在后续对该证件图像进行识别时,便会在标记文本区域的位置时出现偏差,进而导致分类不准确。
鉴于此,在本实施例中,可以对获得的原始图像进行倾斜矫正。其中,对原始图像进行倾斜矫正的过程可以是如下过程:
首先,预测所述目标对象的图像在所述原始图像上的位置。
其次,根据所述目标对象的图像在所述原始图像上的位置,从所述原始图像中提取所述待处理图像,所述待处理图像包含所述目标对象的图像。
在一些实施例中,可以确定目标对象的图像的多个预设位置点在原始图像上的位置,根据多个预设位置点在原始图像上的位置,将多个预设位置点围合而成的图像从原始图像中提取出来,从而得到包括目标对象的待处理图像。其中,多个预设位置点可以是目标对象边缘上的一些位置点,以身份证图像为例,可以是身份证四个边缘上的位置点,这些位置点可以组成标准的矩形框。
在一些实施例中,可以预测目标对象中的多个预设顶点在原始图像中的坐标,并根据该多个预设顶点在原始中的坐标、以及目标对象的图像中该多个预设顶点在原始图像上的坐标,对目标对象的图像进行透视变换,以使目标对象的图像中多个预设顶点的坐标为上述预测出的坐标。从而实现对目标对象的图像在原始图像中的矫正,之后,从原始图像中提取矫正后的目标对象的图像,提取的矫正后的目标对象的图像即为待处理图像。
示例地,如图3所示,最左侧图像为原始图像,该原始图像中包括的身份证图像在图像中是倾斜的,为对该身份证图像进行倾斜矫正,可以先预测出身份证四个顶点在原始图像中的坐标,预测出的坐标如图中虚线框的四个顶点所示。之后,根据该预测出的四个顶点的坐标,对原始图像中身份证四个顶点的真实坐标进行变换,使得四个顶点的真实坐标变换到预测出的坐标,从而实现了对身份证的倾斜矫正,如图4所示,即将图中身份证的边缘与虚线框对齐,这样便得到了规整的身份证图像。
在又一些实施例中,也可以通过图像变换模型对原始图像进行矫正,此种情况下,可以将原始图像输入图像变换模型,得到由所述图像变换模型输出的矫正后的待处理图像。
其中,所述图像变换模型用于根据预测出的目标对象的多个顶点的坐标,对目标对象进行变换,从而输出变换后的原始图像,即待处理图像。其中,所述图像变换模型是以模板图像为样本,对神经网络模型进行训练得到的模型。
在对原始图像进行倾斜矫正后,便得到了待处理图像,则可以对待处理图像中的各个文本区域进行定位和归类,由于待处理图像已被矫正,因此对其所包括的各个文本区域进行分类时,可以调高分类精确度。如图3所示,具体可以包括以下步骤:
步骤S301:对待处理图像进行特征提取,得到所述待处理图像的特征图。
本实施例中,步骤S301的过程与上述步骤S101的过程类似,相关之处参见步骤S101的描述即可,在此不再赘述。
步骤S302:确定所述特征图上的每个特征点的属性预测值,一个特征点的属性预测值表征所述待处理图像中与该特征点对应的像素点属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别。
本实施例中,步骤S302的过程与上述步骤S102的过程类似,相关之处参见步骤S102的描述即可,在此不再赘述。
本实施例中,在得到特征图上的每个特征点的属性预测值时,便可以根据特征图上的每个特征点的属性预测值,标记所述待处理图像上的各个文本区域的位置和类别,具体可以入步骤S303至步骤S305所述。
步骤S303:根据所述特征图上属于文本区域的各个特征点之间的位置关系,对属于文本区域的相邻特征点进行合并,得到所述待处理图像上的各个文本区域。
本实施例中,各个特征点之间的位置关系可以是指各个特征点之间是否相邻的位置关系,进而将属于文本区域的各相邻特征点进行合并,从而得到文本区域。
在具体实现中,可以先滤除所述预测特征图上对应的概率小于预设概率的特征点,得到所述预测特征图中剩余的多个激活特征点,之后,再将属于文本区域的各个激活特征点之间的位置关系,对属于文本区域的相邻激活特征点进行合并,得到所述待处理图像上的各个文本区域。
其中,由于每个特征点具有属于文本区域的概率,该概率可以反映该特征点属于文本区域的可能性,概率越大表示该特征点是文本区域中的特征点的可能性更高。因此,本实施例中可以将属于文本区域的概率小于预设概率的特征点滤除掉,即将明显不属于文本区域的特征点滤除,剩余的未被滤除的特征点便是激活特征点,这些激活特征点可以均属于文本区域。
由于滤除了概率小于预设概率的特征点,进而减小了特征图中与文本区域关系不大的特征点的噪声干扰,从而可以提高后续进行文本区域归类和定位的精度和效率。在得到激活特征点后,便可以将相邻的激活特征点进行合并。由于一个特征点对应待处理图像中的一个或多个像素点,因此,将相邻的激活特征点合并便是对待处理图像中相邻的多个像素点合并,进而得到待处理图像中的多个文本区域。
步骤S304:对所得到的每个文本区域,根据属于该文本区域的各个特征点分别与该文本区域的多个位置点的预测距离,标记该文本区域在所述待处理图像中的位置。
本实施例中,在得到多个文本区域后,需要确定每个文本区域的位置,由于每个文本区域是由多个相邻的激活特征点合并得到的,因此,每个文本区域中包括多个激活特征点,每个激活特征点的属性预测值又包括与所属文本区域的多个位置点的距离,因此,便可以根据文本区域中各激活特征点分别与该文本区域的多个位置点的预测距离,确定出文本区域在待处理图像中的位置。
其中,文本区域可以是矩形区域,特征点与该文本区域的多个位置点的预测距离,可以是特征点到文本区域的四个顶点的预测距离,通过多个特征点到文本区域的四个顶点的预测距离,便可以确定该文本区域在待处理图像中的位置。
在一种实施方式中,在确定文本区域在待处理图像中的位置时,可以对所得到的每个文本区域,根据属于该文本区域的各个激活特征点各自的权重,对与该文本区域的多个位置点的预测距离进行加权处理,得到该文本区域的多个位置点的位置信息;进而,根据所得到的每个文本区域的多个位置点的位置信息,标记该文本区域在所述待处理图像中的位置。其中,一个激活特征点的权重为该激活特征点对应的预测概率或置信度。
本实施方式中,每个激活特征点的权重可以是指该激活特征点对应的预测概率或置信度。其中,置信度可以是表征该激活特征点属于文本区域的概率与真实情况之间的差距,置信度越高,该激活特征点属于文本区域的概率与真实情况差距越小。例如,激活特征点属于文本区域的概率为0.8,而置信度为0.9,则表征该激活特征点是属于文本区域的特征点。
具体实现中,由于每个激活特征点具有与该文本区域的多个位置点的预测距离,因此,对于一个文本区域中的各个激活特征点,可以对这些激活特征点分别与该文本区域的多个位置点的预测距离进行加权处理,从而得到文本区域的多个位置点的位置信息,该多个位置点的位置信息可以是指该文本区域的多个位置点在待处理图像中的坐标,进而根据多个位置点的坐标,标记该文本区域在待处理图像中的位置。
在确定每个文本区域的位置后,便可以根据文本区域中各个特征点所属的文本区域的预测类别,确定每个文本区域的类别。具体如步骤S305所述:
步骤S305:对所得到的每个文本区域,根据属于该文本区域的各个特征点的预测类别,标记所述待处理图像的该文本区域的类别。
在一种实现方式中,在确定每个文本区域的类别时,由于文本区域是对相邻的各激活特征点合并得到的,因此文本区域中包括的是各激活特征点,则对所得到的每个文本区域,则可以根据属于该文本区域的各个激活特征点各自的权重,对属于该文本区域的各个激活特征点各自的预测类别进行加权处理,得到该文本区域的类别信息;并根据所得到的每个文本区域的类别信息,标记所述待处理图像的该文本区域的类别。其中,一个激活特征点的权重为该激活特征点对应的预测概率或置信度。
本实施例中,每个激活特征点的预测概率或置信度均可以是指该激活特征点所属的文本区域的预测类别与与真实类别之间的差距,置信度或预测概率越高,该激活特征点所属文本区域的预测类别与真实情况差距越小。例如,激活特征点所属文本区域的预测类别为1,而置信度为0.9,则表征该激活特征点所属文本区域的类别是1。
本实施例中,待处理图像中可以包括多个类别的文本区域,例如,“姓名”类别、“性别”类别等,不同的类别可以用不同的数学值表征。则具体实现中,由于一个文本区域中的各激活特征点分别具有所属的文本区域的预测类别和相应置信度,因此,可以对属于该文本区域的各个激活特征点各自的预测类别进行加权平均,得到该文本区域的类别信息,即可以得到该文本区域的类别值,通过该类别信息便可以确定该文本区域所属的类别,进而在待处理图像上标记该文本区域的类别。
示例地,假设文本区域中包括激活特征点A和激活特征点B,其分别对应的权重为0.8、0.5,其分别对应的预测类别为1、1,则加权平均后的值为0.65,取整为1,则标记该文本区域的类别为1所对应的类别。
通过上述步骤,便可以得到待处理图像中各个文本区域的类别和位置,从而实现了基于像素级的文本区域分类,大大提高了文本区域分类的精确度。且由于对预测概率小于预设概率的特征点进行了滤除,即将明显不属于文本区域的特征点进行了滤除,避免了这些特征点所造成的干扰,从而又提高了文本区域分类的效率。
实际中,在通过像素级的文本区域分类后,由于像素级分类精度要求较高,可能存在一些文本区域无法被标记位置和类别的情况。例如,文本区域中包括激活特征点A和激活特征点B,其分别对应的权重为0.4、0.5,其分别对应的预测类别为1、1,则加权求和后的值为0.45,则无法确定该文本区域的类别。
本实施例中,为了确保待处理图像中所包括的全部文本区域均能被确定类别和位置,对于存在一些文本区域无法被标记位置和类别的情况,还可以对待处理图像上未被标记位置和类别的文本区域进行二次定位和归类。具体如下步骤S306至步骤S308所述。
步骤S306:对所述待处理图像上的各个文本区域中未被标记类别的目标文本区域,获得所述目标文本区域的参数值。
其中,所述参数值包括:所述目标文本区域的内的文本和/或所述目标文本区域在所述待处理图像中的位置。
步骤S307:将所述目标文本区域的参数值与模板图像中各个模板文本区域的参数值比较。
步骤S308:将参数值匹配的模板文本区域的类别,标记为所述目标文本区域的类别。
本实施例中,模板图像可以是指与待处理图像采用同一类固定模板的图像。例如,待处理图像是身份证图像,则模板图像是身份证的模板图像。
本实施例中,可以将目标文本区域所包括的文本与模板图像中各个模板文本区域的文本进行关键词比较,若比较结果一致,则该目标文本区域的类别便是模板文本区域所属的类别。当然,也可以将目标文本区域在待处理图像中的位置与各模板文本区域的位置进行比较,按照目标文本区域的位置在模板图像中的位置确定该目标文本区域的类别。
当然,为了提高分类准确度,也可以先确定目标文本区域的位置在模板图像中的位置,进而得到目标文本区域在模板图像中的顺序,再将目标文本区域所包括的文本与模板文本区域的关键词进行匹配,根据得到的位置顺序和关键词匹配结果,综合确定目标文本区域的类别。
示例地,如图3所示右侧图像所示,右侧图像为被标记的身份证图像,在该身份图像中的各个文本区域是根据特征点的属性预测值所标记的。假设,图中实线框401所框出的部分是未确定出类别的文本区域,则可以根据该文本区域401的文本识别结果是“男”,且这个文本区域401在身份证模板中的位置位列第2个文本行(一个文本行为一行,一个文本行中可以有多个不同类别的文本区域),并且文本区域401的坐标中心点位于矫正后证件图的左半边区域,则认为该文本区域401大概率属于“性别”这个类别的文本区域。
本实施例中,对待处理图像中的各个文本区域的类别和位置进行标记后,便可以对待处理图像中的文字内容进行提取和识别,具体如下步骤S309至步骤S310所述:
步骤S309:根据在所述待处理图像上标记的各个文本区域的位置,对所述待处理图像进行切割,得到多个文本区域图像。
本实施例中,在待处理图像中包括各个文本区域的类别信息和位置信息,因此,可以根据该各个文本区域的类别信息和位置信息,对待处理图像进行切割,以切割出各个文本区域。
示例地,如图3右侧被标记的身份证图像所示,在身份证图像中被标记了11个文本区域,图3中被虚线框和实线框所框出的区域便为确定出的文本区域,每个文本区域都有各自的位置信息和类别信息,因此,可以将11个文本区域的图像从待处理图像中分割出来,从而得到了11个文本区域的图像。
步骤S310:对所述多个文本区域图像分别进行文本识别,得到所述文本区域图像中的文字内容。
本实施例中,可以对多个文本区域图像中的文本识别,以得到文本区域图像中的文字内容,该文本内容可以是文本格式的内容,这样,便可以将文本图像转换为了文本格式的文本内容。如图4所示,对“姓名”的文本区域图像进行文本识别,从而得到文本格式的内容“姓名”,同理对“张三”的的文本区域图像进行文本识别,从而得到文本格式的内容“张三”,如此实现了将文字图像识别为文本文字的目的。
采用本发明实施例的技术方案时,具有以下优点:
第一,由于待处理图像是对原始图像中的目标对象进行倾斜矫正后的图像,因此,可以避免待处理图像的倾斜导致文本区域的位置预测出现偏差的问题,从而提高了对文本区域进行分类的精确度。
第二,由于可以将特征图中属于文本区域的预测概率小于预设概率的特征点滤除,因此可以避免非文本区域的特征所带来的干扰,从而提高对文本区域进行分类的效率。
第三,由于对待处理图像中未被标记类别的目标文本区域,采用了文本匹配或位置匹配的匹配规则进行了二次分类,确保待处理图像中的全部文本区域都能被标记类别和位置,因此,提高了对文本区域进行分类的准确度。
在一些实施例中,为了提高对文本区域的分类的效率,使得文本区域的分类更加智能化,可以利用一个全卷积神经网络对待处理图像进行像素级的分类,该网络输出为特征图上每个像素点是否为文字区域、与该文字区域四个顶点的距离、属于哪一个文字域的预测信息,从而根据网络输出的信息对文本区域的位置和类别进行确定。
参照图4所示,示出了本实施例的一种图像处理方法的步骤流程图,如图4所示,具体可以包括以下步骤:
步骤S501:获得多个携带标注的模板图像样本。
一个模板图像样本携带的标注包括:该模板图像样本的各个像素点属于文字区域的真实概率、与所属的文本区域的多个位置点的真实距离、以及所属的文本区域的真实类别。
本实施例中,所携带的标注可以用于描述模板图像样本中各个需要识别的文本区域的真实类别和真实位置。具体而言,可以利用人工对模板图像样本中各个文本区域的真实类别和真实位置进行标注。具体而言,可以标注出每个文本区域四个顶点的位置、每个文本区域的类别、以及每个文本区域的文字内容。
其中,模板图像样本可以是针对同一模板下的多个目标对象各自所拍摄的图像,例如,模板是身份证,则可以将多个不同的身份证的图像作为模板图像样本。
步骤S502:以所述多个携带标注的模板图像样本为训练样本,对预设模型进行训练,得到预测模型。
步骤S503:对待处理图像进行特征提取,得到所述待处理图像的特征图。
步骤S504:将所述特征图输入所述预测模型,得到所述特征图上的每个特征点的属性预测值。
本实施例中,该预设模型可以用于对提取的多种尺度的特征图进行合并,并可以用于输出该特征图中每个特征点的属性预测值。
在得到预测模型之后,一种方式中,可以对待处理图像进行特征提取,得到待处理图像的特征图,并将特征图输入该预测模型,以输出特征图上的每个特征点的属性预测值。当然,在另一种方式中,也可以将待处理图像直接输入该预测模型,通过该预测模型对该待处理图像进行特征提取,并得到该预测模型输出的特征图上每个特征点的属性预测值。此种方式下,该预测模型便可以包括特征提取部分结构。
S505:根据所述特征图上的每个特征点的属性预测值,标记所述待处理图像上的各个文本区域的位置和类别。
其中,根据特征图上的每个特征点的属性预测值,标记所述待处理图像上的各个文本区域的位置和类别的过程,与上述步骤S303至步骤S305类似,相关之处可以参照上述实施例中步骤S303至步骤S305的描述即可,在此不再赘述。
参照图5所示,示出了对预设模型进行训练,得到预测模型的步骤流程图,如图5所示,可以通过以下步骤对预设模型进行训练:
步骤S601:针对所述训练样本中的每个模板图像样本进行特征提取,得到该模板图像样本的特征图。
本实施例中,在一种实施方式中,在针对所述训练样本中的每个模板图像样本进行特征提取,得到该模板图像样本的特征图时,可以针对训练样本中的每个模板图像样本,对该模板图像样本进行多种尺度的特征提取,得到模板图像样本多种尺度的特征图;之后,对该模板图像样本对应的多种尺度的特征图进行融合,得到该模板图像样本的特征图。
具体而言,在进行特征提取时,可以分别进行不同尺度的特征提取,即进行多个不同卷积尺度的处理,在每一步卷积步骤中输出的特征图的尺寸可缩小到输入特征图的尺寸的一半,进而得到多种不同尺度的特征图,之后,从最低层卷积得到的特征图开始,依次进行反池化/上采样操作,将上采样到的特征图与上一层卷积得到的特征图进行合并(concat),经过几次合并和卷积操作后,最终得到一个多尺度融合的特征图。
其中,在一种实施方式中,可以采用神经网络模型对模板图像样本进行特征提取,如图6所示,示出了通过神经网络模型对模板图像样本进行特征提取的示意图,如图6所示,Input表示模板图像样本,该模板图像样本输入至卷积层“conv layer 16,/2”,依次经过“conv stage1 16,/2”、“conv stage1 64,/2”、“conv stage2 128,/2”、“conv stage3256,/2”、“conv stage3 384,/2”等进行特征提取,分别得到Feature map1至Feature map4四张不同尺度的特征图,之后,从最低层得到的特征图Feature map4开始,依次进行反池化/上采样操作,然后每一层处理得到特征图与上一层得到的特征图合并,之后,通过特征合并部分对该多种尺度的特征进行融合,最终得到模板图像样本的特征图Feature map5。
在一些实施例中,该用于进行特征提取的神经网络模型可以包括在预设模型中,则所得到的预设模型如图7所示,这样,预设模型便可以包括特征提取部分、特征合并部分和输出部分。其中,结果输出部分可以对特征合并部分的输出特征图Feature map5进行1×1尺度的卷积处理,进而得到了输出结果。
步骤S602:将所述训练样本中各个模板图像样本的特征图输入所述预设模型,得到所述预设模型的输出结果。
本实施例中,可以将各个模板图像样本的特征图输入所述预设模型,得到所述预设模型的输出结果,该输出结果可以是包括多个特征点的特征图,其中,特征图上每个特征点携带下述信息:属于文本区域的预测概率、与所属文本区域的各个位置点的预测距离、所属文本区域的预测类别。
如图7所示,在输出部分输出的结果包括了多个通道,其中1个通道代表特征图上该像素点是文字区域的预测概率,如图7中“Text score”所示;另外8个通道代表该像素点与文本框四个顶点的预测位置,如图7中模块“1×1,8”输出的Quad coordinates”所示;最后一个通道代表该像素点所属文本区域的预测类别,如图7中模块“1×1,N”与“softmax”模块输出的Quad type”所示,其中,“1×1,N”中的N表示N个类别,例如,身份证图像中可以包括“姓名”、“性别”“地址”等类别。
得到上述输出结果后,便可以根据每个模板图像样本的输出结果和该模板图像样本的标注,确定预设模型的损失值,其中,确定预设模型的损失值的过程可以如下步骤S603至步骤S606所述。
步骤S603:根据所述训练样本中各个模板图像样本携带的真实概率和所述预设模型的输出的预测概率,确定所述预设模型第一损失值。
步骤S604:根据所述训练样本中各个模板图像样本携带的真实距离和所述预设模型的输出的预测距离,确定所述预设模型第二损失值。
步骤S605:根据所述训练样本中各个模板图像样本携带的真实类别和所述预设模型的输出的预测类别,确定所述预设模型第三损失值。
步骤S606:根据所述第一损失值、所述第二损失值、所述第三损失值以及三者各自的权重,得到预设模型的损失值。
由于本实施例中,每个模板图像样本的输出结果包括预测概率、预测距离、预测类别等三个维度的结信息,且每个模板图像样本的标注也包括真实概率、真实距离、真实类别等三个维度的标注,则在求取预设模型的损失值时,可以利用不同的损失函数求取预设模型在每个维度的损失值,然后对各个维度的损失值赋予不同的权重,以得到预设模型的整体损失。
这样,针对不同的输出结果采取独立的损失计算,最后再根据各自的权重求取整体损失,则可以提高损失值计算的精度。
具体实现时,所使用的损失函数可以由三个部分构成,分别为二元交叉熵损失、均方差损失、多元交叉熵损失。其中,可以采用二元交叉熵损失函数计算预设模型的第一损失值,该第一损失值是根据各个模板图像样本携带的真实概率和预设模型的输出的预测概率确定出的,第一损失值用于反映该预设模型预测出的模板图像样本的特征图上各个特征点属于文本区域的预测概率,距离该特征点属于文本区域的真实概率的差距。
其中,可以采用均方差损失函数计算预设模型的第二损失值,该第二损失值是各个模板图像样本携带的真实距离和所述预设模型的输出的预测距离确定出的,第二损失值用于反映该预设模型预测出的模板图像样本的特征图上各个特征点与所属文本区域各个位置点的预测距离,相比该特征点与所属文本区域各个位置点的真实距离的差距。
其中,可以采用多元交叉熵损失计算预设模型的第三损失值,该第三损失值是各个模板图像样本携带的真实类别和所述预设模型的输出的预测类别确定出的,第三损失值用于反映该预设模型预测出的模板图像样本的特征图上各个特征点所属文本区域的预测类别,相比该特征点所属的文本区域的真实类别的差距。
实际中,在确定出第一损失值、第二损失值、第三损失值后,便可以按照上述三个损失值各自的权重,对第一损失值、第二损失值、第三损失值进行加权平均,得到预设模型的损失值。其中,上述三个损失值各自的权重可以根据实际需求预先设置,例如设置为1:1:1的权重比例。
步骤S607:根据预设模型的损失值,对预设模型进行更新,得到所述预测模型。
本实施例中,可以根据该预设模型的损失值对预设模型的参数进行多次的迭代更新,直至预设模型的损失值小于或等于预设损失值为止。其中,损失值小于或等于预设损失值时,表示预设模型预测出的各个特征点属于文本区域的概率、与所属文本区域中各位置点的距离、所属文本区域的类别均与真实情况相差很小,表示预设模型能准确预测出各个特征点的上述三个信息,进而,将此种情况下的预设模型保存为预测模型。
在一种实施方式中,由于训练样本中的模板图像样本携带标注,因此,在确定损失值之前,可以通过以下步骤获得模板图像样本的一个标注矩阵,在具有标注矩阵的情况下,在确定预设模型的损失值时,可以基于标注矩阵分别确定上述三个损失值。具体地,生成所述模板图像样本对应的标注矩阵的过程可以如下所述;
首先,针对所述训练样本中各个所述模板图像样本携带标注,生成并存储对应的标注矩阵;
之后,读取所存储的标注矩阵,以得到根据所述训练样本中各个模板图像样本携带的真实概率、真实距离以及真实类别。
本实施例中,标注矩阵与预设模型的输出结果的尺寸相同,该标注矩阵可以理解为是每个特征点携带该特征点属于文本区域的真实概率、与所属文本区域的多个位置点的真实距离、所属文本区域的真实类别的特征图。实际中,不同的模板图像样本可以对应不同的标注矩阵。
具体实现中,由于模板图像样本携带标注,即模板图像样本携带各个文本文本区域的位置、属性等信息,则可以直接根据这些信息生成模板图像样本的标注矩阵。
实际中,可以将标注矩阵进行持久化存储,这样,在求取预设模型的第一损失值、第二损失值及第三损失值时,便可以读取出该与输入的模板图像样本对应的标注矩阵,从而可以根据该标注矩阵和预设模型输出的输出结果,确定上述三个损失值。
具体实现中,由于标注矩阵可以理解为是每个特征点携带该特征点属于文本区域的真实概率、与所属文本区域的多个位置点的真实距离、所属文本区域的真实类别的特征图,预设模型的输出结果是每个特征点携带该特征点属于文本区域的预测概率、与所属文本区域的多个位置点的预测距离、所属文本区域的预测类别的特征图,则可以根据上述两个特征图,分别计算三个损失值。
由于标注矩阵可以持久化存储,则在对同一批次的多个模板图像样本进行多次训练时,则可以在每次训练时,直接读取出该批次的多个模板图像样本的标注矩阵,避免了在每次训练时都需要另行计算一次标注矩阵的问题,从而提高了训练效率。
采用本实施例的技术方案时,还具有以下优点:
第一,由于可以预先训练一个用于确定特征图上的每个特征点的属性预测值的预测模型,这样,可以提高确定特征图上的每个特征点的属性预测值的效率,从而提高标记待处理图像上的各个文本区域的位置和类别的效率。
第二,由于神经网络模型具有一定的泛化性能,因此,也可以提高对待处理图像进行处理的泛化性。
第三,由于在训练预测模型时,可以针对特征点对应的像素点属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别分别确定损失值,并给各个维度的损失值赋予权重,从而确定出整体损失,如此,可以提高求取损失的精度和准确度,因此,预测模型便可以准确预测出特征图上特征点的属性预测值,由此也提高了标记待处理图像上的各个文本区域的位置和类别的精度。
参照图8所示,示出了本发明实施例的一种图像处理装置的结构框图,如图8所示,所述装置具体可以包括以下模块:
特征提取模块901,可以用于对待处理图像进行特征提取,得到所述待处理图像的特征图;
预测值确定模块902,可以用于确定所述特征图上的每个特征点的属性预测值,一个特征点的属性预测值表征所述待处理图像中与该特征点对应的像素点属于文本区域的概率、与所属的文本区域的多个位置点的预测距离、以及所属的文本区域的预测类别;
标记模块903,可以用于根据所述特征图上的每个特征点的属性预测值,标记所述待处理图像上的各个文本区域的位置和类别。
可选地,所述标记模块903,可以包括以下单元:
区域确定单元,可以用于根据所述特征图上属于文本区域的各个特征点之间的位置关系,对属于文本区域的相邻特征点进行合并,得到所述待处理图像上的各个文本区域;
位置确定单元,可以用于对所得到的每个文本区域,根据属于该文本区域的各个特征点分别与该文本区域的多个位置点的预测距离,标记该文本区域在所述待处理图像中的位置;
类别确定单元,可以用于对所得到的每个文本区域,根据属于该文本区域的各个特征点的预测类别,标记所述待处理图像的该文本区域的类别。
可选地,所述区域确定单元,可以包括:
特征点滤除子单元,可以用于滤除所述预测特征图上对应的概率小于预设概率的特征点,得到所述预测特征图中剩余的多个激活特征点;
合并子单元,可以用于将属于文本区域的各个激活特征点之间的位置关系,对属于文本区域的相邻激活特征点进行合并,得到所述待处理图像上的各个文本区域。
可选地,所述位置确定单元,可以包括:
特征点滤除子单元,可以用于滤除所述预测特征图上对应的概率小于预设概率的特征点,得到所述预测特征图中剩余的多个激活特征点;
加权处理子单元,可以用于对所得到的每个文本区域,根据属于该文本区域的各个激活特征点各自的权重,对与该文本区域的多个位置点的预测距离进行加权处理,得到该文本区域的多个位置点的位置信息;其中,一个激活特征点的权重为该激活特征点对应的预测概率或置信度;
位置标记子单元,可以用于根据所得到的每个文本区域的多个位置点的位置信息,标记该文本区域在所述待处理图像中的位置。
可选地,所述类别确定单元,可以包括:
特征点滤除子单元,可以用于滤除所述预测特征图上对应的概率小于预设概率的特征点,得到所述预测特征图中剩余的多个激活特征点;
加权处理子单元,可以用于对所得到的每个文本区域,根据属于该文本区域的各个激活特征点各自的权重,对属于该文本区域的各个激活特征点各自的预测类别进行加权处理,得到该文本区域的类别信息;其中,一个激活特征点的权重为该激活特征点对应的预测概率或置信度;
类别标记子单元,可以用于根据所得到的每个文本区域的类别信息,标记所述待处理图像的该文本区域的类别。
可选地,所述装置还可以包括:
目标文本区域确定模块,可以用于对所述待处理图像上的各个文本区域中未被标记类别的目标文本区域,获得所述目标文本区域的参数值,所述参数值可以包括:所述目标文本区域的内的文本和/或所述目标文本区域在所述待处理图像中的位置;
匹配模块,可以用于将所述目标文本区域的参数值与模板图像中各个模板文本区域的参数值比较;
标记模块,可以用于将参数值匹配的模板文本区域的类别,标记为所述目标文本区域的类别。
可选地,所述装置还可以包括:
图像切割模块,可以用于根据在所述待处理图像上标记的各个文本区域的位置,对所述待处理图像进行切割,得到多个文本区域图像;
识别模块,可以用于对所述多个文本区域图像分别进行文本识别,得到所述文本区域图像中的文字内容。
可选地,所述装置还可以包括:
样本获得模块,可以用于获得多个携带标注的模板图像样本;
模型训练模块,可以用于以所述多个携带标注的模板图像样本为训练样本,对预设模型进行训练,得到预测模型,一个模板图像样本携带的标注可以包括:该模板图像样本的各个像素点属于文字区域的真实概率、与所属的文本区域的多个位置点的真实距离、以及所属的文本区域的真实类别;
所述预测值确定模块,具体可以用于将所述特征图输入所述预测模型,得到所述特征图上的每个特征点的属性预测值。
可选地,所述模型训练模块,可以包括:
特征提取单元,可以用于针对所述训练样本中的每个模板图像样本进行特征提取,得到该模板图像样本的特征图;
输入单元,可以用于将所述训练样本中各个模板图像样本的特征图输入所述预设模型,得到所述预设模型的输出结果;
第一损失确定单元,可以用于根据所述训练样本中各个模板图像样本携带的真实概率和所述预设模型的输出的预测概率,确定所述预设模型第一损失值;
第二损失确定单元,可以用于根据所述训练样本中各个模板图像样本携带的真实距离和所述预设模型的输出的预测距离,确定所述预设模型第二损失值;
第三损失确定单元,可以用于根据所述训练样本中各个模板图像样本携带的真实类别和所述预设模型的输出的预测类别,确定所述预设模型第三损失值;
损失确定单元,可以用于根据所述第一损失值、所述第二损失值、所述第三损失值以及三者各自的权重,得到预设模型的损失值;
更新单元,可以用于根据预设模型的损失值,对预设模型进行更新,得到所述预测模型。
可选地,所述特征提取单元,可以包括:
多尺度特征提取单元,可以用于针对所述训练样本中的每个模板图像样本,对该所述模板图像样本进行多种尺度的特征提取,得到模板图像样本多种尺度的特征图;
融合单元,可以用于对该模板图像样本对应的多种尺度的特征图进行融合,得到该模板图像样本的特征图。
可选地,所述装置还可以包括:
标注矩阵生成模块,可以用于针对所述训练样本中各个所述模板图像样本携带标注,生成并存储对应的标注矩阵;
读取模块,可以用于读取所存储的标注矩阵,以得到根据所述训练样本中各个模板图像样本携带的真实概率、真实距离以及真实类别。
可选地,所述装置还可以包括:
获得模块,可以用于获得原始图像,所述原始图像可以包括目标对象的图像;
预测模块,可以用于预测所述目标对象的图像在所述原始图像上的位置;
矫正模块,可以用于根据所述目标对象的图像在所述原始图像上的位置,从所述原始图像中提取所述待处理图像,所述待处理图像包含所述目标对象的图像。
本发明实施例还提供了一种电子设备,该电子设备可以用于执行图像处理方法,可以包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器被配置为执行所述的图像处理方法。
本发明实施例还提供了一种计算机可读存储介质,其存储的计算机程序使得处理器执行如本发明实施例所述的图像处理方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种图像处理方法、装置、设备和存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
- 图像处理设备、图像处理方法、用于图像处理方法的程序、以及记录有用于图像处理方法的程序的记录介质
- 图像数据处理方法、用于图像数据处理方法的程序、记录有用于图像数据处理方法的程序的记录介质和图像数据处理装置