YvanYin / Metric3D

The repo for "Metric3D: Towards Zero-shot Metric 3D Prediction from A Single Image" and "Metric3Dv2: A Versatile Monocular Geometric Foundation Model..."
https://jugghm.github.io/Metric3Dv2/
BSD 2-Clause "Simplified" License
1.42k stars 106 forks source link

About adjusting fx, fy ... #78

Open boqian-li opened 6 months ago

boqian-li commented 6 months ago

Hi, thanks for your great work! My in the wild rgb images were captured by camera with fx=fy=731.5, cx=cy=512, and width=height=1024. In this condition, how should I adjust the config and the code to fit my data?

JUGGHM commented 6 months ago

Hi, thanks for your great work! My in the wild rgb images were captured by camera with fx=fy=731.5, cx=cy=512, and width=height=1024. In this condition, how should I adjust the config and the code to fit my data?

Thank you for your interest! If you have only one image, we recommend to use in-the-wild mode and define your intrinsics here: https://github.com/YvanYin/Metric3D/blob/8487e7aeafafa902c4fbdd1a4a8d2dd5865b4ce2/mono/utils/custom_data.py#L33, the 'intrinsic' should be [731.5, 731.5, 512, 512]. If you have a long sequence, then we suggest that you could configure the json files to define a custom dataset.

CaiSir0075 commented 2 weeks ago

Hi, I hope this message finds you well. I have a question regarding the point cloud generation process in the context of our project. In the line of code: data = [{'rgb': i, 'depth': None, 'intrinsic': None, 'filename': os.path.basename(i), 'folder': i.split('/')[-3]} for i in rgbs] I noticed that the intrinsic value is set to None. However, I have recently updated the code to include specific intrinsic values for the camera, but I am still unable to generate the point cloud successfully.