OpenCV实战之人脸美颜美型(九)——瘦脸

        本讲我们围绕瘦脸功能展开,瘦脸的功能很明确:让脸部变得瘦削,如下图所示。从图像处理的角度来说它将脸部轮廓周围的图像进行收缩操作,同时还要确保收缩后图像分布连续;与大眼算法类似,它也是一种非线性变形的算法。   

         如上图所示,脸部区域的图像呈现朝中心区域收缩的趋势,因此我们需要先确定一个收缩的中心点。这里我们借助人脸关键点的检测结果,可以将索引30的点(鼻子区域)作为收缩中心点,如下图所示。

OpenCV实战之人脸美颜美型(九)——瘦脸_第1张图片

         之后对于脸部边缘区域,可以确定收缩区域的圆心与半径,对于园内的每个像素,其收缩方向为该像素指向收缩中心,且距离圆心越近的点收缩力度越大,所以位于圆的边缘点不会收缩。如下图所示,箭头的长短表示收缩力度。

OpenCV实战之人脸美颜美型(九)——瘦脸_第2张图片OpenCV实战之人脸美颜美型(九)——瘦脸_第3张图片

         下图以左脸部为例说明,选择点3

你可能感兴趣的:(opencv,计算机视觉,图像处理)