一种基于细菌觅食优化算法的舌体分割算法

2019-03-02 02:14戴璞微郭小明王玉铭
图学学报 2019年1期
关键词:舌体样条轮廓

朱 峰,戴璞微,潘 斌,郭小明,王玉铭,钟 凡



一种基于细菌觅食优化算法的舌体分割算法

朱 峰1,戴璞微1,潘 斌1,郭小明1,王玉铭1,钟 凡2

(1. 辽宁石油化工大学,辽宁 抚顺 113001;2.山东大学,山东 青岛 250101)

针对医学舌体数字图像的准确分割,提出了一种基于细菌觅食优化算法(BFOA)和Snake活动轮廓模型相组合的舌体分割算法。首先,以信息熵与Kapur算法相结合作为自适应函数来改进BFOA算法,通过改进的BFOA算法计算舌体图像的最佳图像二值化阈值,并将舌体图像二值化;然后,利用舌体图像的对称性提取舌体的关键边缘点,并基于B-样条插值算法由关键点集合插值得到闭合的B-样条曲线,作为Snake模型的初始轮廓;最后,通过Snake模型计算求解,即可准确提取舌体的轮廓曲线。实验结果表明,改进算法能够高精度地分割出舌体图像,并能消除基本Snake模型在初始轮廓曲线选取中存在的人机交互难题,实现了舌体图像的自动分割。

舌体分割;细菌觅食优化算法;Snake模型;关键点提取;B-样条曲线

舌诊的核心就是通过观察患者的舌象深入了解患者机体的生理机能和病理变化,从而得知患者的健康情况的一种传统医学的诊察方法,同时舌诊也是传统中医四诊的四大核心内容之一[1]。然而传统舌诊的诊断结果正确与否非常依赖于医生个人经验以及专业知识水平,使诊断结果带有强烈的主观性,导致舌诊诊断经验不能被足够客观地保留与继承。

医疗与人工智能的有机结合是当今时代的一大热点问题。就中医的舌诊而言,实现利用大数据、机器学习、深度学习等技术对患者的症状进行分类的第一步,就是准确分割医疗影像中的舌体。所以,有效的舌体分割算法对于提高舌诊准确率、实现医疗智能化都具有非常重要的实际意义与科研价值。

当前,图像分割算法主要有阈值分割法、区域生长法、边缘分割法以及聚类算法[2-5]等;文献[6]根据颜色和空间的相似性,首先利用漂移均值聚类算法对像素进行分类,然后利用舌体主成分分析算法检测舌体,最后使用张量投票(tensor voting)算法分割舌体区域;文献[7]提出了一种基于阈值分割及区域分裂合并法的舌体分割方法,在实验图像的测试中,其分割方法的准确性较为理想;文献[8]利用RGB颜色空间和模糊C聚类算法(fuzzy C-means)进行唇部区域的分割;文献[9]利用彩色阈值函数来确定图像阈值,以得到舌体的初始区域,随后增强所得区域的亮度,并在Lab色彩空间中进行分割,其实验中有70%以上的图片分割达到较好的效果。实现自动舌诊目标的第一步,则侧重于使用活动轮廓模型从图像中提取舌体。活动轮廓模型也被称作Snake模型,是一种高效的图像分割算法。文献[10]在441张图片中进行测试,得到活动轮廓模型Snake的分割准确率为82%;文献[11]将分水岭分割算法与Snake模型相结合,用于实验舌体图像的分割,取得了较为理想的分割效果;文献[12]阐明双Snake模型可提高分割的准确率,与单Snake模型的准确率相比得到了显著地提高。文献[13]首先考虑了舌体的位置和颜色信息,其后利用Snake模型获得舌体的准确区域;文献[14]利用梯度矢量流(gradient vector flow,GVF)、区域合并法来实现舌体自动分割,在实验环境中取得了较好的效果,但在包括牙齿、唇部特征的图片中,其分割轮廓的精度则受到了初始分割策略的影响导致效果不佳。上述部分工作,涉及到人机交互的过程,无法实现舌体的自动分割;也未从根本上解决初始轮廓选择敏感的问题;在单一的色彩空间对舌体进行分割时,其适用范围受到一定的限制性,在获取阈值的精确度问题上不够理想[15]。

