位置: IT常识 - 正文

数字图像处理之matlab实验(三):空间滤波器(数字图像处理-应用篇)

编辑:rootadmin
数字图像处理之matlab实验(三):空间滤波器 1、空间滤波原理

推荐整理分享数字图像处理之matlab实验(三):空间滤波器(数字图像处理-应用篇),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:数字图像处理之父,数字图像处理之父,数字图像处理之MATLAB图像基本处理,数字图像处理之怀旧特效,数字图像处理之MATLAB图像基本处理,数字图像处理之MATLAB图像基本处理,数字图像处理之怀旧特效,数字图像处理之父,内容如对您有帮助,希望把文章链接给更多的朋友!

空间滤波,就是在原图像上,用一个固定尺寸的模板去做卷积运算,得到的新图像就是滤波结果。滤波,就是过滤某种信号的意思。过滤哪种信号取决于模板设计,如果是锐化模板,处理后就保留高频信号,如果是平滑模板,处理后就保留低频信号。

(1)模板运算

图像处理中模板能够看作是n*n(n通常是奇数)的窗体。模板连续地运动于整个图像中,对模板窗体范围内的像素做相应处理。

模板运算主要分为:

①模板卷积。模板卷积是把模板内像素的灰度值和模板中相应的灰度值相乘,求平均值赋给当前模板窗体的中心像素。作为它的灰度值;

②模板排序。模板排序是把模版内像素的灰度值排序,取某个顺序统计量作为模板中心像素灰度值。

Matlab中做模版卷积十分高效,取出模版内子矩阵和模版权重点乘求平均就可以,已图示为例,3X3的模板在图像上滑动,原图像f(x,y) 经过模板处理后变成了g(x,y)。

(2)边界处理

处理边界有非常多种做法:

①重复图像边缘上的行和列。

②卷绕输入图像(假设第一列紧接着最后一列)。

③在输入图像外部填充常数(例如零)。

④去掉不能计算的行列。仅对可计算的像素计算卷积。

(3)空间域滤波

把模板运算运用于图像的空间域增强的技术称为空间域滤波。依据滤波频率空间域滤波分为平滑滤波(减弱和去除高频分量)和锐化滤波(减弱和去除低频分量),依据滤波计算特点又分为线性滤波和非线性滤波。

因此空间域滤波可分为:

数字图像处理之matlab实验(三):空间滤波器(数字图像处理-应用篇)

分类     线性       非线性

平滑   线性平滑   非线性平滑

锐化   线性锐化   非线性锐化

2、平滑滤波器(1)添加噪声

噪声主要分类为两类,高斯噪声和椒盐噪声。

高斯噪声在每个像素上都会出现,赋值服从高斯分布。

椒盐噪声出现位置随机,所以可以控制椒盐噪声的密度,椒盐噪声的幅度确定,椒噪声偏暗,盐噪声偏亮。

Image = mat2gray( imread('original_pattern.jpg') ,[0 255]);noiseIsp=imnoise(Image,'salt & pepper',0.1); %添加椒盐噪声,密度为0.1 imshow(noiseIsp,[0 1]); title('椒盐噪声图像');noiseIg=imnoise(Image,'gaussian'); %添加高斯噪声,默认均值为0,方差为0.01figure;imshow(noiseIg,[0 1]); title('高斯噪声图像'); (2)平滑滤波器

 平滑滤波器可以去除图像的噪声,使图像变得模糊。包括:中值滤波、均值滤波、高斯滤波。

高斯滤波、均值滤波去除高斯噪声。

(3)均值滤波

Image=imread('Letters-a.jpg');noiseI=imnoise(Image,'gaussian'); %添加高斯噪声subplot(221),imshow(Image),title('原图');subplot(222),imshow(noiseI),title('高斯噪声图像');result1=filter2(fspecial('average',3),noiseI); %3×3均值滤波result2=filter2(fspecial('average',7),noiseI); % 7×7均值滤波subplot(223),imshow(uint8(result1)),title('3×3均值滤波');subplot(224),imshow(uint8(result2)),title('7×7均值滤波');(4)中值滤波

 

Image=rgb2gray(imread('lotus.bmp'));noiseI=imnoise(Image,'salt & pepper',0.1);result=medfilt2(noiseI); %3×3中值滤波subplot(121),imshow(noiseI),title('椒盐噪声图像');subplot(122),imshow(uint8(result)),title('3×3中值滤波');(5)自编程实现高斯滤波

