中国媒介生物学及控制杂志  2014, Vol. 25 Issue (5): 416-420

服务

文章信息

花慧贞, 杨慧勇, 袁雄峰, 邹波, 王登, 高灵旺
Hui-yong, YUAN Xiong-feng, ZOU Bo, WANG Deng, GAO Ling-wang
基于随机森林的鼠类头骨自动识别系统开发
Development of rat skull automatic identification system basedon random forests
中国媒介生物学及控制杂志, 2014, 25(5): 416-420
Chines Journal of Vector Biology and Control, 2014, 25(5): 416-420
10.11853/j.issn.1003.4692.2014.05.008

文章历史

收稿日期:2014-05-12
基于随机森林的鼠类头骨自动识别系统开发
花慧贞1, 杨慧勇1, 2, 袁雄峰3, 邹波4, 王登1, 高灵旺1    
1 中国农业大学农学与生物技术学院,北京 100193;
2 太原市科技应用推广站;
3 广西防城港出入境检验检疫局;
4 山西省农业科学院植物保护研究所
摘要目的 以实现鼠类头骨自动鉴定为目的,设计并开发了基于随机森林的鼠类自动识别系统。方法 系统应用计算机图像识别技术,使用计算机视觉库OpenCV和随机森林算法,设计鼠类头骨识别的训练和识别程序,训练模块包括图像输入、图像预处理、特征提取、训练分类器和分类器数据储存5个部分,识别模块的流程又包括图像输入、图像预处理、特征提取、模式识别和返回识别结果5个部分。通过自动提取鼠类头骨上颌正面图像的32个数学形态学特征(如偏心率、叶状性等),对啮齿目4科13种鼠进行自动识别。结果 实际运行结果显示,系统的平均识别率>80%,且每鼠种的识别正确率均在70%以上,说明该系统操作性强,鉴定结果比较可靠。结论 借助计算机技术可以实现鼠类的自动识别,但目前该系统还处于研究的初步阶段,如何进一步提高识别率尚需更多的研究。
关键词随机森林     鼠类     数学形态学     自动识别    
Development of rat skull automatic identification system basedon random forests
HUA Hui-zhen1, YANG Hui-yong1,2, YUAN Xiong-feng3, ZOU Bo4, WANG Deng1, GAO Ling-wang1    
1 College of Agriculture and Biotechnology of China Agriculture University, Beijing 100193, China;
2 Taiyuan ExtensionStation of Application Technology;
3 Entry-Exit Inspection and Quarantine Bureau of Guangxi Fangcheng Por;
4 Institute of Plant Protection, Shanxi Academy of Agriculture Science
Abstract:Objective Rodents can survive in any existing habitat, and are the largest order of mammals in terms of both variety and quantity of species. Unlike other mammals, their classification can be variable and complex, due to the large number of species. Furthermore, the inter-species characteristics and traits tend to be convergent. They pose a seriously increasing threat to agriculture. Hence it is crucial to find effective measures to manage and control rodent infestation, which requires confirmation of their taxonomic statuses precisely and quickly. However, an expert on one species or family may be unfamiliar with another. These issues have increased the demand for digitized software tools that can recognize and characterize rodent skulls from images. In this study we developed a system, named “Rodents Skull Automatic Identification System”, based on random forests. Methods The training module and recognition module of the system were designed based on the recognition technology of computer science, OpenCV, and random forests. The training module included image input, image preprocessing, feature extraction, pattern recognition, and identification result return. The recognition module included image input, image preprocessing, feature extraction, training classifier, and classifier data storage. The system identified rodents of 13 species from 4 families through automatic extraction and analysis of 32 mathematical morphological features on dorsal maxillary images, such as eccentricity and compactness. Results The system could identify 13 species among 4 families of rodents. The results showed that the average identification accuracy rate was above 80%, and the identification accuracy rate of each species was above 70%, indicating that the system was highly reliable in recognition of rodents. Conclusion Rodents can be automatically identified with the aid of computer technology. However, this system is only a preliminary study, and it requires further studies to improve the recognition rate.
Key words: Random forests     Rodent     Mathematical morphology     Automatic recognition    

