文档库 最新最全的文档下载
当前位置:文档库 › 图像处理实验一 特效处理

图像处理实验一 特效处理

图像处理实验一   特效处理
图像处理实验一   特效处理

计算机与通信工程学院天津理工大学

计算机与通信工程学院

实验报告

2013 至2014 学年第二学期

实验一图像的特效显示

1、实现图像由小到大,逐渐显示。

在Menu界面中添加菜单选项

生成响应函数

在函数中添加代码:

//刷新屏幕

CDC *pDC=GetDC();

CRect rect(0,0,1000,1000);

CBrush brush(RGB(255,255,255));

pDC->FillRect(&rect,&brush);

//复制图像数据

clearmem();

CDSplitDoc* pDoc = GetDocument();

ASSERT_V ALID(pDoc);

if(!pDoc ->statedoc&&state2==1)

{

BYTE* pBitmapData = CDibNew1->GetData();

LPBITMAPINFO pBitmapInfo = CDibNew1->GetInfo();

int bitmapHeight = CDibNew1->GetHeight();

int bitmapWidth = CDibNew1->GetWidth();

int scaledWidth = (int)(bitmapWidth*0.2);

计算机与通讯工程学院int scaledHeight = (int)(bitmapHeight);

if (CDibNew1->GetRGB()) // Has a color table

{

CPalette * hPalette=CreateBitmapPalette(CDibNew1);

CPalette * hOldPalette =

pDC->SelectPalette(hPalette, true);

pDC->RealizePalette();

for(int j=1;j<8;j++)

{

::StretchDIBits(pDC->GetSafeHdc(),bitmapWidth/2, bitmapHeight/2, (int)(bitmapWidth*0.1*j), (int)(bitmapWidth*0.1*j),

0, 0, bitmapWidth, bitmapHeight,

pBitmapData, pBitmapInfo,

DIB_RGB_COLORS, SRCCOPY);

Sleep(100);

}

pDC->SelectPalette(hOldPalette, true);

::DeleteObject(hPalette);

}

else

{

for(int j=1;j<8;j++)

{

::StretchDIBits(pDC->GetSafeHdc(),bitmapWidth/2, bitmapHeight/2, (int)(bitmapWidth*0.1*j), (int)(bitmapWidth*0.1*j),

0, 0, bitmapWidth, bitmapHeight,

pBitmapData, pBitmapInfo,

DIB_RGB_COLORS, SRCCOPY);

Sleep(100);

}

}

}

Invalidate();

}

void CDynSplitView2::Onfuzhi()

