三种图形如下




MATLAB代码如下

clc
clear
Image=imread('红绿圆.png');
R=Image(:,:,1); G=Image(:,:,2); B=Image(:,:,3);
figure(1);
subplot(2,2,1),imshow(Image),title('image')
subplot(2,2,2),imshow(R),title('r')%有红则显示白,没有则黑
subplot(2,2,3),imshow(G),title('g')%有绿则白,无则黑
subplot(2,2,4),imshow(B),title('b')%有蓝则白,无则黑
XYR=((R-G)>80&(R-B)>80);
XYG=((G-R)>80&(G-B)>80);
XYB=((B-R)>80&(B-G)>80);
XYY=((R-B)>200&(G-B)>200&(R-B)&(R-G)<30);sumG=sum(sum(XYG));
sumR=sum(sum(XYR));
sumB=sum(sum(XYB));
sumY=sum(sum(XYY));
if(sumR>sumG&sumR>sumB)disp('It is red!');MY_Bit_img=XYR;
end
if(sumG>sumR&sumG>sumB)disp('It is green!');MY_Bit_img=XYG;
end
if(sumB>sumG&sumB>sumR)disp('It is blue!');MY_Bit_img=XYB;
end
if(sumY>sumR&sumY>sumB&sumY>sumG)disp('It is yellow!');MY_Bit_img=XYY;
end
sum_l=sum(MY_Bit_img);
sum_r=sum(MY_Bit_img,2);
len_l=max(sum_l);
len_r=max(sum_r);
len=(len_r+len_l)/2;
area=sum(sum_l);
circle=(3.14*len^2)/4;
square=len_l*len_r;
triangle=1.732*len_l*len_r/4;
a=[circle/area,square/area,triangle/area];
b=[1,1,1];
[value,pos]=min(abs(a-b));
if(pos==1)disp('It is circle!');
elseif(pos==2)disp('It is square!');
elsedisp('It is triangle!');
end

效果图

红圆

蓝三角

绿方

MATLAB提取RGB三原色及识别形状(圆、三角、方)相关推荐

  1. matlab 图片RGB颜色提取0-255版

    APP designer版本链接:MATLAB App Designer 特别篇:RGB颜色提取器 新版本链接:matlab图片RGB颜色提取第二版 function getcolor255 glob ...

  2. matlab 图片RGB颜色提取

    APP designer版本链接:MATLAB App Designer 特别篇:RGB颜色提取器 新版本链接:matlab图片RGB颜色提取第二版 写了一个程序能实现导入图片识别颜色 支持屏幕截图和 ...

  3. 颜色分类识别代码matlab——分解RGB通道通过阈值来判断

    颜色分类识别代码matlab--分解RGB通道通过阈值来判断 代码下载链接 代码下载链接 代码下载链接 首先有一张包含多种颜色的图片: 然后可以编写代码,来实现分别提取出不同颜色的操作:

  4. matlab如何截取图像的中间部分_利用matlab提取并分割RGB图像中的某一个已知像素值的图像...

    已知一副RGB图像中的的像素值,利用matlab将其分割出来并以二进制图像形式显示: %extract.m clear all; I=imread('new_original.png'); figur ...

  5. java 三原色_opencv3_java 提取图像的RGB三原色分割图像Split Core.split

    提取图像的RGB三原色分割图像Split Core.split package opencv_java_demo; import java.util.List; import org.opencv.c ...

  6. matlab——红绿灯颜色及数字识别(三)

    实验总结:红绿灯颜色以及数字识别(三):形状识别 一.知识背景   在matlab--红绿灯颜色及数字识别(二)中已经完成了对信号灯区域的裁剪,对信号灯形状的识别这里设置了三条辅助线来进行完成对笔画的 ...

  7. 基于MATLAB BP神经网络的水果识别

    一.课题实现的功能 1 原理分析 由于数字图像是唯一的特征标识符号,在经营管理中具有不可替代的作用,因此数字图像识别系统应具有很高的识别正确率,对环境光照条件.拍摄位置等因素的影响应有较大的容阈,并且 ...

  8. matlab——红绿灯颜色及数字识别(一)

    实验总结:红绿灯颜色以及数字识别(一):颜色识别 一.知识背景 颜色空间:通常拍摄的图像是RGB颜色空间,图片的像素点是由R.G.B分量来表示肉眼所看到的颜色. 比如:红色为(255,0,0),黄色为 ...

  9. matlab——红绿灯颜色及数字识别(二)

    实验总结:红绿灯颜色以及数字识别(二):提取信号灯区域 一.知识背景 这里放一些链接来供查阅参考: 1.连通量函数:   Matlab中bwlabel函数的使用 2.膨胀.腐蚀:   形态学操作:膨胀 ...

  10. 基于MATLAB人脸面部检测的口罩识别系统

    基于MATLAB人脸面部检测的口罩识别系统 课题意义 作为数字图像处理和计算机视觉领域的一个重要组成部分,利用摄像机对图像进行采集,从图像中检测人脸并进行口罩穿戴的识别的有着非常重要的研究意义和应用价 ...

最新文章

  1. 软考培训 - 2014年3月1日信息系统项目管理师开班
  2. Java 基础 之 关系运算符
  3. 【毕业求职季】-听说你想去大厂看学妹,教你京东软件产品经理面试如何一把过
  4. 常用的设计模式——观察者设计模式?和发布者-订阅者设计模式的区别
  5. 阿里云服务器的安装以及使用
  6. ElasticSearch踩坑记录
  7. 微信的一个隐藏功能,我身边绝大多数人都不知道,其实很实用
  8. java如何通过grpc连接etcd_grpc通过 etcd 实现服务发现与注册-源码分析
  9. __builtin_expect详解
  10. SpringBoot2.0 基础案例(17):自定义启动页,项目打包和指定运行环境
  11. 用html还是xml做网页好,XML与HTML的比较
  12. Android的历史、版本与开发
  13. UI设计素材|图标在UI设计界面当中起到什么作用
  14. 下载sqlserver2012 试用_大肥虫助手下载-大肥虫助手 安卓版v7.0.4
  15. ES查询结果全局高亮
  16. 【linux】正点原子linux教程学习
  17. sleep ,wait,notify和notifyAll
  18. 【ClickHouse内核】MergeTree表引擎语法结构
  19. vb.net 图片水平翻转_犁耕作业效果差?试试大马力拖拉机液压翻转犁正确调整与使用方法...
  20. 质因数的分解(java)

热门文章

  1. Windows10 下面一个非常快速而精悍的看图软件 - IrfanView
  2. 花了我一个晚上时间整理的Python魂斗罗小游戏源代码
  3. Android 百分比布局库(percent-support-lib) 解析与扩展
  4. 抓包基础概述,以及为什么抓包
  5. maxima 代数方程求解
  6. IJCAI21审稿机制介绍:提交时间、提交流程、注意事项等
  7. 自然语言处理入门理论知识
  8. Android 状态栏关于开发的几件事
  9. Padavan各源码融合教程
  10. Android手机Root授权原理细节全解析