測試目的
在語義分割基準模型 Deeplab V3+中,測試不同骨架網絡和數據集的影響
具體來說,測試三個數據集:Cityscapes、Pascal VOC 2012和Camvid,輸入尺寸如下:
測試四個骨架網絡:MobileNet V2、Xception-65、ResNet-50和ResNet-101;訓練 batch size 均設置為 16. 訓練時分別訓練 40k/30k/6k 個iteration,采用單尺度進行測試;
測試環境
安裝步驟
1.安裝 anaconda 環境并且在命令行中輸入命令安裝;
bash Anaconda3-5.0.1-Linux-x86_64.sh
gedit ~/.bashrc
export PATH=$PATH:/home/omnisky/anaconda3/bin
2.配置 python 環境,安裝 pytorch;
conda create -n torch11 python=3.9
conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch
3.下載數據集并進行必要路徑配置;
Cityscapes Dataset – Semantic Understanding of Urban Street Scenes
(cityscapes-dataset.com)
4.克隆 GitHub 語義分割開源項目 git@github.com:zhizhangxian/sssegmentation.git.并且配置相關環境
pip install -r requirements.txt
5.運行訓練和測試代碼
bash job.sh
bash test.sh
測試結果
各個數據集和不同骨架網絡的 Deeplab V3 Plus 性能(mIOU(%))
測試結論
1.在數據集 Pascal VOC 上 Xception 取得了比 ResNet 更好的表現;
2.在數據集 Cityscapes 上,ResNet 系列的分割性能比較好,以 ResNet-101 最佳;
3.Camvids 數據集存在較大的過擬合問題。所以性能和其他 SOTA 結果相比存在不足;