a/README.md b/README.md
1
# rocaseg - Robust Cartilage Segmentation from MRI
1
# rocaseg - Robust Cartilage Segmentation from MRI
2
2
3
Source code for Panfilov et al. "Improving Robustness of Deep Learning Based Knee MRI Segmentation: Mixup and Adversarial Domain Adaptation", https://arxiv.org/abs/1908.04126v3.
3
Source code for Panfilov et al. "Improving Robustness of Deep Learning Based Knee MRI Segmentation: Mixup and Adversarial Domain Adaptation", https://arxiv.org/abs/1908.04126v3.
4
4
5
<p align="center">
5
6
<img src="github_image.png" width="700" alt="Overview"/> 
6
7
</p>
8
9
### Important!
7
### Important!
10
8
11
The camera-ready version contained a bug in Dice score computation for tibial cartilage on Dataset C. Please, refer to the arXiv version for the corrected values - https://arxiv.org/abs/1908.04126v3.
9
The camera-ready version contained a bug in Dice score computation for tibial cartilage on Dataset C. Please, refer to the arXiv version for the corrected values - https://arxiv.org/abs/1908.04126v3.
12
10
13
### Description
11
### Description
14
12
15
1. To reproduce the experiments from the article one needs to have access to
13
1. To reproduce the experiments from the article one needs to have access to
16
 OAI iMorphics, OKOA, and MAKNEE datasets.
14
 OAI iMorphics, OKOA, and MAKNEE datasets.
17
15
18
2. Download code from this repository.
16
2. Download code from this repository.
19
 
17
 
20
3. Create a fresh Conda environment using `environment.yml`. Install the downloaded
18
3. Create a fresh Conda environment using `environment.yml`. Install the downloaded
21
 code as a Python module.
19
 code as a Python module.
22
20
23
4. `datasets/prepare_dataset_...` files show how the raw data is converted into the
21
4. `datasets/prepare_dataset_...` files show how the raw data is converted into the
24
 format supported by the training and the inference pipelines.
22
 format supported by the training and the inference pipelines.
25
 
23
 
26
5. The structure of the project has to be as follows:
24
5. The structure of the project has to be as follows:
27
    ```
25
    ```
28
    ./project/
26
    ./project/
29
        | ./data_raw/  # raw scans and annotations
27
        | ./data_raw/  # raw scans and annotations
30
             | ./OAI_iMorphics_scans/
28
             | ./OAI_iMorphics_scans/
31
             | ./OAI_iMorphics_annotations/
29
             | ./OAI_iMorphics_annotations/
32
             | ./OKOA/
30
             | ./OKOA/
33
             | ./MAKNEE/
31
             | ./MAKNEE/
34
        | ./data/  # preprocessed scans and annotations
32
        | ./data/  # preprocessed scans and annotations
35
        | ./src/ (this repository)
33
        | ./src/ (this repository)
36
        | ./results/  # models' weights, intermediate and final results 
34
        | ./results/  # models' weights, intermediate and final results 
37
             | ./0_baseline/
35
             | ./0_baseline/
38
                  | ./weights/
36
                  | ./weights/
39
                  | ...
37
                  | ...
40
             | ./1_mixup/
38
             | ./1_mixup/
41
             | ./2_mixup_nowd/
39
             | ./2_mixup_nowd/
42
             | ./3_uda1/
40
             | ./3_uda1/
43
             | ./4_uda2/
41
             | ./4_uda2/
44
             | ./5_uda1_mixup_nowd/
42
             | ./5_uda1_mixup_nowd/
45
    ```
43
    ```
46
44
47
6. File `scripts/runner.sh` contains the complete description of the workflow.
45
6. File `scripts/runner.sh` contains the complete description of the workflow.
48
46
49
7. Statistical testing is implemented in `notebooks/Statistical_tests.ipynb`.
47
7. Statistical testing is implemented in `notebooks/Statistical_tests.ipynb`.
50
48
51
8. Pretrained models are available at https://drive.google.com/open?id=1f-gZ2wCf55OVjgA8oXd7xttGVW5DUUcU .
49
8. Pretrained models are available at https://drive.google.com/open?id=1f-gZ2wCf55OVjgA8oXd7xttGVW5DUUcU .
52
50
53
### Legal aspects
51
### Legal aspects
54
52
55
This code is freely available only for research purposes.
53
This code is freely available only for research purposes.
56
54
57
The software has not been certified as a medical device and, therefore, must not be used
55
The software has not been certified as a medical device and, therefore, must not be used
58
for diagnostic purposes. 
56
for diagnostic purposes. 
59
57
60
Commercial use of the provided code and the pre-trained models is strictly prohibited,
58
Commercial use of the provided code and the pre-trained models is strictly prohibited,
61
since they were developed using the medical datasets under restrictive licenses.   
59
since they were developed using the medical datasets under restrictive licenses.   
62
60
63
### Cite this work
61
### Cite this work
64
62
65
```
63
```
66
@InProceedings{Panfilov_2019_ICCV_Workshops,
64
@InProceedings{Panfilov_2019_ICCV_Workshops,
67
  author = {Panfilov, Egor and Tiulpin, Aleksei and Klein, Stefan and Nieminen, Miika T. and Saarakkala, Simo},
65
  author = {Panfilov, Egor and Tiulpin, Aleksei and Klein, Stefan and Nieminen, Miika T. and Saarakkala, Simo},
68
  title = {Improving Robustness of Deep Learning Based Knee MRI Segmentation: Mixup and Adversarial Domain Adaptation},
66
  title = {Improving Robustness of Deep Learning Based Knee MRI Segmentation: Mixup and Adversarial Domain Adaptation},
69
  booktitle = {The IEEE International Conference on Computer Vision (ICCV) Workshops},
67
  booktitle = {The IEEE International Conference on Computer Vision (ICCV) Workshops},
70
  month = {Oct},
68
  month = {Oct},
71
  year = {2019}
69
  year = {2019}
72
}
70
}
73
```
71
```