{

// TODO: Add your command handler code here

int i,j;

//刷新屏幕

CDC *pDC=GetDC();

CRect rect(0,0,1000,1000);

CBrush brush(RGB(255,255,255));

pDC->FillRect(&rect,&brush);

//复制图像数据

clearmem();

CDSplitDoc* pDoc = GetDocument();

ASSERT_V ALID(pDoc);

if(!pDoc ->statedoc&&state2==1 )

{

BYTE* pBitmapData = CDibNew1->GetData();

LPBITMAPINFO pBitmapInfo = CDibNew1->GetInfo();

int bitmapHeight= CDibNew1->GetHeight();

int bitmapWidth = CDibNew1->GetWidth();

LPBYTE temp;

temp=new

BYTE[CDibNew1->GetHeight()*CDibNew1->GetWidth()*3];

memset (temp,0,CDibNew1->GetHeight()*CDibNew1->GetWidth()*3);

for( j = 0; j < bitmapHeight; j++)

{

for( i = 0; i < bitmapWidth; i ++)

{

temp[j*bitmapWidth*3+i*3]=pBitmapData[j*bitmapWidth*3+i*3];

temp[j*bitmapWidth*3+i*3+1]=pBitmapData[j*bitmapWidth*3+i*3+1];

temp[j*bitmapWidth*3+i*3+2]=pBitmapData[j*bitmapWidth*3+i*3+2];

}

}

::StretchDIBits(pDC->GetSafeHdc(),

0,bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

0,bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

temp, pBitmapInfo,

DIB_RGB_COLORS, SRCCOPY);

::StretchDIBits(pDC->GetSafeHdc(),

bitmapWidth/2, 0, bitmapWidth/2, bitmapHeight/2,

0,bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

temp, pBitmapInfo,

DIB_RGB_COLORS, SRCCOPY);

::StretchDIBits(pDC->GetSafeHdc(),

0,0, bitmapWidth/2, bitmapHeight/2,

0,bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

temp, pBitmapInfo,

DIB_RGB_COLORS, SRCCOPY);

::StretchDIBits(pDC->GetSafeHdc(),

bitmapWidth/2, bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

0,bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

temp, pBitmapInfo,

DIB_RGB_COLORS, SRCCOPY);

memcpy ( pBitmapData,temp,CDibNew1->GetHeight()*CDibNew1->GetWidth()*3);

delete temp;

}

2、将图像中的红气球物体左右、上下、对称复制。

在Menu界面中添加菜单选项

生成响应函数:

代码中添加:

int i,j;

//刷新屏幕

CDC *pDC=GetDC();

CRect rect(0,0,1000,1000);

CBrush brush(RGB(255,255,255));

pDC->FillRect(&rect,&brush);

//复制图像数据

clearmem();

CDSplitDoc* pDoc = GetDocument();

ASSERT_V ALID(pDoc);

if(!pDoc ->statedoc&&state2==1 )

{

BYTE* pBitmapData = CDibNew1->GetData();

LPBITMAPINFO pBitmapInfo = CDibNew1->GetInfo();

int bitmapHeight= CDibNew1->GetHeight();

int bitmapWidth = CDibNew1->GetWidth();

LPBYTE temp;

temp=new

BYTE[CDibNew1->GetHeight()*CDibNew1->GetWidth()*3];

memset (temp,0,CDibNew1->GetHeight()*CDibNew1->GetWidth()*3);

for( j = 0; j < bitmapHeight; j++)

{

for( i = 0; i < bitmapWidth; i ++)

{

temp[j*bitmapWidth*3+i*3]=pBitmapData[j*bitmapWidth*3+i*3];

temp[j*bitmapWidth*3+i*3+1]=pBitmapData[j*bitmapWidth*3+i*3+1];

temp[j*bitmapWidth*3+i*3+2]=pBitmapData[j*bitmapWidth*3+i*3+2];

}

}

::StretchDIBits(pDC->GetSafeHdc(),

0,bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

0,bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

temp, pBitmapInfo,

DIB_RGB_COLORS, SRCCOPY);

::StretchDIBits(pDC->GetSafeHdc(),

bitmapWidth/2, 0, bitmapWidth/2, bitmapHeight/2,

0,bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

temp, pBitmapInfo,

DIB_RGB_COLORS, SRCCOPY);

::StretchDIBits(pDC->GetSafeHdc(),

0,0, bitmapWidth/2, bitmapHeight/2,

0,bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

temp, pBitmapInfo,

DIB_RGB_COLORS, SRCCOPY);

::StretchDIBits(pDC->GetSafeHdc(),

bitmapWidth/2, bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

0,bitmapHeight/2, bitmapWidth/2, bitmapHeight/2,

temp, pBitmapInfo,

DIB_RGB_COLORS, SRCCOPY);

memcpy ( pBitmapData,temp,CDibNew1->GetHeight()*CDibNew1->GetWidth()*3);

delete temp;

}

实验效果:

1、由小变大:

2、红气球复制:

数字图像处理实验1

实验一 实验内容和步骤 练习图像的读取、显示和保存图像数据,步骤如下: (1)使用命令figure(1)开辟一个显示窗口 (2)读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内显示、二值图像和灰度图像,注上文字标题。 (3)保存转换后的灰度图像和二值图像 (4)在同一个窗口显示转换后的灰度图像的直方图 I=imread('BaboonRGB.bmp'); figure,imshow(I); I_gray=rgb2gray(I); figure,imshow(I_gray); I_2bw=Im2bw(I_gray); figure,imshow(I_2bw); subplot(1,3,1),imshow(I),title('RGB图像'); subplot(1,3,2),imshow(I_gray),title('灰度图像'); subplot(1,3,3),imshow(I_2bw),title('二值图像'); imwrite(I_gray,'Baboongray.png'); imwrite(I_2bw,'Baboon2bw.tif'); figure;imhist(I_gray);

RGB 图 像灰度图 像二值图 像 050100150200250 500 1000 1500 2000 2500 3000

(5)将原RGB 图像的R 、G 、B 三个分量图像显示在figure(2)中,观察对比它们的特点,体会不同颜色所对应的R 、G 、B 分量的不同之处。 [A_RGB,MAP]=imread('BaboonRGB.bmp'); subplot(2,2,1),imshow(A_RGB),title('RGB'); subplot(2,2,2),imshow(A_RGB(:,:,1)),title('R'); subplot(2,2,3),imshow(A_RGB(:,:,2)),title('G'); subplot(2,2,4),imshow(A_RGB(:,:,3)),title('B'); (6)将图像放大1.5倍,插值方法使用三种不同方法,在figure(3)中显示放大后的图像,比较不同插值方法的结果有什么不同。将图像放大到其它倍数,重复实验;A=imread('BaboonRGB.bmp'); figure(3),imshow(A),title('原图像'); B=imresize(A,1.5,'nearest'); figure(4),imshow(B),title('最邻近法') C=imresize(A,1.5,'bilinear'); ; figure(5),imshow(C),title('双线性插值'); D=imresize(A,1.5,'bicubic'); figure(6),imshow(D),title('双三次插值 '); RGB R G B

数字图像处理课程心得

数字图像处理课程心得 本学期,我有幸学习了数字图像处理这门课程,这也是我大学学习中的最后一门课程,因此这门课有着特殊的意义。人类传递信息的主要媒介是语音和图像。据统计,在人类接受的信息中,听觉信息占20%,视觉信息占60%,其它如味觉、触觉、嗅觉信息总的加起来不过占20%。可见图像信息是十分重要的。通过十二周的努力学习,我深刻认识到数字图像处理对于我的专业能力提升有着比较重要的作用,我们可以运用Matlab对图像信息进行加工,从而满足了我们的心理、视觉或者应用的需求,达到所需图像效果。 数字图像处理起源于20世纪20年代,当时通过海底电缆从英国伦敦到美国纽约采用数字压缩技术传输了第一幅数字照片。此后,由于遥感等领域的应用,使得图像处理技术逐步受到关注并得到了相应的发展。第三代计算机问世后,数字图像处理便开始迅速发展并得到普遍应用。由于CT的发明、应用及获得了备受科技界瞩目的诺贝尔奖,使得数字图像处理技术大放异彩。目前数字图像处理科学已成为工程学、计算机科学、信息科学、统计学、物理、化学、生物学、医学甚至社会科学等领域中各学科之间学习和研究的对象。随着信息高速公路、数字地球概念的提出以及Internet的广泛应用,数字图像处理技术的需求与日俱增。其中,图像信息以其信息量大、传输速度快、作用距离远等一系列优点成为人类获取信息的重要来源及利用信息的重要手段,因此图像处理科学与技术逐步向其他学科领域渗透并为其它学科所利用是必然的。 数字图像处理是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。数字图像处理的产生和迅速发展主要受三个因素的影响:一是计算机的发展;二是数学的发展(特别是离散数学理论的创立和完善);三是广泛的农牧业、林业、环境、军事、工业和医学等方面的应用需求的增长。图像处理科学是一门与国计民生紧密相联的应用科学,它给人类带来了巨大的经济和社会效益,不久的将来它不仅在理论上会有更深入的发展,在应用上亦是科学研究、社会生产乃至人类生活中不可缺少的强有力的工具。它的发展及应用与我国的现代化建设联系之密切、影响之深远是不可估量的。在信息社会中,数字图象处理科学无论是在理论上还是在实践中都存在着巨大的潜力。近几十年,数字图像处理技术在数字信号处理技术和计算机技术发展的推动下得到了飞速的发展,正逐渐成为其他科学技术领域中不可缺少的一项重要工具。数字图像处理的应用领域越来越广泛,从空间探索到微观研究,从军事领域到工农业生产,从科学教育到娱乐游戏,越来越多的领域用到了数字图像处理技术。 虽然通过一学期的课程学习我们还没有完全掌握数字图像处理技术,但也收获了不少,对于数字图像处理方面的知识有了比较深入的了解,当然也更加理解了数字图像的本质,即是一些数字矩阵,但灰度图像和彩色图像的矩阵形式是不同的。对于一些耳熟能详的数字图像相关术语有了明确的认识,比如常见的:像素(衡量图像的大小)、分辨率(衡量图像的清晰程度)、位图(放大后会失真)、矢量图(经过放大不会失真)等大家都能叫上口却知识模糊的名词。也了解图像处理技术中一些常用处理技术的实质,比如锐化处理是使模糊的图像变清晰,增强图像的边缘等细节。而平滑处理是的目的是消除噪声,模糊图像,在提取大目标之前去除小的细节或弥合目标间的缝隙。对常提的RGB图像和灰度图像有了明确的理解,这对大家以后应用Photoshop等图像处理软件对图像进行处理打下了

数字图像处理四个实验报告,带有源程序

数字图像处理 实验指导书 学院:通信与电子工程学院 专业:电子信息工程 班级: 学号: 姓名: XX理工大学

实验一 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)掌握读、写图像的基本方法。 2)掌握MATLAB语言中图像数据与信息的读取方法。 3)理解图像灰度变换处理在图像增强的作用。 4)掌握绘制灰度直方图的方法,理解灰度直方图的灰度变换及均衡化的方 法。 二、实验内容与要求 1.熟悉MATLAB语言中对图像数据读取,显示等基本函数 特别需要熟悉下列命令:熟悉imread()函数、imwrite()函数、size()函数、Subplot()函数、Figure()函数。 1)将MATLAB目录下work文件夹中的forest.tif图像文件读出.用到imread, imfinfo 等文件,观察一下图像数据,了解一下数字图像在MATLAB中的处理就是处理一个矩阵。将这个图像显示出来(用imshow)。尝试修改map颜色矩阵的值,再将图像显示出来,观察图像颜色的变化。 2)将MATLAB目录下work文件夹中的b747.jpg图像文件读出,用rgb2gray() 将其 转化为灰度图像,记为变量B。 2.图像灰度变换处理在图像增强的作用 读入不同情况的图像,请自己编程和调用Matlab函数用常用灰度变换函数对输入图像进行灰度变换,比较相应的处理效果。 3.绘制图像灰度直方图的方法,对图像进行均衡化处理 请自己编程和调用Matlab函数完成如下实验。 1)显示B的图像及灰度直方图,可以发现其灰度值集中在一段区域,用 imadjust函 数将它的灰度值调整到[0,1]之间,并观察调整后的图像与原图像的差别,调整后的灰

