基于ASM算法和LazySnapping算法的耳廓检测方法与流程

文档序号:11156326阅读:677来源:国知局
基于ASM算法和Lazy Snapping算法的耳廓检测方法与制造工艺

本发明涉及机器视觉中的一种耳廓检测技术,尤其是涉及了一种基于ASM算法和Lazy Snapping算法相结合的耳廓检测方法。



背景技术:

近年来,随着计算机科学技术的蓬勃发展,机器视觉技术迅速普及于生产生活当中。耳廓检测在图像信息提取,生物特征识别以及三维重建等领域都有着十分重要的应用。基于Haar特征构建分类器来实现物体检测的方法被有效地应用于人脸检测,然而其只能够识别目标物体所在的矩形区域,并不能进行相关几何形状特征的提取。ASM主动形状模型是一种基于统计学的检测方法,可以实现对目标物体上特征点的有效检测,精确度高。采用ASM算法进行耳廓检测,需要对训练数据集中的每一张图片进行所有耳廓特征点的人工标定。数据集较大,特征点较多,这使得训练数据的构建十分困难。其次,最终耳廓检测的效果直接依赖于训练数据的好坏,这对于训练阶段提出了更为严格的要求,这是限制ASM算法应用的一个重要因素。Lazy Snapping算法主要应用于图像中前景和背景的分割,必须在手动标记前景区域和背景区域之后才能进行图像分割操作,不具有自动性。可以将ASM算法和Lazy Snapping算法相结合,采用简化的ASM模型标记耳廓上的关键特征点,以此为基础自动生成前景和背景标记作为Lazy Snapping算法的输入,从而实现耳廓的高效检测。ASM算法可以参考文献“Cootes,T.F.,Taylor,C.J.,Cooper,D.H.and Graham,J.,1995.Active shape models-their training and application.Computer vision and image understanding,61(1),pp.38-59.”,Lazy Snapping算法可以参考文献“Li,Yin,et al."Lazy snapping."ACM Transactions on Graphics(ToG).Vol.23.No.3.ACM,2004.”。



技术实现要素:

本发明的目的在于针对现有技术的不足,提供了一种基于ASM算法和Lazy Snapping算法相结合的耳廓检测方法,本发明实现了耳廓的高效检测。

本发明的目的是通过以下技术方案来实现的:一种基于ASM算法和Lazy Snapping算法相结合的耳廓检测方法,包括以下步骤:

(1)使用Haar特征结合Adaboost算法构建耳朵检测器,检测出图片中耳朵所在的矩形区域,整个耳廓位于该区域之内,称之为耳朵矩形。

(2)构建简单的耳廓特征点模型,采用ASM算法检测出图片中上耳根点和下耳根点所在的位置。

(3)计算耳朵矩形距离上耳根点和下耳根点连线最远的顶点。上耳根点和下耳根点连成一条直线,耳廓位于这条直线的一侧,称其为耳朵分割线。分别计算耳朵矩形四个顶点到耳朵分割线的距离,选取距离最远的顶点,称其为耳侧点。

(4)采用耳朵矩形设置图片的感兴趣区域ROI,并且将上耳根点,下耳根点和耳侧点的坐标转换到该感兴趣区域中。此后对图片的所有操作均在该感兴趣区域内进行。

(5)生成前景标记线和背景标记线。将上耳根点和下耳根点的中点记为耳根中点。将上耳根点和下耳根点之间的距离记为耳根距离。将耳根中点作为坐标系原点,将耳朵分割线作为q轴,正方向为从上耳根点指向下耳根点。将过坐标系原点并且垂直于耳朵分割线的直线作为p轴,正方向从坐标系原点指向耳廓。从坐标系原点出发沿着p轴正方向作线段,长度为0.5倍的耳根距离。从坐标系原点出发沿着p轴正反向偏向q轴正方向45度作线段,长度为0.5倍的耳根距离。从坐标系原点出发沿着p轴正反向偏向q轴负方向45度作线段,长度为0.5倍的耳根距离。这三条线线段连同上耳根点和下耳根点之间的线段为前景标记线。耳朵矩形的四条边为背景标记线。

(6)采用Lazy Snapping算法进行前景和背景分割。将生成的前景标记线和背景标记线作为输入,运行Lazy Snapping算法,得到耳朵分割区域,耳廓为该区域的边界线。

(7)耳朵分割区域边缘检测及裁剪。寻找耳朵分割区域最长的外边缘。以耳朵分割线为边界,截取仅仅保留该边缘位于耳侧点一侧的部分,即为耳廓边缘,是非封闭的。

