将轮廓面图像与其正面图像对齐 [英] Align profile face image with its frontal face image
问题描述
我有个个人资料面:
和正面图像:
输出:正面。
想法:我只需要知道我可以采取哪三个共同点,这将在两个面部可见,然后使用affineTransform并显示对齐的配置文件面
或任何其他**简单方法**
开发环境:c ++和opencv 2.4.2
我试过的:
div class =h2_lin>解决方案
正如由@bytefish所讨论的这里,眼睛在给定图像中的位置远不是微不足道的。用于在OpenCV中寻找眼睛的Haar级联产生太多的假阳性以用于有用,此外该方法对于图像旋转将不强。
你将需要用于对准面部图像的稳健的头部姿态估计。这里有两个最强大的(有代码可用):
-
Gary B. Huang , Vidit Jain 和 Erik Learned-Miller 。 复杂图像的无监督联合对齐。国际计算机视觉会议(ICCV),2007年。(专案页面),(PDF在线提供),(源代码)
-
X. Zhu , D. Ramanan 。 面部检测,姿势估计和地标定位在野生计算机视觉和模式识别(CVPR)Providence,Rhode Island,2012年6月。(专案页面),(PDF在线提供),(源代码)
例如,使用第二篇文章中描述的方法,更健壮的功能,如下图所示。而这些强大的功能将反过来确保产生更强大的面部对齐性能。
I have a profile face:
and a frontal face image:
Output: aligned profile face with reference to frontal face.
Idea: I just need to know which 3 common points I can take,which will be visible on both faces and then use affineTransform and display the aligned profile face
OR any other **simple method** of doing so
development envi.:c++ and opencv 2.4.2
what I tried:
- haarcascade feature detection(common detection point in both images=eye) ; it wont detect ear in frontal face
- OpenCV: Shift/Align face image relative to reference Image (Image Registration) (I get error message)
As discussed here by @bytefish, finding the accurate position of the eyes in a given image is far from trivial. The Haar-cascades for finding the eyes in OpenCV produce too many false positive to be useful, moreover this approach won't be robust to image rotation.
You'll need a robust head pose estimation for aligning face images. Here are two most robust ones (with code available):
Gary B. Huang, Vidit Jain, and Erik Learned-Miller. Unsupervised joint alignment of complex images. International Conference on Computer Vision (ICCV), 2007. (Project page), (PDF Online available), (Source code)
X. Zhu, D. Ramanan. Face Detection, Pose Estimation and Landmark Localization in the Wild Computer Vision and Pattern Recognition (CVPR) Providence, Rhode Island, June 2012. (Project page), (PDF Online available), (Source code)
For example, using the method described in the second paper, you will get more robust features like that are shown in the following images. And these robust features will, in turn, ensure to generate more robust face alignment performance.
这篇关于将轮廓面图像与其正面图像对齐的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!