一种低照度图像增强方法和装置
技术领域
本发明涉及图像处理技术领域,尤其涉及一种低照度图像增强方法和装置。
背景技术
光照度较低时,监控视频效果往往较差。很多发生在夜晚的案件,在调看视频监控时,由于监控视频效果差,不能如实还原犯罪分子的真实面貌,给案件的侦破带来困难。因此,如何能够做到在光照度低时,仍能监看到监控视频的细微特征,快速有效的识别出犯罪分子的面貌特征,是一个亟待解决的问题。
常见的图像增强处理方法包括:以直方图均衡化法为代表的灰度变换法、基于照明-反射模型的同态滤波法、梯度域增强方法以及retinex增强方法等。以直方图均衡化法为代表的灰度变换法能使图像灰度分布更均匀,并增强图像对比度,但它没有考虑图像的频率信息以及细节信息,容易产生过增强图像。基于照明-反射模型的同态滤波法将图像分为高、低频两部分,再进行滤波达到增强图像对比度同时压缩图像动态范围的目的,但会出现过增强现象,对高光区、阴影增强效果差。梯度域增强方法则对原图像的梯度进行处理,通过减小图像梯度值压缩图像动态范围,增大局部梯度值来增强图像边缘。缺点是会使图像在一定程度上锐化,并且在梯度域中重建图像需要一定的数值算法,不适合实时使用。Retinex增强方法使用高斯平滑函数估计原图像的亮度分量,应用光照补偿方法逼近反射图像,能在保持图像亮度的同时增强图像暗处的信息,与其它的图像增强算法相比,Retinex具有锐化、动态范围压缩大、颜色恒常、色彩保真度高等优点,但存在算法复杂而运算量大的问题,难以实时处理高清图像的缺陷。
发明内容
有鉴于此,本发明要解决的技术问题是提供一种低照度图像增强方法和装置,以解决目前低照度图像增强算法复杂而运算量大,难以实时处理高清图像的技术问题。
本发明解决上述技术问题所采用的技术方案如下:
根据本发明的一个方面,提供的一种低照度图像增强方法包括以下步骤:
计算输入的原始图像的灰度图;
计算灰度图的精确边缘图:对所述灰度图的明、暗像素点分别采用不同的边缘检测算子计算梯度幅值,获得粗略边缘图;对所述粗略边缘图进行去噪、修补和细化,得到精确边缘图;
根据灰度图和精确边缘图计算光照图:在对数域上,将所述灰度图的每个像素点的灰度值减去所述精确边缘图中对应像素点的灰度值,得到对数域上的光照图;
调整光照图的对比度;
根据精确边缘图和对比度调整后的光照图合成增强后的灰度图:在对数域,将所述精确边缘图的每个像素点的灰度值加上对比度调整后的光照图中对应像素点的灰度值,得到了对数域上的亮度增强后的灰度图;
根据增强后的灰度图计算增强后的彩色图像并输出。
优选的,对灰度图的明、暗像素点分别采用不同的边缘检测算子计算梯度幅值,获得粗略边缘图包括:
计算灰度图在x、y方向上的偏导数Gx、Gy;
根据偏导数Gx、Gy计算梯度图G;
遍历梯度图G,当像素点的梯度幅值大于预设的梯度阈值时,则该像素点判定为边缘点,否则判定为非边缘点,得到粗略边缘图;
其中,当像素点(x,y)的灰度值Iin(x,y)大于预设的灰度阈值时,采用常规的边缘检测算子计算偏导数Gx、Gy;当像素点(x,y)的灰度值Iin(x,y)小于或等于灰度阈值时,采用如下边缘检测算子计算偏导数Gx、Gy:
其中,Iin(x,y)表示灰度图Iin中的像素点(x,y)的灰度值。
优选的,对修补之后的粗略边缘图进行细化,得到精确边缘图包括:
初始化I'edge所有的像素点均为0;
采用以下方法对像素点重新赋值:
1)如果Iedge(x,y)为0、且Iedge(x+1,y)为1,则Iedge'(x+M,y)为1;
2)如果Iedge(x,y)为0、且Iedge(x,y+1)为1,则I'edge(x,y+M)为1。
其中,(x,y)为当前像素点,M表示修补边缘图时用到的模板的半宽或半高,Iedge表示修补后的粗略边缘图,I'edge表示精确边缘图。
优选的,调整光照图的对比度包括:
剔除光照图L中灰度值两端比例小于预设的比例值的像素点;
计算剩余的像素点的平均灰度值;
将剩余的像素点每一个像素点的灰度值分别减去平均灰度值,得到灰度差值图;
将灰度差值图中每个像素点的灰度值分别乘以调整因子,其中,调整因子取0至2之间的数值;
将灰度差值图中每个像素点的调整后的灰度值分别加上平均灰度值,得到对比度调整后的光照图。
根据本发明的另一个方面,提供的一种低照度图像增强装置包括:
灰度图计算模块,用于计算输入的原始图像的灰度图;
精确边缘图计算模块,用于对所述灰度图的明、暗像素点分别采用不同的边缘检测算子计算梯度幅值,获得粗略边缘图;对所述粗略边缘图进行去噪、修补和细化,得到精确边缘图;
光照图计算模块,用于在对数域上,将所述灰度图的每个像素点的灰度值减去所述精确边缘图中对应像素点的灰度值,得到对数域上的光照图;
对比度调整模块,用于调整光照图的对比度;
图像增强模块,用于在对数域,将所述精确边缘图的每个像素点的灰度值加上对比度调整后的光照图中对应像素点的灰度值,得到了对数域上的亮度增强后的灰度图;
输出模块,用于根据增强后的灰度图计算增强后的彩色图像并输出。
优选的,对比度调整模块包括:
过滤单元,用于去除光照图中灰度值两端比例小于预设的比例值的像素点;
灰度均值计算单元,用于计算剩余的像素点的平均灰度值;
差值图计算单元,用于将剩余的像素点每一个像素点的灰度值分别减去平均灰度值,得到灰度差值图;
调整单元,用于将灰度差值图中每个像素点的灰度值分别乘以调整因子,其中,调整因子取0至2之间的数值;
校正单元,将灰度差值图中每个像素点的调整后的灰度值分别加上平均灰度值,得到对比度调整后的光照图。
与现有技术相比,本发明实施例的低照度图像增强方法和装置,基于图像是由光照信息、物体边缘信息以及随机噪声三个部分组成的关键事实,先计算精确边缘图,再根据灰度图和精确边缘图计算光照图,然后保持精确边缘图不变、调整光照对比度,合成增强的灰度图,进而得到增强后的彩色图像,算法复杂度低、运算量小,不仅能实时处理高清图像,而且能降低对硬件的性能要求。
附图说明
图1为本发明实施例提供的一种低照度图像增强方法的流程图。
图2为本发明优选实施例提供的一种精确边缘图计算方法的流程图。
图3为本发明优选实施例提供的一种粗略边缘图计算方法的流程图。
图4为本发明优选实施例提供的一种光照图对比度调整方法的流程图。
图5为本发明实施例提供的一种低照度图像增强装置的模块结构图。
图6为本发明优选实施例提供的一种精确边缘图计算模块的结构示意图。
图7为本发明优选实施例提供的一种对比度调整模块的结构示意图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一
如图1所示,本发明实施例提供的一种低照度图像增强方法,包括以下步骤:
S10、计算输入的原始图像的灰度图。
举例来说,可以采用Iin=0.299*rin+0.578*gin+0.144*bin来计算灰度图Iin,其中,Iin表示灰度图,rin、gin、bin分别表示输入图像的三个彩色通道R、G、B的灰度值。
需要说明地是,当输入图像的原始图像不是R、G、B空间图像时,需先将其转换成R、G、B空间。
S20、计算灰度图的精确边缘图。
具体地,当外界光线非常低时,拍摄到的图像整体比较暗,物体边缘与其周围像素点的差值非常低,用常规的边缘检测方法会产生弱边缘丢失问题。故本步骤S20优选为灰度图的对明、暗像素点分别采用不同的算子来计算其梯度幅值,得到粗略边缘图,然后对粗略边缘图进一步处理,获取精确边缘图Iedge'。
S30、根据灰度图和精确边缘图计算光照图。
具体地,本步骤S30可以采用:在对数域上,将灰度图的每个像素点的灰度值减去精确边缘图中对应像素点的灰度值,得到对数域上的光照图L。即:
logL=logIin-logIedge'
S40、调整光照图的对比度,得到调整对比度后的光照图。
S50、根据精确边缘图和对比度调整后的光照图合成增强后的灰度图。
具体地,本步骤S50可以采用:在对数域,将精确边缘图的每个像素点的灰度值加上对比度调整后的光照图中对应像素点的灰度值,得到了对数域上的亮度增强后的灰度图Iout,即:
logIout=logL'+logIedge'
这样,通过图像边缘信息I'edge保持不变,从而在调整对比度的同时较好地保持了输入图像的细节信息。
S60、根据增强后的灰度图计算增强后的彩色图像并输出。
具体地,采用针对每个像素点分别计算出三个彩色通道rout、gout、bout的灰度值,从而得到增强后的彩色图像。
本实施例中,基于图像是由光照信息、物体边缘信息以及随机噪声三个部分组成的关键事实,先计算精确边缘图,再根据灰度图和精确边缘图计算光照图,然后保持精确边缘图不变、调整光照对比度,合成增强的灰度图,进而得到增强后的彩色图像,算法复杂度低、运算量小,不仅能实时处理高清图像,而且能降低对硬件的性能要求。
实施例二
如图2所示,本发明优选实施例提供的一种精确边缘图计算方法,包括以下步骤:
201、对灰度图的明、暗像素点分别采用不同的边缘检测算子计算梯度幅值,获得粗略边缘图。
请参阅图3所示的粗略边缘图计算方法的流程图,本步骤S201进一步包括以下步骤:
S2011、计算灰度图在X轴和Y轴上的偏导数Gx、Gy
(a)当像素点(x,y)的灰度值Iin(x,y)大于预设的灰度阈值时,采用常规的边缘检测算子计算偏导数Gx、Gy,比如:
Gx=Iin(x+1,y-1)+2*Iin(x+1,y)+Iin(x+1,y+1)-
Iin(x-1,y-1)-2*Iin(x-1,y)-Iin(x-1,y+1)
Gy=Iin(x-1,y+1)+2*Iin(x,y+1)+Iin(x+1,y+1)-
Iin(x-1,y-1)-2*Iin(x,y-1)-Iin(x+1,y-1)
其中,由实验结果及用户需求来决定,一般取值是50。
(b)当像素点(x,y)的灰度值Iin(x,y)小于或等于阈值时,采用如下边缘检测算子计算偏导数Gx、Gy:
其中,Iin(x,y)表示灰度图Iin中的像素点(x,y)的灰度值。
上述公式是利用像素点(x,y)周围八邻域(即3*3块)计算的,根据其他尺寸邻域计算梯度公式可以根据以上公式推导得到,都在本发明保护范围内。
S2012、根据偏导数计算梯度图。
具体地,为简化计算,梯度图G中每个像素点的幅度值用偏导数Gx、Gy的绝对值之和来计算,如采用以下公式计算像素点(x,y)的梯度幅值:
G(x,y)=|Gx(x,y)|+|Gy(x,y)|
S2013、遍历梯度图,当像素点的梯度幅值大于预设的梯度阈值时,则该像素点判定为边缘点,否则判定为非边缘点,得到粗略边缘图。
具体地,遍历整幅梯度图像G,当像素点的梯度幅值G大于预设的阈值TG时,则该点判为边缘点,取值为1,否则,取值为0,得到的二值图即为粗略边缘图。其中,TG的取值根据实验结果及需求确定。
S202、对粗略边缘图进行去噪。
具体地,由于导数对噪声非常敏感,因此粗略边缘图包括噪声,而噪声一般为孤立点,为了省掉不必要的计算,在粗略边缘图的二值图中,仅对值为1的点进行判断。统计以值为1的点为中心的小区域内非0点所占的比例,若比例小于预设的阈值Tnoise,则该点为噪声,应剔除,该点的值由1变为0。Tnoise的取值由实验结果及实际需求决定。
S203、对去噪之后的粗略边缘图进行修补。
具体地,去噪之后的粗略边缘图通常是不完整的,因此需要进行修补。为了省掉不必要的计算,仅对值为0的点进行处理。如果以某一值为0的像素点为中心、模板尺寸为(2*M+1)*(2*M+1)的邻域内非0点的个数超过阈值Tedge时,则将该点的值由0变为1。遍历去噪之后的粗略边缘图的二值图,做如上处理,即得到修补之后的粗略边缘图Iedge。其中,Tedge的取值由实验结果及实际需求决定,M表示模板尺寸的半宽或半高,一般取值是1或2。
S204、对修补之后的粗略边缘图进行细化,得到精确边缘图。
具体来说,先初始化I'edge所有的像素点均为0;然后采用以下方法给像素点重新赋值:
1)如果Iedge(x,y)为0、且Iedge(x+1,y)为1,则Iedge'(x+M,y)为1;
2)如果Iedge(x,y)为0、且Iedge(x,y+1)为1,则I'edge(x,y+M)为1。
其中,(x,y)为当前像素点,M表示修补边缘图时用到的模板的半宽或半高,Iedge表示修补后的粗略边缘图,I'edge表示精确边缘图。
本发明实施例中,针对环境照度非常低时,边缘模糊(物体边缘与其周围像素点的灰度值都非常低,而且两者的差值也非常低),且图像上叠加有较大的噪声,有时甚至将图像自身淹没,采用常规的边缘检测方法将会出现漏检现象的问题,通过对明、暗像素点分别采用不同的算子来计算其梯度幅值,得到粗略边缘图,对粗略边缘图进行处理,获得精确边缘图,更好地提高了图像增强的效果。
实施例三
如图4所示,本发明优选实施例提供的一种光照图对比度调整方法,包括以下步骤:
S401、剔除光照图中灰度值两端比例小于预设的比例值的像素点。
具体地,剔除灰度值所占比例很小的像素点可以进一步消除噪声的影响,预设的比例值一般取1%的像素点。
S402、计算剩余的像素点的平均灰度值。
S403、将剩余的像素点每一个像素点的灰度值分别减去平均灰度值,得到灰度差值图。
S404、将灰度差值图中每个像素点的灰度值分别乘以调整因子。
其中,调整因子取0至2之间的数值。
S405、将灰度差值图中每个像素点的调整后的灰度值分别加上平均灰度值,得到对比度调整后的光照图。
本实施例中,通过在保持精确边缘图不变的情况下,在调整光照对比度的同时,能较好的保持输入的原始图像的细节信息。
实施例四
如图5所示,本发明实施例提供的一种低照度图像增强装置,包括以下模块:
灰度图计算模块10,用于计算输入的原始图像的灰度图Iin。
精确边缘图计算模块20,用于Iedge'对所述灰度图Iin的明、暗像素点分别采用不同的边缘检测算子计算梯度幅值,获得粗略边缘图;对所述粗略边缘图进行去噪、修补和细化,得到精确边缘图Iedge'。
光照图计算模块30,用于在对数域上,将所述灰度图Iin的每个像素点的灰度值减去所述精确边缘图Iedge'中对应像素点的灰度值,得到对数域上的光照图L。
对比度调整模块40,用于调整光照图L的对比度,得到L'。
图像增强模块50,用于在对数域,将所述精确边缘图Iedge'的每个像素点的灰度值加上对比度调整后的光照图L'中对应像素点的灰度值,得到了对数域上的亮度增强后的灰度图Iout。
输出模块60,用于根据增强后的灰度图Iout计算增强后的彩色图像并输出。
具体来说,灰度图计算模块10可以采用Iin=0.299*rin+0.578*gin+0.144*bin来计算灰度图Iin,其中,rin、gin、bin分别是输入的三个彩色通道(当输入图像的原始图像不是R、G、B空间图像时,需先将其转换成R、G、B空间)。
精确边缘图计算模块20优选为灰度图的对明、暗像素点分别采用不同的算子来计算其梯度幅值,得到粗略边缘图,然后对粗略边缘图进一步处理,获取精确边缘图。
光照图计算模块30具体用于:在对数域上,将灰度图Iin的每个像素点的灰度值减去精确边缘图Iedge'中对应像素点的灰度值,得到对数域上的光照图L。
图像增强模块50具体用于:在对数域,将精确边缘图Iedge'的每个像素点的灰度值加上对比度调整后的光照图L'中对应像素点的灰度值,得到了对数域上的亮度增强后的灰度图Iout。
输出模块60采用针对每个像素点分别计算出三个彩色通道rout、gout、bout的灰度值,从而得到增强后的彩色图像。
本实施例中,基于图像是由光照信息、物体边缘信息以及随机噪声三个部分组成的关键事实,先计算精确边缘图,再根据灰度图和精确边缘图计算光照图,然后保持精确边缘图不变、调整光照对比度,合成增强的灰度图,进而得到增强后的彩色图像,算法复杂度低、运算量小,不仅能实时处理高清图像,而且能降低对硬件的性能要求。
实施例五
如图6所示,本发明优选实施例提供的一种精确边缘图计算模块20,包括以下单元:
粗略边缘图计算单元201,用于对灰度图的明、暗像素点分别采用不同的边缘检测算子计算梯度幅值,获得粗略边缘图。
去噪单元202,用于对粗略边缘图进行去噪。
修补单元203,用于对去噪之后的粗略边缘图进行修补。
细化单元204,用于对修补之后的粗略边缘图进行细化,得到精确边缘图。
优选地,粗略边缘图计算单元201具体用于:计算灰度图在X轴和Y轴上的偏导数Gx、Gy;根据偏导数计算梯度图;遍历梯度图,当像素点的梯度幅值大于预设的梯度阈值时,则该像素点判定为边缘点,否则判定为非边缘点,得到粗略边缘图。
其中,当像素点(x,y)的灰度值Iin(x,y)大于预设的灰度阈值时,采用常规的边缘检测算子计算偏导数Gx、Gy,比如:
Gx=Iin(x+1,y-1)+2*Iin(x+1,y)+Iin(x+1,y+1)-
Iin(x-1,y-1)-2*Iin(x-1,y)-Iin(x-1,y+1)
Gy=Iin(x-1,y+1)+2*Iin(x,y+1)+Iin(x+1,y+1)-
Iin(x-1,y-1)-2*Iin(x,y-1)-Iin(x+1,y-1)
其中,由实验结果及用户需求来决定,一般取值是50。
当像素点(x,y)的灰度值Iin(x,y)小于或等于阈值时,采用如下边缘检测算子计算偏导数Gx、Gy:
其中,Iin(x,y)表示灰度图Iin中的像素点(x,y)的灰度值。
去噪单元202具体用于:统计以值为1的点为中心的小区域内非0点所占的比例,若比例小于预设的阈值Tnoise,则该点为噪声,应剔除,该点的值由1变为0。其中,Tnoise的取值由实验结果及实际需求决定。
修补单元203具体用于:以某一值为0的点为中心、模板尺寸为(2*M+1)*(2*M+1)的邻域内非0点的个数超过阈值Tedge时,则将该点的值由0变为1。遍历去噪之后的粗略边缘图的二值图,做如上处理,即得到Iedge。Tedge的取值由实验结果及实际需求决定,M表示修补模板的半宽或半高。
细化单元204具体用于:先初始化I'edge所有的像素点均为0;然后采用以下方法给像素点重新赋值:
1)如果Iedge(x,y)为0、且Iedge(x+1,y)为1,则Iedge'(x+M,y)为1;
2)如果Iedge(x,y)为0、且Iedge(x,y+1)为1,则I'edge(x,y+M)为1。
其中,(x,y)为当前像素点,M表示修补边缘图时用到的模板的半宽或半高,Iedge表示修补后的粗略边缘图,I'edge表示精确边缘图。
本发明实施例中,针对环境照度非常低时,图像对比度低,边缘也模糊(物体边缘与其周围像素点的灰度值都非常低,而且两者的差值也非常低),且图像上叠加有较大的噪声,有时甚至将图像自身淹没,采用常规的边缘检测方法将会出现漏检现象的问题,通过对明、暗像素点分别采用不同的算子来计算其梯度幅值,得到粗略边缘图,对粗略边缘图进行处理,获得精确边缘图,更好地提高了图像增强的效果。
实施例六
如图7所示,本发明优选实施例提供的对比度调整模块40,包括以下单元:
过滤单元401,用于去除光照图中灰度值两端比例小于预设的比例值的像素点;
灰度均值计算单元402,用于计算剩余的像素点的平均灰度值;
差值图计算单元403,用于将剩余的像素点每一个像素点的灰度值分别减去平均灰度值,得到灰度差值图;
调整单元404,用于将灰度差值图中每个像素点的灰度值分别乘以调整因子,调整因子取0至2之间的数值;
校正单元405,用于将灰度差值图中每个像素点的调整后的灰度值分别加上平均灰度值,得到对比度调整后的光照图。
本实施例中,通过在保持精确边缘图不变的情况下,在调整光照对比度的同时,能较好的保持输入的原始图像的细节信息。
需要说明的是,上述方法实施例一、二、三中的技术特征在装置实施例四、五、六中均能对应适用,这里不再重述。
本发明提供的低照度图像增强方法和装置,基于图像是由光照信息、物体边缘信息以及随机噪声三个部分组成的关键事实,先计算精确边缘图,再根据灰度图和精确边缘图计算光照图,然后保持精确边缘图不变、调整光照对比度,合成增强的灰度图,进而得到增强后的彩色图像,算法复杂度低、运算量小,不仅能实时处理高清图像,而且能降低对硬件的性能要求。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来控制相关的硬件完成,所述的程序可以在存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。本领域技术人员不脱离本发明的范围和实质,可以有多种变型方案实现本发明,比如作为一个实施例的特征可用于另一实施例而得到又一实施例。凡在运用本发明的技术构思之内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。