本文针对Snake模型在图像分割时的初始轮廓选择敏感问题,提出了一种基于细菌觅食算法和Snake模型相结合的舌体分割优化算法。利用信息熵与Kapur算法[16]相结合来优化细菌觅食算法,以此获取舌体图像的最佳二值化阈值,并利用双彩色空间结合的方法得到精准的二值舌体边缘图像。由于舌体属于对称图像,因此利用舌体的对称特性再对二值图像进行关键点的提取,然后利用 B-样条插值法得到B-样条曲线[17],并用其作为Snake模型的初始目标轮廓,以实现舌体图像的自动分割。

1 细菌觅食优化算法流程

1.1 细菌觅食优化算法

具体算法流程如下:

步骤3.2. 用last保存最优自适应函数值。

步骤3.4. 前移:翻转后,细菌沿步骤3.3中所述的向量方向移动一个自适应步长的距离,即

步骤3.5. 计算当前细菌的自适应函数值为

步骤3.6. 游动。

图1 细菌觅食优化算法流程图

1.2 信息熵与Kapur算法

2 Snake模型

对式(5)进行离散化,得

3 基于细菌觅食优化算法的自动舌苔分割算法

3.1 多彩色空间舌体分割

本文采用多彩色空间分割算法对舌体图像预处理并进行图像二值化。算法如下:

(1) 由于舌体主体为红色,因此先将原始RGB图像的R通道进行均衡化处理[19],并将处理过的图像转换至HSV空间,得到HSV图像;之后分别在 HSV图像的H和S通道上做图像均衡化处理,接着采用细菌觅食算法并以Kapur算法为自适应函数,求得最佳阈值,并以其为基准进行图像二值化,从而获取舌体的二值图像(图2)。

图2 HSV空间处理示意图

(2) 将原始的RGB图像转换到chromatic空间[20],转换公式为

其中,,,分别为RGB颜色空间中的红、绿、蓝3个分量;,,分别为chromatic颜色空间中的红、绿、蓝3个分量。舌体颜色主要分布为红色,因此本文选取chromatic颜色空间的通道进行处理。利用式(9)求得像素点分量的比例值,和分别为图像矩阵的行、列数,然后对chromatic颜色空间图像进行Fisher变换[21],通过式(10)求得图像分割的二值化阈值,并进行图像二值化操作(图3)。

(10)

(3) 从图2可以看出,HSV颜色空间分割得到的图像能够更好地展现舌体图像的一些细节信息,而图3 chromatic彩色空间分割得到的图像能够更好地反映舌体图像的边缘信息。在双彩色空间的预处理中,chromatic空间本质是RGB空间的归一化,红色在图中更加明显,能够较好地显示边缘信息;相比于RGB空间,能够保留更多细节的HSV空间更容易被人接受。因此,2个颜色空间的预处理相或后既能保留更多细节又能得到明显边缘信息,有利于为Snake算法寻找到精确的初始轮廓,使改进算法的分割效果优于单色空间Snake模型。

综上,本文对上述2类图像进行了形态学的或运算操作,得到了原始图像的舌体的黑白轮廓。其中或运算为

图4 两彩色空间二值图像相或结果示意图

上述预处理流程如图5所示。

图5 舌体分割与预处理流程

3.2 舌体轮廓提取

3.2.1 关键点提取

在得到精准舌体轮廓黑白图像后,开始进行关键边缘点提取流程。由于舌体具有对称性,故本文采取对称查找的思路进行关键边缘点提取。

步骤1. 在精准舌体边缘轮廓黑白图像中,以轮廓图宽度的1/2为纵坐标找到最左与最右的2个舌体边缘角点并记录2个点的坐标。