度直方图与原灰度直方图的区别。 2) 对B 进行直方图均衡化处理,试比较与源图的异同。 3) 对B 进行如图所示的分段线形变换处理,试比较与直方图均衡化处理的异同。 图1.1 分段线性变换函数 三、实验原理与算法分析 1. 灰度变换 灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。 1) 图像反转 灰度级范围为[0, L-1]的图像反转可由下式获得 r L s --=1 2) 对数运算:有时原图的动态范围太大,超出某些显示设备的允许动态范围, 如直接使用原图,则一部分细节可能丢失。解决的方法是对原图进行灰度压缩,如对数变换: s = c log(1 + r ),c 为常数,r ≥ 0 3) 幂次变换: 0,0,≥≥=γγc cr s 4) 对比拉伸:在实际应用中,为了突出图像中感兴趣的研究对象,常常要求 局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸: 其对应的数学表达式为:

数字图像处理的概念教学总结

数字图像处理的概念

二、数字图像处理的概念 1.什么是图像 “图”是物体投射或反射光的分布,“像”是人的视觉系统对图的接受在大脑中形成的印象或反映。 是客观和主观的结合。 2数字图像是指由被称作象素的小块区域组成的二维矩阵。将 物理图象行列划分后,每个小块区域称为像素(pixel)。 –每个像素包括两个属性:位置和灰度。 对于单色即灰度图像而言,每个象素的亮度用一个数值来表示,通常数值范围在0到255之间,即可用一个字节来表示, 0表示黑、255表示白,而其它表示灰度级别。 物理图象及对应 的数字图象 3彩色图象可以用红、绿、蓝三元组的二维矩阵来表示。 –通常,三元组的每个数值也是在0到255之间,0表示相应的基色在该象素中没有,而255则代表相应的基色在该象素中取得最大值,这种情况下每个象素可用三个字节来表示。 4什么是数字图像处理 数字图像处理就是利用计算机系统对数字图像进行各种目的的处理 5对连续图像f(x,y)进行数字化:空间上,图像抽样;幅度上,灰度级量化 x方向,抽样M行 y方向,每行抽样N点

