Skip to content

Commit 4b57200

Browse files
committed
kmean and rf
1 parent 1dbda7b commit 4b57200

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+657
-55
lines changed

README.md

Lines changed: 28 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,28 @@
1-
# FedDG: Federated Domain Generalization on Medical Image Segmentation via Episodic Learning in Continuous Frequency Space
2-
by [Quande Liu](https://github.com/liuquande), [Cheng Chen](https://cchen-cc.github.io/), [Jing Qin](https://sn.polyu.edu.hk/en/people/academic_staff/index.html#harry.qin), [Qi Dou](http://www.cse.cuhk.edu.hk/~qdou/), [Pheng-Ann Heng](http://www.cse.cuhk.edu.hk/~pheng/).
3-
4-
### Introduction
5-
6-
This repository is for our CVPR 2021 paper '[FedDG: Federated Domain Generalization on Medical Image Segmentation via Episodic Learning in Continuous Frequency Space](https://arxiv.org/pdf/2103.06030.pdf)'.
7-
8-
![](figure/cvpr21_feddg.png)
9-
10-
### Usage
11-
12-
1. Start with a demo for continuous frequency space interpolation among federated clicnets:
13-
```shell
14-
python freq_space_interpolation_demo.py
15-
```
16-
<p align="center">
17-
<img src="figure/demo.png" width="600"/>
18-
</p>
19-
20-
2. Prepare the dataset, and then extract the amplitude spectrum of samples in each local client with the function in ``dataset/prepare_dataset.py``:
21-
22-
3. Organize the data (save the data as npy to speed up federated training) and amplitude spectrum of local clients as following structure:
23-
```
24-
├── dataset
25-
├── client1
26-
├── data_npy
27-
├── sample1.npy, sample2.npy, xxxx
28-
├── freq_amp_npy
29-
├── amp_sample1.npy, amp_sample2.npy, xxxx
30-
├── clientxxx
31-
├── clientxxx
32-
```
33-
4. Train the federated learning model with ELCFS:
34-
```shell
35-
python train_ELCFS.py
36-
```
37-
38-
### Citation
39-
If this repository is useful for your research, please consider citing:
40-
```
41-
@article{liu2021feddg,
42-
title={FedDG: Federated Domain Generalization on Medical Image Segmentation via Episodic Learning in Continuous Frequency Space},
43-
author={Liu, Quande and Chen, Cheng and Qin, Jing and Dou, Qi and Heng, Pheng-Ann},
44-
journal={The IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
45-
year={2021}
46-
}
47-
```
48-
49-
#### Acknowledgement
50-
Some of the code is adapted from [SAML](https://github.com/liuquande/SAML) and [FDA](https://github.com/YanchaoYang/FDA). The datasets used in this paper are downloaded from [Prostate](https://liuquande.github.io/SAML/) and [Fundus](https://github.com/EmmaW8/Dofe).
51-
52-
### Questions
53-
54-
Please contact '[email protected]'
55-
1+
# 眼底图像分割中域泛化问题研究-机器学习作业
2+
3+
# 工作
4+
- 传统机器学习方法
5+
- K均值聚类算法
6+
- 一种居于区域的无监督算法。通过对原始图像的像素点的亮度值对视盘、视杯进行分割,可通过调整聚类数量来提取视盘、视杯的分割效果。
7+
- 随机森林算法
8+
- 将图像分割任务转化为像素点分类任务。通过对原始图像进行边缘特征提取得到图像的边缘特征,随后联合图像的亮度信息喂入模型进行训练。
9+
- 深度学习方法
10+
- FedSVG算法
11+
- 本算法修改自FedDG算法的实现。
12+
- FedDG算法
13+
- 本算法的官方实现只提供了算法框架,缺少数据处理代码,因此在这里对其进行补全。
14+
15+
# 效果
16+
- K均值聚类算法
17+
![](figure/kmeans-1.png)
18+
- 随机森林算法
19+
![](figure/rf.png)
20+
- FedDG算法
21+
![](figure/test-0.png)
22+
23+
# 后续改进工作
24+
- 目前FedDG算法中连续频率空间插值可以看到明显的效果提升,但原论文中的边界损失函数的效果在实验过程中并没有得到良好的体现,因此后续将继续研究边界损失函数问题。
25+
- 论文中所采用的元学习框架为训练过程带来更高的计算代价,下一步将探究将插值数据直接用于模型训练带来的泛化性能差异。
26+
27+
# 参考
28+
本仓库FedDG算法参考自论文的开源实现[FedDG](https://github.com/liuquande/FedDG-ELCFS)

figure/kmeans-1.png

46.6 KB
Loading

figure/rf.png

78.7 KB
Loading

figure/test-0.png

54.8 KB
Loading

kmeans/G-1-L.png

772 KB
Loading

kmeans/G-1-L_copy.png

5.37 KB
Loading

kmeans/V0001.png

703 KB
Loading

kmeans/V0001_copy.png

5.03 KB
Loading

kmeans/g0003.png

633 KB
Loading

kmeans/g0003_copy.png

5.23 KB
Loading

0 commit comments

Comments
 (0)