视觉前沿算法复现环境配置1——2025CVPR风格迁移网络SaMam
本文记录2025CVPR风格迁移网络——SaMam的环境配置方法。
风格迁移网络的目的是首先学习模板图像的风格样式,然后通过深度学习方法把待转换的图像转换成与模板图像相似的风格样式,这种方法可以考虑用在目标检测等场景中对数据集进行扩增,达到丰富数据集的目的。
它的效果可以直观地通过下面这张图展示出来:
代码的github官网链接为:https://github.com/Chernobyllight/SaMam?tab=readme-ov-file
官网的环境配置版本中cuda版本太新,不好用,这里记录我的环境配置:
python=3.10.14
pytorch=2.2.2
cuda=12.1
torchvision==0.17.2
causal-conv1d>=1.4.0
其他的没有特别固定版本
在配置环境前,要确认自己的系统cuda版本也是12.1,也就是nvcc --version
的输出版本是12.1,否则会报错:
RuntimeError:
The detected CUDA version (11.8) mismatches the version that was used to compile
PyTorch (12.1). Please make sure to use the same CUDA versions.
下面正式开始配置环境。首先在官网下载好SaMam的代码,进入代码目录。
创建conda虚拟环境:
conda create -n SaMam python=3.10.14 -y
安装torch:
conda install pytorch==2.2.2 torchvision==0.17.2 torchaudio==2.2.2 pytorch-cuda=12.1 -c pytorch -c nvidia
安装causal-conv1d库:
pip install causal-conv1d>=1.4.0
安装mamba-ssm库:
pip install mamba-ssm
这里可能会报两种错,一种是numpy的版本太新,需要回退到2.0.0之前的版本:
pip install numpy==1.26.4
一种可能是因为没有挂梯子,那就需要在一个有梯子的电脑上访问官网下载对应版本的mamba-ssm,比如说对于我的版本,需要选择如下图所示的镜像文件:
图中,cu12对应cuda12.x版本,torch2.2对应pytorch2.2.x版本,cp310对应python3.10.x版本。
下载下来后把文件上传到SaMam项目文件夹下:
安装mamba-ssm文件夹:
pip install mamba_ssm-2.2.4+cu12torch2.2cxx11abiTRUE-cp310-cp310-linux_x86_64.whl
安装pytorch_lightning库:
pip install pytorch_lightning
此时通过以下代码运行风格迁移代码:
cd TEST/
python test_image.py --content-dir 待迁移的原图像文件夹路径 \--style-dir 用于迁移的风格模板图像文件夹路径 \--output-dir 迁移后的图像的存储路径 \--model_ckpt 模型文件,在官网下载
模型文件在这里下载:
如果出现mamba与pytorch版本不对应的报错,那就需要从源码克隆并编译 mamba-ssm:
# 克隆仓库
git clone https://github.com/state-spaces/mamba.git
cd mamba/# 编译mamba-ssm
python setup.py install
这样基本上就没问题了,运行成功的输出如下: