7 植物背景分离、RGB、HSV特征提取案例(matlab程序)

news/2024/7/21 7:12:48 标签: matlab, 图像处理, 计算机视觉, 学习

学习目标:背景分离和RGB等特征提取

 

1.简述

叶片RGB图像背景精确分离的方法,包括以下图像背景分离方法:S1:选取叶片,所得到的原始图像;S2:采用MATLAB 2016R软件将RGB图像转化为HSV图像,以饱和度0.190.21为界限,将小于界限的图像明度调整为0,并转化为灰度图;S3:用edge函数canny算子对图像边缘进行检测提取;S4:对图像进行膨胀操作并填补边缘缝隙;S5:对空隙填充并采用菱形结构元素对图像进行平滑;S6:将平滑后的图像经中值滤波去除冗余信息;S7:运用bwlabe函数寻找8联通成份并进行二值化处理;S8:将处理后的图像保存为jpg格式图像;本发明对单色叶,杂色叶,多色叶均有最佳的处理效果.   

 

2.代码

clear all;
close all
clc
I = imread('01.jpg');
whos
%%   
I_Gray=rgb2gray(I);
imhist(I_Gray);
I_Bw=im2bw(I,140/255);
figure;
subplot(1,3,1),imshow(I),title('原图');
subplot(1,3,2),imshow(I_Gray),title('灰度图');
subplot(1,3,3),imshow(I_Bw),title('二值图');
I_R=I(:,:,1);
I_G=I(:,:,2);
I_B=I(:,:,3);
%%   R-B背景分割
I_RB=I_R-I_B;
figure,imhist(I_RB);

I_Bw2=im2bw(I_RB,50/255);
I_Bw2Fill=imfill(I_Bw2,'holes');
figure;
imshow(I_RB),title('R-B');
imshow(I_Bw2),title('二值图');
imshow(I_Bw2Fill),title('填充点');
I_R1=uint8(I_Bw2Fill).*I_R;
I_G1=uint8(I_Bw2Fill).*I_G;
I_B1=uint8(I_Bw2Fill).*I_B;
I_rgb=cat(3,I_R1,I_G1,I_B1);
figure,imshow(I_rgb);
%%    RGB特征提取
I_r=I_rgb(:,:,1);
I_g=I_rgb(:,:,2);
I_b=I_rgb(:,:,3);
I_rr=I_r(I_r>0);
I_gg=I_g(I_g>0);
I_bb=I_b(I_b>0);
r_mean=mean(I_rr),
g_mean=mean(I_gg),
b_mean=mean(I_bb),
%%    hsv特征提取
I_hsv=rgb2hsv(I_rgb);
figure,imshow(I_hsv),title('hsv图');
I_h=I_hsv(:,:,1);
I_s=I_hsv(:,:,2);
I_v=I_hsv(:,:,3);
h=I_hsv;h(:,:,[2 3])=0;
s=I_hsv;s(:,:,[1 3])=0;
v=I_hsv;v(:,:,[1 2])=0;
figure,subplot(1,3,1);imshow(h);
subplot(1,3,2);imshow(s);
subplot(1,3,3);imshow(v);
I_hh=I_h(I_h>0);
I_ss=I_s(I_s>0);
I_vv=I_v(I_v>0);
h_mean=mean(I_hh),
s_mean=mean(I_ss),
v_mean=mean(I_vv),
 

3.运行结果

253325c143b04b59ac26edba2f90a919.png

 8125af8b77514d80a6acf5a9511bdc00.png

 8a4ee793f55546f0b088aa14b3f21b6f.png

 f8f1f95e94d44e08bc7504d81e4d70d8.png

 dc1fb2d6b376453dab92c4e13287053b.png

 57e36aa5416e434ea2f04483a6ba48a7.png

 de7248e3b2bd4c9994113d95a388d9d5.png

4eb93c0ad63b4ad2bee8473fa4ac8ad9.png

 

 f5d837553146456fbeac3bf334eaebe5.png

 

4.参考文献

[1]江海东,陈卫平,陈郑盟,等.一种开放环境下多色叶片RGB图像背景精确分离的方法:CN202011293649.9[P].CN112529922A.

 


http://www.niftyadmin.cn/n/868398.html

相关文章

双路由器桥接

看图请移步:http://www.jianshu.com/p/afda72012613 首先是设置主路由器: 1. 网线或无线方式登录192.168.1.1,这里就多说一句吧,没有接触过得网络的童鞋可能不会接,网线一端接路由器的WAN接口,另一端接笔记…

python上的表白代码_用Python实现表白代码

这篇文章带大家实现表白代码看过很多用批处理写的表白,就想着用Python实现一个实现用的是tkinter点击关闭按钮 无法关闭def closeWindow():messagebox.showinfo(title"警告", message"关不掉吧,气不气")return点击不喜欢的事件def n…

2012河北计算机考试题,2012河北省计算机等级考试试题 二级C试题试题及答案

2012河北省计算机等级考试试题 二级C试题试题及答案1、对待计算机软件正确的态度是( C )A、计算机软件不需要维护B、计算机软件只要能复制得到就不必购买C、受法律保护的计算机软件不能随便复制D、计算机软件不必有备份2、为解决某一特定问题而设计的指令序列称为( C )A、文档 …

安卓开发中遇到最难的问题!最全Android面试知识点梳理,真香

前言: 本文收集整理了各大厂常见面试题N道,你想要的这里都有内容涵盖:Java 相关、Android 基础、Android Framework、三方源码、算法与数据结构、等技术栈,希望大家都能找到适合自己的公司,开开心心的撸代码。 初级 初级研发工…

mac android-studio解决adb命令not found

1. terminal进入主页(你的用户名下) 2. 如果你的电脑里面有.bash_profile文件,跳过下一步 3. 创建.bash_profile文件,命令:touch .bash_profile 4. 打开.bash_profile文件,命令:open -e .bash_profile 5.在打开的编辑…

flutter开发时要知道的事情(三)

flutter国际化 https://flutter.dev/docs/development/accessibility-and-localization/internationalization flutter 背景色 参考文档:https://www.jianshu.com/p/15223325850d new Container(color: Colors.red,); flutter的border类型 border: OutlineInpu…

计算机应用中的过程控制,计算机在过程控制中的应用

第六章过程控制中的计算机应用,6-1控制机的特点,6-2计算机过程控制系统的组成,6-3微机过程控制系统典型的应用方式,,专用工业控制机与一般的计算机相比较,具有以下特点;1、可靠性高:一般要求连续无故障运行时间达几千小时以上,同时…

安卓开发从零开始!记一次字节跳动Android社招面试,成功入职阿里

前言 又到了面试求职高峰期,最近有很多网友都在求大厂面试题。正好我之前电脑里面有这方面的整理,于是就发上来分享给大家。 这些题目是网友去百度、小米、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目。熟悉本文中列出的知…