技术领域
[0001] 本发明涉及医疗图像处理领域,尤其涉及一种显微镜下的切片图像实时处理显示系统和方法。
相关背景技术
[0002] 病理报告是将患者活检组织经处理后由病理科医生经显微镜观察后所形成的诊断报告,是临床诊断中最可信赖、最准确的诊断手段,有“临床诊断金标准”之称。
[0003] 在实际工作中,病理科医生每天需要花费大量的时间在显微镜下诊断各种病症切片。据统计,国内病理科医生人数在1.5w左右,仍有1w的人才缺口,直接造成我国目前所出现的病理科医生人才缺口较大、病理检测效率较低的局面。尤其对于大部分小型医院而言,由于其先进医疗设备较少,且缺乏相应的经验丰富的病理科医生,导致院内的病理诊断压力极大。
[0004] 随着深度学习尤其是语义分割网络在医疗影像病灶识别任务中的应用,语义分割网络逐步被证实能够有效提高病理医生诊断准确性和效率,在息肉、食管癌、CT图像、核磁共振图像、切片图像的病灶识别等任务中得到越来越广泛地应用。但目前大多数基于深度学习的项目都处于研究阶段,鲜有能直接用于临床诊断的设备及方法,也缺少一种能有效结合网络模型和实际临床情景的显微镜下切片图像实时处理系统。
具体实施方式
[0051] 以下结合附图和实施例对本发明作以详细的描述:
[0052] 如图1至图6所述,本发明所述的显微镜下的切片图像实时处理显示系统,包括显微镜系统、图像处理系统和辅助显示系统;
[0053] 所述的显微镜系统,用于采集显微镜下的切片视野图像;
[0054] 所述的图像处理系统,用于按照时间顺序依次将多幅切片视野图像进行拼接,得到当前历史视野拼接图像并发送至辅助显示系统;还用于对每一幅切片视野图像进行病灶识别,将识别出的病灶识别图像内的病灶连通域的边缘进行提取并叠加在对应的切片视野图像上,得到带病灶标签的显微镜视野图像并发送至辅助显示系统;还用于按照时间顺序依次将多幅带病灶标签的显微镜视野图像进行拼接,得到当前历史视野病灶图像并发送至辅助显示系统;
[0055] 所述的辅助显示系统,用于实时显示带病灶标签的显微镜视野图像、当前历史视野拼接图像和当前历史视野病灶图像。
[0056] 本发明中,显微镜系统实时采集显微镜下的切片视野图像,并按照时间顺序依次传输至图像处理系统;
[0057] 本实施例中,显微镜系统可采用奥林巴斯公司的CX31型号的双目显微镜,自带显微成像系统接口,通过适配器即可将显微镜摄像头附加在双目观察筒的目镜上,实现显微镜下的切片视野图像的采集功能。显微镜摄像头型号可采用G1UD05C,能通过USB传输线为上位机中的图像处理系统提供每秒2帧的620×460的RGB图像序列。
[0058] 本发明中,图像处理系统包括图像拼接模块、病灶识别模块和图像叠加模块;
[0059] 其中,图像拼接模块,用于依次获取显微镜系统所采集到的切片视野图像,并将获取到的切片视野图像依次传输至病灶识别模块;图像拼接模块还用于按照时间顺序依次将多幅切片视野图像进行拼接,得到当前历史视野拼接图像并发送至辅助显示系统;图像拼接模块还用于依次获取图像叠加模块传输的带病灶标签的显微镜视野图像,并按照时间顺序依次将多幅带病灶标签的显微镜视野图像进行拼接,最终得到当前历史视野病灶图像并发送至辅助显示系统;
[0060] 病灶识别模块,用于对图像拼接模块传输的每一幅切片视野图像,通过病灶识别网络分别进行病灶识别,得到包含病灶连通域的病灶识别图像,然后将得到的病灶识别图像发送至图像叠加模块;
[0061] 图像叠加模块,用于依次获取显微镜系统所采集到的切片视野图像和病灶识别模块传输的病灶识别图像,并对病灶识别图像内的病灶连通域的边缘进行提取,将提取到的该幅病灶识别图像内的病灶连通域的边缘叠加在对应的切片视野图像上,得到带病灶标签的显微镜视野图像并发送至图像拼接模块和辅助显示系统;
[0062] 当图像处理系统中的图像拼接模块获取到第一幅切片视野图像后将其发送至病灶识别模块,由病灶识别模块利用病灶识别网络进行病灶识别,然后将得到的包含病灶连通域的病灶识别图像发送至图像叠加模块,由图像叠加模块对病灶识别图像内的病灶连通域的边缘进行提取,再将提取到的该幅病灶识别图像内的病灶连通域的边缘叠加在第一幅的切片视野图像上,然后将所得到的带病灶标签的显微镜视野图像发送至图像拼接模块和辅助显示系统;由辅助显示系统对带病灶标签的显微镜视野图像进行显示。图像拼接模块可将未进行拼接的第一幅切片视野图像直接发送至辅助显示系统,由辅助显示系统进行显示。
[0063] 当图像处理系统中的图像拼接模块获取到第二幅切片视野图像后,按照时间顺序将第一幅和第二幅切片视野图像进行拼接,得到当前历史视野拼接图像(即第一幅和第二幅切片视野图像的拼接图像)并发送至辅助显示系统;同时,图像拼接模块还将第二幅切片视野图像发送至病灶识别模块,由病灶识别模块利用病灶识别网络进行病灶识别,并将得到的包含病灶连通域的病灶识别图像发送至图像叠加模块,由图像叠加模块对病灶识别图像内的病灶连通域的边缘进行提取,再将提取到的该幅病灶识别图像内的病灶连通域的边缘叠加在第二幅切片视野图像上,然后将所得到的带病灶标签的显微镜视野图像发送至图像拼接模块和辅助显示系统;图像拼接模块获取到第二幅带病灶标签的显微镜视野图像后,按照时间顺序将第一幅和第二幅带病灶标签的显微镜视野图像进行拼接,最终得到当前历史视野病灶图像(第一幅和第二幅带病灶标签的显微镜视野图像的拼接图像)并发送至辅助显示系统;辅助显示系统实时对带病灶标签的显微镜视野图像、当前历史视野拼接图像和当前历史视野病灶图像进行显示。
[0064] 同理,当图像处理系统中的图像拼接模块依次获取到后续切片视野图像后,按上述方法由图像拼接模块按照时间顺序依次将多幅切片视野图像进行拼接,得到当前历史视野拼接图像并发送至辅助显示系统;图像叠加模块还依次将带病灶标签的显微镜视野图像发送至图像拼接模块和辅助显示系统。同时,由图像拼接模块按照时间顺序依次将多幅带病灶标签的显微镜视野图像进行拼接,最终得到当前历史视野病灶图像并发送至辅助显示系统;最后,由辅助显示系统实时显示带病灶标签的显微镜视野图像、当前历史视野拼接图像和当前历史视野病灶图像。本发明能够为病理科医生的病理诊断提供图像数据支持,显示显微镜镜头历史路径中有多少病灶及病灶的具体位置,以提高诊断效率和诊断结果的准确性。
[0065] 本实施例中,图像处理系统中的图像拼接模块在对两幅图像(以切片视野图像为例)进行拼接时,按照下述方法进行:
[0066] a:设图像处理系统中的图像拼接模块获取到的当前切片视野图像为f1(x,y),前一幅切片视野图像为f2(x,y),则f2(x,y)=f1(x‑dx,y‑dy),即f1(x,y)由f2(x,y)平移(dx,dy)得到;对当前切片视野图像和前一幅切片视野图像分别进行傅里叶变换,得到频域图像‑i·2π(u·dx+v·dy)F1(u,v)和频域图像F2(u,v),F2(u,v)=F1(u,v)e ;
[0067] 其中,平移包含水平方向和/或竖直方向上的平行移动;f1(x,y)表示当前切片视野图像(x,y)坐标像素点的灰度值,其中(x,y)为图像像素点的坐标位置;f2(x,y)为前一幅切片视野图像(x,y)坐标像素点的灰度值;F1(u,v)为当前切片视野图像的频域图像在(u,v)频域坐标上的数值,其中(u,v)为频域图像的频域坐标,F2(u,v)为前一幅切片视野图像的频域图像在(u,v)频域坐标上的值,i表示复数符号,dx为两幅切片视野图像之间在x轴方向上的移动距离,dy为两幅切片视野图像之间在y轴方向上的移动距离。
[0068] b:对频域图像F2进行共轭得到共轭后的频域图像 再将共轭后的频域图像与频域图像F1相乘后进行归一化处理,得到互功率谱H(u,v),
[0069]
[0070] c:对互功率谱H(u,v)做傅里叶反变换得到实域图Fe(x,y),Fe(x,y)为一个脉冲函数图像;求取Fe(x,y)中峰值位置的坐标作为前后两幅切片视野图像的位移量(dx,dy),然后分别将前一幅切片视野图像放置在当前切片视野图像的左上、左下、右上和右下四个位置,且在该四个位置时两幅切片视野图像之间在x轴方向上的移动距离为dx,在y轴方向上的移动距离为dy;然后分别计算出在这四个位置处前后两幅切片视野图像重叠区域灰度值差值的绝对值均值,绝对值均值最小的即为前后图像的正确拼接位置关系,然后根据位移量(dx,dy)和位置关系对图像进行拼接得到当前历史视野拼接图像;
[0071] d:按照步骤a至c的方法,对图像拼接模块获取到的每一幅当前切片视野图像与上一幅当前切片视野图像进行拼接,并结合已拼接的当前历史视野拼接图像,由图像拼接模块完成对所有切片视野图像的拼接,得到截止到最后一幅切片视野图像时的当前历史视野拼接图像。
[0072] 同理,图像拼接模块同样按照上述方法,依次将多幅带病灶标签的显微镜视野图像进行拼接,得到截止到最后一幅带病灶标签的显微镜视野图像时的当前历史视野病灶图像。
[0073] 本发明所采用的图像拼接方法,具有很强的鲁棒性,能够有效避免现有拼接算法(如基于仿射变换的图像拼接算法和基于特征匹配的图像拼接算法)中拼接严重失实的情况。
[0074] 本发明中,病灶识别模块可采用现有多种基于神经网络构建的病灶识别网络,如ZL202010825928.9、ZL202010828700.5、ZL202010828696.2及ZL202010826873.3中所公开的全连接神经网络、绒毛网络或增生网络,然后利用不同病灶图像的训练数据对病灶识别网络进行训练,以提高病灶识别网络的识别准确率。本实施例中,病灶识别模块可采用基于DeepLabV3+的图像分割网络。
[0075] DeepLab提出了空洞卷积的概念,空洞卷积作用于相互间隔rate的3×3的9个特征点上,能实现不同尺度上特征的卷积,DeepLabV3+在DeepLab的基础上结合了UNet的结构特点,加入了encoder‑decoder结构。空洞卷积结构保证了能够扩大感受野和多尺度病灶信息捕捉的能力,而encoder‑decoder结构保留了浅层特征图像信息和深层特征图像信息,更丰富、更多尺度的特征图像信息保证了DeepLabV3+优秀的语义分割能力。
[0076] 在网络训练过程中,本发明结合医疗影像病灶识别的具体场景提出了一种全新的针对多评估指标的复合损失函数,复合损失函数具体公式如下:
[0077] CompoundLoss=Ffocal(α×LesionLoss+(1‑α)×PixelLoss);
[0078] Ffocal(x)=‑k×(1‑x)γ×log(x);
[0079]
[0080]
[0081] 其中,CompoundLoss为损失函数,LesionLoss为病灶级损失,PixelLoss为像素级损失,α为加权系数,Ffocal(x)表示focal函数,k和γ均为固定参数,x表示focal函数变量;β为加权系数,Pre_PixelLoss表示像素级精确率损失,Rec_PixelLoss表示像素级召回率损失,T1表示真实label图病灶区域,P1表示预测label图病灶区域,T1∩P1表示T1和P1的相交区域的像素数量,smooth是用于防止分母为0的一个极小量;Pre_LesionLoss表示病灶级精确率损失,Rec_LesionLoss表示病灶级召回率损失,T2表示真实label图病灶连通域集合,P2表示预测label图病灶连通域集合,|∩(P2,T2)|表示预测准确的病灶个数。
[0082] 本发明中所采用的复合损失函数结合了像素级损失和病灶级损失,像素级损失保证了像素级评估指标的提升,病灶级损失一方面保证了病灶级评估指标;在另一方面,病灶级损失计算以单个病灶连通域为单位,面积小的病灶和面积大的病灶有了相同的权重,能够有效增强小病灶的识别。复合损失函数通过加入α和β两个加权系数,提供了获取不同需求网络模型的可能,α<0.5训练得到的网络模型能够有更优秀的召回率,能为病理科医生提供更丰富的潜在病灶区域,选用α=0.5训练得到的网络模型能够兼顾召回率和精确率,有更全面的性能,而实际应用中,两种网络模型识别得到的病灶区域的交集即代表有极大概率为病灶区域,两种网络模型识别得到的病灶区域的差集即代表有一定概率为病灶区域。
[0083] 在网络模型训练过程中,结合本发明所提出的复合损失函数,特殊设计了基于多种损失函数的分步网络训练方法:
[0084] 首先,使用第一损失函数对网络模型进行训练,第一损失函数可采用IoULoss损失函数或BCEWithLogitsLoss损失函数。训练时只保存在验证集Valid上像素级IoU指标最好的网络模型并作为中间网络模型;
[0085] 然后再以中间网络模型为基础,使用第二损失函数,第二损失函数可采用本发明中所述的复合损失函数对中间网络模型进行训练,训练时只保存在验证集Valid上像素级IoU指标最好的网络模型作为最终网络模型,以在维持像素级评估指标的同时提升病灶级评估指标。
[0086] 本发明中,基于多种损失函数的分步网络训练方法,能够结合多种损失函数在不同评估指标上的优点,训练得到更优的网络模型。
[0087] 由于在病灶识别模块进行病灶识别过程中,切片视野图像边缘处的病灶识别效果较差,主要原因是在切片视野图像中无法准确观察到边缘处的病灶图像。因此,本发明中,图像处理系统中还特殊设计有边缘扩展模块。
[0088] 边缘扩展模块,用于从图像拼接模块获取当前历史视野拼接图像,并在当前历史视野拼接图像中对当前切片视野图像的扩展区域进行图像填充,并将边缘扩展后的当前切片视野图像发送至病灶识别模块;
[0089] 在进行图像填充时,若当前切片视野图像的扩展区域在当前历史视野拼接图像中存在真实图像内容,则使用该真实图像内容对当前切片视野图像的扩展区域进行填充;若当前切片视野图像的扩展区域在当前历史视野拼接图像中不存在真实图像内容,则将当前切片视野图像中与扩展区域相邻一侧的真实图像内容进行镜像复制得到镜像图像内容,使用该镜像图像内容对当前切片视野图像的扩展区域进行填充;经填充后最终得到边缘扩展后的当前切片视野图像;
[0090] 如图3至图5所示,图3为当前切片视野图像,图4为已使用当前历史视野拼接图像中的真实图像内容进行填充后的切片视野图像,其中,图4中除图3已有图像以外的图像部分均为当前历史视野拼接图像中的真实图像内容,黑色部分为当前切片视野图像的扩展区域在当前历史视野拼接图像中无真实图像内容部分,图5为将图4中无真实图像内容部分使用镜像图像内容进行填充后的切片视野图像,最终得到边缘扩展后的当前切片视野图像。图6为得到的当前历史视野病灶图像示例,图中黑色线条围成的区域即为识别出的病灶。
[0091] 本发明中,边缘扩展模块,能够有效丰富当前切片视野图像边缘处的病灶信息,使病灶识别模块能够更准确的识别边缘病灶,以提高病灶识别模块的识别准确率。在边缘扩展过程中,填充的真实图像内容能够有效提高病灶识别模块的识别准确率。且由于黑色图像会显著降低病灶识别模块识别准确率,而本发明中填充的镜像图像内容则可以替换扩展区域内无真实图像内容部分的黑色图像,避免黑色图像对病灶识别模块识别准确率的影响。
[0092] 病灶识别模块接收到边缘扩展模块发送的边缘扩展后的当前切片视野图像后,利用病灶识别网络进行病灶识别,得到包含病灶连通域的病灶识别图像,然后将得到的病灶识别图像以未进行边缘扩展前的当前切片视野图像尺寸进行裁剪,即删除当前切片视野图像的扩展区域,然后将裁剪后的病灶识别图像发送至图像叠加模块;
[0093] 本发明中,图像叠加模块在接收到病灶识别模块传输的病灶识别图像后,对病灶识别图像内的病灶连通域的边缘进行提取,并将提取到的该幅病灶识别图像内的病灶连通域的边缘叠加在对应的切片视野图像上。病灶连通域的边缘的提取以及将病灶连通域的边缘叠加在对应的切片视野图像,均为图像处理领域的常规技术,在此不再赘述。
[0094] 本发明中,还可增设增强现实模块,增强现实模块和增强现实技术为较成熟的现有技术。图像叠加模块将提取出的病灶连通域的边缘经数据传输发送至增强现实模块,增强现实模块经光路传导将病灶连通域的边缘直接叠加在显微镜目镜视野中对应的病灶上,从而使病理科医生能够直接通过显微镜目镜实时观察到带有病灶标签(即带有病灶连通域的边缘显示)的显微镜视野,便于病理科医生直接观察。
[0095] 如图2所示,利用上文所述显微镜下的切片图像实时处理显示系统实现的显微镜下的切片图像实时处理显示方法,依次包括以下步骤:
[0096] A:由显微镜系统采集显微镜下的切片视野图像;
[0097] B:图像拼接模块获取显微镜系统所采集到的切片视野图像,并将获取到的切片视野图像传输至病灶识别模块;
[0098] C:病灶识别模块对图像拼接模块传输的切片视野图像,通过病灶识别网络进行病灶识别,得到包含病灶连通域的病灶识别图像,然后将得到的病灶识别图像发送至图像叠加模块;
[0099] D:图像叠加模块对病灶识别图像内的病灶连通域的边缘进行提取,将提取到的该幅病灶识别图像内的病灶连通域的边缘叠加在对应的切片视野图像上,得到带病灶标签的显微镜视野图像并发送至图像拼接模块和辅助显示系统;辅助显示系统实时显示带病灶标签的显微镜视野图像;
[0100] E:图像拼接模块判断是否存在上一张切片视野图像和/或带病灶标签的显微镜视野图像,若存在,则将前后两张切片视野图像和/或前后两张带病灶标签的显微镜视野图像进行拼接,其中,将前后两张切片视野图像拼接为当前历史视野拼接图像,将前后两张带病灶标签的显微镜视野图像拼接成当前历史视野病灶图像,再将拼接得到的当前历史视野拼接图像和/或当前历史视野病灶图像发送至辅助显示系统,然后返回步骤A,继续获取下一张切片视野图像,直至获取完所有切片视野图像;若不存在,则直接回步骤A,继续获取下一张切片视野图像,直至获取完所有切片视野图像;
[0101] 然后由辅助显示系统实时显示当前历史视野拼接图像和/或当前历史视野病灶图像。
[0102] 为了能够更准确的识别边缘病灶,以提高病灶识别模块的识别准确率,本发明中,还使用边缘扩展模块进行边缘扩展。
[0103] 步骤B中,图像拼接模块将获取显微镜系统所采集到的切片视野图像发送至边缘扩展模块,由边缘扩展模块在当前历史视野拼接图像中对当前切片视野图像的扩展区域进行图像填充,并将边缘扩展后的当前切片视野图像发送至病灶识别模块;
[0104] 在进行图像填充时,若当前切片视野图像的扩展区域在当前历史视野拼接图像中存在真实图像内容,则使用该真实图像内容对当前切片视野图像的扩展区域进行填充;若当前切片视野图像的扩展区域在当前历史视野拼接图像中不存在真实图像内容,则将当前切片视野图像中与扩展区域相邻一侧的真实图像内容进行镜像复制得到镜像图像内容,使用该镜像图像内容对当前切片视野图像的扩展区域进行填充;经填充后最终得到边缘扩展后的当前切片视野图像;
[0105] 所述的步骤C中,病灶识别模块接收到边缘扩展模块发送的边缘扩展后的当前切片视野图像后,利用病灶识别网络进行病灶识别,得到包含病灶连通域的病灶识别图像,然后将得到的病灶识别图像以未进行边缘扩展前的当前切片视野图像尺寸进行裁剪,即删除当前切片视野图像的扩展区域,然后将裁剪后的病灶识别图像发送至图像叠加模块。