0

我正在使用 OpenCV3 和 TBB 构建图像处理管道。在流程图中传递图像时,它正在被更改。

这是通过逆滤波器时图像的示例结果:

在此处输入图像描述

在此处输入图像描述

我编写了一个单元测试,通过图形传递图像并将输出与原始图像进行比较:

https://gist.github.com/des0ps/74528673d271e3131c2ea2a2adaf5c8c

这个测试有时会通过,有时不会。

这里发生了什么,一般来说,TBB 支持 cv::Mat 吗?

4

1 回答 1

3

似乎测试并不能确保被检查的图像是对应的图像,即左侧图像与右侧图像具有相同的序列号。这是可能的,因为对线程通过图形传递图像的速度没有限制。尝试对join_node.

顺便说一下,TBB 是一个模板库。这意味着它的结构和算法可以用指定为模板参数的参数的任何类型实例化(当然,如果该类型满足所讨论的结构/算法的要求)。例如,source_node 要求其输出类型为 DefaultConstructible,即其实例是通过调用类默认构造函数创建的。编译器会自动检查此类要求。

于 2017-01-26T13:14:25.020 回答