Closed makangzhe closed 3 years ago
非常感谢您的工作,以及您公布的代码供我们参考学习,下面是我在研究学习的时候遇到的几个问题。
pts3d_name = os.path.join(base_dir, 'keypoints',object_name, 'keypoints_3d.npy')
下面是我写的投影函数
您能帮我分析一下是什么原因嘛?
2.另外一个问题就是我在Bounding box进行图片可视化的时候,我用的是LINEMOD目录下的,corner.txt(这个可能是运行PVNet时候放进去的,有点忘记了,应该不影响吧,都是同一个ply文件生成的),然后进行可视化的时候。感觉物体没有框进去,如下图,蓝色为GT,绿色是预测的。 请问这个是不是原图裁切,导致偏移? 还是需要重新生成新的corner.txt?
希望能够得到您的回复与解答,万分感谢!!!
makangzhe 好,
感谢你对我们工作的关注!Linemod 的 3D 数据和 2D 图像之间并不能直接用 p_2d = K * R * P_3d + t 这个投影公式关联起来。请参考 这个文件 从 139 行至 156 行的代码来计算投影关系。
p_2d = K * R * P_3d + t
希望这有帮到你!
已成功解决,非常感谢您的回答,确实是因为模型没有做对齐操作导致的。
非常感谢您的工作,以及您公布的代码供我们参考学习,下面是我在研究学习的时候遇到的几个问题。
pts3d_name = os.path.join(base_dir, 'keypoints',object_name, 'keypoints_3d.npy')
然后乘上真实的旋转和平移,将其投影到2D平面上,得到的2D关键点,发现与您的keypoints_2d.npy 标注的值是不一样的。 如下图,所有的2D关键点都在图片中标注的不准了,类别是小鸭子。下面是我写的投影函数
您能帮我分析一下是什么原因嘛?
2.另外一个问题就是我在Bounding box进行图片可视化的时候,我用的是LINEMOD目录下的,corner.txt(这个可能是运行PVNet时候放进去的,有点忘记了,应该不影响吧,都是同一个ply文件生成的),然后进行可视化的时候。感觉物体没有框进去,如下图,蓝色为GT,绿色是预测的。 请问这个是不是原图裁切,导致偏移? 还是需要重新生成新的corner.txt?
希望能够得到您的回复与解答,万分感谢!!!