Image=imread('Letters-a.jpg');sigma1=0.6; sigma2=10; r=3; % 高斯模板的参数NoiseI= imnoise(Image,'gaussian'); %加噪gausFilter1=fspecial('gaussian',[2*r+1 2*r+1],sigma1); gausFilter2=fspecial('gaussian',[2*r+1 2*r+1],sigma2); result1=imfilter(NoiseI,gausFilter1,'conv');result2=imfilter(NoiseI,gausFilter2,'conv');subplot(231);imshow(Image);title('原图');subplot(232);imshow(NoiseI);title('高斯噪声图像');subplot(233);imshow(result1);title('sigma1 =0.6高斯滤波');subplot(234);imshow(result2);title('sigma2 =10高斯滤波');%imwrite(uint8(NoiseI),'gr.bmp');%imwrite(uint8(result1),'gr1.bmp');%imwrite(uint8(result2),'gr2.bmp');%编写高斯滤波函数实现[height,width]=size(NoiseI); for x=-r:r for y=-r:r H(x+r+1,y+r+1)=1/(2*pi*sigma1^2).*exp((-x.^2-y.^2)/(2*sigma1^2)); endend H=H/sum(H(:)); %归一化高斯模板H result3=zeros(height,width); %滤波后图像 midimg=zeros(height+2*r,width+2*r); %中间图像 midimg(r+1:height+r,r+1:width+r)=NoiseI; for ai=r+1:height+r for aj=r+1:width+r temp_row=ai-r; temp_col=aj-r; temp=0; for bi=1:2*r+1 for bj=1:2*r+1 temp= temp+(midimg(temp_row+bi-1,temp_col+bj-1)*H(bi,bj)); end end result3(temp_row,temp_col)=temp; end end subplot(235);imshow(uint8(result3));title('myself高斯滤波'); 3、锐化滤波器

 (1)梯度算子

Image=im2double(rgb2gray(imread('lotus.jpg')));subplot(131),imshow(Image),title('原图像');[h,w]=size(Image);edgeImage=zeros(h,w);for x=1:w-1 for y=1:h-1 edgeImage(y,x)=abs(Image(y,x+1)-Image(y,x))+abs(Image(y+1,x)-Image(y,x)); endendsubplot(132),imshow(edgeImage),title('梯度图像');sharpImage=Image+edgeImage;subplot(133),imshow(sharpImage),title('锐化图像');(2)Robert算子 

Image=im2double(rgb2gray(imread('lotus.jpg')));subplot(221),imshow(Image),title('原图像');BW= edge(Image,'roberts');subplot(222),imshow(BW),title('边缘检测');H1=[1 0; 0 -1];H2=[0 1;-1 0];R1=imfilter(Image,H1);R2=imfilter(Image,H2);edgeImage=abs(R1)+abs(R2);subplot(223),imshow(edgeImage),title('Robert梯度图像');sharpImage=Image+edgeImage;subplot(224),imshow(sharpImage),title('Robert锐化图像');(3)Sobel算子 

Image=im2double(rgb2gray(imread('lotus.jpg')));subplot(221),imshow(Image),title('原图像');BW= edge(Image,'sobel');subplot(222),imshow(BW),title('边缘检测');H1=[-1 -2 -1;0 0 0;1 2 1];H2=[-1 0 1;-2 0 2;-1 0 1];R1=imfilter(Image,H1);R2=imfilter(Image,H2);edgeImage=abs(R1)+abs(R2);subplot(223),imshow(edgeImage),title('Sobel梯度图像');sharpImage=Image+edgeImage;subplot(224),imshow(sharpImage),title('Sobel锐化图像');(4)多个模板边缘检测 

 

