matlab的交通灯信号识别,matlab的交通灯信号识别

该博客介绍了一段MATLAB代码,用于从图像中识别和标记交通灯的红色区域。通过将RGB图像转换为HSV,然后应用阈值、形态学操作和连通组件分析来检测红色信号灯。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一小段txt程序代码

clc

clear all

close all

a=imread('x.jpg');

figure(1),imshow(a);title('检测图像');%读入图像并显示

hsv=rgb2hsv(a);

h=hsv(:,:,1);

s=hsv(:,:,2);

v=hsv(:,:,3);

figure(2),imshow(hsv);title('HSV图像');%转换为hsv图像并显示

bw1=h>0.9|h<0.05;

bw1=bw1.*(s>0.5);%检测红色区域

se=strel('disk',3);%创建一个指定半径R的平面圆盘形的结构元素

bw2=imopen(bw1,se);%用结构元素SE实现二值图像的bw1的形态开运算。SE可以是单个结构元素对象或者结构元素对象数组。

bw2=bwfill(bw2,'holes');%空洞填充,填充二进制图像的背景色

% % % figure

% % % imshow(bw2)

[L,num]=bwlabel(bw2,8);%标记各区域,这里num返回的就是BW2中连通区域的个数。

STATS = regionprops(L,'area','BoundingBox');%%对二值化数据进行连通域数据分析获取标记后的图像面积。外接长方形、和面积

bw_area=zeros(1,num);

bw_circle=zeros(1,num);

% % % bw_center=zeros(num,2);

figure(1),imshow(a);title('检测图像');%读入图像并显示

hold on

for i=1:num

[r,c]=find(L==i);%返回的是L矩阵中数值为i的坐标

si

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值