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

3 Ansichten (letzte 30 Tage)
Matthew Worker
Matthew Worker am 4 Okt. 2021
Beantwortet: yanqi liu am 11 Dez. 2021
I want the same result, but without using medfilt2
x=imread('sadimg.bmp');
y= medfilt2(x,[5 5])

Antworten (2)

Image Analyst
Image Analyst am 4 Okt. 2021
Bearbeitet: Image Analyst am 4 Okt. 2021

yanqi liu
yanqi liu am 11 Dez. 2021
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);

Produkte


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by