RGB模式下的捕食者(Zdenek Kalal TLD算法)跟踪(Matlab)



实际上我正在研究这个算法,我一直在探索他的代码(目前在Matlab中)。我想知道是否有人尝试过运行这个算法,有没有人能指出我如何在颜色/RGB模式下跟踪对象。目前,当我运行它时,它以灰度模式检测对象。

TLD Code是开源的,位于:https://github.com/zk00006/OpenTLD

就我所研究的代码而言,有一个文件img_alloc。M,包含:

function img = img_alloc(in,imsize)
% Allocates image structure. 
if ischar(in)
    in = imread(in);
end
if ndims(in) == 3
    img.input = rgb2gray(in);
else
    img.input = in;
end
 %img.input = fliplr(img.input);
if exist('imsize','var')
    img.input = imresize(img.input,imsize);
end
img.blur = img_blur(img.input,2);

语句"img。Input = rgb2gray(in);"将输入从RGB模式转换为灰度模式。当我试图通过将其更改为"img"来阻止它时。输入= in;"程序以RGB模式启动,但在1或2帧后卡住。

任何帮助都将非常感激。

p。S:我是Matlab编程的新手。

这段代码告诉我,算法(或至少这段代码)不处理RGB图像。。

我怀疑的原因很简单,因为它明确检查输入是1D(灰度)还是3D (RGB),如果是3D,它将其转换为灰度。

此外,用算法处理颜色很少像给它一个3D矩阵而不是1D矩阵那么简单,因为额外的维度通常意味着至少需要一些额外的工作。

有两个组件需要修复:1. 1BIT特征-你必须使它们应用于不同的颜色平面(也就是说,每个特征必须在一个平面中)2. 卢卡斯·卡纳德追踪器;实际上,彩色效果更好(如果你的输入没有噪声;你将需要一个比灰度相机质量更好的相机),但捕食者使用的OpenCV不包括一个版本。(不,我不知道是否有开源的)。

最新更新