本发明涉及数字图像处理技术领域,具体涉及一种数字图像坏点的检测方法、校正方法及装置。
背景技术:
数字图像处理(digitalimageprocessing),即通过计算机对图像传感器采集到的图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术,在数码相机等领域具有广泛应用。
目前,在数字图像处理过程中,先由图像传感器进行图像采集,得到对应的采样图像,再对所述采样图像进行图像还原,获得相应的全彩色图,即最终的数字图像。
其中,用于采集图像的图像传感器主要分为两种:电荷耦合器件(chargecoupleddevice,ccd),以及互补金属氧化物主动式像素传感器(complementarymetaloxidesemiconductor,cmos),ccd或cmos表面通常覆盖有彩色滤波阵列(colorfilterarray,cfa)。当光照在传感器上时,cfa可以使得每个像素点仅一种基色光透过并到达ccd或cmos上对应的像素位置,并输出与所述像素位置上的基色光对应的电信号。图像传感器的外围电路可以对所述电信号进行处理,获得对应的数字信号,进而获得相应的采样图像。后续通过对所述采样图像进行图像还原,即完成由采样格式到全彩色图的转换,获得相应的数字图像。
在上述图像采集过程中,图像传感器经常会因各种原因产生错误的电信号,导致所获得的采样图像出现坏点,影响最终获得的数字图像的质量。
目前,在对数字图像的坏点进行检测时,通常利用像素点的像素值与所述像素点周围区域像素点的像素值的差异,来判断所述像素点是否为坏点,误检率较高,坏点检测的准确性较差。
技术实现要素:
本发明实施例用于提高数字图像坏点检测的准确性。
为解决上述问题,本发明实施例提供了一种数字图像坏点的检测方法,所述方法包括:
获取以预检测像素为中心的数据子块;
计算所述数据子块中红色r分量与绿色g分量之间的平均色差
根据所述平均色差
基于所述颜色补偿后的数据子块,确定所述预检测像素是否为坏点。
可选地,所述计算所述数据子块中红色r分量与绿色g分量之间的平均色差
从所述数据子块中选取预设数量的r像素和b像素;
利用中值滤波方法分别估计各所选取的r像素和b像素处所缺失的g分量;
分别计算各所选取的r像素与对应的所述所缺失的g分量之间的差值,并对计算得到的差值求平均,得到所述平均色差
分别计算各所选取的b像素与对应的所述所缺失的g分量之间的差值,并对计算得到的差值求平均,得到所述平均色差
可选地,所述根据所述平均色差
当所述预检测像素为g时,分别计算所述3×3区域内各r像素的像素值与所述平均色差
当所述预检测像素为r时,分别计算所述3×3区域内各g像素的像素值与所述平均色差
当所述预检测像素为b时,分别计算所述3×3区域内各r像素的像素值与所述平均色差
可选地,所述基于所述颜色补偿后的数据子块,确定所述预检测像素是否为坏点,包括:
根据所述数据子块在各预设方向上的梯度值,确定所述数据子块所属的特征区域;
根据所述数据子块所属的特征区域,从所述颜色补偿后的数据子块的相应区域中,选取与所述预检测像素具有相同颜色的像素;
从所选取的像素对应的像素值中分别选取最大像素值和最小像素值;
根据预设的阈值确定所述预检测像素是否为坏点。
可选地,所述数据子块所属的特征区域包括:平坦区及非平坦区。
可选地,所述根据预设的阈值确定所述预检测像素是否为坏点,包括:
当所述预检测像素值在[ymin-t,ymax+t]内时,确定所述预检测像素为非坏点,否则确定所述预检测像素为坏点,其中,t所述预设阈值,ymin为从所选取的像素对应的像素值中选取的最小像素值,ymax为从所选取的像素对应的像素值中选取的最大像素值。
本发明实施例提供了一种数字图像坏点的校正方法,所述方法包括:
采用上述任一种数字图像坏点的检测方法,检测所述预检测像素是否为坏点;
当确定所述预检测像素为坏点时,选择与所述预检测像素所在的特征区域对应的校正方式,对所述预检测像素进行校正。
可选地,所述预检测像素所在的特征区域包括:平坦区、边缘区以及纹理区。
本发明实施例提供了一种数字图像坏点的检测装置,所述装置包括:
获取单元,适于获取以预检测像素为中心的数据子块;
计算单元,适于计算所述数据子块中红色r分量与绿色g分量之间的平均色差
估计单元,适于根据所述平均色差
确定单元,适于基于所述颜色补偿后的数据子块,确定所述预检测像素是否为坏点。
可选地,所述计算单元,包括:
第一选取子单元,适于从所述数据子块中选取预设数量的r像素和b像素;
估计子单元,适于利用中值滤波方法分别估计各所选取的r像素和b像素处所缺失的绿色分量;
第一计算子单元,适于分别计算各所选取的r像素与对应的所述所缺失的g分量之间的差值,并对计算得到的差值求平均,得到所述平均色差
第二计算子单元,适于分别计算各所选取的蓝色b像素与对应的所述所缺失的g分量之间的差值,并对计算得到的差值求平均,得到所述平均色差
可选地,所述估计单元,包括:
第一估计子单元,适于当所述预检测像素为g时,分别计算所述3×3区域内各r像素的像素值与所述平均色差
第二估计子单元,适于当所述预检测像素为r时,分别计算所述3×3区域内各g像素的像素值与所述平均色差
第三估计子单元,适于当所述预检测像素为b时,分别计算所述3×3区域内各r像素的像素值与所述平均色差
可选地,所述确定单元,包括:
第一确定子单元,适于根据所述数据子块在各预设方向上的梯度值,确定所述数据子块所属的特征区域;
第二选取子单元,适于根据所述数据子块所属的特征区域,从所述颜色补偿后的数据子块的相应区域中,选取与所述预检测像素具有相同颜色的像素;
第三选取子单元,适于从所选取的像素对应的像素值中分别选取最大像素值和最小像素值;
第二确定子单元,适于根据预设的阈值确定所述预检测像素是否为坏点。
可选地,所述数据子块所属的特征区域包括:平坦区及非平坦区。
可选地,所述第二确定子单元,适于当所述预检测像素值在[ymin-t,ymax+t]内时,确定所述预检测像素为非坏点,否则确定所述预检测像素为坏点,其中,t所述预设阈值,ymin为从所选取的像素对应的像素值中选取的最小像素值,ymax为从所选取的像素对应的像素值中选取的最大像素值。
本发明实施例还提供了一种数字图像坏点的校正装置,所述装置包括:
检测单元,适于采用上述任一种数字图像坏点的检测装置,检测所述预检测像素是否为坏点;
校正单元,适于当确定所述预检测像素为坏点时,选择与所述预检测像素所在的特征区域对应的校正方式,对所述预检测像素进行校正。
可选地,所述预检测像素所在的特征区域包括:平坦区、边缘区以及纹理区。
与现有技术相比,本发明的技术方案至少具有以下优点:
通过获取以预检测像素为中心的数据子块,并计算出所述数据子块的平均红绿色差和平均蓝绿色差,再利用平均色差去补偿以预检测像素为中心3×3区域内异色像素,从而可以基于所述颜色补偿后的数据子块,确定所述预检测像素是否为坏点。由于色差信息可以更加准确地反映预检测像素与周围区域像素点的差异,相对于传统的坏点检测,误检率更低,检测的准确性也就更高。
附图说明
图1是本发明实施例中一种数字图像坏点的检测方法流程图;
图2是本发明实施例中一种预检测像素为绿色的5×5块的bayer格式数据块;
图3是本发明实施例中一种数字图像坏点的校正方法流程图;
图4是本发明实施例中一种数字图像坏点的检测装置结构示意图。
具体实施方式
目前,在图像采集过程中,图像传感器可能会因制造工艺上的缺陷而对入色光的感应失误,进而产生错误的电信号,也可能会因长时间的使用,或者在不同的光照下,导致其收集到的数据不够精确,最终反映在图像中往往存在许多坏点,严重影响了图像的质量。
针对上述问题,本发明实施例提供了一种数字图像坏点的检测方法,所述方法通过获取以预检测像素为中心的数据子块,并计算出所述数据子块的平均红绿色差和平均蓝绿色差,再利用平均色差去补偿以预检测像素为中心3×3区域内异色像素,从而可以基于所述颜色补偿后的数据子块,确定所述预检测像素是否为坏点。由于色差信息可以更加准确地反映预检测像素与周围区域像素点的差异,相对于传统的坏点检测,误检率更低,检测的准确性也就更高。
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例作详细的说明。
本发明实施例提供了一种数字图像坏点的检测方法。以下参照图1,通过具体步骤进行详细说明。
步骤11,获取以预检测像素为中心的数据子块。
步骤12,计算所述数据子块中红色r分量与绿色g分量之间的平均色差
步骤13,根据所述平均色差
步骤14,基于所述颜色补偿后的数据子块,确定所述预检测像素是否为坏点。
在实际应用中,拜耳彩色滤波阵列(bayercolorfilterarray,bayercfa)的应用最为广泛。bayercfa可以使得每个像素点仅能获得红(r)、绿(g)、蓝(b)三种基色光中的一种颜色,在后续图像还原时,再分别获得每个像素点缺失的其他两种颜色,获得相应的全彩色图像。为了便于理解,在本发明实施例中,以所述数字图像为bayer图像为例进行说明。可以理解的是,本发明实施例中的数字图像坏点检测方法还可以应用于其他cfa获得的数字图像,具体可以参照本发明实施例中基于bayer图像的相关描述进行实施,此处不再一一赘述。
需要说明的是,在具体实施中,所述数据子块的大小可以由本领域技术人员根据实际情况进行设定。
下面结合具体的数据子块,对步骤11~14进行详细说明:
根据图像中像素的相关性,像素位置离得越近,像素之间的相关性越强,对于平均色差计算和坏点检测的参考意义也就越大,因此本发明的实施例中获取以绿色像素g22为中心的5×5数据子块对所述方法进行描述。可以理解的是,在具体实施中,所述数据子块还可以为其它大小,具体可以根据图像传感器输出的bayer图像的大小进行确定。
如图2所示,预检测像素为g22。在本发明的一实施例中,为了计算所述5×5数据子块中的平均红绿色差
kgr1=r01-median(g00,g02,g11)(1)
kgr2=r03-median(g02,g04,g13)(2)
kgr3=r21-median(g20,g22,g11,g31)(3)
kgr4=r23-median(g22,g24,g13,g33)(4)
kgr5=r41-median(g40,g42,g31)(5)
kgr6=r43-median(g42,g44,g33)(6)
其中,median()表示求中值函数。
同理,可以先从所述数据子块中选取蓝色b10、b12、b14、b30、b32和b34作为参考点,根据如下(8)–(14)式可以计算出平均蓝绿色差
kgb1=b10-median(g00,g20,g11)(8)
kgb2=b12-median(g02,g22,g11,g13)(9)
kgb3=b14-median(g04,g13,g24)(10)
kgb4=b30-median(g20,g40,g31)(11)
kgb5=b32-median(g22,g42,g31,g33)(12)
kgb6=b34-median(g24,g44,g33)(13)
获得平均色差
需要说明的是,当所述预检测像素为r时,分别计算所述3×3区域内各g像素的像素值与
需要说明的是,计算平均色差的主要目的是为了利用以预检测像素为中心3×3区域内的异色像素信息,去检测所述预检测像素是否为坏点。因此,可以理解的是,上述计算平均色差的方法仅为本发明中计算所述平均色差的一具体实施例。在具体实施中,还可以采用其它多种方法计算所述平均色差,具体方法不作限制。
在具体实施中,在基于所述颜色补偿后的数据子块,确定所述预检测像素是否为坏点时,可以先根据所述数据子块在各预设方向上的梯度值,确定所述数据子块所属的特征区域,再根据所述数据子块所属的特征区域,从所述颜色补偿后的数据子块的相应区域中,选取与所述预检测像素具有相同颜色的像素,接着从所选取的像素对应的像素值中分别选取最大像素值和最小像素值,最后根据预设的阈值确定所述预检测像素是否为坏点。
在本发明的一实施例中,为了确定所述5×5子块所属的特征区域,可以先按照式(15)–(18)分别计算水平方向的梯度值ih、垂直方向的梯度值iv、45°方向的梯度值id45和135°方向的梯度值id135:
ih=|g00+g04-2g02|+|r01-r03|+|b10+b14-2b12|+|g11-g13|+(15)|g40+g44-2g42|+|r41-r43|+|b30+b34-2b32|+|g31-g33|
iv=|g00+g40-2g20|+|b10-b30|+|r01+r41-2r21|+|g11-g31|+(16)|g04+g44-2g24|+|b14-b34|+|r03+r43-2r23|+|g13-g33|
id45=|g02+g20-2g11|+|b12-b30|+|r03-r21|+(17)|g24+g42-2g33|+|b14-b32|+|r23-r41|
id135=|g02+g24-2g13|+|b12-b34|+|r01-r23|+(18)|g20+g42-2g31|+|b10-b32|+|r21-r43|
获得这四个方向的梯度值后,若ih<flat_th、iv<flat_th、id45<flat_th和id135<flat_th,则该所述5×5子块为平坦区,否则为非平坦区,其中,flat_th为平坦区阈值。
在本发明的一实施例中,当所述5×5子块为平坦区时,可以在以所述预检测像素为中心5×5环上区域内,选取与所述预检测像素具有相同颜色的像素,即选取像素{g00,g02,g04,g20,g24,g40,g42,g44},再从其中选取最大像素值为ymax和最小像素值为ymin。
当所述5×5子块为非平坦区时,在检测所述预检测像素g22是否为坏点时,离预检测像素g22越近的像素点参考意义就越大,因此可以选择与预检测像素相邻的像素g22进行比较,可靠性会越高,保护图像细节能力越强。因此,在本发明的一实施例中,当所述5×5子块为非平坦区时,可以在以所述预检测像素为中心3×3环上,选取与所述预检测像素具有相同颜色的像素,即选取像素{g11,g12,g13,g21,g23,g31,g32,g33}中的最大值为ymax和最小值为ymin。
最后,根据预设的阈值t以及计算得到的最大值ymax和最小值ymin,检测所述预检测像素g22是否为坏点。具体地,当g22∈[ymin-t,ymax+t]时,确定所述预检测像素g22为非坏点,否则确定所述预检测像素g22为坏点。其中,所述预设阈值t可以由本领域人员自行设定。
由上述内容可以看出,本发明实施例中数字图像的坏点检测方法,根据色差原理,计算出预检测像素周围小区域内的平均红绿色差和平均蓝绿色差,进而可以利用平均色差去补偿预检测像素周围的相邻异色像素值,从而对应得到所述预检测像素周围的相邻异色像素处所缺失的颜色分量,并利用所述所缺失的颜色分量对所述预检测像素是否为坏点进行检测。由于色差信息可以更加准确地反映预检测像素与周围区域像素点的差异,因此可以使得坏点检测的误检率更低,检测的准确性更高。
本发明实施例还提供了一种数字图像坏点的校正方法。下面参照图3,对所述方法进行详细介绍。
所述方法可以包括如下步骤:
步骤31,检测预检测像素是否为坏点;
在具体实施中,可以采用上述数字图像的坏点检测方法来检测所述预检测像素是否为坏点。
当检测到所述预检测像素为非坏点时,直接输出结果,否则,继续执行下面步骤,直至流程结束。
步骤32,选择与所述预检测像素所在的特征区域对应的校正方式,对所述预检测像素进行校正。
下面结合图2,对步骤31及32进行详细说明:
当采用上述坏点检测方法判断出预检测像素g22为坏点时,可以先按照式(15)–(18)分别计算水平方向的梯度值ih、垂直方向的梯度值iv、45°方向的梯度值id45和135°方向的梯度值id135,再根据平坦区阈值flat_th将所述5×5子块区域判定为平坦区,还是非平坦区。
若所述区域为平坦区,则使用如下(19)式,对预检测像素g22的像素值进行校正:
若所述区域为非平坦区,则可以预设的边缘区阈值edge_th,判断所述区域是水平边缘区、垂直边缘区、45°方向边缘区、135°方向边缘区,还是其他纹理区。具体实施过程如下:
若iv>ih+edge_th,则判定所述区域为水平边缘区。此时,可以使用如下(20)式,对预检测像素g22的像素值进行校正:
若ih>iv+edge_th,则判定该区域为垂直边缘区。此时,可以使用如下(21)式,对预检测像素g22的像素值进行校正:
若id135>id45+edge_th,则判定该区域为45°方向边缘区。此时,可以使用如下(22)式,对预检测像素g22的像素值进行校正:
若id45>id135+edge_th,则判定该区域为135°方向边缘区。此时,可以使用如下(23)式,对预检测像素g22的像素值进行校正:
除了平坦区及各边缘区之外,其他情况下都判定为纹理区。当坏点g22处于纹理区时,校正方式为:若g22>ymax+t,则g22=ymax;若g22<ymin-t,则g22=ymin。
需要说明的是,确定所述预检测像素所在的特征区域是平坦区、边缘区还是纹理区的步骤,可以检测所述预检测像素是否为坏点的过程中执行,也可以在确定所述预检测像素为坏点后再执行,还可以在检测所述预检测像素是否为坏点前执行。具体执行时间不受限制,只要在确定所述预检测像素为坏点后,选择与所述预检测像素所在的特征区域对应的校正方式,对所述预检测像素进行校正即可。
另外,在具体实施中,每个特征区域所对应的校正方式不限于上述实施例中所列举的校正方式,还可以采用其他校正方式对所述预检测像素进行校正,此处不作限制。
为了使本领域技术人员更好地理解和实现本发明,以下分别对上述方法对应的装置进行详细描述。
本发明实施例提供了一种数字图像坏点的检测装置。下面参照图4,对所述装置进行详细介绍:
如图4所示,所述装置可以包括:获取单元41,计算单元42,估计单元43以及确定单元44。其中:
所述获取单元41,适于获取以预检测像素为中心的数据子块。所述计算单元42,适于计算所述数据子块中红色r分量与绿色g分量之间的平均色差
在具体实施中,所述计算单元42可以包括:第一选取子单元421,估计子单元422,第一计算子单元423以及第二计算子单元424。其中,所述第一选取子单元421,适于从所述数据子块中选取预设数量的r像素和b像素。所述估计子单元422,适于利用中值滤波方法分别估计各所选取的r像素和b像素处所缺失的绿色分量。所述第一计算子单元423适于分别计算各所选取的r像素与对应的所述所缺失的g分量之间的差值,并对计算得到的差值求平均,得到
在具体实施中,所述估计单元43可以包括以下任意一种:第一估计子单元431,第二估计子单元432以及第三估计子单元433。其中:
所述第一估计子单元431,适于当所述预检测像素为g时,分别计算所述3×3区域内各r像素的像素值与
所述第二估计子单元432,适于当所述预检测像素为r时,分别计算所述3×3区域内各g像素的像素值与
所述第三估计子单元433,适于当所述预检测像素为b时,分别计算所述3×3区域内各r像素的像素值与
在具体实施中,所述确定单元44可以包括:第一确定子单元441,第二选取子单元442,第三选取子单元443以及第二确定子单元444。其中,所述第一确定子单元441适于根据所述数据子块在各预设方向上的梯度值,确定所述数据子块所属的特征区域。所述第二选取子单元442适于根据所述数据子块所属的特征区域,从所述颜色补偿后的数据子块的相应区域中,选取与所述预检测像素具有相同颜色的像素。所述第三选取子单元443适于从所选取的像素对应的像素值中分别选取最大像素值和最小像素值。所述第二确定子单元444适于根据预设的阈值确定所述预检测像素是否为坏点。
在具体实施中,所述数据子块所属的特征区域包括:平坦区及非平坦区。
在具体实施中,所述第二确定子单元444适于当所述预检测像素值在[ymin-t,ymax+t]内时,确定所述预检测像素为非坏点,否则确定所述预检测像素为坏点,其中,t所述预设阈值,ymin为从所选取的像素对应的像素值中选取的最小像素值,ymax为从所选取的像素对应的像素值中选取的最大像素值。
本发明实施例提供了一种数字图像坏点的校正装置(未示出)。所述装置可以包括:检测单元以及校正单元。其中,所述检测单元适于采用上述的数字图像坏点的检测装置,检测所述预检测像素是否为坏点。所述校正单元适于当确定所述预检测像素为坏点时,选择与所述预检测像素所在的特征区域对应的校正方式,对所述预检测像素进行校正。其中,所述预检测像素所在的特征区域包括:平坦区、边缘区以及纹理区。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:rom、ram、磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。