如何在3D中进行高斯滤波 [英] How to do a Gaussian filtering in 3D

查看:213
本文介绍了如何在3D中进行高斯滤波的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我如何在第三维中进行高斯平滑?

How do i do a gaussi smoothing in the 3th dimension?

我有这个检测金字塔,投票以四个等级累积。在每个峰值处找到物体。

I have this detection pyramid, votes accumulated at four scales. Objects are found at each peak.

我已经在2d中平滑了每一个,并在我的论文中读到我需要使用\ sigma = 1过滤第三维,我以前没有尝试过,我甚至不确定是什么它意味着。

I already smoothed each of them in 2d, and reading in my papers that i need to filter the third dimension with a \sigma = 1, which i havent tried before, i am not even sure what it means.

我想出了如何在Matlab中做到这一点,并且在opencv / c ++中需要类似的东西。

I Figured out how to do it in Matlab, and need something simular in opencv/c++.

Matlab原始值:

Matlab平滑,M0 = smooth3(M0, '高斯'); :

Matlab Raw Values: Matlab Smoothen with M0 = smooth3(M0,'gaussian'); :

推荐答案

很久以前(2008-2009)我开发了一个小的C ++模板库来应用一些简单的转换和卷积滤波器。该库的源代码可以在Linderdaum Engine中找到 - 它与引擎的其余部分无关,也不使用任何引擎的功能。许可证是麻省理工学院,所以你可以用它做任何事情。

Long ago (in 2008-2009) I have developed a small C++ template lib to apply some simple transformations and convolution filters. The library's source can be found in the Linderdaum Engine - it has nothing to do with the rest of the engine and does not use any of the engine's features. The license is MIT, so do whatever you want with it.

看一下Linderdaum的源代码( http://www.linderdaum.com )在Src / Linderdaum / Images / VolumeLib。*

Take a look into the Linderdaum's source code (http://www.linderdaum.com) at Src/Linderdaum/Images/VolumeLib.*

准备内核是PrepareGaussianFilter()和MakeScalarVolumeConvolution()应用过滤器。很容易使库适应不同的数据源,因为I / O是使用回调函数实现的。

The function to prepare the kernel is PrepareGaussianFilter() and MakeScalarVolumeConvolution() applies the filter. It is easy to adapt the library for the different data sources because the I/O is implemented using callback functions.

这篇关于如何在3D中进行高斯滤波的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