非最大抑制框显示

31意见(过去30天)
matpar.
matpar. 于2020年2月16日
评论: matpar.2020年5月11日
大家好,谢谢你提前回复!
我试图在测试图像上显示区域建议和边界框!
是否有人能指导我对最大抑制进行编码,以便在测试输出图像上显示方框?
这是我的代码,谢谢您的冒险,附加是文件以及正在分类的图像。
我想显示图像上的所有框,看看区域是否被扭曲。
再次谢谢!
具有SVM的%%分类功能
%%改进边界框
clc
clearvars
清除
全部的
newlayers = [
imageInputLayer([32 32 3],“姓名”,“图像输入”)
卷积2dlayer([5 5],32,“姓名”,“conc”,“biaslearnratefactor”2,“填充”,[2 2 2 2],“掌控itializer”,“窄法线”)
maxpooling2dlayer([3 3],“姓名”,“maxpool”,“步幅”,[2 2])
雷卢耶(“姓名”,“雷卢”)
卷积2dlayer([5 5],32,“姓名”,“conv_1”,“biaslearnratefactor”2,“填充”,[2 2 2 2],“掌控itializer”,“窄法线”)
雷卢耶(“姓名”,“relu_1”)
普通Pooling2dlayer([3 3],“姓名”,“avgpool”,“步幅”,[2 2])
卷积2dlayer([5 5],64,“姓名”,“conv_2”,“biaslearnratefactor”2,“填充”,[2 2 2 2],“掌控itializer”,“窄法线”)
雷卢耶(“姓名”,“relu_2”)
普通Pooling2dlayer([3 3],“姓名”,“avgpool_1”,“步幅”,[2 2])
全康统计(64,“姓名”,“FC”,“biaslearnratefactor”2,“掌控itializer”,“窄法线”)
雷卢耶(“姓名”,“relu_3”)
完全连接层(2,“姓名”,“fc_rcnn”,“biasl2factor”,1,“biaslearnratefactor”,5,“救援人力活动”8.“掌控itializer”,“窄法线”)
软MaxLayer(“姓名”,“softmax”)
ClassificationLayer(“姓名”,“类输出”)]
加载(“真相,马特”);
%%保存空.mat文件/将变量保存到文件然后加载全部
拯救新图层
加载('gun.mat','wgtruth','newlayers')
%%将图像目录添加到MATLAB路径。
imDir=fullfile(matlabroot,'wgtruth')
AddPath(IMDIR)
选项=培训选项('sgdm','minibatchsize', 10,“初始学习率”,1e-4,'maxepochs', 67)
rcnn=列车RCNNObjectDetector(WGTreath、Newlayers、options、,“负超范围”,[0 0.3])
%%在测试图像上测试R-CNN检测器。
img = imread(‘14.jpg’);
[bbox,score,label] =检测(rcnn,img,'minibatchsize', 10)
[得分,idx]=最大(得分)
bbox = bbox(idx,:)
注释=sprintf(“%s:(置信度=%f)”,标签(idx),分数);
detectedimg = InsertObjectAnnotation(IMG,“矩形”,bbox,注释);
数字
imshow(DetectedImg);

答复(1)

Ajay Pattassery.
Ajay Pattassery. 2020年2月19日
编辑:Ajay Pattassery. 2020年2月19日
我假设您希望从R-CNN对象检测器的输出中查看所有边界框。
对于这一点,你可以给出论点 选择最初 因为虚假 探测 作用
[b框、分数]=检测(rcnn、img、,“选择最强”,假);
参考 探测 想要查询更多的信息。
7点评论
matpar.
matpar. 2020年5月11日
这实际上在一些尝试后工作;好运
%img=imread('/Users/mmgp/Documents/MATLAB/Simulations/SimulationsTest3/ActivityData/Beating/Beating26.jpg');
%[bboxesObject,scorsObject] =检测(rcnn,img,'selectstrongest',false);
%[bboxesbeat,scorsbeat] =检测(rcnn,img,'selectstrongest',false);
%Labs = Cellstr(标签);
%strcmp(实验室(:,1),'beat')
%Beat=find(strcmp(labs,'Beat'))
%[bbox,score,label]=检测(rcnn,img,'selectstrong',false);
%
%[selectbbox,selectscore,selectlabel]=SelectStrongESTBoxMultiClass(bbox,score,label,。。。
%'ratiotype','min','重叠阈值',0.60);
%
%[得分,idx]=最大(得分);
%bbox=bbox(idx,:);
%注释= sprintf('%s :( accidence =%f)',标签(Idx),得分);
%annotation1 = sprintf('%s :(centidente =%f)',标签(idx),选择拍摄);
%detectedImg1=插入对象注释(img,‘矩形’、bbox、注释、‘颜色’、‘g’);
%detectedImg2=insertObjectAnnotation(img,'rectangle',selectbbox,annotation1,'Color','r');
%
% 数字
%imshow(detectedimg1);
% 数字
%imshow(detectedimg2);

登录评论。

社区宝藏狩猎

在MATLAB Central中查找宝藏,了解社区如何帮助您!

开始狩猎!