论文部分内容阅读
红眼是闪光灯摄影中常见的现象。近距离闪光灯的强光经过瞳孔照在视网膜后的微血管组织上,反射回红色的光线,会使实际成像的照片的人眼处呈现红色块状,这就是红眼发生的原因。红眼和一般人们所认知的眼睛颜色差别很大,往往被视为照片中的败笔,给摄影对象留下了遗憾。如何在照片中消除红眼不仅是有关厂商和摄影爱好者关心的问题而且也引起了图像处理研究人员的关注。简便有效的红眼消除方法,对于提高照片的质量,改善摄影的体验,是必要而有益的。
本文提出了一种在人脸检测的基础上自动消除数码照片中红眼的方法。整个方法分为三个部分:(1)人脸检测;(2)红眼检测;(3)红眼修正。
在人脸检测部分,从运算速度、鲁棒性等方面考虑,采用类哈尔特征提取人脸图像特征,基于AdaBoost方法挑选特征并构建多级分类器的目标检测方法,并采取了基于边缘特征的方法提高算法性能。同时选用了基于HSV空间阈值描述的肤色模型作为肤色判别方法验证人脸候选区域的有效性,以减少人脸检测部分的虚检区域。并引入直方图处理修正极端光照条件下的色偏,以提高肤色验证的鲁棒性。
在人脸区域确定之后,红眼检测部分的作用是在此类区域中找出红眼的精确位置。红眼的显著特征是颜色,根据RGB空间中R通道和其余两个通道的关系可以定义合适的红色度来描述红眼的颜色特征。在红眼现象中,根据红眼颜色和面积的不同,本文提出将其分为典型红眼和弱红眼两类分别处理。典型红眼和背景的颜色区分度较大,根据红色度值可以直接进行分割;弱红眼和背景的颜色区分度较小,分割红眼需要结合面积和红色度的信息。
得到红眼的准确位置后,红眼修正部分对红眼象素的RGB空间的三个通道分别进行调整,在降低R通道值的同时也对G通道和B通道作适当调节,使瞳孔区域呈现实际的颜色。最后对红眼区域边缘的象素做平滑操作,使瞳孔恢复自然的颜色。
在实验中,选取了一组红眼图像作为测试集,其中包括236个带有红眼的正面人脸,本方法正确检测并修正了202个人脸中的红眼,红眼消除的准确率是85.6%。同时,本方法在Pentium? 4 2.0G CPU,512M内存的计算机上,对800×600分辨率的图像进行红眼消除的平均时间为0.8秒。
实验结果证明,本文提出的方法能有效地消除数码照片中的红眼现象,并且具有较好的鲁棒性和快速性。