鼠类一般指啮齿目动物,是哺乳动物中种类和数 量最多的一个目。世界上啮齿目有2277种(分属5亚 目33科),中国有192~216种(分属4亚目9科)[1,2],其 对人类的危害涉及多方面[3]。因此准确鉴定鼠类的分 类地位,不仅是科学研究需要解决的基础问题,更是采 取有效的鼠害防治方法和管理措施的保证,对维护国 家公共卫生安全也具有积极意义。由于啮齿目动物的 种间趋同和种类、数量的庞大,使得其分类多变和复 杂[1],如甘肃鼢鼠(Myospalax cansus)的分类地位一直 存在争议,多涉及到与中华鼢鼠(Eospalax fontanierii) 的分类关系[4]。鼠类的鉴定需要极强的专业知识,而 目前国内乃至世界的鼠类分类专家都非常有限,无法 满足繁重的分类鉴定工作需要。图像自动识别技术已 广泛应用于生物分类鉴定[5,6,7,8,9,10,11,12]。本研究以实现鼠类头 骨形态特征自动鉴定为目的,设计并开发一套基于随 机森林的鼠类自动识别系统。

本研究选用随机森林算法作为分类算法。随机森 林算法是以决策树理论为基础,利用Bootsrap或随机 子空间等方法从原始样本或特征向量中随机抽取多个 独立分布的样本,用每个样本进行决策树建模,然后组 合成由多棵决策树组成的森林,预测结果由所有决策 树的预测结果投票得出[13]。随机森林算法在现有算法 中的精度较高,对异常值和噪声有很好的容忍度,不易 过拟合。随机森林还能在分类的过程中给变量重要性 的估计,这对特征向量的进一步分析有重要意义[14]1 材料与方法 1.1 软件的整体设计 1.1.1 软件/硬件环境

本软件开发的硬件环境:PC 机(CPU:Core 2 2.8 GHz,内存:2 G,硬盘:250 G)。操 作系统为Windows XP;开发工具为Visual Studio 10.0 和UEStudio 10.20;开发语言为C++、PHP5,计算机视 觉库为OpenCV(Open source computer vision library); 应用服务器为Apache 2.2.8。 1.1.2 系统功能结构设计 1.1.2.1 设计思路

该系统设计的总体思路是:通过 对鼠类头骨图像的研究,提取适用于计算机进行自动 识别,且不易受图像质量影响的特征,并利用已被专家 鉴定的训练样本,进行特征提取和分类器设计,进而完 成系统设计,并用测试样本进行系统测试。

鼠类头骨标本集中了许多重要的分类特征,不同 鼠类的头骨形态存在一定差异,许多啮齿目可直接通 过头骨的结构和形态特征确定其所属的分类地位。因 此,啮齿目头骨标本是其鉴定的重要依据。该系统采 用自动提取的方法提取分类特征,快速便捷。

由于该系统要求对鼠类头骨的自动识别不仅能在 实验室使用,而且能在检疫一线使用,所以系统不连接 图像采集设备,而采用输入图片的形式。 1.1.2.2 系统功能模块

根据以上设计思路,该系统 共包含2个模块:识别模块和训练模块。识别模块的 流程又包括5个部分:图像输入、图像预处理、特征提 取、模式识别和返回识别结果。训练模块包括:图像输 入、图像预处理、特征提取、训练分类器和分类器数据 储存。它们之间的关系见图 1

图 1 系统功能模块之间的关系 Figure 1 Relationship between function modules of the system

每一张鼠类头骨标本图像,经过图像预处理后转 化为二值图像,由程序完成形态特征的自动测量并保 存相应的数据:如面积、周长、偏心率等。这些形态特 征数据将提交给分类器,由分类器计算分析得出结 果。在代码编写过程中调用OpenCV提供的通用算法 进行图像处理和特征提取,OpenCV是一个开源发行 的跨平台计算机视觉库,可以运行在Linux、Windows 和Mac OS操作系统上,其内部函数库提供许多图像处 理和计算机视觉方面的很多通用算法,无需添加新的 外部支持即可完整地编译链接生成执行程序,算法易 于移植。 1.2 系统功能的实现 1.2.1 图像输入

