资源简介
MATLAB中值滤波图像处理,GUI界面加.m文件
代码片段和文件信息
function f =adpmedian(gSmax)
%ADPMEDIAN Perform adap tive median filtering
%首先判断Smax是否符合要求: Smax应该是大于1的奇数
if (Smax <= 1)|(Smax/2 == round(Smax/2))|(Smax ~= round(Smax))
error(‘Smax must be an odd integer>1.‘)
end
[MN]=size(g);
%初始化.
f=g;
f(:)=0;
alreadyProcessed=false(size(g));
%开始滤波.
for k=3:2:Smax
%相当于k*k的极小值滤波
zmin=ordfilt2(g1ones(kk));
%相当于k*k的极大值滤波
zmax=ordfilt2(gk*kones(kk));
% k*k的中值滤波
zmed=medfilt2(g[k k]);
%判断Zmed是否为一脉冲
processUsingLevelB=(zmed>zmin) & (zmax>zmed) & ~alreadyProcessed;
%判断Zxy是否为一脉冲
zB=(g>zmin) & (zmax>g);
outputZxy=processUsingLevelB & zB;
outputZmed=processUsingLevelB & ~zB;
%输出一个不变的像素值Zxy来代替邻域中值作为输出
f(outputZxy)=g(outputZxy);
%输出中值滤波的值作为输出
f(outputZmed)=g(outputZmed);
a
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 9388 2014-05-28 17:20 unti
文件 141724 2014-05-27 22:50 1.jpg
文件 1016 2014-05-28 16:46 adpmedian.m
文件 5399 2014-05-28 17:18 unti
----------- --------- ---------- ----- ----
157527 4
- 上一篇:XY平台仿真
- 下一篇:LSB算法matlab实现
评论
共有 条评论