郝位军 重庆资源与环境保护职业学院
引言:芒果被誉为“热带水果之王”,由于其丰富的营养价值和保健功能,在国内和国际市场需求较大。芒果具有良好的经济效益,在我国其种植地分布较广,产地主要位于海南、广西、广东、福建、四川和云南等地区,同时海南地区的芒果种植面积和产量位居全国第一。
为了提高芒果的经济效益和国际竞争力,需对芒果品质(成熟度、形状和外观颜色等)进行严格划分,但目前我国大部分的芒果分类是人工根据芒果大小和品质进行简单分级,造成芒果实际经济效益被低估,同时得不到国内外市场的认可,在市场竞争中芒果品质是其经济效益大小的关键因素。
李国进等提出利用芒果形状特征(长短轴之比、面积)和颜色特征(H分量)共4个特征建模将芒果品质分为三个等级。张烈平等通过计算机视觉技术提取芒果的图像信息并进行预处理(去燥图像、分割图像和增强图像等),提取9个芒果特征信息参数,建立BP神经网络模型对芒果进行分级。王江帆等应用芒果图像的投影图像和芒果重量建立模型,对芒果重量进行分级。
采用计算机视觉技术提取芒果的特征信息(形状和颜色特征等),提取的芒果颜色特征信息可以对其进行成熟度和外观颜色进行判别,其形状特征信息可以对芒果大小和形状等基本信息进行判别。本文基于计算机视觉技术获得芒果图像,基于 MATLAB GUI 为开发工具,开发了一套芒果特征提取系统,可提取芒果的形状特征和颜色特征信息。
本文采用计算机视觉提取芒果静态图像,计算机视觉系统由计算机、光照箱、环形光源、CCD 摄像头和图像采集卡等组成。
图1 计算机视觉系统示意图
本文基于计算机视觉技术提取芒果静态图像为基础,采用MATLAB GUI 设计芒果图像提取与显示和在不同颜色模型下的颜色分量选取及显示相关颜色直方图,根据直方图确定图像的最佳阈值并根据阈值对芒果图像进行分割显示等功能。技术路线如图 1 所示。
图1 技术路线
芒果特征提取系统界面采用1个Slider滑动条、3个Axes轴对像、1个Pop_up Menu弹出式菜单、7个Static Text静态文本、 3个Edit Text文本框和5个Push Button按钮等对象拖动到合适的位置。芒果图像颜色分量的选择采用Pop_up Menu弹出式菜单进行选择,图像分割的动态阈值采用Slider滑动条进行选择,图像的显示采用Axes轴对像显示,界面中的相关说明采用Static Text静态文本对相关功能说明。界面设计如图 2 所示。
图 2 界面设计结果
芒果静态图像采用uigetfile 函数进行设置,图片格式为tif、bmp和jpg等格式, 采用数组{'*.tif'; '*.bmp'; '*.jpg'}将这三种格式放在同一个单元数组中,程序如下:
[fname, pname, index] = uigetfile({'*.tif'; '*.bmp';'*.jpg'}, '选择图片');
if index == 1 || index == 5
Mg = [pname fname];
axes(handles.axes1);
imshow(Mg);
end
芒果图片读取如图 3 所示。
图 3 芒果图像
选择1个Pop_up Menu弹出式菜单和1个Axes轴对像控件位置如图2所示,Pop_up Menu菜单的Callback函数实现在不同颜色模型下的颜色分量选择,并显示相关直方图,运用Switch…case…end结构程序语句实现相关功能,根据case值的不同进行颜色分量直方图的显示,部分程序如下:
index = get( handles.Popupmenu1,‘Value’ ) ;
switch index
case 1
axes( handles.axes2) ;
imhist(Mg_r) ;
end
选用1个Edit Text文本框和1个Slider滑动条控件(位置如图2所示)对阈值进行选取及分割图像显示,代码如下:
slider1_value = get( handles.slider1,‘Value’) ;
周长提取采用bwperim函数进行提取,芒果分割图象的面积提取采用bwarea函数。在Axes3轴对像控件中显示芒果分割图像,将提取的芒果形状特征(周长和面积)显示在相应的Edit Text文本框中,如图4所示。
图 4 运行界面
用 get 函数得到芒果图像不同颜色模型下的颜色特征,如 R、G、B、Y、Cb、Cr、H、S、I 等值,用 xlsread 函数保存提取到的芒果形状特征和颜色特征值,从而为芒果形状和颜色特征与芒果分级奠定一定的理论基础。
运用Switch…case…end 结构的回调函数进行系统的退出。
基于MATLAB软件强大高效的GUI功能设计出芒果静态图像的形状和颜色特征值的方法。为后续基于形状和颜色特征的芒果大小和品质分级提供了基础。
[1]罗学兵.芒果的营养价值、保健功能及食用方法[J].中国食物与营养,2011,07:77-79.
[2]郑素芳,张岳恒.海南芒果产业链现状研究[J].中国农业资源与区划,2011,02:75-80.
[3]谢轶,张艳玲,徐志.我国芒果等级划分标准探讨[J].中国热带农业,2013,06:9-11.
[4]李国进,董第永,陈双.基于计算机视觉的芒果检测与分级研究[J].农机化研究,2015,10:13-18+23.
[5]张烈平,曾爱群,陈婷.基于计算机视觉和神经网络的芒果检测与等级分类[J]. 农机化研究,2008,10:57-60.
[6]王江枫,罗锡文,洪添胜,戈振扬.计算机视觉技术在芒果重量及果面坏损检测中的应用[J]. 农业工程学报,1998,04:192-195.
[7]王垚.精通MATLAB GUI 设计[M].北京:电子工业出版社,2008.
[8] Choi Y J,McCarthy K L,McCarthy M J.A MATLAB graphical user interface program for tomographicviscometer data processing[J].Computers and electronicsin agriculture,2005,47(1).
[9]陈杰. MATLAB 宝典[M].北京:电子工业出版社,2010.