整个图像共抽样M×N个像素点 一般取M=N=2n=64,128,256,512,1024,2048 6数字图像常用矩阵来表示: f(i,j)=0~255,灰度级为256,设灰度量化为8bit 7 数字图像处理的三个层次 8 图像处理: 对图像进行各种加工,以改善图像的视觉效果;强调图像之间进行的变换;图像处理是一个从图像到图像的过程。 9图像分析:对图像中感兴趣的目标进行提取和分割,获得目标的客观信息 以观察者为中心研究客观世界; 图像分析是一个从图像到数据的过程。 10图像理解:研究图像中各目标的性质和它们之间的相互联系;得出对图像内 以客观世界为中心,借助知识、经验来推理、认识客观世界,属于高层操作 (符号运算) N N N N f N f N f N f f f N f f f y x f ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? - - - - - - = )1 ,1 ( )1,1 ( )0,1 ( )1 ,1( )1,1( )0,1( )1 ,0( )1,0( )0,0( ) ,( 符号 目标 像素 高层 中层 低层 高 低 抽 象 程 度 数 据 量 操 作 对 象 小 大语 义

数字图像处理实验指导书模板

《数字图像处理》实验指导书 编写: 罗建军 海南大学三亚学院 10月

目录 一、概述 ....................................................................... 错误!未定义书签。 二、建立程序框架 ....................................................... 错误!未定义书签。 三、建立图像类 ........................................................... 错误!未定义书签。 四、定义图像文档实现图像读/写.............................. 错误!未定义书签。 五、实现图像显示 ....................................................... 错误!未定义书签。 六、建立图像处理类................................................... 错误!未定义书签。 七、实现颜色处理功能............................................... 错误!未定义书签。 (一) 亮度处理................................................................. 错误!未定义书签。 (二) 对比度处理............................................................. 错误!未定义书签。 (三) 色阶处理................................................................. 错误!未定义书签。 (四) 伽马变换................................................................. 错误!未定义书签。 (五) 饱和度处理............................................................. 错误!未定义书签。 (六) 色调处理................................................................. 错误!未定义书签。 八、实现几何变换功能............................................... 错误!未定义书签。 (一) 图像缩放................................................................. 错误!未定义书签。 (二) 旋转......................................................................... 错误!未定义书签。 (三) 水平镜像................................................................. 错误!未定义书签。 (四) 垂直镜像................................................................. 错误!未定义书签。 (五) 右转90度................................................................. 错误!未定义书签。 (六) 左转90度................................................................. 错误!未定义书签。 (七) 旋转180度............................................................... 错误!未定义书签。 九、实现平滑锐化功能............................................... 错误!未定义书签。 十、图像处理扩展编程............................................... 错误!未定义书签。

东南大学数字图像处理实验报告

数字图像处理 实验报告 学号:04211734 姓名:付永钦 日期:2014/6/7 1.图像直方图统计 ①原理:灰度直方图是将数字图像的所有像素,按照灰度值的大小,统计其所出现的频度。 通常,灰度直方图的横坐标表示灰度值,纵坐标为半个像素个数,也可以采用某一灰度值的像素数占全图像素数的百分比作为纵坐标。 ②算法: clear all PS=imread('girl-grey1.jpg'); %读入JPG彩色图像文件figure(1);subplot(1,2,1);imshow(PS);title('原图像灰度图'); [m,n]=size(PS); %测量图像尺寸参数 GP=zeros(1,256); %预创建存放灰度出现概率的向量 for k=0:255 GP(k+1)=length(find(PS==k))/(m*n); %计算每级灰度出现的概率end figure(1);subplot(1,2,2);bar(0:255,GP,'g') %绘制直方图 axis([0 255 min(GP) max(GP)]); title('原图像直方图') xlabel('灰度值') ylabel('出现概率') ③处理结果:

原图像灰度图 100 200 0.005 0.010.0150.020.025 0.030.035 0.04原图像直方图 灰度值 出现概率 ④结果分析:由图可以看出,原图像的灰度直方图比较集中。 2. 图像的线性变换 ①原理:直方图均衡方法的基本原理是:对在图像中像素个数多的灰度值(即对画面起主 要作用的灰度值)进行展宽,而对像素个数少的灰度值(即对画面不起主要作用的灰度值)进行归并。从而达到清晰图像的目的。 ②算法: clear all %一,图像的预处理,读入彩色图像将其灰度化 PS=imread('girl-grey1.jpg'); figure(1);subplot(2,2,1);imshow(PS);title('原图像灰度图'); %二,绘制直方图 [m,n]=size(PS); %测量图像尺寸参数 GP=zeros(1,256); %预创建存放灰度出现概率的向量 for k=0:255

数字图像处理实验 实验二

实验二MATLAB图像运算一、实验目的 1.了解图像的算术运算在数字图像处理中的初步应用。 2.体会图像算术运算处理的过程和处理前后图像的变化。 二、实验步骤 1.图像的加法运算-imadd 对于两个图像f x,y和 (x,y)的均值有: g x,y=1 f x,y+ 1 (x,y) 推广这个公式为: g x,y=αf x,y+β (x,y) 其中,α+β=1。这样就可以得到各种图像合成的效果,也可以用于两张图像的衔接。说明:两个示例图像保存在默认路径下,文件名分别为'rice.png'和'cameraman.tif',要求实现下图所示结果。 代码: I1 = imread('rice.png'); I2 = imread('cameraman.tif'); I3 = imadd(I1, I2,'uint8'); I4 = imadd(I1, I2,'uint16'); subplot(2, 2, 1), imshow(I1), title('?-ê?í???1'); subplot(2, 2, 2), imshow(I2), title('?-ê?í???2'); subplot(2, 2, 3), imshow(I3), title('8??í?????ê?'); subplot(2, 2, 4), imshow(I4), title('16??í?????ê?'); 结果截图:

2.图像的减法运算-imsubtract 说明: 背景图像可通过膨胀算法得到background = imopen(I,strel('disk',15));,要求实现下图所示结果。 示例代码如下: I1 = imread('rice.png'); background = imerode(I1, strel('disk', 15)); rice2 = imsubtract(I1, background); subplot(2, 2, 1), imshow(I1), title('?-ê?í???'); subplot(2, 2, 2), imshow(background), title('±3?°í???'); subplot(2, 2, 3), imshow(rice2), title('′|àíoóμ?í???'); 结果截图: 3.图像的乘法运算-immultiply

数字图像处理

院系:计算机科学学院 专业:计算机科学与技术 年级: 09级 课程名称:数字图像处理 组号: 25组 指导教师:孙阳光 学号: 姓名: 2012 年 6 月 13 日

年 级 班号学号 专 业 姓名实 验名称MATLAB图像处理编程基础 实验 类型 设计型综合型创新型 √ 实验目的或要求加深对数字图像处理理论课程的理解,进一步熟悉数字图像处理课程的相关算法和原理选择一副图像,叠加椒盐噪声,分别用邻域平均法和中值滤波法对该图像进行滤波,显示滤波后的图像,比较和分析各滤波器的效果。 选择一副图像,叠加零均值高斯噪声,设计一种处理方法,既能去噪声,又能保持边缘清晰。

实验原理(算法流程图或者含注释的源代码)二、算法原理 平滑滤波器用滤波模板确定的领域内象素的平均灰度值去代替图像中的每一个像素点的值,这种处理减少了图像灰度的“尖锐”变化,常称为邻域平均法。邻域平均法有力地抑制了噪声,同时也引起了模糊,模糊程度与邻域半径成正比。 中值滤波法是一种非线性平滑技术,它将每一象素点的灰度值设置为该点某邻域窗口内的所有象素点灰度值的中值.中值滤波法对消除椒盐噪音非常有效。 图像平滑往往使图像中的边界、轮廓变得模糊,为了减少这类不利效果的影响,这就需要利用图像锐化技术,使图像的边缘变的清晰。图像锐化处理的目的是为了使图像的边缘、轮廓线以及图像的细节变的清晰。 三、Matlab代码 1: I = imread('eight.tif'); J = imnoise(I,'salt & pepper',0.02); subplot(231); imshow(I);title('原图象'); subplot(232); imshow(J);title('添加椒盐噪声图象'); k1 = filter2(fspecial('average', 3), J); k2 = filter2(fspecial('average', 5), J); k3 = filter2(fspecial('average', 7), J); k4 = filter2(fspecial('average', 9), J); subplot(233); imshow(uint8(k1));title('3×3模板平滑滤波'); subplot(234); imshow(uint8(k2));title('5×5模板平滑滤波'); subplot(235); imshow(uint8(k3));title('7×7模板平滑滤波'); subplot(236); imshow(uint8(k4));title('9×9模板平滑滤波'); I = imread('eight.tif'); J = imnoise(I,'salt & pepper',0.02); subplot(231); imshow(I);title('原图象'); subplot(232); imshow(J);title('添加椒盐噪声图象'); k1 = medfilt2(J); k2 = medfilt2(J,[5,5]); k3 = medfilt2(J,[7,7]); k4 = medfilt2(J,[9,9]); subplot(233); imshow(k1);title('3×3模板中值滤波'); subplot(234); imshow(k2);title('5×5模板中值滤波'); subplot(235); imshow(k3);title('7×7模板中值滤波'); subplot(236); imshow(k4);title('9×9模板中值滤波');

数字图像处理程序

数字图像处理程序

数字图像处理实验 图像处理实验(一)直方图 灰度变换是图像增强的一种重要手段,使图像对比度扩展,图像更加清晰,特 征更加明显。 灰度级的直方图给出了一幅图像概貌的描述,通过修改灰度直方图来得到图像 增强。 1、灰度直方图 (1)计算出一幅灰度图像的直方图 clear close all I=imread('004.bmp'); imhist(I) title('实验一(1)直方图'); (2)对灰度图像进行简单的灰度线形变换, figure subplot(2,2,1) imshow(I); title('试验2-灰度线性变换'); subplot(2,2,2) histeq(I); (3)看其直方图的对应变化和图像对比度的变化。 原图像 f(m,n) 的灰度范围 [a,b] 线形变换为图像 g(m,n),灰度范围[a’,b’]公式:g(m,n)=a’+(b’-a’)* f(m,n) /(b-a) figure subplot(2,2,1) imshow(I) J=imadjust(I,[0.3,0.7],[0,1],1); title(' 实验一(3)用g(m,n)=a’+(b’-a’)* f(m,n) /(b-a)进行变换 '); subplot(2,2,2) imshow(J) subplot(2,2,3) imshow(I) J=imadjust(I,[0.5 0.8],[0,1],1); subplot(2,2,4) imshow(J) (4) 图像二值化(选取一个域值,(5) 将图像变为黑白图像) figure subplot(2,2,1)

数字图像处理——彩色图像实验报告

6.3实验步骤 (1)对彩色图像的表达和显示 * * * * * * * * * * * *显示彩色立方体* * * * * * * * * * * * * rgbcube(0,0,10); %从正面观察彩色立方体 rgbcube(10,0,10); %从侧面观察彩色立方 rgbcube(10,10,10); %从对角线观察彩色立方体 %* * * * * * * * * *索引图像的显示和转换* * * * * * * * * * f=imread('D:\Picture\Fig0604(a)(iris).tif'); figure,imshow(f);%f是RGB真彩图像 %rgb图像转换成8色索引图像,不采用抖动方式 [X1,map1]=rgb2ind(f,8,'nodither'); figure,imshow(X1,map1); %采用抖动方式转换到8色索引图像 [X2,map2]=rgb2ind(f,8,'dither'); figure,imshow(X2,map2); %显示效果要好一些 g=rgb2gray(f); %f转换为灰度图像 g1=dither(g);%将灰色图像经过抖动处理,转换打二值图像figure,imshow(g);%显示灰度图像 figure,imshow(g1);%显示抖动处理后的二值图像 程序运行结果:

彩色立方体原图 不采用抖动方式转换到8色索引图像采用抖动方式转换到8色索引图像 灰度图像抖动处理后的二值图像

(2)彩色空间转换 f=imread('D:\Picture\Fig0604(a)(iris).tif'); figure,imshow(f);%f是RGB真彩图像 %转换到NTSC彩色空间 ntsc_image=rgb2ntsc(f); figure,imshow(ntsc_image(:,:,1));%显示亮度信息figure,imshow(ntsc_image(:,:,2));%显示色差信息figure,imshow(ntsc_image(:,:,3));%显示色差信息 %转换到HIS彩色空间 hsi_image=rgb2hsi(f); figure,imshow(hsi_image(:,:,1));%显示色度信息figure,imshow(hsi_image(:,:,2)); %显示饱和度信息figure,imshow(hsi_image(:,:,3));%显示亮度信息 程序运行结果: 原图 转换到NTSC彩色空间

数字图像处理心得体会

《数字图像处理》心得体会 图像处理是指对图像信息进行加工,从而满足人类的心理、视觉或者应用的需求的一种行为。图像处理方法一般有数字法和光学法两种,其中数字法的优势很明显,已经被应用到了很多领域中,相信随着科学技术的发展,其应用空间将会更加广泛。数字图像处理又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。数字图像处理是从20世纪60年代以来随着计算机技术和VLSL的发展而产生、发展和不断成熟起来的一个新兴技术领域。数字图像处理技术其实就是利用各种数字硬件与计算机,对图像信息通过转换而得到的电信号进行相应的数学运算,例如图像去噪、图像分割、提取特征、图像增强、图像复原等,以便提高图像的实用性。其特点是处理精度比较高,并且能够对处理软件进行改进来优化处理效果,操作比较方便,但是由于数字图像需要处理的数据量一般很大,因此处理速度有待提高。 由于数字图像处理的方便性和灵活性,因此数字图像处理技术已经成为了图像处理领域中的主流。数字图像处理技术主要涉及到的关键技术有:图像的采集与数字化、图像的编码、图像的增强、图像恢复、图像分割、图像分析等。? 图像的采集与数字化:就是通过量化和取样将一个自然图像转换为计算机能够处理的数字形式。? 图像编码:图像编码的目的主要是来压缩图像的信息量,以便能够满足存储和传输的要求。? 图像的增强:图像的增强其主要目的是使图像变得清晰或者将其变换为机器能够很容易分析的形式,图像增强方法一般有:直方图处理、灰度等级、伪彩色处理、边缘锐化、干扰抵制。?

图像的恢复:图像恢复的目的是减少或除去在获得图像的过程中因为各种原因而产生的退化,可能是由于光学系统的离焦或像差、被摄物与摄像系统两者之间的相对运动、光学或电子系统的噪声与介于被摄像物跟摄像系统之间的大气湍流等等。? 图像的分割:图像分割是将图像划分为一些互相不重叠的区域,其中每一个区域都是像素的一个连续集,通常采用区域法或者寻求区域边界的境界法。? 图像分析:图像分析是指从图像中抽取某些有用的信息、数据或度量,其目的主要是想得到某种数值结果。图像分析的内容跟人工智能、模式识别的研究领域有一定的交叉。? 数字图像处理的特点主要表现在以下几个方面:? 1)?数字图像处理的信息大多是二维信息,处理信息量很大。因此对计算机的计算速度、存储容量等要求较高。? 2)?数字图像处理占用的频带较宽。与语言信息相比,占用的频带要大几个数量级。所以在成像、传输、存储、处理、显示等各个环节的实现上技术难度较大,成本亦高。这就对频带压缩技术提出了更高的要求。? 3)?数字图像中各个像素不是独立的,其相关性大。在图像画面上,经常有很多像素有相同或接近的灰度。所以,图像处理中信息压缩的潜力很大。?图像受人的因素影响较大,因为图像一般是给人观察和评价的。? 数字图像处理的优点主要表现在4个方面。? 1)?再现性好。数字图像处理与模拟图像处理的根本不同在于它不会因图像的存储、传输或复制等一系列变换操作而导致图像质量的退化。只要图像在数字化时准确地表现了原稿,那么数字图像处理过程始终能保持图像的再现。? 2)?处理精度高。将一幅模拟图像数字化为任意大小的二维数组,主要取决于

