Microscopy Cell Segmentation Via Convolutional LSTM Networks
-
源自:ISBI2019:IEEE International Symposium on Biomedical Imaging(IEEE生物医学图像国际研讨会)
-
阅读日期:2020年11月23日
Abstract
- 活细胞显微镜序列图像存在复杂的空间结构和复杂的时间行为,使得分析这类图像具有很大的挑战。在分析中,细胞分割是一个重要的问题,能使用卷积神经网络(CNNs)来捕获数据的空间属性。最近的卷积编码器-译码器像是U-Net展现出了良好的分割效果。然而,这些方法的局限性在于他们无法结合时间信息,而时间信息能够促进单个接触细胞或部分可见细胞的分割。为了利用细胞动力学,我们提出了一个新的分割架构,该架构结合了卷积长短期记忆(C_LSTM)和U-Net。网络的独特架构使得它在C-LSTMs记忆单元中能够捕捉多尺度、紧密的、时空编码。该方法在细胞跟踪挑战(Cell Tracking Challenge)进行了评估,并取得了最先进的结果(在Fluo-N2DH-SIM+数据集中取得第一名,在DIC-C2DL-HeLa数据集中取得第二名)。代码开源:https: //github.com/arbellea/LSTM-UNet.git
1. Introduction
- 活细胞显微镜成像时一个强大的工具,并且是生物研究过程中一个重要的组成部分。图像序列的自动标注是属性(例如细胞大小,流动性,蛋白质含量)定量分析的关键。最近的图像分析方法显示了卷积神经网络(CNNs)的优势,几乎在所有领域都超过了最先进的方法,例如目标分类,检测,语义分割,以及许多其他任务。在细胞分割任务中尝试使用CNNs方法的有【4,5,6】。然而,所有这些方法都在独立的,非连续的框架中训练,没有结合任何时间信息,这些时间信息能够帮助相邻细胞难以分开或者细胞部分消失时进行分割。通过结合单个细胞的追踪信息来使用时间信息来帮助分割已经被证明能够提升非深度学习方法的分割结果【7,8,9,10】,但尚未在深度学习方法中得到广泛研究。
- 循环神经网络(RNN)是一种具有反馈连接的人工神经网络,这种独特的架构使得它能够适应于动态行为的分析。LSTM是RNNs的一种特殊变体,它包括一个带有门操控的内部记忆状态向量,从而稳定训练过程。常见的基于LSTM的应用包括自然语言处理(NLP),音频处理,图像字幕。
- 卷积LSTMs(C-LSTMs)通过用卷积替代矩阵乘法来适应图像序列中的局部空间信息。最近C-LSTM被用于处理时域图像序列(例如预测下一帧和体积数据集【17,18】)。在【18】中,C-LSTM在多个方向上用于分割以二维切片堆表示的三维数据。在【17】中提出的另一种3D大脑结构分割方法,将每个接片分别送入到U-Net中,然后将输出送入到双向C-LSTMs中。
- 本文我们将C-LSTMs与编码器-译码器结构相结合,实现了多尺度上紧凑的时空表示。与【17】中使用同一管道不同,我们提出新的架构是两个概念的结合。此外,由于我们的方法用于分割非常长的图像序列,所以双向C-LSTM在计算上是不可行的。我们的框架使用时间间隔显微镜数据,细胞的动力学和他们的空间属性都应该考虑到。特别的,我们在细胞追踪挑战(http://www.celltrackingchallenge.net.)上测试该方法。我们的方法在挑战赛组织者提交的几个数据集中名列前三,特别是在Fluo-N2DH-SIM+和DIC-C2DL-HeLa数据集中。
- 本文剩余的部分行文结构如下。Section 2展示了问题的概率公式,并详细阐述了所提出的网络。技术方面的细节在Section 3。在Section 4中我们证明我们方法的优势,展示了最高水平的细胞分割结果。在Section 5得出结论。
2. Methods
2.1. Network Architecture
- 提出的网络将C-LSTM【15】模块结合到U-Net【6】架构中。这种组合,正如这里所建议的,被证明是强大的。U-Net架构,是一种带跳跃连接的编码器-译码器,能够在多个图像尺度中提取有意义的描述符。然而,这并不能解释细胞特殊的动态,这种动态能够显著帮助分割。将C-LSTM引入到网络中,通过将其(细胞外观)紧凑表示保存在C-LSTM记忆单元中,能够在多个尺度上考虑过去细胞的外观。我们建议在U-Net的编码器部分的每个尺度中加入C-LSTM层。在多个尺度中使用C-LSTM对于细胞显微序列是必要的,因为帧到帧的差异可能在不同的尺度,取决于细胞的动力学。此外,与脑体积分割【17】不同,显微序列是任意长度的,使得双向LSTMs在计算上无法操作,细胞能够以不同的速度移动,这种变化通常是不平滑的。与其他可选方法的比较在Section 4.2。提出的网络是全卷积的,并且在训练和测试时能够使用任意尺寸的图像。图1是网络的架构图,细节详见Section 3。
2.2 Formulation
- 本文解决的是从显微镜图像序列中对单个细胞的分割(分割每个2d图像的每个细胞?)。这类问题的主要挑战不仅是前景背景的分类,而且是相邻细胞的分离。我们采用了【6】中建议的加权距离损失(weighted distance loss)。该loss被设计用于提高单个细胞的轮廓,通过一个
d
d
d维(2或3)的图像domain
Ω
∈
R
d
\Omega \in \mathbb{R}^{d}
Ω∈Rd划分为两类:前景和背景,两个相邻细胞边界附近的像素赋予更高的权重。我们设置
C
=
{
0
,
1
}
C=\{0, 1\}
C={0,1}分别表示前景和背景。令
{
I
t
}
t
=
1
T
\{I_{t}\}^{T}_{t=1}
{It}t=1T为输入的图像序列(长度为
T
T
T),其中
I
t
:
Ω
→
R
I_{t}:\Omega \rightarrow \mathbb{R}
It:Ω→R是灰度图。网络由两个部分组成(每个部分都有
L
L
L个块),编码循环块
E
θ
l
{
l
}
(
⋅
)
E^{\{l\}}_{\theta_{l}}(\cdot)
Eθl{l}(⋅)和解码块
D
θ
l
{
l
}
(
⋅
)
D^{\{l\}}_{\theta_{l}}(\cdot)
Dθl{l}(⋅),其中
θ
l
\theta_{l}
θl是网络的参数。在时间
t
∈
T
t \in T
t∈T输入到C-LSTM编码层
l
∈
[
0
,
.
.
.
.
,
L
−
1
]
l \in [0,....,L-1]
l∈[0,....,L−1]包括前一层的下采样输出、当前层前一时间的输出、以及C-LSTM记忆单元输出。我们将这三个输入分别设为
x
t
{
l
}
x_{t}^{\{l\}}
xt{l},
h
t
−
1
{
l
}
h_{t-1}^{\{l\}}
ht−1{l},
c
t
−
1
{
l
}
c_{t-1}^{\{l\}}
ct−1{l}。公式定义:
( h t { l } , c t { l } ) = E θ l { l } ( x t { l } , h t − 1 { l } , c t − 1 { l } ) (1) (h_{t}^{\{l\}}, c_{t}^{\{l\}}) = E_{\theta_{l}}^{\{l\}}(x_{t}^{\{l\}}, h_{t-1}^{\{l\}}, c_{t-1}^{\{l\}}) \tag{1} (ht{l},ct{l})=Eθl{l}(xt{l},ht−1{l},ct−1{l})(1)
其中,
x t { l } = { I t , l = 0 M a x P o o l ( h t { l − 1 } ) , 0 < l < L (2) x_{t}^{\{l\}} = \left\{\begin{matrix} I_{t}, & l=0 \\ MaxPool(h_{t}^{\{l-1\}}), & 0<l<L \end{matrix}\right. \tag{2} xt{l}={It,MaxPool(ht{l−1}),l=00<l<L(2) - 译码器层
l
∈
[
L
,
.
.
.
,
2
L
−
1
]
l \in [L,...,2L-1]
l∈[L,...,2L−1]的输入是之前层输出的上采样
y
t
{
l
}
y_{t}^{\{l\}}
yt{l}(本文使用双线性插值)、编码器相应层的输出
h
t
{
2
L
−
1
−
l
}
h_{t}^{\{2L-1-l\}}
ht{2L−1−l},我们定义译码器的输出为
z
t
{
l
}
z_{t}^{\{l\}}
zt{l}。公式为
y t { l } = { h t { l − 1 } , l = L U p S a m p l e ( z t { l − 1 } ) , L < l < 2 L − 1 (3) y_{t}^{\{l\}} = \left\{\begin{matrix} h_{t}^{\{l-1\}}, & l=L \\ UpSample(z_{t}^{\{l-1\}}), & L<l<2L-1 \end{matrix}\right. \tag{3} yt{l}={ht{l−1},UpSample(zt{l−1}),l=LL<l<2L−1(3)
z t { l } = D θ l ( y t { l } , h t { 2 L − 1 − l } ) (4) z_{t}^{\{l\}} = D_{\theta_{l}}(y_{t}^{\{l\}}, h_{t}^{\{2L-1-l\}}) \tag{4} zt{l}=Dθl(yt{l},ht{2L−1−l})(4) - 我们定义参数为
θ
\theta
θ的网络
f
θ
f_{\theta}
fθ是
L
L
L个编码模块后接
L
L
L个解码模块的组合,定义
θ
:
=
{
θ
l
}
l
=
0
2
L
−
1
\theta :=\{\theta_{l}\}_{l=0}^{2L-1}
θ:={θl}l=02L−1。编码模块
E
θ
l
{
l
}
E_{\theta_{l}}^{\{l\}}
Eθl{l}多尺度编码高级时空特征,译码模块
D
θ
l
{
l
}
D_{\theta_{l}}^{\{l\}}
Dθl{l}细化信息到一个全尺寸的分割图中
o t = Δ f θ = z t 2 L − 1 (5) o_{t} \overset{\underset{\Delta}{}}{=} f_{\theta} = z_{t}^{2L-1} \tag{5} ot=Δfθ=zt2L−1(5) - 最终输出
∣
C
∣
|C|
∣C∣维的特征向量对应于每个输入的像素
v
∈
Ω
v \in \Omega
v∈Ω。对像素的标签概率使用softmax得到最后的分割结果
p ( c ∣ o t ( v ) ) = e x p { [ o t ( v ) ] c } ∑ c ′ ∈ C e x p { [ o t ( v ) ] c ′ } , c ∈ C (6) p(c|o_{t}(v)) = \frac{exp\{[o_{t}(v)]_{c}\}}{\sum_{c^{'} \in C}exp\{[o_{t}(v)]_{c^{'}}\}}, c \in C \tag{6} p(c∣ot(v))=∑c′∈Cexp{[ot(v)]c′}exp{[ot(v)]c},c∈C(6)
最终的分割结果定义为:
Γ ^ t = a r g c ∈ C m a x p ( c ∣ o t ( v ) ) (7) \hat{\Gamma}_{t} = arg_{c \in C} max p(c|o_{t}(v)) \tag{7} Γ^t=argc∈Cmaxp(c∣ot(v))(7) - 每个前景类的连通分量给定了唯一的标签,并被视为单独的细胞。
2.3. Training and Loss
- 在训练期间,网络拥有一个完整的序列和手工标注 { I t , Γ t } t = 1 T \{I_{t}, \Gamma_{t}\}_{t=1}^{T} {It,Γt}t=1T,其中 Γ t : Ω → [ 0 , 1 ] \Gamma_{t} : \Omega \rightarrow [0, 1] Γt:Ω→[0,1]是ground truth标签。网络训练使用通过时间的截断反向传播(Truncated Back Propagation Through Time, TBPTT)【19】。在每个反向传播步骤,网络展开为 τ \tau τ时间步。Loss使用原来U-Net文章的距离权重交叉熵损失(distance weighted cross-entropy loss)。Loss通过引入指数惩罚因子,使细胞分离,该因子与像素与最近和第二近的细胞像素的距离成正比。因此,位于两个相邻细胞之间的像素的重要性更高,而距离细胞较远的像素对loss的影响较小。对权重loss的更详细讨论能在原始U-Net文章中找到。
3 Implementation Details
3.1. Architecture
- 网络包括 L = 4 L=4 L=4个编码和译码模块。每个编码模块由C-LSTM层、leaky ReLU、卷积层、批量归一化、leaky ReLU、maxpool组成。译码模块由双线性插值、与编码层平行的级联、两个卷积层、批量归一化、leaky ReLU。所有的卷积层使用卷积核大小为 3 x 3,层的深度为(128, 256, 512, 1024)。所有的maxpool层使用核大小 2 x 2并且没有重叠(overlap)。所有的C-LSTM核大小分别为3 x 3和5 x 5,层深度为(1024, 512, 256, 128)。最后一个卷积层使用核大小为 1 x 1,深度2,后接一个softmax层产生最后的概率。
3.2. Training Regime
- 使用RMS-Prop优化器对网络进行了大约100K次的迭代训练,学习率为0.0001。设置展开长度的参数为 τ = 5 \tau = 5 τ=5,批量大小设置为三个序列。
3.3. Data
- 图像使用两个标签来区分背景和细胞核。为了增加数据多样性,数据在空间和时间上随机增强:1)随机水平和垂直翻转;2)随机90°旋转;3)随机160 x 160裁剪;4)随机序列反转( [ T , T − 1 , . . . , 2 , 1 ] [T, T-1,..., 2, 1] [T,T−1,...,2,1]);5)随机时间下采样,因子为 k ∈ [ 0 , 4 ] k \in [0, 4] k∈[0,4];6)随机仿射和弹性变换。注意到灰度值由于具有生物学意义,所以没有进行增强。
4. Experiments and Results
4.1. Evaluation Method
- 该方法使用细胞追踪挑战的在线版本进行评估。特别的,SEG【22】评估分割结果。SEG度量被定义为一对ground truth标签A和对应的分割B的平均Jaccard指数(即IoU) ∣ A ∩ B ∣ ∣ A ∪ B ∣ \frac{|A \cap B|}{|A \cup B|} ∣A∪B∣∣A∩B∣。如果 ∣ A ∩ B ∣ > 1 2 ∣ A ∣ |A \cap B| > \frac{1}{2}|A| ∣A∩B∣>21∣A∣则视为分割是正确的。
4.2. Architecture Selection:
- 本文提出通过用C-LSTM层替代编码器中的卷积层从而将C-LSTM整合到U-Net中(称为EncLSTM)。本节将该架构与两个替代方案比较:1)译码器部分的卷积层(称为DecLSTM);2)编码器和译码器的卷积层(称为FullLSTM)。在相同输入的情况下,同时训练这三个网络。由于训练集大小有限,网络在Fluo-N2DH-SIM+中训练,在相似的数据集Fluo-N2DH-GOWT1(来自细胞追踪挑战的训练集)中测试。表1的结果表明所提出方法的优势。然而,与DecLSTM相比,EncLSTM的优势并不是必定的,正如接下来讨论的细胞跟踪挑战的结果(4.3节)所证明的那样。我们进一步注意到,原始U-Net也应用在挑战赛中,被官方称为FR-Ro-Ge,在表2中由上标(d)表示
4.3 Cell Tracking Challenge Results:
- 文章使用了细胞追踪挑战中的五个数据集来评估EncLSTM和DecLSTM,其中前两个数据集的表现较好,后三个由于训练集比较小所以效果不明显。可以使用【4】中提到的对抗loss(adversarial loss)来解决。分割结果的可视化https://youtu.be/IHULAZBmoIM
Summary
- 时移显微镜细胞分割本质上是一项时空任务。人工标注常常以来时间信息来精确区分相邻细胞和检测部分可见的细胞。本文的工作展示了将时间分析(以C-LSTM的形式)整合到一个已有的网络架构(U-Net)中,并试验了几种可替代的组合形式。由此产生的新架构能够在多个尺度中提取有意义的特征,并根据时间进行传播。这使得网络能够在困难场景(时间队列是重要的场景)中准确分割细胞。定量分析表明我们的方法取得了最好的结果:表2中在细胞追踪挑战中分别取得了第一和第二的成绩。此外,表1表明提出的网络有从模拟训练数据泛化到真实数据的能力。这意味着可以减少甚至消除对大量人工标注的数据需求。我们接下来计划结合对抗loss(adversarial loss)来削弱对训练数据集大小的依赖性,如【4】。
Reference
[17] J. Chen, L. Yang, Y. Zhang, M. Alber, and D. Z. Chen, Combining fully convolutional and recurrent neural networks for 3d biomedical image segmentation, in Advances in Neural Information Processing Systems, 2016, pp. 3036 3044.
[18] M. F. Stollenga, W. Byeon, M. Liwicki, and J. Schmidhuber, Parallel multi-dimensional lstm, with application to fast biomedical volumetric image segmentation, in Advances in neural information processing systems, 2015, pp. 2998 3006.