1.完整项目描述和程序获取
>面包多安全交易平台:https://mbd.pub/o/bread/ZJaUl5xp
>如果链接失效,可以直接打开本站店铺搜索相关店铺:
>如果链接失效,程序调试报错或者项目合作也可以加微信或者QQ联系。
2.部分仿真图预览
3.算法概述
在计算机视觉领域,最大稳定极值区域 (MSER)(Maximally Stable Extremal Regions)是一种用于在图像中进行斑点检测的方法。这个方法由Matas等人提出,用于在两个不同视角的图片中寻找对应关系(correspondence problem)。这种方法从图像中提取全面的元素对应关系,有助于宽基线匹配(wide-baseline matching),以及更好的立体匹配和物体识别算法。特征检测是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征检测的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。
4.部分源码
.......................................................................
ind= 0;
for i = 1:length(XY)
Xmin = min(XY{i}(:,1));
Xmax = max(XY{i}(:,1));
Ymin = min(XY{i}(:,2));
Ymax = max(XY{i}(:,2));
W1(i)= Ymax - Ymin;
L1(i)= Xmax - Xmin;
if abs(L1(i) - W1(i)) <= 5
ind = ind+1;
XY2{ind} = XY{i};
end
end
figure;
imshow(I1);
hold on;
for i = 1:length(XY2)
plot(XY2{i}(:,1),XY2{i}(:,2),'g.');
hold on
end
%提取交通标志的中心点,判断是否为同一个标志
for i = 1:length(XY2)
Xmin(i)= min(XY2{i}(:,1));
Xmax(i)= max(XY2{i}(:,1));
Ymin(i)= min(XY2{i}(:,2));
Ymax(i)= max(XY2{i}(:,2));
Xc(i) = (Xmin(i)+Xmax(i))/2;
Yc(i) = (Ymin(i)+Ymax(i))/2;
% plot(Xc(i),Yc(i),'r*');hold on
end
%重合点合并
Xmin2=[];
Xmax2=[];
Ymin2=[];
Ymax2=[];
if length(Xc)>1
indx = 0;
for i = 1:length(Xc)
tmps=[];
for j = 1:length(Xc)
if sqrt(double((Xc(i) - Xc(j))^2 + (Yc(i) - Yc(j))^2))<=20
tmps=[tmps,j];
end
end
tmps
Xmin2(i) = mean(Xmin(tmps));
Xmax2(i) = mean(Xmax(tmps));
Ymin2(i) = mean(Ymin(tmps));
Ymax2(i) = mean(Ymax(tmps));
end
%根据XYi的相似性进行合并
else
Xmin2= Xmin;
Xmax2= Xmax;
Ymin2= Ymin;
Ymax2= Ymax;
end
Smj
%%
index = 0;
for i = 1:length(Xmin2)
SS = abs(Ymin2(i)-Ymax2(i))*abs(Xmin2(i)-Xmax2(i))
if SS>Smj
index = index + 1;
Ic{index} = I(Ymin2(i)-SCALE:Ymax2(i)+SCALE,Xmin2(i)-SCALE:Xmax2(i)+SCALE,:);
Xmin3(index) = (Xmin(i));
Xmax3(index) = (Xmax(i));
Ymin3(index) = (Ymin(i));
Ymax3(index) = (Ymax(i));
end
end
figure;
%HOG特征提取
F1=[];
for i = 1:length(Ic)
I1 = imresize(Ic{i},[96,96]);
F1 = [F1;func_feature1(I1)];
end
%SVM测试
load svm_trains.mat
for i = 1:length(Ic)
[Predict1,error1] = svmpredict(1,[F1(i,:)],model);
yout(i)=Predict1;
end
yout(find(yout==0))=[];
........................................................................
title('交通标志提取');
10_043_m