walsvid / Pixel2MeshPlusPlus

Pixel2Mesh++: Multi-View 3D Mesh Generation via Deformation. In ICCV2019.
https://arxiv.org/abs/1908.01491
BSD 3-Clause "New" or "Revised" License
354 stars 56 forks source link

Questions about input images #7

Closed TowerTowerLee closed 4 years ago

TowerTowerLee commented 4 years ago

Thank you for sharing this code. I have some questions to ask Can the input pictures be any three angle pictures of the object? Or is the input image related to camera parameters?

TowerTowerLee commented 4 years ago

Supplements I'm sorry, but in addition to that, I want to know how can we get the camera parameters, and which are the camera parameters ?

walsvid commented 4 years ago

Hi @TowerTowerLee , the model is trained on 3 images, during inference it can take 2~5 images with camera parameters (We have to know camera pose to project and gather feature).

The camera extrinsic contains two angles of the polar coordinate system and the distance from the object to the camera. The camera intrinsic contains the focal length, which needs no extra setting. We set it in the projection stage.

To get the external parameters of the camera, the possible solution is to estimate the camera pose, which is another problem. We use synthesis images, and during the synthesis process we can manually set the camera parameters.

TowerTowerLee commented 4 years ago

Thank you for your answer!

For example, the camera parameters in the demo.py,250.481028534 29.4597137908 0 0.652313097662 25The first two are polar coordinates, the fourth is the distance from the object to the camera, and the fifth is the focal length, so what does the third one stand for,?well, because I really want to try to do a three-dimensional reconstruction with real images, and I want to know what each of the camera parameters means?

I sincerely hope to get your answer!

walsvid commented 4 years ago

The meaning of each lines in file rendering_metadata.txt: from the left, they are azimuth, elevation, in-plane rotation, distance, the field of view. https://en.wikipedia.org/wiki/Horizontal_coordinate_system

The last parameter is not focal length, it’s FOV which has the similar effect as focal length. Since all inplane rotation is zero so the 3rd parameter is 0.

TowerTowerLee commented 4 years ago

Thank you for your answer. It helped me a lot I'm thinking that if I take pictures with a camera with a different focal length than the camera in this article, the external parameters of the camera can be obtained,.Do I need to retrain the code to use demo.py, or just change the focal length and offset in the projection part, so I can directly use demo.py?

walsvid commented 4 years ago

If you can get camera extrinsic you neither need to retrain nor modify projection code. You can just using demo directly.

quintendewilde commented 3 years ago

@TowerTowerLee did you manage to get this to work? And could I find how you did this? (getting the coordination of real images?)

StellalalaH commented 2 years ago

https://github.com/walsvid/Pixel2MeshPlusPlus/issues/7#issuecomment-590077449

Could you tell me how can I get the camera intrinsic from the projection stage? Thanks!

Athenaxr commented 1 year ago

The meaning of each lines in file rendering_metadata.txt: from the left, they are azimuth, elevation, in-plane rotation, distance, the field of view. https://en.wikipedia.org/wiki/Horizontal_coordinate_system

The last parameter is not focal length, it’s FOV which has the similar effect as focal length. Since all inplane rotation is zero so the 3rd parameter is 0.

Hi, Chao! @walsvid I would like to ask what is the unit of distance.