基于水色图像的水质评价

基于水色图像的水质评价(完整代码)

实验介绍

水质的好坏跟水色有一定关系,有经验的从事渔业生产的从业者可通过观察水色变化调控水质。
本次实战的目标是通过水色图像实现水质的自动评价。
下面水色与水质的关系表:
水色与水质的关系表

数据探索分析

数据源
在‘data/images’目录下给出了某地区的多个罗非鱼池塘水样的数据,根据上节给出的水产专家按水色判断水质分类的数据表来对数据进行探索分析。每个水质图片的命名规则为“类别_编号.jpg”,如1_1.jpg说明当前图片属于第一类的样本。
在这里插入图片描述

问题抽象

	根据概率论的理论,随机变量的概率分布可以由其各阶矩唯一表示和描述。一幅图像的色彩分布也可以认为是一种概率分布,那么图像可以由其各阶矩来描述。颜色矩包含各个颜色通道的一阶矩、二阶矩和三阶矩,对于一幅RGB颜色空间图像,具有R、G和B三个颜色通道,则有9个分量。		

将采集到的水样图像进行分割,采用颜色矩来提取水样图像的特征。
(1)一阶颜色矩
一阶颜色矩采用一阶原点矩,反映图像的整体明暗程度。
在这里插入图片描述
其中,Ei是在第i个颜色通道的一阶颜色矩,对于RGB颜色空间的图像,i=1,2,3。其中pij是第j个像素的第i个颜色通道的颜色值。

(2)二阶颜色矩

二阶颜色矩采用的是二阶中心矩的平方根,反映图像颜色的分布范围。
在这里插入图片描述
其中σi是在第i个颜色通道的二阶颜色矩,Ei是在第i个颜色通道的一阶颜色矩。

(3)三阶颜色矩

三阶颜色矩采用的是三阶中心距的立方根,反映图像颜色分布的对称性。
在这里插入图片描述
其中,si是在第i个颜色通道的三阶颜色矩,Ei是在第i个颜色通道的一阶颜色矩。
我们将对所有的水样图像进行特征提取,得到水质类别和水样特征的数据。

数据特征提取

我们将图像中颜色矩特征进行提取,并对数据进行规范化,使其取值在[0,1]之间。对图像中心区域的抽取可以采用pillow库来完成。
此处对书中给出的原始图片数据进行特征提取,并对结果进行规范化,使用该值直接应用到向量机模型,并未使用书中所给数据,分类效果较好。

编写以下代码进行颜色矩的抽取。

import numpy as np
import pandas as pd
from sklearn import preprocessing
from PIL import Image
import os

def PicManage(path,i):
    pic = Image.open(path)
    pic.c_x, pic.c_y = (int(i/2) for i in pic.size)
    box = (pic.c_x-50, pic.c_y-50, pic.c_x+50, pic.c_y+50
  • 2
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值