论文:Classification-based framework for binarization on mice eye image in vivo with optical coherence tomography
源码:https://github.com/MIP2019/mip2019.github.io/blob/main/spsvm
目录
一、背景和出发点
二、创新点
三、SPSVM的具体实现
四、实验
五、总结
一、背景和出发点
针对训练样本少、场景对比度受限的问题,提出了一种针对低强度OCT图像新的二值化框架,该框架具有特定块支持向量机( specific-patch SVM,SPSVM )。
在小鼠眼睛oct图像上,观察到特征分布ROI(标记为红色)和背景(标记为蓝色)在一定程度上重叠,这将难以直接区分它们。对于低强度或对于光照不均匀的图像,需要有效的二值化阈值方法来处理复杂的图像。如下图所示:
(二值化以及全局阈值和局部阈值详解)
二、创新点
1. 本文提出了一种新的基于特定块分类的二值化框架,可以处理低强度的OCT图像。利用PCA学习到的特征向量子空间,可以从测试样本中得到每个色斑的特征。利用学习到的SVM模型,可以自适应地获得任意块的阈值。SPSVM框架可以充分利用少量样本,并从每个样本中提取多个ROI(感兴趣区域)。
2. 制作了一个OCT小鼠眼睛( OCT-ME )数据集,共有50张图像。每幅图像为2048 ~ 2048像素。大多数图像中某些组织的强度很低,很难进行二值化。
3. 在OCTME数据库上进行了全面的实验。结果表明是有效的。
三、SPSVM的具体实现
SPSVM的整体流程图:
(A) 所选的ROI和背景分别为红色和黄色矩形;(B) ROI和背景的空间分布,以及PCA学习的特征向量子空间;(C) 利用SVM对分类模型进行训练;(D) 带有patches的测试图像;(E) Gabor滤波器组提取的特征;(F) 具有学习特征向量子空间的patches的特征;(G) 通过训练的SVM模型对图像进行二值化
1. 特定patch选择
手动选择ROI和背景,将ROI区域的patches记为1,背景区域的patches标记为-1。
2. Gabor提取
目的:提取特定色斑的gabor特征。
基本思想:使用Gabor滤波器对选取的典型色斑进行特征提取,通过控制Gabor滤波器组中的θ和σ,分别能从样本块中提取方向和尺度特征。Gabor滤波器的算子公式如下:
其中σ表示高斯包络,θ表示Gabor滤波器旋转方向,μ是正弦曲线的频率波动,i为复数。
简单来说,该公式是由二维高斯滤波公式与二维复数波公式相乘得到的。
该算子公式的详解博文:gabor滤波器
3. PCA主成分分析(Principal components analysis)
目的:降维。Gabor滤波器虽然能从样本块中提取特征,但是提取到的Gabor特征的维数很高。
基本思想:学习一个特征向量子空间,并将高维特征映射到低维特征(即PCA)。PCA概述和PCA数学推导过程简述。
简单来说,在数学上,PCA是一种线性变换,我们希望找到一种线性变换,能使A降维为B,这时我们就需要一个矩阵W使得B=A * W,通过方差最大来确定W矩阵,找到最合适的W矩阵,这个寻找W矩阵(本文用表示)的过程即为PCA。整个降维过程的算子公式如下:
其中表示来自训练集的投影子空间,是用于计算PCA过程的函数,X表示训练样本的协方差矩阵。
其中为低维度特征,是训练(或测试)样本的Gabor特征。
4. 训练SVM模型
目的:对ROI和背景进行分类。
基本思想:将输入向量投影到一个新的特征空间中,该特征空间可以从训练样本中获得separating hyperplane(分离超平面)。separating hyperplane可以将特征识别为相应的类。获得最佳的separating hyperplane是SVM模型的主要目的。SVM 推导详解。
简单来说,SVM是一个二分类模型,SVM的过程就是计算各类样本点到超平面的距离,样本点在正方向距离超平面大于0,标记该样本点为+1,在反方向距离超平面大于0,标记该样本点为-1,从而完成二分类。除此之外,SVM另一个任务是通过构建拉格朗日函数求偏导的方式优化参数W和b来构造出最大分割超平面,使得二分类的效果最好。
SVM模型的推导:
训练集D = {(x1,y1),(x2,y2),……,(xn,yn)},
其中为第i个色斑的特征, 为第i个色斑对应的标签。
(1)分割超平面的算子公式如下:
,
W是法向量(决定超平面的方向),b是位移值(表示超平面与坐标原点之间的距离)。
(2)优化SVM的算子公式如下:
其中为间隔超平面的上下两个超平面之间的间隔,求最大分割超平面,即求最小的1\,同时满足,该式是式(5)的合并式。
(3)分类器的算子公式如下:
计算各类样本点到超平面的距离,样本点在正方向距离超平面大于0(即W^T*x+b>=1),标记该样本点为+1,在反方向距离超平面大于0(即W^T*x+b<=-1),标记该样本点为-1,从而完成二分类。
样本点到超平面的距离公式为:
(这里有一个疑问为什么W^T*x+b不能直接大于0或小于0,查阅了一些相关博文发现这个过程是一个数学推导,博文:SVM 白板推导给了一个相关解释。)
四、实验
数据集:OCT-ME(下载页面:https://mip2019.github.io/spsvm)
评估指标:F1-score,dice coefficient,sensitivity和specificity
F1-score:
其中P是精确度,R表示回归率。β是一个调节参数。P(精确度)=TP/(TP+FP),其中TP表示ROI的正确分类像素数。FP是假阳性数。R(召回率)=TP/(TP+FN),其中FN是假阴性。当β=1时,它是最常见的F1-score。F1-score可以提供具有精度和回归率的评估。F1分数越高,该模型越有效。
dice coefficient,sensitivity和specificity:
1. 实验流程:
1.训练阶段
(1) 标记训练样本。
(2) 提取Gabor特征。
(3) 学习子空间。
(4) 训练SVM。
2.测试阶段
(1) 划分patches。
(2) 提取Gabor特征。
(3) 缩小尺寸。
(4) 阈值图像。
2. 实验结果:
(1)可以看到SPSVM获得了最高的F1-score,这表明SPSVM比其他方法可以识别更多的ROI领域,即ROI的真阳性率最高。
(2)可以看到SPSVM获得了最高的Sensitivity和Dice coefficient,说明SPSVM可以识别出ROI(感兴趣)区域中的绝大多数像素,但是SPSVM获得的Specificity系数最低,说明SPSVM也最容易受噪声影响。
3. 预测效果:
A为原图,B为ground truth,C-E为其他方法的预测效果,F为SPSVM。可以看到对于低强度或光照不均匀的图像,SPSVM可以实现对原图像进行加强还原得到更接近真实标记的预测结果,但是受到噪声的影响也最严重。
4. 调参过程:
(1)选取不同patch大小的效果
可以看出选取10x10的patch效果最佳。
(2)dilation和erosion核大小选取
可以看出选取dilation和erosion核大小分别为30和20效果最佳。
5. 深度学习模型分析:
在训练阶段,设计了一个全连接的神经网络来提取特定Patches的深度学习特征。通过PCA对深度特征进行降维。最后,用深度学习特征训练SVM。
在测试阶段,首先通过训练的网络FCN提取测试样本的深度学习特征,然后通过PCA进行降维。最后,通过训练的SVM模型对图像进行二值化。
由上表可见,该深度学习特征框架的sensitivity指数达到了最高,且三种数值都大于FCN模型,因此在SPSVM中嵌入深度学习特征的框架是有效的。
五、总结
在本文中,提出了一种新的基于特定色斑块分类的二值化框架来处理低强度OCT图像。具体来说,通过PCA可以利用学习到的特征向量子空间从测试样本中提取每个色斑块的特征。提取大量的色斑块来训练特定的SVM模型,该模型可以得到ROI和背景的自适应阈值。新的特定补丁框架可以为未来的二值化工作提供新的模式,适用于OCT图像的分割和统计。在新提出的OCT-ME数据库上进行了全面的实验。实验结果证明了所提出方法的有效性。