Open3D 用法

安装 Open3D

建议在 conda 环境中安装。

依赖库

Linux:

sudo apt install libc++-dev
conda install numpy
conda install -c pytorch torchvision
conda install scikit-learn
pip install pyyaml
conda install -c conda-forge addict
conda install pandas
pip install plyfile

Mac:

去掉第一个 libc++-dev,其余相同。

注意:

pytorch 的按照涉及到版本以及对应的 cudatoolkit 版本。如果要指定版本,请参见 pytorch 官方说明:https://pytorch.org/get-started/locally/

安装

注意:经本人测试,目前 0.11.0 版和更老的版本没有问题,但是更新的 0.11.1 和 0.11.2 都出现了 visualization window 在 Mac OSX 中打不开的问题。因此,建议安装 0.11.0 版。安装方法:

pip install open3d==0.11.0

不知为什么,使用 conda install 时显示找不到 0.11.0 版本,因此建议使用上面的 pip install。

不过注意,0.11.0 版本中的 Open3D examples 代码和 github repo 上的最新代码有很多不同。因此,在Clone Open3D Repo 后,建议 checkout 0.11.0 版本对应的 commit:

git checkout d5167ae

Geometry 使用

Point cloud denoising

http://www.open3d.org/docs/release/python_api/open3d.geometry.PointCloud.html?highlight=remove%20outlier#open3d.geometry.PointCloud.remove_radius_outlier

Open3D 和 Numpy 之间的应用

http://www.open3d.org/docs/0.9.0/tutorial/Basic/working_with_numpy.html

Intrinsics

# Read intrinsic from json file
intrinsics = o3d.io.read_pinhole_camera_intrinsic(args.depth_intrinsic)

# Or initialize it from fx, fy, cx, cy parameters
intrinsics = o3d.camera.PinholeCameraIntrinsic()
        intrinsics.set_intrinsics(
            args.width, args.height, args.fx, args.fy, args.cx, args.cy)

Temp Notes

Colored ICP

python3 .\rgbd_colored_icp.py C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames\rgb C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames\depth_filtered C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames\poses_icp --depth_intrinsic C:\dev\rgbd_dataset\iphone\camera_intrinsic_iphone.json --depth_scale 5000 --depth_trunc 1.0

RGBD Volumetric Integration

Use colmap-scale poses

python3 .\rgbd_integration.py C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames\rgb C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames\depth_filtered C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames\poses_scale_per_frame C:\dev\rgbd_dataset\iphone\camera_intrinsic_iphone.json C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames --depth_scale 5000 --depth_trunc 1.0 --skip 10 --filename_prefix colmap --frame_number 30 --volume_size 1.0

Use ICP poses

python3 .\rgbd_integration.py C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames\rgb C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames\depth_filtered C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames\poses_icp C:\dev\rgbd_dataset\iphone\camera_intrinsic_iphone.json C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames --depth_scale 5000 --depth_trunc 1.0 --skip 1 --filename_prefix icp --frame_number 50 --volume_size 1.0

Rename timestamp files

python3 .\rename_timestamp_frames.py C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames\depth_preproc_raw C:\dev\rgbd_dataset\iphone\lady_small_leather_shoe_lightbox_board_700frames\depth_preproc_renamed --suffix _depth --format .jpg

Search

    Table of Contents