求用matlab对彩色图片进行滤波的代码。要求如下

S通道用巴特沃斯高通滤波器V通道用高斯滤波器... S通道用巴特沃斯高通滤波器
V通道用高斯滤波器
展开
 我来答
匿名_热心网友
2011-10-22 · TA获得超过719个赞
知道大有可为答主
回答量:3827
采纳率:0%
帮助的人:8929万
展开全部
这个就是用一个简单的语句判断他登陆时间与目前的时间间隔要是大于48小时就可以更改数据库记录即可,
具体用JIANGE=DateDiff("H",rs(" P_LastDate"),NOW())这个语句判断JIANGE>48 就执行修改数据的rs("p_online") =0 即可了,你调试一下看看,祝你好运!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
赛恩科仪
2025-08-07 广告
广州赛恩科学仪器有限公司(原中大科仪)始创于2032年,是全球领先的精密测量仪器供应商和微弱信号检测方案提供商。公司以锁相放大器为核心产品,陆续推出光学斩波器、源表、功率放大器、电化学工作站、电流源等一系列产品。赛恩科仪推出的锁相放大器,覆... 点击进入详情页
本回答由赛恩科仪提供
MeChess
2011-10-09 · TA获得超过1538个赞
知道小有建树答主
回答量:448
采纳率:100%
帮助的人:615万
展开全部
先告诉我做什么用?
追问
做图像增强。刚刚学matlab很多不会的地方真是谢谢您啦~我的qq284676604给我发到q上吧~~
追答
clc;clear all;close all;
%读图像
img=imread('c:\test.bmp');
subplot(121),imshow(img);
%将RGB分量转换成HSI,具体见:http://zhidao.baidu.com/question/320254032.html
img_hsi=rgb2hsi(img);
%--------------------------------------------------------------------------
%ln和DFT处理过程
% img_s=fftshift(fft2(log(img_hsi(:,:,2))));
img_s=log(img_hsi(:,:,2));
img_s=img_hsi(:,:,2);
%H 巴特沃斯高通滤波器处理过程
f=double(img_s); % 数据类型转换,MATLAB不支持图像的无符号整型的计算
g=fftshift(fft2(f)); % 傅立叶变换
[M,N]=size(g);nn=2;% 二阶巴特沃斯(Butterworth)高通滤波器
d0=5;
m=fix(M/2);n=fix(N/2);
for i=1:M
for j=1:N
d=sqrt((i-m)^2+(j-n)^2);
if (d==0)
h=0;
else
h=1/(1+0.414*(d0/d)^(2*nn));% 计算传递函数
end
img_filter(i,j)=h*g(i,j);
end
end
img_s2=ifft2(ifftshift(img_filter));img_s2=exp(img_s2);img_s2=uint8(real(img_s2));
%--------------------------------------------------------------------------
% img_i=fftshift(fft2(log(img_hsi(:,:,3))));
img_i=log(img_hsi(:,:,3));
img_i=img_hsi(:,:,3);
%高斯滤波器
%将S分量的二维不连续Frourier变换的零频率成分移到频谱的中心
s=fftshift(fft2(img_i));
[M,N]=size(s); %分别返回s的行数到M中,列数到N中
n=2; %对n赋初值
%GLPF滤波,d0=5,15,30(程序中以d0=30为例)
d0=30; %初始化d0
n1=floor(M/2);n2=floor(N/2);
for i=1:M
for j=1:N
d=sqrt((i-n1)^2+(j-n2)^2); %点(i,j)到傅立叶变换中心的距离
h=1*exp(-1/2*(d^2/d0^2)); %GLPF滤波函数
s(i,j)=h*s(i,j); %GLPF滤波后的频域表示
end
end
img_i2=ifft2(ifftshift(s));img_i2=exp(img_i2);img_i2=uint8(real(img_i2));
%--------------------------------------------------------------------------
newImg(:,:,1)=img(:,:,1);newImg(:,:,2)=img_s2;newImg(:,:,3)=img_i2;
subplot(122),imshow(newImg);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式