Spaces:
Runtime error
Runtime error
# Documentation | |
## Python scripts | |
These files are for our monocular 3D Tracking pipeline: | |
`main.py` Execute 3D photo inpainting | |
`mesh.py` Functions about context-aware depth inpainting | |
`mesh_tools.py` Some common functions used in `mesh.py` | |
`utils.py` Some common functions used in image preprocessing, data loading | |
`networks.py` Network architectures of inpainting model | |
MiDaS/ | |
`run.py` Execute depth estimation | |
`monodepth_net.py` Network architecture of depth estimation model | |
`MiDaS_utils.py` Some common functions in depth estimation | |
## Configuration | |
```bash | |
argument.yml | |
``` | |
- `depth_edge_model_ckpt: checkpoints/EdgeModel.pth` | |
- Pretrained model of depth-edge inpainting | |
- `depth_feat_model_ckpt: checkpoints/DepthModel.pth` | |
- Pretrained model of depth inpainting | |
- `rgb_feat_model_ckpt: checkpoints/ColorModel.pth` | |
- Pretrained model of color inpainting | |
- `MiDaS_model_ckpt: MiDaS/model.pt` | |
- Pretrained model of depth estimation | |
- `use_boostmonodepth: True` | |
- Use [BoostMonocularDepth](https://github.com/compphoto/BoostingMonocularDepth) to get sharper monocular depth estimation | |
- `fps: 40` | |
- Frame per second of output rendered video | |
- `num_frames: 240` | |
- Total number of frames in output rendered video | |
- `x_shift_range: [-0.03, -0.03, -0.03]` | |
- The translations on x-axis of output rendered videos. | |
- This parameter is a list. Each element corresponds to a specific camera motion. | |
- `y_shift_range: [-0.00, -0.00, -0.03]` | |
- The translations on y-axis of output rendered videos. | |
- This parameter is a list. Each element corresponds to a specific camera motion. | |
- `z_shift_range: [-0.07, -0.07, -0.07]` | |
- The translations on z-axis of output rendered videos. | |
- This parameter is a list. Each element corresponds to a specific camera motion. | |
- `traj_types: ['straight-line', 'circle', 'circle']` | |
- The type of camera trajectory. | |
- This parameter is a list. | |
- Currently, we only privode `straight-line` and `circle`. | |
- `video_postfix: ['zoom-in', 'swing', 'circle']` | |
- The postfix of video. | |
- This parameter is a list. | |
- Note that the number of elements in `x_shift_range`, `y_shift_range`, `z_shift_range`, `traj_types` and `video_postfix` should be equal. | |
- `specific: '' ` | |
- The specific image name, use this to specify the image to be executed. By default, all the image in the folder will be executed. | |
- `longer_side_len: 960` | |
- The length of larger dimension in output resolution. | |
- `src_folder: image` | |
- Input image directory. | |
- `depth_folder: depth` | |
- Estimated depth directory. | |
- `mesh_folder: mesh` | |
- Output 3-D mesh directory. | |
- `video_folder: video` | |
- Output rendered video directory | |
- `load_ply: False` | |
- Action to load existed mesh (.ply) file | |
- `save_ply: True` | |
- Action to store the output mesh (.ply) file | |
- Disable this option `save_ply: False` to reduce the computational time. | |
- `inference_video: True` | |
- Action to rendered the output video | |
- `gpu_ids: 0` | |
- The ID of working GPU. Leave it blank or negative to use CPU. | |
- `offscreen_rendering: True` | |
- If you're executing the process in a remote server (via ssh), please switch on this flag. | |
- Sometimes, using off-screen rendering result in longer execution time. | |
- `img_format: '.jpg'` | |
- Input image format. | |
- `depth_format: '.npy'` | |
- Input depth (disparity) format. Use NumPy array file as default. | |
- If the user wants to edit the depth (disparity) map manually, we provide `.png` format depth (disparity) map. | |
- Remember to switch this parameter from `.npy` to `.png` when using depth (disparity) map with `.png` format. | |
- `require_midas: True` | |
- Set it to `True` if the user wants to use depth map estimated by `MiDaS`. | |
- Set it to `False` if the user wants to use manually edited depth map. | |
- If the user wants to edit the depth (disparity) map manually, we provide `.png` format depth (disparity) map. | |
- Remember to switch this parameter from `True` to `False` when using manually edited depth map. | |
- `depth_threshold: 0.04` | |
- A threshold in disparity, adjacent two pixels are discontinuity pixels | |
if the difference between them excceed this number. | |
- `ext_edge_threshold: 0.002` | |
- The threshold to define inpainted depth edge. A pixel in inpainted edge | |
map belongs to extended depth edge if the value of that pixel exceeds this number, | |
- `sparse_iter: 5` | |
- Total iteration numbers of bilateral median filter | |
- `filter_size: [7, 7, 5, 5, 5]` | |
- Window size of bilateral median filter in each iteration. | |
- `sigma_s: 4.0` | |
- Intensity term of bilateral median filter | |
- `sigma_r: 0.5` | |
- Spatial term of bilateral median filter | |
- `redundant_number: 12` | |
- The number defines short segments. If a depth edge is shorter than this number, | |
it is a short segment and removed. | |
- `background_thickness: 70` | |
- The thickness of synthesis area. | |
- `context_thickness: 140` | |
- The thickness of context area. | |
- `background_thickness_2: 70` | |
- The thickness of synthesis area when inpaint second time. | |
- `context_thickness_2: 70` | |
- The thickness of context area when inpaint second time. | |
- `discount_factor: 1.00` | |
- `log_depth: True` | |
- The scale of depth inpainting. If true, performing inpainting in log scale. | |
Otherwise, performing in linear scale. | |
- `largest_size: 512` | |
- The largest size of inpainted image patch. | |
- `depth_edge_dilate: 10` | |
- The thickness of dilated synthesis area. | |
- `depth_edge_dilate_2: 5` | |
- The thickness of dilated synthesis area when inpaint second time. | |
- `extrapolate_border: True` | |
- Action to extrapolate out-side the border. | |
- `extrapolation_thickness: 60` | |
- The thickness of extrapolated area. | |
- `repeat_inpaint_edge: True` | |
- Action to apply depth edge inpainting model repeatedly. Sometimes inpainting depth | |
edge once results in short inpinated edge, apply depth edge inpainting repeatedly | |
could help you prolong the inpainted depth edge. | |
- `crop_border: [0.03, 0.03, 0.05, 0.03]` | |
- The fraction of pixels to crop out around the borders `[top, left, bottom, right]`. | |
- `anti_flickering: True` | |
- Action to avoid flickering effect in the output video. | |
- This may result in longer computational time in rendering phase. | |