消化内镜远程区域图像传输算法的研究

2021-06-17 13:32张静
中国医疗设备 2021年5期
关键词:掩膜数据量消化

张静

空军军医大学 军事生物医学工程学系,陕西 西安 710032

引言

根据原国家卫计委《2019中国卫生统计年鉴》[1],肠胃病在“居民前十种慢性疾病患病率”中已经上升至第四位,发病率占人口的8%~10.2%,其中约40%的患者长期受到肠胃病的困扰。且肠胃疾病有发病时间长、医治难度大、反复发作等特点[2]。患者如果不能及时发现并接受治疗,肠胃的病变可造成胃食管反流病、胃溃疡、胃炎,进一步诱发食管癌、胃癌、结肠癌等。同时,由于我国地域和经济发展的限制且人口众多,存在东西部、城乡间消化内镜资源差距显著。2012年全国的消化内镜医师仅占全国注册医师的1.06%[3-4],医患比例差距巨大,难以满足众多患者的需求。内镜诊疗操作复杂,医生需要接受专业培训,个体技术熟练度差异较大。远程内镜诊疗技术有望解决这一难题,而目前视频传输方法为全局编解码,该技术仍存在一些显著问题,主要包括远程视频传输延时大和远程解决方案不成熟等方面。

2013年,日本神户大学开发的远程辅导系统,使用专用网络作为安全链路,数据传输速率达到1 GB/s,视频平均延时254±37 ms[5]。2019年,Lacy等[6]使用5G网络技术完成了巴塞罗那-上海的远程指导手术,可实现稳定的数据传输,其速度比4G快100倍,传输速度为101 MB/s,平均网络延迟为146 ms,但需要昂贵的特定硬件作为支撑。2018年,汪洋[7]基于标准视频编解码算法提出了无I帧全P帧的低时延编解码算法,但是未能降低数据量。多数研究者主要关注远程通讯技术,提高带宽和通讯方式等方面进行研究,但是未从图像的冗余信息[8]进行优化研究。本文提出区域视频传输算法,只传输感兴趣区域(Region of Interest,ROI)而不影响关注信息,可降低视频数据量,在带宽有限的情况下降低延时,有效提高视频质量。

在本地内镜操控机器人的基础上拓展远程手术功能,远程内镜诊疗最终实现大幅度节省时间和费用,进而使偏远地区患者接受到高水平内镜诊疗。本课题是探索出一套适用于偏远地区的远程消化内镜诊疗的图像低延时传输解决方案,将极大地提高消化介入治疗的安全性和有效性,特别是向基层医院推广应用,将对我国医疗资源再配置具有重要意义。

1 消化内镜图像机理

消化内窥镜术是指在光线照明下可直视胃肠道及腹腔内脏器进行观察、诊断和治疗的手段。电子内窥镜的结构如图1所示,主要包括操作部、导光束、连接部、插入管、弯曲段和柔性镜体等,是一种集光、机、电等高精尖技术于一体的医用电子光学仪器[9]。光源通过传光束照射到人体内腔,从腔内反射的光进入光学系统,采用尺寸极小的高分辨率彩色面阵CCD(电荷耦合器件)上成像,然后通过导像纤维束将采集的图像信号送到图像处理系统上,最后在监视器上输出处理后的图像,供医生观察和诊断[10]。其主要优势为供医师直接用来观察人体内脏器官的组织形态,可提高诊断的准确性。

图1 电子内窥镜

消化内镜采集的视频分辨率为1920×1080,帧率为25帧。采集的视频帧如图2所示。

图2 采集的视频帧

2 区域传输算法研究

由于消化内镜采集画面中存在由于离焦而产生的边缘模糊、高光反射(亮区)和暗区域,而人眼只关注人体组织的高清信息,为了降低视频数据量,本文提出远程区域图像传输算法。核心算法主要包含2方面:ROI区域检测,通过算法将模糊区域、暗区和高光区域进行分割检测,得到掩膜图像;内镜图像修复,为了提高整体视觉质量,对掩膜图像进行纹理修复。

ROI信息提取流程如图3所示。首先对内镜图像分别进行模糊区域检测、暗区提取和亮区去除得到掩膜图,然后再对暗区区域通过中心计算得到每帧图像的中心作为医生操作辅助指向。

图3 视频帧ROI信息提取流程

2.1 图像区域检测

2.1.1 模糊区域检测

模糊检测方法如下:针对存在边缘模糊的内镜图像进行梯度处理得到梯度图,然后逐像素完成离散余弦变换,得到模糊强度分布图,最后通过形态学运算分割提取图像的局部模糊区域。处理过程如图4所示。

图4 模糊区域检测图流程

图像的梯度图可以有效得到局部结构图,人类的视觉系统对此非常敏感。通过计算梯度大小,去除大部分空间冗余,保留了图像结构和形状分量。梯度图G计算如公式(1)所示。

