arXiv 2019
文章目录
1 Background
特征点定位可以看作是 Regression Problem,其中特征点位置是通过使用ROI甚至是Full-size 图像直接预测的,从而导致较大的内存占用,尤其是在高分辨率医学图像的情况下,解剖学特征点定位一直是一个挑战性问题。而特征点定位非常重要的一个领域是分析骨关节炎(OA)不同阶段的膝关节X射线片。OA是世界上最常见的关节疾病,并且是世界上第11大致残因素。
在OA研究领域以及其他领域,特征点定位的两个子任务:感兴趣区域(ROI)定位和特征点定位本身,前者被主要被用于分析整个骨关节,后者主要用于骨形态和纹理分析。在不了解膝盖解剖学知识的情况下,手动标记膝盖特征点并不是一个简单的问题,并且当OA的严重性增加时,它变得更具挑战性( fine-grained bone edges和tibial spines intractable变得更难且耗时 )!下图中显示了根据gold-standard Kellgren-Lawrence系统(从0到4)分级的OA严重性每个阶段的关键点注释示例。
从上图可以看出,随着疾病严重程度的发展,骨刺(骨赘)和总体骨畸形会影响图像的外观(其他因素也会影响,例如X射线束角度)。
2 Motivation
作者提出了一个基于 Hourglass Convolutional Network膝关节解剖学特征点定位框架(关于 Hourglass Network的理解可以参考 :卷积神经网络的网络结构——Hourglass.)该网络以弱监督的方式定位特征点,随后使用soft-argmax层直接估计每个特征点的标准化坐标。
作者使用 low-cost labels(1 − 2 points / image) 训练模型实现X射线线片中定位ROI,然后在定位的ROI上训练模型以预测股骨和胫骨中16个解剖标志的位置。最后利用transfer learning 和流水线第一步中的 model weights 来初始化第二阶段模型(看下图)。
总结就是,在第一阶段,作者使用 low-cost annotations (1 − 2 points / image)训练ROI localization model(膝关节区域定位模型 ),,即上图中每个膝关节中心的一个特征点。 在第二阶段,作者利用使用第一阶段模型的pre-trained weights(预训练权重)来初始化第二阶段,并训练特征点定位模型(每个膝关节的16个特征点)。
3 Advantages/ Contributions
- 通过Hourglass Network来充分利用特征点检测的最新进展,并结合本文中最好的方法进行设计。
- 使用MixUp数据增强方法来进行特征点定位,并对knee radiographs进行彻底的消融实验。
- 证明了通过在 low-cost annotations上进行预训练来提高特征点定位方法性能的有效性。
- 在两个独立的数据集上来评估本文的方法,并证明了自己的方法与当前最佳的方法相比有更好的泛化能力。
4 Method
4.1 Network Architecture
模型包括三个模块:Entry block(输入块)、Hourglass block(Hourglass块)、Output block(输出块)、Soft-argmax。整个网络主要有两个参数宽度N和深度d。实验中,N = 24和d = 6可以获得最佳的高精度和高计算速度。
Entry block(输入块):应用s=2且zero padding 为3的7×7 convolution ,并将结果传递给 residual module(残差模块, 本文利用的是 hierarchical multi-scale parallel (分层多尺度并行-HMP)残差块),与传统瓶颈层相比,HMP改善了梯度流。 Bottleneck Residual Block和 HMP块结构如下图所示:
- List item:在这里可以看到传统残差模块和HMP模块的不同
然后在使用一个 2 × 2 max-pooling,之后再使用3个 residual modules(如下图)。
Entry block可以缩小图像4倍,并获得适用于在Hourglass block中执行的多尺度处理的代表性特征嵌入 。
Hourglass block(Hourglass块):该块以2×2 max-pooling开始并递归重复d次(本文中d=6)双路径结构。Hourglass块的每个level都以2×2 max-pooling开始,随后是3 个HMP残差块。具体操作是将当前level i的表示形式传递到下一个Hourglass level i +1,并且还将其转发给Hourglass level i +1的上采样输出求和。 由于在i和i +1 level上feature maps 的空间分辨率不同,因此使用了最近邻的上采样。 在d(6)级,由于达到了Hourglass 深度限制,作者只将表示形式输入到HMP块中,而不是下一个Hourglass level。
Output block(输出块):把Hourglass块的resentations应用于Dropout (p = 0.25)和1×1卷积块。 最后,使用1×1卷积和soft-argmax来回归每个关键点的坐标。
Soft-argmax:
分为两步,首先计算像素的空间像素(i,j)softmax(参考softmax损失函数理解.):
Φ ( β , h , i , j ) = e x p [ β h i j ] ∑ k = 0 W − 1 ∑ l = 0 H − 1 e x p [ β h k l ] \Phi \left ( β,h,i,j \right )= \frac{exp\left [ \beta h_{ij} \right ]}{\sum_{k=0}^{W-1}\sum_{l=0}^{H-1}exp\left [ \beta h_{kl} \right ]} Φ(β,h,i,j)=∑k=0W−1∑l=0H−1exp[βhkl]exp[βhij]
然后,将获得的空间softmax乘以每个像素处的特征点坐标的期望值:
Ψ d ( h ) = ∑ i = 0 W − 1 ∑ j = 0 H − 1 W i j d Φ ( β , h , i , j ) \Psi_{d}\left ( h \right )= \sum_{i=0}^{W-1}\sum_{j=0}^{H-1}W_{ij}^{d}\Phi \left (β,h,i,j \right ) Ψd(h)=i=0∑W−1j=0∑H−1WijdΦ(β,h,i,j)
where
W i j ( x ) = i W , W i j ( y ) = i H W_{ij}^{\left ( x \right )}=\frac{i}{W},W_{ij}^{\left ( y \right )}=\frac{i}{H} Wij(x)=Wi,Wij(y)=Hi
4.2 Loss function
作者评估了各种损失函数,最终确定了与
L
1
L_{1}
L1 Loss密切相关的wing Loss(可以参考人脸关键点检测专用的loss function.)。
在wing Loss的情况下,由于函数的对数性质,在
0
−
(
−
w
,
w
)
0-\left ( -w,w \right )
0−(−w,w)的小范围内的误差会更好地放大:
L
(
y
,
y
^
)
=
{
w
l
o
g
(
1
+
1
ϵ
∣
y
−
y
^
∣
)
∣
y
−
y
^
∣
<
w
∣
y
−
y
^
∣
−
C
o
t
h
e
r
w
i
s
e
L\left ( y,\hat{y} \right )=\left\{\begin{matrix} wlog(1+\frac{1}{\epsilon }\left | y- \hat{y}\right |) \, \; \left | y- \hat{y}\right |<w \\ \left | y- \hat{y}\right |-C \, \; otherwise\end{matrix}\right.
L(y,y^)={wlog(1+ϵ1∣y−y^∣)∣y−y^∣<w∣y−y^∣−Cotherwise
- y y y是 ground truth
- y ^ \hat{y} y^是预测值
- ( − w , w ) ( -w,w ) (−w,w)是非线性部分的损失范围
- C C C,常数,连接线性和非线性部分
4.3 Training techniques
- MixUp(关于mixup参考训练网络trick——mixup):作者通过MixUp来提升本文方法的性能。其以线性插值的方式来构建新的训练样本和标签:
λ ∼ B e t a ( α , α ) \lambda \sim Beta(\alpha ,\alpha) λ∼Beta(α,α) λ ′ = m a x ( λ , 1 − λ ) \lambda^{{}'}=max(\lambda ,1-\lambda ) λ′=max(λ,1−λ) x ′ = λ ′ x 1 + ( 1 − λ ′ ) x 2 {x}'={\lambda }'x_{1}+(1-{\lambda }')x_{2} x′=λ′x1+(1−λ′)x2 p ′ = λ ′ p 1 + ( 1 − λ ′ ) p 2 {p}'={\lambda }'p_{1}+(1-{\lambda }')p_{2} p′=λ′p1+(1−λ′)p2 - ( x 1 , p 1 ) (x_{1},p_{1}) (x1,p1)和 ( x 2 , p 2 ) (x_{2},p_{2}) (x2,p2)两个数据对是原始数据集中的训练样本对
- λ \lambda λ是一个服从B分布的参数, λ ∼ B e t a ( α , α ) \lambda \sim Beta(\alpha ,\alpha) λ∼Beta(α,α)
- Beta分布的概率密度函数如下图所示,其中
α
ϵ
[
0
,
+
∞
]
\alpha \epsilon [0,+\infty ]
αϵ[0,+∞]
因此 α \alpha α是一个超参数,随着 α \alpha α的增大,网络的训练误差就会增加,而其泛化能力会随之增强。而当 α → + ∞ \alpha\rightarrow +\infty α→+∞时,模型就会退化成最原始的训练策略。然后,作者优化以下以mini-batch wise计算的损失函数:
L ′ ( x 1 , x ′ , p 1 , p 2 ) = λ L ( p 1 , o 1 ) + ( 1 − λ ) L ( p 2 , o ′ ) {L}'\left ( x_{1},{x}',p_{1},p_{2} \right )=\lambda L(p_{1},o_{1})+(1-\lambda )L(p_{2},{o}') L′(x1,x′,p1,p2)=λL(p1,o1)+(1−λ)L(p2,o′) - o 1 o_{1} o1和 o 2 o_{2} o2分别是 x 1 x_{1} x1和 x 2 x_{2} x2的网络输出。其中每个点 p 1 p_{1} p1的点 p 2 p_{2} p2是通过简单的 mini-batch 转换生成的。
- Data Augmentation:为了解决数据有限的问题,作者使用了数据增强,即类似于面部特征点检测问题的几何和纹理增强。
- Transfer learning from low-budget annotations:关键点定位的问题包括ROI的识别和实际关键点的定位两个阶段:。这两个阶段需要两类标签:low-cost (1 − 2 points / image)和 high-cost labels (2+ points)。 low-cost labels可能有噪音、不准确,并且产生迅速,而high-cost labels则需要expert knowledge。 所以作者在本文中利用迁移学习,首先在 low-cost labels中心上训练ROI定位模型(每条腿1个特征点标),然后重新使用此阶段中 pre-trained weights来训练特征点定位模型(每个膝关节16个特征点)。
5 Experiments
5.1 Datasets
对所有的数据集,作者的标注过程都分为两个阶段:Run BoneFinder tool、以为有经验的解剖学专家提取特征点。作者中重点介绍了本文中出现的关键点标号,作者使用了VGG图像注释工具。
- OAI:(Osteoarthritis Initiative )作者使用OAI数据集的图像训练了模型并进行了模型选择。 每个KL等级大约采样了150个膝关节图像, 最终的数据集大小总共包括748个膝关节。
- Dataset A:收集于Oulu University Hospital, Finland,与OAI完全不同。包含81位患者的不同KL等级评分:KL0:4 , KL1:54 , KL2:49 , KL3:29 , KL4:25,1个异常被排除,共161个膝关节。仅用于测试模型。
- Dataset B:收集于Oulu University Hospital, Finland,最初包含107位受试者, 其中排除了5个膝关节,从而形成了209个膝盖的数据集(KL 0:35,KL1:84,KL2:51,KL3:37,KL 4:2。仅用于测试模型。
5.2 Ablation Study
进行了消融研究,最终得到OAI数据集上high-cost annotations 的最佳模型。
5.2 Test datasets
测试集结果以及与Lindner等人的最新方法(基于RFRV-CLM的BoneFinder工具)的进行比较,最佳结果以粗体突出。
本文的two-stage 方法与BoneFinder在DatasetA能力相当,甚至在放射线OA的2 mm以上的精确度阈值方面甚至超过了其定位性能。 在DatasetB中,本文的two-stage方法平均比BoneFinder更好。
6 Conclusion
- 本文解决了 knee radiographs中解剖学特征点定位的问题。作者提出了一种新方法,该方法利用了特征点定位和姿态估计方面的最新进展
- 与当前的最新技术相比,本文的方法可以更好地推广到具有完全不同的采集设置和患者人群的未知测试数据集,所以可能很容易适用于临床和研究环境中的各种任务。
- 利用 Hourglass Convolutional Network,并调整MixUp,soft-argmax层以及利用迁移学习,提升了定位性能。
- 手动精修标志过程,仍有一定的局限性。