作为研究项目的一部分,我正在使用Unity引擎创建综合数据。
我有一个机械手臂的最终姿势(6个参数:3个用于定位,3个用于位置/位置),还有一个.ply文件用于网格。有什么办法可以直接使用这些信息在Unity中渲染图像?这将转换为Unity)。我具有“摄影机”转换,因此可以在“摄影机”帧中获得末端执行器的坐标。我的相机和光源是相同的,所以我想在渲染器(例如Unity)中,我会将3D世界的原点固定为相机+光源,然后,如果我能以某种方式输入末端效应器坐标(x,y,z和thetax,thetay,thetaz)在框架中,可以根据需要将手臂对准相机(最终位置),然后渲染图像。

到目前为止,我的层文件非常简单,只有3个关节(末端效应器,当然是最后一个的端点)。
这种方法在Unity中可行吗?

.ply文件,图像

评论

如果您使用有策略性的错字,可能会吸引更多的人阅读您的帖子...不小心在标题中加上y;)

那么,您是否要渲染机器人的姿势,即获取有关机器人外观的图像,还是要渲染放置在机器人末端的摄像机看到的图像?

相机和灯光是固定的(在3D世界原点中)。我想以不同的方向,位置移动机械臂,并从固定的摄像机角度获取图像的外观

#1 楼

您可以使用MeshLab(免费)将PLY文件从atat转换为OBJ。您可以将OBJ文件导入Unity。有关如何执行此操作的更多信息,请参见这里。将网格连接到这些。您必须注意坐标系。您将必须在每个关节(用于运动)处都有一个坐标系(在Unity中,Transfrom连接到GameObject),并且可能相对于另一个关节(该网格相对于另一个关节)表示网格顶点坐标(它们可能一致)。

如果您想解决运动学逆问题(从末端执行器姿势计算关节角度),则可以搜索解析解决方案,迭代解决方案,也可以尝试使用内置的Unity IK解算器。

如果要渲染图像“如末端执行器上的摄像机所见”,则可以使摄像机成为机器人最后一个链接的孩子(或其上的组件)。

评论


$ \ begingroup $
谢谢。我使用Blender进行了第一步,然后将Unity的.ply转换为.flx。对于下一部分,我想知道是否可以简化一些事情-我已经更新了问题的处理方法。您认为这可行吗?还是Unity对此有规定?
$ \ endgroup $
– Ambareesh
19-6-26在22:11