上传从正上方拍摄的头骨标本图 像,系统对图像分辨率不做要求,只要头骨清晰的图片 都能输入用于识别,但该系统目前只接受jpg和jpeg格 式的图像。 1.2.2 图像预处理功能的实现

该系统的图像预处理 主要是目标图像的选取和二值化。在二值图像中,鼠 类头骨被认为是目标,用1表示,其他均被认为是背 景,用0表示,这样便于在后续的图形分析中进行头骨 的形态特征研究。 1.2.3 图像特征提取功能的实现

程序完成形态特征 的自动测量并保存相应的数据。这些特征包括似圆 度、紧凑度、不变距等32个(表 1)。另外介绍其中4个 计算公式。

表 1 图像提取设计的32个特征 Table 1 Thirty-two features designed to extract images

(1)F1:似圆度(Roundness) 似圆度不是一个绝对值,而是一个相对的比值,其计算公式: ,其中R为似圆度,A为目标区域 面积,L为长轴长。

(2)F2:紧凑度(Compactness) 这是衡量目标区域紧凑程度的一个指标。,其中A是目标区域的面积,P是目标区域的周长。

(3)F3:叶状性(Lobation) 叶状性反映了边界的幅度特征。,其中 B为叶状性参数,R1为区域重心到边界的最短距离,L 为长轴长。

(4)F4:偏心率(Eccentricity) 即由矩特征计算出来的特征值 , 。 因为这些特征值都是比值形式的,故不需要进行 转换,可直接使用。32个特征值可以组成一个特征向 量,设为Vector,则Vector={F1,F2,F3,…,F30,F31,F32}。 同时,每一个特征向量需要一个标记(ClassID),用来 表示它是属于哪个类别的,因此特征向量变为:Vector= {F1,F2,F3,…,F30,F31,F32,ClassIDi },其中ClassIDi是一 个数字标量,i表示鼠头骨类别,且i=[1,m],m为鼠 头骨类别总数。它与鼠头骨类别的名称有着如下对 应关系:

对于所有鼠头骨样本图像集,则有一个Vector向 量的二维矩阵:

其中n表示样本图像集维数。 1.2.4 分类器设计 1.2.4.1 随机森林算法

上述特征矩阵将代入分类 器,完成对样本的分类鉴定。该特征矩阵空间维数比 较大,且在32个特征中,并不是所有的特征在种间的 差异都显著,特征空间中还存在着很多冗余的信息。 由弱分类器融合成强分类器的组合分类器可以有效解 决该问题。 1.2.4.2 随机森林算法的实现

该系统的核心算法是 通 过OpenCV算 法 库 中 的CvRTrees类 实 现 的 。 OpenCV是开源计算机视觉库,由一系列C函数和少 量C++类构成,同时提供了Python、Ruby、MATLAB等 语言的接口,实现了图像处理和计算机视觉方面的很 多通用算法。CvRTrees类对随机森林算法进行了封 装,只需要调用其接口就可以使用随机森林算法进行 分类。

该系统主要用到以下2个函数:

函数(3)用于训练分类器,其中参数trainData中输 入要训练的样本集特征矩阵;tflag表示trainData矩阵 中行向量还是列向量表示一个样本;responses是一个 向量,表示每个样本对应的类别;varIdx和sampleIdx参 数分别用于标示trainData中的训练样本集和测试样本 集 ;varType 标 示 分 类 结 果 的 数 据 类 型 , missingDataMask是一组标示缺失数据的掩码,params 是一个CvRTParams对象参数。

函数(4)用于识别样本的分类,参数sample输入 要测试的样本,missing标示该样本中缺失的数据。 1.2.5 模式识别与训练

