
- 外文名
- Digital Image Processing
- 应用学科
- 通信、多媒体
- 中文名
- 数字图像处理
-
数字图像处理
2016-12-15 16:04:09数字图像处理数字图像处理
1 绪论
2 数字图像基础
3 灰度变换和空间滤波
直方图均衡化是非线性变化
3.5 平滑空间滤波器
低通滤波器
3.6 锐化空间滤波器
高通滤波器
- 零交叉点对于边缘定位是非常有用的。
4 频率域滤波
轮廓和边界在频率域体现为高频成分,其他能量分布在低频成分
5 图像复原与重建
5.11.2 计算机断层(CT)原理
X射线计算机断层的目的是使用X射线从许多不同的方向穿过物体而得到该物体内部结构的三维描述。
6 彩色图像处理
图像处理领域彩色的运用主要受到两个因素的推动
- 彩色是一种强有力的描绘因子,它可以简化对场景中目标的识别和提取。
- 人眼可以辨别几千种彩色色调和亮度,但相比之下只能辨别几十种灰度。彩色在人工图像处理中十分重要。
6.1 彩色基础
6.2 彩色模型
6.2.1 RGB彩色模型
RGB的取值范围[0,255]
6.2.2 HSI彩色模型
- H 色调 : 颜色
- S 饱和度 : 彩色中包含白光的多少。白光对多,饱和度越小。
- I 亮度 : 感受到的光强度
6.2.3 RGB转换HSI
7 小波和多分辨率处理
与基函数为正弦函数的傅里叶变换不同,小波变换给予一些小型波,成为小波,它具有变化的频域和有限的持续时间。这就允许他们为图像提供一张等效的乐谱,该乐谱不但显示了要演奏的音符(或频域),而且显示了演奏这些音符的时间。另一方面,傅里叶变换只能提供音符或频域信息,时间信息在变换过程中丢失了。
7.1 背景
图像金字塔&创建近似和预测残差金字塔的一个简单系统
总结:原始图片经过Level 0 层和预测残差金字塔得以完全恢复。提高了图片传输效率。8 图像压缩
8.1 基础知识
8.1.1 编码冗余
在多数二维灰度阵列中,用于表示灰度的8比特编码所包含的比特数要比表示该灰度所需要的比特数多。
8.1.2 空间和时间冗余
8.1.3 不相关信息
8.1.4 LZW编码
8.1.5 行程编码
8.1.6 块变换编码
压缩编码举例
- 对一副大小为1024*1024,熵为5.3比特/像素的8比特图片进行霍夫曼编码,编码后每个编码的平均长度为5.5比特/像素,所期望的最大压缩率为8/5.3=1.5,但实际压缩率为8/5.5=1.45,采用霍夫曼编码的效率为1.45/1.5=97%。霍夫曼编码不能达到所期望的压缩率,原因是它只能消除编码冗余,不能消除空间冗余。
- 基于这种情况,为了取得更大的压缩率,我们需要建立相邻像素之间的关系,通过消除空间冗余来达到压缩的母的。
JPEG编码
编码步骤
(1)将RGB图转换为YCbCr图
(2)按像素分成8*8的区域
(3)进行离散余弦变换(DCT)
(4)量化
(5)Z字型编码,哈夫曼编码解码步骤
(1)逆哈夫曼编码,逆Z字型编码
(2)逆量化
(3)逆离散余弦变换
(4)将YCbCr转换为RGB图像
8.2 一些基本的压缩方法
8.2.1 霍夫曼编码
8.2.2 Golomb编码
8.2.3 算术编码
-
数字图像处理Matlab
2018-06-18 20:25:13(注:本文代码大部分可从《数字图像处理 第三版》中找到)使用软件:MATLAB R2018a学习前提:了解matlab的GUI界面的每个按钮参考资料:《数字图像处理 第三版》,CSDN博客使用初音图片P站画师uid:1589657。...前言:本文类似于学习笔记,所以有疑问或者有什么宝贵的建议欢迎在下方留言。(注:本文代码大部分可从《数字图像处理 第三版》中找到)
使用软件:MATLAB R2018a
参考资料:《数字图像处理 第三版》,CSDN博客
使用初音图片P站画师uid:1589657。
最终实现效果:(下图)
正文内容
打开matlab后输入guide后弹出选择界面,新建一个GUI界面
在左边选择自己需要按钮在界面中展出后,右键该按钮选择查看回调→Callback打开后会自动跳转到该按钮的代码块,只要在定位到的function pushbutton1_Callback代码下写要实现的功能就可以了。
下面直接展示相关代码功能:
(1)导入图片
[file path]=uigetfile('*.bmp;*.jpg;*.png','请选择一幅图像'); if file==0 warndlg('您得输入一幅图像'); %警告对话框提示输入合法图像文件 else I=imread(fullfile(path,file)); axes(handles.axes1); imshow(I);title('原图像'); handles.I=I; end %Update handles structure guidata(hObject,handles);
(2)清除图片和文本框内容
%清除视图图片 cla(handles.axes2,'reset'); %handles.axes2为显示图片窗口,reset即清除 % 重置清空动态txt的文字 set(handles.edit1,'string',''); %handles.edit1为要清除文字的文本框(双击文本框可以看见tag)
(3)关闭程序
close
(4)平移(用文本框实现输入数字进行平移图像)
①先创建一个可编辑文本框(输入水平平移的位移),然后给他添加代码
%获取text文本框的数字,竖直平移X的数值 global x;%定义一个x的全局变量 x=str2num(get(hObject,'String'));
②先创建一个可编辑文本框(输入竖直平移的位移),然后给他添加代码
%获取text文本框的数字,竖直平移Y的数值 global y; y=str2num(get(hObject,'String'));
③创建一个button,给他添加代码
global y; global x; I=handles.I; axes(handles.axes2); se=translate(strel(1),[x y]); j=imdilate(I,se); axes(handles.axes2); imshow(j);title('竖直平移后图像');
在X和Y的文本框中输入数值,点击button后就能使图像平移了(如输入X:260;Y:90)
(5)旋转
%图像的旋转 I=handles.I; a=str2num(get(hObject,'String')); J1=imrotate(I, a); %设置旋转角度,实现旋转并显示 axes(handles.axes2); imshow(J1);title('旋转后图像'); guidata(hObject,handles);
(6)镜像
%用下拉列表实现水平镜像,垂直镜像,水平垂直镜像 switch get(hObject,'value') %实现下拉列表需要写改语法 case 1 case 2 I=handles.I; J1=flipdim(I,2);%原图像的水平镜像 axes(handles.axes2); imshow(J1);title('水平镜像'); guidata(hObject,handles); case 3 I=handles.I; J2=flipdim(I,1);%原图像的垂直镜像 axes(handles.axes2); imshow(J2);title('垂直镜像'); guidata(hObject,handles); case 4 I=handles.I; J3=flipdim(I,1);%原图像的水平垂直镜像 J4=flipdim(J3,2); axes(handles.axes2); imshow(J4);title('水平垂直镜像'); guidata(hObject,handles); end
下面就不把全部代码都写出来了,只挑选一部分出来(上面代码几乎能实现每个按钮的用法)
(7)DCT变换
%DCT变换(P58) I=handles.I; J=rgb2gray(I);%将图片转变为灰色图像 axes(handles.axes2); imshow(J);title('原灰图像'); K=dct2(J);%对图像做DCT变换 axes(handles.axes3); imshow(log(abs(K))+1,[0,10]);title('DCT变换结果');
(8)对受椒盐噪声污染的图像采用中值滤波去噪
I=handles.I; I=rgb2gray(I);%转化为灰度图像 J=imnoise(I,'salt & pepper',0.04);%对图像增加椒盐噪声,强度为0.04 axes(handles.axes2); %显示在axex2框中 imshow(J); title('受椒盐噪声污染图片'); K=medfilt2(J); %二维中值滤波 axes(handles.axes3); imshow(K);title('二维中值滤波处理后的图片');
(9)彩色图像增强(分别使用RGB和HSV方法)——用下拉列表实现
switch get(hObject,'value') case 1 case 2 RGB=handles.I; R=RGB(:,:,1); G=RGB(:,:,2); B=RGB(:,:,3); R1=histeq(R); G1=histeq(G); B1=histeq(B); RGB1=cat(3,R1,G1,B1); axes(handles.axes2); %显示在axes2框中 imshow(RGB1);title('RGB增强'); case 3 RGB=handles.I; R=RGB(:,:,1); G=RGB(:,:,2); B=RGB(:,:,3); R1=histeq(R); G1=histeq(G); B1=histeq(B); RGB1=cat(3,R1,G1,B1); [H,S,V]=rgb2hsv(R,G,B); V=histeq(V); [R2,G2,B2]=hsv2rgb(H,S,V); RGB2=cat(3,R2,G2,B2); axes(handles.axes2); %显示在axes2框中 imshow(RGB2,[]);title('HSV增强'); C=double(RGB1)./255-RGB2; axes(handles.axes3); %显示在axes3框中 imshow(C);title('差值图像'); end
RGB增强:
HVS增强:
(10)彩色图像锐化
代码引用了:点击打开链接
I=handles.I; fb=tofloat(I); %将图像转化为浮点型 lapmask=[1 1 1;1 -8 1;1 1 1]; %拉普拉斯滤波模板 fen=fb-imfilter(fb,lapmask,'replicate'); axes(handles.axes2); imshow(fen);title('拉普拉斯锐化'); function [out,revertclass] = tofloat(inputimage) %Copy the book of Gonzales identify = @(x) x; tosingle = @im2single; table = {'uint8',tosingle,@im2uint8 'uint16',tosingle,@im2uint16 'logical',tosingle,@logical 'double',identify,identify 'single',identify,identify}; classIndex = find(strcmp(class(inputimage),table(:,1))); if isempty(classIndex) error('不支持的图像类型'); end out = table{classIndex,2}(inputimage); revertclass = table{classIndex,3};
(10)彩色图像复原
%维纳滤波复原图像 I=handles.I; len=28; theta=14; PSF=fspecial('motion',len,theta); blurred=imfilter(I,PSF,'circular','conv');%读入无噪声模糊图像,并命名blurred len=28; theta=14; wnrl=deconvwnr(blurred,PSF,0.04);%维纳滤波复原图像 axes(handles.axes2); imshow(blurred);title('由运动形成模糊图像');%显示模糊图像 axes(handles.axes3); imshow(wnrl);title('维纳滤波复原图像');%显示复原图像
(11)square膨胀
%用square结构元素膨胀图片(用text文本框比较好) a=str2num(get(hObject,'String')); I=handles.I; se1=strel('square',a); I1=imerode(I,se1); axes(handles.axes2); %显示在axes2框中 imshow(I1);title('用square结构元素膨胀图片');
这里输入了20的数值
(12)边缘检测(使用canny算子)
I=handles.I; I=rgb2gray(I); BW5=edge(I,'canny');%进行canny算子边缘检测,门限值采用默认值 axes(handles.axes2); %显示在axes2框中 imshow(BW5,[]);title('canny算子');
附上源程序:点击打开链接
链接:https://pan.baidu.com/s/1CYnKo5SAdE-Ey6rDD-DEYQ
提取码:g4a5 -
冈萨雷斯 数字图像处理 第三版
2013-04-13 09:43:56冈萨雷斯数字图像处理,第三版 -
数字图像处理>>>1.3数字图像处理系统
2020-02-26 22:07:48数字图像处理系统 一个基本的数字图像处理系统由图像输入、图像存储、图像输出、图像通信、图像处理和分析五个模块组成。 数字图像输入模块:获取图像,通过数字设备将要处理的连续图像转换为计算机处理的数字图像 ...数字图像处理系统
一个基本的数字图像处理系统由图像输入、图像存储、图像输出、图像通信、图像处理和分析五个模块组成。
- 数字图像输入模块:获取图像,通过数字设备将要处理的连续图像转换为计算机处理的数字图像
- 数字图像存储模块:作为存储单元存储数字图像数据
- 数字图像输出模块:将处理前后的数字图像显示出来或者永久保存
- 数字图像通信模块:对图像进行传输和通信
- 数字图像处理和分析模块:通用图像处理、专用图像处理、图像处理芯片,一般包括处理算法、实现软件和计算机组成
如下图所示:
图像基础
- 图像表达:建模,图像采样、数字化
- 图像和视觉基础
- 图像变化:提高图像质量
图像处理
- 图像增强:改善图像质量
- 图像几何处理:平移、缩放、旋转、扭曲
- 图像复原:去噪声、去模糊
- 图像重建:重建原始图像
- 图像编码压缩:减少存储量和传输量
- 图像分割:图像区域分割和理解目标表达和描述
-
数字图像处理学习笔记(一)——数字图像处理概述
2020-04-13 14:51:32数字图像处理(Digital Image Processing)是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。本专栏将以学习笔记形式对数字图像处理的重点基础知识进行总结整理,欢迎大家一起学习交流...数字图像处理(Digital Image Processing)是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。本专栏将以学习笔记形式对数字图像处理的重点基础知识进行总结整理,欢迎大家一起学习交流!
专栏链接:数字图像处理学习笔记一、什么是图像
Ⅰ、图像的定义: 二维函数f(x,y)
注:①x,y是空间坐标;②f(x,y)中f是点(x,y)的幅值。Ⅱ、灰度图像是一个二维灰度(或亮度)函数f(x,y)
注:把白色与黑色之间按对数关系分为若干等级,称为灰度。
灰度分为256阶(灰度值为0—255),用灰度表示的图像称作灰度图;
灰度图像与黑白图像不同,在计算机图像领域中黑白图像只有黑白两种颜色,灰度图像在黑色与白色之间还有许多级的颜色深度。Ⅲ、彩色图像由三个(如RGB,HSV)二维灰度(或亮度)函数f(x,y)组成
注:①RGB:RGB即是代表红(R)、绿(G)、蓝(B)三个通道的颜色
其余各式各样的颜色均是通过对红绿蓝三个颜色通道的变化以及它们相互之间的叠加来得到的;
②HSV:这个模型中颜色的参数分别是:色调(H),饱和度(S),明度(V)。
具体而言,色调(H)用角度度量,取值范围为0°~360°。
饱和度(S)表示颜色接近光谱色的程度。饱和度值愈高,颜色越深而艳。
明度(V)表示颜色明亮的程度,此值和物体的透射比或反射比有关。
通常取值范围为0%(黑)到100%(白)。
二、什么是数字图像Ⅰ、数字图像的定义:像素组成的二维排列,可以用矩阵表示。
Ⅱ 、对于单色(灰度)图像而言,每个像素的亮度用一个数值来表示
通常数值范围在0到255之间,0表示黑、255表示白
其它值表示处于黑白之间的灰度。Ⅲ、彩色图像可以用红、绿、蓝三元组的二维矩阵来表示。
通常,三元组的每个数值也是在0到255之间
0表示相应的基色在该像素中没有
255代表相应的基色在该像素中取得最大值事实上,视频的处理也属于数字图像处理的一部分,只是视频处理总像素点的数量级是非常大的。
这里给一个概念:1s的视频可分成25张图像,通常来讲每张图像大小256*256,那么25张是多少、1分钟的视频呢?1小时的视频呢?这就可想而知它的大小了,于是做数字图像处理,对设备的要求还是比较高的。三、数字图像处理的起源
最早应用的行业——媒体(报纸业)
最早应用的时间——20世纪20年代(1921年)
最早“数字图像处理”系统的用途——通过海底电缆,将图像从伦敦传输至纽约。客观的讲,当时的应用并不涉及“数字图像处理”,而是“数字图像传输”。
最早“数字图像处理”系统的特性——系统名称:“巴特兰”(Bartlane),早期的“巴特兰”系统使用5个不同的灰度级来编码图像, 到了1929年这一能力已经扩展到15级。
1921年由电报打印机采用特殊字体在编码纸带上产生的数字图片 1929年美国将军潘兴和法国元帅福熙的数字图片 计算机图像处理技术的历史可以追溯到1946年第一台电子计算机的诞生。
在上世纪70年代,数字图像处理技术有了长足发展
到上世纪80年代,出现了3D图像和分析处理3D图像的系统
进入上世纪90年代,图像处理技术已逐步涉及人类生活和社会发展的各个方面
进入21世纪,数字图像处理技术必将得到进一步发展
四、数字图像处理领域的实例
★传统领域
☆医学、空间应用、地理学、生物学、军事……
★最新领域
☆数码相机(DC)、数码摄像机(DV)
☆指纹识别、人脸识别
☆互联网、视频、多媒体等
☆基于内容的图像检索、视频检索、多媒体检索
☆水印、游戏、电影特技、虚拟现实、电子商务等数字图像处理的应用无处不在
五、数字图像处理的基本步骤六、图像处理系统的基本组成结构
主要由三大部分组成:
①图像数字化设备:包括数码相机、数码摄像机、带照相和/或摄像功能的手机等。
②图像处理设备:包括计算机和存储系统。
③图像输出设备:包括打印机,也可以输出到Internet上的其它设备。七、图像存储系统
★图像文件格式体系
☆互联网用:GIF、JPG
☆印 刷 用:TIF、JPG、TAG 、PCX(国际标准:TIF、JPG、BMP)
☆图像存储体系:分级存储
☆内存存储:处理时使用
☆硬盘存储:处理、备份时用(在线)
☆备份存储:光盘、磁带(离线、近线)
☆网络存储:SAN、 NAS欢迎留言,一起学习交流~~~
感谢阅读
END
-
数字图像处理复习总结
2019-01-03 22:19:26复习着感觉记不住,于是乎,有了这篇博文,如果也同样选修了数字图像处理课程的小伙伴们可以参考一哈! 纯手码字…逢考必过! 概念 采样与量化 灰度变换缓慢的景物:粗采样、细量化 有大量细节变化的图像:... -
数字图像处理(1)-数字图像处理的基本步骤
2019-06-11 21:17:101.4数字图像处理的基本步骤 数字图像处理的内容划分为以下两个主要类别:一类是其输入输出都是图像。一类是其输入可能是图像,但输出是从这些图像中提取的属性。 图像获取是数字图像处理的第一步处理。图像获取与... -
【图像处理】数字图像处理简介
2019-12-20 10:36:343.数字图像处理 4.什么是图像 5.数字图像和信号之间的关系 信号 关系 6.如何形成数字图像 7.应用 机器/计算机视觉 计算机图形学 人工智能 信号处理 1.介绍 数字图像处理(Digital Image Processing)是... -
数字图像和数字图像处理
2016-08-15 21:29:57Digital Image Processing[数字图像和数字图像处理] 数字图像就是指代表图像的矩阵。 数字图像处理就是对图像矩阵进行各种数学运算。在进行图像处理时需要一些数学基础,主要包括线性系统、傅立叶变换、沃尔什变换和... -
MATLAB06:数字图像处理
2019-11-18 13:15:09文章目录MATLAB06:数字图像处理图像的读取和展示图像在MATLAB中的存储格式读取和展示图像图像的点运算图像的四则运算像素的统计分布 MATLAB06:数字图像处理 图像的读取和展示 图像在MATLAB中的存储格式 MATLAB能够... -
数字图像处理专栏目录
2019-11-19 10:53:34为了方便查阅复习,将自己原来撰写的博文进行整理,数字图像处理专栏目录...数字图像处理(1): 数字图像处理领域应用——电磁波谱 可见光 数字图像处理(2): 颜色空间/模型—— RGB, CMY/CMYK, HSI, HSV, YUV 数字... -
项目报告: 《数字图像处理》自动定位、分割、识别汽车车牌 (非深度学习方法,使用传统数字图像处理方法)...
2020-06-27 12:06:02本次《数字图像处理》课程作业要求使用数字图像处理技术自动定位,分割和识别车牌。其中数据需要使用老师提供的数据(50张车牌图片),尽量使用课程中老师讲授的传统的数字图像处理领域的知识,不使用深度学习(除非... -
数字图像处理实验之彩色图像处理
2020-02-19 09:37:58数字图像处理_彩色图像处理1. 实验目的2. 实验流程2.1 彩色图像基本操作2.2 伪彩色处理2.3 彩色图像平滑滤波2.4 RGB转HSI3. 实验代码3.1 彩色图像读取、显示与格式转换3.2 伪彩色变换3.3 彩色图像平滑滤波3.4 RGB... -
Python数字图像处理
2017-06-21 13:58:01转:宁静家园python数字图像处理(1):环境安装和配置python数字图像处理(2):图像的读取、显示与保存python数字图像处理(3):图像像素的访问与裁剪python数字图像处理(4):图像数据类型及颜色空间转换python... -
数字图像处理实验
2020-09-06 15:42:48数字图像处理实验 一、图像处理示例 实验一:matlab中surf()函数的使用 I=imread('E:\桌面\数字图像处理\图片\lena2.jpg'); F=double(I(100:200,100:200))/255; subplot(131),imshow(I); subplot(132),surf(F); ...
-
6、方法
-
AcWing----851. spfa求最短路 (Java)_
-
Redis持久化RDB&AOF
-
C++11 14 17 20 多线程从原理到线程池实战
-
基于Flink+Hudi构建企业亿级云上实时数据湖教程(PC、移动、小
-
cmd命令符 部分学习笔记
-
Influence of GaAs substrate on the transmission performance of epitaxially grown Fabry-Peerot f ilter
-
discourse-teamspeak-bridge:Discourse和TeamSpeak3服务器之间的同步服务-源码
-
html+css,vs code前端必备插件
-
SSM常见题型
-
Windows系统管理
-
360 GPU Pro : Shadows
-
中国科学技术大学334新闻与传播专业综合能力历年考研真题汇编
-
Shather-Sutherland晶格上的反铁磁金属和莫特跃迁
-
解读JDK8中HashMap的源码
-
绿盟零信任专刊.pdf
-
Kafka——性能逆天的存在
-
Linux基础入门系列课程
-
ELF视频教程
-
MySQL 高可用工具 heartbeat 实战部署详解