APP下载

用于面诊的嘴巴定位算法研究

2019-04-28罗胜男陈兆学

中国医学物理学杂志 2019年4期
关键词:肤色轮廓嘴巴

罗胜男,陈兆学

上海理工大学医疗器械与食品学院,上海200093

前言

中医学认为“有诸内,必形诸外”,就是说如果内在的脏器有了问题,是可以从外表看出来的。因此,人体一旦患有疾病,都会显现于面部,比如可通过观察面部、眼、鼻、耳、唇等部位的色泽、状态来判断出内部脏腑的功能状态。面部是中医临床中望诊的主要部位,中医通过诊断面部的一些异常特征来诊断全身的疾病,而不是仅仅局限于面部或五官的疾病。随着自动化技术的发展,通过图像处理技术,提取感兴趣的区域实现中医智能化面部诊疗日益得到人们的重视。

在中医面诊诊断中,嘴巴的状态是一个重要的特征。脾为后天之本,开窍在口,其华在唇[1]。因此嘴巴的色泽变化与五脏气血盛衰有紧密联系,故除去面部整体的颜色及光泽外,口唇部的望诊也是诊断疾病的一个重要方面[2]。嘴唇的轮廓以及嘴角位置的定位等都是中医面诊客观化研究中的重要研究部分。但是由于不同的人的唇部在形状和大小上有较大差异,再加上头部的不确定运动、偏转和不均匀的光照干扰等众多因素使得唇部的快速检测比较困难。目前,国内外针对唇部检测方法有很多种,但是中医面诊中嘴部的定位方法不多。杨云聪等[3]应用AdaBoost 与唇色模型结合定位嘴角。朴鑫[4]利用积分投影定位出嘴巴的位置。宁娟等[5]根据嘴巴区域色彩分量比脸部其他区域包含更多红色像素及更少蓝色像素,在YCbCr 色彩空间重构嘴部区域的色度分量,建立嘴部模型,容易受到光照、噪声等影响,结果准确性不高。毛红朝[6]利用主动形状模型[7]结合局部灰度特征和全局形状特征对嘴部进行定位,运算复杂,时间花费久。上述方法定位均有缺点,或定位不够准确,或运算速度慢,易受噪声等影响。

近几年,水平集方法应用于图像分割在很多方面取得了不错的效果。本文在水平集图像分割方法C-V模型算法的研究基础上,应用于嘴部位置定位。首先,采用双肤色模型对肤色区域进行检测得到二值化图片,然后进行形态学处理。通过边缘检测得到人脸部轮廓,根据人脸类椭圆的特性,利用直接最小二乘椭圆拟合获得人脸区域。接着由该椭圆焦点位于面部的嘴巴区域,得到嘴巴的大致位置。然后采用C-V水平集模型得到嘴巴的轮廓线。本文的创新点有以下几点:(1)采用双肤色模型与直接最小二乘椭圆拟合实现正面人脸定位,具有较高的鲁棒性;(2)根据椭圆焦点得到嘴巴的粗定位区域,可避免采用先验条件得到嘴巴区域,可能定位不准确或粗定位区域过大,造成后续定位的不准确;(3)引入改进C-V算法,应用于嘴巴的定位,快速而准确地实现嘴巴区域定位。

1 人脸区域检测

1.1 光照校正预处理

在人脸视频和图像的采集过程中,由于受到复杂环境、物品遮挡及光照条件等因素的影响经常会导致场景的光照不均匀,导致重要细节信息无法凸显,影响接下来的肤色分割。因此首先对人脸图像进行光照校正,以消除可能有的光照干扰。采用二维伽马函数的自适应光照补偿法[8]。该方法针对过暗、过亮图像均有校正效果。具体步骤如下:

(1)将彩色图像由RGB 色彩空间转化为能将亮度与色度分离的色彩空间,如HSV 色彩空间。利用多尺度高斯函数与原图像卷积得到场景的光照分量:

其中,G为高斯函数,F为原图像,I为光照分量。

(2)构造一种二维伽马函数O(x,y),利用光照分量的分布特性调整二维伽马函数的参数,降低光照过强区域的亮度值,提高光照过暗区域的亮度值,实现对光照不均匀图像的自适应光照校正。γ是亮度增强的指数值,由光照分量和光照分量的亮度值m决定:

实验结果如图1所示。通过对比结果可发现,原图中光照不均匀区域得到一定的改善,肤色的聚类性得到增强,为后续检测肤色区域提供重要前提。

