- Follow the data format as our prepared example
- All images must be in 'jpg' or 'png' format
- Count from zero, e.g. the first frame is '00000.png'
- The shape of depth is (H, W), and the shape of rgb is (H, W, 3)
- The shape of mask is (H, W, 3). Pixel in the object is [255, 255, 255], out of object is [0, 0, 0]
- Important: Include a file for intrinsic matrix as 'intrinsic.txt' (containing focal length and center at least) in
[data_path_]
- Clone Robust-ICP in current dir
- Compile it and make sure
FRICPin path./Fast-Robust-ICP/build/FRICP, named as[FRICP_path_]
- Run
python step1.py --depth_scale [depth_scale_] --data_path [data_path_] --registration_alg_path [FRICP_path_]e.g.
python step1.py --depth_scale 1000. --data_path '../datasets/kfusion_frog/' --registration_alg_path './Fast-Robust-ICP/build/FRICP'- Put unit ball and all depth maps from
[data_path_]/intermediate/colored_pointclouds/into MeshLab - Delete invalid points which are not on the object surface
- Save the result as
[data_path_]/intermediate/ref.xyz
- Run
python step3.py --depth_scale [depth_scale_] --data_path [data_path_] --object_scale [object_scale_]e.g.
python step3.py --depth_scale 1000. --data_path '../datasets/kfusion_frog/' --object_scale 1.03- Put unit ball and all depth maps from
[data_path_]/intermediate/colored_pointclouds/into MeshLab again - Make sure invalid points out of ball
- Make sure valid points on the object surface fill in the ball as much as possible
Tips: Set [object_scale_] to make sure object sequence scaled into the unit ball. Larger it is, smaller scaled object will be.