论文:
3D Photography using Context-aware Layered Depth Inpainting
https://github.com/vt-vl-lab/3d-photo-inpainting
requirements.txt
pytorch==1.4.0
torchvision==0.5.0 opencv-python==4.2.0.32
vispy==0.6.4
moviepy==1.0.2
transforms3d==0.3.1
networkx==2.3
cynetworkx
scikit-image
环境搭建:
服务器:ubuntu 18.04 Quadro RTX 5000 16G
CUDA版本 V10.0.130
conda create -n torch14 python=3.6.6conda activate torch14conda install pytorch==1.4.0 torchvision==0.5.0 cudatoolkit=10.0 -c pytorchpip install opencv-pythonpip install vispypip install moviepypip install transforms3dpip install networkx==2.3pip install scikit-image
代码效果:
Paper proposed a method for converting a single RGB-D input image into a 3D photo…
直观结果: 图片转换为 mp4 video ,一项神奇的技术…
项目结构
测试:
一:把你想要测试的 图片 (默认 jpg 格式)放到 项目目录的 image 下即可;
二:运行如下测试命令(可以在 argument.yml 中 修改 参数配置):
python main.py --config argument.yml
三:查看运行效果
测试图片生成得到:
zoom-in(拉近)、dolly-zoom-in(滑动放大)、swing(摆动)、circle(盘旋) 四种 mp4 格式的 video;
————————————————————————————————————
生成示例:
原图:
效果如下(mp4 动画,这里水印没有去掉哈):
可能遇到的报错总结:
- AttributeError: ‘Graph’ object has no attribute ‘node’
分析: 原因是 没有 安装 networkx 或者 安装的版本 不匹配
正确安装即可:
pip install networkx==2.3