由于在频率域可以反映图像结构和特征信息,因此本文考虑离散余弦变换(Discrete Cosine Transform,DCT)方法[11]对模糊区域的检测与划分,DCT系数可以表示不同的频率,而模糊会导致图像的高频信息降低。对于M×N的图像矩阵G,其二维离散余弦变换为公式(2)~(3)。

其中,i为M行中的第i行且满足1≤i≤M-1,j为N列中的第j列且满足1≤i≤M-1。

DCT(i,j)即为梯度图G的高频系数矩阵。而对整幅图像进行DCT运算不能检测模糊图像的局部信息,因而需要对整个图像的每个像素点周围一定尺寸的邻域进行DCT运算。比如选中7×7大小的邻域,单个像素经过DCT运算可以得到28个高频系数。第一层包含最小高频值,可以区分清晰与模糊区域;更高层包括更大的高频系数,在清晰和模糊区域可以看到更多的结构和边缘信息。

模糊检测图D 计算如公式(4)所示。

其中,DCT(i,j,t)为第t层的DCT(i,j),L为总的层数。

截取消化内镜视频的食管、贲门和十二指肠视频帧,进行处理去除模糊区域与中间的暗区,得到消化内镜视频帧的模糊检测图和去模糊区域的掩膜图像如图5所示。

图5 消化内镜视频帧掩膜图

2.1.2 亮区与暗区检测

消化内镜是一条高柔性的软管,前端有摄像头与点光源,内镜头部结构示意图如图6所示。医生在内镜诊疗过程中,根据工作站的显示器上的内镜图像的暗区作为内镜末端的前进方向。只有内镜的头部正对腔道时,内镜才能顺利进入消化道;如果没有对准腔道,就会被医生推到消化道的内壁上,使得患者产生疼痛感。

图6 内窥镜头部结构示意图

由于镜头前的灯发出的光线,会使人体组织部分区域产生镜面反射,得到的图像是白色的,为无效信息;在消化内镜介入过程中,由于前端为点光源,且人体上消化道为管状的结构,所以绝大部分图像中心区域一般是中心位置附近的最暗区域,这也是医生最为关注的区域,见图7。

图7 高亮与中心区域示意图

由于高亮的区域灰度值接近于255,而黑色的灰度值是0。通过设置合理的阈值,灰度值大于一个参数值,认为是高亮区域;灰度值小于一个参数值,认为是暗区域,即为中心区域。像素值归一化如公式(5)所示。

其中,x、y分别表示中心区域在图像坐标系中的横坐标与纵坐标;I是原始的图像的灰度图像,B是归一化后的像素值范围为0~1。对于中心区域通过对像素点的遍历进而得到内镜视野的中心点,并用其来指示内镜末端,起到指向性作用。通过公式(6)~(7)进行计算。

其中,x、y分别表示中心区域在图像坐标系中的横坐标与纵坐标;N、M分别表示图像的宽度与高度;i、j分别表示图像中像素值为0的点的位置;Nd表示图像中像素值为0的数量。

对内镜视频图像中的高亮区域与暗区进行检测,同时对暗区中间采用统计方法找到几何中心,标记红点作为医生的操作提供指向性信息,实现人机交互功能。

2.2 掩膜修复优化

图像修复是使用缺失部分的周边图像将进行修复使能够接近原图的视觉质量。对大区域的图像信息缺失常用的方法是Criminisi算法,主要思想是先根据边缘上块区域的优先值来选取待修复块,对完整区域进行搜索找到最相似块进行填充,直到缺失区域都被修复[12]。Criminisi算法的过程图如图8所示。其中,I是待修复的图像,Φ是完好的图像区域,Ω是待修复部分,δΩ是交界边缘,ψp是待修复块区域,一般大小为9×9,p是区域ψp的中心点。

图8 Criminisi算法过程图

算法重复以下三个步骤,直到所有像素已修复。

(1)计算边缘上所有块优先级。通过选择最佳块来填充纹理,该策略完全取决于每个候选块的优先级值。给定一个以点p为中心的块ψp,其中ΨP∈δΩ(参见图8),将其优先级P(p)定义为两项的乘积,见公式(8)。

其中,C(p)为置信度矩阵,D(p)为迭代数据矩阵。计算如公式(9)~(10)。

其中,|ψp|是块的面积,C(p)为像素点的置信度,初始值为1,缺失像素点的置信度为0。在修复过程中,置信度更新在C(p)。是等照度向量,先计算原始图位于p点的梯度值,然后逆时针旋转90°;α是归一化因子。

(2)填充纹理和结构信息。计算完边缘上每个块的优先级后,找到优先级最高作为待修复块;然后,使用欧式距离作为标准判断在源图区域中搜索与目标块区域最相似的块;最后,通过复制纹理区域对待修复块进行填充。

(3)更新置信度矩阵。在待修复块填充了新像素值后,置信度更新如公式(11)所示。

