0
我想从图像中提取绿色区域(仪表显示)。在这里,我附上了一个数字电表的图像。我只想提取包含抄表值的区域。如果我只检测绿色区域,那么其他绿色区域也会被检测到,但是我只想检测包含抄表的绿色区域。我怎么能在MATLAB中做到这一点?如何检测绿色区域(仪表显示)并使用MATLAB进行裁剪?
close all;
clear all;
clc;
Im = imread('2.jpg');
Im = imresize(Im, [512 512]);
diff_im = imsubtract(Im(:,:,2),rgb2gray(Im));
figure,imshow(diff_im);
我不知道你做了二元化,为什么你设置了阈值25/255。请解释 –
我对你的diff_im图像进行了二进制化,我使用25/255阈值,因为正如你可以在Matlab文档中看到的,imbinarize()总是预期阈值在[0; 1]的范围内,diff_im的值在范围内[0; 255] – KjMag
但是当我拍摄另一张图片时...它不适用于你的代码。为什么? –