实验一 作业: 1 翻转图像矩阵(转置) 2 缩小图像(按一定间隔取样) 3 切割图像某一部分 练习: 1 读入一幅图像 2 把图像进行各种翻转(90,180度) 3 缩小图像 4 切割图像 5 存储变换后的图像
实验2 主要任务: 1 理解并实现p40中例题2.13。对比两种操作的效率。 2 利用函数实现图像的gamma变换,调整gamma值观察变换效果。 3 学习函数的使用定义和使用,学习for,if语句的使用。 4 对图像像素灰度值进行对数变换,幂变换和取反变换,观察各种变换的效果。
实验3 1 掌握直方图的意义,并且能够通过Matlab函数统计图像的直方图。 2 在不适用系统提供直方图函数的条件下,统计各个灰度级像素数。 3 掌握各种图形的画法(条状图,曲线图,柱状图等的) 4 学习坐标图中标签,标题等设置(axis,title,set等命令) 5 掌握直方图变换函数的使用,调整参数,对比图像效果。 6 对变换后的图像,观察其直方图,归纳出视觉效果好的图像的直方图特性。
实验4 主要任务: 1 利用histeq对图像进行变化,观察使用整数、一维数组等情况的图像变化结果。同时对变化结果统计直方图,观察各种参数变换后输出的直方图形状 2 利用多幅图像相加,取平均值,从而减少噪声的方法对图像进行处理,观察效果(获取一个图像,然后随机在图像上增加一些噪音,在此基础上和原来图像进行均值运算) 3 不使用工具箱函数,自己定义一个滤波器,并且实现对图像的处理(需要注意的是边界如何处理),观察处理前后对图像的影响 4 调整上一步中滤波器的设置,观察图像处理结果
实验5 5 掌握滤波函数g=imfilter(f,w,filtering_mode, boundary_options, size_options)的使用,并观察相关、卷积的区别,观察各种边界填充方法的区别。利用不同的卷积核,观察它们对图像的影响。思考滤波行数的应用范围。 6 自己定义函数,并在滤波函数colfilt(f,[m,n],’sliding’,@fun,parameters)中加以使用。要求实现中值滤波,{zd0}值滤波,平均值滤波等功能。 {zd0}值滤波 7 实现p71例3.8。并理解具体含义。 【注意:在使用过程中可以往图像添加噪音,比如把某个点设定为较黑等。实验中观察这些异常的点的变化】
实验6 主要任务: 1 分别利用一元一阶微分、二阶微分对图像进行变换,观察在边缘上的不同之处。特别观察在行所在边缘,列所在边缘上影响。 2 利用拉普拉斯算子对图像进行滤波处理。调整算子的参数(至少用三种),观察不同的参数对图像滤波结果的影响。由此总结出相应的规律。 3 生成滤波掩膜w的函数:w=fspecial(‘type’,parameters)。学习使用该函数生成不同的滤波函数,利用不同的滤波函数对图像进行滤波处理,观察不同的滤波函数对图像的影响。 4 ordfilt2滤波的使用,分别实现{zd0}值滤波,中值滤波和最小值滤波。 5 medfilt2是专门的二维中值滤波器,学习使用。 |