步骤2. 以步骤1得到2个边缘点的横坐标之和的1/2作为舌体底部关键边缘点的横坐标,然后按列在轮廓图中查找到最下面的黑色边缘点,并记录这个点的坐标。

步骤3. 以最左边角点与最下面点的纵坐标的1/2为纵坐标,按行从左到右遍历找到最左边黑色边缘中点。同理,找到最右边的黑色边缘的中点。

步骤4. 以最左角点与最左中点2个点为基准,计算其横坐标的2个3等分点作为关键点的横坐标,之后按列向上遍历,找到合适的黑色边缘点,记录此2点的坐标。同理,分别以最左中点和最下点、最右中点和最下点、最右中点和最右角点、左右角点4对组合按列遍历,寻找到合适的关键边缘点,如图6所示。

图6 关键点集合示意图

3.2.2 舌体轮廓的提取

得到的B-样条曲线效果如图7所示。上述具体舌体轮廓提取算法流程如图8所示。

图7 B-样条插值效果图

图8 舌体轮廓算法流程图

3.3 基于改进的Snake模型自动舌体分割算法

Snake模型具有很强的实用性,但传统的 Snake模型对于初始轮廓需要尽最大可能去接近实际的边缘,才能得到最佳轮廓曲线。所以如果初始轮廓的选择不当,那么算法将会陷入局部最优解,以致影响最佳轮廓曲线的获取。即传统Snake模型存在初始轮廓选择敏感的问题,可能在一定程度上影响分割的精度[23]。

为了避免初始轮廓选择敏感问题,本文提出了一种基于细菌觅食优化算法的改进的Snake模型自动舌体分割算法。其算法流程如图9所示。

图9 本文舌体分割算法流程

算法的具体步骤如下:

步骤1. 读入采用原始RGB舌体图像。

步骤2. 进行多彩色空间舌体分割。可同时进行2个步骤:①将R通道均衡化的RGB图像转换到HSV颜色空间,得到其图像,并对H,S通道均衡化。再利用BFOA算法求得图像二值化的最佳阈值,并将HSV舌体图像转化为二值图像;②将R通道均衡化的图像转换到chromatic颜色空间,并对其做 Fisher变换,之后转化为二值图像。最后将两个二值图像进行或操作得到最终精准边缘图像。

步骤3. 利用二值图像进行关键点提取,记录对应坐标。对关键点集合进行B-样条插值,得到B-样条曲线。

步骤4. 将B-样条曲线作为Snake模型初始目标轮廓线,通过Snake模型得到最终舌体轮廓线。

4 实验结果与分析

本文在Windows 10操作系统下,利用Python3与MATLAB相结合实现算法,以检验算法效果。其中,Python代码在Pycharm集成编译环境中运行。

对于舌体分割效果,本文采用手动分割的舌体区域作为参考标准,将改进算法分割得到的区域和参考标准区域的重叠率(percentage of overlap,POL)作为评价指标[24],称为准确率,即

将单彩色空间的分割效果与本文方法进行了比较。实验结果(表1)表明,利用本文双彩色空间提取的舌体轮廓更加精确。

表1 本文算法与单彩色空间的实验对比

同时,本文额外采用10张人脸舌体图像,采用相同的评价标准将本文算法与其他2种不同算法进行对比,并分别统计分割的准确率,如图10所示。

图10 3种算法的准确率比较

此外,本文以其中4张为例,将本文的改进算法与传统Snake模型、文献[14]提出算法的实验结果做比较。对比的实验结果如图11所示。图11(a)所示分别对应形状为U型、O型、V型和W型舌体的传统Snake模型的分割结果图,需要预先设置一条原始轮廓曲线,可以看出传统Snake模型容易陷入局部最优解;图11(b)、(c)分别是文献[14]和本文算法得到的分割结果图,与图11(b)相比,本文算法有较精确的分割轮廓,且分割结果更接近实际轮廓。从图11中可以看出对于各种不同形状的舌体,本文的改良算法较其他2种算法的分割效果更好。

图11 4型舌体分割结果对比图

5 结 论

