当前位置:文档之家› C Builder_6图形、图像及实例

C Builder_6图形、图像及实例

C  Builder_6图形、图像及实例
C  Builder_6图形、图像及实例

ok

.

et

内容提要:本文介绍了图形的绘制和图像处理,其中详细介绍了画布(Canvas)的属性与使用

方法,利用它们,可以非常直观方便地绘制直线、曲线、矩形、椭圆等各种图形。本文还介绍了图

像处理的方法,其中包括 Image 组件、TBitmap 类和 TJPEGImage 类的使用,而要进行快速的图像

处理,几乎都离不开 ScanLine 技术。使用 ScanLine 技术,能够快速取得bitmap 的每行的颜色值,

而无需使用 Canvas 的 Pixels 属性逐点获取像素点的颜色值。

关键字:C++Builder、图形、图像、画布

引言:自 Windows 诞生以来,可以通过 GDI(Graphics Device Interface)来实现图形的绘制。

然而对于初学者来说,庞大复杂的 GDI 绘图系统是一个难以跨越的学习障碍。所幸的是,在

C++Builder 绘图系统中,提供了一个简易可行的画布( Canvas),可以用非常直观的方式来实现

Windows 下的绘图功能。C++Builder 提供了 Image 组件,可以很方便地装载图像,以及进行图像处

理。

正文:

1 在窗体上作图

1.1 知识要点

1. 画布( Canvas)

在 C++Builder 中,几乎所有的可视化组件(包括:Form、Image、Bitmap、PaintBox)都包含

Canvas 属性。Canvas 包含了许多和绘图有关的性质,如 Pen、Brush、Pixels、Font 等,另外它还包

含了各种绘图的函数,如 LineTo、Rectangle、MoveTo、Polygon 等。

(1)Canvas 类主要属性有:

Font:画布绘制文本所用的字体。

Brush:用于填充背景的画笔刷。

Pen:用来画线和描述图形轮廓的画笔。

PenPos:当前绘图位置的坐标。

Pixels:画布像素数组。

(2)Canvas 类主要方法有:

Arc:用当前画笔在画布上画圆弧。

Chord:绘制由直线和椭圆相交而成的一个封闭形状。

CopyRect:将图形的一部分从另一个画布复制过来。

Ellipse:在给定的区域绘制椭圆。

FillRect:用当前画刷填充指定的矩形。

FloodFill:用当前画刷填充指定的区域。

(3)LineTo 类主要方法有:

MoveTo:连同 LineTo 绘制直线。

Polygon:绘出一系列的线,串起所传入的各个点,并从最后一点到第一点绘制一条线。

Polyline:绘出一系列的线,串起所传入的各个点。

Rectangle:绘制圆角矩形。

StretchDraw:在画布上给定的大小绘制图像。

TextOut:在画布上写出字符串。

TextRect:在限定的区域写出字符串,区域之外的字符串不会被显示出来。

2. 颜色常数

在 C++Builder 中提供了许多颜色的预定常数,这些预设颜色都以 cl(cl 代表 color)为启始字

※ 1 ※

o

C++Builder 图形、图像及实例w

ok

cn

符命名。例如 clRed 代表红色,clBlue 代表蓝色,clGreen 代表绿色等等。另外 C++Builder 也将 Windows

的基本颜色以常数定义,如 clWindow 及 clMenu 分别代表 Window 及 Menu (菜单)的颜色。

下面列出部分 C++Builder 定义的颜色常数:

clBlack:黑色。

clGreen:绿色。

clOlive:橄榄绿。

clNavy:海蓝色。

clPurple:紫色。

clTeal:青紫色。

clGray:灰色。

clSilver:银色。

clRed:红色。

clLime:灰绿色。

clBlue:蓝色。

clAqua:淡绿青色。

clWhite:白色。

clBackground:Window 背景色。clActiveCaption:活动视窗的标题色。clInactiveCaption:非活动视窗的标题色。clMenu:Menu 的颜色。

clWindow:Windows 的背景色。clMenuText:Menu 文字的颜色。clWindowText:Window 内文字的颜色。clCaptionText:标题文字的颜色。clActiveBorder:活动视窗的边界颜色。

clHighlight:高亮度 Windows 颜色。

clHightlightText:被选取文字的颜色。

clGrayText:灰色文字的颜色。

clBtnText:Button 内文字的颜色。

以下的程序表示将画布中(3,5)这一像素点的颜色设为蓝色:

Canvas -> Pixels [3][5]=clBlue;

另外,也可以利用以下的叙述来设定画笔的颜色为蓝色:

Canvas->Pen->Color=RGB(0,0,255);

3. RGB 函数

任何一种颜色都是由红、绿、蓝三种基本色构成的。RGB 函数是 Windows 系统用以表示颜色

的方式,它们用三个字节型参数变量,分别代表红色(Red)、绿色(Green)及蓝色(Blue)的强度

值(0~255 之间),组合起来表示颜色。例如 RGB(255,0,0)代表红色(RGB(255,0,0)所代表的

颜色和颜色常数 clRed 是相同的)。

如果 RGB 函数中的三个参数相同,即红、绿、蓝的强度值一样,则其代表的颜色是黑白的。

例如 RGB(255,255,255)代表白色,RGB(0,0,0)代表黑色。

4. Tcolor 类

Tcolor 是表示颜色的类,其实例可以是 clRed、clBlue、clGreen 等刚才介绍到的颜色常数,例

如:

Tcolor color=clRed;

也可以使用 RGB 函数来取值,例如:

※ 2 ※

o

ok

cn

Tcolor color= RGB(4, 34, 253);

5. Pen 和 Brush

Tpen 是在 Canvas 画线所使用的“笔”,因此所有和线条有关的绘图函数都会受 Tpen 影响,如

LineTo、Ellipse、Polygon、PolyLine、Rectangle 等函数都使用“笔”来画线,可以利用 Canvas.Pen

来存取 Pen,并且可以修改 Pen 的性质,这些性质包含 Color、Width、Style,以及 Mode 等。Style

