Author : Jino Park, Donghyuk Jung, and Bochang Moon
[Project page] [Main Report - Publisher]
Feel free to contact us by creating an issue or email, for any question or comment.
- Our Mitsuba2 fork (mitsuba2-pc-using-dr)
- Our camera application for iPad Pro (RCDCamera)
- Wireless mouse for iPad (not necessary, but recommended)
- Install python dependencies
common.py
contains global variables, methods and classes. Setscene_path
incommon.py
.- Run
RCDCamera
and setiPadCamera
constructor incommon.py
with its IP address. - Run
1_capture_depth.py
inRGBD mode
. This will capture a depth image asexr
format. - Run
2_capture_color.py
inRGB mode
. This will capture 3 color images which will used later. You need to turn on/off the light of the environment as the script guides. We recommend to use wireless mouse to control iPad to ensure static assumption of pro-cam system. - Set
offset_x, offset_y, transformed_width, transformed_height
in3_dist_image_generator.py
and run it to generate target images. You may consider a color image with projection which was captured in a previous step. - Run
4_construct_geometry.py
. This will construct texture and geometry from captured RGB and depth images. You must check generate mesh's normal direction, it may result in unintended form. - Run
5_optimize_projector_pose.py
,6_optimize_tps.py
,7_optimize_bias_proj_img.py
. - For ablation study, run
8_optimize_without_warp.py
,9_optimize_without_color_bias.py
.
TODO
@ARTICLE{9762256,
author={Park, Jino and Jung, Donghyuk and Moon, Bochang},
journal={IEEE Access},
title={Projector Compensation Framework Using Differentiable Rendering},
year={2022},
volume={10},
number={},
pages={44461-44470},
doi={10.1109/ACCESS.2022.3169861}}
- We used python implementation of TPS by Christoph Heindl. link
- We used mitsuba2 for differentiable rendering by RGL EPFL. link
- For Image viewer used in projection, we modified a code provided by Zythyr in stack overflow. link
- For images in
reference
directory, we used dataset provided by Bingyao Hwang. link