数字图像处理实验报告88876
数字图像处理实验报告
数字图像处理实验报告1. 引言数字图像处理是使用计算机来处理和优化图像的一种技术。
在本实验中,我们将探索几种常见的数字图像处理方法,并使用Python编程语言和相关库来实现。
2. 实验目的本实验的主要目的是:1.了解图像的基本特性和数字图像处理的基本原理;2.熟悉Python编程语言和相关图像处理库的使用;3.实现常见的图像处理算法并进行实验验证。
3. 实验方法在本实验中,我们使用Python编程语言和以下相关库来实现图像处理算法:•OpenCV:用于图像读取、显示和保存等基本操作;•Numpy:用于图像数据的处理和算术运算;•Matplotlib:用于图像的可视化和结果展示。
以下是实验涉及到的图像处理方法和步骤:1.图像读取和显示:使用OpenCV库读取图像,使用Matplotlib库显示图像;2.图像的灰度化:将彩色图像转换为灰度图像;3.图像的二值化:将灰度图像转换为黑白二值图像;4.图像的平滑处理:使用平滑滤波器对图像进行平滑处理,如均值滤波和高斯滤波;5.图像的边缘检测:使用边缘检测算法对图像进行边缘检测,如Sobel算子和Canny算子;6.图像的直方图均衡化:对灰度图像进行直方图均衡化,增强图像的对比度。
4. 实验过程和结果4.1 图像读取和显示首先,我们使用OpenCV库读取一张图像,并使用Matplotlib库显示该图像:import cv2import matplotlib.pyplot as plt# 读取图像img = cv2.imread('image.jpg')# 显示图像plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) plt.axis('off')plt.show()4.2 图像的灰度化接下来,我们将彩色图像转换为灰度图像:# 灰度化图像gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 显示灰度图像plt.imshow(gray_img, cmap='gray')plt.axis('off')plt.show()4.3 图像的二值化然后,我们将灰度图像转换为黑白二值图像:# 二值化图像_, binary_img = cv2.threshold(gray_img, 128, 255, cv2.THRESH_BINARY)# 显示二值图像plt.imshow(binary_img, cmap='gray')plt.axis('off')plt.show()4.4 图像的平滑处理接下来,我们使用平滑滤波器对图像进行平滑处理,例如使用5x5的均值滤波器和高斯滤波器:# 均值滤波mean_img = cv2.blur(img, (5, 5))# 高斯滤波gaussian_img = cv2.GaussianBlur(img, (5, 5), 0) # 显示平滑处理后的图像plt.figure(figsize=(10, 5))plt.subplot(121)plt.imshow(cv2.cvtColor(mean_img, cv2.COLOR_BGR2R GB))plt.title('Mean Filter')plt.axis('off')plt.subplot(122)plt.imshow(cv2.cvtColor(gaussian_img, cv2.COLOR_B GR2RGB))plt.title('Gaussian Filter')plt.axis('off')plt.show()4.5 图像的边缘检测然后,我们使用边缘检测算法对图像进行边缘检测,例如使用Sobel算子和Canny算子:# 边缘检测sobel_img = cv2.Sobel(gray_img, cv2.CV_8U, 1, 1, ksize=3)canny_img = cv2.Canny(gray_img, 50, 150)# 显示边缘检测结果plt.figure(figsize=(10, 5))plt.subplot(121)plt.imshow(sobel_img, cmap='gray')plt.title('Sobel Operator')plt.axis('off')plt.subplot(122)plt.imshow(canny_img, cmap='gray')plt.title('Canny Operator')plt.axis('off')plt.show()4.6 图像的直方图均衡化最后,我们对灰度图像进行直方图均衡化,以增强图像的对比度:# 直方图均衡化equalized_img = cv2.equalizeHist(gray_img)# 显示直方图均衡化结果plt.imshow(equalized_img, cmap='gray')plt.axis('off')plt.show()5. 实验总结通过本实验,我们熟悉了数字图像处理的基本方法和步骤,并使用Python编程语言和相关库实现了图像的读取、显示、灰度化、二值化、平滑处理、边缘检测和直方图均衡化等操作。
(完整word版)数字图像处理 实验报告(完整版)
数字图像处理实验一 MATLAB数字图像处理初步一、显示图像1.利用imread( )函数读取一幅图像,假设其名为lily.tif,存入一个数组中;2.利用whos 命令提取该读入图像flower.tif的基本信息;3.利用imshow()函数来显示这幅图像;实验结果如下图:源代码:>>I=imread('lily.tif')>> whos I>> imshow(I)二、压缩图像4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为lily.jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。
6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flily.bmp。
7.用imread()读入图像Sunset.jpg和Winter.jpg;8.用imfinfo()获取图像Sunset.jpg和Winter.jpg的大小;9.用figure,imshow()分别将Sunset.jpg和Winter.jpg显示出来,观察两幅图像的质量。
其中9的实验结果如下图:源代码:4~6(接上面两个) >>I=imread('lily.tif')>> imfinfo 'lily.tif';>> imwrite(I,'lily.jpg','quality',20);>> imwrite(I,'lily.bmp');7~9 >>I=imread('Sunset.jpg');>>J=imread('Winter.jpg')>>imfinfo 'Sunset.jpg'>> imfinfo 'Winter.jpg'>>figure(1),imshow('Sunset.jpg')>>figure(2),imshow('Winter.jpg')三、二值化图像10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。
数字图像处理实验报告
数字图像处理实验报告数字图像处理实验报告(一)实验目的1.理解数字图像处理的基本概念与原理。
2.掌握数字图像处理的基本方法。
3.掌握常用数字滤波器的性质和使用方法。
4.熟练应用数字图像处理软件进行图像处理。
实验器材计算机、MATLAB软件实验内容1.图像的读写与显示首先,我们需要在MATLAB中读入一幅图像,并进行显示。
% 导入图像文件I = imread('myimage.jpg');% 显示图像imshow(I);2.图像的分辨率与色彩空间转换数字图像处理中的一个重要概念是图像的分辨率,通常用像素数量表示。
图像的分辨率越高,代表着图像包含更多的像素,从而更具细节和清晰度。
在数字图像处理中,常常需要将一幅图像从一种色彩空间转换为另一种色彩空间。
RGB色彩空间是最常见的图像色彩空间之一,并且常常作为其他色彩空间的基础。
% 转换图像色彩空间J = rgb2gray(I);% 显示转换后的图像imshow(J);3.图像的增强与滤波图像的增强通常指的是对图像的对比度、亮度和清晰度等方面进行调整,以改善图像的质量和可读性。
数字图像处理中的滤波是一种常用的图像增强方法。
滤波器是一个能够对图像进行局部操作的矩阵,它能够提取或抑制特定的图像特征。
% 对图像进行平滑滤波K = imgaussfilt(J, 1);% 显示滤波后的图像imshow(K);4.数字图像处理在实际应用中的例子数字图像处理在很多实际应用中被广泛应用。
这些应用包括医疗成像、计算机视觉、人脸识别、安防监控等。
下面是数字图像处理在人脸识别应用中的一个简单例子。
% 导入图像文件I = imread('face.jpg');% 进行人脸检测faceDetector = vision.CascadeObjectDetector;bbox = step(faceDetector, I);% 在图像上标记人脸位置IFaces = insertObjectAnnotation(I, 'rectangle', bbox, 'Face');imshow(IFaces);实验结论通过本次实验,我已经能够理解数字图像处理的基本概念与原理,掌握数字图像处理的基本方法,熟练应用数字图像处理软件进行图像处理。
数字图像处理实验报告
数字图像处理实验报告数字图像处理实验报告1一. 实验内容:主要是图像的几何变换的编程实现,具体包括图像的读取、改写,图像平移,图像的镜像,图像的转置,比例缩放,旋转变换等.具体要求如下:1.编程实现图像平移,要求平移后的图像大小不变;2.编程实现图像的镜像;3.编程实现图像的转置;4.编程实现图像的比例缩放,要求分别用双线性插值和最近邻插值两种方法来实现,并比较两种方法的缩放效果;5.编程实现以任意角度对图像进行旋转变换,要求分别用双线性插值和最近邻插值两种方法来实现,并比较两种方法的旋转效果.二.实验目的和意义:本实验的目的是使学生熟悉并掌握图像处理编程环境,掌握图像平移、镜像、转置和旋转等几何变换的方法,并能通过程序设计实现图像文件的读、写操作,及图像平移、镜像、转置和旋转等几何变换的程序实现.三.实验原理与主要框架:3.1 实验所用编程环境:Visual C++(简称VC)是微软公司提供的基于C/C++的应用程序集成开发工具.VC拥有丰富的功能和大量的扩展库,使用它能有效的创建高性能的Windows应用程序和Web应用程序.VC除了提供高效的C/C++编译器外,还提供了大量的可重用类和组件,包括著名的微软基础类库(MFC)和活动模板类库(ATL),因此它是软件开发人员不可多得的开发工具.VC丰富的功能和大量的扩展库,类的重用特性以及它对函数库、DLL库的支持能使程序更好的模块化,并且通过向导程序大大简化了库资源的使用和应用程序的开发,正由于VC具有明显的优势,因而我选择了它来作为数字图像几何变换的开发工具.在本程序的开发过程中,VC的核心知识、消息映射机制、对话框控件编程等都得到了生动的体现和灵活的应用.3.2 实验处理的对象:256色的BMP(BIT MAP )格式图像BMP(BIT MAP )位图的文件结构:具体组成图: BITMAPFILEHEADER位图文件头(只用于BMP文件) bfType=”BM” bfSize bfReserved1bfReserved2bfOffBitsbiSizebiWidthbiHeightbiPlanesbiBitCountbiCompressionbiSizeImagebiXPelsPerMeterbiYPelsPerMeterbiClrUsedbiClrImportant单色DIB有2个表项16色DIB有16个表项或更少256色DIB有256个表项或更少真彩色DIB没有调色板每个表项长度为4字节(32位)像素按照每行每列的顺序排列每一行的字节数必须是4的整数倍BITMAPINFOHEADER 位图信息头 Palette 调色板 DIB Pixels DIB图像数据1. BMP文件组成BMP文件由文件头、位图信息头、颜色信息和图形数据四部分组成.2. BMP文件头BMP文件头数据结构含有BMP文件的类型(必须为BMP)、文件大小(以字节为单位)、位图文件保留字(必须为0)和位图起始位置(以相对于位图文件头的偏移量表示)等信息.3. 位图信息头BMP位图信息头数据用于说明位图的尺寸(宽度,高度等都是以像素为单位,大小以字节为单位, 水平和垂直分辨率以每米像素数为单位) ,目标设备的级别,每个像素所需的位数, 位图压缩类型(必须是 0)等信息.4. 颜色表颜色表用于说明位图中的颜色,它有若干个表项,每一个表项是一个RGBQUAD类型的结构,定义一种颜色.具体包含蓝色、红色、绿色的亮度(值范围为0-255)位图信息头和颜色表组成位图信息5. 位图数据位图数据记录了位图的每一个像素值,记录顺序是在扫描行内是从左到右,扫描行之间是从下到上.Windows规定一个扫描行所占的字节数必须是4的倍数(即以long为单位),不足的以0填充.3.3 BMP(BIT MAP )位图的显示:①一般显示方法:1. 申请内存空间用于存放位图文件2. 位图文件读入所申请内存空间中3. 在函数中用创建显示用位图, 用函数创建兼容DC,用函数选择显示删除位图但以上方法的缺点是: 1)显示速度慢; 2) 内存占用大; 3) 位图在缩小显示时图形失真大,(可通过安装字体平滑软件来解决); 4) 在低颜色位数的设备上(如256显示模式)显示高颜色位数的图形(如真彩色)图形失真严重.②BMP位图缩放显示 :用视频函数来显示位图,内存占用少,速度快,而且还可以对图形进行淡化(Dithering )处理.淡化处理是一种图形算法,可以用来在一个支持比图像所用颜色要少的设备上显示彩色图像.BMP位图显示方法如下:1. 打开视频函数,一般放在在构造函数中2. 申请内存空间用于存放位图文件3. 位图文件读入所申请内存空间中4. 在函数中显示位图5. 关闭视频函数 ,一般放在在析构函数中以上方法的优点是: 1)显示速度快; 2) 内存占用少; 3) 缩放显示时图形失真小,4) 在低颜色位数的设备上显示高颜色位数的图形图形时失真小; 5) 通过直接处理位图数据,可以制作简单动画.3.4 程序中用到的访问函数Windows支持一些重要的DIB访问函数,但是这些函数都还没有被封装到MFC中,这些函数主要有:1. SetDIBitsToDevice函数:该函数可以直接在显示器或打印机上显示DIB. 在显示时不进行缩放处理.2. StretchDIBits函数:该函数可以缩放显示DIB于显示器和打印机上.3. GetDIBits函数:还函数利用申请到的内存,由GDI位图来构造DIB.通过该函数,可以对DIB的格式进行控制,可以指定每个像素颜色的位数,而且可以指定是否进行压缩.4. CreateDIBitmap函数:利用该函数可以从DIB出发来创建GDI 位图.5. CreateDIBSection函数:该函数能创建一种特殊的DIB,称为DIB项,然后返回一个GDI位图句柄.6. LoadImage函数:该函数可以直接从磁盘文件中读入一个位图,并返回一个DIB句柄.7. DrawDibDraw函数:Windows提供了窗口视频(VFW)组件,Visual C++支持该组件.VFW中的DrawDibDraw函数是一个可以替代StretchDIBits 的函数.它的最主要的优点是可以使用抖动颜色,并且提高显示DIB的速度,缺点是必须将VFW代码连接到进程中.3.5 图像的几何变换图像的几何变换,通常包括图像的平移、图像的镜像变换、图像的转置、图像的缩放和图像的旋转等.数字图像处理实验报告2一、实验的目的和意义实验目的:本实验内容旨在让学生通过用VC等高级语言编写数字图像处理的一些基本算法程序,来巩固和掌握图像处理技术的基本技能,提高实际动手能力,并通过实际编程了解图像处理软件的实现的基本原理。
数字图像处理实验报告
数字图像处理实验报告班级:学号:姓名:实验一DTF变换与余弦变换一、实验内容:用Matlab对某幅图像进行图像的离散付里叶变换、离散余弦变换二、实验目的:1. 掌握傅立叶变换2. 理解频域变换的通用公式3. 掌握离散余弦变换三、实验原理:f=imread(C:\);F=fft2(f);F=fft2(f,P,Q);S=abs(F);Fc=fftshift(F);S2=log(1+abs(Fc));F=ifftshift(Fc);F=ifft2(F);F=real(ifft2(F));dct2f()/idct2()imshow四、源程序:%傅里叶变换clear all;clc;x=imread('C:\Users\K\Desktop\matlab experiment\windows.jpg');y=imread('C:\Users\K\Desktop\matlab experiment\windows1.jpg');subplot(3,2,1);imshow(x);title('x 原图');subplot(3,2,2);imshow(y);title('y 原图');% 傅里叶变换qf=fft2(double(x));lf=fft2(double(y));%取幅度和相位qf1=abs(qf);qf2=angle(qf);lf1=abs(lf);lf2=angle(lf);%进行重建qfr=qf1.*cos(qf2)+qf1.*sin(qf2).*i;lfr=lf1.*cos(lf2)+lf1.*sin(lf2).*i;xr=uint8(abs(ifft2(qfr)));yr=uint8(abs(ifft2(lfr)));subplot(3,2,3);imshow(xr,[]);title('x幅谱与相谱重建'); subplot(3,2,4);imshow(yr,[]);title('y幅谱与相谱重建'); qfrm=qf1.*cos(lf2)+qf1.*sin(lf2).*i;lfrm=lf1.*cos(qf2)+lf1.*sin(qf2).*i;xr1=uint8(abs(ifft2(qfrm)));yr1=uint8(abs(ifft2(lfrm)));subplot(3,2,5);imshow(xr1,[]);title('x幅谱与y相谱重建'); subplot(3,2,6);imshow(yr1,[]);title('y幅谱与x相谱重建');%余弦变换x1=rgb2gray(x);y1=rgb2gray(y);figure(2);subplot(3,2,1);imshow(x1);title('x 原图');subplot(3,2,2);imshow(y1);title('y 原图');dctxchange=dct2(x1);dctychange=dct2(y1);subplot(3,2,3);imshow(log(abs(dctxchange)),[]);title('x图余弦变换幅频');subplot(3,2,4);imshow(log(abs(dctychange)),[]);title('y图余弦变换幅频');subplot(3,2,5);imshow(log(angle(dctxchange)),[]);title('x图余弦变换相频');subplot(3,2,6);imshow(log(angle(dctychange)),[]);title('y图余弦变换相频');%重建dctxchange1=abs(dctxchange);dctxchange2=angle(dctxchange);dctychange1=abs(dctychange);dctychange2=angle(dctychange);figure(2)dctxchanger=dctxchange1.*cos(dctxchange2)+dctxchange1.*sin(dctxch ange2).*i;dctychanger=dctychange1.*cos(dctychange2)+dctychange1.*sin(dctych ange2).*i;dctxchanger=uint8(abs(idct2(dctxchanger)));dctychanger=uint8(abs(idct2(dctychanger)));subplot(221);imshow(dctxchanger,[]);title('x幅谱与相谱重建');subplot(222);imshow(dctychanger,[]);title('y幅谱与相谱重建');dctxchanger=dctxchange1.*cos(dctychange2)+dctxchange1.*sin(dctych ange2).*i;dctychanger=dctychange1.*cos(dctxchange2)+dctychange1.*sin(dctxchange2).*i;dctxchanger1=uint8(abs(idct2(dctxchanger)));dctychanger1=uint8(abs(idct2(dctychanger)));subplot(223);imshow(dctxchanger1,[]);title('x幅谱与y相谱重建');subplot(224);imshow(dctychanger1,[]);title('y幅谱与x相谱重建');五、实验结果:实验二图像点操作一、实验内容:用Matlab对某幅图像进行反变换、对数变换、指数变换、分段线性变换二、实验目的:理解并掌握图像点运算处理三、实验原理:为了突出感兴趣的目标或灰度区间 相对抑制那些不感兴趣的目标或灰度区间常采用分段线性变换法。
数字图像处理实验报告
数字图像处理上机(一)1.灰度切割变换lena.bmp(1)程序:I=imread('lena.jpg');figure; imshow(I);I=double(I)[M,N]=size(I);for i=1:Mfor j=1:Nif I(i,j)<=50I(i,j)=40;elseif I(i,j)<=180I(i,j)=220;elseI(i,j)=40;endendendI=uint8(I);figure;imshow(I);(2)Matleb图像:(变换前) (变换后):2.彩色图像转换成灰度图象(1)程序:RGB=imread('greens.jpg'); %装入真彩图像figure(1);imshow(RGB); %显示彩色图像GRAY=rgb2gray(RGB); %将真彩图像转换为灰度图像figure(2);imshow(GRAY); %显示灰度图像(2)Matleb图像:3. 图像求反(1)程序:I=imread('lena.jpg');Imshow(I)I=double(I)I=256-1-II=uint8(I)figureImshow(I)(2)Matleb图像:(变换前) (变换后)4.线性灰度变换(1)程序:I=imread('pout.tif');imshow(I);I=double(I);[M,N]=size(I); %线性灰度变换for i=1:Mfor j=1:Nif I(i,j)<=30I(i,j)=I(i,j);elseif I(i,j)<=150I(i,j)=(200-30)/(150-30)*(I(i,j)-30)+30;elseI(i,j)=(255-200)/(255-150)*(I(i,j)-150)+200;endendendfigure(2);imshow(uint8(I));(2)Matleb图像:(变换前) (变换后)5.原图像灰度取值范围为[0,512],现将图像的灰度压缩到[0,256],使用对数变换完成。
数字图像处理实验报告(五个实验全)
数字图像处理实验报告(五个实验全)实验⼀ Matlab图像⼯具的使⽤1、读图I=imread('lena.jpg');imshow(I);2、读⼊⼀幅RGB图像,变换为灰度图像和⼆值图像,并在同⼀个窗⼝内分成三个⼦窗⼝来分别显⽰RGB图像和灰度图像。
a=imread('lena.jpg')i = rgb2gray(a)I = im2bw(a,0.5)subplot(3,1,1);imshow(a);subplot(3,1,2);imshow(i);subplot(3,1,3);imshow(I);原图像灰度图像⼆值图像实验⼆图像变换1、对⼀幅图像进⾏平移,显⽰原始图像与处理后图像,分别对其进⾏傅⾥叶变换,显⽰变换后结果,分析原图的傅⾥叶谱与平移后傅⾥叶频谱的对应关系。
s=imread('beauty.jpg');i=rgb2gray(s)i=double(i)j=fft2(i);k=fftshift(j); 原图像原图的傅⾥叶频谱l=log(abs(k));m=fftshift(j);RR=real(m);II=imag(m);A=sqrt(RR.^2+II.^2);A=(A-min(min(A)))/(max(max(A)))*255;b=circshift(s,[800 450]);b=rgb2gray(b)b=double(b) 平移后的图像平移后的傅⾥叶频谱c=fft2(b);e=fftshift(c);l=log(abs(e));f=fftshift(c);WW=real(f);ZZ=imag(f);B=sqrt(WW.^2+ZZ.^2);B=(B-min(min(B)))/(max(max(B)))*255;subplot(2,2,1);imshow(s);subplot(2,2,2);imshow(uint8(b));subplot(2,2,3);imshow(A);subplot(2,2,4);imshow(B);2、对⼀幅图像进⾏旋转,显⽰原始图像与处理后图像,分别对其进⾏傅⾥叶变换,显⽰变换后结果,分析原图的傅⾥叶谱与旋转后傅⾥叶频谱的对应关系。
数字图像处理实验报告
数字图像处理实验报告目录1.数字图像处理简介2.实验目的3.实验内容4.实验结果及代码展示5.算法综述6.M atlab优势7.总结8.存在问题一、数字图像处理简介图像处理,是对图像进行分析、加工、和处理,使其满足视觉、心理以及其他要求的技术。
图像处理是信号处理在图像域上的一个应用。
目前大多数的图像是以数字形式存储,因而图像处理很多情况下指数字图像处理。
此外,基于光学理论的处理方法依然占有重要的地位。
图像处理是信号处理的子类,另外与计算机科学、人工智能等领域也有密切的关系。
传统的一维信号处理的方法和概念很多仍然可以直接应用在图像处理上,比如降噪、量化等。
然而,图像属于二维信号,和一维信号相比,它有自己特殊的一面,处理的方式和角度也有所不同。
二、实验目的巩固所学知识,提高所学能力三、实验内容利用matlab的GUI程序设计一个简单的图像处理程序,并含有如下基本功能:1. 读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题2. 对给定图像进行旋转3.对给定的图像添加噪声(椒盐噪声、高斯噪声)四、实验结果及代码展示1.软件设计界面2.各模块功能展示以及程序代码(1)读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题效果展示:代码:a = imread('C:\Documents and Settings\Administrator\桌面\数字图像\舞美.JPG');i = rgb2gray(a);I = im2bw(a,0.5);subplot(3,1,1);imshow(a);title('源图像')subplot(3,1,2);imshow(i);title('灰度图像')subplot(3,1,3);imshow(I);title('二值图像')(2)图像旋转原图效果展示:代码:clc;clear all;close all;Img=imread('D:\My Documents\My Pictures\5.JPG'); Img=double(Img);[h w]=size(Img);alpha=pi/4;wnew=w*cos(alpha)+h*sin(alpha);hnew=w*sin(alpha)+h*cos(alpha);wnew=ceil(wnew);hnew=ceil(hnew); u0=w*sin(alpha);T=[cos(alpha),sin(alpha);-sin(alpha),cos(alpha)]; Imgnew2=zeros(hnew,wnew);Imgnew1=zeros(hnew,wnew); for u=1:hnewfor v=1:wnewtem=T*([u;v]-[u0;0]);x=tem(1);y=tem(2);if x>=1&&x<=h&&y>=1&&y<=wx_low=floor(x);x_up=ceil(x);y_low=floor(y);y_up=ceil(y);if (x-x_low)<=(x_up-x)x=x_low;elsex=x_up;endif (y-y_low)<=(y_up-y)y=y_low;elsey=y_up;endp1=Img(x_low,y_low);p2=Img(x_up,y_low);p3=Img(x_low,y_low);p4=Img(x_up,y_up);s=x-x_low;t=y-y_low;Imgnew1(u,v)=Img(x,y);Imgnew2(u,v)=(1-s)*(1-t)*p1+(1-s)*t*p3+(1-t)*s*p2+s*t*p4;endendendfigure;imshow(Imgnew2,[]);B=imrotate(Img,alpha/pi*180);figure;imshow(B,[]);(3)对给定的图像添加噪声(斑点噪声、高斯噪声)效果展示:代码:I= imread('D:\My Documents\My Pictures\5.JPG');figure,subplot(211);imshow(I);title('原图');J1=imnoise(I,'gaussian',0,0.02);subplot(223);imshow(J);title('添加高斯噪声');J=imnoise(I,'speckle',0.04);subplot(224);imshow(J);title('添加斑点噪声');五、算法综述灰度图像:一幅完整的图像,是由红色、绿色、蓝色三个通道组成的。
数字图像处理实验报告
数字图像处理实验报告引言数字图像处理是一门研究如何对图像进行数字化处理的学科,它的应用广泛,涵盖了图像的获取、增强、压缩、分割等多个方面。
本次实验旨在探索数字图像处理的基本原理和常用技术,并通过实践操作加深对数字图像处理的理解。
实验目的1.学习掌握数字图像处理的基本原理;2.熟悉常用的数字图像处理工具和方法;3.实践应用数字图像处理技术解决实际问题。
实验环境在本次实验中,我们使用了以下环境和工具:- 操作系统:Windows 10 - 编程语言:Python - 图像处理库:OpenCV实验步骤步骤一:图像获取与显示首先,我们需要获取一张待处理的图像,并对其进行显示。
在Python中,我们可以使用OpenCV库来实现图像的读取和显示。
以下是示例代码:import cv2# 读取图像image = cv2.imread('image.jpg')# 显示图像cv2.imshow('Image', image)cv2.waitKey(0)cv2.destroyAllWindows()步骤二:图像增强图像增强是数字图像处理中常用的技术之一,旨在改善图像的质量和可视化效果。
常见的图像增强技术包括灰度转换、直方图均衡化、滤波器等。
以下是示例代码:import cv2# 读取图像image = cv2.imread('image.jpg')# 灰度转换gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GR AY)# 直方图均衡化equalized_image = cv2.equalizeHist(gray_image)# 高斯滤波器blurred_image = cv2.GaussianBlur(equalized_image, (5, 5), 0)# 边缘增强enhanced_image = cv2.Canny(blurred_image, 100, 20 0)# 显示图像cv2.imshow('Enhanced Image', enhanced_image)cv2.waitKey(0)cv2.destroyAllWindows()步骤三:图像压缩图像压缩是数字图像处理中的重要话题,旨在减少图像的存储空间和传输带宽。
数字图像处理 实验报告(完整版).doc
数字图像处理实验一 MATLAB数字图像处理初步一、显示图像1.利用imread( )函数读取一幅图像,假设其名为lily.tif,存入一个数组中;2.利用whos 命令提取该读入图像flower.tif的基本信息;3.利用imshow()函数来显示这幅图像;实验结果如下图:源代码:>>I=imread('lily.tif')>> whos I>> imshow(I)二、压缩图像4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为lily.jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。
6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flily.bmp。
7.用imread()读入图像Sunset.jpg和Winter.jpg;8.用imfinfo()获取图像Sunset.jpg和Winter.jpg的大小;9.用figure,imshow()分别将Sunset.jpg和Winter.jpg显示出来,观察两幅图像的质量。
其中9的实验结果如下图:源代码:4~6(接上面两个) >>I=imread('lily.tif')>> imfinfo 'lily.tif';>> imwrite(I,'lily.jpg','quality',20);>> imwrite(I,'lily.bmp');7~9 >>I=imread('Sunset.jpg');>>J=imread('Winter.jpg')>>imfinfo 'Sunset.jpg'>> imfinfo 'Winter.jpg'>>figure(1),imshow('Sunset.jpg')>>figure(2),imshow('Winter.jpg')三、二值化图像10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。
数字图像处理实验报告
数字图像处理实验报告图像处理课程的目标是培养学生的试验综合素质与能力。
使学生通过实践,理解相关理论学问,将各类学问信息进行新的组合,制造出新的方法和新的思路,提高学生的科学试验与实际动手操作能力[1]。
从影像科筛选有价值的图像,建成影像学数字化试验教育平台,系统运行正常;具备图像上传、图像管理、图像检索与扫瞄、试验报告提交、老师批阅等功能;能满意使用要求[2]。
1.试验内容设计思路1.1项目建设内容和方法数字图像处理的内容:完整的数字图像处理大体上分为图像信息的猎取,存储,传送,处理,输出,和显示几个方面。
数字图像信息的猎取主要是把一幅图像转换成适合输入计算机和数字设备的数字信号,包括摄取图像,光、电转换及数字化。
数字图像信息的存储,数字图像信息的突出特点是数据量巨大,为了解决海量存储问题,数字图像的存储主要研究图像压缩,图像格式及图像数据库技术。
数字图像信息的传送数字图像信息的传送可分为系统内部传送与远距离传送[4]数字图像信息处理包括图像变换,图像增加,图像复原,彩色与多光谱处理图像重建,小波变换,图像编码,形态学,目标表示与描述。
数字图像输出和显示,最终目的是为人和机器供应一幅便于解释和识别的图像,数字图像的输出和显示也是数字图像处理的重要内容之一。
1.2数字图像处理的方法大致可以分为两大类,既空域法和频域法空域法:是把图像看做平面中各个像素组成的集合,然后直接对一维和二维函数进行相应处理,依据新图像生成方法的不同,空域处理法可为点处理法,区处理法,叠代处理法,跟踪处理法,位移不变与位移可变处理法。
点处理法的优点,点处理的典型用途a)灰度处理b)图像二值处理点处理方法的优点a)可用LUT方法快速实现b)节省存储空间。
区处理法,邻域处理法。
它依据输入图像的小邻域的像素值,按某些函数得到输出像素。
区处理法主要用于图象平滑和图像的锐化。
叠代处理法:叠代就是反复进行某些处理运算,图像叠代处理也是如此,拉普拉斯算子或平滑处理的结果是物体轮廓,该图像轮廓边缘太宽或粗细不一,要经过多次叠代把它处理成单像素轮廓——图像细化。
数字图像处理实验报告
数字图像处理实验报告一、引言数字图像处理是一门涉及图像获取、图像处理和图像分析的重要学科,广泛应用于计算机科学、电子工程、通信技术等领域。
本报告旨在介绍并总结我所进行的数字图像处理实验,讨论实验的目的、方法、结果和分析。
二、实验目的通过本次实验,旨在掌握和理解数字图像处理的基本原理和常见技术,包括灰度变换、空间域滤波、频域滤波等,以及层次分割、边缘检测和形态学处理等高级应用技术。
三、实验方法1. 寻找合适的图像在实验中,我选用了一张自然风景图像作为处理对象。
这张图像包含丰富的纹理和颜色信息,适合用于多种图像处理方法的验证和比较。
2. 灰度变换灰度变换是数字图像处理中常见的基础操作,可以通过对图像的像素灰度值进行线性或非线性变换,来调整图像的对比度、亮度等特征。
在实验中,我利用线性灰度变换方法将原始彩色图像转换为灰度图像,并进行对比度的调整,观察处理结果的变化。
3. 空间域滤波空间域滤波是一种基于像素邻域的图像处理方法,常用于图像去噪、边缘增强等应用。
我使用了平滑滤波和锐化滤波两种方法,并针对不同的滤波算子和参数进行了实验和比较,评估其对图像细节和边缘保留的影响。
4. 频域滤波频域滤波是一种基于图像的频谱特征的图像处理方法,广泛应用于图像增强、去噪和特征提取等方面。
我利用傅里叶变换将图像从空间域转换到频域,采用理想低通滤波器和巴特沃斯低通滤波器进行图像的模糊处理,并进行了实验对比和分析。
5. 高级应用技术在实验中,我还研究了数字图像处理中的一些高级应用技术,包括层次分割、边缘检测和形态学处理。
通过应用不同的算法和参数,我实现了图像区域分割、提取图像边缘和形态学形状变换等效果,评估处理结果的准确性和稳定性。
四、实验结果与分析通过对以上实验方法的实施,我获得了一系列处理后的图像,并进行了结果的比较和分析。
在灰度变换实验中,我发现线性变换对图像的对比度有较大影响,但对图像的细节变化不敏感;在空间域滤波实验中,平滑滤波可以有效降噪,但会导致图像细节损失,而锐化滤波可以增强图像的边缘效果,但也容易引入噪声;在频域滤波实验中,理想低通滤波对图像的模糊效果明显,而巴特沃斯低通滤波器可以在一定程度上保留图像的高频细节信息;在高级应用技术实验中,边缘检测和形态学处理对提取图像边缘和形状变换非常有效,但参数的选择会对结果产生较大影响。
数字图像处理 实验报告(完整版)..
数字图像处理实验一 MATLAB数字图像处理初步一、显示图像1.利用imread( )函数读取一幅图像,假设其名为lily.tif,存入一个数组中;2.利用whos 命令提取该读入图像flower.tif的基本信息;3.利用imshow()函数来显示这幅图像;实验结果如下图:源代码:>>I=imread('lily.tif')>> whos I>> imshow(I)二、压缩图像4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为lily.jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。
6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flily.bmp。
7.用imread()读入图像Sunset.jpg和Winter.jpg;8.用imfinfo()获取图像Sunset.jpg和Winter.jpg的大小;9.用figure,imshow()分别将Sunset.jpg和Winter.jpg显示出来,观察两幅图像的质量。
其中9的实验结果如下图:源代码:4~6(接上面两个) >>I=imread('lily.tif')>> imfinfo 'lily.tif';>> imwrite(I,'lily.jpg','quality',20);>> imwrite(I,'lily.bmp');7~9 >>I=imread('Sunset.jpg');>>J=imread('Winter.jpg')>>imfinfo 'Sunset.jpg'>> imfinfo 'Winter.jpg'>>figure(1),imshow('Sunset.jpg')>>figure(2),imshow('Winter.jpg')三、二值化图像10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。
数字图像处理实验报告(完整版)
数字图像处理实验一 MATLAB数字图像处理初步一、显示图像1.利用imread( )函数读取一幅图像,假设其名为lily.tif,存入一个数组中;2.利用whos 命令提取该读入图像flower.tif的基本信息;3.利用imshow()函数来显示这幅图像;实验结果如下图:源代码:>>I=imread('lily.tif')>> whos I>> imshow(I)二、压缩图像4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为lily.jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。
6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flily.bmp。
7.用imread()读入图像Sunset.jpg和Winter.jpg;8.用imfinfo()获取图像Sunset.jpg和Winter.jpg的大小;9.用figure,imshow()分别将Sunset.jpg和Winter.jpg显示出来,观察两幅图像的质量。
其中9的实验结果如下图:源代码:4~6(接上面两个) >>I=imread('lily.tif')>> imfinfo 'lily.tif';>> imwrite(I,'lily.jpg','quality',20);>> imwrite(I,'lily.bmp');7~9 >>I=imread('Sunset.jpg');>>J=imread('Winter.jpg')>>imfinfo 'Sunset.jpg'>> imfinfo 'Winter.jpg'>>figure(1),imshow('Sunset.jpg')>>figure(2),imshow('Winter.jpg')三、二值化图像10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。
数字图像处理实验报告
《数字图像处理》实验报告姓名:学号:学院:信息工程学院专业:电子信息工程年级班别:指导老师:图像的空间域平滑和锐化一、实验目的(1)掌握图像模板运算的流程。
(2)进一步理解图像的平滑、锐化原理。
(3)了解图像平滑、锐化的效果和作用。
二、实验内容和要求编程分别实现图像的平滑和锐化。
三、实验主要仪器设备和材料计算机,VC++6.0四、实验原理1、图像平滑图像平滑主要是为了消除噪声。
噪声并不限于人眼所能看的见的失真和变形,有些噪声只有在进行图像处理时才可以发现。
图像中的噪声往往和信号交织在一起,尤其是乘性噪声,如果平滑不当,就会使图像本身的细节如边界轮廓、线条等变的模糊不清,如何既平滑掉噪声有尽量保持图像细节,是图像平滑主要研究的任务。
一般来说,图像的能量主要集中在其低频部分,噪声所在的频段主要在高频段,同时系统中的边缘信息也主要集中在其高频部分,因此,如何去掉高频干扰又同时保持边缘信息,是我们研究的内容。
为了去除噪声,有必要对图像进行平滑,可以采用低通滤波的方法去除高频干扰。
图像平滑包括空域法和频域法两大类,在空域法中,图像平滑的常用方法是采用均值滤波或中值滤波。
下面主要论述一下均值滤波。
对于均值滤波,它是用一个有奇数点的滑动窗口在图像上滑动,将窗口中心点对应的图像像素点的灰度值用窗口内的各个点的灰度值的平均值代替,如果滑动窗口规定了在取均值过程中窗口各个像素点所占的权重,也就是各个像素点的系数,这时候就称为加权均值滤波。
2、图象锐化图像平滑往往使图像中的边界、轮廓变的模糊,为了减少这类不利效果的影响,这就需要利用图像锐化技术,使图像的边缘变的清晰。
图像锐化处理的目的是为了使图像的边缘、轮廓线以及图像的细节变的清晰,经过平滑的图像变得模糊的根本原因是因为图像受到了平均或积分运算,因此可以对其进行逆运算(如微分运算)就可以使图像变的清晰。
从频率域来考虑,图像模糊的实质是因为其高频分量被衰减,因此可以用高通滤波器来使图像清晰。
数字图像处理实验报告
数字图像处理实验报告数字图像处理实验报告一、引言数字图像处理是计算机科学与工程领域中的一个重要研究方向。
通过使用数字化技术,对图像进行采集、传输、存储和处理,可以实现对图像的增强、恢复、分析和识别等功能。
本实验旨在通过对数字图像处理算法的实践应用,探索图像处理的原理和方法。
二、实验目的本实验的主要目的是掌握数字图像处理的基本概念和算法,并通过实际操作加深对图像处理原理的理解。
具体目标包括:1. 学习使用图像处理软件,如Photoshop或Matlab等。
2. 掌握图像增强的方法,如直方图均衡化、滤波和锐化等。
3. 理解图像压缩和编码的原理,如JPEG和PNG等格式。
4. 了解图像分割和边缘检测的基本算法,如阈值分割和Canny边缘检测等。
三、实验过程1. 图像增强图像增强是指通过一系列算法和技术,改善图像的质量和视觉效果。
在实验中,我们可以使用直方图均衡化算法来增强图像的对比度和亮度。
该算法通过将图像的像素值映射到一个更大的范围内,使得图像的亮度分布更加均匀。
2. 图像滤波图像滤波是指通过一系列滤波器对图像进行处理,以实现去噪、平滑和锐化等效果。
在实验中,我们可以使用平滑滤波器(如均值滤波器和高斯滤波器)来去除图像中的噪声。
同时,我们还可以使用锐化滤波器(如拉普拉斯滤波器和Sobel滤波器)来增强图像的边缘和细节。
3. 图像压缩和编码图像压缩是指通过减少图像的数据量来减小图像文件的大小,从而实现存储和传输的效率提升。
在实验中,我们可以使用JPEG和PNG等压缩算法来对图像进行压缩和编码。
JPEG算法通过对图像的频域进行离散余弦变换和量化,实现对图像的有损压缩。
而PNG算法则采用无损压缩的方式,通过对图像的差值编码和哈夫曼编码,实现对图像的高效压缩。
4. 图像分割和边缘检测图像分割是指将图像分成若干个区域,以实现对图像的目标提取和图像分析的目的。
而边缘检测是指通过检测图像中的边缘和轮廓,实现对图像的形状分析和目标识别。
《数字图像处理》实验报告
《数字图像处理》实验报告数字图像处理是计算机科学与技术领域中的一个重要分支,它涉及到对图像进行获取、处理、分析和显示等一系列操作。
在本次实验中,我们将学习和探索数字图像处理的基本概念和技术,并通过实验来加深对这些概念和技术的理解。
首先,我们需要了解数字图像的基本概念。
数字图像是由像素组成的二维矩阵,每个像素代表图像中的一个点,像素的灰度值或颜色值决定了该点的亮度或颜色。
在实验中,我们将使用灰度图像进行处理,其中每个像素的灰度值表示了该点的亮度。
在数字图像处理中,最基本的操作之一是图像的获取和显示。
我们可以通过摄像头或者从文件中读取图像数据,然后将其显示在计算机屏幕上。
通过这种方式,我们可以对图像进行观察和分析,为后续的处理操作做好准备。
接下来,我们将学习一些常见的图像处理操作。
其中之一是图像的灰度化处理。
通过将彩色图像转换为灰度图像,我们可以减少图像数据的维度,简化后续处理的复杂度。
灰度化处理的方法有多种,例如将彩色图像的RGB三个通道的像素值取平均值,或者使用加权平均值的方法来计算灰度值。
另一个常见的图像处理操作是图像的平滑处理。
图像平滑可以减少图像中的噪声,并使得图像更加清晰。
常用的图像平滑方法包括均值滤波和高斯滤波。
均值滤波通过计算像素周围邻域像素的平均值来平滑图像,而高斯滤波则使用一个高斯核函数来加权平均邻域像素的值。
除了平滑处理,图像的锐化处理也是数字图像处理中的一个重要操作。
图像的锐化可以增强图像的边缘和细节,使得图像更加清晰和鲜明。
常用的图像锐化方法包括拉普拉斯算子和Sobel算子。
这些算子通过计算像素周围邻域像素的差异来检测边缘,并增强边缘的灰度值。
此外,我们还将学习一些图像的变换操作。
其中之一是图像的缩放和旋转。
通过缩放操作,我们可以改变图像的尺寸,使其适应不同的显示设备或应用场景。
而旋转操作可以将图像按照一定的角度进行旋转,以达到某种特定的效果。
最后,我们将学习一些图像的特征提取和分析方法。
数字图像处理-实验报告
《数字图象处理》实验报告一、数字图像处理设计主要内容数字图象处理课程设计要求使学生掌握数字图像处理的基本算法的计算机实现,从而培养学生运用数字信号处理的原理解决生物医学、电子工程领域的实际问题的能力。
进一步提高程序设计及调试能力,初步掌握进行科学研究工作的主要步骤和方法,学习和掌握科学研究资料检索的方法,学习对已有资料进行消化总结的方法,学习撰写科学报告的基本方法。
二、前期工作1.查阅资料,对数字信号处理和图象处理基本理论和实践作一全面了解;2.根据实验内容和要求确定实验思路,熟悉Matlab语言,理解对数字信号处理进行计算机仿真原理;三、设计工作1.图像平滑a.利用二个低通邻域平均模板(3×3和9×9)对一幅图象进行平滑,验证模板尺寸对图象的模糊效果的影响。
b.利用一个低通模板对一幅有噪图象(GAUSS白噪声)进行滤波,检验两种滤波模板(分别使用一个5×5的线性邻域平均模板和一个非线性模板:3×5中值滤波器)对噪声的滤波效果。
c.选择一个经过低通滤波器滤波的模糊图象,利用sobel水平边缘增强高通滤波器(模板)对其进行高通滤波图象边缘增强,验证模板的滤波效果。
d.选择一幅灰度图象分别利用一阶Sobel算子和二阶Laplacian算子对其进行边缘检测,验证检测效果。
2.图像增强a.直方图均衡化增强图像对比度的MATLAB程序。
b.采用线性变换进行图像增强的MATLAB程序。
c.采用边界锐化算法增强图像的MATLAB程序。
四、程序设计1.利用二个低通邻域平均模板(3×3和9×9)对一幅图象进行平滑,验证模板尺寸对图象的模糊效果的影响。
程序如下:l=imread('E:/matlab/test1/sample.jpg');L=rgb2gray(l);subplot(1,3,1);imshow(L);title('原图');j=fspecial('average');j1=filter2(j,L)/255;subplot(1,3,2);imshow(j1);title('3*3 滤波');k=fspecial('average',9);k1=filter2(k,L)/255;subplot(1,3,3);imshow(k1);title('9*9 滤波');仿真结果如下图:原图3*3 滤波9*9 滤波2.利用一个低通模板对一幅有噪图象(GAUSS白噪声)进行滤波,检验两种滤波模板(分别使用一个5×5的线性邻域平均模板和一个非线性模板:3×5中值滤波器)对噪声的滤波效果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数字图像处理》实验报告目录第一章实验一数字图像的基本操作和灰度变换 (3)1.1实验目的 (3)1.2实验原理与方法 (3)1.3实验内容与结果分析 (4)1.4思考问题 (8)第二章实验二图像的空间域增强 (9)2.1实验目的 (9)2.2实验原理与方法 (9)2.3实验内容与结果分析 (10)2.4思考问题 (16)第三章实验三图像的傅里叶变换和频域处理 (17)3.1实验目的 (17)3.2实验原理与方法 (17)3.3实验内容与结果分析 (18)附录:实验代码 (23)第一章实验一数字图像的基本操作和灰度变换1.1实验目的①了解数字图像的基本数据结构②熟悉Matlab中数字图像处理的基本函数和基本使用方法③掌握图像灰度变换的基本理论和实现方法④掌握直方图均衡化增强的基本理论和实现方法1.2实验原理与方法灰度的线性变换可以突出图像中的重要信息。
通常情况下,处理前后的图像灰度级是相同的,即处理前后的图像灰度级都为[0,255]。
那么,从原理上讲,我们就只能通过抑制非重要信息的对比度来腾出空间给重要信息进行对比度展宽。
设原图像的灰度为),(j i f ,处理后的图像的灰度为),(j i g ,对比度线性展宽的原理示意图如图1.1所示。
假设原图像中我们关心的景物的灰度分布在[a f ,b f ]区间内,处理后的图像中,我们关心的景物的灰度分布在[a g ,b g ]区间内。
在这里)(a b g g g -=∆()b a f f f >∆=-,也就是说我们所关心的景物的灰度级得到了展宽。
根据图中所示的映射关系中分段直线的斜率我们可以得出线性对比度展宽的计算公式:),(j i f α, a f j i f <≤),(0=),(j i ga a g f j i f +-)),((β,b a f j i f f <≤).,( (1-1) b b g f j i f +-)),((γ,255),(<≤j i f f b (m i ,3,2,1 =;n j ,3,2,1 =)其中,a a f g =α,a b a b f f g g --=β,b b f g --=255255γ,图像的大小为m ×n 。
1.2.2 直方图均衡化直方图均衡化是将原始图像通过某种变换,得到一幅灰度直方图为均匀分布的新图像的方法。
离散图像均衡化处理可通过变换函数:来实现 1.3实验内容与结果分析1.读入一幅灰度图像test1.tif ,显示其灰度直方图2.根据图像灰度直方图,选择所关心的图像景物的灰度分布范围[fa,fb],以及拟变换的灰度分布范围[ga,gb]①确定灰度变换范围为a f =100,b f =150,a g =50,b g =200,则线性变换结果如下:由此可以看出,将图像灰度在100到150之间的部分进行灰度拉伸,其他部分灰度压缩,图像整体变暗了,但因为拉伸的灰度值处于中间部分,所以效果不明显。
② 确定灰度变换范围为a f =30,b f =50,a g =30,b g =200,则线性变换结果如下:将灰度值处于30至50之间的部分进行拉伸,其他部分压缩,图像变换效果比较明显。
30至50位于直方图低灰度值部分,所以图像变亮。
1.读入一幅灰度图像test2.tif,求出其直方图2.利用Matlab函数实现图像的均衡化处理3.显示处理前后的图像和灰度直方图,说明处理前后直方图的变化以及对应的灰度变化均衡化处理前,直方图分布集中在低亮度区域,图像暗且对比度低,视觉效果差。
均衡化处理后,直方图分布均匀,图像变亮,且对比度提高,图像清晰,视觉效果好。
1.4思考问题1.在映射关系中,分段直线的斜率的大小对图像处理结果有哪些影响?斜率大于1的部分对图像灰度有拉伸作用,小于1的部分对图像灰度有压缩作用。
例如,低灰度级的区域斜率大于1,有拉伸作用,高灰度级的区域斜率小于1,有压缩作用,所以图像变亮;反之,图像变暗。
2.在进行对比度扩展时,如果确定和选取所关心的景物?根据直方图分布的峰值所在区域,一半背景峰值分布在直方图低灰度区,物体对象峰值分布在直方图高灰度区,两峰之间的谷底近似背景和物体对象的分界。
3. 直方图均衡化适用于什么形式的灰度分布情形?适用于灰度分布集中在较窄的区域从而使图像细节不清晰的图像,直方图均衡化后使图像的灰度间距拉开,使灰度分布均匀,增大反差,提高对比度,使图像细节清晰,改善视觉效果。
第二章实验二图像的空间域增强2.1实验目的①熟悉图像空间域增强方法,掌握增强模板使用方法②掌握均值滤波器、中值滤波器的理论基础和实现方法③掌握图像锐化的基本理论和实现方法④验证图像滤波处理结果2.2实验原理与方法图像增强是数字图像处理的基本内容之一,其目的是根据应用需要突出图像中的某些“有用”信息,削弱或去除不需要的信息,以改善图像的视觉效果,或突出图像的特征,便于计算机处理。
图像增强可以在空间域进行,也可以在频率域中进行。
空间域滤波主要利用空间模板进行,如3⨯3,5⨯5模板等,一般来说,使用大小为m×n 的滤波器对大小为M×N 的图像f进行空间滤波,可表示成:其中,m=2a+1, n=2b+1, w(s,t)是滤波器系数,f(x,y)是图像值均值滤波器是一种空间平滑滤波器,它是对包含噪声的图像上的每个像素点,用它邻域内像素的平均值替代原来的像素值。
例如,采用一个3×3的模板,待处理的像素为f(i,j),则处理后图像对应的像素值为g(i-1,j+1)g(i,j)=1/9*(f(i-1,j-1)+f(i-1,j)+f(i-1,j+1)+f(i,j-1)+f(i,j)+f(i,j+1)+f(i+1,j-1)+f(i+1,j)+f(i+1,j+1));中值滤波器也是一种空间平滑滤波器,它是对以图像像素点为中心的一个滑动窗口内的诸像素灰度值排序,用中值代替窗口中心像素的原来灰度值,因此它是一种非线性的图像平滑法。
采用Laplacian锐化算子进行图像边缘的锐化,是采用二阶差分运算获得像素间的差异值,由此,获得对图像景物边界的锐化。
Laplacian也可以算子也可以写成是模板作用的方式,如下:设待处理的像素为f(i,j),则处理后图像对应的像素值为g(i-1,j+1),则g(i,j)=4*f(i,j) -(f(i-1,j-1)+f(i,j-1)+f(i,j+1)+f(i+1,j));常用的锐化算子还有Roberts、Prewitt和Sobel算子等。
2.3实验内容与结果分析1.对原图像分别加入高斯噪声、椒盐噪声2.利用邻域平均法,分别采用3⨯3,5⨯5模板对加噪声图像进行平滑处理,显示原图像、加噪图像和处理后的图像。
①利用邻域平均法,分别采用3⨯3,5⨯5模板对加高斯噪声图像进行平滑处理②利用邻域平均法,分别采用3⨯3,5⨯5模板对加椒盐噪声图像进行平滑处理3.利用中值滤波法,分别采用3⨯3,5⨯5模板对加噪声图像进行去噪处理,显示原图像、加噪图像和处理后的图像。
①利用中值滤波法,分别采用3⨯3,5⨯5模板对加高斯噪声图像进行平滑处理②利用中值滤波法,分别采用3⨯3,5⨯5模板对加椒盐噪声图像进行平滑处理4.比较各种滤波方法和滤波模板的处理结果由实验结果可以得出,采用邻域平均法即均值滤波对高斯噪声比较有效,但造成一定的模糊,邻域越大,模糊越严重。
但均值滤波不能很好地处理椒盐噪声。
采用中值滤波法,不适用于去除高斯噪声,而且造成图像模糊严重。
但可以很好的抑制椒盐噪声,3*3模板处理过的图像接近原图像,但模板增大即邻域扩大,加强去噪声能力的同时,使图像模糊严重。
1.利用Laplacian 锐化算子(α=-1)对256×256 大小、256 级灰度的数字图像test4进行锐化处理,显示处理前、后图像。
2.分别利用Roberts、Prewitt 和Sobel 边缘检测算子,对数字图像test4进行边缘检测,显示处理前、后图像。
2.4思考问题1.采用均值滤波、中值滤波,对高斯噪声和椒盐噪声的抑制哪种比较有效?均值滤波对高斯噪声的抑制比较有效,但造成一定的模糊,邻域越大,图像模糊越严重;中值滤波对椒盐噪声比较有效,从实验结果看3*3模板处理后的图像接近原图像,而5*5模板造成图像模糊严重,邻域越大,模糊越严重。
2.模板大小的不同,所处理效果有何不同?为什么?模板越大,去噪能力增强,但同时造成的模糊越严重。
均值滤波中,模板中央像素灰度值取模板内所有像素的平均,模板越大,关联的像素越多,降低噪声对中央像素灰度值的影响,提高去噪能力,但同时使边缘附近像素灰度值接近,造成图像模糊。
中值滤波中,窗口中央灰度值取窗口内所有像素的中值,模板越大,噪声出现的次数,越可能小于模板的一半则被滤掉,提高了降噪能力,尤其是椒盐噪声,但同时使图像边缘附近像素灰度值接近而造成图像模糊,范围越大,模糊越严重。
第三章实验三图像的傅里叶变换和频域处理3.1实验目的①熟悉图像空间域和频率域的关系,掌握快速傅里叶变换②掌握离散傅里叶变换的性质和应用3.2实验原理与方法图像既能在空间域处理,也能在频率域处理。
把图像信息从空域变换到频域,可以更好地分析、加工和处理二维离散傅立叶正变换的表达式为逆变换为:二维离散傅立叶变换具有若干性质,如:线性性、平移性、可分离性、周期性、共轭对称性、旋转不变性等。
可利用离散傅里叶变换,将信号从空间域变换到频率域,在频率域选择合适的滤波器H(u,v)对图像的频谱成分进行处理,然后经逆傅立叶变换得到处理图像,实现图像处理结果。
3.3实验内容与结果分析1.产生一幅如图所示亮块图像f(x,y)(256×256 大小、暗处=0,亮处=255),对其进行FFT 。
①同屏显示原图f 和FFT(f)的幅度谱图。
②若令f1(x,y)=(-1)x+y f (x,y),重复以上过程,比较二者幅度谱的异同,简述理由;原图像的频谱图,高频成分位于四角附近,低频成分位于中央。
由傅里叶变换的频率位移性质:当u 0=M/2,v 0=N/2时, 所以进行了f1(x,y)=(-1)x+y f (x,y)的变换后,频谱图的高频成分移到中央,而低频成分移到频谱图的四角附近。
③若将f1(x,y)顺时针旋转45 度得到f2(x,y),试显示FFT(f2)的幅度谱,002()00(,)(,)u x v y j M N f x y e F u u v v π+--⇔并与FFT(f2)的幅度谱进行比较。
2. 对256×256 大小、256 级灰度的数字图像test5进行频域的理想低通、高通滤波滤波,同屏显示原图、幅度谱图和低通、高通滤波的结果图。
设置低通滤波截止频率为Dl0=50,即:1, 0l D D < 0,0l D D > 设置高通滤波器截止频率为Dh0=30,即1, 0h D D >0, 0h D D <由滤波结果可以得出,低通滤波器由于滤掉了高频成分,高频成分含有大量边缘信息,所以造成了一定程度的图像模糊。