论文部分内容阅读
红眼是闪光灯摄影中常见的现象。因为人类视觉系统对周围环境亮度变化的反应速度有限,而闪光时间小于人类视觉系统的反应时间。所以,当近距离拍照时,闪光灯经过瞳孔照射在视网膜后面的微血管组织上,反射回来的红色光线会使实际成像的照片中人眼处呈现红色,这就是红眼产生的原因。在一些重要的场合,如果留影时产生红眼现象,会给人们留下遗憾。因此,如何消除红眼引起了一些图像处理公司和一些学者的关注。本文主要利用红眼的三个重要特征,提出了基于红色区域分割的自动红眼消除算法。这三个特征分别是:红眼呈现红色、眼睛一般情况下呈现类圆形和眼睛被皮肤区域包围。本文红眼消除算法的主要思想是:先找出图像中所有的红色区域;然后去除那些非红眼的红色区域,以确定红眼的位置;最后进行红眼消除。本文提出的红眼消除算法主要分为光照补偿、红眼定位和红眼修正三个部分。1)光照补偿部分。采用了自适应非线性光照补偿方法,该方法可以克服参照白光照补偿算法带来的缺陷。2)红眼定位部分。首先,对图像进行红色分割形成红色掩膜,并对红色掩膜进行数学形态学处理;然后,计算红色掩膜中每个连通区域的圆度,判断圆度是否在[0.85 1.15]区间内,这样可以去除那些非圆形的连通区域;最后,判断红色掩膜中剩下的连通区域是否被肤色区域所包围,就可以去除那些类圆形非红眼的红色连通区域,从而得到红眼掩膜。3)红眼修正部分。主要是在RGB色彩空间中对红眼区域像素的三个通道分别进行调整,降低红色通道R的同时,也对G通道和B通道作适当调节,使其看起来更加自然和真实。最后为了使修复后的眼睛看起来更加有层次感,需要对眼睛处进行平滑操作。本文以从网上找到的一组具有复杂背景的红眼图像作为测试数据库,对本文提出的算法进行了测试。该数据库包含71幅图像,166只红眼。应用本文的方法,红眼消除的准确率达到85.54%。测试结果表明,本文提出的方法可以有效地消除具有复杂背景的数码照片中的红眼,也具有较好的鲁棒性。