昨天我尝试用双cuda的方式来配置换,但是还是遇到了cuda的错误,我不懂pytorch又没办法解决。然后我浏览下issue,看到有同样的问题,大概率是由于显卡是20系列的,老版本的cuda不行,解决方式就是升级pytorch版本用新的cuda。所以我这里把配置环境重新做个记录,免得下次又来。。

1. 安装cuda和cudnn

这个不多说了,cuda 10.0cudnn 7.5

2. 安装python环境

  1. 初始化python环境
conda create --name CenterNet python=3.6
conda activate CenterNet
conda install pytorch=1.0 torchvision cudatoolkit=10.0
  1. 安装他所使用的库
pip install -r requirements.txt
  1. 安装cocoapi

    git clone https://github.com/cocodataset/cocoapi.git
    cd cocoapi/PythonAPI
    make
    python setup.py install --user

  2. 安装DCNv2网络

记得编译器要设置为gcc-6

cd src/lib/models/networks
rm -rf DCNv2
git clone https://github.com/CharlesShang/DCNv2.git
cd DCNv2
./make.sh

  1. 安装nms
cd src/lib/external
make

3. 下载数据集

cd src/tools
./get_pascal_voc.sh
mv voc ../../data

4. 开始训练

python main.py ctdet --exp_id pascal_resdcn18_384 --arch resdcn_18 --dataset pascal --num_epochs 70 --lr_step 45,60

完成

我发现在训练模型时gpu使用率居然是100%,这个真的有点强,难道pytorch真的比tensorflow给力吗?