pytorch nested unet
1.0.0
このリポジトリには、UNET ++に基づく画像セグメンテーションモデルのコードが含まれています。Pytorchで実装された医療画像セグメンテーション用のネストされたU-Netアーキテクチャが含まれています。
[新規]マルチクラスセグメンテーションデータセットのサポートを追加します。
[新規] Pytorch 1.xのサポートを追加します。
conda create -n= < env_name > python=3.6 anaconda
conda activate < env_name >conda install pytorch torchvision cudatoolkit=10.1 -c pytorchpip install -r requirements.txt inputs
└── data-science-bowl-2018
├── stage1_train
| ├── 00ae65...
│ │ ├── images
│ │ │ └── 00ae65...
│ │ └── masks
│ │ └── 00ae65...
│ ├── ...
|
...
python preprocess_dsb2018.pypython train.py --dataset dsb2018_96 --arch NestedUNetpython val.py --name dsb2018_96_NestedUNet_woDS git clone https://github.com/bermanmaxim/LovaszSoftmax.git
python train.py --dataset dsb2018_96 --arch NestedUNet --loss LovaszHingeLoss
ファイルを次の構造として必ず配置してください(たとえば、クラスの数は2です)。
inputs
└── <dataset name>
├── images
| ├── 0a7e06.jpg
│ ├── 0aab0a.jpg
│ ├── 0b1761.jpg
│ ├── ...
|
└── masks
├── 0
| ├── 0a7e06.png
| ├── 0aab0a.png
| ├── 0b1761.png
| ├── ...
|
└── 1
├── 0a7e06.png
├── 0aab0a.png
├── 0b1761.png
├── ...
python train.py --dataset <dataset name> --arch NestedUNet --img_ext .jpg --mask_ext .png
python val.py --name <dataset name>_NestedUNet_woDS
Lovaszhingelossを使用したDSB2018データセット(96x96)の結果を以下に示します。
| モデル | iou | 損失 |
|---|---|---|
| u-net | 0.839 | 0.365 |
| ネストされたu-net | 0.842 | 0.354 |
| deepsupervision w/ deepsupervisionのネストされたu-net | 0.843 | 0.362 |