针对Snake模型对于初始轮廓选择敏感的问题,本文提出了一种基于细菌觅食优化算法的改进的Snake模型自动舌体分割算法。利用优化的细菌觅食算法寻求图像二值化的最佳阈值,并利用双彩色空间结合的分割方法,得到精准的舌体边缘图像;接着利用舌体对称性进行关键点提取,并进行B-样条插值;最后利用得到的B-样条曲线作为初始轮廓进行执行Snake模型,得到最终舌体分割图,对于Snake模型的智能化执行来说具有一定的实际意义。但是,本文算法在实验中也表现出部分缺陷,首先,如果舌体主体部分不在整个舌体图像中心位置,将不利于舌体的精准分割;其次,改进算法是在光照强度限定的条件下进行实验,因此由光照强度差异而引起的图片清晰度和阴影情况变化给分割带来的影响需要进一步研究;最后,本文所有实验图片中患者均为黄种人,因此改进算法能否适应其他肤色患者有待证明。

[1] ZHANG Y, ZHANG M, ZHU Y, et al. A facile graphene nanosheets-based electrochemical sensor for sensitive detection of honokiol in Traditional Chinese Medicine [J]. Electroanalysis, 2016, 28(3): 508-515.

[2] HOU J L, LI B K. An improved algorithm for horizon detection based on OSTU [C]//International Conference on Intelligent Human-Machine Systems and Cybernetics. Washington, DC: IEEE Computer Society Press, 2015: 414-417.

[3] CHAUGULE A, MALI S N. Area measurement of seed from distorted images for quality seed selection [C]// NirmaUniversity International Conference on Engineering. New York: IEEE Press, 2014: 1-6.

[4] ZHANG D D, ZHAO S. An improved edge detection algorithm based on canny operator [J]. Applied Mechanics & Materials, 2015, 347-350(4): 3541-3545.

[5] DUBEY Y K, MUSHRIF M M. FCM clustering algorithms for segmentation of brain MR images [J]. Advances in Fuzzy Systems, 2016(2016): 1-14.

[6] XU W, KANAWONG R, XU D, et al. An automatic tongue detection and segmentation framework for computer-aided tongue image analysis [J]. International Journal of Functional Informatics and Personalised Medicine, 2011, 4(1): 189-192.

[7] BAI L Y, SHI Y, JIA W U, et al. Automatic extraction of tongue coatings from digital images: A traditional Chinese medicine diagnostic tool [J]. Tsinghua Science and Technology, 2009, 14(2): 170-175.

[8] GHALEH V E C, BEHRAD A. Lip contour extraction using RGB color space and fuzzy c-means clustering [C]// International Conference on Cybernetic Intelligent Systems. New York: IEEE Press, 2011: 1-4.

[9] CHEN L, WANG D, LIU Y, et al. A novel automatic tongue image segmentation algorithm: Color enhancement method based on L*a*b* color space [C]// International Conference on Bioinformatics and Biomedicine. Washington, DC: IEEE Computer Society Press, 2015: 990-993.

[10] LI P H, ZHANG T W. Review on active contour model (Snake model) [J]. Journal of Software, 2000, 11(6): 751-757.

[11] 汪梅, 李琳, 汪斌, 等. 分水岭算法应用于主动轮廓模型能量分割算法的研究[J]. 计算机科学, 2017, 44(5): 314-319.

[12] ZHAI X, LU H, ZHANG L. Application of image segmentation technique in tongue diagnosis [C]// International Forum on Information Technology and Applications. New York: IEEE Press, 2009: 768-771.

[13] SHI M J, LI G Z, LI F F. C2G2FSnake: Automatic tongue image segmentation utilizing prior knowledge [J]. Science China: Information Sciences, 2013, 56(9): 1-14.

[14] NING J F, ZHANG D, WU C K, et al. Automatic tongue image segmentation based on gradient vector flow and region merging [J]. Neural Computing and Applications, 2012, 21(8): 1819-1826.

