yza751 2015-06-04 06:14 采纳率: 0%
浏览 1767

初学MATLAB,求各位老师解释下这段代码,及参数的含义

function pushbutton3_Callback(hObject, eventdata, handles)
global tu
d=10;
n=2;
im=double(tu);

[r,c,td]=size(im);
fr=im(:,:,1);
fg=im(:,:,2);
fb=im(:,:,3);
aftr=homofil(fr,d,r,c,n);
aftg=homofil(fg,d,r,c,n);
aftb=homofil(fb,d,r,c,n);
zztx=cat(3,aftr,aftg,aftb);
axes(handles.axes3);
imshow(zztx);
title('同态滤波增强效果图');

function im_eu=homofil(im,d,r,c,n)
%巴特沃思高通滤波器(BHPF)
A=zeros(r,c);
for i=1:r
for j=1:c
A(i,j)=(((i-r/2).^2+(j-c/2).^2)).^(.5);
H(i,j)=1/(1+((d/A(i,j))^(2*n)));
end
end
%设置参数高频和低频值
alphaL=0.0999;
alphaH=2.555;
H=((alphaH-alphaL).*H)+alphaL;
H=1-H;
im_l=log2(1+im);
im_f=fft2(im_l);
im_nf=H.*im_f;
im_n=abs(ifft2(im_nf));
im_e=exp(im_n);
immin=min(min(im_e));
immax=max(max(im_e));
im_eu=uint8((im_e-immin)*255/(immax-immin));

  • 写回答

1条回答

  • LogicTeamLeader 2015-06-04 08:08
    关注

    自己先好好学习一下m语言吧。

    评论

报告相同问题?

悬赏问题

  • ¥15 opencv 无法读取视频
  • ¥15 用matlab 实现通信仿真
  • ¥15 按键修改电子时钟,C51单片机
  • ¥60 Java中实现如何实现张量类,并用于图像处理(不运用其他科学计算库和图像处理库))
  • ¥20 5037端口被adb自己占了
  • ¥15 python:excel数据写入多个对应word文档
  • ¥60 全一数分解素因子和素数循环节位数
  • ¥15 ffmpeg如何安装到虚拟环境
  • ¥188 寻找能做王者评分提取的
  • ¥15 matlab用simulink求解一个二阶微分方程,要求截图