基于SVM支持向量机的水质图像分析.docx

基于SVM支持向量机的水质图像分析.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

?

?

基于SVM支持向量机的水质图像分析

?

?

李昂金晓军万权性

摘要:针对运用水色图像来判别水质状况的问题,设计了一种基于计算机视觉与机器学习的水质图像评价方法。利用颜色矩阵对水质图像进行特征提取,采用SVM支持向量机算法对水质图像的RGB三通道特征进行数据分析,使用Python语言进行编程,得到一个水质评价模型。实验表明,该方法能有效通过水体的颜色对不同水质进行识别,具有一定的实际应用价值。

关键词:计算机视觉;机器学习;Pvthon;水质图像

:TP391:A:1009-3044(2018)08-0157-03

随着工业技术的日益提升,人类的生活变得越来越便利。但与此同时环境污染问题日趋严重,大气、土壤、水质污染是各个工业国家不得不面对的问题。污染需要治理,因此对于污染物的评价与监测十分重要。水产养殖业是我国国民经济的一个重要组成部分,在水产养殖过程中,选择没有污染的水域进行养殖十分重要。有经验的渔业生产从业者能够通过水体的颜色来判断水质的好坏,从而确定水体是否适合鱼类生长。在生产环境下,通常是以传统的肉眼观测法,以经验来观察判断,这种方式虽然有效,但观察结果不够稳定,主观性较强,容易引起观察性偏差。因此寻求一种定量分析有便于推广的方法十分必要。随着计算机视觉技术的快速发展,利用机器视觉代替人工视觉已经用于工业生产的诸多领域,同时也为水产养殖业提供了更好的技术支持。通过合理将计算机视觉技术与专家经验相结合,可以通过水体的颜色,对水质的优劣程度进行分级,对水质情况进行自动快速的识别。本文针对水质污染的评价方法进行研究,通过计算机科学技术对水质图像进行特征提取与数据分析,得到一个有效的水质自动评价模型。

1数据预处理

颜色直方图产生的特征维数一般大于颜色矩的特征维数,为了避免过多变量影响后续的分类效果,在本案例中选择采用颜色矩来提取水样图像的特征,即建立水样图像与反映该图像特征的数据信息关系,同时由有经验的专家对水样图像根据经验进行分类,建立水样数据信息与水质类别的专家样本库,进而构建分类模型,得到水样图像与水质类别的映射关系,并经过不断调整系数优化模型,最后利用训练好的分类模型,用户就能方便地通过水样图像判别出该水样的水质类别。水色分类如表1所示。

图1为基于图像处理的水质评价流程,主要包括以下步骤。

1)采集水质样本图像,选择性抽取一部分形成建模数据集,将实时抽取的图片作为增量数据集。

2)数据预处理,对步骤1形成的兩个数据集进行图像切割和颜色矩特征提取。

3)由专家对步骤2形成的建模数据进行观测,根据经验对水样图像进行分类,形成专家样本。

4)利用专家样本构建分类模型。

5)利用上一步的构建好的分类模型进行实时水质评价。

在采集水样图像时,会将盛水的玻璃容器一起拍成照片。由于感兴趣区域为水样区域,因此要排除玻璃容器与背景噪声的干扰。这里采用图像切割的方法,截取水样的中心区域附近的图像作为研究对象。具体方法为,提取水样图像中央80×80像素的图像。设原图像的大小是MXN,则截取宽从第fix(M/2)-40个像素点到第fix(M/2)+40个像素点,长从第fix(M/2)-40个像素点到第fix(M/2)+40个像素点的子图像。即可把图2中左边的原始水样图像切割并保存到右边的切割后的水样图像。

2特征提取

图像中任何的颜色分布都可以用它的矩来表示。根据概率论的思想,随机变量的概率分布可以由其各阶矩唯一的表示和描述。一幅图像的色彩分布可以认为是一种概率分布,那么图像可以由其各阶颜色矩来描述[6-8]。这里通过提取颜色矩阵来提取水样图像的特征,各阶颜色矩的计算方式为:

3水质评价模型构建

3.1模型输入

对特征提取后的样本进行抽样,抽取80%作为训练样本,剩下的20%作为测试样本,用于水质评价检验。

这里采用SVM支持向量机作为水质评价分类模型,该模型的输入包括两部分,一部分是训练样本的输入,另一部分是建模参数的输入。由于特征的取值范围在0~1之间,如果直接输入SVM模型,彼此之间区分度会比较小。为了解决这一问题,将所有特征都统一乘以一个适当的常数k,从而提高区分度和准确率。常数k的取值要适当,如果过小将导致区分度过低,使得模型精确度差。如果过大则会导致模型在训练样本中过拟合。所以k值的选取需要通过大量测试来确定一个最优值。经过实验,本次建模中k的最优值为30,因此将输入的特征统一乘以30,然后建立支持向量机模型。

3.2实验与分析

模型建立完成之后,使用训练样本对分析对象进行回判,得到的混淆矩阵如表3所示,分类准确率为96.9%,分类效果良好,可应用该模型进行水质评价。

4实验结果

本文实验使用python语言编程实现。水样数据采集于多个水产养殖池塘与湖泊,使用数码相机进行图像拍摄。为实现批量处理,将水质

文档评论(0)

姚启明 + 关注
实名认证
内容提供者

80后

1亿VIP精品文档

相关文档