1. 引言
乳腺癌(Breast Cancer, BC)是全世界女性发病率和死亡率最高的癌症,而组织病理学分析是最可靠的癌症诊断方法 [1] [2] [3]。组织病理学分析是一项高度耗时的专业工作,通常是需要由病理学专家对乳腺癌组织病理学(Breast Cancer Histopathological, BCH)图像进行观察,根据经验来判断肿瘤是良性还是恶性,或者说对BCH图像人工进行分类,它十分依赖于病理学家的经验,并且难以避免病理学专家受到疲劳和注意力下降等因素的影响造成误诊。在此背景下,迫切需要相应的计算机辅助诊断来减轻病理学专家的工作负担,其中BCH图像分类在计算机辅助诊断中具有重要意义 [2]。
BCH图像分类已经成为医学图像分类领域上的一个研究热点,目前已经有很多学者对此进行了研究。目前关于BCH图像分类算法可以分为两大类:基于传统机器学习的分类算法和基于深度学习的分类算法。基于传统机器学习的分类算法步骤为:预处理 [4] [5] [6] [7]、特征抽取和选择 [8] [9] [10] [11]、分类 [11] [12] [13]。其中特征提取和选择、分类是图像分类中的关键。Spanhol等 [11] 将LBP (Local Binary Pattern,局部二值模式)、CLBP、LPQ、GLCM、ORB和PFTAS等特征,分别与SVM,RF,QDA,Nearest Neigbor分类器相结合用于BCH图像良恶性分类。Vibha Gupta等 [13] 提出了一种将Gabor、OCLBP、颜色、纹理等多种特征融合,并采用投票机制的异构集成分类器对BCH图像进行分类的方法。Shukla K. K.等 [14] 提出了利用形态学特征对BCH图像进行自动检测和分类的方法,使用直方图均衡化改善图像的局部对比度,采用TWS进行分割,并对MLP,LMT,RF,Rotation Forest,SMO,Naïve Bayes,J-Rip和PART等多种分类器进行了比较研究。由于深度学习的发展,越来越多的文献使用深度学习的方法对BCH图像分类。Pimkin [15] 等人采用卷积神经网络(CNN)架构来进行BCH图像分析,提出对图像小块进行分类以增加有效样本的数量,然后应用集成技术对原始图像进行预测。Marami [16] 等人提出一种集成了4个改进的incepin-v3神经网络的自动分类方法。而Spanhol [8] 等人提出了一种基于提取图像小块来训练CNN,然后将这些小块结合起来进行最终分类的方法。
虽然人们已经对BCH图像分类进行了很多的研究,但是,现有的识别方法正确率还不能满足实际应用的要求。究其原因,在有关BCH图像分类的文献中所使用的很多特征提取方法,其中,Gabor、LBP、CLBP、LPQ等特征主要应用于人脸识别等应用场合,为了得到好的识别结果,首先要将人脸区域分割出来,使得每幅图只包含一个人脸,并且要通过归一化处理使得不同图像中的关键部位(如眼睛、鼻子)尽量对齐。但是,在每一幅BCH图像中却包含大量不同形态的细胞,其中既有肿瘤细胞,也有正常细胞,而且肿瘤细胞在图像中的位置是随机的。因此,对整幅图像提取LBP、CLBP、LPQ等特征,包含了大量对分类结果无用的区域的颜色或纹理信息,对分类不仅无用而且造成干扰。采用其它一些纹理或颜色特征,例如ORB、PFTAS、OCLBP等特征,存在同样的问题。
去除这种干扰的一种理想方法是,将图像中的肿瘤细胞都分割出来,然后对每个肿瘤细胞进行分类,最后对各个细胞分类的结果进行综合,得到最终的分类结果。但是,要将图像中每个肿瘤细胞分割出来的算法比较复杂,而且工作量巨大。
为此,本文提出了一种基于原型的高级特征提取方法。首先,随机地从所有训练样本中选取若干个小的图像块(本文取10 × 10的图像块),称为原型。然后,对于任意一幅图像和一个原型,取和原型同样大小的所有子块,计算各个子块的LBP特征和原型的LBP特征的余弦距离,并取其中最小的若干个距离的平均值作为和该原型相关的高级特征。因此,最终的高级特征的维数和原型的个数相同。最后,采用SVM分类器集成的方法对BCH图像进行分类。在BreakHis数据集上进行实验,取得了很好的分类效果。
2. 基于LBP原型的特征
2.1. 局部二值模式
LBP是由Ojala等人 [17] 在1994年提出的一种用来描述图像局部纹理特征的算子。原始的LBP算子定义在一个3 × 3的窗口内。以窗口中心像素为阈值,与相邻的8个像素的灰度值比较,若周围的像素值大于中心像素值,则该位置被标记为1,否则标记为0,得到一个8位二进制数,将这个值作为窗口中心像素点的LBP编码,它反映了该像素附近区域的纹理信息。像素
的LBP编码用公式可以表示为:
(1)
其中,p表示
窗口除中心像素点外的第p个像素点;
表示中心像素点的灰度值;
表示第p个像素点的灰度值,
公式如下:
(2)
在将局部二值模式(LBP)应用于图像分类时,一般要将图像分成若干子块,统计每个子块中像素的LBP编码的直方图,并将它们串接起来作为图像的特征向量。原始的局部二值模式有256种,因此,每个子块的LBP编码的直方图是一个256维的向量。
Ojala等人 [17] 通过实验证明,在实际图像中,绝大多数LBP模式最多只包含两次从1到0或从0到1的跳变。当某个LBP所对应的循环二进制数从0到1或从1到0最多有两次跳变时,该LBP称为一个均匀(uniform)二值模式。如00000000 (0次跳变),10001111 (先由1跳到0,再由0跳到1,共两次跳变)都是均匀二值模式。于是,二进制模式由原始的256种减少为59种,将其用0~58进行编码(例如,1~58表示58种均匀二值模式,0表示非均匀二值模式)。这样直方图从原来的256维变成59维,这使得特征向量的维数更少,并且可以减少高频噪声带来的影响。本文我们采用均匀二值编码(每个像素的均匀二值模式取值0~58)。
2.2. 基于LBP原型的特征提取算法
在BCH图像分类中,每幅图像由很多不同形状的细胞组成,细胞可以分为正常细胞和癌细胞两种。在不把图像中所有细胞分割出来的情况下,目前的特征提取方法将所有细胞放在一起考虑,所提取的特征缺乏针对性,因此识别率普遍不高。本文设计了一种基于LBP原型的特征,试图通过原型来捕捉正常细胞和癌细胞的信息。本文特征提取的过程如图1所示,具体步骤如下:
Figure 1. Schematic diagram of advanced feature based on prototype
图1. 基于原型的高级特征提取示意图
2.2.1. 准备阶段
对于训练集中的每幅图像,计算各个像素的LBP编码,得到LBP图像;然后从所有LBP图像中,随机选取K个大小为
的子图像(patch),作为原型。记第k个原型为
,统计每个原型的LBP编码直方图,记为
,
。选取m数值的大小和图像中细胞的大小相近。
2.2.2. 特征提取阶段
对于任一幅输入图像
,本文的特征提取过程分为以下几个步骤:
步骤1:计算每个像素的LBP编码,得到LBP图像
,
,
。
步骤2:在LBP图像
中取所有
的子图像
,
,
,统计每个子图像的LBP编码直方图,记为
。
步骤3:对于每个原型
,计算
和
的余弦距离,记为
,
,
。
步骤4:对
,采用类似于卷积网络中的池化操作,得到最终的特征向量
。本文考虑了三种池化操作:
(1) 取最小距离:
(3)
(2) 对最小的n个距离取均值:
设
是
,
,
中最小的n个,则令
是
的平均值,即:
(4)
(3) 基于阈值的操作:
令
是小于某个阈值
的所有距离之和,即:
(5)
3. SVM分类器集成
在提取基于LBP原型的特征之后,采用多个SVM集成的方法对BCH图像进行分类。每次从K个特征中随机地取p个特征,训练一个支持向量机。最后,从中选出在验证集上性能最优的s个支持向量机,作为最终的分类器。对于任意一幅输入图像,提取基于LBP原型的特征,再分别用s个支持向量机分类,将分类的结果按照投票的方法进行融合,得到最终的分类结果,如图2所示。
Figure 2. Flow chart of algorithm based on SVM Classifier ensemble
图2. 基于SVM分类器集成的算法流程图
4. 实验结果
本文采用BreaKHis数据集对算法进行验证,该数据集在2014年由巴西P&D实验室采集,包括来自82位患者的7909幅已标注的乳腺肿瘤病理组织切片的电子显微图像,其中良性肿瘤图像2480幅,恶性肿瘤图像5429幅 [11]。样本使用来自苏木精–伊红(HE)染色的乳房组织活检切片,并由P&D实验室的病理学家标记。每个病例的诊断均由经验丰富的病理学家完成,并通过免疫组织化学分析等辅助检查确认。图像采用RGB色彩空间,图像分辨率为700 × 460,采用四种不同的放大倍数(40倍,100倍,200倍和400倍)。
本文选择放大倍数为40的数据进行实验,测试遵循BreaKHis数据库协议,选择五倍交叉测试并取五折分类精度的均值作为最终分类结果。按照文献 [11],采用基于患者水平的识别率。设
为患者p的癌症图像,
是该患者被正确分类的图像数,则该患者评分定义为
总的识别率定义为
在以下实验中,首先通过预处理将图像转化400 × 256的灰度图像,然后提取基于LBP原型的特征,最后,采用SVM分类器集成的方法对图像进行分类。
本文实验中,每次随机取200个特征,训练一个线性的支持向量机,重复100次,得到100个SVM分类器,从中选出最优的k个(本文
),对它们的分类进行采用投票的方法进行融合,得到最终的分类结果。
4.1. 原型图像大小对识别率的影响
首先,我们通过实验研究原型图像大小m对识别率的影响。在提取基于原型的特征时,取原型个数
,原型图像大小m分别取6、8、10和12,并且采用池化方法(1),识别结果见表1。可见,当原型大小为8×8时,分类精度最高达到77.83%,且方差也较小,效果较好。
Table 1. Algorithm classification results under different patch
表1. 不同patch大小下算法分类结果
4.2. 原型个数对识别率的影响
为了研究原型个数对识别率的影响,我们固定原型的大小
,并且采用池化方法(1),原型的个数K分别取1000、2000、3000和4000,识别的结果如表2。
Table 2. Algorithm classification results under different patch numbers
表2. 不同patch数量下算法分类结果
观察表2可知,原型数量
时,得到的识别率最高,为77.83%。
4.3. 不同池化操作对识别率的影响
为了研究不同池化操作对结果的影响,我们固定原型的大小
,原型个数
,分别采用三种不同的池化操作。在池化方法(2)的操作中,取
。在池化方法(3)的操作中,取阈值
,即将所有小于0.3的距离值求和,得到最终的特征。实验结果如表3。
Table 3. Algorithm classification results under different pooling operations
表3. 不同池化操作下算法分类结果
由上表可知,采用池化方法(2)的识别率最高,达到了79.66%,且方差最小,其次是池化方法(1)。
4.4. SVM和SVM集成的比较
我们还通过实验对本文提出的SVM集成分类方法和简单的SVM进行比较,结果见表4,可见本文提出的分类器集成方法显著提高了识别的准确率。
4.5. 和现有方法的比较
表5是本文提出的方法和现有文献中一些方法在BreakHis数据集上分类精度的对比。通过比较可以发现,针对乳腺癌病理图像分类的问题,本文提出的特征优于传统的一些特征,甚至优于一些深度学习特征。
Table 5. Existing BCH image classification results
表5. 现存BCH分类结果
5. 实验结果
本文针对乳腺癌病理图像识别,首先提出了一种基于LBP原型的特征,其基本思想是,先随机地从训练图像中选取若干子图像作为原型,并提取其LBP特征,以此来捕获正常细胞和癌细胞的形态或模式;然后,对于每幅输入图像,提取图像中和原型同样大小的所有子图像的LBP特征,并计算和原型的余弦距离,最后对到同一原型的距离进行池化操作,得到该原型的一个距离值,作为最终的一个特征;其次,提出了一种基于SVM分类器集成的乳腺癌病理图像分类算法。在BreaKHis数据库上对算法进行了验证,并讨论了算法中不同参数对分类结果的影响,实验结果表明本文算法的有效性。