发明名称 自适应窗的胃部CT图像淋巴结跟踪检测系统及方法
摘要 本发明公开了一种自适应窗的胃部CT图像淋巴结跟踪检测系统及方法,该发明首先利用基于模糊C均值和边界先验的疑似淋巴结提取方法获取每个单幅胃部CT图像的疑似淋巴结。由于淋巴结的形状、灰度和空间位置与血管很相近,提取出每个单幅胃部CT图像中的疑似淋巴结存在淋巴结和血管难于区分的问题;针对该问题,本发明设计了自适应窗的淋巴结跟踪检测方法;该方法按每个疑似淋巴结最大切片面积自适应定义每个疑似淋巴结的窗口并把最大切片面积所在CT图像作为当前帧;从当前帧开始向前和向后进行跟踪操作。由于淋巴结和血管在跟踪过程中其面积变化和中心偏移是有区别的,从而检测出淋巴结。本发明通过预处理和跟踪操作能自动有效地检测出淋巴结。
申请公布号 CN103955912B 申请公布日期 2017.01.11
申请号 CN201410051900.9 申请日期 2014.02.14
申请人 西安电子科技大学 发明人 刘芳;焦李成;薛海珍;李玲玲;戚玉涛;郝红侠;李婉;马文萍;马晶晶;尚荣华;于昕
分类号 G06T7/00(2006.01)I 主分类号 G06T7/00(2006.01)I
代理机构 西安智萃知识产权代理有限公司 61221 代理人 李东京
主权项 自适应窗的胃部CT图像淋巴结跟踪检测系统,其特征是:依次包括用于对图像进行分类的基于模糊C均值的分类模块、用于对感兴趣区域进行外边界检测的基于边界先验的疑似淋巴结提取模块和用于对疑似淋巴结的窗口图像中的目标进行跟踪并检测出目标的自适应窗的淋巴结跟踪检测模块;所述基于模糊C均值的分类模块依次包括用于求解模糊C均值目标函数的模糊C均值参数计算子模块和对计算结果样本分类的模糊C均值分类子模块;所述基于边界先验的疑似淋巴结提取模块依次包括对图像各区域进行边界提取的边界提取子模块和对疑似淋巴结边界进行标记的疑似淋巴结提取子模块;所述自适应窗的淋巴结跟踪检测模块依次包括疑似淋巴结面积排序子模块、疑似淋巴结窗口大小及中心位置计算子模块、血管跟踪子模块、淋巴结跟踪子模块、血管标记子模块和淋巴结标记子模块;所述的自适应窗的胃部CT图像淋巴结跟踪检测系统的跟踪检测方法,包括以下几个步骤:第一步,基于模糊C均值的分类用于对图像进行分类,主要步骤为:1.1、利用模糊C均值参数计算子模块进行模糊C均值参数计算:求解模糊C均值目标函数<img file="FDA0001043380320000011.GIF" wi="731" he="127" />的参数,其中v<sub>1</sub>,…,v<sub>c</sub>是c个聚类中心,m&gt;1是个常量,μ<sub>ik</sub>是隶属度,是样本x<sub>k</sub>属于第i类的概率,<img file="FDA0001043380320000021.GIF" wi="469" he="126" />并且0≤μ<sub>ik</sub>≤1,U是c·n的隶属度矩阵;1.2、利用模糊C均值分类子模块进行模糊C均值分类:通过模糊C均值参数计算子模块,得到最终的参数,通过公式<img file="FDA0001043380320000022.GIF" wi="299" he="95" />得到样本x<sub>j</sub>被分到第k类,其中c=3,这样就把样本分为3类,第一类为背景区域中的样本,第二类是脂肪区域中的样本,第三类为感兴趣区域中的样本;第二步,基于边界先验的疑似淋巴结提取用于对感兴趣区域进行外边界检测,主要步骤为:2.1、利用边界提取子模块进行边界提取:对感兴趣区域图中各个连通区域进行外边界提取,将感兴趣区域图中每个像素的8邻域中是脂肪区域和背景区域的像素标记为边界;2.2、利用疑似淋巴结提取子模块进行疑似淋巴结提取:利用疑似淋巴结的外边界在脂肪区域中这个先验,若感兴趣区域图的一个连通区域的外边界全都在脂肪区域中,则标记该区域为疑似淋巴结;第三步,自适应窗的淋巴结跟踪检测用于对疑似淋巴结的窗口图像中的目标进行跟踪并检测出目标,自适应窗的淋巴结跟踪与检测按每个疑似淋巴结最大切片面积自适应定义每个疑似淋巴结的窗口并把最大切片面积所在CT图像作为当前帧;从当前帧开始向前和向后进行跟踪操作,检测出淋巴结,主要步骤为:3.1利用疑似淋巴结面积排序子模块进行疑似淋巴结面积排序:通过基于边界先验的疑似淋巴结提取步骤,得到所有图像中的疑似淋巴结,对所有图像中的疑似淋巴结按照面积从大到小进行排序,得到A={a<sub>1</sub>,a<sub>2</sub>,…,a<sub>n</sub>},其中Area(a<sub>k</sub>)≥Area(a<sub>k+1</sub>)≥5,<img file="FDA0001043380320000023.GIF" wi="72" he="47" />1≤k≤n‑1,Area(a<sub>k</sub>)是疑似淋巴结a<sub>k</sub>的面积,即疑似淋巴结a<sub>k</sub>所在区域的像素个数,n为所有图像的疑似淋巴结的总个数;3.2、利用疑似淋巴结窗口大小及中心位置计算子模块进行疑似淋巴结窗口大小及中心位置计算:设定疑似淋巴结a<sub>k</sub>∈A的窗口大小为(2*l<sub>k</sub>+1)·(2*l<sub>k</sub>+1),其中l<sub>k</sub>的定义为:找到疑似淋巴结a<sub>k</sub>中所有像素点到中心点(x,y)之间具有最远距离的像素点,该像素点与中心点(x,y)的距离即为l<sub>k</sub>,中心点是疑似淋巴结a<sub>k</sub>中所有像素的均值位置,即<img file="FDA0001043380320000031.GIF" wi="446" he="191" />其中(x<sub>j</sub>,y<sub>j</sub>)∈K(a<sub>k</sub>),K(a<sub>k</sub>)是疑似淋巴结a<sub>k</sub>中的所有像素的位置集合,m为集合K(a<sub>k</sub>)中包含像素总数;以疑似淋巴结a<sub>k</sub>的中心像素点(x,y)为中心,大小为(2*l<sub>k</sub>+1)·(2*l<sub>k</sub>+1)的窗口作为a<sub>k</sub>的窗W<sub>f</sub>,其中f是疑似淋巴结a<sub>k</sub>的窗口所在的帧;3.3、利用血管跟踪子模块进行血管跟踪:从当前帧开始向前向后进行血管的跟踪,下一帧所能正确跟踪出的血管是由上一帧的血管在上一帧窗口的相应位置所决定的,此时分为三种情况,如果在相应位置上有多个不同的连通区域,并且在相应位置所含像素最多的那个连通区域的面积和当前帧血管的面积相差不大,那么选择在相应位置所含像素最多的那个连通区域即为跟踪到的目标;如果在相应位置上只有一个连通区域,并且该连通区域在该窗口中的面积与当前帧血管的面积相差不大,那么该连通区域即为跟踪到的目标;如果在相应位置上没有连通区域存在,那么血管跟踪算法结束;如果在下一帧中可以跟踪到目标,那么首先取一个比原来窗口更大的新的窗口W,该新窗口W的边界线上不包含该跟踪到的目标在W中对应的目标中的像素,如果在下一帧跟踪到的目标区域和新的窗口W对应的目标区域的面积不相同,那么需要做扩窗操作,重新得到的窗口大小是由新的窗口W对应的目标区域中各个像素与中心点之间的最大距离得到的;3.4、利用淋巴结跟踪子模块进行淋巴结跟踪:从当前帧开始向前向后在分割后的感兴趣区域图上的相应位置各取相应大小的15个窗,该相应位置和相应大小与当前帧相同,得到31个窗口图像,去除这31个窗口图像的冗余信息,即每一帧最多保留一个跟踪区域,所关注的区域是疑似淋巴结a<sub>k</sub>所在窗口中的区域位置O,对于某一帧,若有多个疑似淋巴结都在区域位置O中有像素,那么跟踪结果是在区域位置O中有像素的疑似淋巴结的中心距离窗口中心最近的那个疑似淋巴结;若只有一个疑似淋巴结在区域位置O中有像素,则跟踪结果就是该疑似淋巴结;若没有疑似淋巴结在区域位置O中有像素,则跟踪结果为空;其它窗口图像也是按照此种方法得到跟踪结果,从而去除多余信息;接下来,计算所有窗口图像到当前帧窗口图像的相似度,对于一个窗口图像,该窗口图像的特征为:窗口中所有灰度值非零像素在直方图的十个区间中的像素个数所组成的十维向量,即对于窗口图像W<sub>f</sub>,设该窗口图像中最大的像素灰度值为d=255,最小的像素灰度值为c=0,十个区间为<img file="FDA0001043380320000041.GIF" wi="1310" he="135" />则窗口图像W<sub>f</sub>的每个灰度值非零像素一定落在这十个区间中的一个,得到一个十维向量<img file="FDA0001043380320000042.GIF" wi="83" he="86" />即得到每个窗口图像的特征向量分别为<img file="FDA0001043380320000043.GIF" wi="123" he="78" /><img file="FDA0001043380320000044.GIF" wi="238" he="78" /><img file="FDA0001043380320000045.GIF" wi="334" he="79" />计算每个窗口的特征向量与疑似淋巴结a<sub>k</sub>所在窗口图像W<sub>f</sub>的特征的相似度为<img file="FDA0001043380320000051.GIF" wi="207" he="270" />f‑15≤k≤f+15,得到一个长度为31维的相似性向量<img file="FDA0001043380320000052.GIF" wi="979" he="183" />找到该疑似淋巴结的开始帧和结束帧,从s<sub>f</sub>开始,其中s<sub>f</sub>为当前帧窗口图像相似性向量,向前找到第一个大于t<sub>1</sub>的相似度所在的帧为开始帧low_f,找到<img file="FDA0001043380320000053.GIF" wi="658" he="188" /><img file="FDA0001043380320000054.GIF" wi="270" he="182" />中的最大值,如果最大值大于<img file="FDA0001043380320000055.GIF" wi="275" he="187" />则更改开始帧low_f为具有该最大值的帧中离f最近的那个最大值所在的帧;找结束帧的方法和开始帧相似,从s<sub>f</sub>开始,向后找到第一个大于t<sub>1</sub>的相似度所在的帧为结束帧high_f,找到<img file="FDA0001043380320000056.GIF" wi="1054" he="183" />中的最大值,如果最大值大于<img file="FDA0001043380320000057.GIF" wi="289" he="185" />则更改结束帧high_f为具有该最大值的帧中离f最近的那个最大值所在的帧;3.5、利用血管标记子模块进行血管标记:通过血管跟踪子步骤,得到该疑似淋巴结a<sub>k</sub>的跟踪窗口序列图,若窗口的目标面积差别不大,且最终得到的窗口比原来的窗口大2倍,则判断该疑似淋巴结a<sub>k</sub>为血管,否则不是血管;如果疑似淋巴结a<sub>k</sub>是血管,则a<sub>k</sub>的窗口序列中的血管有同一个标记,该标记不同于其它序列,从A中删除血管a<sub>k</sub>的窗口序列图中对应的血管;3.6、利用淋巴结标记子模块进行淋巴结标记:通过淋巴结跟踪子步骤得到该疑似淋巴结a<sub>k</sub>的窗口序列图,若疑似淋巴结a<sub>k</sub>窗口序列图中的目标的面积变化程度大于阈值t<sub>2</sub>,则该疑似淋巴结a<sub>k</sub>是淋巴结,否则不是淋巴结;若疑似淋巴结a<sub>k</sub>是淋巴结,则疑似淋巴结a<sub>k</sub>的窗口序列图中的淋巴结有一个相同的标记,且该标记不同于其它序列,并从A中删除淋巴结a<sub>k</sub>的窗口序列图中对应的淋巴结。
地址 710071 陕西省西安市太白南路2号西安电子科技大学