(8)耳廓曲线拟合。耳廓边缘由一系列的散点组成,为了消除噪声干扰,需要对这些散点进行曲线拟合处理。首先进行坐标系变换,将耳朵分割线作为v轴,正方向为从上耳根点指向下耳根点。计算耳廓边缘上所有点到耳朵分割线的距离,将距离最远的点记为耳廓最远点。u轴与v轴垂直并通过耳廓最远点,正方向指向耳廓最远点。将耳廓边缘上所有点的坐标转换到新构建的坐标系中,对u轴上半部分的点和下半部分的点分别进行多项式曲线拟合,得到两条拟合后的曲线方程。

(9)耳廓点生成。针对拟合后的两条曲线,分别在u正半轴到v负半轴区间和u正半轴到v正半轴区间内,以u轴和v轴的交点为原点,等角度作射线,计算每条射线与曲线的交点,这样就可以构成耳廓点。之后,将得到的耳廓点从以u轴和v轴为基础的新坐标系转换到感兴趣区域的坐标系,此时耳廓点的坐标为在耳朵矩形中的坐标。最后根据耳朵矩形对耳廓点进行平移操作,将其转换到原始图像的坐标系中,从而实现了对耳廓的有效检测。

本发明的有益效果是:本发明利用Haar特征构建耳朵检测器,检测出耳朵所在的矩形区域,只有仅仅对该区域进行图像处理操作,大大加快了运行速度。本发明使用简单低精度的耳朵模型来训练ASM检测器,进而对耳廓上的少数关键特征点进行检测,训练成本较低,ASM算法的检测效果对训练数据集的敏感性较低,可以很容易地进行操作。本发明使用Lazy Snapping算法实现对耳廓地有效分割,并且使用坐标系变换和曲线拟合技术来提高耳廓检测结果的精确度。本发明所提出的耳廓检测技术运算速度快,可靠性高,容易实施,成本较低,可以有效地实现耳廓的检测。

附图说明

图1为耳廓检测示意图,图中,ET为待检测的耳廓,EA为耳朵矩形,ER0为上耳根点,ER1为下耳根点,EL为耳朵分割线,ES为耳侧点。

图2为标记线示意图,图中,ERD为上下耳根点之间的距离,MB为背景标记线,MF为前景标记线。

图3为耳廓曲线拟合坐标系变换示意图,图中,v轴正反向为从上耳根点指向下耳根点。EF为耳廓最远点。u轴与v轴垂直,正反向指向耳廓最远点。

图4是本发明进行耳廓检测的处理流程图。

具体实施方式

下面结合附图以及具体实施方式对本发明作进一步说明。

如图4所示,本发明基于ASM算法和Lazy Snapping算法的耳廓检测方法,包括以下步骤:

1、使用Haar特征结合Adaboost算法构建耳朵检测器,检测出图片中耳朵所在的矩形区域,整个耳廓位于该区域之内,称之为耳朵矩形。

采用Haar-like特征来表示灰度差异作为弱分类器,并且采用积分图的形式来表示输入的图像,以便有效地计算它们。用AdaBoost算法选出最好的弱分类器,然后将它们组合成强分类器。最后,将分类器级联起来建立最终的检测器,只有上一级的分类器接受输入的图像窗口时,才进入下一级的分类器。被所有分类器都接受的图片窗口为耳朵区域。

2、构建简单的耳廓特征点模型,采用ASM算法检测出图片中上耳根点和下耳根点所在的位置。

ASM算法分为训练和搜索两步。训练时建立各个特征点的位置约束,构建各个特定点的局部特征。首先搜集多个训练样本并且手动标记人耳特征点,训练集中特征点的坐标组成一个特征向量。对形状进行归一化并且采用Procrustes方法对形状进行对齐。对对齐后的形状特征做PCA处理。接着,为每个特征点构建局部特征。目的是在每次迭代搜索过程中每个特征点可以寻找新的位置。局部特征一般用梯度特征,以防光照变化。搜索时,迭代进行的匹配。首先用训练出来的平均人耳形状对齐图片上的人耳,接着采用马氏距离在对齐后的各个点附近搜索,匹配每个局部特征点,得到初步形状,并且使用统计形状模型修正匹配结果。一直跌代至收敛即可。

