在对阈值图像进行一些转换后,我得到了超过 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;
第 1 行示例为
1,7,3,3
真)(第 3 行示例为真)
我使用下一个算法按行进行:
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 库,好吗?