模式识别是一种计算机程 序,其设计目标是在通过学习后,可自动将数据分到已 知类别。其实质为数学模型,针对模型的不同,目前有 多种分支,包括Bayes网络模式识别、决策树算法、支持 向量机(SVM)算法等,该系统采用上述随机森林算法。 如1.2.3所述,不同的鼠种有不同的ID,提取训练 样本的特征,构造集成分类器并计算其权重(图 2)。通 过样本训练,可使系统获得头骨自动识别的能力。

图 2 鼠类头骨标本训练与鉴定过程实现 Figure 2 Progress of training and identification of rodent skulls

用Visual C++语言编写鼠类头骨标本模式识别的 训练程序,并开发出鼠类头骨标本自动识别系统训练 机(图 3),用于标本的批量识别训练,在该系统的初步 开发阶段共用了13种336个图像进行训练(表 2)。

图 3 鼠类头骨标本模式识别训练 Figure 3 Training of pattern recognition of rodent skulls

表 2 开发阶段13种鼠训练标本量 Table 2 Sample number of 13 species of rodents used in training process
1.2.6 分类鉴定功能的实现

在鉴定过程中使用的数 学模型及分类器与训练时相同。选择上传的待鉴定图 像区域后,后台程序提取该图像的32个特征,并与已 有ID鼠种的特征进行对比,分类结果同集成分类器权 重组合成最终结果,在界面中返回鉴定结果(图 2)。如 图 4所示,分类鉴定结果显示在系统的显示区域中,同 时显示系统预存鼠种标本头骨和鼠体图片,以便使用 者进一步确认鉴定结果是否可靠。

图 4 自动识别结果 Figure 4 Automatic identification results
2 结 果

根据上述实验研究,开发了“基于随机森林的鼠类头骨标本自动鉴定系统”的web应用程序,客户端以任 意方式连接上Internet,通过IE、360等浏览器均可访问 该系统,完成鼠类头骨鉴定的整个过程。用户按要求 提交需要鉴定的鼠类头骨标本图像,选择相应操作 后,系统便可自动处理并分析图像,做出判断,并把鉴 定结果返回给用户。目前系统可鉴定的鼠类共计13 种。为验证系统的可操作性、鉴定结果的准确性,本 研究对系统分别进行回代测试和应用测试(图 5)。

回代测试是指系统开发人员用与训练样本物种 相同的测试样本进行鉴定,测试样本集与训练样本集 相同。应用测试是指非软件开发人员使用该系统对 测试样本进行鉴定测试。测试的目的是验证系统的 准确性和可操作性,对系统提出改进建议。对于机器 学习,一般来说,在一定范围内,样本数量越大训练出 来的分类器分类正确率越高。

图 5 13种鼠的系统测试正确率 Figure 5 System testing accuracy of 13 species of rodents

系统测试结果表明,系统对4科13种的平均识别 率>80%,整体识别准确率较高。且每种鼠的识别率 也均>70%,识别率相差不是特别大,说明系统选取的 分类特征在各种间差异性较稳定。这是因为,随机森 林算法由多棵决策树构成,每棵决策树从总体特征向 量空间中随机获得子集进行建树,而每棵决策树中的 节点又会选择识别效果最好的特征来分裂节点,这种方式使得在种间具有差异的特征在分类判别时的权重 增加,从而提高分类器的识别效果。

从训练用标本量与应用测试正确率之间的关系来 看,基本符合在一定范围内训练样本量越多测试正确 率越高的规律。但训练样本量较大的大仓鼠、褐家鼠 和花鼠的测试正确率还不及训练样本量最小的大林姬 鼠的正确率,可能是由于模型中使用的特征值不足,需 要增加新的特征值来提高识别率。 3 讨 论

鼠类自动识别研究就是希望通过计算机实现分 类鉴定功能,在实现自动识别时以鼠类头骨标本图像 中的数学形态特征作为分类的依据,这些特征不同于 传统分类中用到的分类特征,是量化的数字特征,容 易被计算机理解并做相关计算分析。鼠类自动识别 可通过统计模式的识别方法(决策理论法)来实现,即 根据所选择的统计学方法设计识别鼠类头骨标本的 分类器。

