一、环境部署
创建镜像
本人使用Ubuntu18.04,cuda10.0,python3.6的镜像
(1)拉取镜像
docker pull rogerchen/cuda10.0-cudnn7-py3.6:latest
(2)创建容器
run -it --gpus all -v 需要挂载的文件夹:/home/work/ rogerchen/cuda10.0-cudnn7-py3.6:latest /bin/bash
(3)安装Anaconda3
清华大学开源软件镜像站下载地址: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
下载 Anaconda3-2019.07-Linux-x86_64.sh(其他也可以)
sudo sh Anaconda3-2019.07-Linux-x86_64.sh
然后一直回车键,直到出现
Please answer 'yes' or 'no'
输入 yes
最后退出镜像再重新进入
conda --version #输出conda 4.5.12 之类的版本信息,就说明安装成功了
(4)使用environment.yaml创建环境
conda env create -f environment.yaml
conda activate mesh_funcspace
如果遇见以下情况
ResolvePackageNotFound:
- pytorch=1.0.0
可以在environment.yaml中将对应行删掉,后续自己安装对应版本包
以我为例:
无法安装pytorch,去https://pytorch.org/get-started/previous-versions/下载torch-1.0.0-cp36-cp36m-linux_x86_64.whl,
pip install torch-1.0.0-cp36-cp36m-linux_x86_64.whl
二、 编译
(1)代码修改
setup.py 106行修改
setup(
ext_modules=cythonize(ext_modules),
cmdclass={
'build_ext': BuildExtension
},
include_dirs=[np.get_include()]
)
setup.py中关于dmc_的全部注释掉
**
同时将im2mesh/config.py.中的import dmc和下面的dmc注释掉**
(2)编译
python setup.py build_ext --inplace
(3)运行
运行前下载pt模型(官方的url没法用),csdn中就有(链接:https://download.csdn.net/download/qq_20044829/84993305?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168387504316800213038136%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fdownload.%2522%257D&request_id=168387504316800213038136&biz_id=1&utm_medium=distribute.pc_search_result.none-task-download-2allinsert_down_v2~default-3-84993305-null-null.142v87control_2,239v2insert_chatgpt&utm_term=Occupancy%20Networks&spm=1018.2226.3001.4187.4)
修改yaml
修改代码im2mesh/checkpoints.py
为了方便
最后运行
python generate.py configs/demo.yaml
最后在occupancy_networks/demo/generation/meshes输出结果
三、后续
由于这个只是demo,如果要实现更好的效果,需要自己训练,由于官方提供的预处理数据集太大,本人没法训练;