可以做同城活动的网站,互联网相关行业有哪些,oppo软件商店网页入口,哪里可以上传自己的php网站摘要#xff1a;本作品旨在研究和实现基于MATLAB软件的冰箱水果保鲜识别系统#xff0c;针对多种常见水果混合的图像进行处理和识别。首先#xff0c;根据水果与背景的差异选择合适的阈值#xff0c;对图像进行去噪和对比度增强#xff0c;然后进行二值化处理。接下来本作品旨在研究和实现基于MATLAB软件的冰箱水果保鲜识别系统针对多种常见水果混合的图像进行处理和识别。首先根据水果与背景的差异选择合适的阈值对图像进行去噪和对比度增强然后进行二值化处理。接下来对图像进行边缘检测选定连通区域并对这些区域进行标记。在此基础上通过快速提取水果的颜色、形状和大小等特征进行准确的水果识别。最终该系统能够实现对不同种类水果的正确分拣提高水果保鲜管理的效率。
关键词MATLAB水果识别图像处理二值化边缘检测特征提取自动分拣冰箱保鲜系统 图 1 冰箱水果保鲜识别系统运行结果图 功能模块
这个基于MATLAB的冰箱水果保鲜识别系统区别于常用的冰箱系统将增加三个功能如下图像识别、食谱搜索、时间记录。
图像识别1、将彩色图像二值化或直接使用灰度图像对食物图片进行识别记录食物个数。2、通过识别灰度图像食物中的阴影区域区分食物的好坏并提醒显示。3、食物包含水果的识别苹果、香蕉、梨等。
食谱搜索通过先把食谱内容存入MATLAB中然后搜索关键字读取食谱内容。
时间记录1、记录当前放入食物的日期和时间并保存到数据库中。2、随着食物存放时间的增加更新存放的记录时长。
界面形式界面直接通过MATLAB软件GUI界面运行显示并进行相关操作。
最终效果运行程序后通过插入食物图片模拟将食物放入冰箱的过程插入成功后会记录并保存当前日期时间和食物个数随着时间的变化记录时长也会更新。通过图像识别区分食物的好坏并提醒显示。另外还可以通过搜索关键字查找到已存的相关食物的食谱的内容。
研究方法此系统将使用MATLAB进行程序编写。采用GUI设计进行图像处理。数据使用MySQL数据库进行存储读取。 图2 基于MATLAB的冰箱水果保鲜识别系统框图 设计方案
在计算机中图像由像素逐点描述每个像素点都有一个明确的位置和色彩数值。使用Matlab软件读取图像以矩阵形式存放图像数据其扫描规则是从左向右从上到下。
对于一副水果图像为了处理方便我们首先要把彩色图像转化为灰度图像。然后对图像进行二值化处理来获得每个水果的区域特征。
在水果与背景接触处二值化会导致图像边缘部分有断裂毛躁的部分。所以采用边缘提取以弥补断裂的边缘部分然后基于数学形态算子对图像进行去除断边图像填充等必要的后续处理。经过图像分割后水果和背景很明显地被区分开来然后需要对每种水果的特征进行提取。
先对图像进行标签化所谓图像的标签化是指对图像中互相连通的所有像素赋予同样的标号。经过标签化处理就能把各个连通区域进行分离从而可以研究它们的特征。 关键技术 图像二值化 1、灰度化
% 将真彩色图像 i 转化为灰度图像 I
Irgb2gray(i);
在 RGB 模型中如果 RGB 时则彩色表示一种灰度颜色其中 RGB 的值叫灰度值因此灰度图像每个像素只需一个字节存放灰度值又称强度值、亮度值灰度范围为0-255。 2、二值化
% level 为阈yu) 值取值从0到1.
% 本项目考虑到图片背景颜色为白色亮度较大因此选取 level0.9 来实现二值化。
Iim2bwilevel
一幅图像包含目标物体、背景还有噪声要想从多值的数字图像中直接提取出目标物体最经常使用的方法就是设定一个全局的阈值 T用 T 将图像的数据分成两部分大于 T 的像素群和小于 T 的像素群。将大于 T 的像素群的像素值设定为白色或者黑色小于 T 的像素群的像素值设定为黑色或者白色。
比方计算每个像素的RGB/3假设127则设置该像素为白色即RGB255否则设置为黑色即RGB0。 二边缘提取 1、开运算
Iimopen(i,SE);
先腐蚀后膨胀的过程称为开运算。看上去把细微连在一起的两块目标分开了
开运算作用可以使边界平滑消除细小的尖刺断开窄小的连接,保持面积大小不变等。
IimerodeiSE;
腐蚀运算作用消除物体边界点使边界点向内部收缩可以把小于结构元素的物体去除。
膨胀的作用将与物体接触的所有背景点合并到物体中是目标增大可填补目标中的空洞。 2、数学形态学运算
% bwmorph 函数是对图像进行指定的形态学操作。
% ‘remove’即代表如果一个像素点的4邻域都为1 则该像素点将被置0该选项将导致边界像素上的1被保留下来。
Ibwmorphiremove;
提取图像种水果的边界用于标记各个区域 三水果分类 1、获得连通区域的属性
这里要用到了在 Matlab 图像处理工具箱中非常重要的一个图像分析函数regionprops
顾名思义它的用途是 get the properties of region 即用来度量图像区域属性的函数
STATS regionprops(L,properties)
描述测量标注矩阵L中每一个标注区域的一系列属性L中不同的正整数元素对应不同的区域例如L中等于整数1的元素对应区域1L中等于整数2的元素对应区域2以此类推
此函数用来获取每个水果的中心位置及其外接椭圆的长短轴长度。中心位置用来计算水果的颜色特征值及最终显示水果名称。外接椭圆的长短轴长度用来计算水果的似圆性特征以判断其大致形状。 2、获取特征并判别函数
本项目根据水果在图像中表现出来的特点从面积特征似圆性特征颜色rgb值和hsv值特征对图像中的桃子、苹果、香蕉 、西瓜、菠萝、梨子等进行特征提取。最后按照筛选出来的特征对水果进行分类识别。 1颜色特征
本项目使用两种计量方式来测得水果的颜色值。 RGB颜色模式
对于彩色图像可分解为 RGB 三幅单色图像。每一副图像中的像素分布情况都代表了改颜色的程度信息。根据常识可知上述6种水果中苹果和桃子的红色含量要比其他水果丰富的多西瓜的红色含量最小。 Hsv颜色模式
这个模型中颜色的参数分别是色彩H纯度S明度V。 HSV模型的三维表示从RGB立方体演化而来。设想从RGB沿立方体对角线的白色顶点向黑色顶点观察就可以看到立方体的六边形外形。六边形边界表示色彩水平轴表示纯度明度沿垂直轴测量。 H参数表示色彩信息即所处的光谱颜色的位置。该参数用一角度量来表示红、绿、蓝分别相隔120度。互补色分别相差180度。纯度S为一比例值范围从0到1它表示成所选颜色的纯度和该颜色最大的纯度之间的比率。S0时只有灰度。V表示色彩的明亮程度范围从0到1。有一点要注意它和光强度之间并没有直接的联系。 2似圆性特征
似圆性是在计算出每块连通区域的外接椭圆的短轴长度和长轴长度来测量水果形状的似圆性。我们用长轴长度除以短轴长度得到一个比例。这个值与1越接近说明水果与圆越相似。同理该值越比1大说明水果越不像圆。根据常识可知上述6个水果中西瓜苹果桃子似圆性很高而香蕉菠萝似圆性最低。 3面积特征
经过标签化的不同区域的面积可以用该区域像素数量来计算。对整幅图像进行扫描计算所有连通区域的面积。根据常识可知西瓜在上述6个水果中面积是最大的一个菠萝其次。 特征统计表格 原始图像1 梨子 苹果 桃子 香蕉 菠萝 r 0.94 0.80 0.72 1.04 0.55 g 0.81 0.17 0.19 0.85 0.56 b 0.28 0.06 0.13 0.53 0.47 Hsv均值 0.11 0.2 0.5 0.16 0.26 面积 2671 2224 1936 3604 3361 似圆性 1.6 1.1 1.07 1.78 1.55 香蕉 桃子 梨子 西瓜 苹果 r 1.03 1.01 0.9 0.29 1.01 g 0.95 0.99 0.73 0.38 0.99 b 0.20 1.0 0.35 0.22 1.00 Hsv值 0.14 0.25 0.11 0.29 0.89 面积 2191 1572 1387 2914 1443 似圆性 2.2 1.0 1.6 1.0 1.03 苹果 桃子 西瓜 香蕉 梨子 r 0.86 1.07 0.20 0.92 1.02 g 0.19 1.06 0.53 0.31 1.00 b 0.22 1.06 0.30 0.26 0.95 Hsv值 0.63 0.26 0.39 0.12 0.108 面积 1190 1660 2328 1894 1082 似圆性 1.12 1.06 1.13 2.16 1.6921 4、特征选择及最终结果图 梨子梨子的hsv值是最小的且因为梨子有柄的关系梨子的似圆性在1.4至1.6之间梨子的r值和g值都普遍大于0.6 苹果苹果的似圆性在1至1.1之间苹果红的色素较多蓝色和绿色色素较少使得其g值和b值都普遍小于0.4 桃子似圆性在1至1.2之间hsv的值小于0.6红色色素较多使得其r值至少为0.7 香蕉香蕉的似圆性数值是最大的至少为1.8且其成黄色其hsv的值都小于0.2 菠萝菠萝的似圆性数值仅次于香蕉为第二大其hsv值都小于0.3且其红色色素少r值都小于0.7 西瓜西瓜的面积是所有水果中最大的且其红色色素较少r值都小于0.4似圆性在1至1.2之间
根据水果在图像中表现出来的特点从面积特征似圆性特征颜色RGB值和HSV值特征对图像中的桃子 苹果 香蕉 西瓜 菠萝 梨子等进行特征提取。最后按照筛选出来的特征对水果进行分类识别。
识别结果图如下所示 部分程序代码截图 结论
总的来说水果识别良好识别较为准确。对于偏亮和偏暗的图像由于作品同时采用了HSV模型和RGB模型判断因此图片的亮度对识别没有太大影响识别率还算理想。但是正是由于获取颜色特征时同时采用HSV模型和RGB模型的值判断导致去噪参数不能太大待识别图片出现较多噪声的情况下识别不是太理想因此有些识别存在误差。
而如果放弃使用HSV模型或者RGB模型中的一个则能较好进行去除噪声但是这样颜色特征有少了一样对于偏亮和偏暗的图像颜色判定时会有误差这是没有解决好的一个主要问题。