一种图像清晰度计算方法及装置
技术领域
本发明涉及数码拍摄领域,更具体地说,涉及一种数码拍摄设备对焦过程中的图像清晰度计算方法及装置。
背景技术
近年来,随着数字图像分析技术的飞速发展,基于数字图像的被动式自动调焦技术因其不依赖于距离信息,直接通过采集图像的清晰度进行调焦,具有调焦智能化、电路和运动机构简化等优点被广泛应用。在利用拍摄装置进行对焦的过程中,需要通过每帧图像的清晰度值来识别聚焦的最佳位置,若清晰度计算不准确,将直接影响到拍摄装置在拍摄过程中对焦的效果和图片的质量。
目前常用的清晰度计算及评价方法主要有空域参数方差、熵以及频域调制传递函数MIF(modulation transfer function)。空域参数虽评价简洁、快速,但对图像清晰度的细小变化不敏感;频域参数虽对图像清晰度变化敏感,但计算较慢,不宜程序运算的自动化。这些算法都不能被很好的利用在拍摄装置对焦过程中对图像清晰度的计算中。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述图像清晰度计算方法中计算较慢、灵敏度不高的缺陷,提供一种计算速度快、灵敏度高的图像清晰度计算方法及装置。
本发明解决其技术问题所采用的技术方案是:
一方面,构造一种图像清晰度计算方法,包括以下步骤:
将二维图像每行数据3~6个像素点的亮度值作为一组,计算每行数据各组亮度值的最大值、最小值、平均值;
根据所述最大值、最小值、平均值,计算每行数据各组亮度值的最大值减去平均值、最小值减去平均值的平方和;
分别将所述每行数据的各组平方和相加,得到每行数据的临时清晰度;
根据所述每行数据的临时清晰度,对所有行数据的临时清晰度进行排序,选取最大的四个临时清晰度;
根据所述最大的四个临时清晰度计算其中值,将此值作为当前二维图像的清晰度。
将二维图像每行数据3~6个像素点的亮度值作为一组,计算每行数据各组亮度值的最大值、最小值、平均值的步骤之前还包括:接收所述二维图像数据;设置接收到的二维图像数据清晰度计算区域的起始点、宽度、高度。
每行数据3~6个像素点的亮度值为一组的划分方法为:从每行第一个像素点开始,与后续相邻2~5个像素点作为一组。
另一方面,本发明提供了一种图像清晰度计算装置,该装置包括:
最值及平均值计算模块,用于对接收的二维图像数据的每行数据进行分组并计算各组亮度值的最大值、最小值、平均值;
计算时将二维图像每行数据3~6个像素点的亮度值作为一组,计算每行数据各组亮度值的最大值、最小值、平均值;
平方和计算模块,用于计算各组亮度值的最大值减去平均值、最小值减去平均值的平方和;
临时清晰度值计算模块,用于根据每行数据各组的平方和计算每行数据的临时清晰度;
排序模块,用于将所有行数据的临时清晰度进行排序,获取最大的四个临时清晰度;
清晰度值计算模块,用于计算前四个行清晰度的中值,将此中值作为当前二维图像的清晰度。
所述装置还包括:
图像数据接收模块,用于接收二维图像数据;
清晰度计算区域设置模块,用于设置接收到的二维图像数据清晰度计算区域的起始点、宽度、高度;
图像数据接收模块、清晰度计算区域设置模块和所述最值及平均值计算模块依次相连。
实施本发明的图像清晰度计算方法及装置,具有以下有益效果:计算量小、实时性好、灵敏度高等特点,可以更好地满足自动对焦系统对图像清晰度评价的要求。
附图说明
下面将结合附图对本发明作进一步说明,附图中:
图1是图像清晰度计算方法流程图;
图2是图像清晰度计算装置原理图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
如图1所示,一种图像清晰度计算方法,该方法包括:
步骤101、将二维图像每行数据3~6个像素点的亮度值作为一组,获取各组亮度值的最大值、最小值、平均值;
步骤102、根据所述最大值、最小值、平均值,获取各组亮度值的最大值减去平均值、最小值减去平均值的平方和;
步骤103、分别将所述每行数据的各组平方和相加,获取每行数据的临时清晰度;
步骤104、根据所述每行数据的临时清晰度,对所有行数据的临时清晰度进行排序,选取最大的四个临时清晰度;
步骤105、根据所述最大的四个临时清晰度获取其中值,将此值作为当前二维图像的清晰度。
在本发明实施例中,图像清晰度的计算包括二维图像数据各行临时清晰度的计算和二维图像清晰度的计算。在步骤101将二维图像每行数据3~6个像素点的亮度值作为一组,获取各组亮度值的最大值、最小值、平均值之前,还包括接收所述二维图像数据和设置接收到的二维图像数据清晰度计算区域的起始点、宽度、高度。其中起始点可根据实际情况设定,通常的设置方法是计算区域的中心和二维图像数据的中心重合。宽和高也根据实际情况设定,例如宽可设为240pixel,高可设为180pixel。
步骤101中每行数据3~6个像素点的亮度值为一组,优选的选择4个像素点的亮度值为一组为例,其划分方法为:从每行第一个像素点开始,与后续相邻3个像素点作为一组。例如一幅二维图像数据每行数据有K个像素点,则1、2、3、4像素点为一组,2、3、4、5像素点为一组,3、4、5、6像素点为一组,K-3、K-2、K-1、K像素点为一组,每行数据都可被分为K-3组。
步骤104中,对所有行数据的临时清晰度进行排序,选取最大的四个临时清晰度的原因:为了避免噪点的影响,所以取前四个,并求其中值作为图像的清晰度。取前四个既可避免对局部变化不敏感,又可避免噪点的影响。
如图2所示,一种图像清晰度计算装置,该装置包括:
201:最值及平均值计算模块,用于将接收到的二维图像每行数据3~6个像素点的亮度值作为一组,计算每行数据各组亮度值的最大值、最小值、平均值;
202:平方和计算模块,用于根据所述最大值、最小值、平均值,计算每行数据各组亮度值的最大值减去平均值、最小值减去平均值的平方和;
203:临时清晰度值计算模块,用于根据每行数据各组的平方和相加,得到每行数据的临时清晰度;
204:排序模块,用于将所有行数据的临时清晰度进行排序,获取最大的四个临时清晰度;
205:清晰度值计算模块,用于计算前四个行清晰度的中值,将此中值作为当前二维图像的清晰度。
在本发明实施例中,装置201之前还包括:
图像数据接收模块,用于接收二维图像数据;
清晰度计算区域设置模块,用于设置接收到的二维图像数据清晰度计算区域的起始点、宽度、高度;
图像数据接收模块、清晰度计算区域设置模块和所述最值及平均值计算模块依次相连。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。