数字图像处理技术从基础到实战 本课程包含图像处理的基础知识以及案例应用,通过视频教程+在线交流的形式展现,力求为读者提供最便捷、直接的技术支持,解决学员在图像处理相关研发过程中遇到的最具体、实际的技术难点,争取与广大学员分享研发过程中所涉及的功能模块及某些成熟的系统框架,为读者进行科学实验、项目开发提供一定的技术支持。 课程大纲: 第1课数字图像处理概述 1、数字图像处理发发展史 2、数字图像处理是概述? 3、数字图像处理工具箱介绍? 4、数字图像处理常用技能 5、数字图像在计算机中怎么表示? 6、数字图像常用计算机表示类型 7、数字图像转换技巧 8、数字图像数组处理技巧 9、案例演示:常用图像处理技术GUI编程 第2课图像时域变换 1、时域空间概述 2、常见的灰度变换函数 3、直方图的概念 4、时域空间滤波基础 5、什么是平滑空间滤波器? 6、什么是锐化空间滤波器? 7、什么是混合空间增强? 8、案例演示:图像去雾 第3课图像频域变换 1、什么是频域空间? 2、常用的基本概念 3、什么是傅里叶变换? 4、离散傅里叶变换用法 5、多维傅里叶变换用法 6、案例演示:图像频域滤波可视化编程 第4课图像复原和重建技术 1、常见的图像噪声模型 2、空间滤波图像复原 3、频域滤波图像复原 4、逆滤波图像复原 5、维纳滤波图像复原
6、约束的最小二乘滤波图像复原 7、Lucy-Richardson图像复原 8、案例演示:盲卷积图像复原 第5章彩色图像处理 1、彩色图像概述 2、常见的彩色模型 3、伪彩色图像处理 4、全彩色图像处理 5、彩色变换 6、平滑和锐化 7、基于彩色的图像分割 8、彩色图像中的噪声处理 9、彩色图像压缩 10、案例演示:彩色图像处理 第6课小波和多分辨率处理 1、图像中的小波 2、多分辨率处理 3、一维小波变换 4、快速小波变换 5、二维小波变换 6、案例演示:基于小波分解的图像融合案例 第7课图像压缩处理技术 1、压缩处理原理 2、图像压缩处理常用方法 3、案例演示:数字图像水印嵌入及提取案例 第8课形态学图像处理 1、图像形态学概述? 2、腐蚀和膨胀 3、开操作与闭操作 4、击中或击不中变换 5、常见形态学算法 6、灰度级形态学 7、案例演示:图像形态学去噪 第9课图像分割处理技术 1、图像分割注意事项 2、点、线和边缘检测 3、阈值处理 4、基于区域的分割 5、使用形态学分水岭的分割
数字图像处理 实验指导书 河北工业大学 计算机科学与软件学院
实验一 MATLAB数字图像处理初步 一、实验目的与要求 1.熟悉及掌握在MATLAB中能够处理哪些格式图像。 2.熟练掌握在MATLAB中如何读取图像。 3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。 4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。 5.图像类型转换。 二、实验原理及知识点 1、数字图像的表示和类别 一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f 在任何坐标处(x,y)处的振幅称为图像在该点的亮度。灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由单个二维图像组合形成的。例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。因此,许多为黑白图像处理开发的技术适用于彩色图像处理,方法是分别处理三副独立的分量图像即可。 图像关于x和y坐标以及振幅连续。要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。将坐标值数字化称为采样;将振幅数字化成为量化。采样和量化的过程如图1所示。因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。 作为MATLAB基本数据类型的数值数组本身十分适于表达图像,矩阵的元素和图像的像素之间有着十分自然的对应关系。
图1 图像的采样和量化 根据图像数据矩阵解释方法的不同,MA TLAB把其处理为4类: 亮度图像(Intensity images) 二值图像(Binary images) 索引图像(Indexed images) RGB图像(RGB images) (1) 亮度图像 一幅亮度图像是一个数据矩阵,其归一化的取值表示亮度。若亮度图像的像素都是uint8类或uint16类,则它们的整数值范围分别是[0,255]和[0,65536]。若图像是double类,则像素取值就是浮点数。规定双精度型归一化亮度图像的取值范围是[0,1] (2) 二值图像 一幅二值图像是一个取值只有0和1的逻辑数组。 (3) 索引图像 索引颜色通常也称为映射颜色,在这种模式下,颜色都是预先定义的,并且可供选用的一组颜色也很有限,索引颜色的图像最多只能显示256种颜色。 一幅索引颜色图像在图像文件里定义,当打开该文件时,构成该图像具体颜色的索引值就被读入程序里,然后根据索引值找到最终的颜色。(4) RGB图像 一幅RGB图像就是彩色像素的一个M×N×3数组,其中每一个彩色相
《数字图像处理》研研究生课程教学大纲 (课程编号S009108 学分-学时-上机 3-54-12) 东南大学计算机科学与工程学院 一、课程的性质与目的 本课程为计算机科学与技术一级学科中图像处理与科学可视化方向的重要专业课,包含了该专业方向学生必须掌握的专业知识。 通过课程学习,学生除了掌握必须的专业技术知识外,还需要了解该方向的研究前沿,提高阅读专业学术资料和解决实际问题的能力。 二、课程内容的教学要求 本课程采用讲课+自学+讨论的教学模式。其中,讲课环节以综述为主,重点介绍各知识点的问题提出、解决思路、主要算法、评估;自学环节需要学生阅读专业论文并进行实验,得出结论;讨论环节由学生进行论文阅读及实验结论的交流,加深理解,并由此了解研究前沿。 讲课课时安排(24课时): 1.数字图像处理概述(3):数字图像处理技术的发展历史,包含的主要内容,应 用,相关的学科方向 2.线性系统分析方法、傅里叶变换(3):复习线性系统基本知识,复习一维傅里 叶变换,掌握二维傅氏变换及性质,线性滤波器设计。 3.图像几何变换及插值(3):图像几何变换应用,重点插值方法 4.图像增强综述(6):图像增强的目的,算法分类,各类算法的基本原理及性能 5.图像分割综述(6):图像分割的目的,算法分类,各类算法的基本原理及性能 6.图像压缩综述(3):图像压缩的目的,算法分类,各类算法的基本原理及性能, JPEG标准简介 实验及讨论课时安排(30课时): 1.图像插值(实验3 +讨论3) 2.图像增强(实验3 +讨论3) 3.图像分割(实验3 +讨论3) 4.图像压缩(实验3+讨论3) 5.课程论文(讨论6) 三、上机实验要求 实现选择算法,并给出实验结果及算法性能评估数据。 四、能力培养的要求 1.自学能力的培养:提高学生自学及查阅学术文献的能力。 2.分析能力和实验能力的培养:要求学生能够实现文献提供的算法,并能自主给出算 法性能的评价。 3.科研和创新能力的培养:培养独立思考、深入钻研问题的习惯,提高学术交流能力。
实验一 Matlab图像处理工具箱的初步练习 一、实验目的和任务 1、初步了解与掌握MA TLAB语言的基本用法; 2、掌握MA TLAB语言中图象数据与信息的读取方法; 3、掌握在MA TLAB语言中图像类型的转换。 二、实验仪器、设备及材料 1、计算机 2、MatLab软件/语言包括图像处理工具箱(Image Processing Toolbox) 3、实验所需要的图片 三、实验原理 将数字图像的RGB表示转换为YUV表示; Y=0.30R+0.59G+0.11B U=0.70R-0.59G-0.11B V=-0.30R-0.59G+0.89B 四、实验步骤 1、阅读资料并熟悉MatLab的基本操作 2、读取MATLAB中的图象数据 3、显示MATLAB中的图象文件。用MATLAB在自建的文件夹中建立m文件,在这个文件的程序中,将MA TLAB目录下work文件夹中的tree.tif 图象文件读出,用到imread,imfinfo等命令,观察一下图象数据,了解一下数字图象在MA TLAB中的处理就是处理一个矩阵的本质。 4、将3中的图象显示出来(用imshow)。 5、对MA TLAB目录下work文件夹中的flowers.tif进行真彩色图像、索引色图像、灰度图像、二值图像之间的相互变换,并显示。 6、进行真彩色图像RGB(lenacolor.jpg)、YIQ图像、HSV图像、YcbCr图像的相互转换,并显示。 五、实验报告要求 1、描述实验的基本步骤; 2、用图片给出步骤4、5、6中取得的实验结果; 六、实验所需图片
lenacolor.jpg 七、实验注意事项 1、学生应提前预习 2、请大家在E盘建一个目录(matlab),在每次启动时都要将这个目录加入到MATLAB的搜索路径中,添加的方法为File----Set Path----Tool---Add Path 八、思考题 1、图像之间转换的基础是什么,为什么可以实现相互的转换 九、附录 MATLAB简介 (1) MATLAB全称是Matrix Laboratory(矩阵实验室),一开始它是一种专门用于矩阵数值计算的软件,从这一点上也可以看出,它在矩阵运算上有自己独特的特点。实际上MATLAB中的绝大多数的运算都是通过矩阵这一形式进行的。这一特点也就决定了MA TLAB在处理数字图像上的独特优势。理论上讲,图像是一种二维的连续函数,然而在计算机上对图像进行数字处理的时候,首先必须对其在空间和亮度上进行数字化,这就是图像的采样和量化的过程。二维图像进行均匀采样,就可以得到一幅离散化成M×N样本的数字图像,该数字图像是一个整数阵列,因而用矩阵来描述该数字图像是最直观最简便的了。而MATLAB的长处就是处理矩阵运算,因此用MA TLAB处理数字图像非常的方便。MATLAB支持五种图像类型,即索引图像、灰度图像、二值图像、RGB图像和多帧图像阵列;支持BMP、GIF、HDF、JPEG、PCX、PNG、TIFF、XWD、CUR、ICO等图像文件格式的读,写和显示。MATLAB对图像的处理功能主要集中在它的图像处理工具箱(Image Processing Toolbox)中。图像处理工具箱是由一系列支持图像处理操作的函数组成,可以进行诸如几何操作、线性滤波和滤波器设计、图像变换、图像分析与图像增强、二值图像操作以及形态学处理等图像处理操作。 1、MATLAB中图象数据的读取 A、imread imread函数用于读入各种图象文件,其一般的用法为 [X,MAP]=imread(‘filename’,‘fmt’) 其中,X,MAP分别为读出的图象数据和颜色表数据,fmt为图象的格式,filename为读取的图象文件(可以加上文件的路径)。 例:[X,MAP]=imread(’flowers.tif’,’tif’);
数字图像处理试验报告 实验二:数字图像的空间滤波和频域滤波 姓名:XX学号:2XXXXXXX 实验日期:2017 年4 月26 日1.实验目的 1. 掌握图像滤波的基本定义及目的。 2. 理解空间域滤波的基本原理及方法。 3. 掌握进行图像的空域滤波的方法。 4. 掌握傅立叶变换及逆变换的基本原理方法。 5. 理解频域滤波的基本原理及方法。 6. 掌握进行图像的频域滤波的方法。 2.实验内容与要求 1. 平滑空间滤波: 1) 读出一幅图像,给这幅图像分别加入椒盐噪声和高斯噪声后并与前一张图显示在同 一图像窗口中。 2) 对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形成的效果, 要求在同一窗口中显示。 3) 使用函数 imfilter 时,分别采用不同的填充方法(或边界选项,如零填 充、’replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后 的图像。 4) 运用for 循环,将加有椒盐噪声的图像进行10 次,20 次均值滤波,查看其特点, 显示均值处理后的图像(提示:利用fspecial 函数的’average’类型生成均值滤 波器)。 5) 对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处理, 要求在同一窗口中显示结果。 6) 自己设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。 2. 锐化空间滤波 1) 读出一幅图像,采用3×3 的拉普拉斯算子 w = [ 1, 1, 1; 1 – 8 1; 1, 1, 1] 对其进行滤波。 2) 编写函数w = genlaplacian(n),自动产生任一奇数尺寸n 的拉普拉斯算子,如5 ×5的拉普拉斯算子 w = [ 1 1 1 1 1 1 1 1 1 1 1 1 -24 1 1 1 1 1 1 1 1 1 1 1 1] 3) 分别采用5×5,9×9,15×15和25×25大小的拉普拉斯算子对blurry_moon.tif
昆明理工大学信息工程与自动化学院学生实验报告 (2016—2017学年第一学期) 课程名称:数字图像基础开课实验室: 2016年月日 年级、专业、班学号姓名成绩 实验项目名称图像增强(1)指导教师 教师评语 该同学是否了解实验原理: A.了解□ B.基本了解□ C.不了解□ 该同学的实验能力: A.强□ B.中等□ C.差□ 该同学的实验是否达到要求: A.达到□ B.基本达到□ C.未达到□ 实验报告是否规范: A.规范□ B.基本规范□ C.不规范□ 实验过程是否详细记录: A.详细□ B.一般□ C.没有□ 教师签名: 2016年 11月 16日 一、实验目的及内容 目的:掌握和熟悉Matlab编程环境及语言;掌握直方图统计的算法和用途。 内容: 1.调试教材P25页例 2.1输出类似教材图2.3的结果。 2.调试教材P33页例2.4,编写一个程序,分别使用imhist、bar、stem、plot四种方式 显示一幅灰度图像的直方图 3.调试教材P37页例2.5。 4.直方图均衡化的公式如下所示: 11 ()() k k j k k r j j j n s T r p r n == === ∑∑ 根据上式及课堂所讲直方图均衡化原理及方法,自己写一个Matlab函数实现对灰度图像的直方图均衡化功能(类似于Matlab提供的hist eq函数)。(提示:实现中使用Matlab函数cumsum(P38)可能会使程序简单些)。
二、要求 1.描述直方图的概念并解释直方图均衡化原理。 2.程序结构清晰,运行结果正确。 3.对于第1、2、3小题在实验报告中给出所调试的程序,及其运行结果,对第4小题 描述程序的设计、实现和结果,并对结果进行分析。
实验一 MATLAB数字图像处理基本操作 一、实验目的与要求 1.熟悉MATLAB软件的开发环境、基本操作以及图像处理工具箱,为编写图像处理程序奠定基础。 2.掌握二值、灰度和彩色图像的读、写和显示方法,以及图像的高、宽、颜色等参数的获取方法。 3.根据实验内容进行问题的简单分析和初步编码。 二、实验相关知识 1、Matlab软件Image Processing Toolbox简介 MatLab的原文是Matrix Laboratory,它包括若干个工具箱,如Communications Toolbox、Control System Toolbox、Neural Network Toolbox、Wavelet Toolbox等等,其中Image Processing Toolbox图像处理工具箱可以完成Geometric Operations、Enhancement、Color Segmentation、Image Transformation、Image Analysis、Morphological Operations等操作。在MatLab中,图像就是一个矩阵,在进行处理时当作一个变量即可,因此运算的书写十分简洁,故MatLab有草稿纸式的算法语言之称。例如:J=I+50; %为原始图像I加上一常数50,并将结果赋予变量J,其效果相当于得到一幅加亮的图像J 以此类推可以书写出减法J=I-0.5;乘法J=I*2;除法J=I/3;等等。 利用MatLab提供的imread和imwrite函数可以完成对图像文件的读写操作,它们所支持的一些常用的图像文件格式见表1-1。 MatLab Command窗口的提示符号“>>”下直接键入命令即可运行,如键入: >>clear %执行本命令将会清除内存中的全部变量 >> figure(1); %生成一个图像窗口1 >> I=imread('e:lena.bmp'); %将硬盘e:根目录上的图像文件lena.bmp的数据读入矩阵变量I中>> imshow(I); %在当前的图像窗口中显示图像矩阵I >> title('原始图像'); %在当前的图像窗口中加上标题 但为了能够对程序进行调试和重复应用,我们要求用M文件的方式完成实验中各个程序的编写。 2、数字图像的表示和类别 根据图像数据矩阵解释方法的不同,MATLAB把其处理为四类: (1) 亮度图像(Intensity images) 一幅亮度图像是一个数据矩阵,其归一化的取值表示亮度。若亮度图像的像素都是uint8类或uint16类,则它们的整数值范围分别是[0,255]和[0,65536]。若图像是double类,则像素取值就是浮点数。规定双精度型归一化亮度图像的取值范围是[0,1]。 (2) 二值图像(Binary images) 一幅二值图像是一个取值只有0和1的逻辑数组。而一幅取值只包含0和1的uint8类数组,在MATLAB 中并不认为是二值图像。使用logical函数可以把数值数组转化为逻辑数组,其语法为B=logical(A);其中A是由0和1构成的数值数组。要测试一个数组是否为逻辑数组,可以使用函数islogical(C);若C是逻辑数组,则该函数返回1;否则,返回0。 (3) 索引图像(Indexed images) 索引颜色通常也称为映射颜色,在这种模式下,颜色都是预先定义的,并且可供选用的一组颜色也很有限,索引颜色的图像最多只能显示256种颜色。一幅索引颜色图像在图像文件里定义,当打开该文件时,