模糊图片检测方法和装置与流程

文档序号:13761207阅读:300来源:国知局
本发明涉及图像处理领域,特别涉及一种模糊图片检测方法和装置。
背景技术
:图片在拍照过程中会遇到抖动、运动和聚焦等外界因素的干扰产生模糊;或者我们用图像处理软件对图片进行处理导致产生模糊。“模糊图片”指图片中物体轮廓模糊不清,与清晰图片相对应。现有的一种图像模糊检测方法包括:接收图像并对图像进行灰度化处理,得到图像A;对图像A分别进行强边缘与弱边缘检测,并分别得到强边缘结果B和弱边缘结果C;对图像A进行分块,并对块、及块所对应的强边缘结果B和弱边缘结果C进行统计,得到强度的直方图统计;根据强度直方图统计的结果计算出图像A的模糊图像概率。上述图像模糊检测方法不仅包含强边缘检测、弱边缘检测、还包括对图像进行分块,进行强边缘结果B和弱边缘结果C进行统计,以及根据强度直方图统计的结果计算出图像A的模糊图像概率。因此现有的模糊图片检测方法非常复杂、运算量非常大。而现有技术中的其它模糊图片检测方法,它们分别用到了显著性分割、局部锐度映射、卷积神经网络训练等技术。这些现有的模糊图片检测方法均较为复杂、运算量很大。技术实现要素:鉴于以上技术问题,本发明提供了一种模糊图片检测方法和装置,使用边缘检测方法确定待测图片是否是模糊图片,简单高效。根据本发明的一个方面,提供一种模糊图片检测方法,包括:对待测图片进行边缘检测;获取边缘检测后待测图片的边缘点总数,其中,边缘点总数为边缘所占的像素点总数;根据待测图片的边缘点总数判断待测图片是否为模糊图片。在本发明的一个实施例中,对待测图片进行边缘检测的步骤包括:获取待测图片的梯度幅值和梯度方向;对梯度幅值进行非极大值抑制;采用双阈值方式进行边缘检测,并连接边缘。在本发明的一个实施例中,在获取待测图片的梯度幅值和梯度方向的步骤之前,对待测图片进行边缘检测的步骤还包括:对待测图片进行灰度化处理;对灰度化处理后的待测图片进行高斯滤波。在本发明的一个实施例中,根据待测图片的边缘点总数判断待测图片是否为模糊图片的步骤包括:判断待测图片的边缘点总数是否小于预定边缘点数目;若待测图片的边缘点总数小于预定边缘点数目,则判定待测图片为模糊图片;若待测图片的边缘点总数不小于预定边缘点数目,则判定待测图片为清晰图片。在本发明的一个实施例中,根据待测图片的边缘点总数判断待测图片是否为模糊图片的步骤包括:根据待测图片的边缘点总数获取待测图片的边缘点比例,其中边缘点比例为边缘点占总像素点的比例;判断待测图片的边缘点比例是否小于预定比值;若待测图片的边缘点比例小于预定比值,则判定待测图片为模糊图片;若待测图片的边缘点比例不小于预定比值,则判定待测图片为清晰图片。根据本发明的另一方面,提供一种模糊图片检测装置,包括边缘检测模块、边缘点总数获取模块和模糊图片判定模块,其中:边缘检测模块,用于对待测图片进行边缘检测;边缘点总数获取模块,用于获取边缘检测后待测图片的边缘点总数,其中,边缘点总数为边缘所占的像素点总数;模糊图片判定模块,用于根据待测图片的边缘点总数判断待测图片是否为模糊图片。在本发明的一个实施例中,边缘检测模块包括梯度幅值获取单元、非极大值抑制单元和双阈值检测单元,其中:梯度幅值获取单元,用于获取待测图片的梯度幅值和梯度方向;非极大值抑制单元,用于对梯度幅值进行非极大值抑制;双阈值检测单元,用于采用双阈值方式进行边缘检测,并连接边缘。在本发明的一个实施例中,边缘检测模块还包括灰度化单元和高斯滤波单元,其中:灰度化单元,用于对待测图片进行灰度化处理;高斯滤波单元,用于对灰度化处理后的待测图片进行高斯滤波。在本发明的一个实施例中,模糊图片判定模块用于判断待测图片的边缘点总数是否小于预定边缘点数目;在待测图片的边缘点总数小于预定边缘点数目的情况下,判定待测图片为模糊图片;以及在待测图片的边缘点总数不小于预定边缘点数目的情况下,判定待测图片为清晰图片。在本发明的一个实施例中,模糊图片判定模块用于根据待测图片的边缘点总数获取待测图片的边缘点比例,其中边缘点比例为边缘点占总像素点的比例;判断待测图片的边缘点比例是否小于预定比值;在待测图片的边缘点比例小于预定比值的情况下,判定待测图片为模糊图片;在待测图片的边缘点比例不小于预定比值的情况下,判定待测图片为清晰图片。本发明通过统计待测图片经过边缘检测后的边缘点总数即可判定待测图片是否是模糊图片,因此本发明上述实施例简单高效,计算量小,能够很好解决模糊图片检测问题。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明模糊图片检测方法一个实施例的示意图。图2为本发明一个实施例中对待测图片进行边缘检测的示意图。图3为本发明另一实施例中对待测图片进行边缘检测的示意图。图4为本发明模糊图片检测装置一个实施例的示意图。图5为本发明一个实施例中边缘检测模块的示意图。图6为本发明另一实施例中边缘检测模块的示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。图1为本发明模糊图片检测方法一个实施例的示意图。优选的,本实施例可由本发明模糊图片检测装置执行。该方法包括以下步骤:步骤101,对待测图片进行边缘检测。在本发明一个实施例中,步骤101可以采用的种类微分算子法、样板匹配法、小波检测法、神经网络法等边缘检测方法对待测图片进行边缘检测。步骤102,获取边缘检测后待测图片的边缘点总数,其中,边缘检测后的待测图片为二值图像,边缘点总数为边缘检测后的待测图片中边缘所占的像素点总数。在本发明的一个实施例中,步骤102可以包括:从边缘检测后待测图片的左上角像素点开始顺序依行扫描,如果像素点的值为255,即为边缘点,则边缘点总数sumEdges加1,循环扫描所有行列的像素点,求出总的sumEdges。步骤103,根据待测图片的边缘点总数判断待测图片是否为模糊图片。在本发明的一个实施例中,步骤103可以包括:步骤1031,判断待测图片的边缘点总数sumEdges是否小于预定边缘点数目θ。例如:对于300×300像素的待测图片而言,预定边缘点数目θ可以设置为100。步骤1032,若待测图片的边缘点总数sumEdges小于预定边缘点数目θ,则判定待测图片为模糊图片。例如:若边缘点总数sumEdges等于0,则判定待测图片为模糊图片。步骤1033,若待测图片的边缘点总数sumEdges不小于预定边缘点数目θ,则判定待测图片为清晰图片。在本发明的另一实施例中,步骤103可以包括:步骤103a,根据待测图片的边缘点总数获取待测图片的边缘点比例,其中边缘点比例为边缘点占总像素点的比例。步骤103b,判断待测图片的边缘点比例是否小于预定比值。例如:对于300×300像素的待测图片而言,预定比值可以设置为1/300。步骤103c,若待测图片的边缘点比例小于预定比值,则判定待测图片为模糊图片。步骤103d,若待测图片的边缘点比例不小于预定比值,则判定待测图片为清晰图片。基于本发明上述实施例提供的模糊图片检测方法,通过统计待测图片经过边缘检测后的边缘点总数即可判定待测图片是否是模糊图片,因此本发明上述实施例简单高效,计算量小,能够很好解决模糊图片检测问题。图2为本发明一个实施例中对待测图片进行边缘检测的示意图。优选的,本实施例可由本发明边缘检测模块执行。如图2所示,图1实施例中的步骤101可以包括以下步骤:步骤201,获取待测图片的梯度幅值和梯度方向。步骤202,对梯度幅值进行非极大值抑制。步骤203,采用双阈值方式对非极大值抑制后的待测图片进行边缘检测,并连接边缘。在本发明的一个实施例中,步骤203可以包括:对非极大值抑制后的待测图片作用两个阈值th1和th2,两者关系th1=0.4th2。申请人把梯度值小于th1的像素的灰度值设为0,得到图像1。然后把梯度值小于th2的像素的灰度值设为0,得到图像2。由于图像2的阈值较高,去除大部分噪音,但同时也损失了有用的边缘信息。而图像1的阈值较低,保留了较多的信息,我们可以以图像2为基础,以图像1为补充来连接图像的边缘。连接边缘的具体步骤如下:第一步,对图像2进行扫描,当遇到一个非零灰度的像素p(x,y)时,跟踪以p(x,y)为开始点的轮廓线,直到轮廓线的终点q(x,y)。第二步,考察图像1中与图像2中q(x,y)点位置对应的点s(x,y)的8邻近区域。如果在s(x,y)点的8邻近区域中有非零像素s(x,y)存在,则将其包括到图像2中,作为r(x,y)点。从r(x,y)开始,重复第一步,直到我们在图像1和图像2中都无法继续为止。第三步,当完成对包含p(x,y)的轮廓线的连结之后,将这条轮廓线标记为已经访问。回到第一步,寻找下一条轮廓线。重复第一步、第二步、第三步,直到图像2中找不到新轮廓线为止。图3为本发明另一实施例中对待测图片进行边缘检测的示意图。优选的,本实施例可由本发明边缘检测模块执行。如图3所示,图1实施例中的步骤101可以包括以下步骤:步骤301,对待测彩色图片进行灰度化处理。作为本发明的优选方案,步骤301可以包括:采用公式1或公式2的灰度化处理公式对待测彩色图片进行灰度化处理。Gray=0.299R+0.587G+0.114B(1)Gray=(306R+601G+117B+512)/1024(2)其中,Gray为均值灰度值,R、G、B分别为红、绿、蓝三个通道的均值颜色值。步骤302,对灰度化处理后的待测图片进行高斯滤波。作为本发明的优选方案,步骤302可以包括:使用两个一维高斯核分别在X方向和Y方向两次加权实现,其中,高斯核如公式3所示:K=12πσe-x*x2σ*σ---(3)]]>其中,σ为高思核函数的宽度参数。高斯滤波作为一种线性平滑滤波,适用于消除高斯噪声,此处用于减噪。高斯滤波就是对整幅图片进行加权平均的结果,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后取得。具体操作是,用卷积核扫描图片中的每一个像素,用模板确定的邻域内像素的加权平均灰度值替代模板中心像素点的值。步骤303,采用一阶偏导的有限差分来获取高斯滤波后待测图片的梯度幅值M[i,j]和梯度方向θ[i,j]。作为本发明的优选方案,步骤303中,图像灰度值的梯度可以使用2×2一阶有限差分来进行近似,这样就可以得到高斯滤波后的图像f[i,j]在X和Y方向上偏导数的两个矩阵,使用如公式4所示的卷积算子:Sy=11-1-1Sx=-11-11---(4)]]>图像f[i,j]在X向、Y向的一阶偏导数矩阵Q[i,j]、P[i,j]、梯度幅值M[i,j]及梯度方向θ[i,j]的数学表达式分别如公式5-8所示:P[i,j]=(f[i,j+1]-f[i,j]+f[i+1,j+1]-f[i+1,j])/2(5)Q[i,j]=(f[i,j]-f[i+1,j]+f[i,j+1]-f[i+1,j+1])/2(6)θ[i,j]=arctan(Q[i,j]/P[i,j])(8)其中,梯度幅值M[i,j]反映了图像的边缘强度;使得梯度幅值M[i,j]取得局部最大值的方向角为梯度方向θ[i,j],由此梯度方向θ[i,j]反映了边缘的方向。步骤304,对梯度幅值进行非极大值抑制。作为本发明的优选方案,步骤304中,图像梯度幅值矩阵中的元素值越大,说明图像中该点的梯度值越大,但这不能说明该点就是边缘。非极大值抑制是边缘检测的重要步骤,指寻找像素点局部最大值,将非极大值点所对应的灰度值置为0,从而可以剔除掉一大部分非边缘的点。步骤305,采用双阈值方式进行边缘检测,并连接边缘。作为本发明的优选方案,步骤305可以包括:采用双阈值法,选择两个阈值,在非极大值抑制产生的二值灰度矩阵的潜在点中,根据高阈值得到一个边缘图像,这样一个图像含有很少的假边缘,但是由于阈值较高,产生的图像边缘可能不闭合,解决这个问题采用了另外一个低阈值。在高阈值图像中把边缘链接成轮廓,当到达轮廓的端点时,该算法会在端点的8邻域点中寻找满足低阈值的点,再根据此点收集新的边缘,直到整个图像边缘闭合。对于不满足条件的点,直接删除掉。在本发明的一个具体实施例中,步骤305中的低阈值可以设为50,高阈值可以设为200。本发明上述实施例的模糊图片检测方法可以通过C++实现,在200万手机实拍图片中,采用本发明上述实施例的方法挑出了9230张模糊图,精度99.67%,算法效率为9.22毫秒每张图片。经工程实践证实,发明上述实施例算法简单高效,是检测模糊图片的最优算法。与现有技术目前使用其它模糊图片检测方法相比,本发明上述实施例简单高效、运算量小;经过工程实践验证,本发明上述实施例算法精度高、检测速度快、检测效率高。因此,本发明上述实施例是检测模糊图片的最优算法。图4为本发明模糊图片检测装置一个实施例的示意图。如图4所示,该模糊图片检测装置包括边缘检测模块41、边缘点总数获取模块42和模糊图片判定模块43,其中:边缘检测模块41,用于对待测图片进行边缘检测。在本发明的一个实施例中,如图5所示,图4实施例中的边缘检测模块41可以包括梯度幅值获取单元411、非极大值抑制单元412和双阈值检测单元413,其中:梯度幅值获取单元411,用于采用一阶偏导的有限差分来获取待测图片的梯度幅值和梯度方向。在本发明的一个具体实施例中,梯度幅值获取单元411可以用于根据公式5-8来获取待测图片的梯度幅值和梯度方向。非极大值抑制单元412,用于对梯度幅值进行非极大值抑制。在本发明的一个具体实施例中,非极大值抑制单元412可以用于寻找像素点局部最大值,将非极大值点所对应的灰度值置为0,从而可以剔除掉一大部分非边缘的点。双阈值检测单元413,用于采用双阈值方式进行边缘检测,并连接边缘。在本发明的一个具体实施例中,双阈值检测单元413可以用于采用双阈值法,选择两个阈值,在非极大值抑制产生的二值灰度矩阵的潜在点中,根据高阈值得到一个边缘图像;利用低阈值在高阈值图像中把边缘链接成轮廓,其中,当到达轮廓的端点时,该算法会在端点的8邻域点中寻找满足低阈值的点,再根据此点收集新的边缘,直到整个图像边缘闭合。与图5实施例相比,在本发明图6实施例中,边缘检测模块41还可以包括灰度化单元414和高斯滤波单元415,其中:灰度化单元414,用于采用公式1或公式2的灰度化处理公式对待测彩色图片进行灰度化处理。高斯滤波单元415,用于采用如公式3所示的高斯核对灰度化处理后的待测图片进行高斯滤波。在本发明的一个具体实施例中,高斯滤波单元415用于采用如公式3所示的高斯核扫描图片中的每一个像素,用模板确定的邻域内像素的加权平均灰度值替代模板中心像素点的值边缘点总数获取模块42,用于获取边缘检测后待测图片的边缘点总数,其中,边缘检测后的待测图片为二值图像,边缘点总数为边缘检测后的待测图片中边缘所占的像素点总数。模糊图片判定模块43,用于根据待测图片的边缘点总数判断待测图片是否为模糊图片。在本发明的一个实施例中,模糊图片判定模块43可以用于判断待测图片的边缘点总数是否小于预定边缘点数目;在待测图片的边缘点总数小于预定边缘点数目的情况下,判定待测图片为模糊图片;以及在待测图片的边缘点总数不小于预定边缘点数目的情况下,判定待测图片为清晰图片。在本发明的另一实施例中,模糊图片判定模块43可以用于根据待测图片的边缘点总数获取待测图片的边缘点比例,其中边缘点比例为边缘点占总像素点的比例;判断待测图片的边缘点比例是否小于预定比值;在待测图片的边缘点比例小于预定比值的情况下,判定待测图片为模糊图片;在待测图片的边缘点比例不小于预定比值的情况下,判定待测图片为清晰图片。基于本发明上述实施例提供的模糊图片检测装置,通过统计待测图片经过边缘检测后的边缘点总数即可判定待测图片是否是模糊图片,因此本发明上述实施例简单高效,计算量小,能够很好解决模糊图片检测问题。本发明一个具体实施例中,采用本发明上述实施例的模糊图片检测装置,在200万手机实拍图片中挑出了9230张模糊图,模糊图片检测精度为99.67%,模糊图片检测效率为9.22毫秒每张图片。经工程实践证实,发明上述实施例算法简单高效,是检测模糊图片的最优算法。与现有技术目前使用其它模糊图片检测方法相比,本发明上述实施例简单高效、运算量小;经过工程实践验证,本发明上述实施例算法精度高、检测速度快、检测效率高。因此,本发明上述实施例是检测模糊图片的最优算法。在上面所描述的边缘检测模块41、边缘点总数获取模块42和模糊图片判定模块43等功能单元可以实现为用于执行本申请所描述功能的通用处理器、可编程逻辑控制器(PLC)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者其任意适当组合。至此,已经详细描述了本发明。为了避免遮蔽本发明的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1