gpt4 book ai didi

opencv - CUDA 编程的 GPU 是否适合实现 OpenCV 自适应阈值?

转载 作者:太空宇宙 更新时间:2023-11-03 21:02:49 33 4
gpt4 key购买 nike

在我的系统上,对于具有大窗口大小 (75px) 的 5 MP 图像,它需要高达 140 毫秒(大约是线性操作的 20 倍) 才能完成,我希望优化它。我注意到 OpenCV gpu 模块没有实现 adaptiveThreshold 的 gpu 版本,所以我一直在考虑自己为 GPU 实现该算法。

如果我在 CUDA 中基于大窗口大小 (50px+) 和大图像 (5MP+) 实现自适应阈值算法,忽略将内存加载到 GPU 的开销,我是否希望获得任何加速?

adaptiveThreshold opencv.org 上的文档:

http://docs.opencv.org/modules/imgproc/doc/miscellaneous_transformations.html#adaptivethreshold

最佳答案

基于 Eric 的回答:

Npp CUDA 库没有实现 adaptiveThreshold,但它似乎有利于以非常直接的方式获得自适应阈值(刚刚对其进行测试并且传闻有效):

  1. src 上运行盒式过滤器(即计算每个像素的平均窗口值),存储在中间图像 tmp 中。
  2. tmp中的每个像素中减去一个数字K
  3. srctmpdst。结束。

代码可能如下所示(此处 K=0,省略第 2 步):

nppiFilterBox_8u_C1R(oDeviceSrc.data(), oDeviceSrc.pitch(),
oDeviceIntermediate.data(), oDeviceDst.pitch(),
oSizeROI, oAdapThreshWindowSize,oAnchor);
nppiCompare_8u_C1R(oDeviceSrc.data(),oDeviceSrc.pitch(),
oDeviceDst.data(),oDeviceDst.pitch(),
oDeviceResult.data(),oDeviceResult.pitch(),
oSizeROI,NPP_CMP_LESS);

此外,维基百科 claims连续应用盒式过滤器 3 次可使高斯过滤器的准确率接近 97%。

关于opencv - CUDA 编程的 GPU 是否适合实现 OpenCV 自适应阈值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19118533/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com