我正在运行cv :: cuda :: StereoBM,并且可以在Tesla K80上找到它。 (计算能力3.7。)完全相同的代码和完全相同的系统库,挂在Geforce RTX 2080 Ti上。 (计算能力7.5。)我在系统上找到了其他CUDA代码。
尤其是,这是挂起的代码:
cv::Ptr<cv::StereoBM> sbm_ptr = cv::cuda::createStereoBM();
sbm_ptr->compute(gpu_left, gpu_right, gpu_result);
// .. this line of code is never reached.
我已经仔细检查了OpenCV的cuda::DeviceInfo::isCompatible
,并且列出了我的设备确实兼容。
我想知道如何调试它。
答案 0 :(得分:0)
我在计算功能7.2上运行StereoBM时遇到了类似的挂起问题。在6.2上运行良好。我检查了OpenCV的GitHub是否存在问题,在3.4.6之前的版本中,OpenCV似乎存在赛车问题。
您可以在此线程中找到修复程序:
https://github.com/opencv/opencv/pull/13850
我将补丁添加到了现有代码中。它没有任何打worked。希望对您有所帮助。