病毒性肺炎X 光图片分类研究
2021-03-06崔丰麒肖浩然
崔丰麒 肖浩然 牟 怿*
(武汉轻工大学电气与电子工程学院,湖北 武汉430023)
1 概述
肺部图像是肺炎筛查的主要依据之一[3,4]。在国家卫生健康委员会发布的历版《病毒感染的肺炎诊疗方案》均提出把临床症状、流行病学史、肺部病变影像学表现以及病原学检测作为诊断疑似病例的依据。具体影像学特征包括: 早期呈现多发小斑片影及间质改变,以肺外带明显。进而发展为双肺多发磨玻璃影、浸润影,严重者可出现肺实变,胸腔积液少见。在2020 年8月发布的《肺炎诊疗方案(试行第八版)》中进一步把影像学表现作为确诊临床分型的依据之一[5]。
虽然典型的X 光图像有助于早期筛查疑似病例,但肺炎与正常人的肺部在影像学表现为一种纹理的区别。因此可以提取X 光图片的纹理特征训练分类模型。
2 方法的建立
2.1 特征的提取
LBP(Local Binary Pattern,局部二值模式)是一种用来描述图像局部纹理特征的算子;它具有旋转不变性和灰度不变性等显著的优点。它是首先由T.Ojala, M.Pietik?inen,和D.Harwood 在1994 年提出,用于纹理特征提取。而且,提取的特征是图像的局部的纹理特征[6-9]。
原始的LBP 算子定义为在3×3 的窗口内,以窗口中心像素为阈值,将相邻的8 个像素的灰度值与其进行比较,若周围像素值大于中心像素值,则该像素点的位置被标记为1,否则为0。这样,3×3 邻域内的8 个点经比较可产生8 位二进制数(通常转换为十进制数即LBP 码,共256 种),即得到该窗口中心像素点的LBP 值,并用这个值来反映该区域的纹理信息。如图1 所示。
图1 LBP 示意图
2.2 分类模型
支持向量机(support vector machines, SVM)是一种分类模型,它的基本模型是定义在特征空间上的间隔最大的线性分类器。SVM还包括核技巧,这使它成为实质上的非线性分类器。SVM的的学习策略就是间隔最大化,可形式化为一个求解凸二次规划的问题。SVM的的学习算法就是求解凸二次规划的最优化算法。本文采用SVM工具包进行数据的分类。
本文采用的模型结构如图2 所示,其中的LBP 提取的特征是256 维。
图2 本文的算法流程图
3 实验结果和分析
3.1 数据集
图3 正常人X 光图片
图4 病毒性肺炎X 光图片
图5 细菌性肺炎X 光图片
数据集由正常样本和肺炎样本组成。正常样本来自于NIH Chest X-ray 数据集选取了1341 个正常样本、3875 个细菌性肺炎样本[10-11]。病毒性肺炎样本来自于github 开源项目收集的图片组成的数据集covid-chestxray-dataset,包含有180 个样本[12,13]。部分正常人肺部X 光图片如图3 所示,部分病毒性肺炎病人肺部X 光图片如图4 所示而图5 是细菌性肺炎的X 光图片。
从样本图片中可以看出,不同的肺部X 光图片表现出不同的纹理特征。可以利用纹理特征提取算法提取图片的特征。
3.2 结果
实验利用Matlab2019b 平台进行,使用IntelCore i7-7700 处理器,16G 内存,64 位操作系统,SVM软件包来自lib-svm3.24[14]。SVM选取高斯核。图6 是LBP 特征进行PCA 降维后的结果,从图中可以看出,正常人和肺炎病人X 光图像的LBP 特征是可分离的,为后续的SVM模型训练奠定了基础。
分别从正常图片、病毒性肺炎图片和细菌性肺炎图片中随机地选择10%,20%,30%,40%,50%的样本作为训练样本,剩下的做为测试样本。实验进行20 次取平均值作为最后的分类结果。图7 是正常人和病毒性肺炎病人X 光图片分类的结果。图8 是病毒性肺炎病人和细菌性肺炎病人X 光图片分类的结果。图9 是正常人、病毒性肺炎病人和细菌性肺炎病人三分类的结果。可以看出,随着训练样本的增加,分类正确率有不断地提升。60%时已达到98.99%。
图6 LBP 特征进行PCA 降维后的结果及其局部放大图
图7 分类正确率
图8 分类正确率
图9 分类正确率
4 结论
病毒性肺炎和正常人的X 光图片之间的差异可以用纹理特征来描述,基于此本文利用LBP 特征提取图像特征,并利用SVM进行分类。实验结果表明,这种方法可以对病毒性肺炎和正常人的X 光图片进行分类。但是,如果是其他类型的肺炎,也出现类似的纹理特征的差异,那么要区分病毒性肺炎和普通肺炎就可能需要提取其他特征或采用CNN 网络,这也是后续研究的问题。