Pix2Pix-based Stain-to-Stain Translation: A Solution for Robust Stain Normalization in Histopathology Images Analysis
环境:tensorflow1.15
1.数据集准备
STST中使用的是成对的数据集,因此需要自己制作。
在 \Stain-to-Stain-Translation-master\1_preprocessing中,先执行mitos-extract_patches.py,将图片全部裁剪成合适的大小;再使用create_paired_patches.py制作成对数据集,这里的成对是指灰度图像和彩色图像是成对的;最后使用train_test_random.py划分训练集和测试集。
在mitos-extract_patches.py中我修改了一点,因为我的原始图像不能被256整除,因此先将图片resize到1280×1280后再进行切分。
执行结果如下:
create_paired_patches.py中需要修改range范围为图片数量,图片路径为自己数据集路径。
执行完成后得到的结果如下:
train_test_random.py中修改图片数量以及训练集train中的数量。train和test中的图片已经是随机选取并重新用序号命名的了。
至此,数据集制作已经完成。
2.加载数据开始训练。打开\Stain-to-Stain-Translation-master\2_model中的data_loader.py,注意修改load_batch_test和load_batch_train函数下的图片路径为自己的数据集路径。可以在stain-to-stain-translation.py中修改训练周期、训练批次、模型保存频率等参数,然后执行stain-to-stain-translation.py就可以开始训练了。
注意,这里的文件夹需要自己新建。
3.测试
使用Stain-to-Stain-Translation-master\3_using_stst中的test_stst.py,修改range为测试集数量。
load_data函数为读取测试集数据,需要修改路径为测试集路径。
plot_image函数为保存预测结果的函数,需要提前建立好文件夹。
测试结果发现Original文件夹下的图和test中一分为二的图颜色不一致,会偏黄,好像把红框中的去掉,并且将plot_image函数中的scipy.misc.imsave替换成plt.imsave就可以解决问题。
如果训练中出现同样的问题,可以将data_loader.py中的imread函数替换如下
4.评价指标
论文中的评价指标如下,可以在Stain-to-Stain-Translation-master\5_evaluation文件夹中找到计算方法,注意有些是在matlab中计算。
标签:论文,patches,py,STST,train,复现,test,Stain,Translation From: https://blog.csdn.net/weixin_43934777/article/details/136856242