数字图像处理实验报告

数字图像处理实验报告

实验一数字图像处理编程基础 一、实验目的 1. 了解MA TLAB图像处理工具箱; 2. 掌握MA TLAB的基本应用方法; 3. 掌握MA TLAB图像存储/图像数据类型/图像类型; 4. 掌握图像文件的读/写/信息查询; 5. 掌握图像显示--显示多幅图像、4种图像类型的显示方法; 6. 编程实现图像类型间的转换。 二、实验内容 1. 实现对图像文件的读/写/信息查询,图像显示--显示多幅图像、4种图像类型的显示方法、图像类型间的转换。 2. 运行图像处理程序,并保存处理结果图像。 三、源代码 I=imread('cameraman.tif') imshow(I); subplot(221), title('图像1'); imwrite('cameraman.tif') M=imread('pout.tif') imview(M) subplot(222), imshow(M); title('图像2'); imread('pout.bmp') N=imread('eight.tif') imview(N) subplot(223), imshow(N); title('图像3'); V=imread('circuit.tif') imview(V) subplot(224), imshow(V); title('图像4');

N=imread('C:\Users\Administrator\Desktop\1.jpg') imshow(N); I=rgb2gary(GRB) [X.map]=gary2ind(N,2) RGB=ind2 rgb(X,map) [X.map]=gary2ind(I,2) I=ind2 gary(X,map) I=imread('C:\Users\dell\Desktop\111.jpg'); subplot(231),imshow(I); title('原图'); M=rgb2gray(I); subplot(232),imshow(M); [X,map]=gray2ind(M,100); subplot(233),imshow(X); RGB=ind2rgb(X,map); subplot(234),imshow(X); [X,map]=rbg2ind(I); subplot(235),imshow(X); 四、实验效果

