使用OpenGL进行2D到3D面部重建

时间:2013-01-19 14:11:08

标签: image-processing opengl-es 3d opengl-es-2.0 face-recognition

任何人都可以告诉我如何在OpenGL中实现2D到3D面部重建

我是3D图形和渲染的新手。谁能告诉我如何从2D图像进行2D到3D人脸重建。使用什么算法以及如何使用OpenGL完成?相关功能。

输入:2D正面图像

输出:输入的3D重建

1 个答案:

答案 0 :(得分:2)

  

任何人都可以告诉我如何在OpenGL中实现2D到3D面部重建

你做不到。 OpenGL是一个3D光栅化绘图API。它用于将3D几何图形转换为2D图像,即与您想要的方向相反。

  

输入:2D正面图像

     

输出:输入的3D重建

这是现实世界,而不是CSI!

您至少需要一些额外的输入才能将其转换为3D数据。图像的每个像素是2D空间中的点,即将2个变量提供给方程。你想把它变成3个变量。或者换句话说,这是一个欠定的方程组。

其他输入可能是:

  • 时间:如果你有一部电影,那么随着时间的推移,可见物体的运动可以推断它们在太空中的位置。
  • 多角度的图像
  • 使用特殊照明拍摄照片,以便像素的颜色提供有关深度的其他信息。

Research on this has been done at the University of Washington。我建议看看他们所有的论文!

训练有素的观察者模型,即我们的大脑在2D图像中推断物体深度所做的事情是非常不可靠的。只需查看任意perspective illusion即可了解原因。我们的大脑在解释图像方面比任何计算机程序都要好得多,但仍然可以被愚弄。