这个简单的迭代算法在没有图像特定参数的情况下,可通过填充边缘块纹理得到相对置信度。随着修复过程的进行,已修复区域像素的置信度会逐渐减小。使用Criminisi算法可以处理大区域的图像信息缺失。算法重复以下三个步骤,直到所有像素已修复。Criminisi算法修复结果图,见图9。

图9 Criminisi算法修复结果图

内镜处理结果图,可以看到Criminisi算法对模糊区域的修复程度很好,但是对于高亮区域中间仍有空洞,因此在模糊区域使用Criminisi算法进行修复,而在高亮区域采用纹理填补方法。

3 远程传输实验

从端客户端实时读取内镜图像并基于FFmpeg库[13]实现软件编码对视频压缩,同时使用网络收发程序来发送码流数据;主端服务端通过网络收发程序来接收码流数据,然后使用软件解码之后在屏幕端显示。使用模块化编程实现软件视频编码、码流编码和网络收发程序。远程视频传输过程,见图10。

图10 远程视频传输过程

消化内镜采集的未压缩视频文件的数据量计算公式如下所示,数据量的单位是MB。1080P视频通过计算可得到一帧的理论数据量为759.4 kB。通过本文提出的ROI信息提取对消化内镜视频的处理,图像数据量明显减少,对比图如图11所示。

图11 视频帧数据量对比

其中,数据量=图像分辨率×彩色深度×帧率/(8×1024×1024)。

对实际的消化内镜视频在远程手术系统中完成远程传输测试。在码率同样的情况下使用提出的感兴趣区域检测方法与图像修复方法处理和直接传输方法对比效果如图12所示。图12b是使用全局编解码得到的效果图,其中组织血管特征比较模糊;图12c是使用图像优化算法传输回来的区域图像掩膜图,可以看到比较清晰的内镜图像,但是图像的不完整影响医生的整体视觉体验;图12d是远程操作端对模糊区域采用Criminisi算法修复,高亮区域采用纹理贴图算法处理,可以看到修复的视频帧保留了关注信息,算法具有效率高,计算用时小。经实验验证,采用提出的区域图像传输算法的时延有明显降低,可用于H.264/H.265等当前主流视频编解码算法,该算法对实时性要求很高的消化诊疗系统有很大意义。

图12 视频帧效果对比

4 总结

胃镜图像尺寸和分辨率决定了所需传输的数据量大小与图像传输耗费时间,且存在如下关系:图像尺寸和分辨率与图像传输耗费时间成正比。与汪洋[7]提出的无I帧全P帧低时延编解码算法研究思路不同,虽然每帧图像编码后的数据量波动不大,但是未能降低数据量。经实验验证,采用提出的区域图像传输算法的时延与全局视频编解码算法相比有明显降低,且在相同码率传输下显示出更多图像纹理细节,该算法对实时性要求很高的视频编解码系统有很大意义,提出的算法可用于H.264/H.265等当前主流视频编解码算法中降低时延。但本文提出的算法在模糊区域检测算法的实现过程中较为繁琐且对感兴趣区域的定义只考虑了客观图像因素,未从医生关注信息的机理出发,进一步应考虑基于深度学习方法[14-15]精准地识别关注目标的区域。同时对接收端的胃镜视频进一步增强感官视觉反馈,采用张慧[16]提出基于小波与人眼视觉的特征增强方法,能够有效提高胃镜视频质量效果。

基于人眼感兴趣区域编码[17]和掩膜修复重建两大技术可以大幅降低视频传输所需的带宽和存储视频所需的空间,同时保证高质量的图像和良好的视觉效果[18]。对于高清胃镜图像的远程传输情景,本文针对视频冗余提出了区域视频传输算法,核心思想是只传输ROI,可降低视频数据量而不影响医师所关注的信息,在带宽有限的情况下降低延时,有效提高了视频质量。首先是感兴趣区域提取方法,通过对内镜视频中的模糊区域、亮区和暗区进行剔除得到ROI区域,平均可降低8.3%的数据量;采用Criminisi算法修复掩膜图像具有简单、清晰度高的特点。整个图像优化过程用时约为93 ms。该远程区域传输算法具有安全可靠、延时低和不影响操作效果等特点,可顺利完成消化内镜远程诊疗,有效提高偏远地区的医疗水平。本算法可延展应用于诸多领域,包括:远程会议、线上教育、视频聊天等领域,尤其针对偏远地区存在带宽有限和网络信号不稳定等现象,可将区域图像传输算法应用于在线视频辅导,使得当地学生能享受稳定可靠的视频教育资源。

猜你喜欢
掩膜数据量消化
利用掩膜和单应矩阵提高LK光流追踪效果
“胃不舒服”未必都是消化问题
基于大数据量的初至层析成像算法优化
宽周期掩膜法HVPE侧向外延自支撑GaN的研究
计算Lyapunov指数的模糊C均值聚类小数据量法
高刷新率不容易显示器需求与接口标准带宽
宽带信号采集与大数据量传输系统设计与研究
光纤激光掩膜微细电解复合加工装置研发
食物是怎么消化的
急诊消化内科上消化道出血治疗