Pix2Pix项目记录(完结)
----------------------------------------------------------------类似CycleGAN---------------------------------------------------------------
项目地址:有了之前cycleGAN的铺垫,上手很快
服务器54
踩坑
- wandb:connection error ——> 切换至 offline 模式
wandb offline
——> 有网络的地方sync一下wandb sync ./wandb/offline-run-xxxxxxx
(时间较长,耐心等待便可) - 服务器没网的时候通通用offline模式
数据准备
转.nii.gz💿MultiLabel
整理数据🔗ChatGPT
查看数据🔍ITK-SNAP,更具体的可以统计一下resolution和shape
- 数据清洗
- case脱敏,按照顺序进行排列
- 挑出source_domain和target_domain的3D数据(这部分可以跟医生核实,例如,在作者的项目中,发现转换后的.nii.gz文件包含关键词"Cor"&"CubeSTIR"&"src",据此选出打药前后的被试数据)
- 必要时修改数据名称,最好是按照顺序进行排列
- 数据检查
- 检查分辨率和图像大小(例如,在作者的项目中,发现两例数据在打药前后的扫描层数不一致,但分辨率一致),据此可以更好地筛选训练数据
- 数据预处理
- python nii2png.py
准备2D/3D数据
- 2D(与CycleGAN略有不同)
- 目标:把源域图像和目标域图像拼接成一张图像
- 方法(官网):
python datasets/combine_A_and_B.py --fold_A /path/to/data/A --fold_B /path/to/data/B --fold_AB /path/to/data
- 数据位置:
- 拼接命令:
python /homes/xchang/Projects/Done/pytorch-CycleGAN-and-pix2pix-master/generate_image/datasets/combine_A_and_B.py --fold_A /homes/xchang/Projects/Done/pytorch-CycleGAN-and-pix2pix-master/generate_image/datasets/HuaShan_SpinalNerve/ALL/A --fold_B /homes/xchang/Projects/Done/pytorch-CycleGAN-and-pix2pix-master/generate_image/datasets/HuaShan_SpinalNerve/ALL/B --fold_AB /homes/xchang/Projects/Done/pytorch-CycleGAN-and-pix2pix-master/generate_image/datasets/HuaShan_SpinalNerve/ALL/AB/
- 拼接完成:
- 交叉验证的话:
- 目标:把源域图像和目标域图像拼接成一张图像
- 3D(暂无)
训练
- 2D(可能因为网络参数少的关系,bs可以设很大)
python /homes/xchang/Projects/Done/pytorch-CycleGAN-and-pix2pix-master/generate_image/train.py --dataroot /homes/xchang/Data/HuaShan_SpinalNerve_Generation/tranlation/2d/8bit/AB/ --name HuaShan_SpinalNerve_Generation --update_html_freq 1 --model pix2pix --n_epochs 100 --n_epochs_decay 100 --direction AtoB --seed 1995 --input_nc 1 --output_nc 1 --batch_size 256 --preprocess none --gpu_ids 2 #--use_wandb >> train_202401021850
- 3D(暂无)
测试
- 2D
python /homes/xchang/Projects/Done/pytorch-CycleGAN-and-pix2pix-master/generate_image/test.py --dataroot /homes/xchang/Data/HuaShan_SpinalNerve_Generation/tranlation/2d/8bit/AB/ --name HuaShan_SpinalNerve_Generation_inference --model pix2pix --direction AtoB --seed 1995 --input_nc 1 --output_nc 1 --no_dropout --preprocess none --gpu_ids 2 --num_test 422 #--use_wandb >> train_test_20231010
- 3D(暂无)
评价:根据项目进行选择(SSIM, PSNR等)