3、计算耳朵矩形距离上耳根点和下耳根点连线最远的顶点。上耳根点和下耳根点连成一条直线,耳廓位于这条直线的一侧,称其为耳朵分割线。分别计算耳朵矩形四个顶点到耳朵分割线的距离,选取距离最远的顶点,称其为耳侧点。

如图1所示,利用Haar特征训练的耳朵检测器识别输入图像中的耳朵矩形EA。之后采用ASM模型,识别出上耳根点ER0和下耳根点ER1。ER0与ER1的连线为耳朵分割线EL。分别计算耳朵矩形EA四个顶点到耳朵分割线EL的距离,最远的顶点为耳侧点ES。

4、采用耳朵矩形设置图片的感兴趣区域ROI,并且将上耳根点,下耳根点和耳侧点的坐标转换到该感兴趣区域中。此后对图片的所有操作均在该感兴趣区域内进行。

如图1所示,根据耳朵矩形EA设置图像的感兴趣区域ROI。

5、生成前景标记线和背景标记线。

为了采用Lazy Snapping算法实现对耳廓区域的分割,需要自动生成前景标记线和背景标记线,如图2所示。上耳根点和下耳根点的中点为耳根中点,上耳根点和下耳根点之间的距离为耳根距离ERD。将耳朵分割线作为q轴,正方向为从上耳根点指向下耳根点。将过坐标系原点并且垂直于耳朵分割线的直线作为p轴,正方向从坐标系原点指向耳廓。从坐标系原点出发沿着p轴正方向作线段,为前景标记线MF。从坐标系原点出发沿着p轴正反向偏向q轴正方向45度作线段,为前景标记线MF。从坐标系原点出发沿着p轴正反向偏向q轴负方向45度作线段,为前景标记线MF。这三条前景标记线的长度均为0.5倍的耳根距离ERD。上耳根点和下耳根点之间的线段为最后一条前景标记线。耳朵矩形EA的四条边为背景标记线MB。

6、采用Lazy Snapping算法进行前景和背景分割。将生成的前景标记线和背景标记线作为输入。

根据4条前景标记线和4条背景标记线运行Lazy Snapping算法,得到耳朵分割区域,耳廓为该区域的边界线。首先对图片应用分水岭算法,所得到的每一个区域为一个节点,这样就可以构成一幅无向图。4条前景标记线所经过的节点记为源结点,4条背景标记线所经过的节点为漏结点,采用最大流最小切割算法进行优化,即可以将所有节点分割为两部分。这样在图像中就实现了前景和背景的分割。前景区域即为耳朵分割区域。

7、耳朵分割区域边缘检测及裁剪。寻找耳朵分割区域最长的外边缘。

待检测的耳廓即位于该边缘之中。以耳朵分割线EL为边界对该最长外边缘进行截取,仅保留该边缘位于耳侧点和耳朵分割线EL之间的部分,得到一条非闭合边缘,即为耳廓边缘。

8、耳廓曲线拟合。

耳廓边缘由一系列的散点组成。由于Lazy Snapping算法对图像的色彩、对比度、边缘等信息较为敏感,因此上面得到的耳廓边缘存在很大的噪声干扰,并不能够很好的匹配真实耳廓的形状。因此,需要对上述耳廓边缘上的点进行曲线拟合处理。首先对所有耳廓边缘上的点进行坐标系变换,如图3所示。记图像坐标系为x-y坐标系,变换后得坐标系为u-v坐标系。将耳朵分割线作为v轴,正方向为从上耳根点指向下耳根点。计算耳廓边缘上所有点到耳朵分割线的距离,距离最远的点为耳廓最远点EF。坐标系u轴与v轴垂直并通过耳廓最远点,正方向指向耳廓最远点EF。将所有耳廓边缘上点由x-y坐标系转换到u-v坐标系,然后分别对u轴上半部分的点和u轴下半部分的点进行4次多项式曲线拟合,得到两条曲线方程。多项式拟合采用最小二乘算法。

9、耳廓点生成。针对拟合后的两条曲线,

以u轴和v轴的交点为原点,在负90度到正90度的范围内,按照等角度间隔作多条射线,求解这些射线与两条拟合曲线的交点坐标,此为耳廓点在u-v坐标系下的坐标。最后将所有求得耳廓点得坐标从u-v坐标系转换到x-y坐标系,再根据耳朵矩形EA对耳廓点进行相应的偏移,即可得到耳廓点在原始图像中相对于原始图像坐标原点得相应位置。这样,就可以实现对耳廓点的高效精确检测。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1