基于改进K-means聚类与分水岭的木材横截面管孔分割
2022-03-01程昱之钟丽辉李朝岚
程昱之,钟丽辉,何 鑫,王 远,李朝岚
(1. 西南林业大学 机械与交通学院,云南 昆明 650224;2. 西南林业大学 大数据与智能工程学院,云南 昆明650224)
阔叶材横截面微观图像由管孔、木射线、生长轮、木纤维和轴向薄壁组织构成,其中管孔是木材研究最重要的特征之一[1−3]。管孔不仅是分析考古木材样品的构造特征与保护状态的研究要素[3],也是研究某一地区若干年内木材生长量和环境气候变化相关性的依据[4]。管孔的分割是微观木材图像中提取管孔特征量和进行木材树种自动识别的关键步骤[5−6],因此,微观木材图像中的管孔分割有重要的研究意义。近些年来应用于管孔分割的算法主要有数学形态学、区域生长、目标遗传和水平集等[7−9]。张广群等[9]首先运用多目标遗传算法成功地分割出图像中的大部分管孔,但会出现复管孔或管孔团的漏分,同时部分轴向薄壁组织会连同其附近的管孔一起被分割出来。汪杭军[10]运用局部水平集算法,以局部灰度分布的均值作为统计信息,加强了管孔区域和背景区域的对比度,该算法虽然克服了漏分问题,但出现了噪声的误分割,一部分噪声为一些轮廓较大的木射线组织,另一部分为形状大小与管孔相似的木纤维组织。祁亨年等[11]运用改变结构元素和形态尺度的数学形态学算法对管孔进行分割,该算法克服了木射线和木纤维组织等噪声的影响,但出现了图像边缘细节丢失,如较小的管孔被当作噪声去除或是较大的管孔部分组织缺失。SHEN等[12]通过检测闭合区域的平均面积得出最适合的结构元素,并运用形态学算法对管孔进行分割,但还是会出现小孔漏分,大孔误分的情况。由于木材横截面微观图像中管孔数量众多、形态各异且随机分布,木纤维和轴向薄壁组织横截面也呈现一个个相对较小的孔洞,从而对管孔进行分割较为困难。综上所述,微观木材图像中管孔的分割依然是目前的研究热点和难点。本研究提出了一种改进K-means聚类与分水岭的木材横截面管孔分割算法,旨在解决管孔漏分、误分和噪声去除的问题并快速分割出管孔区域。
1 数据与方法
1.1 数据来源
日本森林数据库(https://db.ffpri.go.jp/WoodDB/JWDB/home.php)。该数据库成立于1928年,现有木材标本29 000余号,隶属270科2 050属8 500种;切片标本约90 000号[13]。本研究用到的木材树种为大红叶枫 Acer amoenum(15帧图像)、尖齿槭A. argutum(5帧)、细柄槭A. capillipes(4帧)、茶条槭 A.ginnala(1帧)、桑叶槭 A. morifolium(3帧)、毛果槭 A. nikoense(3帧)、日本槭 A. nipponicum(5帧)、赛波德槭A. sicboldianum(24帧)、 花 楷 槭A. ukurunduense(6帧)、 红 脉 槭A. rufinerve(25帧)、 薄 叶 槭A.tenuifolium(3帧)和褐枝猕猴桃Actinidia rufa(7帧)。
1.2 改进的 K-means聚类算法
传统的K-means聚类算法以距离作为相似性的评价指标,基本思想是按照距离将样本聚成不同的簇,两点距离越近,相似度就越大,以得到紧凑且独立的簇作为聚类目标[14−15]。传统的K-means聚类算法将样本映射到RGB颜色特征空间,构造新的映射关系,能够打破聚类只能是球状的限制,但聚类中心的选择会较大程度上影响分类效果,尤其是当聚类中心的选取全部位于管孔以外时,管孔区域会被整体归为噪声。此外,由于初始聚类中心的随机生成,可能会导致分类结果不一致或将木纤维或轴向薄壁组织被整体分割出来。基于此,针对以上问题进行算法改进,实现聚类中心的自适应选取。在RGB色彩空间下提取彩色木材微观图像的三通道分量。结合木材横截面原图,能够看出生长轮和木射线区域颜色较深,颜色值较小,所以其对应颜色值较小的峰值附近区域;管孔区域颜色较浅,颜色值较大,所以其对应颜色值较大的峰值附近区域;轴向薄壁组织和木纤维区域颜色较为平均,颜色值介于前两者之间,所以其对应两峰之间的波谷附近区域。分别取3个分量的均值组成第1个中心点,代表颜色直方图波谷附近区域,该点作为轴向薄壁组织和木纤维区域的簇类中心;遍历三通道分量,对于大于各自均值的所有颜色值取中值作为第2个中心点,由于该点对应颜色值较大,所以该点作为管孔的簇类中心;小于各自均值的所有颜色值取中值作为第3个中心点,由于该点对应颜色值较小,所以作为生长轮和木射线区域的簇类中心,分别代表颜色直方图两峰峰值附近区域。设通道分量处的颜色值为计算每个通道分量的均值,均值两侧的中值为M1和M2,Meidan表示取目标数组的中值函数。
根据图像中各组织部分对应的颜色峰值或波谷得出这一组织部分的中心点,再以这3个点作为初始聚类中心点,运用K-means算法实现管孔的粗分割。
1.3 改进的分水岭算法
虽然K-means聚类算法能够将木材微观图像中的管孔区域和背景区域区分开,但两者的颜色梯度差异较小,这可能会导致分水岭变换的过度分割。为了增加管孔区域和背景区域的颜色梯度差异,使分水岭变换在梯度运算判断极大值点时更加准确,更加有效地实现管孔的精分割,按照聚类的结果将木材微观图像进行3类颜色编码。第1类轴向薄壁组织细胞壁和木纤维区域进行红色编码,第2类管孔区域进行绿色编码,第3类生长轮和木射线区域进行蓝色编码。最后,通过形态学操作和分水岭变换实现管孔的精分割。
1.4 管孔分割
为实现木材横截面微观图像的管孔分割,具体步骤如下(图1):①提取木材横截面微观图像的RGB分量并绘制颜色直方图;②根据木材微观图像中的3类目标区域,即轴向薄壁组织和木纤维、管孔、生长轮和木射线,确定聚类初始中心点;③根据像素点与聚类中心点之间的欧式距离求出新的簇类中心并判断中心点是否改变,若不一致则继续迭代,一致则进行下一步;④对划分出的3类区域进行颜色编码;⑤最后通过形态学操作去除面积较小的噪声,运用分水岭算法分割出管孔。
图1 改进 K-means 与分水岭算法流程Figure 1 Improved K-means and watershed algorithm flow
1.5 验证
以大红叶枫横截面原图(997×1 418)为例,将本研究算法和现有算法(阈值分割、分水岭、K-means聚类与阈值分割)的分割效果进行对比分析,并以平均管孔有效分割率(F)作为算法分割性能的评价指标进行评价。
式(4)~(5)中,Ti表示每张图像的管孔实际分割总数,Ni表示每张图像中的管孔总数,Pi表示每张图像的管孔有效分割率,重复次数n的取值为101,,F表示平均管孔有效分割率。
2 结果与分析
2.1 算法实现
随机选择3种木材微观横截面原图(图2)。在RGB色彩空间下提取彩色木材微观图像的三通道分量(图3)。可以看出3个分量均有2个峰和1个波谷组成,其中2个峰分别代表管孔区域和生长轮、木射线区域,波谷代表轴向薄壁组织和木纤维区域。
图2 木材横截面原图Figure 2 Original cross-section of wood
图3 红脉槭颜色直方图Figure 3 Color histogram of A. rufinerve
按照颜色直方图得到初始聚类中心点。尖齿槭颜色值为 (130.0, 144.0, 169.0),(20.0, 22.0, 49.0),(68.0, 78.4, 104.8);红脉槭颜色值为 (84.6, 89.2, 110.4),(167.0, 184.0, 193.0),(32.0, 28.0, 56.0);赛波德槭颜色值为 (181.0, 173.0, 207.0),(64.0, 40.0, 110.0),(113.0, 99.4, 154.9)。运用改进 K-means 聚类算法划分簇类 (图 4)。
图4 管孔粗分割结果Figure 4 Rough segmentation results of pores
为了增加管孔区域和背景区域两者的颜色梯度差异,对聚类粗分割结果进行色彩编码(图5),第1类对轴向薄壁组织细胞壁和木射线区域进行红色编码,颜色值为(202, 12, 22);第2类对管孔区域进行绿色编码,颜色值为(53, 106, 195);第3类对生长轮以及木射线区域归进行蓝色编码,颜色值为(29,209, 107)。
图5 颜色编码结果Figure 5 Color coding results
经过灰度转换、开闭运算等图像形态学处理后,消除了绝大部分的木射线、木纤维和轴向薄壁组织等面积较小的噪声。此外运用分水岭变换对已分类的木材微观图像进行目标分割,即管孔分割(图6),将管孔快速准确地分割。从最终的分割结果来看,除了极个别的细小管孔未被检测到之外,其余管孔均被完整地分割,分割出的轮廓也与实际轮廓基本吻合。
图6 管孔精分割结果Figure 6 Fine segmentation results of pores
2.2 验证结果
如图7所示:阈值分割算法每张木材横截面微观图像平均有88.1%的管孔被准确有效地分割出来;分水岭算法每张木材横截面微观图像平均有91.4%的管孔被准确有效地分割出来,但存在噪声误分的问题;K-means聚类与阈值分割算法先运用K-means聚类算法将木材图像分为3类,再采用阈值分割和canny算子做管孔精分割,结果每张木材横截面微观图像平均有96.3%的管孔被准确有效地分割出来,但部分木射线和轴向薄壁组织也被分割出来,且存在轮廓不饱满的问题;本研究算法为改进K-means聚类与分水岭算法,结果每张木材横截面微观图像平均有97.1%的管孔被准确有效地分割出来,分割出的管孔与实际管孔基本吻合。
图7 各算法分割效果Figure 7 Segmentation effect diagram of each algorithm
为验证本研究算法分割管孔的准确性,对12类树种的横截面微观图像在各算法下的分割结果进行了比较(表1),能够看出阈值分割不存在管孔误分,但因面积较小而漏分的管孔较多;分水岭算法不仅存在管孔漏分且会误分割出木射线、木纤维以及轴向薄壁组织;K-means聚类与阈值分割存在木射线和轴向薄壁组织的误分割;本研究算法基本不存在管孔的漏分和误分问题。
表1 各算法分割效果对比Table 1 Comparison of segmentation effects of various algorithms
3 结论
本研究改进的K-means聚类与分水岭的管孔分割算法,解决了初始中心点的随机性,并能有效地区分管孔区域与木纤维、木射线以及轴向薄壁组织等噪声区域,对管孔分割更为准确。本研究算法采用取图像颜色直方图对应的峰值确定初始聚类中心点和色彩编码的方式,充分将管孔与绝大部分噪声区域区分开,更适合于木材横截面微观图像分割任务。通过形态学处理和分水岭算法,对管孔进行精分割,将两者结合从而得到更为准确的分割结果。与其他分割算法相比,本研究算法分割效果显著提升,在大小不一且随机分布的管孔分割过程中鲁棒性高,有效避免了管孔漏分问题,具有良好的分割性能。