基于智能移动端的农业土壤颜色识别应用研究
作者: 高梦泽 费腾
摘要 有效测定农业土壤的颜色可以帮助获取其属性、发生过程、肥力等重要信息。而在传统土壤学中,土壤颜色的主要识别手段为肉眼比照孟塞尔土壤色卡。该识别方法存在主观性强、个体误差大、不便操作等问题。针对该情况,提出了一种基于智能移动端的农业土壤颜色识别应用,并完成了系统案例设计与实现。该系统可通过移动端自带的相机和闪光灯获取数据并计算其RGB均值,依据RGB-HV/C转换数据库对数据进行识别测试和结果显示。该应用具有易获取易携带、识别误差低、操作方便直观等特点。
关键词 农业土壤;土壤颜色识别;孟塞尔颜色体系;移动服务
中图分类号 S126 文献标识码 A
文章编号 0517-6611(2022)05-0215-05
doi:10.3969/j.issn.0517-6611.2022.05.054
开放科学(资源服务)标识码(OSID):
Application Research of Agricultural Soil Color Recognition Based on Intelligent Mobile Terminal
GAO Meng-ze,FEI Teng
(School of Resource and Environmental Sciences,Wuhan University,Wuhan,Hubei 430079)
Abstract Determining the color of agricultural soil effectively can help to obtain important information about its properties,development process and fertility.In soil science,Munsell Color System is mainly used to describe the color of soil,which needs to be compared with Munsell soil card to recognize.And this traditional method may lead to some problems such as strong subjectivity and large individual errors.In view of this,we proposed a portable soil color recognition system which was based on smartphones and android platforms.Containing RGB-HV/C conversion database,this system could obtain and recognize the soil data according to RGB average value.Experimental results showed that the system could get more accurate recognition results and make fewer mistakes.
Key words Agricultural soil;Soil color recognition;Munsell color system;Mobile service
基金项目 武汉大学研究生导师育人方式创新项目(20190024)。
作者简介 高梦泽(1995—),男,内蒙古包头人,硕士研究生,研究方向:地理信息系统移动服务技术、土壤监测、增强现实技术。*通信作者,副教授,博士,从事生态遥感和环境监测研究。
收稿日期 2021-06-01
颜色是土壤最重要的视觉特征,它可以很好地指示农业土壤的属性、发生过程和肥力,是土壤诊断分类和质量评价的重要指标。同时,我国面积广大,农业用地土壤复杂多样。因此,如何准确地测定农业用地的土壤颜色是一项十分重要的研究。
随着时间推移,农业土壤颜色测定时使用的颜色标准逐渐统一和完善。美国农业部(USDA)于1930年代采纳孟塞尔颜色空间为泥土研究的官方颜色描述系统。我国中国科学院南京土壤研究所也在1990年出版了依据孟塞尔颜色空间作为土壤颜色辨别的中国标准土壤比色卡[1]。孟塞尔颜色体系主要包括色调(H)、明度(V)和彩度(C),即常说的HV/C颜色空间。传统颜色鉴别作业中最主要的使用方法是基于孟塞尔比色卡[2]目测比色法。该传统方法由于操作员的个体差异,较为容易产生因主观因素、天气因素、光线因素和湿度因素的误判现象。因此,为提升农业土壤颜色测量精度的方向,研究人员进行了众多探索,如诸莉燕等[3]提出了一种通过对土壤照片进行图像处理获得土壤孟塞尔颜色的测定方式,有效缩小了辨别误差;陈剑科等[4]基于测色仪提出了一种在明度和彩度上误差较低的土壤孟塞尔颜色测定方式。
在计算机图像对农业土壤颜色贡献的方面,孟塞尔体系的HV/C体系与计算机颜色体系之间的转换也一直是一项重要的课题。岳智慧等[5]对基于分光色度仪的CIELAB值与孟塞尔颜色系统提出了一套二者的转换方法,为快速和定量获取土壤颜色提供了一项重要方法。龚睿琪等[6]基于计算机系统的RGB色度空间建立了其与HV/C颜色空间的转换数学模型,虽有一定误差,但仍有一定的参考价值。李怡春等[7]基于PLSR(最小二乘回归),预测土壤孟塞尔颜色建模效果,并与色系转换法进行比较,提供了一条土壤颜色获取的新途径。 Stiglitz等[8]基于颜色传感器设备NixTMPro,提出一套基于廉价设备的土壤颜色测定方法,并利用实验数据证明其在非潮湿环境下具有一定的使用价值。Mancini等[9]则基于NixTM Pro sensor,使用机器学习进行建模和土壤颜色预测,其中RF 模型的整体预测精度表现较为良好,有一定借鉴意义。以上方法均从不同的角度尝试通过优化算法和仪器获取高精度的孟塞尔土壤颜色获取方法,虽然相较传统肉眼识别有效地缩小了误差,但仍没能很好解决农业土壤测定流程中需要特定仪器采集数据、数据获取和分析分离且操作手段烦琐等问题。
随着21世纪20年代以来智能移动设备的高速发展,搭载高像素、高精度摄像头的智能移动端已经成为当今我国最为普及的便携式移动设备。因此,智能移动端的摄像头已经成为当前最易获得图像样本的工具;而移动端自带的闪光灯在校正后可作为稳定环境光源,即在一定程度上可以取代传统土壤颜色识别作业时的严格光照要求。因此利用移动端操作系统的开放性可进行图像处理及用户交互,使农业土壤颜色识别应用的硬软件集成在Android手机上成为可能。鉴于此,笔者提出了一种基于便携移动设备的农业土壤颜色识别应用,在保证系统易用性、简化操作流程等前提下兼顾孟塞尔颜色识别精度,并通过数据比照试验证明了该方法在有效提升便捷度和易用性的情况下保证了农业土壤颜色识别的精度。
1 应用系统设计方案
该应用的主体模块结构如图1所示,包含4个主要方面,即数据输入模块、颜色提取模块、颜色识别模块以及结果输出模块。
该研究以Android系统为例,使用Android Studio完成了基于便携移动设备的农业土壤颜色识别应用设计,实现了土壤样本数据收集、筛选、检测和识别等模块的结合。
1.1 数据输入模块
数据输入模块包含2个子模块,分别为摄像头控制模块和光线湿度评估模块。为了改善传统颜色识别作业时需使用特定光照设备进行严格光照的问题,该应用系统使用移动端自带的闪光灯作为光照设备。为减少获取数据质量的方差,通过预设照相机的焦距,统一规定照相机拍摄土壤样本所使用的物镜距离为20 cm。进入数据输入模块后,系统闪光灯默认为关闭状态,并会在采集数据时变为开启状态,准备进行数据采集。
由于过大的湿度会显著改变待测土壤的颜色,在数据采集前,系统会从手机后台提取天气中的湿度信息,如果当前预报的湿度超过正常检测环境的范围,会对用户进行提示,保证大气湿度适合采集。
此外,数据输入模块支持直接上传本地土壤数据,用于对已经采集好的土壤样本数据进行颜色识别。
1.2 颜色较准模块 颜色较准模块包含2个子模块,分别为明度值较准和干扰色点排除。
由于光线环境对于数据的明度值(V)有关键性影响,所以减少提取结果误差的重要前提之一是保证明度值提取准确。在初次采集数据前自动进入明度值校准模块。在20 cm处自动识别和采集预先定义好的白卡、黑卡和灰卡。系统会提取相机采集的白、灰、黑3张色卡的RGB值,并通过RGB明度计算公式获取其明度值,计算公式如下:
L=2.3(R255)2.2+(1.5G255)2.2+(0.6B255)2.21+1.52.2+0.62.2 (1)
根据3张色卡的明度值与理想环境下白、灰、黑3张色卡的明度值相比较,确认当前由于光线环境造成的明度误差值。试验结果表明,明度值V的误差值主要分布在1~3,且样本数据越接近纯黑色明度误差越低。
第2个子模块为干扰色点排除。因拍照获取的土壤样本图片中难免有杂质及阴影遮盖的部分,所以需要对图片样本干扰色点进行排除。具体的方法为枚举并遍历提取样本数据所有像素的RGB值并取平均,然后将与该平均RGB值差异大的像素点排除。筛除RGB值平均方差公式如下:
C= (-R)2+(-G)2+(-B)2(2)
式中,、、值分别为样本数据的RGB平均值,C值取20以内作为误差是否在范围内的依据,小于该值则认为该像素点会被保留。
通过上述2个模块,得到光线环境干扰和干扰色点排除后的土壤数据的平均R、G、B值,即土壤样本数据的综合RGB值。
1.3 颜色识别模块 颜色识别模块的主要原理为在获得了土壤样本数据的RGB值后[10],通过已建立的颜色转换数据库,将RGB值转换为对应的HV/C值。
该应用系统的颜色转换数据库建立是通过遍历所有HV/C颜色确认其对应的RGB值实现的。在保证和“1.1”数据收集模块中相同的光线、湿度、拍摄距离的条件下,对孟塞尔标准比色卡进行样本收集。图2展示了部分标准比色卡的照片数据。
由于照相机的感光元件存在热稳定性差异,即使在上文提到的闪光灯补足的良好光线环境下对整块颜色进行数据采集,仍有可能出现少部分图像噪点。因此需要对上述获得的数据用相同的方法逐个进行噪点去除,然后计算得对应平均RGB值。图3展示了7.5R 3-6色块使用上述方法转换后所得到的RGB值。
通过上述方法将对《孟塞尔土壤标准比色卡》中的13张孟塞尔土壤比色卡共440种颜色共多少张,多少种颜色,分别采集,建立1个查询表(look-up-table)工作可以完整的获取,从而获取所有标准孟塞尔颜色在电子设备上对应的RGB值。部分RGB-HV/C转换关系如表1所示。
由于比色卡枚举的是离散的颜色色块,查询表不可能包含所有可能的土壤颜色,且存在多个RGB值对应同一个HV/C的情况,因此采集的土壤样本颜色未必都在查询表中。
因而颜色识别模块需要对所获取的RGB颜色进行最临近颜色的查找。最临近RGB值的计算公式如下:
M=minki=1((R-R i)2+(G-G i)2+(B-B i)2(3)
式中,k为数据库全部颜色数据的数量,在该研究中为色卡中颜色数k为440。使用上述方法获得与数据库中样本最接近的RGB值后,系统将输出该接近值在数据库中对应的HV/C值,作为此RGB值对应的HV/C值。
1.4 数据输出模块
该应用系统数据输出模块用于向用户展示提取的颜色并呈现在系统界面中。在获取到颜色识别结果后,系统会将转换得到的色调值(H)、明度值(V)和彩度值(C)的具体数值以及其对应的颜色色块依次输出在显示屏上。
图4a展示了从移动设备本地获取土壤样本数据并进行识别后的结果,即取平均RGB值后得到的标准结果;图4b为使用了数据输入模块的照相机进行拍照并识别后的结果。