首页 > 其他分享 >图片转换为 mp4 video,一项神奇的技术【CVPR 2020】

图片转换为 mp4 video,一项神奇的技术【CVPR 2020】

时间:2022-10-07 20:06:19浏览次数:80  
标签:photo py project CVPR mp4 video 2021 install model


图片转换为 mp4 video,一项神奇的技术【CVPR 2020】_ide



???? 基础信息



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.6

conda activate torch14

conda install pytorch==1.4.0 torchvision==0.5.0 cudatoolkit=10.0 -c pytorch

pip install opencv-python

pip install vispy

pip install moviepy

pip install transforms3d

pip install networkx==2.3

pip install scikit-image

???? 代码效果


Paper proposed a method for converting a single RGB-D input image into a 3D photo...

直观结果: 图片转换为 mp4 video ,一项神奇的技术...

  • 有兴趣、可以去查阅下原论文
  • 本博文、属于一个简单的代码运行测评

???? 项目结构



???? 测试 【版本一》2020】


各位小伙伴,我这个博文是上年测试的,当时的确很轻松就测试成功,运行得到输出

2020 年份,测试过程如下

一:把你想要测试的 图片 (默认 jpg 格式)放到 项目目录的 image 下即可; 二:运行如下测试命令(可以在 argument.yml 中 修改 参数配置):

python main.py --config argument.yml

三:查看运行效果

测试图片生成得到:

zoom-in(拉近)、dolly-zoom-in(滑动放大)、swing(摆动)、circle(盘旋) 四种 mp4 格式的 video;

生成示例:

  • 原图:

图片转换为 mp4 video,一项神奇的技术【CVPR 2020】_人工智能_02

  • 效果如下(mp4 动画 转了 gif ,水印没有去掉哈):

图片转换为 mp4 video,一项神奇的技术【CVPR 2020】_计算机视觉_03


???? 测试 【版本二》2021】


会有这个版本的尝试测试,是因为作者 2021年6月份,代码仓库做了较大更新

各位小伙伴,我这个博文是上年测试的,当时的确很轻松就测试成功,运行得到输出

2021 年份,测试过程如下, 目前遇到的 bug 依旧没有彻底解决

下载模型

很多小伙伴服务器,模型下载缓慢,可以 copy 链接去浏览器下载

chmod 755 download.sh

./download.sh

观察 download.sh 脚本,就是下载模型,然后辅助到对应路径