[15] 奉小慧, 王伟凝, 吴绪镇. 基于多色彩空间的自适应嘴唇区域定位算法[J]. 计算机应用, 2009, 29(7): 1924-1927.

[16] NITHYA S, MEENA K. Genetic algorithm based bacterial foraging optimization with three-pass protocol concept for heterogeneous network security enhancement [J]. Journal of Computational Science, 2017, 21(4): 275-282.

[17] ZHANG W J, ZHANG F, ZHAO J H. Research on modification algorithm of cubic B-Spline curve interpolation technology [J]. Applied Mechanics and Materials, 2014, 687-691: 1596-1599.

[18] 兰红, 张璐. 分水岭优化的Snake模型肝脏图像分割[J]. 中国图象图形学报, 2012, 17(7): 873-879.

[19] ZHOU Z HHONG X P. A compact representation of visual speech data using latent variables [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2014, 36(1): 181-187.

[20] DA F M, SAMENGO I. Derivation of human chromatic discrimination ability from an information-theoretical notion of distance in color space [J]. Neural Computation, 2016, 28(12): 1.

[21] PERRONNIN F, LARLUS D. Fisher vectors meet neural networks: A hybrid classification architecture [C]// Computer Vision and Pattern Recognition. New York: IEEE Press, 2015: 3743-3752.

[22] SHI B H, HE J P. The robot motion trajectory algorithm research based on B-spline and new velocity planning [C]// Control and Decision Conference. New York: IEEE Press, 2016: 5968-5974.

[23] XIE W, DUAN J, SHEN L, et al. Open snake model based on global guidance field for embryo vessel location [J]. IET Computer Vision, 2018, 12(2): 129-137.

Tongue Segmentation Algorithm Based on Improved Bacteria Foraging Optimization Algorithm

ZHU Feng1, DAI Pu-wei1, PAN Bin1, GUO Xiao-ming1, WANG Yu-ming1, ZHONG Fan2

(1. Liaoning Shihua University, Fushun Liaoning 113001, China; 2. Shandong University, Qingdao Shandong 250101, China)

Aimed at the accurate segmentation of medical digital image of tongue, this study proposed a tongue segmentation algorithm based on bacteria foraging optimization algorithm (BFOA) and Snake active contour model. Firstly, information entropy threshold method and Kapur algorithm are combined to improve BFOA, and then the improved BFOA is used to get the optimal threshold value, then binarize the tongue image. Secondly, the key contour points of the tongue coating are extracted according to the symmetry. Finally, the B-spline interpolation is performed by using the key points to obtain the closed B-spline curve as the initial contour of the Snake model, by which the external contour of the tongue edge is accurately extracted. The results show that the proposed algorithm can improve the accuracy of tongue segmentation and reduce human-computer interaction.

tongue segmentation; bacteria foraging optimization algorithm; Snake model; key points extraction; B-spline curve

TP 391

10.11996/JG.j.2095-302X.2019010070

A

2095-302X(2019)01-0070-08

2018-06-29;

2018-07-14

国家自然科学基金项目(61602228,61572290);辽宁省自然科学基金项目(2015020041)

朱 峰(1993-),女,辽宁抚顺人,硕士研究生。主要研究方向为计算机图形学、数字图像处理。E-mail:897827316@qq.com

潘 斌(1981-),男,山东潍坊人,副教授,博士,硕士生导师。主要研究方向为计算机图形学、数字图像处理。E-mail:panbin@lnpu.edu. cn

猜你喜欢
舌体样条轮廓
骨性II类错牙合畸形青少年Twin-blcok治疗前后舌位及上气道变化
基于一种局部图像增强和改进分水岭的舌体分割算法
OPENCV轮廓识别研究与实践
对流-扩散方程数值解的四次B样条方法
基于深度卷积神经网络的舌体胖瘦精细分类
颈脊神经后根选择性离断术后伴发舌体损伤1例
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
高速公路主动发光轮廓标应用方案设计探讨
基于节点最优分布B样条的火箭弹开舱点时间估算方法
用B—样条函数进行近似和建模