clear,clc,close all;Image=im2double(rgb2gray(imread('lotus.jpg')));H1=[-1 -1 -1;0 0 0;1 1 1];H2=[0 -1 -1;1 0 -1; 1 1 0];H3=[1 0 -1;1 0 -1;1 0 -1];H4=[1 1 0;1 0 -1;0 -1 -1];H5=[1 1 1;0 0 0;-1 -1 -1];H6=[0 1 1;-1 0 1;-1 -1 0];H7=[-1 0 1;-1 0 1;-1 0 1];H8=[-1 -1 0;-1 0 1;0 1 1];R1=imfilter(Image,H1);R2=imfilter(Image,H2);R3=imfilter(Image,H3);R4=imfilter(Image,H4);R5=imfilter(Image,H5);R6=imfilter(Image,H6);R7=imfilter(Image,H7);R8=imfilter(Image,H8);edgeImage1=abs(R1)+abs(R7);sharpImage1=edgeImage1+Image;f1=max(max(R1,R2),max(R3,R4));f2=max(max(R5,R6),max(R7,R8));edgeImage2=max(f1,f2);sharpImage2=edgeImage2+Image;subplot(221),imshow(edgeImage1),title('两个模板边缘检测');subplot(222),imshow(edgeImage2),title('八个模板边缘检测');subplot(223),imshow(sharpImage1),title('两个模板边缘锐化');subplot(224),imshow(sharpImage2),title('八个模板边缘锐化');(5)Laplacian算子

Image=im2double(rgb2gray(imread('lotus.jpg')));subplot(131),imshow(Image),title('原图像');H=fspecial('laplacian',0);R=imfilter(Image,H);edgeImage=abs(R);subplot(132),imshow(edgeImage),title('Laplacian梯度图像');H1=[0 -1 0;-1 5 -1;0 -1 0];sharpImage=imfilter(Image,H1);subplot(133),imshow(sharpImage),title('Laplacian锐化图像');
本文链接地址:https://www.jiuchutong.com/zhishi/295182.html 转载请保留说明!

上一篇:【2】YOLOv8原理解析:重新定义实时目标检测的速度和精度(yolov3原理及代码解析)

