SV-RCNet: Workflow Recognition from Surgical Videos using Recurrent Convolutional Network

本文为原作者为香港中文大学Yueming Jin等人原文地址
译文:lowkeybin
#摘要
我们提出了一种基于新型循环卷积神经网络(SV-RCNet)的外科手术视频分析,专门用于在线外科手术视频的工作流程的自动识别,这是开发情感感知的计算机辅助干预系统的一个关键组成部分。与以前分别利用视觉信息的时间信息的方法不同,SV-RCNet为了充分利用从视频中学习到的视觉和时间特征的互补信息,提出了一种使得卷积神经网络和循环神经网络无缝结合的新型循环卷积神经网络结构。我们使用一种首尾相连(end-to-end)的方法有效的训练SV-RCNet,以便在学习的过程中,视觉信息和序列动态信息能够共同的被充分利用。为了能产生更有辨别能力的时空特征,我们利用了一个深度残差网络(ResNet)和一个长短期记忆网络(LSTM)分别提取视觉特征和时间依赖,并将它们整合到SV-RCNet中。此外,SV-CNet基于the phase transition-sensitive的预测,我们利用外科手术视频的自然特征,提出了一种简单而有效的推理方案,名为先验知识推理(prior knowledge inference)(PKI)。这样一种策略进一步改善了结果的连贯性并很大程度上提高了识别性能。现在已经在 MICCAI 2016 Modeling and Monitoring of Computer Assisted Interventions Workflow Challenge dataset和Cholec80 dataset 上做过大量实验来验证SV-RCNet。我们的方法不但在两个数据集上都有优异的表现,而且显著的优于最先进的方法。
######检索词:循环卷积神经网络,外科手术流程化识别,时序特征的联合学习,非常深的残差网络,长短期记忆
#1.简介
为了提高患者治疗质量,现代手术室需要情感感知系统来监测外科手术过程,安排外科医生并加强手术团队的协作。流程化自动识别已变成发展情感感知系统的一个重要组成部分。此外,如果流程化识别能在手术进行的时候在线监测,那么实时识别可以解释当前正在操作的详细活动,当接近可能的难题时,这将提醒外科医生以减少他们的操作错误,同时支持做出决策供他们参考,特别时对那些经验少的外科医生。
已经通过使用多种信息,包括使用信号的二进制仪器[7]、RFID标签[8]、跟踪工具设备上的传感器获取的数据[9]以及外科手术机器人[10]。然而,收集这些信号通常需要大量的人工注释或者额外的设备的安装,这将在手术过程中引入额外的工作量[2]。因此,最近的研究已经探索了仅仅基于手术过程中常规收集到的视频数据的流程识别[2][6][11]。除了避免使用辅助设备的优点外,外科手术视频自动流程化识别在外科医生技能评估[12]和手术视频数据库文档的建立上也有用,因为目前进行的手动索引既繁琐又耗时[11]。
然而,仅仅使用视频镜头来自动识别手术阶段是十分有挑战性的。首先,不同阶段的类间差异很小而相同阶段的类内差异很大(图1(a)和(b))。第二,由于相机运动和手术时产生的气体而引起严重的场景模糊,这增加了识别的难度(见图1(c))。第三,在复杂的外科手术过程中,相机可能不总能对手术场景聚焦,这就会在录制视频的时候引入额外的噪点和人工痕迹(见图1(d))。
为了应对这些挑战,许多研究致力于从视频帧中提取有辨识度的视觉特征并对帧之间的时序关系进行建模来提高识别精度。就视觉特征的提取而言,早期的研究利用人工特征,比如基于亮度、梯度、形状、颜色和纹理的描述符。然而,这些低级特征代表复杂的外科手术视觉表现是不够的。随着深度学习的革命和它在医学图像上的成功应用[15]-[17],最新的方法提出通过使用卷积神经网络(CNNs)[11]来增加特征的辨识度能力。同时,考虑到外科手术视频通常是一组序列数据,那么利用时序信息和有效的捕获序列动态对于精准的流程化识别就尤为重要了。在这个方向上,很多基于动态时间扭曲(dynamic time warping)[7][12]、条件随机场[18]和隐马尔可夫模型(HMM)[19][20]的方法已经提出。具体来说,Twinanda等人实现的外科手术流程化识别拥有最好的性能,他们为视觉特征构建了一个9层的卷积神经网络并为了对时序信息进行建模设计了一个两级分层的隐马尔可夫模型。
然而,现存的方法仍然难以完全解决这些问题,并且由于以下几个原因,存在提高自动识别性能的极大潜力。首先,之前使用的视觉特征,要么是手工特征要么是浅层的CNN特征,这些都远不足以代表复杂的手术视频帧中的视觉特征。此外,当探索时序信息时,大多数的传统方法依靠预定义的线性统计模型,它们不能精确的表示外科手术视频中至关重要但微妙的动作。第二,更重要的问题,大部分现存的方法分开利用视觉信息和时序信息,也就是首先使用视觉特征分类器来预测每一帧,然后再使用时序依赖来改进结果。以这种方式,视觉特征不能在时序模型中发挥作用,因此这种方案几乎不能在时空信息上得到收益。第三,由于上述的两个原因,我们分析和发现以前的方法很难敏感的识别和定位过渡帧(即当一个阶段跳跃到另一个阶段时),而识别它对于准确如一的识别流程有着重要的作用。
在本文中,我们提出使用一种名为SV-RCNet的新型循环卷积神经网络以全面解决上述外科手术流程精准识别的挑战。我们的SV-RCNet在线模式下进行流程识别,并使用最先进的深度学习网络来获取视觉特征和模拟时序依赖关系。具体的,我们开发很深的残差网络ResNet[21]来获取视频帧中高度辨识度的视觉特征。计算理论[22][23]和现实应用[24]-[26]已经证明网络深度对获取有辨识度特征的重要性。我们进一步提出利用长短期记忆网络(LSTM)来学习时序依赖关系。通过非线性远程建模时序依赖关系[27]处理序列数据是很强大的,并也成功的应用在很多挑战性任务上[28]-[30]。更重要的是,SV-RCNet无缝的结合残差网络和LSTM网络,以便于我们通过首尾相连的方式联合训练他们来产生具有时空信息的高级特征。特别的,SV-RCNet学习到的时空特征对外科手术中的运动很敏感,并且能精确的识别阶段过渡帧。考虑到SV-RCNet产生的结果对过渡期极为敏感且外科手术视频有良好的结构,我们设计了一种简单还有效的方案(被叫做先验知识推理(PKI))来改进SV-RCNet的输出。我们的PKI策略是为了利用外科手术视频的自然特征而量身定做的,可以大大的改善识别精度。
我们主要的贡献总结如下:
1)我们提出了一种新的网络结构,即SV-RCNet,来精准的识别外科手术视频的流程。比较之前独立利用视觉和时序信息的方法,SV-RCNet为了提高识别精度能在一种首尾相连的结构中学习到一种包含视觉特征和时序依赖关系的高级表示。
2)为了增强SV-RCNet的辨识能力,我们整合了一个很深的残差网络和一个LSTM网络来学习相应的视觉和时序特征,相较于传统的外科手术视频分析的方法,我们的方法能产生更有代表性的特征。
3)基于SV-RCNet的高质量输出以及外科手术视频的有序结构,我们研发了PKI方案来增强阶段预测的一致性并大大提高了识别精度。
4)在MICCAI2016建模和计算机辅助干预监控流程挑战赛上我们全面的评估了我们提出的方法。我们取得了该项赛事的第一名,并且我们的方法显著的优于其他的方法。此外,我们在一个更大的外科手术视频集(及Chole80数据集)上验证我们的方法。我们的方法比现在表现最优越的方法表现更好。
本文的剩余内容安排如下。在第二节中我们详尽的阐述我们的方法,并在第三节报告实验结果。第四节中我们进一步讨论和分析我们的方法。第五节作最后的总结。源代码和相关的文档可以在我们的项目网站上找到。
#2.方法
我们提出的 SV-RCNet概述如图2所示。我们开发了一个很深的残差网络从每一帧来提取有辨识度的视觉特征并利用LSTM网络来对序列帧的时序信息进行建模。更重要的是,我们无缝结合了这两个部分形成了一个首尾相连的循环卷积神经网络,以便视觉和时序特征的互补信息能得到充分的编码从而得到更精准的识别。
#####A.高辨识度视觉描述符的提取
从输入视频的每一帧中提取高辨识度视觉特征对精准识别至关重要,同时这也是构成SV-RCNet的基础。鉴于复杂的外科手术环境,获取具备高辨识度能力的特征的确是很难。不同于以前利用人工特征或浅层CNNs特征的方法,我们提出开发一种很深的残差网络来解决这一至关重要的挑战性难题。
如图2所示,我们的残差网络由一堆残差块组成。对于第l哥残差块 ,我们使用x和x相应表示它的输入和输出。而不是期望堆叠层去拟合一个复杂的底层变换x=H(x),残差网络学习的目标明确的通过使这些层有一个近似的残差映射来简化优化难度:x=wx+f(x;{w}),其中F1是残差映射函数; {Wl}表示与残余块B1相关联的权重集; Ws是一个标识映射矩阵,用于线性匹配输入/输出维度。每个残差块的详细结构如图2(c)所示。在我们的实现中,每个残差块包含三个卷积层,每个卷层后面是批标准化(BN)层和ReLU非线性层。在最后的BN层和ReLU层之间执行shortcut identitymapping和element-wise addition。
在构造残差块之后,我们可以分批次堆叠块以大量增加网络深度。最后构建一个卷积层和一个最大池化层放在网络的开头作为预处理层,用于执行下采样,这样就构建好了一个50层残差网络。这个残差网络以7×7平均池化层结束,从每个帧中提取全局特征,最后输出2048维特征向量。有兴趣的读者建议参考[21]了解残差网络学习的基本原则。请注意,从ResNet获得的视觉描述符被直接连接到SV-RCNet中的LSTM单元。
#####B.有效的时间信息建模
由于视频数据的连续性,时间信息为识别外科手术过程中的阶段提供了有价值的背景线索。例如,来自不同阶段的单帧可能采用非常相似的外观,因此难以仅基于视觉外观来区分。相反,如果我们可以共同考虑它与相邻过去帧的相关性,那么识别当前帧的相位将会大大减轻。
代替使用如HMM的传统模型,我们建议使用LSTM [31],[32]来利用外科视频数据的时间维度,这被证明是一种非常强大的时间概念建模工具。在我们的SV-RCNet中,我们将从ResNet获得的视觉描述符顺序输入到LSTM网络中,并利用其存储单元来维护过去帧的时间信息,然后利用时间依赖性来更好地识别。
我们的SV-RCNet [33]中使用的LSTM单元如图2(a)所示。 LSTM单元采用三个门,即输入门i,遗忘门f和输出门o,以调节记忆单元c与其环境之间的相互作用。输入门i控制将多少新信息存储到记忆单元中。遗忘门f控制记忆单元丢弃先前存储的信息。在这方面,存储器单元ct是由输入门调制的输入信息和由忘记门ft调制的先前存储器的总和。输出门ot允许存储器单元对当前隐藏状态和输出产生影响。或阻止其影响力。在时间步t,给定输入rt(我们的任务中的ResNet视觉描述符),隐藏状态ht-1和存储器单元ct-1,LSTM单元用以下等式更新:
其中计算三个门的函数:双曲正切函数将激活值映射到[-1,1],sigmoid函数把激活值映射到[0,1]。w和b分别代表权值和偏置项。圆圈中间一个点(有关门的计算)代表元素逐项相乘,记忆单元和所有的门都有相同的向量维度,同时我们把h0初始化为零向量。
#####C.循环卷积神经网络首尾相连的学习
为了充分利用视觉和时序特征的互补性息,我们提出了一种新型循环卷积神经网络,即SV-RCNet,该网络无缝结合了为提取视觉描述符的深层残差网络和为了给时序动态建模的LSTM网络,这种方法优于现在基于分开学习和利用视觉和时序特征的方法。请注意,我们的SV-RCNet的输入时视频辑而不是单个帧以便视觉和时序信息能被充分利用,因此联合增强了我们SV-RCNet的辨识能力。我们训练SV-RCNet用一种首尾相连的方式共同优化残差网络和LSTM网络的参数以精准识别外科手术流程。
因为每个视频记录了整个外科手术操作,大部分的外科手术包含十分长的序列,并且流程识别任务要求模型来识别每帧属于哪个阶段。考虑到这些因素,代替输入完整的视频进入网络[32][34],我们提出把外科手术视频切割成段的视频辑以进行为了减轻训练难度和计算记忆的限制被精简的反向传播。具体的,为了在在线模式下识别时间t的外科手术阶段,我们提取一个包含当前帧和当前帧之前的一些帧的视频辑。视频辑中的帧序列用x来表示,序列的长度为t-t·。我们使用U来表示残差网络的映射。残差网络对应每一个帧xj输出一个相应固定长度的视觉描述符,rj=U()。视频辑的视觉特征r按照顺序驶入LSTM网络,使用V来表示映射。使用rt和上一个隐层的ht-1LSTM来计算输出zt并更新隐层输出ht,记作zt=ht=V(rt,ht-1)。注意每一个时间步中使用相同的参数。就这点而言我们可以从视频辑中学习到通用的时序动态同时也避免了参数随着视频片段的长度的增长而成比例增长。最后,正向传播的输出zt输入softmax层产生xt帧的预测结果:
这里的w和b分别代表投影矩阵和偏置项,pt属于R是一个预测向量,向量中每个元素代表一个类号(我们任务中的阶段号)
令ptc为pt的第c个元素,ptc表示xt帧被预测为c类,令lt为帧xt的真实标签,时间t上帧的负对数损失函数应该被这样计算:
在训练期间,在视频帧x中每个帧的损失都会被计算和求和,让X代表包含n个辑样本的训练集,x是属于X数据集中的一个视频片段,总体的损失函数可以表示为:
我们现在来看看训练过程并观察首尾相连训练的SV-RCNet是如何影响视觉和时序特征以及他们的相互作用来增强网络的辨识能力的。在正向传播过程中,SV-RCNet按顺序输入来自残差网络输出的视频帧的视觉描述符到LSTM网络中,然后LSTM网络基于这些帧视觉特征的对时序依赖建模。另外一方面,当反向传播时,我们共同优化残差网络的参数β和LSTM网络的参数。在这个过程中,时序信息指导着残差网络更新参数。
通过采用随机梯度下降法,通过计算它们的梯度朝着损失变小的方向来更新参数。具体来说残差网络的学习率用表示,LSTM网络的学习率用表示,我们使用下面的等式更新权值:
在反向传播的过程中,梯度首先流向LSTM网络的V,这里的梯度计算如下所示:
随着反向网络中梯度的传播,残差网络的参数使用下面的法则优化:
从首尾相连的训练过程中,我们能发现SV-RCNet能使两个网络的参数都学习到视觉和时序信息同时保留各自的优势。视觉特征的学习将受到捕获时序动态的影响,反之也是一样。
#####D.一致性增强的先验知识推理
通过无缝整合时序信息,学习到特征的SV-RCNet能更加平顺的预测整个外科手术视频的结果。然而,一个外科手术视频通常包含一些静止的帧,或者说一些帧只能体现一些很细微的动作,又或者在每个阶段中都有一些人为的遮挡,这些都会使精准识别变得困难。幸运的是,我们发现,与自然视频不同,大多数手术视频内容结构更好,排序更好,因为要求外科医生根据具体的工作流程和说明进行手术。举个例子,图三总结了Modeling and Monitoring of Computer Assisted Interventions Workflow Challenge数据集的阶段变换条件。具体来说,从P0到P4,顺序的定义这些阶段。从P4到P7这里没有绝对的顺序,但我们仍然可以在一定程度上观察到顺序信息,比如P7不会再P5触发之前发生。
考虑到上面的因素,应该研究一个想法:通过跟踪流程并根据先前帧的预测即使推断当前帧的阶段,我们是否可以获得有用的先验知识,这将有助于校准阶段内一些帧的错误预测(见图6中的黄色箭头)。通常在阶段变化期(每个阶段开始时),由于关键动作的改变,带来了丰富的时序信息,SV-RCNet能在两个阶段之间精准的识别过渡序列。例如图6中粉色箭头所示。换句话说,SV-RCNet对动作很敏感,能精确的定位阶段过渡点。为此,我们为了提高预测的一致性提出一种依赖与SV-RCNet的一种简单还有效的推理方案,命名为先验知识推理。通过PKI,我们成功的利用了外科手术视频的良好有序性和SV-RCNet的过渡敏感输出,以提高流程识别的性能。
PKI算法的逻辑如图3所示,我们以P1到P2作为一个例子详尽说明了PKI是如何在过渡点上工作的,其他阶段的过渡点的工作原理也是一样的。图3(a)主要解释如何确定阶段的先验pt。我们用yt表示视频帧xt的网络阶段预测结果,在M2CAI流程挑战赛数据集上有7个流程阶段。为了给现阶段帧xt提供先验知识,一个之前状态的收集器(用S表示)被用于记录先前帧的阶段预测:
通过S收集的先验知识,我们推断出当前帧xt最有可能的阶段先验pt。更具体的来说,我们为每个可能的阶段设置一个累加器A,以分别计数分类到该阶段帧的数量。根据图3(b)定义的整个阶段变换,图3(a)中的P2就是一个可能的阶段。为了确保pt的准确性和健壮性,每个可能阶段的累加器A只有当连续的序列帧都被预测到当前阶段才进行累加。否则,A将被置0,同时开始该阶段的新一轮计数。
最终,当该阶段的计数达到一个阈值就可以确定阶段的先验pt了。在图3(a)中,仅当连续的A增加到阈值时,pt从p1变p2。注意,对每一个新的时间步,PKI只更新S并用相同的策略获取S到处阶段的先验知识。
然后使用获取的阶段先验pt来校准当前帧的阶段预测,如图3(a)所示。如果xt被分类为既不是pt也不是流程中下一个潜在的阶段,那么SV-RCNet很大概率上由于它难以分辨现在的情况把xt分错到了另一个阶段中去,PKI将其预测的结果校准为pt以以保持预测结果的一致性。如图3(a)中的第一种情况所示,如果SV-RCNet的预测结果既不是第二阶段也不是第三阶段,PKI将其预测结果修正为先验结果2。如果xt被分到下一个可能的阶段中去,PKI将检查该预测的可信度以决定是否应该去修正。如果预测概率低于阈值,则PKI将其修正为pt;否则将保持原有预测,如图3(a)的第二和第三种例子所示。使用对数据集中的验证子集扫描的方法来确定PKI的超参数。
#####E.SV-RCNet的训练详情
为了高效的训练SV-RCNet,考虑到残差网络的参数规模远远的大于LSTM网络的参数规模,我们首先与训练残差网络来学习可靠的参数来作为整个网络的初始化,利用迁移学习有效的泛化能力,我们使用在ImageNet数据集上训练的残差网络的权值作为初始化权值。在这一步中,我们对原始视频进行重新采样来平衡不同阶段的训练样本,然后将帧的大小从1920x1080改为250x250来大大的节省内存并减少网络参数。通过使用224x224上处理图像的策略,图像更进一步增加了镜像对称和旋转图扩充到了训练集上。
在获得预训练的残差网络模型之后,整合了视觉和时序信息的SV-RCNet通过首尾相连的方式来训练直至收敛。注意当我们使用残差网络的预训练参数作为它的初始化时,LSTM网络的参数应用高斯分布来随机初始化的。因此,LSTM网络的学习率应该设为残差网络的的十倍大小。为了准备训练数据,我们下采样原始视频从25fps到5fps以丰富视频辑中的时序信息。使用相同的增强策略帧的大小也改为250x250,视频辑的长度大约设置为2秒,采样的步长设为3。
我们的框架基于caffe[35]深度学习库使用C++和python语言实现
,使用了一个TITAN X GPU来加速。网络中的超参数设置如下:momentum=0.9,weight decay=0.005,LSTM网络的dropout rate=0.5。残差网络的LSTM网络的初始学习率设置为0.005和0.0005,并每两万此迭代就减小十倍。大约花了整整一天来训练整个网络使它收敛,在预测过程中,我们的框架大概0.1秒处理1帧,这表明它可用于在线手术流程识别。
#3.实验
#####A.数据集和评估指标
#####B.在深层的卷积神经网络上的实验
#####C.不同时序建模方案的实验
#####D.M2CAI流程挑战赛的结果
#####E.Choler80数据集上的结果
#4.讨论
#5.结论
#参考文献

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值