数字图像处理实验报告

数字图像处理试验报告 实验二:数字图像的空间滤波和频域滤波 姓名: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大小的拉普拉斯算子对

数字图像处理实验

《数字图像处理》 实验报告 学院:信息工程学院 专业:电子信息工程 学号: 姓名: 2015年6月18日

目录 实验一图像的读取、存储和显示 (2) 实验二图像直方图分析 (6) 实验三图像的滤波及增强 (15) 实验四噪声图像的复原 (19) 实验五图像的分割与边缘提取 (23) 附录1MATLAB简介 (27)

实验一图像的读取、存储和显示 一、实验目的与要求 1.熟悉及掌握在MATLAB中能够处理哪些格式图像。 2.熟练掌握在MATLAB中如何读取图像。 3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。 4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。 5.图像的显示。 二、实验原理 一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f 在任何坐标处(x,y)处的振幅称为图像在该点的亮度。灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由单个二维图像组合形成的。例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。因此,许多为黑白图像处理开发的技术适用于彩色图像处理,方法是分别处理三副独立的分量图像即可。图像关于x和y坐标以及振幅连续。要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。将坐标值数字化成为取样;将振幅数字化成为量化。采样和量化的过程如图1所示。因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。 三、实验设备 (1) PC计算机 (2) MatLab软件/语言包括图像处理工具箱(Image Processing Toolbox) (3) 实验所需要的图片 四、实验内容及步骤 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 的大小;

