机器学习之基于水色图像的水质评价
一、案例背景
- 水质等级最高为10分,请为以下水质打分:
- 水产养殖
水产养殖的关键因素之一是水质
养殖水体生态系统的平衡状况可通过水质颜色体现
传统水质监控的关键:行家
- 依赖人(专家)的局限性
对个人经验要求高
存在主观性引起的观察性偏差
观察结果的可比性、可重复性不高,不易推广应用
- 在线水质监测
1.计算机视觉
2.数字图像处理技术
3.专家经验(专家数据)
4.机器学习算法
- 原始数据
- 水质分类标准
二、挖掘目标
请根据水质图片,利用图像处理技术和相应模型,实现水质的自动评价。
三、分析方法与过程
- 采集水样图像
- 特征提取
- 图像特征主要包括:颜色特征、纹理特征、形状特征、空间关系特征等。
- 与几何特征相比,颜色特征更为稳健,对于物体的大小和方向均不敏感,表现出较强的鲁棒性。
- 本案例中由于水色图像是均匀的,故主要关注颜色特征。
四、数据预处理
- 数据转化(Python)
图片转像素值矩阵:PIL Image.open()
r,g,b = im.split() #分成3个颜色通道
r_d = np.asarray® #取出各通道像素值 - 图像切割
- 颜色特征
颜色直方图:反映的是图像中颜色的组成分布,即出现了哪些颜色以及各种颜色出现的概率。其优点在于它能简单描述一幅图像中颜色的全局分布,即不同色彩在整幅图像中所占的比例,特别适用于描述那些难以自动分割的图像和不需要考虑物体空间位置的图像。其缺点在于它无法描述图像中颜色的局部分布及每种色彩所处的空间位置,即无法描述图像中的某一具体的对象或物体。
颜色矩:图像中任何的颜色分布均可以用它的矩来表示。根据概率论,随机变量的概率分布可以由其各阶矩唯一的表示和描述。一副图像的色彩分布也可认为是一种概率分布,那么图像可以由其各阶矩来描述。颜色矩包含各个颜色通道的一阶距、二阶矩和三阶矩,对于一幅RGB颜色空间的图像,具有R、G和B三个颜色通道,则有9个分量。
颜色直方图产生特征维数一般大于颜色矩的特征维数,为了避免过
多变量影响后续的分类效果,在本案例采用颜色矩来提取水样图像的特征。
- 特征提取:各阶颜色矩
一阶颜色矩:采用一阶原点矩,反映了图像的整体明暗程度。
二阶颜色矩:采用二阶中心矩的平方根,反映了图像颜色的分布范围。
三阶颜色矩:采用三阶中心矩的立方根,反映了图像颜色分布的对称性。
- 颜色矩特征提取后的数据集