1

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

TLD 代码是开源的,位于: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.input = in;”来阻止它时 程序以 RGB 模式启动,但在 1 或 2 帧后卡住。

任何帮助将非常感激。

PS:我是Matlab编程的新手。

4

2 回答 2

3

那段代码告诉我算法(或至少这段代码)不处理 RGB 图像。完全没有。

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

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

于 2011-09-19T15:05:16.747 回答
0

有两个组件需要修复: 1. 1BIT 功能 - 您必须将它们应用于不同的颜色平面(也就是说,每个功能都必须在一个平面中) 2. Lucas Kanade 跟踪器;它实际上在颜色上效果更好(如果您的输入没有噪音;您将需要质量比灰度更好的相机),但捕食者使用的 OpenCV 不包含版本。(不,我不知道是否有可用的开源软件)。

于 2011-11-16T17:47:19.160 回答