该系统的优点:①易操作性。只需按照系统提示 输入图片、选择区域、并点击鉴定即可完成对待识别 标本的鉴定。②鉴定结果具有一定的可靠性。系统 鉴定结果的正确率较高,随着进一步的研究完善,该 系统不仅可以在实验室使用,也可在生产实践领域中 应用。

该系统不足之处:①种类数量的问题。据《中国兽 类野外手册》世界啮齿目有2277种,中国有192种,而 目前该系统只能对3科13种鼠进行自动识别,当输入 这13种鼠之外的样本时,无法判断,会返回无识别结 果的图。因此要完全实现中国啮齿目动物的自动识别 还需进一步的深入研究。②鼠类头骨形态特征的选取 及优化。目前该系统只能提取到32项数学形态特征, 但随着需要识别的种类增加,这些参数远远不够,还需 要提取更多特征参数并进一步优化特征参数才能对各 种鼠类的分类地位做出准确判断,这是后续工作值得 研究的问题。③破损陈旧标本的识别。系统是根据图 像中提取的数学形态特征来识别头骨标本的,目前只 能识别完整的头骨标本。如果标本存在缺损,将直接 影响其数学形态特征,尤其是头骨标本的眼眶部位最 易断裂缺损,这就极大地改变了整个标本的某些数学 形态特征,如偏心率、球状性、叶状性等,这将影响识别 的准确度。因此,简单准确地识别破损标本是后续工 作中需要进一步研究的。④完善系统技术。目前,该 系统没有限定输入图片的大小,当输入较大图片时,系 统无缩放图片的功能,这就使得选择区域时不太方 便,稍微削弱了其实用性,有待进一步完善。

参考文献
[1] 潘清华,王应祥,岩崐. 中国哺乳动物彩色图鉴[M]. 北京:中国 林业出版社,2007:386-394.
[2] Andrew TS,解焱. 中国兽类野外手册[M]. 长沙:湖南教育出版 社,2009:31-186.
[3] 郑智民,姜志宽,陈国安. 啮齿动物学[M]. 上海:上海交通大学 出版社,2008:8-11.
[4] 吴攀文,王伟伟,周材权,等. 基于毛髓质指数探讨甘肃鼢鼠、高 原鼢鼠、秦岭鼢鼠的分类地位[J]. 动物分类学报,2007,32(3): 502-504.
[5] Tofilski A. Draw wing,a program for numerical description of insect wings[J]. Insect Sci,2004,17(4):1-5.
[6] Weeks PJD,Neill MAO,Gaston KJ,et al. Automating insect identification:exploring the limitations of a prototype system[J]. Appl Entomol,1999,123(1):1-8.
[7] Gilchrist AS,Crisafulli DCA. Using variation in wing shape to distinguish between wild and mass-reared individuals of Queensland fruit fly,bactrocera tryoni[J]. Neth Entomol Soc,2006,119(2): 175-178.
[8] 于新文,沈佐锐,高灵旺,等. 昆虫图像几何形状特征的提取技术 研究[J].中国农业大学学报,2003,8(3):47-50.
[9] 赵汗青,沈佐锐,于新文. 数学形态特征应用于昆虫自动鉴别的 研究[J].中国农业大学学报,2002,7(3):38-42.
[10] 赵汗青,沈佐锐,于新文. 数学形态学在昆虫分类学上的应用研 究 Ⅰ. 在目级阶元上的应用研究[J]. 昆虫学报,2003,46(1): 45-50.
[11] 赵汗青,沈佐锐,于新文. 数学形态学在昆虫分类学上的应用研 究 Ⅱ. 在总科阶元上的应用研究[J]. 昆虫学报,2003,46(2): 201-208.
[12] 黄小燕,郭勇,赵太飞. 数学形态学的储粮害虫彩色数字图像分 割[J].计算机测量与控制,2003,11(6):467-469.
[13] Breiman L. Random forests[J]. Machine Learn,2001,45(1):5-32.
[14] 刘艳丽.随机森林综述[D].天津:南开大学,2008