一种基于遗传算法的人脸图像面部对称轴检测方法

文档序号:31448938发布日期:2022-09-07 12:43阅读:49来源:国知局
一种基于遗传算法的人脸图像面部对称轴检测方法

1.本发明属于图像处理与图像理解技术领域,具体涉及一种基于遗传算法的人脸图像面部对称轴检测方法。


背景技术:

2.对称性在视觉特征的描述中是一个非常重要的性质与特征,对称轴检测技术在特征提取、目标识别、残缺检测等领域都有极为广泛的应用。在对面部图像的对称轴进行检测过程中,面临着复杂程度高、结果稳定性差、干扰因素多(肤色、背景、光照条件)等诸多挑战。目前可用于面部图像对称轴检测的方法主要有三类:一类是基于数学模型的对称轴检测方法,如模式匹配法、优化搜索法等,这一类方法所存在的问题是在检测的过程中容易受到图像中无关因素的影响从而影响检测结果;一类方法是基于统计的检测方法,如基于小波的纹理与颜色直方图的检测方法,此类方法在检测过程中的问题是计算量极大,在检测分辨率较高的图像时需要消耗大量的内存与时间;另一类是基于深度学习的检测方法,如prs-net、srn等,这一类方法存在的问题是需要大量的先验知识,并且未能考虑到面部对称轴的特性,搜索空间大造成检测效率低。现有的方法中存在对称轴检测方法应用于面部对称轴检测时会出现许多的问题与不足,如受到肤色、背景、光照条件等因素的影响而使得检测结果很不稳定;或者是方法的计算量过大从而导致内存消耗大、检测时间长甚至程序崩溃等情况;或者是检测方法未能充分考虑到面部对称轴的一些特性而导致搜索空间大、检测效率低的情况。因此,这些方法在面部图像对称轴检测方面的效果并不尽如人意。


技术实现要素:

