人脸变形算法的实现——双线性插值

我们在对图像做仿射变换时得到的点一般情况下并不会是整数点,在改进篇中,简单起见,我直接对得到的点直接进行了取整,所以在面部有的地方看起来会很模糊。除了取整,最常用的有二种方法:最邻近插值法双线性插值法,今天我们就用双线性插值法来改进原来的算法。

Continue reading

Fork me on GitHub

人脸变形算法的实现

BabyMaker需要“预测”未来孩子的长相,一种显而易见的实现思路:取出父母照片上比较明显的特征(如眉毛、眼睛),与模板库的Baby按照某个比例进行图像混合,输出融合后的Baby即可。第一个步骤因为有Luxand SDK变得很简单,第二步图像混合也非常简单,但这里有个问题:Parent器官的相对位置和Baby的相对位置不一致,如果强行融合结果会非常别扭(比如两只嘴巴),所以在融合前我们必须对图片进行变形使相对位置一致,这里介绍人脸变形的实现。

Continue reading