基于MKL‑SVM‑PSO算法的肺结节图像处理方法与流程

文档序号:11217316阅读:884来源:国知局
基于MKL‑SVM‑PSO算法的肺结节图像处理方法与流程

本发明涉及领域,具体地说,特别涉及一种基于mkl-svm-pso算法的肺结节图像处理方法。



背景技术:

肺结节通常指直径不大于3cm的肺内类圆形致密影,也是肺癌在肺ct图像上的早期表征形式。计算机断层扫描成像(computedtomography,ct)技术是检测早期肺结节的重要手段。根据肺结节的ct表征形式,可以将其分为实心型结节(如孤立型结节、粘连肺壁型结节、粘连血管型结节)、磨玻璃型结节及空洞型结节。

肺计算机辅助检测(computeraideddetection,cad)系统是机器视觉技术的应用,可以减少放射科医生因超大负荷阅片而造成的视觉疲劳,减少由此产生误判或漏检的可能性,为医生提供“第三方”的辅助诊断结果。通常肺cad包含以下几个模块:肺部ct图像数据的采集、图像的预处理、肺实质分割、候选结节roi或voi的检测(主要指提取或分割)、roi或voi特征的计算与选择、肺结节的识别,其中肺结节识别是肺cad的核心模块。

现有技术存在计算量大、寻参时间长、实时性差,不易形成在线识别算法的缺点。



技术实现要素:

为了解决现有技术的问题,本发明实施例提供了一种基于mkl-svm-pso算法的肺结节图像处理方法。所述技术方案如下:

一方面,提供了一种基于mkl-svm-pso算法的肺结节图像处理方法,包括:

从肺结节图像中提取感兴趣区域,对所述感兴趣区域进行特征选取,获取数据样本;其中,所述数据样本包括:用于参数寻优的训练集及用于测试模型的测试集;

通过mkl-svm-pso算法对所述数据样本的训练集进行寻优处理,获取最优参数组,建立mkl-svm的数学模型;将所述最优参数组应用于所述mkl-svm的数学模型进行识别计算,得出肺结节的识别结果。

可选地,所述训练集与测试集均包含结节与非结节;所述数据样本是对感兴趣区域的13维特征提取,13维特征包括:7个形态特征,2个灰度特征,以及4个纹理特征。

可选地,所述通过mkl-svm-pso算法对所述数据样本的训练集进行寻优处理,获取最优参数组,建立mkl-svm的数学模型;将所述最优参数组应用于所述mkl-svm的数学模型进行识别计算,得出肺结节的识别结果的步骤具体包括:

1)将粒子和速度初始化;

2)在训练集上计算粒子适应度值;

3)寻找个体极值和群体极值;

4)进行速度更新与位置更新;

5)根据更新后的速度与位置,计算粒子适应度值;

6)求得个体极值和群体极值更新;

7)对所述个体极值和群体极值是否满足终止条件,满足则结束计算,得到最优参数组;不满足继续重复步骤4);

8)用得到的最优参数组在测试集上进行测试,得到测试集上的识别结果。

可选地,所述计算粒子适应度值的步骤具体包括:

根据pso算法,将交叉验证意义下肺结节的识别准确率acc作为目标,并将其确定为pso的适应度函数值,acc定义式如下:

上式中,tp为检测出的真阳性结节,即恶性病灶;fp为检测出的假阳性;fn为检测出的假阴性;tn是检测出的真阴性,即非结节;acc衡量整体的识别准确率,sen则衡量肺结节的实际检出率。

可选地,所述mkl-svm-pso算法用于mkl-svm的参数寻优,确定mkl-svm识别算法的数学模型,并将其用在测试集上对肺结节进行识别。

可选地,所述所述mkl-svm-pso算法具体为:将pso算法引入mkl-svm算法,得到了mkl-svm-pso算法,对训练集进行训练。

本发明实施例提供的技术方案带来的有益效果是:

