设置目标跟踪的像素阈值-Matlab

Setup pixel threshold for object tracking-Matlab

这可能是一个简单的问题,但我正在努力解决这个问题。我有一个正在尝试处理的视频。在图像转换为灰度后,我正在尝试设置二进制图像的阈值范围。我该怎么做才能使像素保持在 55 - 130 范围内。我有以下代码,但我不知道如何应用阈值范围。

grayscaleimg = rgb2gray(read(obj,1));

thresholdValue = 55;
binaryImage = grayscaleimg > thresholdValue;
binaryImage = imfill(binaryImage, 'holes');

imshow(binaryImage)

您需要在这些值之间设置自适应阈值。

最简单的方法是做一个for循环,然后用if条件评估每个点。

最快的方法是这样做:

grayscaleimg = rgb2gray(read(obj,1));
t1=55;
t2=130;
range=(grayscaleimg > t1 & grayscaleimg <= t2);
grayscaleimg (range)=0;
grayscaleimg (~range)=255;
imshow(grayscaleimg )

我用来自 Matlab 的 onion.png 测试了它并且它有效。