数字图像处理课题报告
——对照度不均图像增强后保留自然度的算法研究
组别:6组
课题组长:王秋红
课题成员:王秋红 邱念庭 吴纵横 胡军
报告撰写:胡军
摘要:图像增强在图像处理中起着重要作用。在各种增强算法中,Retinex算法能够有效地提高细节而被广泛采用。由于Retinex算法会取出环境光,同时对反射光不做限制,使得对非均匀环境光的自然图像处理后,图像显得不真实、不自然。然而,从人的视觉系统来说,图像的自然真实是非常重要的。为了保证图像自然的同时又能增强细节,论文中提出了一种新的增强算法。总的来说,论文包括三大部分。首先,提出亮度阶误差来衡量图像自然度的保留程度。其次,提出亮通滤波器可以把图像分解为反射部分和环境照射部分,这两部分分别决定图像细节和图像的自然度。第三,我们提出了一个双对数变换,其被用于平衡图像的细节和自然度。试验结果表明,对于环境光照射不均匀的图像,该算法不仅能加强细节,同时也能保留图像的自然度。
关键词:双对数变换;亮通滤波器;亮度阶误差;图像增强
一、 课题研究背景
有时出于某种特殊应用的考虑,需要对原始的图像进行增强。目前,已经提出了多种图像增强算法,例如:基础的Retinex算法、USM算法、直方图均衡算法等,图像增强算法被应用于天文学、生物学、计算机视觉等各种领域。其中,一部分图像增强算法能有效提高图像细节,但是会降低图像的自然性;而另一部分算法则以牺牲图像细节为代价来增强图像。
大多数基于Retinex理论的算法,都只是提取和增强了图像的反射分量,而去除掉了图像的照射分量,因此,这种方法可以明显增强图像的细节,但是因为去除了图像的照射分量,使图像失去了景深,影响图像的观感。事实上,照射分量不能简单的去除掉,并且要限制反射分量增强的程度。
基于USM的算法把图像分解为了高频部分和低频部分,分别对这两部分进行处理,算法中照顾到了低频部分,这样可以防止过度增强。但是USM算法最后只是将高频和低频简单的相加,最终的结果难以在细节和观感上得到平衡。
直方图均衡算法虽然简单却得到了广泛的应用。由于简单的直方图算法容易导致图像的过度增强,所以又提出了一些改进的直方图算法,如保留亮度、限制对比度等。保留亮度的直方图算法虽然能保留图像的强度,但是会损失细节。限制对比度的算法虽然能够抑制过度增强,但是对于不均匀照度图像的效果却不好。
为了提高图像的细节同时又保证图像的观感,提出了自然度保留的概念:在图像得到增强以后,图像的整体观感不会有太大改变,不会出现光晕、光斑等过增强的现象。论文中对这个概念做了调整,图像增强后整体观感不变,并且光源的方向也不发生改变。目前,对增强图像细节并保留自然度的问题,提出了一下算法,但是这些算法并不适用于照度不均匀的图像。
二、 课题研究分工
通过小组内讨论,我们把课题研究分为以下过程,前期搜集资料,搜索图像增强相关论文,我们经过筛选,选择一篇比较新的并且引用率较高的论文;接下来,小组内成员阅读论文,并在组内进行讨论,不断加深对论文的理解;最后,制作PPT并详细讲解算法,以及撰写课题研究报告。
我主要负责前期的资料准备,阅读论文并参与组内的讨论,以及撰写报告。
三、 课题研究内容
从不同的角度划分,一幅图像可以分解为不同的特征空间。比如:小波变换算法认为图像是由高频信息和低频信息组合而成的,基于Retinex理论的算法则把图像分解为照射分量和反射分量。总的来说,低频信息和照射分量反应图像的全局自然度,而高频信息和反射分量则代表图像的局部细节。所以在细节和自然度之间找到平衡点很重要,因为只保留大量的低频信息会淹没图像的局部细节,反之,只保留高频信息则会影响图像的观感。
因此,为了在增强图像细节的同时,保证图像的整体观感,新算法应该满足两个条件:第一,反射分量应该被控制在合适的范围之内([0,1]);第二,不同区域的照度分量变化幅度不能太大。
3.1 自然度保留程度的量化
由于图像质量评价和人类视觉系统相关,所以没有一种统一的评价方法能满足所有人的主观需求,大多数算法只是评价图像的几个重要的特征,比如:对比度,熵等,根据之前的分析,亮度阶对于衡量自然度的保留程度有重要作用,所以提出了LOE算法来评估图像的自然度。由于相邻的亮度阶代表了光源的方向和光的抖动程度,所以增强后图像的观感和图像的亮度阶密切相关,因此提出了LOE算法,代表原始图像,代表增强后的图像,图像的亮度用三个通道中亮度最大的来表示:
(1)
对于每一个像素点,图像增强前后,与该像素点相关的亮度阶的差别定义如下:
(2)
(3)
式中和分别代表图像的高度和宽度,是阶跃函数,代表异或操作。
LOE公式定义如下:
(4)
从LOE的定义可以看出,值越小,说明图像增强后,自然度保留地越好。为了减少计算量,一般会对图像进行下采样,采样后图像的尺寸用表示,下采样的比例通过公式计算得出,即:,同时用和替换和。
3.2 论文中提出的新算法
这一部分主要讲解新算法的具体步骤。首先,原始图像通过亮通滤波器分解为反射分量和照射分量;然后,对照射分量应用双对数变换;最后,将反射分量和变换后的照射分量合成为新图像,即增强后的图像。
3.2.1 亮通滤波器的定义
虽然很多算法都可以对照射分量进行估计,但是这些算法并没有考虑反射分量的取值范围(比如,通过SSR算法得到的反射分量,50%的值超过了1),而且会导致过度增强。新算法中的亮通滤波器能够限制反射分量在0到1的范围之内,亮通滤波器的基本思想是,灰度值为的像素会受到周围灰度值为的像素影响,并且这种影响与图像中灰度值和相邻的频率成正相关。
总的来说,对于不同的应用,灰度值相邻的形式有多种定义方式,由于这里的频率是一个统计值,并且在亮通滤波器中对其做了归一化处理,所以假设使用不同的灰度值相邻形式对结果影响不大。通过实验也表明分别采用4连通和8连通的形式,得到的结果差别不大。为了简单方便,这里把相邻形式设置为4连通的形式:
(5)
设处的灰度值为,用代表灰度值成对出现的个数,整幅图像中灰度值成对出现的频率可表示为:
(6)
由于会收到噪声以及一些抖动的干扰,所以用局部平均来代替:
(7)
其中代表取平均的局部窗的大小,为了能够滤除噪声,同时保证频率的趋势,不能取太大,也不能取太小。此外,一些图像只占据了很窄的灰阶范围,所以应该设置在相应的灰阶范围内,公式如下:
(8)
亮通滤波器,通过与频率正相关的权值进行加权,公式如下:
(9)
其中代表以像素为中心的局部图像块,论文中把图像块的大小设置为15x15,另外阶跃函数保证了只考虑图像块中比中心点亮的像素,归一化因子保证各权值之和为1:
(10)
3.2.2 使用亮通滤波器分解图像
根据Retinex理论,观察到的图像由照射分量和反射分量组成:
(11)
式中指像素的三个通道中通道的亮度,指反射分量,指照射分量(光线投射在物体表面的强度)。
多数中心/环绕Retinex算法使用高斯滤波器或者双边滤波器估计照射分量,经常会导致照射分量的强度比反射光的要小,这就意味着反射分量会大于1,说明反射的光比接受到的光要多,这是不合理的。基于每个像素的照射分量是局部最大值这样一个假设,可以通过亮通滤波器来估计照度。为了处理简单化,同时假设每个像素的三个通道拥有同样的照射分量。
与传统滤波器不同,我们只考虑比中心点亮的像素值,与暗的区域相比,亮的区域跟接近照射分量,通过公式(1)得到的作为照射分量的粗略估计,再通过亮通滤波器对其加以提炼:
(12)
然后,从图像中移除照射分量就得到了反射分量:
(13)
图5 图像分解举例 (a)原始图像 (b)照射分量 (c)反射分量
从图5中可以看出,经过亮通滤波器分解得到图5(b)和图5(c),分别为照射分量和反射分量,他们分别反映了图像的自然度和细节,同时也印证了之前的分析。
3.2.3 用双对数变换映射照射分量
由于映射后的照射分量会和反射分量合成为增强图像,所以照射分量不能抑制反射分量中的细节,同时保留整体的亮度层次感。受直方图规定化的启发,可以采用直方图规定化来映射照射分量,接下来的任务就是寻找一个合适的函数来规定化直方图,根据以往经验,对数函数适应于大多数图像。
(14)
其中是一个正数,一般设为1。
但是通过直方图规定化的处理后的图像强度看上去没有差别。事实上,对于不同强度的图像通过映射后应该有轻微变化。为了使对数型的直方图规定化可以让映射后的照度变的更亮,根据照射分量中灰度值的分布,提高了低灰度值的水平。实验结果也表明,加权后的函数效果更好,因此采用加权的直方图,:
(15)
(16)
其中是冲激函数,改进的直方图不仅考虑了像素数,同时还考虑到了像素的灰度值。
根据累计密度函数的定义,加权直方图的累计密度函数定义为:
(17)
为了方便,规定化后的直方图的累计密度函数,,定义如下:
(18)
(19)
其中是范围内的非负整数,是一个很小的正数。
根据直方图规定化的定义,双对数变换的目的就是寻找一个灰度值满足:
(20)
通过下式可以得到的值:
(21)
最终,映射后的照射分量可以通过双对数变换得到:
(22)
3.2.4 照射分量与反射分量的合成
通过以上叙述,照射分量的剧烈抖动会影响图像细节的显示,它又是保留自然度的关键,为了增强图像细节,同时保留图像的观感,所以需要对照射分量做映射。
把反射分量和照射分量合成到一起,就得到了最终的增强的图像:
(23)
由于映射后的照射分量的亮度层次与原始图像的基本一致,所以很容易证明反射分量是1的像素,其亮度阶没有改变。此外,根据不同色彩空间(比如:HIS,HSV)中色调的定义,像素的色调依赖于R,G,B三通道的比值,因为图像在增强前后它们比值没有改变,所以新算法能够保证图像的色调不发生变化。
四、 结论与建议
这篇论文中提出的新算法不仅可以有效的增强图像的细节,同时又能保证增强后的图像有不错的自然度。其中LOE算法对于图像自然度的客观评价拥有不错的效果,通过实验也表明使用新算法增强后的图像能够获得不错的观感,增强后的图像比较真实自然。但是,因为算法没有考虑不同场景之间照度的联系,所以当新算法应用到视频上时会出现闪烁的现象,这也是为了算法改进的方向。
五、 参考文献
[1] S. Wang, J. Zheng, H.M. Hu, B. Li, Naturalness Preserved Enhancement Algorithm for Non-uniform Illumination Images, IEEE Transaction on Image Processing,Vol.22, No.9,May. 2013
第二篇:数字图像处理报告 图像二值化
数字图像处理实验报告
实验二 灰度变换
实验目的:通过实验掌握灰度变换的基本概念和方法
实验内容:
掌握基本的灰度变换:图像反转、对数变换、幂次变换和二值化
1.图像反转、对数变换、幂次变换
I=imread('fengjing.jpg');
J=im2double(I);
subplot(2,3,1),imshow(J); title('原图');
K=255-I;
subplot(2,3,2),imshow(K); title('图象反转 ');
L=3.*log(1+J);
subplot(2,3,3),imshow(L);title('图象对数,系数为3');
M=10.*log(1+J);
subplot(2,3,4),imshow(M);title('图象对数,系数为10');
N=10.*(J.^0.2);
subplot(2,3,5),imshow(N);title('图象指数变换,γ=0.2');
P=10.*(J.^2.5);
subplot(2,3,6),imshow(P);title('图象指数变换,γ=2.5');
2.图象二值化
方法一:
I=imread('fengjing.jpg'); % 确定大小
subplot(1,2,1),imshow(I);title('原图象');
[m,n]=size(I);
for i=1:m
for j=1:n
if I(i,j)<128
I(i,j)=0;
else I(i,j)>=128 & I(i,j)<256
I(i,j)=255;
end
end
end
subplot(1,2,2),imshow(I);title('图象二值化');
方法二:
I=imread('fengjing.jpg'); % 确定大小
subplot(1,2,1),imshow(I);title('原图象');
J=find(I<128);
I(J)=0;
J=find(I>=128);
I(J)=255;
title('图像二值化(阈值为128)');
subplot(1,2,2),imshow(I);title('图象二值化');