我需要在我的 ios 应用程序中将 2D 图像转换为 3D。我将如何在我的 ios 应用程序中执行此操作?我需要使用哪些框架?OpenGL-es 会对此有所帮助吗?或者IOS中是否有其他软件包可以做到这一点?将 2D 图像制作为 3D 需要遵循哪些步骤?
2 回答
我不确定您打算如何以编程方式执行此操作,因为 2D 图像除了 0 之外没有任何 Z 轴信息。
以一个简单的 2D 正方形为例,你想把它变成一个立方体。你的正方形有 4 个数据点代表它的角:x1y1、x2y2、x3y3、x4y4。要将那个正方形“转换”成一个立方体,您现在需要在这些点上添加 z 轴数据并提供缺少的 4 组数据的坐标,因为您的立方体有 8 个坐标参考(x1y1z1 - x8y8z8)并提供哪些点是相互连接。这只是假设没有其他深度或曲率的平面形状。您也不知道 2D 图像的不可见面是什么样的。
我认为这甚至有点可行的唯一方法是,如果您允许用户在屏幕上添加自己的点(允许手动编辑深度,因为您的屏幕无法推断深度)并决定哪些现有点连接新的指着。但是,此时您不再进行转换...
我认为您应该澄清一下您要达到的目标。我不知道如何从单个 2d 图像中自动查找深度信息。但是,如果您谈论的是立体拍摄的东西,那么您可以寻找两个图像中存在的特征并计算出每个特征相对于彼此的深度。
对于视频或图像序列,有一些有趣的论文,但我觉得特别有趣的一种方法是 Kevin Karsch、Ce Liu 和 Sing Bing Kang 的“使用非参数采样从视频中提取深度”。
你可以在这里找到它:http: //www.kevinkarsch.com/depthtransfer/eccv12-depthtransfer.pdf