本发明提出了基于mkl-svm-pso算法的肺结节图像处理方法,可以快速、准确地寻找到mkl-svm算法的最优参数组,并将其应用于肺结节识别。将pso算法引入mkl-svm算法,并将其应用于肺结节的良恶性判别;在改变动态权重的基础上,讨论了线性权重与非线性权重的异同,并得到了最优的动态非线性权重形式。使得算法的平均适应度值更加快速、稳定地接近最佳适应度值,且易得到全局最优解。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例的一种基于mkl-svm-pso算法的肺结节图像处理方法流程图;

图2是本发明实施例的mkl-svm-pso算法应用于肺结节识别的流程图;

图3是本发明实施例的mkl-svm-pso算法的适应度(准确率)曲线;

图4是本发明实施例的式(16)的mkl-svm-pso算法的适应度(准确率)曲线;

图5是本发明实施例的式(17)的mkl-svm-pso算法的适应度(准确率)曲线;

图6是本发明实施例的式(18)的mkl-svm-pso算法的适应度(准确率)曲线;

图7是本发明实施例的式(19)的mkl-svm-pso算法的适应度(准确率)曲线;

图8是本发明实施例的式(20)的mkl-svm-pso算法的适应度(准确率)曲线;

图9是本发明实施例的式(16)至式(20)所对应的5种动态权重随迭代次数变化的曲线。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

本发明提供了一种基于mkl-svm-pso算法的肺结节图像处理方法,参见图1,包括:

s100:从肺结节图像中提取感兴趣区域,对所述感兴趣区域进行特征选取,获取数据样本;

具体地,本实施例对感兴趣区域(regionofinterest,roi)做了进一步说明:机器视觉、图像处理中,从被处理的图像以方框、圆、椭圆、不规则多边形等方式勾勒出需要处理的区域,称为感兴趣区域,roi。在图像处理领域,感兴趣区域(roi)是从图像中选择的一个图像区域,这个区域是图像分析所关注的重点。圈定该区域以便进行进一步处理。使用roi圈定目标,可以减少处理时间,增加精度。本实施例中,所述感兴趣区域中包括结节以及假阳。

其中,所述数据样本包括:用于参数寻优的训练集及用于测试模型的测试集;所述训练集与测试集均包含结节与非结节;所述数据样本是对感兴趣区域的13维特征提取,13维特征包括:7个形态特征,2个灰度特征,以及4个纹理特征。

s200:通过mkl-svm-pso算法对所述数据样本的训练集进行寻优处理,获取最优参数组,建立mkl-svm的数学模型;

s300:将所述最优参数组应用于所述mkl-svm的数学模型进行识别计算,得出肺结节的识别结果。

具体地,所述mkl-svm-pso算法具体为:将pso算法引入mkl-svm算法,得到了mkl-svm-pso算法,对训练集进行训练。所述mkl-svm-pso算法用于mkl-svm的参数寻优,确定mkl-svm识别算法的数学模型,并将其用在测试集上对肺结节进行识别。

进一步的,参见图2,所述通过mkl-svm-pso算法对所述数据样本的训练集进行寻优处理,获取最优参数组,建立mkl-svm的数学模型;将所述最优参数组应用于所述mkl-svm的数学模型进行识别计算,得出肺结节的识别结果的步骤具体包括:

1)将粒子和速度初始化;

2)计算粒子适应度值;

3)寻找个体极值和群体极值;

4)进行速度更新与位置更新;

5)根据更新后的速度与位置,计算粒子适应度值;

6)求得个体极值和群体极值更新;

7)对所述个体极值和群体极值是否满足终止条件,满足则结束计算,得到最优参数组;不满足继续重复步骤4)。

8)用得到的最优参数组在测试集上进行测试,得到测试集上的识别结果。

进一步的,所述计算粒子适应度值的步骤具体包括:

根据pso算法,将交叉验证(crossvalidation,cv)意义下肺结节的识别准确率acc作为目标,并将其确定为pso的适应度函数值,acc定义见式

上式中,tp为检测出的真阳性结节,即恶性病灶;fp为检测出的假阳性;fn为检测出的假阴性;tn是检测出的真阴性,即非结节;acc衡量整体的识别准确率,sen则衡量肺结节的实际检出率。

