2

我正在测试我在某些站点中找到的一些卷积算法,但它们都没有按应有的方式应用矩阵过滤器。

我正在自己编写一个非常简单的 24 位 bmp 库,但现在我需要一点关于卷积的帮助,我不需要 FFT 或复杂的算法,此时运行时间并不重要。

我测试的最后一个代码是这样的:http: //lodev.org/cgtutor/filtering.html但我没有正常工作。

有人可以告诉我C语言的代码或算法吗?

非常感谢。

4

3 回答 3

0

你可以看看这个算法 - 这是我能找到的最接近的:

卷积模糊图像

知道基本的卷积算法或多或少是相同的,影响仅受核值的影响。

于 2013-11-14T05:40:51.767 回答
0

有一个开源C# 库,它提供了执行简单过滤器的图像卷积的方法。这将是一个容易移植到 C 的端口。

执行卷积的实际方法可以在这里找到。BitmapContext 类仅用于包装指向位图的指针。我相信在 C# 中这被视为 int*,所以这段代码一次运行 4 个字节。

于 2013-11-14T09:28:29.367 回答
0

我为简单的案例创建了图像卷积库 - https://github.com/RoyiAvital/Projects/tree/master/ImageConvolution

它非常快(OpenMP + SIMD)。
虽然我不是某事的高级程序员,但只是尝试这样做以完成使用 SIMD 的第一步。尽管如此,从 VS 2015 中可以看出,CPU 利用率还是相当不错的。

如果你有想法让它更快,我会很高兴。

随意以您喜欢的任何方式使用它。

于 2017-08-04T17:52:40.873 回答