我使用Opencv 2.4.10(当前稳定版)。我使用gpu::CascadeClassifier_GPU::detectMultiScale
来检测面部。我希望将 async 与我在单独cudaStream_t
中启动的CUDA内核代码一起使用。但默认情况下CascadeClassifier_GPU
启动默认零流,无法在GPU上启动任何异步。
正如我在此处所见,gpu::Stream
无法使用CascadeClassifier_GPU
:OpenCV DOC link
gpu::Stream
使用CascadeClassifier_GPU
吗? 更新:到目前为止,我找到了唯一的方法 - 使用单独的CPU线程来执行gpu::CascadeClassifier_GPU::detectMultiScale
的功能并在单独的GPU上执行。但至少我需要 2 GPU。
答案 0 :(得分:2)
CascadeClassifier_GPU
使用混合的GPU / CPU实现并在内部执行额外的同步,这就是为什么它不支持具有gpu::Stream
参数的异步模式的原因。为了与代码异步启动它,您需要为它使用单独的CPU线程。