• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-05-29
  • 语言: Matlab
  • 标签: MATLAB  

资源简介

可以用来识别自然环境中的交通灯,标注出其位置和灯的颜色,对于不同的红绿灯图片可能因为各种原因稍有问题,可通过调节HSV的选择范围来使其选择准确

资源截图

代码片段和文件信息

clc
clear all
close all
rgb=imread(‘13.jpg‘);
figure(1)imshow(rgb);title(‘检测图像‘);
hsv= rgb2hsv(rgb);
h=hsv(::1)*180;
s=hsv(::2)*255;
v=hsv(::3)*255;
bw11=h>170|h<16;
bw11=bw11.*(s>140);
bw11=bw11.*(v>100);
se1=strel(‘disk‘3);
bw21=imclose(bw11se1);
[L1num1]=bwlabel(bw218);
STATS1 = regionprops(L1‘area‘‘BoundingBox‘);
bw_area1=zeros(1num1);
bw_circle1=zeros(1num1);
 bw_center1=zeros(num12);
 bw1=h>35&h<110;
bw1=bw1.*(s>120);
bw1=bw1.*(v>70);
se=strel(‘disk‘4);
bw2=imclose(bw1se);
[Lnum]=bwlabel(bw28);
STATS = regionprops(L‘area‘‘BoundingBox‘);
bw_area=zeros(1num);
bw_circle=zeros(1num);
 bw_center=zeros(num2);
 figure(2)imshow(rgb);title(‘检测图像‘);
 for i1=1:num1
[r1c1]=find(L1==i1);
sizer=size(r11);
bw_area1(i1)=length(r1);
if bw_area1(i1)<100||bw_area1(i1)>1000000
continue;
end 
bw_center1=[];
bw_center1(1:sizer1)=round(mean(r1));
bw_center1(1:sizer2)=round(mean(c1));
rc=[r1c1];
d1=sqrt(sum((rc‘-bw_center1‘).^2)

评论

共有 条评论