gpt4 book ai didi

c++ - FastCV 腐 eclipse /扩张参数

转载 作者:搜寻专家 更新时间:2023-10-31 01:52:51 25 4
gpt4 key购买 nike

我在安卓设备上同时使用 OpenCV 和 FastCV 来执行一些图像处理操作。对帧进行阈值处理后,我得到了一张二值图像,在感兴趣区域附近存在适量的黑白噪声。

对图像进行腐 eclipse ,然后进行膨胀,可以得到几乎无噪声的图像,可用于进一步处理,但是上述两个库都有缺点。

OpenCV

Mat element = getStructuringElement(MORPH_RECT, Size(2 * erosionSize + 1, 2 * erosionSize + 1), Point(erosionSize, erosionSize));
erode(in, in, element);
element.release();

请原谅我的神奇数字,但我对 OpenCV 的侵 eclipse /扩张的简单调用看起来像上面这样。然后我可以修改它的 erosionSize/dilationSize 参数,以调整函数在消除噪声方面的积极程度。问题?性能在这里是重中之重,这个函数的运行速度比我希望的要慢。

快速CV

fcvFilterErode3x3u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)

上面的prototpye是FastCV的侵 eclipse 实现,这里没有调整侵 eclipse 大小的参数。鉴于 FastCV 已针对移动架构进行了优化,并且我怀疑它实际上利用了我用于测试的 Galaxy Nexus 中的 GPU,因此此功能比上述功能快得多。但是,我需要多次循环并在同一帧上运行它以实现相同级别的侵 eclipse ,从而牺牲过程中的任何性能优势。

有没有人知道:

  • 我可能在任一 API 中遗漏的任何方法,这些方法将快速执行并具有可调大小参数
  • 包含符合这两项要求并具有相当宽松许可的函数的任何其他库。

最佳答案

如果您的意图是系统地连续执行这两种操作(侵 eclipse 和膨胀),并且您可以为两者使用相同的参数大小,那么您可能想尝试使用 opencv 的专用函数应用一个开口:

http://docs.opencv.org/doc/tutorials/imgproc/opening_closing_hats/opening_closing_hats.html

从数学上讲,这相当于执行和腐 eclipse ,然后是膨胀,但是有优化的开运算实现可以通过连续应用这两个操作来更快地完成运算。

免责声明:我还没有检查 opencv 对这些操作的实现,但你会想试一试——当然,如果你还没有做过的话。

关于c++ - FastCV 腐 eclipse /扩张参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11970093/

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