下一篇:uni-app 从0 到 1 制作一个项目,收藏等于学会(uni-app实战教程)

  • 微信收货地址可以更改吗(微信收货地址是干嘛的)

    微信收货地址可以更改吗(微信收货地址是干嘛的)

  • 苹果12有几种尺寸呢(苹果12有几种尺寸屏幕)

    苹果12有几种尺寸呢(苹果12有几种尺寸屏幕)

  • xs是用的什么基带(xs用的什么芯片)

    xs是用的什么基带(xs用的什么芯片)

  • 闲鱼曝光是什么意思(闲鱼一直0曝光)

    闲鱼曝光是什么意思(闲鱼一直0曝光)

  • 微信删除后聊天记录还在吗(微信删除后聊天记录还有吗)

    微信删除后聊天记录还在吗(微信删除后聊天记录还有吗)

  • 苹果怎么更改siri唤醒名称(苹果怎么更改siri的称呼)

    苹果怎么更改siri唤醒名称(苹果怎么更改siri的称呼)

  • a1688是全网通吗(a1688支持电信吗)

    a1688是全网通吗(a1688支持电信吗)

  • 苹果手机怎么聚焦拍照(苹果手机怎么聚焦拍摄)

    苹果手机怎么聚焦拍照(苹果手机怎么聚焦拍摄)

  • 图库里的照片怎么恢复(图库里的照片怎么编辑)

    图库里的照片怎么恢复(图库里的照片怎么编辑)

  • 打开相册一片空白怎么回事(为什么相册点进去有图片打开是空白)

    打开相册一片空白怎么回事(为什么相册点进去有图片打开是空白)

  • 手机信息提示音怎么关(华为手机信息提示音)

    手机信息提示音怎么关(华为手机信息提示音)

  • 华为home失灵怎么解决(华为home键失灵修复小技巧大全)

    华为home失灵怎么解决(华为home键失灵修复小技巧大全)

  • 苹果基带坏了的症状(iphone基带坏了能还原吗)

    苹果基带坏了的症状(iphone基带坏了能还原吗)

  • iphonea1524是什么版本(iphonea1526是什么型号)

    iphonea1524是什么版本(iphonea1526是什么型号)

  • it包括的是什么(it包括啥)

    it包括的是什么(it包括啥)

  • 手机自动锁屏怎么办(手机自动锁屏怎么设置永不)

    手机自动锁屏怎么办(手机自动锁屏怎么设置永不)

  • 手机不能复制粘贴怎么办(手机不能复制粘贴怎么设置)

    手机不能复制粘贴怎么办(手机不能复制粘贴怎么设置)

  • 淘宝店小二在哪里找(淘宝小二在什么地方)

    淘宝店小二在哪里找(淘宝小二在什么地方)

  • 网购的书拆封了还能退吗(书店买的书拆封了能退吗)

    网购的书拆封了还能退吗(书店买的书拆封了能退吗)

  • 咸鱼交易评价怎么删除(咸鱼评价怎么处理)

    咸鱼交易评价怎么删除(咸鱼评价怎么处理)

  • vivox27虚拟按键怎么调出来(vivox27调出虚拟按键)

    vivox27虚拟按键怎么调出来(vivox27调出虚拟按键)

  • 淘票票如何开发票(淘票票在哪里打开)

    淘票票如何开发票(淘票票在哪里打开)

  • win10热点怎么限制人数(win10热点怎么限制网速)

    win10热点怎么限制人数(win10热点怎么限制网速)

  • cad弧长快捷键(cad测量弧长命令)

    cad弧长快捷键(cad测量弧长命令)

  • Win10累积更新补丁KB5007186推送,2004 版本即将停止支持(附下载)(win10 累积更新)

    Win10累积更新补丁KB5007186推送,2004 版本即将停止支持(附下载)(win10 累积更新)

  • 君子兰的养殖方法和注意事项(君子兰图片)(君子兰的养殖方法)

    君子兰的养殖方法和注意事项(君子兰图片)(君子兰的养殖方法)

  • 待抵扣税金怎么算
  • 个税手续费怎么交增值税
  • 电子税务局实名核验失败怎么回事啊
  • 社保基数变更上限怎么办
  • 报表的应交税费都包含什么
  • 本月进项税大于销项税有留底,如何做会计分录
  • 小规模出租不动产免税吗
  • 营改增前土地增值税的计算方法
  • 公司出租非自有房产
  • 结转本月收入类账户到本年利润会计分录
  • 非财政拨款结余是什么科目
  • 个人交的社保发票怎么开
  • 网吧卖出那些零食怎么卖
  • 往来核算在会计哪个科目
  • 应交城市维护建设税分录怎么做
  • 税收滞纳金算不算所得税
  • 计提个人生产经营所得个税需要贴附件吗
  • 商品税目是什么意思4001
  • 销售商品货款已预收
  • 劳务费开发票还要代扣代缴吗?
  • 企业的不征税收入用于支出所形成
  • 金税盘减免税款贷方余额
  • 作价入股的土地可以摊销无形资产吗
  • 公司没有实缴可以破产么
  • 出口退税需要什么单据
  • 计提社保公司承担部分怎么算
  • 企业购入用于捐赠的物品
  • 鸿蒙系统怎么同步数据
  • 长期待摊费用是当月摊销还是次月摊销
  • 艾叶泡脚的方法和注意事项
  • win10平板模式怎么切换
  • 冲减应收账款的分录
  • php格式图片
  • 工商年报认缴出资时间填错了,有什么后果
  • 金税盘减免税款留抵
  • 打造出ChatGPT的,是怎样一群人?
  • vue有哪些内容
  • 长期挂账的"其他应收款"该怎么处置
  • Bootstrap table 控制表格高度固定(行高固定)并且不受数据量影响
  • C++ lower_bound/upper_bound用法解析
  • 开票服务名称可以自己添加吗
  • 申报表填完后下一步是什么
  • 预缴税款是什么意思
  • 新成立的小公司财务怎么管理
  • 劳务公司是怎么运作的
  • 预付开发票加油后还能开吗?
  • 家电销售的税率
  • 增值税发票红冲的相关规定
  • 以前年度损益调整结转到哪里
  • 银行转账手续费一览表
  • 地下车库的成本和房子哪个高
  • 年底进项比销项大要做账么
  • 计提租金如何做账务处理
  • 应付账款与实际付款有差异如何分录
  • 先付款后开票还是先开票后付款
  • 会计估计变动怎么处理
  • 经营活动产生的现金流量净额计算公式
  • 收到现金货款存入银行会计分录
  • 数电怎么增加开票员
  • 公司建立初期做账
  • 如何正确设置会员账号
  • 文件历史版本功能
  • macos 右键菜单
  • github centos
  • CentOS救援模式实验笔记详解
  • xp系统进入桌面后没反应
  • linux怎么那么难用
  • win10怎么看下载的软件
  • w7系统如何设置
  • 有usb3.0驱动的win7
  • unity ondestroy
  • js object.seal
  • 用android做一个简单的软件
  • Open quote is expected for attribute "name" associated with an element type "item".
  • css主要解决什么问题
  • javascript入门教学
  • 修改jquery版本号不生效
  • 北京朝阳地税大厅电话
  • 开展税务培训
  • 广东税务社保缴费查询
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设