CN110288560B - 一种图像模糊检测方法及装置 - Google Patents
一种图像模糊检测方法及装置 Download PDFInfo
- Publication number
- CN110288560B CN110288560B CN201810218556.6A CN201810218556A CN110288560B CN 110288560 B CN110288560 B CN 110288560B CN 201810218556 A CN201810218556 A CN 201810218556A CN 110288560 B CN110288560 B CN 110288560B
- Authority
- CN
- China
- Prior art keywords
- image
- gradient
- value
- power
- calculating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30168—Image quality inspection
Landscapes
- Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本申请提供一种图像模糊检测方法、装置及计算机可读存储介质和电子设备。其中,所述方法包括:获取待检测图像的灰度图像;计算所述灰度图像对应的图像梯度;基于积分图算法,计算出所述图像梯度的峰度值;根据所述峰度值确定所述待检测图像的模糊度。应用本申请,可以提升图像模糊检测的效率。
Description
技术领域
本申请涉及图像处理技术领域,尤其涉及一种图像模糊检测方法、装置及计算机存储介质和电子设备。
背景技术
在相关技术中,图像模糊检测通常用于检测图像的模糊程度,进而可以判断图像是否清晰,是否可以被使用等。一般的图像模糊检测可以基于傅里叶变换和卷积神经网络等做模糊图像分类;但是这种做法涉及到的计算量较大,因此影响了图像模糊检测的效率,检测实时性不高。
发明内容
有鉴于此,本申请提供一种图像模糊检测方法、装置及计算机存储介质和电子设备,用于解决上述的图像模糊检测实时性不高的问题。
具体地,本申请是通过如下技术方案实现的:
本申请实施例提供了一种图像模糊检测方法,所述方法包括:
获取待检测图像的灰度图像;
计算所述灰度图像对应的图像梯度;
基于积分图算法,计算所述图像梯度的峰度值;
根据所述峰度值确定所述待检测图像的模糊度。
可选的,述灰度图像对应的图像梯度之前,所述方法还包括:
对所述灰度图像进行尺度归一化处理;
其中,所述尺度归一化处理,具体包括:
将所述灰度图像的长和宽调整为预设的长和宽。
可选的,所述基于积分图算法,计算所述图像梯度的峰度值,具体包括:
基于至少梯度一次幂的积分图算法,计算所述图像梯度的峰度值。
可选的,所述基于至少梯度一次幂的积分图算法,计算所述图像梯度的峰度值,具体包括:
对所述图像梯度进行至少梯度一次幂的积分图运算;
对所述积分图运算后的图像梯度进行滑窗处理;
计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值。
可选的,所述至少梯度一次幂的积分图算法,包括:
梯度一次幂、二次幂、三次幂和四次幂的积分图算法。
可选的,所述计算所述滑窗滑动每个步长对应的子图像梯度的峰度值,具体包括:
计算子图像梯度的第一峰度值;
基于映射关系,将所述第一峰度值映射为第二峰度值;
将所述第二峰度值确定为所述子图像梯度的峰度值。
可选的,所述映射关系为对数关系;
所述基于映射关系,将所述第一峰度值映射为第二峰度值,具体包括:
对所述第一峰度值进行对数运算,得到第二峰度值。
可选的,在所述计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值之前,所述方法还包括:
计算所述滑窗滑动时每个步长对应的子图像梯度内每一个像素点对应的梯度值之和;
在所述梯度值之和不小于阈值时,确定所述子图像梯度为非空白背景区域;
所述计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值,具体包括:
计算所述滑窗滑动时每个非空白背景区域的峰度值。
可选的,在所述计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值之前,所述方法还包括:
对所述子图像梯度内像素点进行梯度值归一化处理;
所述梯度值归一化处理,包括:
计算所述子图像梯度内所有像素点的梯度值之和;
将所述子图像梯度内每个像素点的梯度值除以所述梯度值之和。
可选的,在所述峰度值为多个时,所述根据所述峰度值确定所述待检测图像的模糊度,具体包括:
对所述多个峰度值进行排序;
选取前预设数量或者预设比例的峰度值,计算均值;
将所述均值确定为所述待检测图像的模糊度。
可选的,所述方法还包括:
将所述模糊度与阈值进行比较;
在所述模糊度不超过阈值时,确定所述待检测图像为清晰;
在所述模糊度超过阈值时,确定所述待检测图像为不清晰。
可选的,所述阈值为所述待检测图像的图像类型对应的阈值。
本申请实施例提供了一种图像模糊检测装置,所述装置包括:
获取单元,获取待检测图像的灰度图像;
第一计算单元,计算所述灰度图像对应的图像梯度;
第二计算单元,基于积分图算法,计算出所述图像梯度的峰度值;
确定单元,根据所述峰度值确定所述待检测图像的模糊度。
本申请实施例提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述任一项所述的图像模糊检测方法。
本申请实施例提供了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
所述处理器被配置为上述任一项所述的图像模糊检测方法。
通过本申请实施例,针对待检测图像,首先可以将待检测图像转换为灰度图像,然后根据所述灰度图像计算出对应的图像梯度,然后利用积分图算法加速计算图像梯度的峰度值,最后根据计算出的峰度值确定所述待检测图像的模糊度。由于利用了积分图算法(例如梯度一次幂、二次幂、三次幂和四次幂的积分图算法)加快了图峰度值计算速度,提高了图像模糊检测的运算效率,从而降低模糊检测所需的时间,提升了模糊检测的效率。
附图说明
图1是本申请一示例性实施例示出的一种图像模糊检测方法的流程图;
图2是本申请一示例性实施例示出的一个n*m大小的图像示意图;
图3是本申请一示例性实施例示出的子图像梯度的示意图;
图4a-4b是本申请一示例性实施例示出的尺度归一化处理前后的两个图片的峰度值分布示意图;
图5a-5b是本申请一示例性实施例示出的背景过滤前后的两个图片的峰度值分布示意图;
图6是本申请一示例性实施例示出的一种图像模糊检测装置的硬件结构图;
图7是本申请一示例性实施例示出的一种图像模糊检测装置的模块示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
如前所述,一般的图像模糊检测可以基于傅里叶变换和卷积神经网络等做模糊图像分类;这种计算方式,需要对每个滑窗区域内图像进行多次重复求和操作,因此这种做法涉及到的计算量较大,因此影响了图像模糊检测的效率,检测实时性不高。
为此,如图1是本申请一示例性实施例示出的一种图像模糊检测的方法流程图,需要说明的是,所述方法可以应用在图像模糊检测的服务器(以下简称为服务器)中,例如服务器可以检测用户上传的图像是否清晰;当然,在用户终端计算能力足够的情况下,所述方法也可以应用在用户终端,从而无需服务器介入,仅由用户终端本地进行模糊检测即可。以下通过服务器侧进行描述,但并不意味着只能由服务器实现,该方法具体可以包括如下步骤:
步骤110:获取待检测图像的灰度图像。
在一实施例中,随着拍摄技术的发展,如今用户拍摄出的图像色彩越来越多,越来越鲜艳。因此,所述待检测图像通常都是彩色图像。为了统一图像中的颜色,以及方便后续处理,这里服务器需要将待检测图像的像素点的色彩转换成灰度值。
一般的,所述每一种颜色都可以通过RGB色彩模式,即可以使用R(red,红)、G(green,绿)、B(blue,蓝)三个分量来表示。在计算机中,RGB的大小可以是指亮度,通常可以使用整数表示,R、G、B各可以有256级的亮度,一般采用数字0、1、2、3……、255,即R、G、B的范围值各为0~255。如此,利用RGB色彩模式可以展示256*256*256=16777216种不同的颜色。
通常,在RGB色彩模式中,当R=G=B时,彩色可以表示为一种灰度颜色。通常,可以将R=G=B的值称之为灰度值,灰度值的范围为0~255。因此,对于原始图像首先需要将原始图像中的RGB值转换为灰度值,通过灰度值的转换可以通过如下方式实现:
在一实施例中,可以采用分量法:
将彩色图像中的RGB三分量,任意选取一个分量值作为灰度值。也就是说,用户可以根据实际应用的需要,仅选取R分量的值作为灰度值;也可以仅选取G分量的值作为灰度值;还可以仅选取B分量的值作为灰度值。
在一实施例中,可以采用最大值法:
将彩色图像中的RGB三分量中的最大值作为灰度值。计算灰度值的公式可以为:max(R,G,B)。例如,某一个RGB三分量为(R=122,G=90,B=200),则可以将最大值B=200作为灰度值,即灰度值为200。
在一实施例中,可以采用平均值法:
将彩色图像中的RGB三分量求和后计算一个平均值,进而将该平均值作为灰度值。这样,计算灰度值的公式可以为:(R+G+B)/3。
在一实施例中,可以采用加权平均值:
该实现方式中,可以预先给每一种分量设置一个权值,计算时对RGB三分量进行加权平均,将加权平均值作为灰度值。一般的,设置的权值可以根据实际应用需求,例如人眼对绿色的敏感最高,对蓝色敏感最低,则可以对G设置一个高权值如0.59,对B设置一个低权值如0.11,对R设置一个中间权值如0.3;这样,计算灰度值的公式可以为:(0.3R+0.59G+0.11B)/3。
服务器将待检测图像的所有像素点的彩色值都转换成灰度值后,就可以得到灰度图像,也就是说所述灰度图像中每个像素点可以用灰度值表示
步骤120:计算所述灰度图像对应的图像梯度。
其中,所述图像梯度可以是梯度的模构成的图像。图像的梯度可以是指梯度的模(后续简称为梯度值)。梯度值通常可以反映图像中内容差异的程度。
一般的,将图像看作一个函数f(x,y)时,可以将任意点(x,y)的梯度视为一个具有大小和方向的矢量。假设Gx和Gy分别表示图像在x方向(横坐标轴方向)和y方向(纵坐标轴方向)的梯度,则梯度的矢量可以如下公式1所示:
因此,对于这样的函数图像而言,图像的梯度可以相当于对二位离散函数求梯度,具体可以如下公式2所示:
梯度的方向通常是函数f(x,y)变化最快的方向,当图像中存在边缘,或者差异较大的部分时,通常表现为灰度值变化较大,相应的梯度值也会较大;反正,当图像中存在比较平滑的部分时,通常表现为灰度值变化较小,相应的梯度值也会较小。
以下如图2所示的一个n*m大小的图像为例加以说明;其中:
(a)所示的:一个长n,宽m的图像;
(b)所示的:I1={image(0,0),image(0,m),image(n-1,0),image(n-1,m)}构成的区域;
(c)所示的:I2={image(1,0),image(1,m),image(n,0),image(n,m)}构成的区域;
(d)所示的:I3={image(0,0),image(0,m-1),image(n,0),image(n,m-1)}构成的区域;
(e)所示的:I4={image(0,1),image(0,m),image(n,1),image(n,m)}构成的区域;
服务器基于上述梯度计算的公式2,可以计算出该图像的图像梯度,即Gx=I4-I3;Gy=I2-I1;G=(Gx+Gy)/2。
步骤130:基于积分图算法,计算出所述图像梯度的峰度值。
其中,所述积分图算法可以加速图像梯度的峰度值的计算,提升峰度值计算速度,从而提升检测效率。
在一实施例中,所述步骤130,具体可以包括:
基于至少梯度一次幂的积分图算法,计算出所述图像梯度的峰度值。
该实施例中,对于计算出的图像梯度,服务器可以基于至少梯度一次幂的积分图算法,计算出所述图像梯度的峰度值。在一实施例中,具体可以包括:
A1:对所述图像梯度进行至少梯度一次幂的积分图运算;
A2:对所述积分图运算后的图像梯度进行滑窗处理;
A3:计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值。
在一实施例中,所述至少梯度一次幂的积分图算法,可以包括梯度一次幂、二次幂、三次幂和四次幂的积分图算法。即,所述对所述图像梯度进行至少一次幂的积分图运算,具体可以包括:
对所述图像梯度做梯度一次幂、二次幂、三次幂和四次幂的积分图运算。对于图像梯度中的任意一像素点(i,j)的积分值,可以是指从图像左上角到这个点所构成的矩形区域内所有的点的梯度值之和,如下公式3所示:
integral(i.j)=integral(i,j-1)+integral(i-1,j)-integral(i-1,j-1)+image(i,j) 公式3
其中,integral可以表示积分图运算后的图像梯度;image可以表示积分图运算前的图像梯度。
为了便于理解,以下以A(i,j)为例,i,j用于表示像素点的位置,即位于图像横坐标的i以及纵坐标的j处;A(i,j)的积分值可以为:积分图运算后的图像梯度位于A(i,j-1)的B点的积分值,加上(i-1,j)的C点的积分值,减去(i-1,j-1)的D点的积分值,最后加上积分运算前的图像梯度的(i,j)的A点的梯度值。
在一实施例中,对所述积分图运算后的图像梯度进行滑窗处理时,滑窗大小(pitchSize)可以根据待检测图像中字符大小进行设定。例如,待检测图像中的字符为5号字体时,所述滑窗大小即可以根据5号字体时字符的长宽进行设定。
在一实施例中,假设滑窗采用步长为1在全图像中进行滑动,那么对于一个n*m大小的图像,一共可以得到(n-pitchsize+1)*(m-pitchsize+1)个滑窗区域滑动时每个步长对应的子图像梯度。例如图3所示的一个3*2的图像,该图像可以被滑窗(1*1)划分为(3-1+1)*(2-1+1)=6个子图像梯度,即S1、S2、S3、S4、S5和S6。也就是说,服务器需要分别计算这6个子图像梯度的峰度值。当然,如果步长小于滑窗长度的话,例如滑窗为5*5,步长为1时,划分出来的度子图像梯中会存在有部分重叠;重叠的部分增多,可以使得图像对应的特征点有所增加,因而检测结果的准确性也会有所提升,相应地计算量也会提高;因此,步长的设置可以根据需求灵活设置。
在一实施例中,现有技术中的计算每个子图像梯度的峰度值计算公式如下所示:
由于公式3,需要进行多次重复求和操作,因此这种求峰度值的算法需要的计算量较大,导致模糊检测的检测时间较长;无法满足实时性较高的需要,例如移动端需要的实时检测的需求。
本申请中,将公式3进行推导变形,从而得到公式4:
该公式4可以根据梯度一次幂、二次幂、三次幂、四次幂的积分图算法加速峰度值计算,
其中在公式4中,
梯度一次幂算法:
∑i,j(xi,j)=integral(xi,j)+integral(xi+pitchsize,j+pitchsize)-integral(xi,j+pitchsize)
-integral(xi+pitchsize,j)
梯度二次幂算法:
梯度三次幂算法:
梯度四次幂算法:
其中,∑i,jxi,j表示从图像梯度的像素点(i,j)至像素点(i+pitchsize,j+pitchsize)所构成区域中像素点的梯度值之和,pitchsize表示滑块大小,mean表示滑块内梯度值的平均值,sum表示滑块区域对应子图像梯度内像素点的梯度值之和。
服务器通过上述公式4就可以计算出所述滑窗滑动时每个步长对应的子图像梯度的峰度值。
在实际应用中,计算出的所述子图像梯度的峰度值可能存在过高或者过低的情况,例如如果子图像梯度内文字笔画较多时峰度值往往较高,反之,如果子图像梯度内文字笔画较少时峰度值往往较低;而峰度值过高过低都可能对模糊检测结果造成不利影响,导致结果不准确。为了解决这一问题,需要将峰度值映射到一个合理的范围内,减少子图像梯度内峰度值过高或过低对模糊检测结果造成的影响,具体地:
在一实施例中,所述步骤A3:计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值,具体可以包括:
A31:计算子图像梯度的第一峰度值;
A32:基于映射关系,将所述第一峰度值映射为第二峰度值;
A33:将所述第二峰度值确定为所述子图像梯度的峰度值。
在一实施例中,所述映射关系可以是预先设置的。也可以是根据预设的函数计算。
在一实施例中,所述映射关系为对数关系;
所述A32基于映射关系,将所述第一峰度值映射为第二峰度值,具体包括:
对所述第一峰度值进行对数运算(In运算),得到第二峰度值。
通过对第一峰度值做In运算,可以将A31计算出的第一峰度值映射到一个合理的范围内,从而减少子图像梯度内峰度值过高或过低对模糊检测结果造成的影响。
步骤140:根据所述峰度值确定所述待检测图像的模糊度。
服务器在计算出所述滑窗滑动时每个步长对应的子图像梯度的峰度值之后,可以根据这些峰度值确定所述待检测图像的模糊度。所述模糊度反映了待检测图像的模糊程度;一般的,模糊度越高,说明图像越模糊越不清晰;反之,模糊度越低,说明图像越不模糊越清晰。
在一实施例中,在计算出的峰度值仅为一个时,所述步骤140,可以包括:
服务器可以直接将该峰度值作为待检测图像的模糊度。
在一实施例中,在计算出的峰度值存在多个时,所述步骤140,可以包括:
服务器可以计算所述多个峰度值的均值,将计算出的均值作为待检测图像的模糊度。
在一实施例中,在所述峰度值为多个时,所述步骤140,可以包括:
对所述多个峰度值进行排序;
选取前预设数量或者预设比例的峰度值,计算均值;
将所述均值确定为所述待检测图像的模糊度。
其中,所述排序可以是按照从大到小进行排序;也可以从小到大进行排序;通常可以预先进行设置。
在实际应用中,可以选取峰度值最大的那部分峰度值代表图像的模糊程度。如果是按照从大到小进行排序,可以选取前预设数量或者预设比例的峰度值,计算均值;如果是按照从小到大进行排序,可以选取后预设数量或者预设比例的峰度值,计算均值。所述均值计算,就是将选取出的所有峰度值进行累加,然后除以选取出的峰度值数量。在一示例性的实施例中,可以选取前千分之一的峰度值,计算均值。当然,这仅是一个示例,实际应用中,可以是任意的预设数量或者预设比例,本申请中并不对其进行限定。
本申请实施例,提供了一种图像模糊检测方案,针对待检测图像,首先可以将待检测图像转换为灰度图像,然后根据所述灰度图像计算出对应的图像梯度,基于至少梯度一次幂的然后利用积分图算法来加速对计算图像梯度中的峰度值的计算,最后根据计算出的峰度值确定所述待检测图像的模糊度。由于利用了积分图算法(例如梯度一次幂、二次幂、三次幂和四次幂的积分图算法)加快了图峰度值计算速度,提高了图像模糊检测的运算效率,从而降低模糊检测所需的时间,提升了模糊检测的效率。
在实际应用中,服务器获取到的待检测图像通常尺寸不一、大小不同。例如手机拍摄的照片,由于手机型号多种多样,不同手机搭载的摄像头的厂家、型号、性能、拍摄模式各不相同,因此拍摄的照片尺寸大小也不尽相同,在模糊检测时,图像的尺寸差异会直接影响检测结果。为了解决这一问题,在一实施例中,在所述步骤120之前,所述方法还可以包括:
对所述灰度图像进行尺度归一化处理;
其中,所述尺度归一化处理,具体包括:
将所述灰度图像的长和宽调整为预设的长和宽。
服务器对所述灰度图像进行尺度归一化处理,可以避免或者减小不同图像之间由于尺度的差异对模糊检测结果产生的影响。
如图4a和4b所示的尺度归一化处理前后的两个图片的峰度值分布示意图。其中,一张是清晰图片A,一张是模糊图片B。在图4a和4b中可以明显看出经过尺度归一化处理前后这两张图片峰度值分布的变化,横坐标可以表示子图像梯度的峰度值,纵坐标可以表示峰度值的频率。图4a为尺度归一化处理前两个图片对应的峰度值分布情况,可以看出,虽然两张图片一张是清晰的,一张是模糊的,但峰度值分布A和B却较为接近,并没有很明显的差异;但是,图4b经过尺度归一化处理后这两个图片对应的峰度值分布A和B已经形成了非常明显的差异,根据图4b可以判断出峰度值分布A对应的图片是清晰图片,峰度值分布B对应的图片是模糊图片。如果不进行尺度归一化处理,这两个图片模糊检测结果很可能差不多,而经过尺度归一化处理后,这两个图片模糊检测结果明显不同,也就是说尺度归一化处理有效消除了图像尺度不一致所产生的对模糊检测结果的影响,从而提升了模糊检测结果的准确性。
在实际应用中,很多待检测图像会存在空白背景区域,例如文档图像一般有大量的空白背景区域,这些空白背景区域会直接影响检测结果。为了解决这一问题,在一实施例中,在所述步骤A3计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值之前,所述方法还可以包括:
计算所述滑窗滑动时每个步长对应的子图像梯度内每一个像素点对应的梯度值之和;
在所述梯度值之和小于阈值时,确定所述子图像梯度为空白背景区域;
在所述梯度值之和不小于阈值时,确定所述子图像梯度为非空白背景区域;
所述步骤A3计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值,具体包括:
计算所述滑窗滑动时每个非空白背景区域的峰度值。
服务器对所述图像梯度进行背景过滤,对于梯度值之和小于阈值(例如1)的区域可以认定为空白背景区域,舍弃不做峰度值计算,仅对剩余非空白背景区域进行峰度值计算;可以避免或者减少空白背景区域对模糊检测结果产生的影响。
如图5a和5b所示的背景过滤前后的两个图片的峰度值分布示意图。其中,一张是清晰图片A,一张是模糊图片B。在图5a和5b中可以明显看出经过背景过滤前后这两张图片峰度值分布的变化,横坐标可以表示子图像梯度的峰度值,纵坐标可以表示峰度值的频率。图5a为背景过滤前两个图片对应的峰度值分布情况,可以看出,虽然两张图片一张是清晰的,一张是模糊的,但峰度值分布A和B却较为接近,并没有很明显的差异;但是,图5b经过背景过滤后这两个图片对应的峰度值分布A和B已经形成了非常明显的差异,根据图5b可以判断出峰度值分布A对应的图片是清晰图片,峰度值分布B对应的图片是模糊图片。如果不进行背景过滤,这两个图片模糊检测结果很可能差不多,而经过背景过滤后,这两个图片模糊检测结果明显不同,也就是说背景过滤有效消除了空白背景区域对模糊检测结果的影响,从而提升了模糊检测结果的准确性。
在一个实施例中,本申请中所述的待检测图像可以包括待检测的文档图像。所述文档图像可以是指记录有文字信息的图像,例如身份证,营业执照的照片,PDF文档等。
在实际应用中,由于图像本身存在有内容分布不均匀的情况,例如文档图像中某些区域文字数量多或者笔画多;有些区域文字数量少或者笔画少;那么会导致滑块对应的子图像梯度内梯度值差异较大,从而影响影响模糊检测的结果。为了解决这一问题,在一实施例中,在所述步骤A3计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值之前,或者,在所述计算所述滑窗滑动时每个非空白背景区域的峰度值之前,所述方法还可以包括:
对所述子图像梯度内像素点进行梯度值归一化处理;
所述梯度值归一化处理,包括:
计算所述子图像梯度内所有像素点的梯度值之和;
将所述子图像梯度内每个像素点的梯度值除以所述梯度值之和。
服务器对所述子图像梯度内像素点进行梯度值归一化处理,可以避免或者减小不同子图像梯度之间由于梯度值差异对模糊检测结果产生的影响,从而提升了模糊检测结果的准确性。
在一实施例中,基于上述图1所示实施例中,还可以包括:
将所述模糊度与阈值进行比较;
在所述模糊度不超过阈值时,确定所述待检测图像为清晰;
在所述模糊度超过阈值时,确定所述待检测图像为不清晰。
在实际应用中,对于移动端摄像头捕捉到的每一帧图像,通过快速检测出模糊度并于阈值进行比较,可以及时提醒用户图像的清晰程度,用于指导用户拍摄高质量高清晰度的照片。
在一实施例中,实际应用中,不同类型的图像往往判断是否清晰的阈值是不同的。因此,本申请中所述阈值为所述待检测图像的图像类型对应的阈值。例如,文档图像的阈值与人物图像的阈值可以是不同的。
在一实施例,所述阈值可以是认为预先设置的一个经验值。
随着计算机技术的不断发展,特别是人工智能的进步,所述阈值还可以是通过机器学习计算得到的。例如,基于历史检测时的阈值,通过机器学习算法可以计算出一个最优的阈值。
再有的,所述阈值还可以是基于大数据技术计算得到的。例如,通过海量数据,发现大部分模糊检测时设定的阈值为X,则本检测阈值也可以采用X。
与前述图像模糊检测方法的实施例相对应,本申请还提供了图像模糊检测装置的实施例。
本申请图像模糊检测装置的实施例可以应用在服务器上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图6所示,为本申请图像模糊检测装置所在的一种硬件结构图,除了图6所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中通常根据该图像模糊检测的实际功能,还可以包括其他硬件,对此不再赘述。
请参考图7,在一种软件实施方式中,该图像模糊检测装置可以包括:
获取单元310,获取待检测图像的灰度图像;
第一计算单元320,计算所述灰度图像对应的图像梯度;
第二计算单元330,基于积分图算法,计算出所述图像梯度的峰度值;
确定单元340,根据所述峰度值确定所述待检测图像的模糊度。
在一可选的实施例中:
在所述第一计算单元320之前,所述装置还包括:
尺度归一化处理子单元,对所述灰度图像进行尺度归一化处理;
其中,所述尺度归一化处理,具体包括:
将所述灰度图像的长和宽调整为预设的长和宽。
在一可选的实施例中:
所述第二计算单元330,具体包括:
基于至少梯度一次幂的积分图算法,计算所述图像梯度的峰度值。
在一可选的实施例中:
所述第二计算单元330,具体包括:
运算子单元,对所述图像梯度进行至少梯度一次幂的积分图运算;
滑窗子单元,对所述积分图运算后的图像梯度进行滑窗处理;
计算子单元,计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值。
在一可选的实施例中:
所述至少梯度一次幂的积分图算法,包括:
梯度一次幂、二次幂、三次幂和四次幂的积分图算法。
在一可选的实施例中:
所述计算子单元,具体包括:
第一峰度值计算子单元,计算子图像梯度的第一峰度值;
第二峰度值映射子单元,基于映射关系,将所述第一峰度值映射为第二峰度值;
峰度值确定子单元,将所述第二峰度值确定为所述子图像梯度的峰度值。
在一可选的实施例中:
所述映射关系为对数关系;
所述第二峰度值映射子单元,具体包括:
对所述第一峰度值进行对数运算,得到第二峰度值。
在一可选的实施例中:
在所述计算子单元之前,所述装置还包括:
求和子单元,计算所述滑窗滑动时每个步长对应的子图像梯度内每一个像素点对应的梯度值之和;
背景确定子单元,在所述梯度值之和不小于阈值时,确定所述子图像梯度为非空白背景区域;
所述计算子单元,具体包括:
计算所述滑窗滑动时每个非空白背景区域的峰度值。
在一可选的实施例中:
在所述计算子单元之前,所述装置还包括:
梯度值归一化处理子单元,对所述子图像梯度内像素点进行梯度值归一化处理;
所述梯度值归一化处理,包括:
计算所述子图像梯度内所有像素点的梯度值之和;
将所述子图像梯度内每个像素点的梯度值除以所述梯度值之和。
在一可选的实施例中:
在所述峰度值为多个时,所述确定单元340,具体包括:
排序子单元,对所述多个峰度值进行排序;
均值计算子单元,选取前预设数量或者预设比例的峰度值,计算均值;
模糊度确定子单元,将所述均值确定为所述待检测图像的模糊度。
在一可选的实施例中:
所述装置还包括:
比较子单元,将所述模糊度与阈值进行比较;
第一确定子单元,在所述模糊度不超过阈值时,确定所述待检测图像为清晰;
第二确定子单元,在所述模糊度超过阈值时,确定所述待检测图像为不清晰。
在一可选的实施例中:
所述阈值为所述待检测图像的图像类型对应的阈值。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上图7描述了业务监控装置的内部功能模块和结构示意,其实质上的执行主体可以为一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
获取待检测图像的灰度图像;
计算所述灰度图像对应的图像梯度;
基于积分图算法,计算出所述图像梯度的峰度值;
根据所述峰度值确定所述待检测图像的模糊度。
可选的,在所述计算所述灰度图像对应的图像梯度之前,还包括:
对所述灰度图像进行尺度归一化处理;
其中,所述尺度归一化处理,具体包括:
将所述灰度图像的长和宽调整为预设的长和宽。
可选的,所述基于积分图算法,计算所述图像梯度的峰度值,具体包括:
基于至少梯度一次幂的积分图算法,计算所述图像梯度的峰度值。
可选的,所述基于至少梯度一次幂的积分图算法,计算所述图像梯度的峰度值,具体包括:
对所述图像梯度进行至少梯度一次幂的积分图运算;
对所述积分图运算后的图像梯度进行滑窗处理;
计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值。
可选的,所述至少梯度一次幂的积分图算法,包括:
梯度一次幂、二次幂、三次幂和四次幂的积分图算法。
可选的,所述计算所述滑窗滑动每个步长对应的子图像梯度的峰度值,具体包括:
计算子图像梯度的第一峰度值;
基于映射关系,将所述第一峰度值映射为第二峰度值;
将所述第二峰度值确定为所述子图像梯度的峰度值。
可选的,所述映射关系为对数关系;
所述基于映射关系,将所述第一峰度值映射为第二峰度值,具体包括:
对所述第一峰度值进行对数运算,得到第二峰度值。
可选的,在所述计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值之前,还包括:
计算所述滑窗滑动时每个步长对应的子图像梯度内每一个像素点对应的梯度值之和;
在所述梯度值之和不小于阈值时,确定所述子图像梯度为非空白背景区域;
所述计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值,具体包括:
计算所述滑窗滑动时每个非空白背景区域的峰度值。
可选的,在所述计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值之前,还包括:
对所述子图像梯度内像素点进行梯度值归一化处理;
所述梯度值归一化处理,包括:
计算所述子图像梯度内所有像素点的梯度值之和;
将所述子图像梯度内每个像素点的梯度值除以所述梯度值之和。
可选的,在所述峰度值为多个时,所述根据所述峰度值确定所述待检测图像的模糊度,具体包括:
对所述多个峰度值进行排序;
选取前预设数量或者预设比例的峰度值,计算均值;
将所述均值确定为所述待检测图像的模糊度。
可选的,还包括:
将所述模糊度与阈值进行比较;
在所述模糊度不超过阈值时,确定所述待检测图像为清晰;
在所述模糊度超过阈值时,确定所述待检测图像为不清晰。
可选的,所述阈值为所述待检测图像的图像类型对应的阈值。
在上述电子设备的实施例中,应理解,该处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application SpecificIntegrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,而前述的存储器可以是只读存储器(英文:read-only memory,缩写:ROM)、随机存取存储器(英文:random access memory,简称:RAM)、快闪存储器、硬盘或者固态硬盘。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (11)
1.一种图像模糊检测方法,其特征在于,所述方法包括:
获取待检测图像的灰度图像;
计算所述灰度图像对应的图像梯度;
基于积分图算法,计算所述图像梯度的峰度值;
根据所述峰度值确定所述待检测图像的模糊度;
其中,所述基于积分图算法,计算所述图像梯度的峰度值,具体包括:
基于至少梯度一次幂的积分图算法,计算所述图像梯度的峰度值;所述至少梯度一次幂的积分图算法,包括:梯度一次幂、二次幂、三次幂和四次幂的积分图算法;
所述基于至少梯度一次幂的积分图算法,计算所述图像梯度的峰度值,具体包括:
对所述图像梯度进行至少梯度一次幂的积分图运算;
对所述积分图运算后的图像梯度进行滑窗处理;
采用下述公式计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值:
其中,∑i,j(xi,j)、分别为梯度一次幂、二次幂、三次幂和四次幂的积分图算法的结果,mean表示滑窗内梯度值的平均值;xi,j表示从图像梯度的像素点(i,j)至像素点(i+pitchsize,j+pitchsize)所构成区域中像素点的梯度值,pitchsize表示滑窗大小,sum表示滑窗区域对应子图像梯度内像素点的梯度值之和;梯度一次幂的积分图算法的结果∑i,jxi,j表示从图像梯度的像素点(i,j)至像素点(i+pitchsize,j+pitchsize)所构成区域中像素点的梯度值之和;
在所述计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值之前,所述方法还包括:
计算所述滑窗滑动时每个步长对应的子图像梯度内每一个像素点对应的梯度值之和;
在所述梯度值之和不小于阈值时,确定所述子图像梯度为非空白背景区域;
所述计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值,具体包括:
计算所述滑窗滑动时每个非空白背景区域的峰度值。
2.根据权利要求1所述的方法,其特征在于,在所述计算所述灰度图像对应的图像梯度之前,所述方法还包括:
对所述灰度图像进行尺度归一化处理;
其中,所述尺度归一化处理,具体包括:
将所述灰度图像的长和宽调整为预设的长和宽。
3.根据权利要求1所述的方法,其特征在于,所述计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值,具体包括:
计算子图像梯度的第一峰度值;
基于映射关系,将所述第一峰度值映射为第二峰度值;
将所述第二峰度值确定为所述子图像梯度的峰度值。
4.根据权利要求3所述的方法,其特征在于,所述映射关系为对数关系;
所述基于映射关系,将所述第一峰度值映射为第二峰度值,具体包括:
对所述第一峰度值进行对数运算,得到第二峰度值。
5.根据权利要求1所述的方法,其特征在于,在所述计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值之前,所述方法还包括:
对所述子图像梯度内像素点进行梯度值归一化处理;
所述梯度值归一化处理,包括:
计算所述子图像梯度内所有像素点的梯度值之和;
将所述子图像梯度内每个像素点的梯度值除以所述梯度值之和。
6.根据权利要求1所述的方法,其特征在于,在所述峰度值为多个时,所述根据所述峰度值确定所述待检测图像的模糊度,具体包括:
对所述多个峰度值进行排序;
选取前预设数量或者预设比例的峰度值,计算均值;
将所述均值确定为所述待检测图像的模糊度。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述模糊度与阈值进行比较;
在所述模糊度不超过阈值时,确定所述待检测图像为清晰;
在所述模糊度超过阈值时,确定所述待检测图像为不清晰。
8.根据权利要求7所述的方法,其特征在于,所述阈值为所述待检测图像的图像类型对应的阈值。
9.一种图像模糊检测装置,其特征在于,所述装置包括:
获取单元,获取待检测图像的灰度图像;
第一计算单元,计算所述灰度图像对应的图像梯度;
第二计算单元,基于积分图算法,计算出所述图像梯度的峰度值;
确定单元,根据所述峰度值确定所述待检测图像的模糊度;
所述第二计算单元,具体用于基于至少梯度一次幂的积分图算法,计算所述图像梯度的峰度值;所述至少梯度一次幂的积分图算法,包括:梯度一次幂、二次幂、三次幂和四次幂的积分图算法;
所述第二计算单元,具体包括:运算子单元,对所述图像梯度进行至少梯度一次幂的积分图运算;滑窗子单元,对所述积分图运算后的图像梯度进行滑窗处理;计算子单元,采用下述公式计算所述滑窗滑动时每个步长对应的子图像梯度的峰度值:
其中,∑i,j(xi,j)、分别为梯度一次幂、二次幂、三次幂和四次幂的积分图算法的结果,mean表示滑窗内梯度值的平均值;xi,j表示从图像梯度的像素点(i,j)至像素点(i+pitchsize,j+pitchsize)所构成区域中像素点的梯度值,pitchsize表示滑窗大小,sum表示滑窗区域对应子图像梯度内像素点的梯度值之和;梯度一次幂的积分图算法的结果∑i,jxi,j表示从图像梯度的像素点(i,j)至像素点(i+pitchsize,j+pitchsize)所构成区域中像素点的梯度值之和;
在所述计算子单元之前,所述装置还包括:
求和子单元,计算所述滑窗滑动时每个步长对应的子图像梯度内每一个像素点对应的梯度值之和;
背景确定子单元,在所述梯度值之和不小于阈值时,确定所述子图像梯度为非空白背景区域;
所述计算子单元,具体用于计算所述滑窗滑动时每个非空白背景区域的峰度值。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-8中任一项所述的方法。
11.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
所述处理器被配置为上述权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810218556.6A CN110288560B (zh) | 2018-03-16 | 2018-03-16 | 一种图像模糊检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810218556.6A CN110288560B (zh) | 2018-03-16 | 2018-03-16 | 一种图像模糊检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110288560A CN110288560A (zh) | 2019-09-27 |
CN110288560B true CN110288560B (zh) | 2021-03-02 |
Family
ID=68000829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810218556.6A Active CN110288560B (zh) | 2018-03-16 | 2018-03-16 | 一种图像模糊检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110288560B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111445433B (zh) * | 2019-10-14 | 2021-07-06 | 北京华宇信息技术有限公司 | 一种电子卷宗的空白页和模糊页的检测方法及装置 |
CN110852997B (zh) * | 2019-10-24 | 2022-07-05 | 成都市联洲国际技术有限公司 | 动态图像清晰度检测方法、装置、电子设备及存储介质 |
CN110942419B (zh) * | 2019-11-22 | 2023-09-22 | 航天科技控股集团股份有限公司 | 一种全液晶仪表毛玻璃模糊处理方法 |
CN112017163B (zh) * | 2020-08-17 | 2024-07-26 | 中移(杭州)信息技术有限公司 | 图像模糊度检测的方法、装置、电子设备及存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6470097B1 (en) * | 1999-01-22 | 2002-10-22 | Siemens Corporation Research, Inc. | Total variational blind image restoration from image sequences |
CN102156990B (zh) * | 2011-04-02 | 2013-12-11 | 北京理工大学 | 一种tdi-ccd航空遥感图像模糊参数的自动辨识方法 |
CN102354363B (zh) * | 2011-09-15 | 2014-04-16 | 西北工业大学 | 高反光柱面金属上的二维条码图像识别方法 |
CN102542539B (zh) * | 2011-12-30 | 2014-01-08 | 四川大学 | 一种基于功率谱分析的强适用性图像增强方法 |
CN104182958B (zh) * | 2013-05-21 | 2019-01-08 | 索尼公司 | 目标检测方法和装置 |
CN105488511B (zh) * | 2015-11-25 | 2018-11-23 | 小米科技有限责任公司 | 图像的识别方法及装置 |
CN107368834A (zh) * | 2016-05-12 | 2017-11-21 | 北京君正集成电路股份有限公司 | 一种方向梯度积分图存储方法及装置 |
CN106296665B (zh) * | 2016-07-29 | 2019-05-14 | 北京小米移动软件有限公司 | 卡片图像模糊检测方法和装置 |
-
2018
- 2018-03-16 CN CN201810218556.6A patent/CN110288560B/zh active Active
Non-Patent Citations (1)
Title |
---|
基于空域同态滤波的钢丝绳表面缺陷检测;兰添才;《福建电脑》;20081231(第9期);第8-9,48页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110288560A (zh) | 2019-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110288560B (zh) | 一种图像模糊检测方法及装置 | |
CN108694705B (zh) | 一种多帧图像配准与融合去噪的方法 | |
Bahrami et al. | A fast approach for no-reference image sharpness assessment based on maximum local variation | |
US7508550B2 (en) | Image correcting apparatus and method, and image correcting program, and look-up table creating apparatus and method, and look-up table creating program | |
US8548257B2 (en) | Distinguishing between faces and non-faces | |
US8724917B2 (en) | Selecting best image among sequentially captured images | |
CN107194317B (zh) | 一种基于网格聚类分析的暴力行为检测方法 | |
KR20180065889A (ko) | 타겟의 검측 방법 및 장치 | |
CN111935479B (zh) | 一种目标图像确定方法、装置、计算机设备及存储介质 | |
US8503734B2 (en) | Detecting image detail level | |
CN111183630B (zh) | 一种智能终端的照片处理方法及处理装置 | |
EP3306527B1 (en) | A method of cropping an image, an apparatus for cropping an image, a program and a storage medium | |
CN108961260B (zh) | 图像二值化方法及装置、计算机存储介质 | |
CN110378893B (zh) | 图像质量评价方法、装置和电子设备 | |
US8873839B2 (en) | Apparatus of learning recognition dictionary, and method of learning recognition dictionary | |
CN113592776A (zh) | 图像处理方法及装置、电子设备、存储介质 | |
JP2004310475A (ja) | 画像処理装置、画像処理を行う携帯電話、および画像処理プログラム | |
CN108961209B (zh) | 行人图像质量评价方法、电子设备及计算机可读介质 | |
CN111415317A (zh) | 图像处理方法及装置、电子设备、计算机可读存储介质 | |
CN114494775A (zh) | 视频切分方法、装置、设备及存储介质 | |
CN108769543B (zh) | 曝光时间的确定方法及装置 | |
CN112204957A (zh) | 白平衡处理方法和设备、可移动平台、相机 | |
CN114529742A (zh) | 图像相似度确定方法、装置、设备及计算机可读存储介质 | |
CN112364856A (zh) | 翻拍图像识别方法、装置、计算机设备及存储介质 | |
CN112200775A (zh) | 图像清晰度检测方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |