如何找到门槛?

时间:2018-03-16 14:16:33

标签: matlab image-processing rgb

我读了一个名为"Image Processing Made Easy"的MATLAB网站。它引用了this code

rmat=Im(:,:,1);
gmat=Im(:,:,2);
bmat=Im(:,:,3);

subplot(2,2,1), imshow(rmat);
title('Red Plane');
subplot(2,2,2), imshow(gmat);
title('Green Plane');
subplot(2,2,3), imshow(bmat);
title('Blue Plane');
subplot(2,2,4), imshow(I);
title('Original Image');

%%
levelr = 0.63;
levelg = 0.5;
levelb = 0.4;
i1=im2bw(rmat,levelr);
i2=im2bw(gmat,levelg);
i3=im2bw(bmat,levelb);
Isum = (i1&i2&i3);

我们如何找到值levelrlevelglevelb

1 个答案:

答案 0 :(得分:2)

最近,但是我发现内置的MATLAB函数graythresh()可以很好地工作。它依赖于Otsu的Method(在文档中有相当知名的方法),并且与imbinarize / im2bw配合得很好。

例如

levelr = graythresh(rmat)

levelr的阈值为0-1.0