《数字图像处理》课程学习心得

《数字图像处理》课程学习心得 导读:本文《数字图像处理》课程学习心得,仅供参考,如果能帮助到您,欢迎点评和分享。 《数字图像处理》课程学习心得(一) 在这一学期,我选修了《数字图像处理基础》这门课程,同时,老师还讲授了一些视频处理的知识。在这里,梳理一下这学期学到的知识,并提出一些我对这门课程的建议。 图像处理是指对图像信息进行加工,从而满足人类的心理、视觉或者应用的需求的一种行为。图像处理方法一般有数字法和光学法两种,其中数字法的优势很明显,已经被应用到了很多领域中,相信随着科学技术的发展,其应用空间将会更加广泛。数字图像处理又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。数字图像处理是从20世纪60年代以来随着计算机技术和VLSL的发展而产生、发展和不断成熟起来的一个新兴技术领域。数字图像处理技术其实就是利用各种数字硬件与计算机,对图像信息通过转换而得到的电信号进行相应的数学运算,例如图像去噪、图像分割、提取特征、图像增强、图像复原等,以便提高图像的实用性。其特点是处理精度比较高,并且能够对处理软件进行改进来优化处理效果,操作比较方便,但是由于数字图像需要处理的数据量一般很大,因此处理速度有待提高。目前,随着计算机技术的不断发展,计算机的运算速度得到了很大程度的提高。在短短的历史中,它