3.本发明的目的在于克服对称轴检测算法在进行面部对称轴检测时效果不理想而提供一种基于遗传算法的面部对称轴检测方法。
4.本发明的目的通过如下技术方案来实现:
5.步骤1.图像预处理;
6.步骤2.设计染色体编码;
7.步骤3.建立初始化种群;
8.步骤4.设计适应度函数;
9.步骤5.定义遗传算子。
10.进一步地,步骤1中将标准的rgb格式人脸面部图像作为输入,需要将其转换成为hsv 颜色空间以进行后续的操作,转换公式为:
[0011][0012]
[0013][0014][0015]
其中h、s、v、r、g、b表示图像对应的各个通道的值;将得到的图像按照h通道进行前景提取,然后再对图像进行裁剪,防止无关区域对检测结果的干扰。
[0016]
进一步地,步骤2中遗传算法的种群为一系列与图像上下两端相交的直线,个体为其中的某一条直线,个体的染色体采用实数编码的方式,取个体与图像上下两端交点的横坐标值。
[0017]
进一步地,步骤3中给初始化种群设置一个随机生成的范围,即活动区间,记为: startvalue和stopvalue,以提高初始化种群的质量,同时用最少的迭代次数得出最优的对称轴。
[0018]
进一步地,步骤4中具体步骤为:
[0019]
步骤4.1:当前个体为对称轴时,整张面部图像的对称性,其计算公式为:
[0020][0021]
其中symmetry表示唇部对称性,total表示唇部区域的总像素数,match表示唇部对称区域的像素数;
[0022]
步骤4.2:个体的垂直性,即偏移角度,用个体与图像y轴夹角的余弦值来表示;
[0023]
步骤4.3:个体的偏移距离,此处定义个体中点与图像中心点的接近度,值域为[0,1],接近度越大说明个体的适应能力越强,其公式为:
[0024]
nearness=1-distance/(stopvalue-startvalue)/2
[0025]
其中接近度记作nearness,线段中点与图像中心点的距离记作distance;
[0026]
步骤4.4:根据步骤4.1-4.3,设计适应度函数公式为:
[0027]
fitness=sym*w_sym+verticality*w_verticality+nearness*w_nearness
[0028]
其中fitness表示个体适应度,sym、verticality、nearness分别表示对称性、垂直性、接近度,w_sym、w_verticality、w_nearness分别表示三者的权重。
[0029]
进一步地,步骤5中遗传操作包括选择操作、交叉操作与变异操作;
[0030]
其中选择操作包括轮盘赌策略、锦标赛策略、精英保留策略;
[0031]
交叉方式包括交叉、两点交叉、多点交叉、均匀交叉及洗牌交叉;
[0032]
变异操作分为3种:(1)变异操作是平移变异,随机生成平移像素个数x,当前最优解的两个横坐标同时加上或减去x完成平移变异;(2)变异操作是对当前个体的旋转变异,随机生成平移像素个数x,当前最优解的两个横坐标一加一减x完成旋转变异;(3)变异操作是随机变异,即在横坐标的活动区间范围内随机生成一个横坐标值作为变异个体的染色体编码;通过这样定义变异操作来维持种群的多样性并加速向最优解收敛。
[0033]
进一步地,所述选择操作使用精英保留策略,将每一代种群中适应度最高的几个个体加入到下一代中继续进行遗传操作,以提高种群中个体的质量,并且用最少的时间迭代搜索出最优对称轴;
[0034]
所述交叉方式使用单点交叉,交叉的结果分别取父代染色体编码中的一个常数和
组成自己的染色体编码。
[0035]
本发明的有益效果在于:
[0036]
本发明将对称轴检测问题转化为种群的进化、变异、搜索最优解的问题,通过对算法中遗传算子的定义确定了搜索过程,完成了对搜索过程的优化;通过定义算法的自适应函数,充分考虑了图像对称性、对称轴的垂直性以及对称轴的偏移距离这三个因素,从而优化算法的选择过程。通过种群的遗传进化,得出最优面部对称轴,从而解决面部对称轴检测问题。
[0037]
本发明使用遗传算法来全局搜索人脸图像面部对称轴,只需要预先设定算法的迭代搜索方式,并不需要了解种群进化迭代也就是搜索最优面部对称轴的具体过程;同时本方法对于不同类型的面部图像(不同肤色、不同背景、不同光照强度等)的面部对称轴检测结果具有稳定性;在检测准确度与检测速度方面,本方法也具有一定的优势。
[0038]
本发明无需大量数据进行训练,避免了大规模计算量的同时保证了面部对称轴检测的准确性、鲁棒性与时效性,具有良好的检测表现,在面部检测、面部美学评估等方面有较为广泛的应用。
附图说明
[0039]
图1为本发明基于遗传算法的人脸图像面部对称轴检测方法的流程图;
[0040]
图2为本发明基于遗传算法的人脸图像面部对称轴检测方法的对称轴扫面区域图;
[0041]
图3为本发明基于遗传算法的人脸图像面部对称轴检测方法的交叉操作效果图;
[0042]
图4为本发明基于遗传算法的人脸图像面部对称轴检测方法的变异操作效果图;
[0043]
图5为本发明基于遗传算法的人脸图像面部对称轴检测方法的检测结果效果图。
具体实施方式
[0044]
下面结合附图对本发明做进一步描述。
[0045]
本发明基于遗传算法的人脸图像面部对称轴检测方法,具体实施步骤如下:
[0046]
步骤1:对输入的rgb格式的人脸图像,首先将其转换为hsv颜色空间,转换的目的是为了提取图像前景即人脸部分,以便进行对称性计算;再按照h通道来提取面部前景,经过实验得出设置为[1,8]时提取前景结果比较稳定。
[0047]
步骤2:初始化种群时为个体设置活动区间,于活动区间来说,区间范围越小,整个算法的计算量越小,但是如果区间范围太小的话可能会错过最优解。由于图像中面部多数比较端正,几乎不会出现歪斜角度过大的情况,所以根据多次实验结果分析,将上下两个端点的横坐标的活动区间设置为图像宽度的1/3,即图像中垂线与x轴交点左右1/6个图像宽度的范围。这样设置即保证算法可以检测到最优对称轴,同时还一定程度的减小了算法的计算量。这个范围的左右端点值作为染色体编码起始数字startvalue和终止数字stopvalue。
[0048]
步骤3:计算个体适应度时需要先计算出该个体所对应的对称度、垂直性、接近度。对称度的计算过程为:首先计算图像前景像素数记为total,计算对称轴与图像x轴方向的夹角记为theta1,并计算出theta1的余角theta2;计算图像的旋转矩阵,旋转中心设置为图
像的中心点,旋转度数设置为theta2,图像的缩放比例设置为1;将图像进行旋转变换,旋转的角度为theta1,此时对称轴旋转到原图像y轴的位置,记此变换结束时的图像为pic1;将旋转后的图像沿y轴做一次水平翻转,得到pic1的水平镜像图像记为pic2;对翻转前的图像pic1与翻转后的图像pic2逐个像素值进行与操作,得到对称区域的面积,扫描图像得到对称区域的总像素数,记为match;用对称区域的总像素数match除以图像前景的总像素数total得到面部的对称性,记为symmetry。垂直性即偏移角度,用个体与图像y轴夹角的余弦值来表示。接近度是个体中点与图像中心点的接近度首先要计算出线段中点与图像中心点的距离,这个距离可以由个体线段中点与图像中心点的横坐标做差值得到,记为distance。由于个体线段两个端点存在范围限制,即两个端点的横坐标的范围在[startvalue, stopvalue]中,可分析得知线段中点的横坐标必然也在[startvalue,stopvalue]中,进一步分析可知distance的取值范围为[0,(stopvalue-startvalue)/2],从而计算出接近度。对于权重的设置,对于前景像素是10万量级的人脸图像,将w_verticality、w_nearness设置为0.0001,相当于是10个像素的波动幅度。
[0049]
步骤4:在进行遗传操作的过程中,进行选择操作、交叉操作与变异操作。选择操作采用精英保留策略,保留个数设置为2,即将了两个适应度值最大的个体加入下一代。交叉操作过程中,由于本文中个体的基因组成比较简单,采用单点交叉即可完成优化任务,即交叉的结果分别取父代染色体编码中的一个常数,组成自己的染色体编码。在变异操作过程中,为了保持方法的稳定性,将平移变异、旋转变异、随机变异的发生的概率设置为相等且不同时发生。平移变异与旋转变异变化像素个数x在0-10之内随机产生,随机变异的值在个体的活动范围内随机产生。
[0050]
步骤5:在参数设置方面,本文将染色体长度设置为2,种群规模设置为10,交叉概率设置为0.9,变异概率设置为0.4,遗传代数设置为100,强行停止条件(适应度值连续超过多少代不增长就停止进化)设置为10。
[0051]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1