Shadow Art Revisited: A Differentiable Rendering Based Approach
Shadow art sculptures generated using differentiable rendering casting the shadows of (a) WACV acronym on one plane and fishes on the other resembling an aquarium of floating objects, (b) dropping Heart, Duck, and Mickey (all on the same plane), and (c) face sketches using half-toned images. (d) 3D reconstruction of a car from hand drawn sketches.
Clone the repository
git clone https://github.com/kaustubh-sadekar/ShadowArt-Revisited.git
cd ShadowArt-Revisited
Install required libraries
pip install -r requirements.txt
pip plotly
curl -LO https://github.com/NVIDIA/cub/archive/1.10.0.tar.gz
tar xzf 1.10.0.tar.gz
python -c "import os; os.environ["CUB_HOME"] = os.getcwd() + "/cub-1.10.0" "
pip install 'git+https://github.com/facebookresearch/pytorch3d.git@stable'
We used PyTorch3D to create the differentiable rendering-based shadowart pipeline.
To create shadow art with two views with files duck.png and mikey.png use the following command.
python val.py cuda:0 output1 600 0.01 -swt 10.0 -l1wt 10.0 -sdlist duck.png mikey.png
For a better understanding of the input arguments type python val.py -h
Gif showing the optimization of the 3D voxel shadow art
To create shadow art with two views with files duck.png and mikey.png use the following command.
python val.py cuda:0 output1 2000 0.15 0 -swt 1.6 -l1wt 1.6 -mwt 0.0 -i2vwt 0.0 -ewt 1.6 -nwt 0.6 -lwt 1.2 -sdlist duck.png mikey.png
For a better understanding of the input arguments type python val.py -h
Gif showing the optimization of the 3D shadow art mesh
If you would like to cite us, kindly use the following BibTeX entry.
@InProceedings{Sadekar_2022_WACV,
author = {Sadekar, Kaustubh and Tiwari, Ashish and Raman, Shanmuganathan},
title = {Shadow Art Revisited: A Differentiable Rendering Based Approach},
booktitle = {Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision (WACV)},
month = {January},
year = {2022},
pages = {29-37}
}