图像质量检测方法、装置、设备及介质
技术领域
本发明涉及人工智能
技术领域
,尤其涉及一种图像质量检测方法、装置、设备及介质。背景技术
光学字符识别(Optical Character Recognition,OCR)是指对文本资料的图像文件进行分析识别以获取文字信息的过程。文本资料图像信息通常通过扫描仪、照相机等设备获取并存储在图像文件中,然后OCR软件读取、分析图像文件并通过字符识别提取出其中的字符串。然而,ocr的性能容易受到图像质量的影响,若需要识别的图像不够清晰甚至严重模糊,则容易造成后续对图像内文字定位及识别失败,进而造成文字识别任务失败。因此,在进行文字识别之前,对图像的质量把控至关重要。
现有的图像质量检测方法,一般用边缘检测算子对整张图像进行滤波,然后对得到的滤波结果进行简单的求和或求方差后给出质量评分;或者是通过深度学习的质量检测模型对图像进行质量检测,然后不管是边缘检测算子的质量检测,还是采用深度学习模型的质量检测,都容易受到图像中非文字背景信息的干扰,导致获得的图像质量准确度不高。
发明内容
本发明提供一种图像质量检测方法、装置、设备及介质,以解决现有图像质量检测中,容易受到图像中非文字背景信息的干扰,导致获得的图像质量准确度不高的问题。
提供一种图像质量检测方法,包括:
获取待处理图像,并采用文字定位模型对所述待处理图像中的文字进行定位,以确定所述待处理图像中的文字区域;
对所述待处理图像中的文字区域进行索贝尔算子卷积处理,获取所述文字区域的目标卷积矩阵;
根据所述目标卷积矩阵中像素的像素值和所述像素值的分布区间,获取所述文字区域的区域信息;
根据各所述文字区域的区域信息和预设质量条件确定所述待处理图像的质量检测结果。
提供一种图像质量检测装置,包括:
定位模块,用于获取待处理图像,并采用文字定位模型对所述待处理图像中的文字进行定位,以确定所述待处理图像中的文字区域;
处理模块,用于对所述待处理图像中的文字区域进行索贝尔算子卷积处理,获取所述文字区域的目标卷积矩阵;
计算模块,用于根据所述目标卷积矩阵中像素的像素值和所述像素值的分布区间,获取所述文字区域的区域信息;
确定模块,用于根据各所述文字区域的区域信息和预设质量条件确定所述待处理图像的质量检测结果。
提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述图像质量检测方法的步骤。
提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述图像质量检测方法的步骤。
上述图像质量检测方法、装置、设备及介质所提供的一个方案中,通过获取待处理图像,并采用文字定位模型对待处理图像中的文字进行定位,以确定待处理图像中的文字区域,然后对待处理图像中的文字区域进行索贝尔算子卷积处理,获取文字区域的目标卷积矩阵,再根据目标卷积矩阵中像素的像素值和像素值的分布区间,获取文字区域的区域信息,最后根据文字区域的区域信息和预设质量条件确定待处理图像的质量检测结果;本发明中,通过对各文字区域进行索贝尔算子卷积处理,再对sobel结果中各像素的像素值进行处理,使变化明显的文字区域边缘在质量得分中得以强化,并弱化了变化度较小的背景中的干扰边缘,能够减少图像背景信息的干扰,提高了质量检测算法的精度,进而提高了图像质量的准确度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中图像质量检测方法的一应用环境示意图;
图2是本发明一实施例中图像质量检测方法的一流程示意图;
图3是图2中步骤S20的一实现流程示意图;
图4是图3中步骤S21的一实现流程示意图;
图5是本发明一实施例中图像质量检测方法的另一流程示意图;
图6是图2中步骤S40的一实现流程示意图;
图7是图6中步骤S41的一实现流程示意图;
图8是图6中步骤S42的一实现流程示意图;
图9是本发明一实施例中质量评分阈值的一获取流程示意图;
图10是本发明一实施例中图像质量检测装置的一结构示意图;
图11是本发明一实施例中计算机设备的一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的图像质量检测方法,可应用在如图1的应用环境中,其中,客户端通过网络与服务端进行通信。服务端获取用户通过客户端发送的待处理图像,采用文字定位模型对待处理图像中的文字进行定位,以确定待处理图像中的文字区域,然后对待处理图像中的文字区域进行索贝尔算子卷积处理,获取文字区域的目标卷积矩阵,再根据目标卷积矩阵中像素的像素值和像素值的分布区间,获取文字区域的区域信息,最后根据文字区域的区域信息和预设质量条件确定待处理图像的质量检测结果;通过对各文字区域进行索贝尔算子卷积处理,再对sobel结果中各像素的像素值进行处理,使变化明显的文字区域边缘在质量得分中得以强化,并弱化了变化度较小的背景中的干扰边缘,能够减少图像背景信息的干扰,提高了质量检测算法的精度,进而提高了图像质量的准确度,最终进一步提高了图像质量检测的人工智能化,提高了检测效率。
其中,待处理图像、各文字区域的区域信息和待处理图像的目标质量得分等相关数据存储在服务端的数据库中,在执行图像质量检测方法时,将获取、生成和用到的数据直接存储至数据库,便于后续使用。
本实施例中的数据库存储于区块链网络中,用于存储基于图神经网络的语义召回方法中用到、生成的数据,如待处理图像、各文字区域的区域信息和待处理图像的目标质量得分等相关数据。本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。将数据库部署于区块链可提高数据存储的安全性。
其中,客户端又称为用户端,是指与服务器相对应,为客户提供本地服务的程序。客户端可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一实施例中,如图2所示,提供一种图像质量检测方法,以该方法应用在图1中的服务端为例进行说明,包括如下步骤:
S10:获取待处理图像,并采用文字定位模型对待处理图像中的文字进行定位,以确定待处理图像中的文字区域。
获取待处理图像,待处理图像为需要进行图像质量检测以确定图像质量是否合格的图像,在获取待处理图像之后,首先采用基于深度学习的文字定位模型,对待处理图像中的文字部分进行定位,以确定待处理图像中的文字区域。其中,文字区域为独立、分开的文字区域,对待处理图像中的文字部分进行定位,是对待处理图像中所有分开的文字区域进行定位。
其中,文字定位模型为用于对待处理图像中的文字进行定位的深度学习模型。将待处理图像输入文字定位模型之后,文字定位模型会识别待处理图像中所有的文字,进而确定所有的文字之间的间隔,若相邻两文字之间的间隔大于预设间隔(如两个字符),则将上述两文字的边缘则为各自所属文字区域的一个边缘,以划分出所有文字区域。待处理图像中的各文字区域可以采用高亮的文本框显示出来,以便后续进行文字区域的数量确定。
S20:对待处理图像中的文字区域进行索贝尔算子卷积处理,获取文字区域的目标卷积矩阵。
在采用文字定位模型对待处理图像中的文字进行定位,以确定待处理图像中的文字区域之后,对各文字区域进行索贝尔算子(sobel)卷积处理,对文字区域水平边缘、垂直边缘进行质量检测,以获得文字区域多个方向上的索贝尔算子卷积矩阵,然后对多个方向上的索贝尔算子卷积数据进行汇总计算,获得各文字区域的目标卷积矩阵。
S30:根据目标卷积矩阵中像素的像素值和像素值的分布区间,获取文字区域的区域信息。
在获得各文字区域的目标卷积矩阵之后,根据文字区域的目标卷积矩阵中,各像素的像素值和像素值的分布区间,对目标卷积矩阵中的各像素进行加权求和,以确定文字区域的质量得分,并使用文字区域的质量得分表征文字区域的区域信息。在其他实施例中,还可以用其他信息表征文字区域的区域信息,在此不再赘述。
具体地,统计目标卷积矩阵中各像素的像素值分布情况,确定各像素的像素值处于的分布区间,然后确定处于不同分布区间的像素值数量,即确定处于不同分布区间的像素数量,最后,对处于不同分布区间的像素数量进行加权求和,将加权求和结果作为该文字区域的质量得分。其中,各分布区间为预先设定的、连续的分别区间。
文字区域的质量得分的计算公式为:
score=k1×m1+k2×m2+k3×m3+k4×m4+k5×m5...+knmn;
其中,kn为各分布区间对应的系数,mn为像素值处于各分布区间的像素数量,n=1,2,3,4,5...;score为各文字区域的质量得分。
例如,各分布区间可以为[0,0.1)、[0.1,0.2)、[0.2,0.3)、[0.3,0.4)、[0.4,0.5)、[0.5,+∞],分布区间[0,0.1)、[0.1,0.2)、[0.2,0.3)、[0.3,0.4)、[0.4,0.5)、[0.5,+∞]对应的系数依次为:10-5、10-4、10-3、10-2、10-1、100;在一文字区域标卷积矩阵中,像素值处于[0,0.1)的像素数量为a、像素值处于[0.1,0.2)的像素数量为b,像素值处于[0.2,0.3)的像素数量为c,像素值处于[0.2,0.3)的像素数量为d,像素值处于[0.4,0.5)的像素数量为e,像素值处于[0.4,0.5)的像素数量为f,则该文字区域的质量得分score为:
score=10-5×a+10-4×b+10-3×c+10-2×d+10-1×e+f。
本实施例中,各分布区间可以为[0,0.1)、[0.1,0.2)、[0.2,0.3)、[0.3,0.4)、[0.4,0.5)、[0.5,+∞],仅为示例性说明,各分布区间对应的系数为10-5、10-4、10-3、10-2、10-1、100仅为示例性说明,在其他实施例中,各分布区间还可以是其他连续区间,各分布区间对应的系数还可以是其他值,在此不再赘述。
通过对各个文字区域对应的目标卷积矩阵中,各像素的像素值和像素值的分布区间,对目标卷积矩阵中的各像素数量进行加权求和,可以获得各文字区域的质量得分,以表征文字区域的区域信息确。
S40:根据各文字区域的区域信息和预设质量条件确定待处理图像的质量检测结果。
在对各文字区域进行质量检测,以确定各文字区域的区域信息之后,根据各文字区域的区域信息确定待处理图像的质量,再根据待处理图像的质量和预设质量条件确定待处理图像的质量检测结果,质量检测结果包括通过质量检测和未通过质量检测。其中预设质量条件为预先设置的,用于评估待处理图像的质量是否合格的条件。
其中,根据各文字区域的区域信息确定待处理图像的质量,可以有多种确定方式,例如,将所有文字区域的质量得分中的中位数,作为待处理图像的目标质量得分以表征待处理图像的质量,采用具有代表性的质量得分中位数,可以放宽对待处理图像的质量要求,并提高处理速度,降低了时间成本;也可以所有文字区域的质量得分中的最小值,作为待处理图像的目标质量得分,提高了对待处理图像的质量要求,加大了图像质量审核力度,确定了可以对图像中的文字进行精准识别;还可以根据各文字区域的质量得分确定光源的位置,根据距光源位置较远的文字区域的质量得分,确定待处理图像的目标质量得分,减少因误差的可能,提高目标质量得分的准确性。
在根据各文字区域的区域信息确定待处理图像的目标质量得分之后,即确定待处理图像的质量之后,根据目标质量得分和预设质量条件确定待处理图像的质量检测结果,待处理图像的目标质量得分越高,表示待处理图像越清晰,当待处理图像的目标质量得分处于一定质量得分范围内,或者待处理图像的目标质量得分高于一定阈值时,表示待处理图像的质量较好,为可用的清晰图像,即目标质量得分满足预设质量条件,确定待处理图像的质量检测结果通过质量检测;当待处理图像的目标质量得分未处于一定质量得分范围内,或者待处理图像的目标质量得分低于一定阈值时,表示待处理图像的质量较差,为不可用的模糊图像,即目标质量得分未满足预设质量条件,确定待处理图像的质量检测结果为未通过质量检测。
本实施例中,通过获取待处理图像,并采用文字定位模型对待处理图像中的文字进行定位,以确定待处理图像中的文字区域,然后对待处理图像中的文字区域进行索贝尔算子卷积处理,获取文字区域的目标卷积矩阵,再根据目标卷积矩阵中像素的像素值和像素值的分布区间,获取文字区域的区域信息,最后根据文字区域的区域信息和预设质量条件确定待处理图像的质量检测结果;通过对各文字区域进行索贝尔算子卷积处理,再对sobel结果中各像素值处于不同区间的像素数量进行加权求和,使变化明显的文字区域边缘在质量得分中得以强化,并弱化了变化度较小的背景中的干扰边缘,能够减少图像背景信息的干扰,提高了质量检测算法的精度,进而提高了图像质量的准确度。
在一实施例中,如图3所示,步骤S20中,即对待处理图像中的文字区域进行索贝尔算子卷积处理,获取文字区域的目标卷积矩阵,具体包括如下步骤:
S21:根据各文字区域的位置对待处理图像进行处理,以获得多个文字区域对应的单通道图像。
若待处理图像中文字区域的数量大于或者等于预设数量,表示待处理图像符合设定的文字区域数量需求,首先,需要对根据各文字区域的位置对待处理图像进行处理,以获得多个文字区域对应的单通道图像。
例如,在确定待处理图像中的多个文字区域之后,按照各文字区域的高亮文本框将待处理图像划分为各文字区域对应的图像。然后将各文字区域对应的图像转化为单通道图像(如灰度图),以便后续对各文字区域对应的图像进行图像质量检测。
S22:对各文字区域对应的单通道图像进行索贝尔算子卷积处理,获得文字区域对应的单通道图像在多个方向上的索贝尔算子卷积矩阵。
在获得多个文字区域对应的单通道图像之后,对各文字区域对应的单通道图像进行索贝尔算子(sobel)卷积处理,获得文字区域对应的单通道图像在多个方向上的索贝尔算子卷积矩阵。
具体地,对各文字区域对应的单通道图像分别在x方向、y方向上进行sobel算子进行卷积,并把各文字区域对应的单通道图像中边缘像素的卷积结果全置为0,以获得各文字区域对应的单通道图像在x、y方向上的索贝尔算子卷积矩阵。
其中,x方向卷积核为:
其中,y方向卷积核为:
在对各文字区域对应的单通道图像进行索贝尔算子卷积处理之后,获得文字区域对应的单通道图像在x方向上的索贝尔算子卷积矩阵,以及文字区域对应的单通道图像在x方向上的索贝尔算子卷积矩阵。
S23:对多个方向上的索贝尔算子卷积数据进行均方根计算,获得文字区域的目标卷积矩阵。
在获得文字区域对应的单通道图像在多个方向上的索贝尔算子卷积矩阵之后,对多个方向上的索贝尔算子卷积数据进行均方根计算,获得文字区域的目标卷积矩阵。
例如,获得各文字区域对应的单通道图像在x、y方向上的索贝尔算子卷积矩阵之后,对x、y方向上的索贝尔算子卷积数据进行均方根计算,获得文字区域的目标卷积矩阵,其中,各文字区域的目标卷积矩阵的计算公式为:
其中,res_sobel为文字区域的目标卷积矩阵,res_sobel_h为文字区域对应的单通道图像在x方向上的索贝尔算子卷积矩阵,res_sobel_v为文字区域对应的单通道图像在x方向上的索贝尔算子卷积矩阵。
其中,文字区域的目标卷积矩阵res-sobel是一个由各像素组成的矩阵,每一像素对应一个数值。
其中,由于sobel算子必须处理浮点型矩阵,因此,在对各文字区域对应的单通道图像进行索贝尔算子(sobel)卷积处理之前,为便于对各文字区域对应的单通道图像进行计算,需要将各文字区域对应的单通道图像中的像素取值区间,从[0,255]压缩至[0,1],即把各文字区域对应的单通道图像中所有像素值除以255,以通过除以255可以把单通道图像中的整型数值转换为浮点型,便于处理。在把所有像素除以255后,更方便后续统计res-sobel中各像素的数值分布情况,以便减少res-sobel的误差,进而降低各分布区间的边界。
本实施例中,根据各文字区域的位置对待处理图像进行处理,以获得多个文字区域对应的单通道图像,然后对各文字区域对应的单通道图像进行索贝尔算子卷积处理,获得文字区域对应的单通道图像在多个方向上的索贝尔算子卷积矩阵,再将多个方向上的索贝尔算子卷积数据进行加权求和,获得文字区域的目标卷积矩阵,最后根据目标卷积矩阵中各像素的像素值和分布区间,对目标卷积矩阵中的各像素进行加权求和,以确定文字区域的区域信息,细化了对各文字区域进行质量检测,以确定各文字区域的区域信息的具体步骤,为后续的计算提供了基础。
在一实施例中,如图4所示,步骤S21中,即根据各文字区域的位置对待处理图像进行处理,以获得多个文字区域对应的单通道图像,具体包括如下步骤:
S211:确定待处理图像是否为多通道图像;
S212:若待处理图像为多通道图像,则将待处理图像转换为单通道的待处理图像;
S213:按照各文字区域的位置,将单通道的待处理图像进行划分,以获得各文字区域对应的单通道图像。
由于大多图像均为都为彩色图像,即多通道图像,彩色图像由R、G、B等通道组成,每个通道是一个数值矩阵,为了后面算法处理,需要把多通道的彩色图像转为单通道的图像。
因此,在根据各文字区域的位置对待处理图像进行处理时,需要确定待处理图像是否为多通道图像,即确定文字区域对应的图像是否为多通道图像,若待处理图像为单通道图像,即文字区域对应的图像为单通道图像,则表示该图像可以直接处理,无需进行转换。若确定待处理图像为多通道图像,则需要将待处理图像转换为单通道的待处理图像,以便后续进行处理。
在将待处理图像转换为单通道的待处理图像之后,按照各文字区域的位置,将单通道的待处理图像进行划分,以获得各文字区域对应的单通道图像。
本实施例中,通过确定待处理图像是否为多通道图像,若待处理图像为多通道图像,则将待处理图像转换为单通道的待处理图像,按照各文字区域的位置,将单通道的待处理图像进行划分,以获得各文字区域对应的单通道图像,明确了根据各文字区域的位置对待处理图像进行处理,以获得多个文字区域对应的单通道图像的具体过程,将多通道图像转化为单通道图像,以便后续进行图像质量检测,加快了后续进行图像质量检测的速度,提高了图像质量检测的效率。
在一实施例中,如图5所示,在确定待处理图像中的文字区域之后,步骤S20之前,即对待处理图像中的文字区域进行索贝尔算子卷积处理之前,具体包括如下步骤:
S11:确定待处理图像中文字区域的数量是否小于预设数量。
在确定待处理图像中的文字区域之后,对待处理图像中的文字区域进行索贝尔算子卷积处理之前,需要确定待处理图像中文字区域的数量是否小于预设数量。由于文字定位模型就不会对模糊图像内的文字区域进行定位,若待处理图像为模糊图像,则文字定位模型定位到的文字区域较少或几乎没有。因此,为减少后续计算量,减少进行文字区域处理所导致的时间成本,需要先对确定待处理图像中文字区域的数量是否小于预设数量,以根据判断结果确定是否需要读待处理图像进行进一步质量检测。
S12:若待处理图像中文字区域的数量大于或者等于预设数量,则对待处理图像中的文字区域进行索贝尔算子卷积处理。
在确定待处理图像中文字区域的数量是否小于预设数量之后,若待处理图像中文字区域的数量大于或者等于预设数量,表示待处理图像符合设定的文字区域数量需求,该待处理图像难可以进行文字识别,待处理图像的质量合格,则确定待处理图像为清晰图像。此时,需要对待处理图像中的文字区域进行索贝尔算子卷积处理,以确定各文字区域的区域信息。
S13:若待处理图像中文字区域的数量小于所述预设数量,则确定待处理图像的质量检测结果为未通过质量检测。
若待处理图像中文字区域的数量小于预设数量,表示待处理图像不符合设定的文字区域数量需求,该待处理图像难以进行文字识别,待处理图像的质量较差,则确定待处理图像为模糊图像,确定待处理图像的质量检测结果为未通过质量检测。通过该方法可对非常模糊的图片进行过滤,减少后续计算步骤,加快图像质量检测速度。
其中,预设数量需要根据待处理图像的类型确定,即根据待处理图像所属的业务场景设定,不同的业务场景具有不同的文字区域设定数量,即不同场景中,预设数量的值不同。
例如,若待处理图像为发票图像,在进行发票OCR识别场景中,对发票图像上的所有分开的文字区域进行定位,在确定发票中的各文字区域之后,若发票图像中文字区域的数量小于10(即发票OCR识别场景的预设数量为10),则确定该发票图像不符合设定的文字区域数量需求,无法对该发票图像进行文字识别,该发票图像质量较差,则确定发票为模糊发票,判断该发票图像不可用,需要上传新的发票图像。若待处理图像为身份证图像,在进行身份证OCR识别场景中,对身份证图像上的所有分开的文字区域进行定位,由于身份证中的文字较少,所有身份证图像对应的文字数量较少,其中,身份证正面图像的预设数量可以是4,;在确定身份证正面图像中的各文字区域之后,若身份证正面图像中文字区域的数量小于4,则确定该身份证正面图像不符合设定的文字区域数量需求,无法对该身份证正面图像进行文字识别,该身份证正面图像质量较差,则确定身份证正面为模糊发票,判断该身份证正面图像不可用,需要上传新的身份证正面图像。
本实施例中,待处理图像所属的业务场景为发票OCR识别场景、身份证OCR识别场景,仅为示例性说明在,在其他实施例中,待处理图像所属的业务场景还可以是其他场景,在此不再赘述。
本实施例中,发票OCR识别场景中的预设数量为10,身份证OCR识别场景中的预设数量为4仅为示例性说明,在其他实施例中,预设数量还可以是其他,在此不再赘述。
本实施例中,采用索贝尔算子对待处理图像中的文字区域进行卷积处理之前,通过确定待处理图像中文字区域的数量是否小于预设数量,若待处理图像中文字区域的数量大于或者等于预设数量,则对待处理图像中的文字区域进行采用索贝尔算子卷积处理;若待处理图像中文字区域的数量小于所述预设数量,则确定待处理图像的质量检测结果为未通过质量检测,通过对文字区域的数量进行判断,可对待处理图像的图像质量进行初步判断,减少了后续计算步骤,加快图像质量检测速度。
在一实施例中,如图6所示,步骤S40中,即根据各文字区域的区域信息和预设质量条件确定待处理图像的质量检测结果,具体包括如下步骤:
S41:根据文字区域的区域信息、各文字区域与光源的欧式距离确定待处理图像的质量。
还可以根据各文字区域的区域信息确定光源的位置,然后确定各文字区域与光源的欧式距离,则进而确定根据文字区域的区域信息、各文字区域与光源的欧式距离确定待处理图像的目标质量得分,以采用目标质量得分表征待处理图像的质量。
例如,可以确定与光源的欧式距离最大的文字区域,作为目标区域,即距光源最远的文字区域为目标区域,将该目标区域的质量得分作为待处理图像的目标质量得分;也可以选择与光源的欧式距离最大的多个文字区域,作为多个目标文字区域,然后将多个目标文字区域的质量得分中位数,或者多个目标文字区域的质量得分平均数,作为待处理图像的目标质量得分。
可以理解的是,文字区域与光源的欧式距离越远,则文字区域的质量得分越低,根据各文字区域与光源的欧式距离确定待处理图像的目标质量得分,可以减少部分文字区域的质量得分计算错误的可能,进而减少误差,提高目标质量得分的准确性,即提高了待处理图像的质量的准确性。
在其他实施例中,还将所有文字区域的区域信息中的中位数,作为待处理图像的目标质量得分,以表征待处理图像的质量。在确定各文字区域的质量得分之后,可以将所有文字区域的质量得分中的中位数,作为待处理图像的目标质量得分,采用具有代表性的质量得分中位数,可以放宽对待处理图像的质量要求,并提高处理速度,降低了时间成本。
S42:根据待处理图像的质量和预设质量条件确定待处理图像的质量检测结果。
在根据文字区域的区域信息、各文字区域与光源的欧式距离确定待处理图像的质量之后,需要获取预设质量条件,然后确定待处理图像的质量是否满足预设质量条件,若满足,则确定待处理图像通过质量检测,即质量检测结果为通过质量检测;若不满足,则确定待处理图像未通过质量检测,即质量检测结果为未通过质量检测。
本实施例中,通过将所有文字区域的区域信息中的中位数,作为待处理图像的目标质量得分;或者,根据文字区域的区域信息、各文字区域与光源的欧式距离确定待处理图像的质量,再根据待处理图像的质量和预设质量条件确定待处理图像的质量检测结果,明确了根据各文字区域的区域信息和预设质量条件确定待处理图像的质量检测结果的步骤,提高待处理图像的质量的准确性,进而提高了质量检测结果的准确性。
在一实施例中,如图7所示,步骤S41中,即根据文字区域的区域信息、各文字区域与光源的欧式距离确定待处理图像的质量,具体包括如下步骤:
S411:根据各文字区域的区域信息确定光源的位置。
本实施例中中,以区域信息为质量得分为例进行说明,在获得各文字区域的质量得分之后,根据各文字区域的质量得分,构建所有文字区域形成的光源矩阵,以确定光源的位置,一般地,文字区域与光源的距离越远,则文字区域的质量得分越低。该步骤可以根据相关软件计算获得。
S412:根据各文字区域的位置与光源的位置,确定各文字区域与光源的欧式距离。
在根据各文字区域的区域信息确定光源的位置之后,根据各文字区域的位置与光源的位置,确定各文字区域与光源的欧式距离。
S413:将与光源的欧式距离小于预设距离的文字区域作为目标文字区域。
在确定各文字区域与光源的欧式距离之后,确定与光源的欧式距离小于预设距离的文字区域,作为目标文字区域,以获得多个目标文字区域,然后
S414:根据多个目标文字区域的区域信息确定待处理图像的质量。
在获得多个目标文字区域之后,可以将多个目标文字区域的质量得分的中位数作为待处理图像的目标质量得分,降低待处理图像的目标质量得分,确定待处理图像的质量确定结果。也可以将多个目标文字区域的质量得分的最大值作为待处理图像的目标质量得分,提高质量检测门槛。
本实施例中,通过确定各文字区域的区域信息确定光源的位置,然后根据各文字区域的位置与光源的位置,确定各文字区域与光源的欧式距离,再将与光源的欧式距离小于预设距离的文字区域作为目标文字区域,最后根据多个所述目标文字区域的区域信息确定所述待处理图像的质量,明确了根据文字区域的区域信息、各文字区域与光源的欧式距离确定待处理图像的质量的具体过程,可以减少因部分文字区域的区域信息出现误差导致的目标质量得分不准确的情况。
在一实施例中,如图8所示,步骤S50中,即根据待处理图像的质量和预设质量条件确定待处理图像的质量检测结果,具体包括如下步骤:
S421:根据待处理图像的类型确定预设质量条件。
在获取待处理图像之后,需要根据待处理图像的类型确定评估待处理图像的质量的预设质量条件。本实施例中,以质量评分阈值表征预设质量条件,直观便捷,减少质量检测过程信息处理复杂度,进而提高质量检测速度。
不同类型的图像具有不同的质量评分阈值。例如,若待处理图像为发票图像,则待处理图像的质量评分阈值为发票图像对应的质量评分阈值;若待处理图像为身份证图像,则待处理图像的质量评分阈值为身份证图像对应的质量评分阈值。
其中,质量评分阈值为预先确定的评分阈值,可以人为设定的经验值值,也可以根据同类型图像的质量得分确定。
S422:确定待处理图像的质量是否满足预设质量条件。
在确定待处理图像的质量之后,需要确定待处理图像的质量是否满预设质量条件。当目标质量得分表征处理图像的质量,并用质量评分阈值表征预设质量条件时,即确定待处理图像的目标质量得分是否大于质量评分阈值,以根据目标质量得分与质量评分阈值的比较情况,确定待处理图像是否满足预设质量条件。
S423:若处理图像的质量满足预设质量条件,则确定待处理图像的质量检测结果为通过质量检测。
在确定待处理图像的目标质量得分是否大于质量评分阈值之后,若待处理图像的目标质量得分大于质量评分阈值,表示待处理图像的目标质量得分较高,待处理图像的质量较好,则确定待处理图像为清晰图像,待处理图像可用,待处理图像满足预设质量条件,则确定待处理图像的质量检测结果为通过质量检测。
S424:若处理图像的质量满足预设质量条件,则确定待处理图像的质量检测结果为未通过质量检测。
在确定待处理图像的目标质量得分是否大于质量评分阈值之后,若待处理图像的目标质量得分小于或者等于质量评分阈值,表示待处理图像的目标质量得分较低,待处理图像的质量较差,则确定待处理图像为清晰图像,待处理图像不可用,待处理图像不满足预设质量条件,则确定待处理图像未通过质量检测,需要重传上传新的图像。
本实施例中,根据待处理图像的类型确定预设质量条件,确定待处理图像的质量是否满足预设质量条件,若处理图像的质量满足预设质量条件,则确定待处理图像的质量检测结果为通过质量检测;若处理图像的质量满足预设质量条件,则确定待处理图像的质量检测结果为未通过质量检测,明确了根据待处理图像的质量和预设质量条件确定待处理图像的质量检测结果的具体过程,为不同类型的图像设定不同的预设质量条件,进而根据对应的预设质量条件确定图像质量是否满足要求,进一步提高了图像的质量检测结果的准确性。
在一实施例中,如图9所示,在根据待处理图像的类型确定待处理图像的预设质量条件之前,需要确定不同类型的待处理图像的质量评分阈值,以通过质量评分阈值表征预设质量条件,其中,待处理图像的质量评分阈值通过如下方式确定:
S01:获取多个具有不同质量标签的历史图像。
获取多个相同类型的历史图像,对多个相同类型的历史图像进行人工标注,以为多个相同类型的历史图像打上质量标签,从而获得多个具有不同质量标签的历史图像。其中,历史图像的类型与待处理图像的类型相同,历史图像上的质量标签包括清晰图像和模糊图像。
S02:根据各历史图像中文字区域的质量得分,确定各历史图像的目标质量得分。
在获取多个具有不同质量标签的历史图像之后,依照前文所述的处理过程,确定各历史图像中文字区域的质量得分,进而确定各历史图像的目标质量得分。
S03:根据各历史图像的目标质量得分与预设值的大小,确定各历史图像在多个不同预设值下的图像质量。
在获取各历史图像的目标质量得分之后,设置多个预设值,将各历史图像的目标质量得分与各预设值进行逐一比较,以确定各历史图像在多个不同预设值下的图像质量。其中,图像质量包括清晰和模糊。
例如,从多个预设值中,先选择一个预设值,确定各历史图像的目标质量得分与预设值的大小,若历史图像的目标质量得分小于或者等于预设值,则确定该历史图像的质量为模糊;若历史图像的目标质量得分大于预设值,则确定该历史图像的质量为清晰,依次选择各预设值,重复上述过程,确定各历史图像在各设值下的图像质量。
其中,多个不同预设值可以是根据历史图像的数量确定的多个连续数值。例如,历史图像的数量为500,则预设值从0开始,渐进增加0.1,一直增加到500,即0,0.1,0.2,0.3,…499.8,499.9,500,一共5001个数值,分别把这5001个数值当作预设值。
本实施例中,上述预设值的取值仅为示例性说明,在其他实施例中,预设值还可以是其他连续数值。
S04:根据各历史图像在不同预设值下的图像质量与质量标签的匹配情况,在多个不同预设值中确定质量评分阈值。
在确定各历史图像在各预设值下的图像质量之后,根据各历史图像在预设值下的图像质量与质量标签的匹配情况,在多个不同预设值中确定质量评分阈值。
具体地,确定各历史图像在每个预设值下的图像质量,与各历史图像的质量标签的匹配数量,从而获得各历史图像在不同预设值下的图像质量与质量标签的匹配数量,选择匹配数量最多的一个预设值,作为质量评分阈值。
本实施例中,通过获取多个具有不同质量标签的历史图像,质量标签包括清晰图像和模糊图像,其中,历史图像的类型与待处理图像的类型相,然后根据各历史图像中文字区域的质量得分,确定各历史图像的目标质量得分,再根据各历史图像的目标质量得分与预设值的大小,确定各历史图像在多个不同预设值下的图像质量,其中,图像质量包括清晰和模糊,最后根据各历史图像在不同预设值下的图像质量与质量标签的匹配情况,在多个不同预设值中确定质量评分阈值,明确了待处理图像的质量评分阈值的具体确定过程,通过上述的图像质量检测方法确定各历史图像的质量评分,进而根据各历史图像的图像质量与质量标签的匹配情况,在多个不同预设值中确定质量评分阈值,提高了质量评分阈值的准确性,进而提高后续根据质量评分阈值确定的图像质量的准确性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种图像质量检测装置,该图像质量检测装置与上述实施例中图像质量检测方法一一对应。如图10所示,该图像质量检测装置包括定位模块101、处理模块102、计算模块103和确定模块104。各功能模块详细说明如下:
定位模块101,用于获取待处理图像,并采用文字定位模型对所述待处理图像中的文字进行定位,以确定所述待处理图像中的文字区域;
处理模块102,用于对所述待处理图像中的文字区域进行索贝尔算子卷积处理,获取所述文字区域的目标卷积矩阵;
计算模块103,用于根据所述目标卷积矩阵中像素的像素值和所述像素值的分布区间,获取所述文字区域的区域信息;
确定模块104,用于根据各所述文字区域的区域信息和预设质量条件确定所述待处理图像的质量检测结果。
进一步地,所述处理模块102具体用于:
根据各所述文字区域的位置对所述待处理图像进行处理,以获得多个所述文字区域对应的单通道图像;
对各所述文字区域对应的单通道图像进行索贝尔算子卷积处理,获得所述文字区域对应的单通道图像在多个方向上的索贝尔算子卷积矩阵;
对所述多个方向上的索贝尔算子卷积数据进行均方根计算,获得所述文字区域的目标卷积矩阵。
进一步地,所述处理模块102具体还用于:
确定所述待处理图像是否为多通道图像;
若所述待处理图像为所述多通道图像,则将所述待处理图像转换为单通道的待处理图像;
按照各所述文字区域的位置,将所述单通道的待处理图像进行划分,以获得各所述文字区域对应的单通道图像。
进一步地,所述确定模块104具体用于:
根据所述文字区域的区域信息、各所述文字区域与光源的欧式距离确定所述待处理图像的质量;
根据所述待处理图像的质量和所述预设质量条件确定所述待处理图像的质量检测结果。
进一步地,所述确定模块104具体还用于:
根据各所述文字区域的区域信息确定光源的位置;
根据各所述文字区域的位置与所述光源的位置,确定各所述文字区域与所述光源的欧式距离;
将与所述光源的欧式距离小于预设距离的所述文字区域作为目标文字区域;
根据多个所述目标文字区域的区域信息确定所述待处理图像的质量。
进一步地,所述确定模块104具体还用于:
根据所述待处理图像的类型确定所述预设质量条件;
确定所述待处理图像的质量是否满足所述预设质量条件;
若所述待处理图像的质量满足所述预设质量条件,则确定所述待处理图像的质量检测结果为通过质量检测;
若所述待处理图像的质量不满足所述预设质量条件,则确定所述待处理图像的质量检测结果为未通过质量检测。
进一步地,所述采用索贝尔算子对所述待处理图像中的文字区域进行处理之前,所述确定模块104具体用于:
确定所述待处理图像中文字区域的数量是否小于预设数量;
若所述待处理图像中文字区域的数量大于或者等于所述预设数量,则采用索贝尔算子对所述待处理图像中的文字区域进行处理;
若所述待处理图像中文字区域的数量小于所述预设数量,则确定所述待处理图像的质量检测结果为未通过质量检测。
关于图像质量检测装置的具体限定可以参见上文中对于图像质量检测方法的限定,在此不再赘述。上述图像质量检测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图11所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储待处理图像、文字区域、质量得分和质量评分阈值等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图像质量检测方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取待处理图像,并采用文字定位模型对所述待处理图像中的文字进行定位,以确定所述待处理图像中的文字区域;
对所述待处理图像中的文字区域进行索贝尔算子卷积处理,获取所述文字区域的目标卷积矩阵;
根据所述目标卷积矩阵中像素的像素值和所述像素值的分布区间,获取所述文字区域的区域信息;
根据各所述文字区域的区域信息和预设质量条件确定所述待处理图像的质量检测结果。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取待处理图像,并采用文字定位模型对所述待处理图像中的文字进行定位,以确定所述待处理图像中的文字区域;
对所述待处理图像中的文字区域进行索贝尔算子卷积处理,获取所述文字区域的目标卷积矩阵;
根据所述目标卷积矩阵中像素的像素值和所述像素值的分布区间,获取所述文字区域的区域信息;
根据各所述文字区域的区域信息和预设质量条件确定所述待处理图像的质量检测结果。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。