却广泛应用于几乎所有与成像有关的领域,在理论上和实际应用上都取得了巨大的成就。 1、数字图像处理需用到的关键技术 由于数字图像处理的方便性和灵活性,因此数字图像处理技术已经成为了图像处理领域中的主流。数字图像处理技术主要涉及到的关键技术有:图像的采集与数字化、图像的编码、图像的增强、图像恢复、图像分割、图像分析等。 图像的采集与数字化:就是通过量化和取样将一个自然图像转换为计算机能够处理的数字形式。 图像编码:图像编码的目的主要是来压缩图像的信息量,以便能够满足存储和传输的要求。 图像的增强:图像的增强其主要目的是使图像变得清晰或者将其变换为机器能够很容易分析的形式,图像增强方法一般有:直方图处理、灰度等级、伪彩色处理、边缘锐化、干扰抵制。 图像的恢复:图像恢复的目的是减少或除去在获得图像的过程中因为各种原因而产生的退化,可能是由于光学系统的离焦或像差、被摄物与摄像系统两者之间的相对运动、光学或电子系统的噪声与介于被摄像物跟摄像系统之间的大气湍流等等。 图像的分割:图像分割是将图像划分为一些互相不重叠的区域,其中每一个区域都是像素的一个连续集,通常采用区域法或者寻求区域边界的境界法。 图像分析:图像分析是指从图像中抽取某些有用的信息、数据或

相关文档