Is there an alternative to 5x5 median filter in MATLAB?

9 次查看(过去 30 天)
I want the same result, but without using medfilt2
x=imread('sadimg.bmp');
y= medfilt2(x,[5 5])

回答(2 个)

Image Analyst
Image Analyst 2021-10-4
编辑:Image Analyst 2021-10-4

yanqi liu
yanqi liu 2021-12-11
if use self define function,may be use colfilt、nlfilter to get block process,such as
clc;
clear all;
close all;
im = imread('cameraman.tif');
im2 = imnoise(im, 'salt & pepper');
%fun = @(block_struct) median(block_struct(:));
%im3 = nlfilter(im2,[5 5],fun);
fun = @(block_struct) median(block_struct);
im3 = colfilt(im2,[5 5],'sliding',fun);
im4 = medfilt2(im2, [5 5]);
figure;
subplot(2,2,1); imshow(im);
subplot(2,2,2); imshow(im2);
subplot(2,2,3); imshow(im3);
subplot(2,2,4); imshow(im);

类别

Help CenterFile Exchange 中查找有关 Image Processing Toolbox 的更多信息

产品


版本

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by