zju3dv / pvnet-rendering

render images for pvnet training
Apache License 2.0
183 stars 46 forks source link

请问在生成渲染数据的时候内参设置的问题 #80

Closed pange1802703882 closed 1 year ago

pange1802703882 commented 1 year ago

您好,我看在生成数据中,blender中的相机内参统一设置为: 'blender': np.array([[700., 0., 320.], [0., 700., 240.], [0., 0., 1.]]) ,请问为什么要这么设置呀,如果设置成自己摄像头的内参会有什么问题呀

pengsida commented 1 year ago

会有问题。请使用这个工具:https://github.com/DLR-RM/BlenderProc

pange1802703882 commented 1 year ago

那是不是使用'blender': np.array([[700., 0., 320.], [0., 700., 240.], [0., 0., 1.]])就正确呀,您为什么这个参数要这么设置呀。您给的这个工具我也生成了一组位姿,就是他的depth图生成的好像不太对

pengsida commented 1 year ago

blender的内参是从blender软件里读取的,我这个代码没法设置。 BlenderProc能合成正确的depth,可能你哪里写的有问题。

pange1802703882 commented 1 year ago

好的

pange1802703882 commented 1 year ago

不好意思,再请教一下您,那实际上使用的不是这个矩阵吗 'blender': np.array([[700., 0., 320.], [0., 700., 240.], [0., 0., 1.]]) 我在使用BlenderProc的时候,我看有的demo是直接生成位姿,有的demo给的需要设置内参set_intrinsics_from_K_matrix,对位姿估计来说,使用他这个软件是直接使用他内部的默认位姿还是使用自己设置的位姿态呀

pange1802703882 commented 1 year ago

我目前使用的这个demo,但是在这个里面将内参改成了自己相机的内参:https://github.com/DLR-RM/BlenderProc/blob/main/examples/basics/camera_sampling/main.py

pengsida commented 1 year ago

我忘了BlenderProc怎么设置内参了。