function out = B_filter(Img,tempsize,sigma0,sigma1)
%模板定义
gauss = fspecial('gauss',2*tempsize+1,sigma0);
[m,n] = size(Img);
for i = 1+ tempsize : m - tempsize
for j = 1+ tempsize : n - tempsize
%提取处理区域得到梯度敏感矩阵
temp = abs(Img(i - tempsize:i + tempsize,j - tempsize:j + tempsize) - Img(i,j));
temp = exp(-temp.^2/(2*sigma1^2));
%得到双边滤波器并将权值和化为一
filter = gauss.*temp;
filter = filter/sum(filter(:));
%卷积
Img(i,j) = sum(sum((Img(i - tempsize:i + tempsize,j - tempsize:j + tempsize).*filter)));
end
end
out = Img;
end
没有合适的资源?快使用搜索试试~ 我知道了~
一种基于局部自适应滤波器的双边滤波器matlab实现 双边滤波的Matlab实现
共3个文件
m:2个
jpg:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 89 浏览量
2023-09-01
10:27:09
上传
评论 1
收藏 44KB ZIP 举报
温馨提示
双边滤波器的Matlab实现,附例程。简单的实现双边滤波器,是博客的附加例程 基本原理 保留边界细节,模糊变化不明显的区域 我们知道高斯滤波器可以起到模糊图像的作用,而上述的过程是选择性地进行模糊,在这里是对图像的灰度变化进行一个判断,达到模糊该模糊的地方,并保留边缘的细节 这里可以推断,我们需要一个高斯滤波器和一个反映灰度判断的矩阵,来处理高斯滤波器各个位置的权重。
资源推荐
资源详情
资源评论
收起资源包目录
双边滤波.zip (3个子文件)
双边滤波
lena.jpg 42KB
B_filter.m 649B
test.m 598B
共 3 条
- 1
资源评论
- m0_748945612023-12-19资源内容详实,描述详尽,解决了我的问题,受益匪浅,学到了。
小风飞子
- 粉丝: 321
- 资源: 1496
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功