imgaussian
IMGAUSSIAN filters an 1D, 2D color/greyscale or 3D image with a Gaussian filter.
Instead of using a multidimensional Gaussian kernel, it uses the fact that a Gaussian kernel can be separated in 1D kernels.
By the default the code uses IMFILTER for the filtering. But also a cache efficient MEX / c-code implementation is included. Compile with: "mex imgaussian.c -v"
J=IMGAUSSIAN(I,SIGMA,SIZE)
Comparison time needed to filter image volume of 512x512x512 with Gaussian kernel of sigma 1:
- 90.8 seconds : Imfilter with 3D gaussian kernel
- 21.8 seconds : Imgaussian using imfilter
- 8.18 seconds : Imgaussian using the MEX file
For small 2D images ( < 1024x1024 ) or large kernels (sigma 10), Imgaussian using imfilter is faster than the MEX file. This is because imfilter uses the "Intel Performance Primitives Library", and the MEX file only normal cache optimized c-code.
引用格式
Dirk-Jan Kroon (2024). imgaussian (https://www.mathworks.com/matlabcentral/fileexchange/25397-imgaussian), MATLAB Central File Exchange. 检索时间: .
MATLAB 版本兼容性
平台兼容性
Windows macOS Linux类别
- Image Processing and Computer Vision > Image Processing Toolbox > Image Filtering and Enhancement >
- Image Processing and Computer Vision > Image Processing Toolbox > 3-D Volumetric Image Processing >
标签
致谢
启发作品: Microscopy Image Browser (MIB), Microscopy Image Browser 2 (MIB2), TRIM: Triangulating Image
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!