我在我的项目中处于艰难时刻,不确定如何进一步推进:
我已经使用 openCV 在照片中识别出一个物体,我想为其添加深度 - 目前现实世界的测量并不重要。
我想添加深度,以便之后将构建的形状发送到 3D 打印机。
无论如何在Android中使用opencv这样做吗?再说一次,这不是 3D 重建 - 我有一张照片,我只想给对象提供深度,就像这样:
我想通过将相同的 2D 形状多次放在自身上来做到这一点,它会给出“深度”..
有什么建议么?我应该使用的库?
最佳答案
这里有两个相互关联的方面:您如何表示 2D 图像,因此您打算如何将其拉伸(stretch)成 3D,然后,您打算如何为 3D 打印机写出您的 3D 模型。后者我想你会想要一个 STL 文件。
在直接从 Android/Java 编写 STL 文件方面似乎没有很多,但是 http://www.printingin3d.eu/javascad看起来很有前途。老实说,我没有使用过该库或进行过任何 3D 打印,但我知道围绕如何构建对象可能存在一些规则,以确保在打印时可以正确“切片”。因此,这可能会影响您构造 2D 对象的方式。
那么回到挤压 - 你如何握住你的 2D 物体;它是一系列 (x,y) 点吗?如果是这样,那么一种方法是将多边形拆分为三角形(即创建网格),然后通过拉长 z 轴以获得一系列棱镜将它们转换为 3D 对象。然后,您可以将所有这些对象添加到一个集合中,并使用 javascad 将它们作为 STL 文件写出。
关于android - 在 Android 中动态创建 3D 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21990137/