快速图像行与C ++,openCV中的100个模板进行比较

时间:2013-10-07 12:01:42

标签: c++ templates opencv vector compare

在使用阈值图像进行一些转换后,我得到的行数超过1000行且超过1000列,如下所示:

...
...1,4,2,4,5,1,3,7....
...2,5,3,4,6,7,2,1....
...5,3,1,7,3,3,4,6....
                  .... etc..

我需要走到每一行并将每行与 100个模板进行比较,以找出:“可以在行中找到100个模板中的1个吗?”

模板,例如: 2,4,5,1;(对于第一行示例,则为true) 1,7,3,3(对于3行示例,则为true)

我使用下一个算法按行:

for (i=0; i<image.rows; ++i)
    { 
     pixel = image.ptr<uchar>(i);
      for (j=0; j<image.cols; ++j)
       {
          some transformations to get look from 255,255,0,255 to 1,4,2... example on top...
       }

我在<vector>使用<insert>添加当前行,然后使用以下方法将其与其他模板进行比较:

search(vector.begin(), vector.end(), temp.begin(), temp.end()) != vector.end();

我得到了很好的比较结果,但它很慢。 此外,我希望能够使用全高清视频,但它在视频流中工作太慢了!因此,我需要从列表中自上而下获得100个已找到模板的序列。

您可以建议比较<vector>比较快得多,可能使用OpenCV库吗?

0 个答案:

没有答案