是否有某种方法可以使从稍微偏侧的角度拍摄的人脸图像变形,以使人脸在相机上看起来是笔直的?
我已经尝试过使用地标和findHomology
,但这是不正确的。我使用dlib的shape_predictor
来获取人脸界标,并选择了在人脸上大致呈平面的5个点来获得同源性。最后,用warpPerspective
转换源图像。如果我绕着z轴旋转头部,结果效果很好,但是如果我绕着y轴旋转头部,效果就完全不好。
Mat H = findHomography(landmarks, model);
warpPerspective(source, aligned, H, Size(size,size));
我做错什么了吗?或者这只是错误的做法?