属性用来设置画笔样式:

Pen->Style=psSolid,表示画笔是实心; =psDash 表示破折线; =psDot 表示点线; =psDashDot

表示破折线+点线;=psClear 表示透明线。

Width 属性用来设置画笔的宽度,Pen->Width=5 表示画笔的宽度为 5 个像素。

Color 属性用来设定画笔的颜色。例如:Canvas->Pen->Color=clBlue;则表示将画笔的颜色设为

蓝色。Tbrush 可用来在 Canvas 的特定区域下着色。和 Tpen 不同的是,Tbrush 可以用不同的颜色、

样式及图案来填满 Canvas 的特定区域,而 Tpen 则是用来在 Canvas 上画线。

Tbrush 的 Style 属性有 bsHorizontal、bsVertical、bsFDiagonal、bsBDiagonal、bsCross、bsDiagCross

几种,分别代表实心、透明、水平线、垂直线、左上到右下的斜线,左下到右上的斜线、垂直交叉

线、对角交叉线这几种填充方案。

其中 bsClear 为默认值。

Tbrush 的 Color 属性设定与 Pen 的 Color 属性相一致。

6. 常用的绘图函数

1)Canvas->MoveTo(int X, int Y);

函数用法:

MoveTo 是用以在使用 LineTo 之前设定画笔位置。使用此函数和直接设定Canvas 的 PenPos 属

性的效果相同。

2)Canvas->LineTo(int X, int Y);

函数用法:

LineTo 函数用来从画笔位置画一条至(X,Y)点的直线,此直线不包含(X,Y)点,同时将

画笔位置移至(X,Y)。所画的直线形状与 Pen 的属性一致。

3)Canvas->Ellipse(int X1,int Y1,int X2,int Y2);

函数用法:

利用 Ellipse 可在 Canvas 上画出圆形或椭圆形。其环绕矩形的左上角坐标为(X1,Y1)而右下

角坐标为(X2,Y2)。若该矩形为正方形,则所绘图形为圆形。当此椭圆形绘制时,使用 Pen 的值

画出其外框,而使用 Brush 值填满其内部。

4)Canvas->Rectangle(int X1, int Y1, int X2,int Y2);

函数用法:

在 Canvas 上画出一矩形。其矩形的左上角坐标为(X1,Y1),而右下角坐标为(X2,Y2),矩

形内部的填充效果根据画刷的类型确定。

5)Canvas->Refresh()

函数用法:

清除画布。

1.2 实例制作——用鼠标随意作图

1. 程序设计思路

所谓在窗体上任意作图,就是要用鼠标在窗体上弹起弹落来确定所要画图形的起始位置,并设

定好 Pen 和 Brush 的各种属性,可在窗体上绘制直线、矩形、椭圆等图形。

2. 程序实现步骤

(1)打开 C++Builder,生成一个新的应用程序,在工程中加入的组件如表1 所示。

※ 3 ※

o

ww

w.

cn

表 1

ok

工程中加入的组件及其属性

ok

.n

et

.

bo

w.

.n

bo

设置好的程序界面如图 1 所示。w

.c

o

图 1

ok

程序界面4 ※

et

o

.n

ww

et

et

ok

cn

w

et

ok

.c

ok

cn

(2)定义全局变量:

int sort,ox,oy; //sort 代表要绘制图形的类别,ox、oy 表示鼠标按下去时的坐标位置

(3)在生成窗体事件中初始化 sort,编写代码如下:

void __fastcall TForm1:: FormCreate(TObject *Sender)

{

sort=0; //表示不绘制图形

}

(4)设定画笔的宽度、颜色、形状。

编写代码如下:

void __fastcall TForm1::Button6Click(TObject *Sender)