本实施例中,还提供了多核支持向量机(multiplekernellearningsupportvectormachine,mkl-svm),其中,支持向量机(supportvectormachine,svm)是一种小样本学习方法,通过结构风险最小化来实现对未知样本的预测或分类。将训练样本表示为

t={(xi,yi)},i=1,2,…,l(1)

其中l为训练样本个数;xi为svm的输入向量,本实施例xi对应于提取到的n维感兴趣区域(roi)的特征,xi∈rn;yi∈{-1,+1}为类别标签,本实施例中yi=1对应于结节,而yi=-1对应于非结节。

svm用于二分类问题时,其模型的原问题可表示为:

式中,w是权重向量,b为阈值,svm的目标就是使分类间隔2/||w||最大化,即||w||2最小化。c为正则化系数或称为惩罚参数,描述了对错分样本的惩罚程度,c越大对错误分类的惩罚越明显。当数据不能完全分开时,最大间隔将为负数,为此引入松弛变量ξi,可以衡量实际输出yi与支持向量机输出之间的距离。

在特征空间实现svm,将输入数据(xi)通过非线性变换φ(x)映射至高维特征空间z,并在高维特征空间z中构造最优分类超平面,以实现svm。在空间z中构造超平面时,训练算法使用点积方式,并且使用核函数k(xi,xj)代表φ(xi)与φ(xj)的内积,即可以找到一个函数k使得下式成立:

k(xi,xj)=φ(xi)·φ(xj)(3)

这样,无需对给定训练样本构造并求解凸二次规划问题,通过拉格朗日乘子将问题转化如下:

式(2)中偏置b可通过式(5)求解:

构造决策函数为:

f(x)=sgn(g(x))(6)

其中

进一步的,mkl-svm中,不同的核函数具有不同的优势,提高支持向量机性能的关键之一,是设计适合给定问题的核函数。常用的基本核函数有多项式核函数与径向基核函数(radialbasisfunction,rbf),依次用kpoly、krbf表示:

kpoly(x,x′)=(xtx′+1)d(8)

krbf(x,x′)=exp(-||x-x′||2/2g2)

(9)

其中,参数d代表多项式核的阶数,参数g代表rbf核宽度,d与g需要预先给定。

可以证明,核函数的凸组合形式,即式(10)仍然为核函数。

其中,kp为使用的第p种基本核函数,mp为对应于第p种基本核函数在混合核函数中所占的权重。混合核函数共采用了u种基本核函数,且各种基本核函数的权重相加得1,以此限制各种基本核函数在多核函数中所占比重。

证明:任意给定rn中l个点组成的集合{x1,x2,…,xl},只需证明式(10)的gram矩阵半正定即可。

令k1,k2,…,kp分别是k1(x,x′),k2(x,x′),…,kp(x,x′)关于{x1,x2,…,xl}的gram矩阵,对于任意α∈rl,有

所以半正定,即kmix(x,x′)为核函数,问题得证。

经验证,式(10)表述的核函数满足mercer条件,可以用于svm的训练和分类。利用该多核svm,对样本点进行非线性变换,将得到相应的核矩阵,将其用于svm分类器的训练,可以得到相应的分类结果。

rbf核具有较强的学习能力,而多项式核具有较强的泛化能力,将二者结合,可以兼顾学习与泛化能力。若仅采用rbf核与多项式核两种基本核函数,即取u=2,k1=kpoly,k2=krbf,构成式(12)的混合核函数。需要比单核函数多估计一组核参数及一个权重系数m。m可以自由地调节各个核函数在多核中的比重,灵活地调节多核的学习与推广能力,使结果不偏重于某个指标的提升。

k(x,x′)=mkpoly(x,x′)+(1-m)krbf(x,x′)(12)