#!/bin/sh
fb_status=$(wget --spider -S https://filebox.ece.vt.edu/ 2>&1 | grep "HTTP/1.1 200 OK")

mkdir checkpoints

echo "downloading from filebox ..."
wget https://filebox.ece.vt.edu/~jbhuang/project/3DPhoto/model/color-model.pth
wget https://filebox.ece.vt.edu/~jbhuang/project/3DPhoto/model/depth-model.pth
wget https://filebox.ece.vt.edu/~jbhuang/project/3DPhoto/model/edge-model.pth
wget https://filebox.ece.vt.edu/~jbhuang/project/3DPhoto/model/model.pt

mv color-model.pth checkpoints/.
mv depth-model.pth checkpoints/.
mv edge-model.pth checkpoints/.
mv model.pt MiDaS/.

## 比如,下面这些就是 后来,作者又更新 补充的

echo "cloning from BoostingMonocularDepth ..."
git clone https://github.com/compphoto/BoostingMonocularDepth.git
mkdir -p BoostingMonocularDepth/pix2pix/checkpoints/mergemodel/

echo "downloading mergenet weights ..."

此时,download.sh 脚本运行之后,项目结构如下

tree 3d-photo-inpainting/
3d-photo-inpainting/
├── argument.yml
├── bilateral_filtering.py
├── BoostingMonocularDepth
│ ├── Boostmonoculardepth.ipynb
│ ├── dataset_prepare
│ │ ├── create_crops.m
│ │ ├── generatecrops.m
│ │ ├── ibims1_prepare.m
│ │ ├── ibims1_selected.mat
│ │ ├── mergenet_dataset_prepare.md
│ │ └── midas
│ │ ├── models
│ │ │ ├── base_model.py
│ │ │ ├── blocks.py
│ │ │ ├── midas_net.py
│ │ │ └── transforms.py
│ │ ├── run.py
│ │ └── utils.py
│ ├── demo.py
│ ├── eval(238, 238, 238); opacity: 0.6;">

第一次运行测试遇到的报错

python main.py --config argument.yml
running on device 0
0%| | 0/1 [00:00<?, ?it/s]Current Source ==> moon
Running depth extraction at 1638526409.2872481
BoostingMonocularDepth/inputs/*.png
BoostingMonocularDepth/inputs/*.jpg
device: cuda
Namespace(Final=True, R0=False, R20=False, colorize_results=False, data_dir='inputs/', depthNet=0, max_res=inf, net_receptive_field_size=None, output_dir='outputs', output_resolution=1, pix2pixsize=1024, savepatchs=0, savewholeest=0)

...
...

Traceback (most recent call last):
...
File "/home/moli/anaconda3/envs/torch14/lib/python3.6/site-packages/imageio/core/request.py", line 260, in _parse_uri
raise FileNotFoundError("No such file: '%s'" % fn)
FileNotFoundError: No such file: '/home/moli/project/projectBy/nine/2021/3d-photo-inpainting/BoostingMonocularDepth/outputs/moon.png'

解决方法如下

cp image/moon.jpg BoostingMonocularDepth/outputs/moon.png
  • 并且把如下代码,两行清空目录的操作注释掉

图片转换为 mp4 video,一项神奇的技术【CVPR 2020】_3d_04

2 RuntimeError: CUDA out of memory

RuntimeError: CUDA out of memory. Tried to allocate 1.17 GiB (GPU 0; 15.75 GiB total capacity; 2.56 GiB already allocated; 286.31 MiB free; 2.59 GiB reserved in total by PyTorch)
0%| | 0/1 [00:22<?, ?it/s]
Traceback (most recent call last):
File "main.py", line 76, in <module>
vis_photos, vis_depths = sparse_bilateral_filtering(depth.copy(), image.copy(), config, num_iter=config['sparse_iter'], spdb=False)
File "/home/moli/project/projectBy/nine/2021/3d-photo-inpainting/bilateral_filtering.py", line 31, in

这个问题、经验证,纯粹是 GPU 当时被其他用户占用;

第 0 块 显卡,闲置时,重新运行,该错误就消失了

3 ["Error 65544: b'X11: The DISPLAY environment variable is missing'"]

接下来,继续运行,遇到这个报错

这个报错,网上查了一些解决方法,于我并不适用,盲猜是因为我的服务器不具备、显示器、无法显示

Start Running 3D_Photo ...
Loading edge model at 1638849812.6169176
Loading depth model at 1638849815.373448
Loading rgb model at 1638849816.3655758
Writing depth ply (and basically doing everything) at 1638849817.4631581
Writing mesh file mesh/moon.ply ...
Making video at 1638850000.3338194
fov: 53.13010235415598
0%| | 0/1 [04:18<?, ?it/s]
Traceback (most recent call last):
File "main.py", line 141, in <module>
mean_loc_depth=mean_loc_depth)
File "/home/moli/project/projectBy/nine/2021/3d-photo-inpainting/mesh.py", line 2203, in output_3d_photo
proj='perspective')
File "/home/moli/project/projectBy/nine/2021/3d-photo-inpainting/mesh.py", line 2134, in __init__
self.canvas = scene.SceneCanvas(bgcolor=bgcolor, size=(canvas_size*factor, canvas_size*factor))

...
...

OSError: Could
not init glfw:
["Error 65544: b'X11: The DISPLAY environment variable is missing'"]

报错 github 上的讨论: ​​github.com/openai/mujo…​

图片转换为 mp4 video,一项神奇的技术【CVPR 2020】_ide_05

2021-12- 07 重新更新的本部分内容,如果有小伙伴,参考到这里,并且顺利解决的话,欢迎 告知我一下哇


???? 可能遇到的报错总结


  • ​AttributeError: 'Graph' object has no attribute 'node'​
  • 分析: 原因是 没有 安装 networkx 或者 安装的版本 不匹配

正确安装即可:

pip install networkx==2.3


  • 收藏
  • 评论
  • 举报

上一篇:27岁左右的北漂互联网人,他们的生活又是怎样

标签:photo,py,project,CVPR,mp4,video,2021,install,model
From: https://blog.51cto.com/u_15660370/5734929

相关文章