{

if(ColorDialog1->Execute())

{

TColor pencolor;

Canvas->Pen->Color=ColorDialog1->Color; //设定画笔颜色}

}

void __fastcall TForm1::RadioButton1Click(TObject *Sender){

Canvas->Pen->Style=psSolid ; //设定画笔为实线}

void __fastcall TForm1::RadioButton2Click(TObject *Sender){

Canvas->Pen->Style=psDash ; //设定画笔为破折线}

void __fastcall TForm1::RadioButton3Click(TObject *Sender)

{

Canvas->Pen->Style=psDot; //设定画笔为点线

}

void __fastcall TForm1::RadioButton4Click(TObject *Sender)

{

Canvas->Pen->Style=psDashDot ; //设定画笔为点线+破折线

}

void __fastcall TForm1::Edit1Change(TObject *Sender)

{

Canvas->Pen->Width=StrToInt(Edit1->Text); //设定线宽

}

(5)设定画刷的颜色、形状,编写代码如下:

void __fastcall TForm1::Button7Click(TObject *Sender)

{

if(ColorDialog1->Execute())

{

TColor pencolor;

Canvas->Brush->Color=ColorDialog1->Color; //设定画刷的颜色

}

}

void __fastcall TForm1::RadioButton5Click(TObject *Sender)

{

Canvas->Brush->Style=bsSolid; //设定画刷为实心

※ 5 ※

o

ok

cn

}

void __fastcall TForm1::RadioButton6Click(TObject *Sender)

{

Canvas->Brush->Style=bsClear; //设定画刷为透明

}

void __fastcall TForm1::RadioButton7Click(TObject *Sender)

{

Canvas->Brush->Style= bsHorizontal; //设定画刷为水平填充

}

void __fastcall TForm1::RadioButton8Click(TObject *Sender)

{

Canvas->Brush->Style= bsVertical; //设定画刷为垂直填充

}

(6)确定下一步是画椭圆、画直线、画矩形、清屏还是终止绘图,编写如下的代码:

void __fastcall TForm1::Button1Click(TObject *Sender)

{

sort=0;

}

void __fastcall TForm1::Button2Click(TObject *Sender)

{

sort=1;

}

void __fastcall TForm1::Button4Click(TObject *Sender)

{

sort=2;

}

void __fastcall TForm1::Button3Click(TObject *Sender)

{

sort=3;

}

void __fastcall TForm1::Button5Click(TObject *Sender)

{

Canvas -> Refresh();

}

(7)记录下鼠标在窗体上按下的坐标,即确定所要画图形的起始位置,编写如下的代码:

void __fastcall TForm1::FormMouseDown( TObject *Sender, TMouseButton Button,TShiftState

Shift, int X, int Y)

{

ox=X;

oy=Y;

}

(8)编写鼠标在弹起时程序所要做的工作,编写如下的代码:

void __fastcall TForm1::FormMouseUp(TObject *Sender, TMouseButton Button,TShiftState Shift,

int X, int Y)

{

switch(sort)

{

case 1 :

Canvas->MoveTo(ox, oy);

Canvas->LineTo(X, Y);

※ 6 ※

matlab图像处理实验报告

图像处理实验报告 姓名:陈琼暖 班级:07计科一班 学号:20070810104

目录: 实验一:灰度图像处理 (3) 实验二:灰度图像增强 (5) 实验三:二值图像处理 (8) 实验四:图像变换 (13) 大实验:车牌检测 (15)

实验一:灰度图像处理题目:直方图与灰度均衡 基本要求: (1) BMP灰度图像读取、显示、保存; (2)编程实现得出灰度图像的直方图; (3)实现灰度均衡算法. 实验过程: 1、BMP灰度图像读取、显示、保存; ?图像的读写与显示操作:用imread( )读取图像。 ?图像显示于屏幕:imshow( ) 。 ?

2、编程实现得出灰度图像的直方图; 3、实现灰度均衡算法; ?直方图均衡化可用histeq( )函数实现。 ?imhist(I) 显示直方图。直方图中bin的数目有图像的类型决定。如果I是个灰度图像,imhist将 使用默认值256个bins。如果I是一个二值图像,imhist使用两bins。 实验总结: Matlab 语言是一种简洁,可读性较强的高效率编程软件,通过运用图像处理工具箱中的有关函数,就可以对原图像进行简单的处理。 通过比较灰度原图和经均衡化后的图形可见图像变得清晰,均衡化后的直方图形状比原直方图的形状更理想。

实验二:灰度图像增强 题目:图像平滑与锐化 基本要求: (1)使用邻域平均法实现平滑运算; (2)使用中值滤波实现平滑运算; (3)使用拉普拉斯算子实现锐化运算. 实验过程: 1、 使用邻域平均法实现平滑运算; 步骤:对图像添加噪声,对带噪声的图像数据进行平滑处理; ? 对图像添加噪声 J = imnoise(I,type,parameters)

数字图像处理实验四图像几何变换

课程名称数字图像处理与分析 实验序号实验4 实验项目图像几何变换 实验地点 实验学时实验类型 指导教师实验员 专业班级 学号姓名 2017年9月25日

成绩: 教 师 评 语

三、实验软硬件环境 装有MATLAB软件的电脑 四、实验过程(实验步骤、记录、数据、分析) 1、图片比例缩放 代码: I=imread('11.jpg'); J=imresize(I,1.25); J2=imresize(I,1.25,'bicubic'); imshow(I); figure,imshow(J); figure,imshow(J2); Y=imresize(I,[100150],'bilinear');%Y=imresize(I,[mrows ncols],method)---返回一个指定行列的图像。若行列比与原图不一致,输出图像将发生变形。 figure,imshow(Y) %nearest,bilinear,bicubic为最近邻插值、双线性插值、双三次插值方法。默认为nearest。 运行结果: 分析:由实验结果可知,实现了图片放大和缩小的效果。 2、图像旋转 代码:

J=imrotate(I,32,'bilinear');%J=imrotate(I,angle,method,’crop’)------crop用于剪切旋转后增大的图像部分,返回和原图大小一样的图象。 imshow(I); figure,imshow(J) 运行结果: 分析:由实验结果可知,实现了图片旋转的效果 3、图像剪切 代码:

J=imcrop(I); figure(1),imshow(I);title('yuantu'); figure(2),imshow(J);title('croptu') J1=imcrop(I,[604010090]);%对指定区域进行剪切操作figure(3),imshow(J1);title('croptu2'); 运行结果: 运行代码后,出现如下界面,选中要裁剪的区域,双击被选中的区域 出现以下界面:

数字图像处理实验报告

数字图像处理实验报告 实验一数字图像基本操作及灰度调整 一、实验目的 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) 对比拉伸:在实际应用中,为了突出图像中感兴趣的研究对象,常常要求 局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸: 其对应的数学表达式为:

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

数字图像处理 实验报告 学号: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图像处理基础及图像灰度变换

实验一Matlab图像处理基础及图像灰度变换 一、实验目的 了解Matlab平台下的图像编程环境,熟悉Matlab中的DIP (Digital Image Processing)工具箱;掌握Matlab中图像的表示方法,图像类型、数据类型的种类及各自的特点,并知道怎样在它们之间进行转换。掌握Matlab环境下的一些最基本的图像处理操作,如读图像、写图像、查看图像信息和格式、尺寸和灰度的伸缩等等;通过实验掌握图像直方图的描绘方法,加深直方图形状与图像特征间关系间的理解;加深对直方图均衡算法的理解。 二、实验内容 1.从硬盘中读取一幅灰度图像; 2.显示图像信息,查看图像格式、大小、位深等内容; 3.用灰度面积法编写求图像方图的Matlab程序,并画图; 4.把第3步的结果与直接用Matlab工具箱中函数histogram的结果进行比较,以衡量第3步中程序的正确性。 5.对读入的图像进行直方图均衡化,画出处理后的直方图,并比较处理前后图像效果的变化。 三、知识要点 1.Matlab6.5支持的图像图形格式 TIFF, JEPG, GIF, BMP, PNG, XWD (X Window Dump),其中GIF不支持写。 2.与图像处理相关的最基本函数 读:imread; 写:imwrite; 显示:imshow; 信息查看:imfinfo; 3.Matlab6.5支持的数据类 double, unit8, int8, uint16, int16, uint32, int32, single, char (2 bytes per element), logical. 4.Matlab6.5支持的图像类型 Intensity images, binary images, indexed images, RGB image 5.数据类及图像类型间的基本转换函数 数据类转换:B = data_class_name(A);

(完整版)图形图像处理案例教程photoshopcs5教案.doc

PS 教学简案建议学时: 64 学时

课题任务参考资料教学方法 教学目标 任务学习重点教学实施 项目一认识Photoshop CS5 本项目参考节数: 6 课时 认识Photoshop CS5 教学配套课件 教师讲解、示范演示、操作辅导, 授课节数 6 课时 学生操作 1.认识 Photoshop CS5 的工作界面 2.学会整理操作窗口 3.掌握 Photoshop 文件的基本操作,学会新建、打开、关闭、保存文件 4.初步掌握图层的基本操作 5.运用历史记录面板还原操作 1.认识Photoshop CS5 的工作界面 2.文件的管理 3.制作一张简单的广告 1.认识Photoshop CS5 的工作界面 2.掌握Photoshop 文件的基本操作,学会新建、打开、关闭、保存文件 3.初步掌握图层的基本操作 任务 1认识Photoshop CS5的工作界面 任务简述:认识Photoshop CS5 的工作界面以及各种菜单、工具 相关知识:(教师讲解、演示,学生操作) 1.认识工作区,进行屏幕切换操作 2.认识工具箱,选择工具进行操作 3.认识工具与属性栏、面板,对不同工具的属性栏进行操作 任务实施:

教学检测教学总结任务 2文件的管理 任务简述:文件管理,包括新建文件、打开文件,把文件以不同的格式存储到指定的位置等,及图层基本操作。 相关知识:(教师讲解、演示,学生操作) 1.文件的管理 2.图层 3.文件格式 任务实施:(教师演示,学生操作训练、教师指导) 按操作步骤操作 任务 3制作一张简单的广告 任务简述:制作一张简单的广告。 相关知识:(教师讲解、演示,学生操作) 1.新建图层 2.图层的复制 3.调整图层顺序 任务实施:(教师演示,学生操作训练、教师指导) 按操作步骤操作 1.任务过程中检查操作效果、检查任务作品 2.完成自我检测 3.布置作业 完成自我检测

图像处理实验报告

重庆交通大学 学生实验报告 实验课程名称数字图像处理 开课实验室数学实验室 学院理学院年级信息与计算科学专业 2 班学生姓名李伟凯学号631122020203 开课时间2014 至2015 学年第 1 学期

实验(一)图像处理基础 ?实验目的 学习Matlab软件的图像处理工具箱,掌握常用的一些图像处理命令;通过编程实现几种简单的图像增强算法,加强对图像增强的理解。 ?实验内容 题目A.打开Matlab软件帮助,学习了解Matlab中图像处理工具箱的基本功能;题目B.掌握以下常见图像处理函数的使用: imread( ) imageinfo( ) imwrite( ) imopen( ) imclose( ) imshow( ) impixel( ) imresize( ) imadjust( ) imnoise( ) imrotate( ) im2bw( ) rgb2gray( ) 题目C.编程实现对图像的线性灰度拉伸y = ax + b,函数形式为:imstrech(I, a, b); 题目D.编程实现对图像进行直方图均衡化处理,并将实验结果与Matab中imhist 命令结果比较。 三、实验结果 1).基本图像处理函数的使用: I=imread('rice.png'); se = strel('disk',1); I_opened = imopen(I,se); %对边缘进行平滑 subplot(1,2,1), imshow(I), title('原始图像') subplot(1,2,2), imshow(I_opened), title('平滑图像') 原始图像平滑图像

图形与图像处理实训指导书.

图形与图像处理实训指导书 电子商务专业适用 王玉清编写 大连职业技术学院 信息技术系 电子商务教研室

实训一烧焦的纸片(3学时) 一、实训条件 安装有《Adobe Photoshop7.0》软件的微机,实训用的素材及效果图。 二、实训目的 掌握套索工具(Lasso Tool),快速蒙板(Quick Mask)操作,选择区域的加减操作, 高斯模糊(Gaussian Blur)滤镜的应用,色相/饱和度(Hue/Saturation)校正的设置。 三、实训内容及实训步骤 1 打开Photshop,按Ctrl+O键,打开一幅RGB的图像文件。本示例中图像高为 200pixels(像素),宽为200pixels(像素),分辩率为72ppi. 2 按D键设置前景色为黑色,背景色为白色。然后在工具箱中选择Lasso Tool(套索) 工具,在图像中一边抖动手一边画一个选择区域。 3 在工具箱中双击Quick Mask(快速蒙板)钮,在打开的对话框中进行设置,按OK(确 定)钮后进入快速蒙板状态。 4 选择菜单Filter(滤镜)中的Pixelate(像素化)命令,在打开的子菜单中选择Crystallize(晶格化)项,在弹出的对话框中设置Cell Size(单元格大小)为3,按OK (确定)钮后选择区域呈毛刺边状。按Q键返回到正常图像状态。 5如果屏幕上没有Channels(通道)面板。可选择菜单window(窗口)中的show channels(显示通道)命令,打开Channels(通道)面板。单击面板下方的Save selectionas channel(将域保存为通道)图标,将所选区域保存在通道Alpha 1中 6按Alt +Delete 键用白色填充所选区域。选择菜单select(选择)中 modify (修正) 命令,在打开的子菜单中选择Expand (扩展)项,在弹出的对话框中设置Expand By(扩 展量)为4 pixels (像素),按OK(确定)钮退出对话框。 7按Ctrl+Alt+D键进行羽化设置,在找开的对话框中设置Feather Radius (羽化半 径)为3 pixels (像素),按OK(确定)钮退出对话框。 8选择菜单Select(选择)中的Load Selection (载入选区)命令,在打开的对话框中 如图2.26所示进行各项设置,按OK(确定)钮后得到一条选择带。 9按Ctrl+U键打开Hue/Saturation(色相/饱和度)对话框,首先选中Colorize (着 色)色,(确定)钮后选择带呈深褐色。 10这时仍然显示着选择区域,按Ctrl+J键将所选区域复制到图层1上,在Layers(图 层)面板中用鼠标右键单击图层1在打开的菜单中选择Layer Style (图层风格)命令, 在弹出的对话框中进行如图2.28所示的设置,按OK(确定)钮后,就可以得到被火烧了 一个洞的逼真效果. 四、实训考核方法 学生将作品通过网络交到教师机内,教师根据考核点,按等级优、良、中、及格、 不及格进行评定。 1

图像显示与处理实验报告

图像显示与处理实验报告 班级:信息123班 姓名:杨阳 学号: 201227073

图像显示与处理 一、实验目的 1、掌握BMP文件格式,熟悉各参数和图像数据的存放方式; 2、通过编程实现对图像内容的读取(到内存中); 3、完成图像的显示,掌握设备环境上下文(DC)的使用方式。 4、对图像进行二值化、求边缘、增强等简单处理。 二、实验仪器设备、工具及材料 设备:多媒体计算机。 软件:Visual Studio 6.0及以上版本。 材料:灰度图像,24位真彩色图像(均为非压缩BMP格式)等。 三、实验内容及步骤 1、BMP文件格式 BMP是Bitmap(位图)的简写,是Windows操作系统中的标准图像文件格式。Windows 3.0以前的BMP图文件格式与显示设备有关,称为设备相关位图DDB文件格式。Windows 3.0以后的BMP图象文件与显示设备无关,因此称为设备无关位图DIB(device-independent bitmap)格式。 BMP文件由4部分组成:位图文件头(BITMAPFILEHEADER)、位图信息头(BITMAPINFOHEADER)、彩色表(RGBQUAD)和图像数据阵列。对应的数据结构定义如下(来自MSDN)。 typedef struct tagBITMAPFILEHEADER { WORD bfType; // file type, must be BM DWORD bfSize; // size (bytes) of the bitmap file WORD bfReserved1; WORD bfReserved2; DWORD bfOffBits; // offset (bytes) from this structure to the bitmap bits } BITMAPFILEHEADER; typedef struct tagBITMAPINFO { BITMAPINFOHEADER bmiHeader; RGBQUAD bmiColors[1]; } BITMAPINFO, *PBITMAPINFO; typedef struct tagRGBQUAD { BYTE rgbBlue; BYTE rgbGreen; BYTE rgbRed; BYTE rgbReserved; } RGBQUAD; typedef struct tagBITMAPINFOHEADER { DWORD biSize; // bytes required by the structure LONG biWidth; LONG biHeight; WORD biPlanes; // number of planes, must be 1 WORD biBitCount; // number of bits-per-pixel DWORD biCompression; // BI_RGB: uncompressed DWORD biSizeImage; // size(bytes) of image, set to 0 for BI_RGB

数字图像处理实验报告92184

数字图像处理试验报告 实验二:数字图像的空间滤波和频域滤波 姓名: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

图像处理实验报告模板

桂林电子科技大学 实验报告 一、实验目的 1、掌握基本的图像处理方法,包括读取、写入、显示、剪切、运算以及快操作 等等。 2、掌握常用的图像变换方法,分析变换结果。 二、实验内容 编写程序,在Matlab下调试运行,并注意观察分析结果。 1、使用imread函数分别读入图象cameraman.tif 、canoe.tif,并使用subplot 和imshow函数进行显示。再使用imcrop对第一幅图片进行剪切,并保存成文件。 2、申明向量X和矩阵A,使用二维傅立叶变换和fftshift函数进行处理,观察向量和矩阵结果。 3、创建一个1000*1000的全0图像,其中选择某矩形区域设置其象素为1(350:649,475:524),对该二值图逆时针旋转45°角,比较旋转前后的图像和傅里叶变换频谱。 三、实验设备、环境 计算机 四、实验原理 1、图像平滑算法 (1) 简单平均法:

设某像素的灰度值为,迭加噪声后,一幅含噪声的图像可表示为 现取以为中心的邻域S ——NN 方形窗口,在S 域内进行局部平均,得 式中,N 的平方为窗口内像素总数。令 ,则 式中,加权函数 (2)中值滤波: 中值滤波是一种非线性的信号处理方法。中值滤波器在1971 年由J.w.Jukey 首先提出并应用在一维信号处理技术(时间序列分析)中,后来被二维图象信号处理技术所引用。中值滤波在一定的条件下可以克服线性滤波器如最小均方滤波、均直滤波等带来的图象细节模糊,而且对滤除脉冲干扰及图象扫描噪声最为有效。由于在实际运算过程中不需要图象的统计特征,因此这也带来不少方便。但是对于一些细节多,特别是点、线、尖顶细节多的图象不宜采用中值滤波。中值滤波一般采用一个含有奇数个点的滑动窗口,将窗口中各点灰度值的中值来替代值定点(一般是窗口的中心点)的灰度值。对于奇数个元素,中值是指按大小排序后,中间的数值;对于偶数个元素,中值是指排序后中间两个元素灰度值的平均值。 一般选用3*3或5*5窗口,形状可分为方形或十字形,如下图所示。 (a) 方形 (b) 十字形 图2-1 二维中值滤波窗口形状 二维中值滤波可表示为

图形图像处理实验报告

第四次实验报告 实验课程:图像图像处理实验人:尹丽(200921020047) 实验时间:2012年4月19日实验地点:5-602 指导老师:夏倩老师成绩: 一、实验内容: ⑴图像的锐化:使用Sobel,Laplacian 算子分别对图像进行运算,观察并体会运算结果。 ⑵综合练习:对需要进行处理的图像分析,正确运用所学的知识,采用正确的步骤,对图像进行各类处理,以得到令人满意的图像效果。 二、实验目的: 学会用Matlab中的下列函数对输入图像按实验内容进行运算;感受各种不同的图像处理方法对最终图像效果的影响。(imfilter;fspecial;) 三、实验步骤:

1、仔细阅读Matlab 帮助文件中有关以上函数的使用说明,能充分理解其使用方法并能运用它们完成实验内容。 2、将Fig3.41(c).jpg 图像文件读入Matlab ,使用filter2函数分别采用不同的算子对其作锐化运算,显示运算前后的图像。 3、算子的输入可采用直接输入法。其中Sobel ,Laplacian ,也可用fspecial 函数产生。 4、各类算子如下: ???? ??????---121000121 ??????????-111181111 5、将Fig3.46(a).jpg 图像文件读入Matlab ,按照以下步骤对其进行处理: (1)用带对角线的Laplacian 对其处理,以增强边缘。 (2)用imadd 函数叠加原始图像。可以看出噪声增强了,应想法降低。 (3)获取Sobel 模板并用filter2对其进行5×5邻域平均,以减少噪声。 5(1)实验代码如图: 对角线Laplacian Sobel 垂直梯度

ps图形图像处理案例教程试题

《图形图像处理案例教程》题库 一、单选题 1.下列哪种方法能打开文件:() A.“文件”菜单中“打开”命令 B.Ctrl+S C.状态栏上“打开”按钮 D.Ctrl 双击界面空白 答案:A 2.绘制选框和图形时,以某点为中心应按住:()。 A.Ctrl B.Alt C.Shift D.Tab 答案:B 3.橡皮擦工具不包括:()。 A.橡皮擦 B.彩色橡皮 C.背景橡皮擦 D.魔术捧橡皮擦答案:B 4.每个图像文件最多有()图层。 A.80 B.800 C.8000 D.80000 答案:C 5.以下哪些工具属性栏包含“容差”:()。 A.铅笔 B.渐变 C.画图 D.油漆桶 答案:D 6.新建文件时,可选择的图像模式有:()。 A.位图 B.RGB C.CMYK D.全是 答案:D 7.设置绘图颜色可以用哪些方法:()。 A.拾色器 B.颜色面板 C.色板面板 D.都可以 答案:D 8.选择“选择”菜单中()菜单命令可以选取特定颜色范围内的图像。 A.全选 B.反选 C.色彩范围 D.取消选择 答案:C 9.选择“选择”菜单下的()命令可以执行反选操作。 A.全选 B.反选 C.羽化 D.载入选区 答案:B 10.选择“选择”菜单下的()命令可以羽化选区。 A.全选 B.反选 C.羽化 D.载入选区 答案:C 11.下面()选项的方法能对选区进行变换或修改操作。 A.选择[选择]下[变换选区]菜单命令 B.选择[选择]下[修改]子菜单中的命令 C.选择[选择]下[保存选区]菜单命令

D.选择[选择]下[变换选区]菜单命令后再选择[编辑]下[变换]子菜单中的命令。 答案:A 12.选择“编辑”菜单下的()命令可以将剪贴板上图像粘帖到选区。 A.粘贴 B.合并拷贝 C.粘贴入 D.拷贝 答案:C 13.下面哪些方法能对选到的图像进行变换操作()。 A.选择[图像]下[旋转画布]子菜单中的命令 B.按【Ctrl T】键 C.选择[编辑]下[变换]子菜单中的变换命令 D.选择[编辑]下[变换选区]菜单命令 答案:B 14.选择[编辑]下[填充]命令不能对图像区域进行()填充。 A.前景色 B.背景色 C.图案 D.渐变色 答案:D 15..通过图层面板复制层时,先选取需要复制的图层,然后将其拖动到图层面板底部的()按钮上即可。 A.删除 B.新建 C.图层效果 D.新建图层蒙版 答案:B 16.通过下面()方法能创建路径。 A.使用钢笔工具 B.使用转换点工具 C.使用添加锚点工具 D.先建立选区,再将其转化为路径答案:A 17.自由变换的热键是()。 A.Ctrl F B.Ctrl R C.Ctrl E D.Ctrl T 答案:D 18.退出Photoshop程序命令是()。 A.Ctrl+F4 B.Ctrl+W C.ALT+F4 D.ALT+W 答案:B 19.创建一个新文件用命令()。 A.Ctrl O B.Ctrl N C.ALT F4 D.Ctrl W 答案:B 20.按键盘“T”键可以激活工具()。 A.文字工具 B.渐变工具 C.选取工具 D.铅笔工具 答案:A 21.打开图像文件用命令()。 A.Ctrl+O B.Ctrl+X C.Ctrl+D D.Ctrl+W 答案:A

数字图像处理实验报告实验三

中南大学 数字图像处理实验报告实验三数学形态学及其应用

实验三 数学形态学及其应用 一.实验目的 1.了解二值形态学的基本运算 2.掌握基本形态学运算的实现 3.了解形态操作的应用 二.实验基本原理 腐蚀和膨胀是数学形态学最基本的变换,数学形态学的应用几乎覆盖了图像处理的所有领域,给出利用数学形态学对二值图像处理的一些运算。 膨胀就是把连接成分的边界扩大一层的处理。而收缩则是把连接成分的边界点去掉从而缩小一层的处理。 二值形态学 I(x,y), T(i,j)为 0/1图像Θ 腐蚀:[]),(&),(),)((),(0,j i T j y i x I AND y x T I y x E m j i ++=Θ== 膨胀:[]),(&),(),)((),(0 ,j i T j y i x I OR y x T I y x D m j i ++=⊕== 灰度形态学T(i,j)可取10以外的值 腐蚀: []),(),(min ),)((),(1 ,0j i T j y i x I y x T I y x E m j i -++=Θ=-≤≤ 膨胀: []),(),(max ),)((),(1 ,0j i T j y i x I y x T I y x D m j i +++=⊕=-≤≤ 1.腐蚀Erosion: {}x B x B X x ?=Θ: 1B 删两边 2B 删右上 图5-1 剥去一层(皮) 2.膨胀Dilation: {}X B x B X x ↑⊕:= 1B 补两边 2B 补左下 图5-2 添上一层(漆) 3.开运算open :

B B X ⊕Θ=)(X B 4.闭close :∨ Θ⊕=B B X X B )( 5.HMT(Hit-Miss Transform:击中——击不中变换) 条件严格的模板匹配 ),(21T T T =模板由两部分组成。1T :物体,2T :背景。 {} C x x i X T X T X T X ??=?21, 图5-3 击不中变换示意图 性质: (1)φ=2T 时,1T X T X Θ=? (2))()()(21T X T X T X C Θ?Θ=? C T X T X )()(21Θ?Θ= )/()(21T X T X ΘΘ= 6.细化/粗化 (1)细化(Thin ) C T X X T X XoT )(/??=?= 去掉满足匹配条件的点。 图5-4 细化示意图 系统细化{}n B oB XoB T Xo ))(((21=, i B 是1-i B 旋转的结果(90?,180?,270?)共8种情况 适于细化的结构元素 1111000d d I = d d d L 10110 0= (2)粗化(Thick ) )(T X X T X ??=? 用(){}0,01=T (){}0,12=T 时,X X X T X =?=? X 21 1 1 2 3 T ? XoT X ? X X ?T X ΘT T ⊕

图像处理实验报告

实验报告 实验课程名称:数字图像处理 班级:学号:姓名: 注:1、每个实验中各项成绩按照10分制评定,每个实验成绩为两项总和20分。 2、平均成绩取三个实验平均成绩。 2016年 4 月18日

实验一 图像的二维离散傅立叶变换 一、实验目的 掌握图像的二维离散傅立叶变换以及性质 二、实验要求 1) 建立输入图像,在64?64的黑色图像矩阵的中心建立16?16的白色矩形图像点阵, 形成图像文件。对输入图像进行二维傅立叶变换,将原始图像及变换图像(三维、中心化)都显示于屏幕上。 2) 调整输入图像中白色矩形的位置,再进行变换,将原始图像及变换图像(三维、中 心化)都显示于屏幕上,比较变换结果。 3) 调整输入图像中白色矩形的尺寸(40?40,4?4),再进行变换,将原始图像及变 换图像(三维、中心化)都显示于屏幕上,比较变换结果。 三、实验仪器设备及软件 HP D538、MATLAB 四、实验原理 傅里叶变换作为分析数字图像的有利工具,因其可分离性、平移性、周期性和共轭对称性可以定量地方分析数字化系统,并且变换后的图像使得时间域和频域间的联系能够方便直观地解决许多问题。实验通过MATLAB 实验该项技能。 设),(y x f 是在空间域上等间隔采样得到的M ×N 的二维离散信号,x 和y 是离散实变量,u 和v 为离散频率变量,则二维离散傅里叶变换对一般地定义为 ∑∑ -=-=+-= 101 )],( 2ex p[),(1 ),(M x N y N yu M xu j y x f MN v u F π,1,0=u …,M-1;y=0,1,…N-1 ∑∑-=-=+=101 )],( 2ex p[),(),(M x N y N uy M ux j v u F y x f π ,1,0=x …,M-1;y=0,1,…N-1 在图像处理中,有事为了讨论上的方便,取M=N ,这样二维离散傅里叶变换对就定义为 ,]) (2ex p[),(1 ),(101 ∑∑ -=-=+- = N x N y N yu xu j y x f N v u F π 1,0,=v u …,N-1 ,]) (2ex p[ ),(1 ),(101 ∑∑-=-=+= N u N v N vy ux j v u F N y x f π 1,0,=y x ,…,N-1 其中,]/)(2exp[N yv xu j +-π是正变换核,]/)(2exp[N vy ux j +π是反变换核。将二维离散傅里叶变换的频谱的平方定义为),(y x f 的功率谱,记为 ),(),(|),(|),(222v u I v u R v u F v u P +== 功率谱反映了二维离散信号的能量在空间频率域上的分布情况。 五、实验步骤、程序及结果: 1、实验步骤: (1)、编写程序建立输入图像; (2)、对上述图像进行二维傅立叶变换,观察其频谱 (3)、改变输入图像中白框的位置,在进行二维傅里叶变换,观察频谱;

用matlab数字图像处理四个实验

数字图像处理 实验指导书

目录 实验一MATLAB数字图像处理初步实验二图像的代数运算 实验三图像增强-空间滤波 实验四图像分割 3

实验一 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)

(完整版)图形图像处理案例教程photoshopcs5教案

PS 教学简案建议学时:64学时

项目一认识Photoshop CS5 本项目参考节数:6课时

教学实施 (总课时:6学时) 【课题导入】(5分钟) 项目任务介绍,学习目标、学习重点阐述。 【教授新课】(总学时:4课时) 任务1认识Photoshop CS5 的工作界面(1课时) 任务分析:认识Photoshop CS5的工作界面以及各个菜单、工具 相关知识:(教师讲解、演示,学生操作)(20分钟) 1.认识工作区,进行屏幕切换操作 2.认识工具箱,选择工具进行操作 3.认识工具与属性栏、面板,对不同工具的属性栏进行操作 任务实施:(20分钟) 教师操作演练,学生进行操作训练,教师进行操作指导。 检查学生操作效果,检查学生完成的任务作品。 任务2文件的管理(1课时) 任务分析:文件管理,包括新建文件、打开文件,把文件以不同的格式存储到指定的位置等,及图层基本操作。 相关知识:(教师讲解、演示,学生操作)(15分钟) 1.文件的管理 2.图层 3.文件格式 任务实施:(教师演示,学生操作训练、教师指导)(30分钟) 教师操作演练,学生进行操作训练,教师进行操作指导。 检查学生操作效果,检查学生完成的任务作品。 任务3制作一张简单的广告(约2课时) 任务分析:制作一张简单的广告。 相关知识:(教师讲解、演示,学生操作)(20分钟)

1.新建图层 2.图层的复制 3.调整图层顺序 任务实施:(教师演示,学生操作训练、教师指导)(45分钟)教师操作演练,学生进行操作训练,教师进行操作指导。 学生进行多次操作训练。 检查学生操作效果,检查学生完成的任务作品。 【教学检测】 (约2课时) 1.完成项目实训 2.项目实训完成情况检查,评价总结 【教学总结】 (10分钟) 教学内容 教学完成情况 学生学习掌握情况

图像处理 实验报告

摘要: 图像处理,用计算机对图像进行分析,以达到所需结果的技术。又称影像处理。基本内容图像处理一般指数字图像处理。数字图像是指用数字摄像机、扫描仪等设备经过采样和数字化得到的一个大的二维数组,该数组的元素称为像素,其值为一整数,称为灰度值。图像处理技术的主要内容包括图像压缩,增强和复原,匹配、描述和识别3个部分。图像处理一般指数字图像处理。 数字图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。目前,图像处理演示系统应用领域广泛医学、军事、科研、商业等领域。因为数字图像处理技术易于实现非线性处理,处理程序和处理参数可变,故是一项通用性强,精度高,处理方法灵活,信息保存、传送可靠的图像处理技术。本图像处理演示系统以数字图像处理理论为基础,对某些常用功能进行界面化设计,便于初级用户的操作。 设计要求 可视化界面,采用多幅不同形式图像验证系统的正确性; 合理选择不同形式图像,反应各功能模块的效果及验证系统的正确性 对图像进行灰度级映射,对比分析变换前后的直方图变化; 1.课题目的与要求 目的: 基本功能:彩色图像转灰度图像 图像的几何空间变换:平移,旋转,剪切,缩放 图像的算术处理:加、减、乘 图像的灰度拉伸方法(包含参数设置); 直方图的统计和绘制;直方图均衡化和规定化; 要求: 1、熟悉图像点运算、代数运算、几何运算的基本定

义和常见方法; 2、掌握在MTLAB中对图像进行点运算、代数运算、几何运算的方法 3、掌握在MATLAB中进行插值的方法 4、运用MATLAB语言进行图像的插值缩放和插值旋转等 5、学会运用图像的灰度拉伸方法 6、学会运用图像的直方图设计和绘制;以及均衡化和规定化 7、进一步熟悉了解MATLAB语言的应用,将数字图像处理更好的应用于实际2.课题设计内容描述 1>彩色图像转化灰度图像: 大部分图像都是RGB格式。RGB是指红,绿,蓝三色。通常是每一色都是256个级。相当于过去摄影里提到了8级灰阶。 真彩色图像通常是就是指RGB。通常是三个8位,合起来是24位。不过每一个颜色并不一定是8位。比如有些显卡可以显示16位,或者是32位。所以就有16位真彩和32位真彩。 在一些特殊环境下需要将真彩色转换成灰度图像。 1单独处理每一个颜色分量。 2.处理图像的“灰度“,有时候又称为“高度”。边缘加强,平滑,去噪,加 锐度等。 3.当用黑白打印机打印照片时,通常也需要将彩色转成灰白,处理后再打印 4.摄影里,通过黑白照片体现“型体”与“线条”,“光线”。 2>图像的几何空间变化: 图像平移是将图像进行上下左右的等比例变化,不改变图像的特征,只改变位置。 图像比例缩放是指将给定的图像在x轴方向按比例缩放fx倍,在y轴按比例缩放fy倍,从而获得一幅新的图像。如果fx=fy,即在x轴方向和y轴方向缩放的比率相同,称这样的比例缩放为图像的全比例缩放。如果fx≠fy,图像的比例缩放会改变原始图象的像素间的相对位置,产生几何畸变。 旋转。一般图像的旋转是以图像的中心为原点,旋转一定的角度,也就是将图像上的所有像素都旋转一个相同的角度。旋转后图像的的大小一般会改变,即可以把转出显示区域的图像截去,或者扩大图像范围来显示所有的图像。图像的旋转变换也可以用矩阵变换来表示。

天津大学图像处理实验报告

光电图像处理实验报告 精仪学院测控四班王经纬 3010202114 实验1 离散图像的傅立叶变换 。 1. 实验内容及步骤: (1)利用Matlab图像处理软件进行离散图像傅立叶变换, 如给出一幅图像(w01.tif),其傅立叶变换程序如下: >>i=imread('D:\w01.tif'); >>figure(1); >>imshow(i); >>colorbar; >>j=fft2(i); >>k=fftshift(j); >>figure(2); >>l=log(abs(k)); >>imshow( l , [ ] ); >>colorbar 结果显示如下图所示: (2)分析图像的傅立叶频谱图; 由上图可以看出,频谱图低频部分较多,高频也有能量,说明图像中存在明显的明亮变化。 (3)自行设计一幅图像,验证离散傅立叶变换的性质,如:频谱图中高频分量迅速衰减,可分离性,平移,周期性与共轭对称性,旋转、线性和比例性,平均值。

1)傅里叶变换: 2)平移: X轴平移图像 X轴平移图像的傅立叶谱 Y轴平移图像 Y轴平移图像的傅立叶谱3)旋转特性: 4)尺度变换:

2. 思考题: 描述空间频率的概念。 空间频率是单位长度内亮度作周期性变化的次数,即现对/mm 。对于FT 基函数)(2sin )(2cos 2ux j ux e ux j πππ-=-。)(2cos ux π的最大值直线在坐标轴上的截距是u /1,则u /1表示空间周期。 实验2 修改直方图图像增强 1. 实验内容及步骤: (1) 读入一幅图像, 使用imhist( )函数产生图像的直方图,分析它的直方图分布及反映图像的特点; i=imread('D:\w01.tif'); imshow(i); imhist(i);

相关主题
文本预览
相关文档 最新文档