采用了交叉验证意义下的网格搜索(gridseach)算法来寻找最佳的正则化系数c,多项式核的阶数d,rbf核的核宽度g以及多核的权重系数m。虽然采用网格搜索算法易于找到在交叉验证意义下对应于最高分类准确率的最优参数组,但因参数过多、循环嵌套的次数过大、以及网格的细化,从而导致计算量过大,运行时间过长的问题。采用启发式算法可以不必遍历网格内所有参数点,也可以找到全局最优解。

进一步的,基于pso的mkl-svm(mkl-svm-pso)算法具体为:粒子群优化算法(particleswarmoptimization,pso)是一种基于群体智能的优化算法,是典型的启发式算法。与ga(genericalgorithm)相比,pso无需进行选择、交叉、变异的操作,通过粒子在解空间追踪最优的粒子进行搜索。

假设在一个d维的搜索空间中,由n个粒子组成种群x=(x1,x2,…,xn),其中,xi表示第i个粒子在d维搜索空间的位置,也为问题的一个潜在解,记为一个d维的向量,即xi=(xi1,xi2,…,xid)t。根据目标函数即可计算出每个粒子位置xi对应的适应度值。第i个粒子的速度为vi=(vi1,vi2,…,vid)t,其个体极值为pi=(pi1,pi2,…,pid)t,种群的群体极值为pg=(pg1,pg2,…,pgd)t。每次迭代过程中,粒子通过个体极值和群体极值更新自身的速度和位置,更新后的表达式为:

上式中,ω为惯性权重;d=1,2,…,d,d代表所需寻找的参数个数;k为当前迭代次数;vid为粒子的速度,c1和c2是加速度因子,为非负的常数,r1和r2是分布在[0,1]区间内的随机数。为防止粒子的盲目搜索,通常将其位置和速度分别限制在[-xmax,xmax]与[-vmax,vmax]区间内。

将pso算法用于式(12)对应的mkl-svm算法。因为多项式核的阶数定义为d≥2的正整数,且随着d的增加,多项式核的泛化能力逐渐降低,故d仅取d=2和d=3两个数值分别进行计算,而并不需要进行寻参。只需将粒子搜索空间的维数设置为d=3即可,xi=(xi1,xi2,xi3)t代表了第i个粒子的解,其每一维xi1、xi2、xi3分别对应需要搜索的正则化系数c,rbf核宽度g以及多核权重m。

本实施例中,还提供了实验选用数据及mkl-svm-pso算法结果分析:

实验数据为20组病例共约700幅图像,且每组病例均配有医生的诊断标准。每幅ct图像大小均为512×512,扫描层厚为5.0mm,从中共提取出270个roi,其中包括80个结节,190个假阳。经过特征选取后,将数据样本随机分为两组:170组训练样本及100组测试样本。

实验平台采用matlab,利用libsvm工具箱进行仿真实验。在模型的参数寻优阶段,使用5倍交叉验证,得到了对应于最高acc的最优参数组。在本mkl-svm-pso算法里,设置种群粒子数为n=20,每个粒子的维数d=3,算法的最大迭代次数为maxgen=200,惯性权重取值为常数,即ω=1。

得到的最优个体适应度值如图3所示,最优的个体适应度值,即训练集上进行5折交叉验证的结节识别的准确度为94.1176%;对应的最优粒子位置为c=29.7267,g=19.0653,d=2,m=0.8。在此种情况下,本实施例mkl-svm-pso算法的程序运行时间为303.8830s,而网格搜索算法则需2220s,比网格搜索算法的运行时间少了1916.117s,仅为网格搜索算法运行时间的13.69%。将其应用于测试集测试,得到的测试结果为acc达到91%,sen达到88.89%。

进一步的,引入不同惯性权重对肺结节识别结果的影响与比较,如下:

与网格搜索算法相比,mkl-svm-pso算法速度有所提高,但由图3可见,随着迭代次数的增加,每一代的平均适应度值振荡幅度较为剧烈,距离最优适应度值具有一定差距。

shi.y最先将惯性权重ω引入pso算法,指出较大的惯性权重值利于全局搜索,较小的惯性权重更加利于局部搜索,惯性权重ω体现了粒子继承先前速度的能力。为更好地平衡算法的全局搜索能力与局部搜索能力,采用shi.y提出的线性递减惯性权重法(lineardecreasinginertiaweight,ldiw),将ω重新赋值为:

