栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

从0开始复现3D Photography using Context-aware Layered Depth Inpainting

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

从0开始复现3D Photography using Context-aware Layered Depth Inpainting

系列文章目录

1.3D Photography using Context-aware Layered Depth Inpainting论文
从0开始复现


文章目录
  • 系列文章目录
  • 前言
  • 一、论文有关资源介绍
  • 二、环境准备
    • 1.pytorch环境
      • (1)英伟达GPU配置
        • 首先更新显卡驱动(可略过)
        • 下载安装cuda
        • 下载安装cudnn
        • 添加环境变量
      • 安装pytorch
          • 关于tensorflow:
        • 安装验证
    • 2.复现运行
      • 安装其他依赖包
      • 打开项目装载模型
      • 运行main.py
      • windows下的一个更改
  • 总结


前言

CVPR2020论文3D Photography using Context-aware Layered Depth Inpainting 提出了一种单张图片转为3D视频的方法。
效果很棒,再此尝试在windows10系统下复现


一、论文有关资源介绍

知乎文章翻译介绍:知乎翻译
github:开源地址
paper:项目展示网址

二、环境准备 1.pytorch环境 (1)英伟达GPU配置 首先更新显卡驱动(可略过)

在电脑->设备管理器->显示适配器里找到电脑的显卡配置

进入网址 http://www.nvidia.com/Download/index.aspx 根据显卡型号搜索对应的显卡驱动并下载
exe文件直接运行,默认安装即可。其他双击红线处选择驱动更新文件。

下载安装cuda

按win+Q,输入NVIDIA Control Panel 打开NVIDIA控制面板。

帮助-》系统信息-》组件

近日刚更新,最高支持11.6版本(据说向下兼容)
cuda下载网址:cuda下载cuda的版本和你电脑显卡版本以及pytorch服务版本要对应
几个G耐心等待
下载完毕后默认安装(不确定更改配置会有什么影响,C盘空间足够就默认吧)
win+R-》cmd里使用 nvcc -V可以查到版本号。

下载安装cudnn

cudnn下载网址:cudnn
填写问卷,注册用户,之后下载cuda版本对应的即可
安装方式解压-》复制所有文件到C:Program FilesNVIDIA GPU Computing ToolkitCUDAv11.6(cuda安装路径下)主要是bin include lib三个文件夹,直接覆盖即可

添加环境变量

此电脑-》属性-》高级系统设置-》环境变量-》path里添加
(环境字节过长的问题):参考添加方法
path里加入%env_ex%
新建一个env_ex的环境变量与path同级
cmd输出path成功输出即添加成功
cuda添加环境变量参考

个人电脑安装了cuda11.0(tensorflow)和11.6(pytorch)

安装pytorch

下载网址:torch
选择cuda对应版本

个人cnda有问题,使用pip安装
老版本pytorch:老版torch安装原项目的环境为

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

个人使用的pytorch==1.11.0可以成功运行
总之torch和gpu适配能使用GPU加速即可
关于下载中断的解决办法:
pip下载可以看到抓取网址:https://download.pytorch.org/whl/cu113

例如个人下载的版本如上,点击进入目录,选择pip中下载的版本手动下载至电脑,然后pip install 包位置即可

关于tensorflow:

https://www.tensorflow.org/install/source_windows
只要cuda,cudnn安装正确(一般也不会出错),选择对应版本的tf安装就没有问题,选择方式见上方网址

个人使用cuda为11.0的tf

安装验证

如下:

import tensorflow
tensorflow.test.is_gpu_available()
import torch
torch.cuda.is_available()
#返回true这说明GPU可用
2.复现运行 安装其他依赖包

过于基础的包这里不列举,创建虚拟环境应该必备

pip install -r requirements.txt
#requirements内容
opencv-python==4.2.0.32
vispy==0.6.4
moviepy==1.0.2
transforms3d==0.3.1
networkx==2.3
scikit-image
cynetworkx

顺利的话以上包会依次安装
下载慢可以使用清华镜像

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

记录一个bug:cynetworkx安装build失败的问题

pip install Cython==3.0a5
pip install git+https://github.com/pattern-inc/cynetworkx.git

结局方案如上:来源

打开项目装载模型


左侧为谷歌实验室运行后生成的一些文件夹以及下载的一些模型
文件夹会自动创建,问题在模型的下载需要科学上网否则下载会中断

chmod +x download.sh
./download.sh

模型下载代码如上(需要模型可以联系我)

运行main.py

至此,所有准备工作都完成,不出意外的话在image文件夹下方一张高清的图片(横竖像素大于1000,否则推理失败)

python main.py --config argument.yml

video文件夹下会生成四个视频,depth会生成深度图片

windows下的一个更改

报错:BoostingMonocularDepthoutputs下图片找不到
报错源于BoostingMonocularDepth下inputs才是图片入口
image的图片通过luinx的cp命令复制到了inputs下
解决方法
打开boostmonodepth_utils.py文件
第27行cp改为copy

#os.system(f'cy {img_name} {tgt_name}')
os.system(f'copy {img_name} {tgt_name}')
总结

谷歌云端GPU运行了大概几分钟,自己电脑1050ti运行了十几分钟,模型效果很好,但这个时常让人难以接受,如果考虑做成产品模型还需优化,提速。
关于项目复现的问题欢迎点赞 关注 评论

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/835342.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号