论文地址:Data augmentation using learned transforms for one-shot medical image segmentation
这是MIT的一篇CVPR2019的论文,对MRI医学图像进行数据增强从而进行图像分割,思路挺有意思的
医学图像一直都存在label难以获取的问题,在之前的数据增强基本都是对已有标签的数据进行旋转、放大缩小什么的这些操作进行数据增强,本文提出了一种新奇的数据增强方法
本文要解决的问题是,只有一个已经有label的分割MRI数据,但是有很多没有label的MRI数据,如何进行分割训练,其实相当于semi-supervise learning的问题了
本文提出的方法是,使用这一个有label的MRI,和很多没有label的数据集之间,学习spatial和apppearance的变化,然后使用这个一个有label的MRI,根据这些spatial和appearance的transform进行合成新的有label的数据,从而达到扩充有label数据集的作用,然后使用这些数据进行分割的训练
整个网络的框架如上图所示,x是存在有配对的label map的数据,y为没有label的数据,使用x和y进行spatial和appearance的tranform学习,然后对这些transform进行sample,将这些sample作用在x上,生成synthesize数据
整个过程用数学符号化表达如上图所示,为存在有配对的label map的MRI数据,
为没有label的MRI数据,
为spatial的transform,
为appearance的transform,
为x和y之间的学习到的spatial的transform,
为x和y之间学习到的appearance的transform
至于spatial和appearance之间的学习使用类似3DU-Net的结构,如下图所示
网络的输入都是x和y的concate(H*W*D*2),然后如果是spatial的网络,输出为(H*W*D*3),对应x和y之间三个维度上的位移,如果是appearance的网络,输出为(H*W*D*1),对应每个voxel的灰度值变化,每个网络都将最后得到的结果apply到x上,然后使用一个相似loss和y之间建立联系,(感觉这点和自编码器有点像,只不过没有使用概率建模,直接使用CNN学到位移),然后还有一个施加在输出上的smooth loss
其中,
该文章的代码已经开源:https://github.com/xamyzhao/brainstorm.