ω(k)=ωstart(ωstart-ωend)(tmax-k)/tmax(16)

其中,ωstart为初始惯性权重,ωend为迭代至最大次数时的惯性权重;k为当前迭代的代数;tmax为最大迭代代数。为保证算法在迭代初期具有较强的全局搜索能力以及在迭代后期具有较强的局部搜索能力以获得最优解,通常选取ωstart=0.9,ωend=0.4,使得惯性权重由最初的0.9线性下降到0.4,这也是一种经验做法。得到的mkl-svm-pso算法寻找最优参数组的适应度(准确率)曲线如图4所示。

由图4可见,采用式(16)的惯性权重比采用常数的惯性权重,减少了振荡幅度,前期就已接近最优解。常用的线性惯性权重还有式(17),如下所示

由图5可见,式(17)对应的惯性权重前期振荡略大,但很快收敛到最佳个体适应度值。式(16)与式(17)所表征的线性惯性权重可以使平均适应度曲线趋于平稳,但前期易陷入局部最优。

为保证尽量获得全局最优解,本实施例还采用以下的三种非线性惯性权重来控制收敛精度与收敛速度,以使平均适应度值快速、平稳地趋近最佳适应度值指标。

ω(k)=ωstart-(ωstart-ωend)(k/tmax)2(18)

在上述3种非线性ω的取值方法下,均以肺结节的总体识别准确度为适应度函数,得到的曲线如图6、7、8所示。

为比较不同类别的惯性权重对参数寻优的影响,如图9所示,描述了本实施例提出的式(16)至式(20)所对应的5种动态权重随迭代次数变化的曲线。迭代初期,较大的惯性权重可以使算法保持较强的全局搜索能力,而迭代后期较小的惯性权重可以使算法进行精确的局部搜索。由几种动态权重的变化曲线可见,式(18)前期的动态权重变化较慢,取值较大,维持了算法的全局搜素能力;后期动态权重变化较快,极大地提高了算法的局部寻优能力,结合对应的适应度曲线,可见参数寻优也取得了很好的求解效果,从而为最优的动态权重方式。

综上,权重不变的粒子群优化算法收敛速度快,但后期易陷入局部最优,求解精度低。采用式(16)和式(17)的线性惯性权重前期易陷入局部最优。采用式(18)至式(20)的几种动态的非线性惯性权重方法,算法初期收敛较慢,但后期局部搜索能力加强,利于算法跳出局部最优而得到全局最优解,可以提高算法的求解精度。其中,式(18)形式为最优的非线性惯性权重。

进一步,比较几种不同惯性权重对应的粒子群算法及采用网格搜索算法的参数寻优时间及识别结果等指标,更加证明了粒子群算法的有效性,将结果列于表1中。

表1各种算法参数寻优时间比较

表1的实验结果进一步表明,网格搜索算法的参数搜索时间最长,几乎为mkl-svm-pso算法的7倍,运行速度远远慢于mkl-svm-pso搜索算法。而惯性权重无论取常数值,还是线性的动态权重或者非线性的动态权重,参数寻优的时间差异并不大。综上,采用mkl-svm-pso算法,配以式(18)的动态非线性惯性权重,使得平均适应度值更加平稳、快速地接近最优适应度值,且结果趋于全局最优。

本发明实施例提供的技术方案带来的有益效果是:

本发明提出了基于mkl-svm-pso算法的肺结节图像处理方法,可以快速、准确地寻找到多核支持向量机(mkl-svm)的最优参数组,并将其应用于肺结节识别。将pso算法引入mkl-svm算法,并将其应用于肺结节的良恶性判别;在改变动态权重的基础上,讨论了线性权重与非线性权重的异同,并得到了最优的动态非线性权重形式。使得算法的平均适应度值更加快速、稳定地接近最佳适应度值,且易得到全局最优解。

以上仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1