图1 光照校正前后肤色分割结果的对比Fig.1 Comparison of skin color segmentation results before and after illumination correction

1.2 肤色分割

RGB色彩空间中亮度信息与色度信息混合在一起,受光照影响较为明显,导致分割效果不理想。研究表明,不同种族、年龄的人群肤色差异主要是亮度方面。因此,可以利用肤色在色度空间上较好的聚类性进行肤色分割。HSI 色彩空间[9]与YCbCr 色彩空间[10]均是亮度信息与色度信息分离的。这两种彩色空间模型都可以大致检测出人脸区域,并且所误检的背景范围差异较大,同时被两种肤色模型都误检为人脸的可能性较小,所有HSI肤色模型与YCbCr肤色模型相融合检测肤色区域,能够得到更好的分割效果,以及更低的误检率。

本文手工裁剪129 幅肤色图片,得到1 343 406个肤色像素点,进行肤色分布统计。在HSI颜色空间中统计的亮度范围为0.47 ≤I≤0.97,YCbCr 颜色空间的亮度范围为32 ≤Y≤240 。另外,H 和S、Cr 和Cb的聚类图分别如图2a和图2b所示。

图2 肤色聚类分布图Fig.2 Maps of skin color clustering

由图2可知,在HSI颜色空间上肤色模型为:

如果图像颜色像素的H与S值满足上述条件,则判定为肤色。

在YCbCr颜色空间上肤色模型为:

如果图像颜色像素的Cr 与Cb 值满足上述条件,则判定为肤色。

根据肤色模型进行实验,结果如图3所示。

1.3 人脸分割

完成皮肤检测后的二值图像存在有噪声等影响,包括由于噪声的引入被误判为肤色的孤立点或小块孤立区域,以及由于人脸局部区域如眼睛、嘴巴等非肤色区域而导致整个人脸区域的非完全填充。采用空洞填充去除噪声点。连续4次腐蚀,然后连续4次膨胀。采用Sobel算子进行轮廓边缘提取[11]。根据文献[12]中方法取出颈部轮廓。直接最小二乘椭圆拟合采用的是广义特征值方法进行求解,算法简单高效,并且鲁棒性高,对噪声出格点的影响不敏感,因此本文选择此方法为椭圆拟合工具来进行面部轮廓区域的椭圆边界方程[13-14]。实验结果如图4所示。

由实验可知,椭圆下焦点所在的位置为嘴巴的下唇中间位置,并以1:1.5 矩形提取嘴巴区域,矩形的长为椭圆短轴长的1/2。据此可以得出嘴巴的粗略区域,如图4d所示。

2 基于边缘检测函数C-V水平集模型嘴巴定位

2.1 C-V模型

C-V 水平集模型[15]是由Chan 和Vese 在2001年提出的,是Mumford-Shah 水平集图像分割模型[16]的一种优化改进(简化)算法[17],其检测技术依赖于轮廓内部与外部的全部灰度信息而非图像局部梯度信息,该方法有效克服了Snake参数模型易陷入局部极值、不具备自动拓扑变化能力等缺点。

设定义域为Ω 的图像u0(x,y)被闭合曲线C划分为目标区域(C的内部)与背景区域(C的外部)两个区域,各区域内的平均灰度分别为c1和c2,则能量函数定义如下:

图3 肤色检测Fig.3 Skin color detection

图4 嘴巴粗定位检测过程Fig.4 Process of mouth coarse positioning

式中,μ≥0,v ≥0,λ1、λ2>0 是各个能量项权值系数;F的前两项是边界的长度和边界内部区域的面积,仅仅是为了保持边界平滑;后两项是背景和目标的区域信息,具有全局特征。仅当闭合边界C位于两个同质区域的边界时,F(c1,c2,C)才能达到能量最小化。由于该模型利用了图像的全局信息,最优化F可以得到全局最优化的图像分割结果。

以水平集函数φ代替闭合边界C,得到能量泛函F(c1,c2,φ):

其中,u0(x,y)是给定的图像,Ω 是图像域,φ(x,y)是符号距离函数 , ∇是梯度算子 ,为 Heaviside 函数 ,为Dirac函数。

通过Euler_lagrange 方程可推导出使式(7)最小化的水平集函数φ满足的偏微分方程为:

进行离散化得:

C-V模型演化必须满足CPL条件[18]:Δt≤c∙h/max(VF) ,其中λ2(u0-c2)2;h是网格步进,取值为1;c为安全因子,取值范围为[0.75,0.90]。

2.2 改进的C-V模型

2.2.1 初始轮廓就C-V 模型而言,尽管分割结果对演化曲线的初始位置不敏感,但是演化速度明显依赖于演化曲线的初始位置。因此,针对于该问题,先采用Otsu方法对粗定位图像进行二值化处理。针对二值图像,不去考虑嘴巴张开还是闭合,直接利用区域填充和形态学运算进行处理。结果如图5所示,图5c作为C-V模型的初始轮廓模板。

图5 初始轮廓Fig.5 Initial contour

2.2.2 基于边缘信息的C-V模型经典的C-V模型只利用区域信息而没有利用边缘信息,从而造成虚假边缘轮廓较多以及演化时容易陷入局部极小值。针对这一问题,增加边缘检测函数 ,,使对图像边缘更加敏感。改进后的C-V模型方程如下:

同时为了解决图像分割比较慢的问题,本文引入窄带法。综合以上介绍,嘴巴分割流程图如图6所示。

3 实验结果与分析

3.1 C-V模型演化嘴巴轮廓

通过上面的理论分析,下面采用MATLABR2016a 开发环境在Windows7,CPU,3.20 Gh,RAM,4.00 GB 的计算机上对本文进行仿真验证。

图7是本文方法和传统C-V 模型分割结果比较的效果图。C-V 模型的参数设定如下:λ1=λ2=1,ν=0,μ=2,Δt满足CPL 条件,σ=3,初始轮廓可以由Otsu方法所得二值图像作为初始轮廓模板。结果可见,传统C-V模型方法分割出现误分割现象,脸部部分区域出现虚假边缘轮廓,同时嘴唇区域灰度不均匀区域也引起误分割。而改进方法消除了背景区域的误处理,可见分割效果更优。另外,改进方法演化时间较传统方法也更短。如图7可知,改进方法演化曲线也比传统方法更平滑。

图6 嘴巴分割流程图Fig.6 Flow chart of mouth segmentation

3.2 嘴巴定位

采用上述方法实现中医面诊的嘴巴定位。对于两嘴角位置,C-V模型演化所得的最终曲线分别选取曲线的最左边与最右边点作为左右两嘴角点,蓝色点即为所检测嘴角位置。部分实现结果如图8所示。

图7 嘴巴图像分割的实验结果Fig.7 Experimental results of mouth segmentation

图8 部分测试结果图Fig.8 Some test results

本文使用平均像素误差Eave、最大像素误差Emax和误差标准偏差σ来衡量嘴角检测效果,这些客观指标均用像素数量表示。实际嘴角坐标以手工标注为准。左右嘴角Emax分别为9.0 和7.0,Eave分别为3.4 和2.0,σ分别为3.1 和2.7。由统计结果可知,左右嘴角定位误差不一样,部分嘴巴定位效果不好,致使最大误差较大,但还是在可接受范围。另外,Eave和σ都较小,基本满足中医面诊中嘴角定位。

4 结语

针对中医面诊中正面人脸图像,提出一种融合双肤色模型、椭圆拟合和改进C-V模型的嘴巴轮廓精确定位方法。首先,采用二维伽马自适应光照补偿方法针对光照不好的图像进行校正。然后采用双肤色模型结合直接最小二乘椭圆拟合方法得到去掉脖颈的人脸区域,根据椭圆焦点得出粗定位嘴巴图像。最后,采用改进C-V模型对嘴巴图像进行分割得到嘴巴轮廓。该方法可适用于较复杂的背景环境,对于表情变化不敏感,对光照变化有较好的适应度,具有较高的鲁棒性,实验结果表明该方法有效。由于目前没有统一的面诊数据库,该方法针对大多数图像处理效果都很好,所以对于中医面诊客观化具有重要意义。下一步的研究方向是实现更具鲁棒性的眉眼、鼻子定位算法,增强人脸区域分割算法的普遍适用性。

猜你喜欢

肤色轮廓嘴巴
肤色(外一首)
嘴巴嘟嘟
Conversation in a house
人的肤色为什么不同
嘴巴不见了
为什么人有不同的肤色?
跟踪导练(三)
好好的嘴巴
我是“漏嘴巴”
儿童筒笔画