数字图像处理实验和matlab程序代码目录实验一MATLAB数字图像处理初步 (2)实验二图像的代数运算 (6)实验三图像增强—灰度变换 (9)实验四图像增强—直方图变换 (11)实验五图像增强—空域滤波 (13)实验六图像的傅立叶变换 (17)实验七图像增强—频域滤波 (19)实验八彩色图像处理 (21)实验九图像分割 (24)实验十形态学运算 (27)实验一 MATLAB数字图像处理初步一、实验目的与要求1.熟悉及掌握在MATLAB中能够处理哪些格式图像。
2.熟练掌握在MATLAB中如何读取图像。
3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。
4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。
5.图像间如何转化。
二、实验内容及步骤1.利用imread( )函数读取一幅图像,假设其名为flower.tif,存入一个数组中;2.利用whos 命令提取该读入图像flower.tif的基本信息;3.利用imshow()函数来显示这幅图像;4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg 文件,设为flower.jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。
6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flower.bmp。
7.用imread()读入图像:Lenna.jpg 和camema.jpg;8.用imfinfo()获取图像Lenna.jpg和camema.jpg 的大小;9.用figure,imshow()分别将Lenna.jpg和camema.jpg显示出来,观察两幅图像的质量。
10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。
11.将每一步的函数执行语句拷贝下来,写入实验报告,并且将得到第3、9、10步得到的图像效果拷贝下来三、考核要点1、熟悉在MATLAB中如何读入图像、如何获取图像文件的相关信息、如何显示图像及保存图像等,熟悉相关的处理函数。
2、明确不同的图像文件格式,由于其具体的图像存储方式不同,所以文件的大小不同,因此当对同一幅图像来说,有相同的文件大小时,质量不同。
五、实验仪器与软件(1) PC计算机(2) MatLab软件/语言包括图像处理工具箱(Image Processing Toolbox)(3) 实验所需要的图片四、实验内容f=imread('C:\Users\Gateway\Desktop\ͼƬ\flower.tif');whos f;imshow(f);imfinfo C:\Users\Gateway\Desktop\ͼƬ\flower.tifans =Filename: 'C:\Users\Gateway\Desktop\图片\flower.tif' FileModDate: '24-六月-2012 18:46:53'FileSize: 392018Format: 'jpg'FormatVersion: ''Width: 1600Height: 1200BitDepth: 24ColorType: 'truecolor'FormatSignature: ''NumberOfSamples: 3CodingMethod: 'Huffman'CodingProcess: 'Sequential'Comment: {}ans = %imfinfo压缩后的信息Filename: 'flower.jpg'FileModDate: '25-六月-2012 16:07:40'FileSize: 81013Format: 'jpg'FormatVersion: ''Width: 1600Height: 1200BitDepth: 24ColorType: 'truecolor'FormatSignature: ''NumberOfSamples: 3CodingMethod: 'Huffman'CodingProcess: 'Sequential'Comment: {}f=imread('C:\Users\Gateway\Desktop\ͼƬ\lenna.jpg'); g=imread('C:\Users\Gateway\Desktop\ͼƬ\camera.jpg'); figure;imshow(f);figure,imshow(g);imfinfo C:\Users\Gateway\Desktop\ͼƬ\lenna.jpgimfinfo C:\Users\Gateway\Desktop\ͼƬ\camera.jpgans =Filename: 'C:\Users\Gateway\Desktop\图片\lenna.jpg' FileModDate: '24-六月-2012 18:44:09'FileSize: 21307Format: 'jpg'FormatVersion: ''Width: 300Height: 300BitDepth: 24ColorType: 'truecolor'FormatSignature: ''NumberOfSamples: 3CodingMethod: 'Huffman'CodingProcess: 'Sequential'Comment: {}ans =Filename: 'C:\Users\Gateway\Desktop\图片\camera.jpg' FileModDate: '24-六月-2012 18:44:32'FileSize: 18653Format: 'jpg'FormatVersion: ''Width: 256Height: 256BitDepth: 24ColorType: 'truecolor'FormatSignature: ''NumberOfSamples: 3CodingMethod: 'Huffman'CodingProcess: 'Sequential'Comment: {}f=imread('C:\Users\Gateway\Desktop\ͼƬ\lenna.jpg'); g=im2bw(f);figure,imshow(g);五、思考题(1) 简述MatLab软件的特点。
(2) MatLab软件可以支持哪些图像文件格式?doc imread(3) 说明函数imread 的用途格式以及各种格式所得到图像的性质。
(4) 为什么用I = imread(‘lena.bmp’) 命令得到的图像I 不可以进行算术运算?实验二图像的代数运算一、实验目的1.了解图像的算术运算在数字图像处理中的初步应用。
2.体会图像算术运算处理的过程和处理前后图像的变化。
二、实验步骤2.图像的减法运算3. 图像的乘法运算4.图像的除法运算三、实验内容1.图像的加法运算I=imread('C:\Users\Gateway\Desktop\ͼƬ\lenna2.jpg');J=imread('C:\Users\Gateway\Desktop\ͼƬ\camera.jpg');K = imadd(I,J);imshow(K);%lenna原图和camera尺寸大小不一样,不能相加,用ps将lenna裁剪成256*256与camera相同尺寸I=imread('C:\Users\Gateway\Desktop\ͼƬ\camera.jpg'); J=imadd(I,50);subplot(1,2,1);imshow(I);subplot(1,2,2);imshow(J);2.图像的减法运算I2=zeros(256,256);I=imread('rice.png');imshow(I)background=imopen(I,strel('disk',15));figure,imshow( background)I2=imsubtract(I,background);figure,imshow(I2)3. 图像的乘法运算I=imread('C:\Users\Gateway\Desktop\ͼƬ\camera.jpg'); J=immultiply(I,1.5);subplot(1,2,1);imshow(I);subplot(1,2,2);imshow(J);4.图像的除法运算I=imread('rice.png');J=double('rice.png');K=J*0.43+90;I2=unit8(J);Ip=imdivide(I,I2);imshow(Ip,[]);5.图像的四则代数运算I=imread('C:\Users\Gateway\Desktop\ͼƬ\lenna2.jpg');J=imread('C:\Users\Gateway\Desktop\ͼƬ\camera.jpg');Z=imlincomb(0.5,I,0.5,J,50);imshow(Z);四、思考题由图像算术运算的运算结果,思考图像减法运算在什么场合上发挥优势?从背景中提取图像实验三图像增强—灰度变换一、实验目的:1、了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学理论知识。