Blob分析和阈值
4视图(30天)
显示旧的评论
我有两个白色的对象我团分析探测到消息应该“报警是白色的!”
% Blob分析
BlobAnalysis = vision.BlobAnalysis (“连接”8);
(面积、质心、bbox) =步骤(BlobAnalysis BW);
%的盒子
Ishape = insertShape (OriginalImage之下,“矩形”bbox,“线宽”3);
次要情节(2,2,2);
imshow (Ishape);
(行,坳)= (bbox)大小;
为i = 1:行
x = bbox(我,1);
y = bbox(我,2);
w = bbox(我,3);
h = bbox(我,4);
TestImage = OriginalImage之下(x (x + w), y: (y + h):);
r = TestImage (:,: 1);
g = TestImage (:: 2);
b = TestImage (:: 3);
次要情节(2,2,3)
imshow (TestImage);
histogram2 (r, g,“DisplayStyle”,“瓦”,“ShowEmptyBins”,“上”,…
“XBinLimits”255年[0],“YBinLimits”255年[0]);
直方图(r,“BinMethod”,“整数”,“FaceColor”,“r”,“EdgeAlpha”0,“FaceAlpha”,1)
持有在
直方图(g,“BinMethod”,“整数”,“FaceColor”,‘g’,“EdgeAlpha”0,“FaceAlpha”,0.7)
直方图(b,“BinMethod”,“整数”,“FaceColor”,“b”,“EdgeAlpha”0,“FaceAlpha”,0.7)
包含(“RGB值”)
ylabel (“频率”)
标题(颜色直方图的)
xlim (257 [0])
阈值= 128;
= r。* g。* b;
c = 128 * 128 * 128;
如果> = c
对话框(“报警是白色的!”);
其他的
对话框(“好吧”);
结束
清晰的TestImage;
结束
我有一个阈值等于128如果每个对象的颜色直方图大于阈值显示消息“警报…”! !
我认为我的错误是我不知道我可以这么做:
阈值= 128;
= r。* g。* b;
c = 128 * 128 * 128;
如果> = c
对话框(“报警是白色的!”);
其他的
对话框(“好吧”);
结束
我也得到了一些错误:
指数超过矩阵维度。
错误跟踪(25)行
TestImage = OriginalImage之下(x (x + w), y: (y + h):);
谢谢你!