搜档网
当前位置:搜档网 › 矢量的基本代数运算

矢量的基本代数运算

矢量的基本代数运算
矢量的基本代数运算

矢量的基本代数运算

《微分几何简介》笔记

Ch.1 矢量代数及其在解析几何中的简单应用 §1 矢量代数

定义:矢量即既有大小,又有方向的量(数学量、物理量等)。

1.1 直角坐标系-点的坐标与矢的分量

在三维空间中,取任意一点O 和任意彼此垂直的三个右旋的(即构成右手系的)单位矢量

1

e ,2

e ,3

e ,构成一个直角坐标系(或标架)。用

]

,,;[321e e e O =σ表示;O 称为σ的原点,1

e ,2

e ,3

e 称为σ

的基矢(或底矢)。

若P 为空间任意一点,以O 为始点,P 为终点的矢量OP =r 称为P 点在标架σ里的径矢。P 点在σ里的坐标1

x ,2

x

,3

x 就是r 径矢在σ里的分量:

3

32

211e e e r x x x ++=

若P 、Q 为空间两点,它们在σ里的径矢依次为

3

32211e e e r x x x ++=,3

3221

1e e e

s y y y ++=

则矢量

3

33222111)()()(e e e r s x y x y x y OP OQ PQ -+-+-=-=-=

其中)

3,2,1(=-i x y

i i

就是该矢量在σ里的分量。各分量

均为0的矢量称为零矢。

在同一标架里,两个矢量相等的充要条件是它们的分量依次相等。

矢量3

3221

1e e e

αa a a ++=的长为 23

2

2

21a a a ++=α

若1=α,α为单位矢量(幺矢)。0≠α,则

α/i

a

叫做α在σ里的方向余弦,它们是α和1

e 间的角]

,0[π之间的余弦。零矢没有方向余弦。

1.2 矢量的基本代数运算

现有矢量3

3221

1e e e

αa a a ++=和3

3221

1e e e

βb b b ++=,则

1) 矢量和:矢量加法按照平行四边形(或三角形)法则。

3

33222111)()()(e e e βαb a b a b a +++++=+

2) 矢量差:矢量减法同样按照平行四边形(或三角形)法则,为加法的逆运算。

3

3

3

2

2

2

1

1

1

)()()(e e e βαb a b a b a -+-+-=-

3) 纯量(或数量)乘矢量:若λ为纯量,则

3

32

21

1e e e αa a a λλλλ++=

4) 数积(点乘):矢量α,β的数积是纯量

θcos 3

32

21

1βαβα=++=?b a b a b a

其中],0[πθ∈是α,β之间的角。

矢量α,β相互垂直的充要条件是它们的数积等于零。零矢与任意矢量垂直。

矢量α和单位矢量e 的数积等于α在e 的方向的垂直投影。

5) 矢积(叉乘):矢量α,β的矢积是矢量

n βαe e e βαθsin 3

2

1

321

3

21

==?b b b a a a

其中n 为α,β不平行时,同时垂直于α,β的幺矢,且α,β,n 按此次序构成右手系。

α

βα⊥?,ββα⊥?

矢量α,β相互平行的充要条件是它们的矢积等于零。零矢与任意矢量平行。 运算规律一览

若α,β,γ是任意矢量,λ,μ是任意纯量,则 1) 结合律:

αα)()(λμμλ=

)()(γβαγβα++=++

)

()(βαβα?=?λλ )

()(βαβα?=?λλ

2) 交换律:

αββα+=+

α

ββα?=?

必须注意:αββα?-=? 3) 分配律:

α

ααμλμλ+=+)( βαβαλλλ+=+)(

γ

αβαγβα?+?=+?)( γ

αβαγβα?+?=+?)(

1.3 混合积、三矢矢积、拉格朗日恒等式

1) 混合积:已给三个矢量α,β,γ,则β

α?是矢量,γβα??)(是纯量。若i

a ,i

b ,i

c 依此是α,β,

γ

的分量,则其混合积为

3

2

1

321

321

),,()(c c c b b b a a a ==??γβαγβα

根据行列式性质,有

)

,,(),,(),,(),,(),,(),,(αβγγαββγαβαγαγβγβα-=-=-===

混合积),,(γβα的绝对值表示以α,β,γ为棱的平行六面体的体积。

三个矢量α,β,γ共面的充要调价是它们的混合积等于零。

若三个矢量α,β,γ共面,且α,β不平行,则γ是α,β的线性组合:

βαγμλ+=

2) 三矢矢积: 若α,β,γ是矢量,则三矢矢

积为

α

γββγαγβα)()()(?-?=??

3) 拉格朗日(Lagrange )恒等式:

))(())(()()(γβδαδβγαδγβα??-??=??? 特殊地

2

222)()(βαβαβα?-=?

可以证明:只有零矢量同时垂直于三个不共面的矢量。

1.4 对于空间的点、直线和平面的简单应用

不妨在标架],,;[3

2

1

e e e O =σ中来考察空间的点、

直线和平面。

显然,空间的任意一点P 可用其径矢=r 来表示。

1) 令空间任意一直线经过某固定点0

r ,它与

一单位矢量v 平行,r 为直线上任意点,则该直线可表示为

v

r r t +=0

其中t 是纯量。

以上方程称为直线的矢方程,其中t 是参数,因而也叫做参数矢方程。

2) 令空间任意一平面经过某固定点0

r ,它与

一单位矢量n 垂直,r 为平面上任意点,则该平面的矢方程为

)(0=-?r r n

注意:通常平面具有方向性,与n 同向的一侧称为正侧。

另外,两点确定一条直线,三个不共线的点、两条相交直线、两条平行直线也可以确定一个平面。

3) 过点1r ,作直线v

r

r t +=0

的垂线,其垂足

v v r r r r ])[(0

1

1

?-+='

点到直线的距离

11r r '

-=d

4) 点1

r 到平面0)(0

=-?r r n 的距离

)(0

1

r r n -?=d

点到平面的垂足

n

n r r r r ])[(0111?--='

5) 两相错直线1

1101

αr r

t +=与2

2202

αr r

t +=的公垂线

单位矢量

2

121ααααn ??=

它们间的最短距离

2

1211020)

,,(ααααr r ?-=

d

§2 坐标变换

2.1 基矢变换

在研究齿轮啮合运动时,我们通常取三个标架,一个固定在空间,称为基础标架,另两个分别和运动中的两个齿轮相固连。因此,有必要考察两个标架或坐标之间的相互关系。

设],,;[3

2

1

e e e O =σ,],,;[3

2

1

e e e ''''='O σ为任意两个直角坐标

系。考察基矢3

2

1

,,e e e 和3

2

1

,,e e e '''之间的关系,设在坐标

系σ里,标架σ'的基矢3

2

1

,,e e e '''为

)

3 ,2 ,1( 3

1

=='∑=i a j j ij i e e

????

?

????????????=????? ??'''3213332

31

232221*********

e e e e e e a a a a a a a a a

则3

2

1

i i i a a

a ,,是i

e '在坐标系σ里的分量,也是方向余

弦,即i

e '依次和3

2

1

,,e e e 之间的角的余弦:

)3 ,2 ,1 ,( =='j i a ij

j

i

e e

而在在坐标系σ'里,标架σ的基矢3

2

1

,,e e e 为

)

3 ,2 ,1( 3

1

='=∑=i a j j ji i e e

????? ??'

''??????????=????? ??3213323

13

322212312111321e e e e e e a a a a a a a a a

若引进方阵的概念和符号,令

????

?

?????=3332

31

232221

131211

a a a a a a a a a A ,

????

?

?????=3323

13

322212

312111

a a a a a a a a a T A

则A ,T

A 互为转置方阵,且

I

AA =T ,I

A A

=T

其中I 表示三阶单位方阵。A 和T

A 都是正常正交方阵表明:从一个坐标系的基矢到另一个坐标系的基矢的变换是具有正常正交方阵的线性变换,称为正常正交变换。若从σ到σ'的基矢的变换方阵是A ,则从σ'到σ的基矢的变换方阵是T

A 。

设有三个坐标系σ,σ'和σ'',若从σ到σ'的基矢的变换方阵是A ,从σ'到σ''的基矢的变换方阵是

B

,则从σ到σ''的基矢的变换方阵为

BA C =

2.2 矢量的分量变换

设1

x ,2

x

,3

x 是任意矢量r 在坐标系σ里的分量,

则在坐标系σ'里的分量为

????

?

???????????????=??????????'''3213332

31

232221

131211321

x x x a a a a a a a a a x x x

AX

X ='

2.3 点的坐标变换 设任意点

P

在坐标系],,;[3

2

1

e e e O =σ里的坐标是X ,

在坐标系],,;[3

2

1

e e e ''''='O σ里的坐标是X ',再设O 点在σ'

里的坐标是0

X ,则

AX

X X +='0

§3 刚体变换

刚体是指在运动中,其上任意两点的距离始终保持不变的物体。通常我们假定齿轮是刚体,齿轮运动是刚体运动。

设],,;[3

2

1

e e e O =σ为基础标架,],,;[3

2

1

e e e ''''='O σ为与齿

轮相固连的标架,那么,研究齿轮运动的过程即可归结为σ'的运动的研究。标架σ'的原点和基矢在σ里都是时间t 的函数,这样位置的变化,就叫做刚体位置变换或简称刚体变换。

数字图像处理实验报告

数字图像处理实验报告 实验一数字图像基本操作及灰度调整 一、实验目的 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.三重标量积 如a ,b 和c 是三个矢量,组合 ()a b c ??叫做他们的三重标量积。三重标量积等于这三 个矢量为棱边所作的平行六面体体积。在直角坐标系中,设坐标轴向的三个单位矢量标记为 (),,i j k ,令三个矢量的分量记为()()1 2 3 1 2 3 ,,,,,a a a a b b b b 及()1 2 3 ,,c c c c 则有 ( )() 123123123123 123123 c c c i jk a b c a a a c i c j c k a a a b b b b b b ??=?++= 因此,三重标量积必有如下关系式: ()()()a b c b c a c a b ??=??=??即有循环法则成立,这就是说不改变三重标量积中三个矢量顺序的组合,其结果相等。 2.三重矢量积 如a ,b 和c 是三个矢量,组合 ( ) a b c ??叫做他们的三重标量积,因有 ()()()a b c a c b c b a ??=-??=?? 故有中心法则成立,这就是说只有改变中间矢量时,三重标量积符号才改变。三重标量积有一个重要的性质(证略):() ()()a b c a b c a c b ??=-?+? (1-209) 将矢量作重新排列又有:()()() a b c b a c b a c ?=??+? (1-210) 3.算子( a ? ) ? 是哈密顿算子,它是一个矢量算子。( a ? )则是一个标量算子,将它作用于标量φ ,即 ()a φ?是φ在a 方向的变化速率的a 倍。如以无穷小的位置矢量 d r 代替以上矢量a ,则 ()dr φ ?是φ在位移方向 d r 的变化率的 d r 倍,即 d φ 。 () ()d dr dr φφφ=?=? 若将 () dr ?作用于矢量v ,则 ()dr v ?就是v 再位移方向 d r 变化率的 d r 倍,既为速度矢量 的全微分() dv dr v =? 应 用 三 重 矢 量 积 公 式 ( 1-209 ) ()()() 00()()()() a b a b a b b a a b b a a b ???=???+???=??-??-??+??

武汉科技大学 数字图像处理实验报告

二○一四~二○一五学年第一学期电子信息工程系 实验报告书 班级:电子信息工程(DB)1102班姓名 学号: 课程名称:数字图像处理 二○一四年十一月一日

实验一图像直方图处理及灰度变换(2学时) 实验目的: 1. 掌握读、写、显示图像的基本方法。 2. 掌握图像直方图的概念、计算方法以及直方图归一化、均衡化方法。 3. 掌握图像灰度变换的基本方法,理解灰度变换对图像外观的改善效果。 实验内容: 1. 读入一幅图像,判断其是否为灰度图像,如果不是灰度图像,将其转化为灰度图像。 2. 完成灰度图像的直方图计算、直方图归一化、直方图均衡化等操作。 3. 完成灰度图像的灰度变换操作,如线性变换、伽马变换、阈值变换(二值化)等,分别使用不同参数观察灰度变换效果(对灰度直方图的影响)。 实验步骤: 1. 将图片转换为灰度图片,进行直方图均衡,并统计图像的直方图: I1=imread('pic.jpg'); %读取图像 I2=rgb2gray(I1); %将彩色图变成灰度图 subplot(3,2,1); imshow(I1); title('原图'); subplot(3,2,3); imshow(I2); title('灰度图'); subplot(3,2,4); imhist(I2); %统计直方图 title('统计直方图'); subplot(3,2,5); J=histeq(I2); %直方图均衡 imshow(J); title('直方图均衡'); subplot(3,2,6); imhist(J); title('统计直方图');

原 图 灰度图 01000 2000 3000统计直方图 100200直方图均衡 0统计直方图 100200 仿真分析: 将灰度图直方图均衡后,从图形上反映出细节更加丰富,图像动态范围增大,深色的地方颜色更深,浅色的地方颜色更前,对比更鲜明。从直方图上反应,暗部到亮部像素分布更加均匀。 2. 将图片进行阈值变换和灰度调整,并统计图像的直方图: I1=imread('rice.png'); I2=im2bw(I1,0.5); %选取阈值为0.5 I3=imadjust(I1,[0.3 0.9],[]); %设置灰度为0.3-0.9 subplot(3,2,1); imshow(I1); title('原图'); subplot(3,2,3); imshow(I2); title('阈值变换'); subplot(3,2,5); imshow(I3); title('灰度调整'); subplot(3,2,2); imhist(I1); title('统计直方图'); subplot(3,2,4);

数字图像处理实验

(1)矩阵图像的傅里叶变换 f=zeros(30,30); f(5:24,13:17)=1; imshow(f,'notruesize') F=fft2(f); F2=log(abs(F)); figure;imshow(F2,[-1 5],'notruesize');colormap(jet);colorbar;

-0.5 00.5 11.522.533.544.5 (2)图像的傅里叶变换 I=imread('concordorthophoto.png'); imshow(I); B=ffshift(fft2(I)); figure; imshow(log(abs(B)),[]),colorbar;

图像离散余弦变换 RGB=imread('hestain.png'); I=rgb2gray(RGB); imshow(RGB); J=dct2(I); figure,imshow(log(abs(J)),[]),colorbar; J(abs(J)<10)=0; K=idct2(J)/255; figure,imshow(K)

二(1) 直方图均衡化增强图像对比度程序I=imread('trees.tif'); J=imnoise(I,'salt & pepper',0.02); imshow(I);figure,imshow(J) K1=filter2(fspecial('average',3),J)/255; K2=filter2(fspecial('average',5),J)/255; K3=filter2(fspecial('average',7),J)/255; figure,imshow(K1) figure,imshow(K2) figure,imshow(K3)

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

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彩色空间

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

数字图像处理 实验指导书

目录 实验一 MATLAB数字图像处理初步 实验二图像的代数运算 实验三图像增强-空间滤波 实验四图像分割 第二图像基本运算 一、实验目的 1.了解图像的算术运算在数字图像处理中的初步应用。 2.体会图像算术运算处理的过程和处理前后图像的变化。 二、实验原理 图像的代数运算是图像的标准算术操作的实现方法,是两幅输入图像之间进行的点对点的加、减、乘、除运算后得到输出图像的过程。如果输入图像为A(x,y)和B(x,y),输出图像为C(x,y),则图像的代数运算有如下四种形式: C(x,y) = A(x,y) + B(x,y) C(x,y) = A(x,y) - B(x,y) C(x,y) = A(x,y) * B(x,y) C(x,y) = A(x,y) / B(x,y) 图像的代数运算在图像处理中有着广泛的应用,它除了可以实现自身所需的算术操作,

还能为许多复杂的图像处理提供准备。例如,图像减法就可以用来检测同一场景或物体生产的两幅或多幅图像的误差。 使用MATLAB的基本算术符(+、-、*、/ 等)可以执行图像的算术操作,但是在此之前必须将图像转换为适合进行基本操作的双精度类型。为了更方便地对图像进行操作,MATLAB图像处理工具箱包含了一个能够实现所有非稀疏数值数据的算术操作的函数集合。下表列举了所有图像处理工具箱中的图像代数运算函数。

表2-1 图像处理工具箱中的代数运算函数 能够接受uint8和uint16数据,并返回相同格式的图像结果。虽然在函数执行过程中元素是以双精度进行计算的,但是MATLAB工作平台并不会将图像转换为双精度类型。 代数运算的结果很容易超出数据类型允许的范围。例如,uint8数据能够存储的最大数值是255,各种代数运算尤其是乘法运算的结果很容易超过这个数值,有时代数操作(主要是除法运算)也会产生不能用整数描述的分数结果。图像的代数运算函数使用以下截取规则使运算结果符合数据范围的要求:超出数据范围的整型数据将被截取为数据范围的极值,分数结果将被四舍五入。例如,如果数据类型是uint8,那么大于255的结果(包括无穷大inf)将被设置为255。 注意:无论进行哪一种代数运算都要保证两幅输入图像的大小相等,且类型相同。三、实验步骤 1.图像的加法运算 图像相加一般用于对同一场景的多幅图像求平均效果,以便有效地降低具有叠加性质的随机噪声。直接采集的图像品质一般都较好,不需要进行加法运算处理,但是对于那些经过长距离模拟通讯方式传送的图像(如卫星图像),这种处理是必不可少的。 在MATLAB中,如果要进行两幅图像的加法,或者给一幅图像加上一个常数,可以调用imadd函数来实现。imadd函数将某一幅输入图像的每一个像素值与另一幅图像相应的像素值相加,返回相应的像素值之和作为输出图像。imadd函数的调用格式如下:Z = imadd(X,Y) 其中,X和Y表示需要相加的两幅图像,返回值Z表示得到的加法操作结果。 图像加法在图像处理中应用非常广泛。例如,以下代码使用加法操作将图2.1中的(a)、(b)两幅图像叠加在一起: I = imread(‘rice.tif’); J = imread(‘cameraman.tif’); K = imadd(I,J); imshow(K); 叠加结果如图2.2所示。

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

数字图像处理 实验报告 学号: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

实验四 图像增强

信息工程学院实验报告 课程名称:数字图像处理Array 实验项目名称:实验四图像增强实验时间: 班级:姓名:学号: 一、实验目的 1.了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学理论知识。 2. 掌握图像空域增强算法的基本原理。 3. 掌握图像空域增强的实际应用及MATLAB实现。 4. 掌握频域滤波的概念及方法。 5. 熟练掌握频域空间的各类滤波器。 6.掌握怎样利用傅立叶变换进行频域滤波。 7. 掌握图像频域增强增强的实际应用及MATLAB实现。 二、实验步骤及结果分析 1. 基于幂次变换的图像增强 程序代码: clear all; close all; I{1}=double(imread('fig534b.tif')); I{1}=I{1}/255; figure,subplot(2,4,1);imshow(I{1},[]);hold on I{2}=double(imread('room.tif')); I{2}=I{2}/255; subplot(2,4,5);imshow(I{2},[]);hold on for m=1:2 Index=0; for lemta=[0.5 5] Index=Index+1; F{m}{Index}=I{m}.^lemta; subplot(2,4,(m-1)*4+Index+1),imshow(F{m}{Index},[]) end end 执行结果:

图1 幂次变换增强结果 实验结果分析: 由实验结果可知,当r<1时,黑色区域被扩展,变的清晰;当r>1时,黑色区域被压缩,变的几乎不可见。 2.直方图规定化处理 程序代码: clear all clc close all %0.读图像 I=double(imread('lena.tiff')); subplot(2,4,1); imshow(I,[]); title('原图') N=32; Hist_image=hist(I(:),N); Hist_image=Hist_image/sum(Hist_ima ge); Hist_image_cumulation=cumsum(Hist_ image);%累计直方图 subplot(245); stem(0:N-1,Hist_image); title('原直方图'); %1.设计目标直方图 Index=0:N-1; %正态分布直方图 Hist{1}=exp(-(Index-N/2).^2/N); Hist{1}=Hist{1}/sum(Hist{1}); Hist_cumulation{1}=cumsum(Hist{1}) ; subplot(242); stem([0:N-1],Hist{1}); title('规定化直方图1'); %倒三角形状直方图 Hist{2}=abs(2*N-1-2*Index); Hist{2}=Hist{2}/sum(Hist{2}); Hist_cumulation{2}=cumsum(Hist{2}) ; subplot(246); stem(0:N-1,Hist{2}); title('规定化直方图2'); %2. 规定化处理 Project{1}=zeros(N); Project{2}=zeros(N); Hist_result{1}=zeros(N); Hist_result{2}=zeros(N); for m=1:2 Image=I; %SML处理(SML,Single Mapping Law单映 射规则 for k=1:N Temp=abs(Hist_image_cumulation(k)-

矢量计算题

矢量的基本知识和运算法则 1.矢量和标量的不同点在于:矢量除了有大小之外,还有方向,矢量A 记做A ,其大小等于A 矢量的图示:通常用一条带有箭头的线段来表示,(线段的长度表示大小,箭头表示方向)如图5-1所示。 两个矢量相等的条件是:大小相等,方向相同。如图5-2所示。两矢量的夹角定义为两矢量所构成的小于或等于1800的角。在一般问题中(除非特别指明),矢量的始点位置不关重要的,在进行矢量运算时可将矢量平移。 2.矢量的加减法运算遵从平行四边形法则或三角形法则。 对三个以上的矢量相加,通常使用多边形法则。 3.矢量A 与数量K 相乘时,其结果仍是一个矢量。所得矢量的大小等于原矢量大小乘以,所得矢量的方向:当K >0时,与原矢量方向相同;当K<0 时,与原矢量方向相反 如动量()mV 、冲量()F t ??都是矢量,其方向分别与矢量V 和F 矢量相同。动量的变化量()m V ?也是矢量,其方向与V ?相同。 矢量A 与数量K 相除,可以看成A 矢量乘以数量 1K ,如加速度1F a F m m ==?,方向与F 相同。 4.矢量A 与矢量B 相乘 一种乘法叫做两矢量的数量积(又叫点积),用AB ?表示,乘得的积是标量,大小等于两矢量的大小与两矢量夹角余弦的积。即:c o s A B A B θ?=。如:功是力F 与位移S 的数量积,是标量。c o s W F S F S θ=?= 另一种乘法运算是两矢量的矢量积(又叫叉积),用A B ?表示,矢量积A B C ?=还是一个矢量,其大小等于两矢量的大小和两矢量夹角的正弦的乘积。sin C A B θ=?,即矢量C 的大小等于两矢量A 和B 为邻边的平行四边形的面积,矢量C 的方向垂直于矢量A 和B 所决定的平面,指向用“右手螺旋法则”来确定,如图5-5(甲)或(乙)所示。 A B B A ?≠?,A B ?与B A ?大小相等,方向相反。 如力矩M 等于力F 和矢径r 两矢量的矢量积,力矩M r F =?,大小为sin M Fr θ=。带电粒子所受的磁场力(即洛仑兹力)F qV B =?,大小为sin F q vB θ=?(若是负电荷受力方向与此相反) 例5-1为什么说匀速园周运动既不是匀速运动,也不是匀变速运动?物体在运动过程中合外力是否做功? 解:因为速度和加速度都是矢量,在图5-6所示的圆周上任意取两点A 、B ,虽然,A B A B v v a a ==,但方向不同,由矢量相等的条件可知:A B v v ≠,A B a a ≠,因此匀速园周运动既不是匀速运动,也不是匀变速运动。

数字图像处理实验报告

数字图像处理实验报告 专业: 学号:

目录 实验一MATLAB数字图像处理初步 (1) 实验二图像的代数运算 (8) 实验三图像增强—灰度变换 (16) 实验四图像增强—直方图变换 (18) 实验五图像增强—空域滤波 (22) 实验六图像的傅立叶变换 (27) 实验七图像增强—频域滤波 (32) 实验八彩色图像处理 (40) 实验九图像分割 (54)

实验一 MATLAB数字图像处理初步 一、实验目的与要求 1.熟悉及掌握在MATLAB中能够处理哪些格式图像。 2.熟练掌握在MATLAB中如何读取图像。 3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。 4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。 5.图像间如何转化。 二、实验原理及知识点 1、数字图像的表示和类别 图1 图像的采样和量化 根据图像数据矩阵解释方法的不同,MATLAB把其处理为4类: 亮度图像(Intensity images) 二值图像(Binary images) 索引图像(Indexed images) RGB图像(RGB images) (1) 亮度图像 (2) 二值图像 (3) 索引图像

(4) RGB图像 三、实验内容及步骤 1.利用imread( )函数读取一幅图像,假设其名为flower.tif,存入一个数组中; >> i=imread('flower.tif'); 2.利用whos 命令提取该读入图像flower.tif的基本信息;>>whos i Name Size Bytes Class Attributes i 1x1 1 uint8 3.利用imshow()函数来显示这幅图像; >> imshow(i) 4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息; >> imfinfo ('flower.tif') ans = Filename:'C:\Program Files\MATLAB\R2011a\bin\flower.tif' FileModDate: '1-Apr-2013 08:32:36' FileSize: 286256 Format: 'tif'

图像处理实验报告

武汉大学新闻与传播学院实验教学中心实验报告 专业:网络传播专业2010年10 月25 实验名称图像处理指导教师洪杰文 姓名华滢年级08 学号2008300710123 成绩 一、预习部分 1、实验目的 2、实验基本原理 3、主要仪器设备(含必要的元器件、工具) 1、实验目的:(1)熟悉和掌握数字图像的基本概念和技术指标,掌握色彩模式、图像分辨率、图像深度、图像文件格式与图像的显示效果、文件容量的关系。 (2)了解和掌握数字图像压缩的概念,观察不同的压缩比对图像的影响。 (3)了解和掌握图像中色彩的确定及选取方法,掌握前景色和背景色的概念及调整方法,掌握色彩填充的基本概念及应用。 (4)了解和掌握图像处理软件Photoshop的基本功能和基本使用方法,熟练掌握图层与选择区的基本使用方法。 (5)通过创造性的构图和对布局及色彩等的巧妙处理,一幅好的图画可以将一个主题以含蓄而又深刻的方式予以提示,并往往具有比单纯的语言文字更强的表现力。在掌握图像处理基本概念和Photoshop基本使用方法的基础上,对已有的数字图像做一些基本的创意设计和编辑处理。 2、实验基本原理:基于photoshop软件的图像处理。 3、主要仪器设备(含必要的元器件、工具):Adobe Photoshop 二、实验操作部分 1、实验操作过程 2、实验数据、观察到的实验现象 1、实验操作过程: 1.图像的基本变换 (1)自选一幅不小于400×400pixel的彩色数字图像。在Photoshop中打开该图像,记录其技术参数:文件格式、文件容量,图像尺寸(pixel和cm)、分辨率、色彩模式等。

文件格式:JPEG 图像;文件容量:59.7kb;图像尺寸(pixel和cm):600×600pixel;分辨率:72像素/英寸;色彩模式:RGB模式。 (2)对该图像重采样,要求采样后的图像分辨率为150dpi,图像尺寸为300×300pixel。色彩模式分别变换成灰度、Indexed和RGB模式,按BMP格式分别保存成不同名称的图像文件;重新打开并观察变换后的显示效果,并记录各个文件的容量。 灰度:容量大小为:88.9kb Indexed;容量大小为:88.9kb

逻辑代数的基本公式和常用公式

逻辑代数的基本公式和常用公式 一.基本定义与运算 代数是以字母代替数,称因变量为自变量的函数,函数有定义域和值域。——这些都是大家耳熟能详的概念。如 或; 当自变量的取值(定义域)只有0和1(非0即1)函数的取值也只有0和1(非0即1)两个数——这种代数就是逻辑代数,这种变量就是逻辑变量,这种函数就是逻辑函数。 逻辑代数,亦称布尔代数,是英国数学家乔治布尔(George Boole)于1849年创立的。在当时,这种代数纯粹是一种数学游戏,自然没有物理意义,也没有现实意义。在其诞生100多年后才发现其应用和价值。其规定: 1.所有可能出现的数只有0和1两个。 2.基本运算只有“与”、“或”、“非”三种。 与运算(逻辑与、逻辑乘)定义为(为与运算符,后用代替) 00=0 01=0 10=0 11=1 或 00=0 01=0 10=0 11=1 或运算(逻辑或、逻辑加)定义为(为或运算符,后用+代替) 00=0 01=1 10=1 11=1 或 0+0=0 0+1=1 1+0=1 1+1=1 非运算(取反)定义为:

至此布尔代数宣告诞生。 二、基本公式 如果用字母来代替数(字母的取值非0即1),根据布尔定义的三种基本运算,我们马上可推出下列基本公式: A A=A A+A=A A0=0 A+0=A A1=A A+1=1 =+= 上述公式的证明可用穷举法。如果对字母变量所有可能的取值,等式两边始终相等,该公 式即告成立。现以=+为例进行证明。对A、B两个逻辑变量,其所有可能的取值为00、01、10、11四种(不可能有第五种情况)列表如下:

由此可知: =+ 成立。 用上述方法读者很容易证明: 三、常用公式 1. 左边==右边 2. 左边==右边 例题:将下列函数化为最简与或表达式。 (公式1:) = (公式2:) ()

数字图像处理实验(全完整答案)

数字图像处理实验(全 完整答案)

实验一常用 MATLAB图像处理命令 一、实验目的 1 、熟悉并掌握MA TLAB 工具的使用; 2、实现图像的读取、显示、代数运算和简单变换。 二、实验环境 MATLAB 6.5 以上版本、WIN XP或W IN2000计算机 三、常用函数 读写图像文件 1 imread imread 函数用于读入各种图像文件,如:a=imread('e:\w01.tif') 2 imwrite imwrite 函数用于写入图像文件,如:imwrite(a,'e:\w02.tif', ’tif ’) 3 imfinfo imfinfo 函数用于读取图像文件的有关信息,如:imfinfo('e:\w01.tif')图像的显示 1 image image 函数是 MATLAB提供的最原始的图像显示函数,如: a=[1,2,3,4;4,5,6,7;8,9,10,11,12]; image(a); 2 imshow imshow 函数用于图像文件的显示,如: i=imread('e:\w01.tif'); imshow(i); title (‘原图像’) %加上图像标题

3 colorbar colorbar 函数用显示图像的颜色条,如: i=imread('e:\w01.tif'); imshow(i); colorbar; 4 figure figure 函数用于设定图像显示窗口,如:figure(1) ;/figure(2) ; 5 subplot 把图形窗口分成多个矩形部分,每个部分可以分别用来进行显示。 Subplot (m,n,p)分成 m*n个小窗口,在第p 个窗口中创建坐标轴为当 前坐标轴,用于显示图形。 6 plot 绘制二维图形 plot (y) Plot (x,y)xy 可以是向量、矩阵。 图像类型转换 1 rgb2gray 把真彩图像转换为灰度图像 i=rgb2gray (j ) 2 im2bw 通过阈值化方法把图像转换为二值图像 I=im2bw(j ,level ) Level 表示灰度阈值,取值范围0~1(即0.n ),表示阈值取自原图像灰度范围的n%

数字图像处理实验报告

数字图像处理实验 报告 学生姓名:学号: 专业年级: 09级电子信息工程二班

实验一常用MATLAB图像处理命令 一、实验内容 1、读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。 实验结果如右图: 代码如下: Subplot (1,3,1) i=imread('E:\数字图像处理\2.jpg') imshow(i) title('RGB') Subplot (1,3,2) j=rgb2gray(i) imshow(j) title('灰度') Subplot (1,3,3) k=im2bw(j,0.5) imshow(k) title('二值') 2、对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分别显示,注上文字标题。 实验结果如右图: 代码如下: Subplot (3,2,1) i=imread('E:\数字图像处理 \16.jpg') x=imresize(i,[250,320]) imshow(x) title('原图x') Subplot (3,2,2) j=imread(''E:\数字图像处理 \17.jpg') y=imresize(j,[250,320]) imshow(y) title('原图y') Subplot (3,2,3) z=imadd(x,y) imshow(z)

title('相加结果');Subplot (3,2,4);z=imsubtract(x,y);imshow(z);title('相减结果') Subplot (3,2,5);z=immultiply(x,y);imshow(z);title('相乘结果') Subplot (3,2,6);z=imdivide(x,y);imshow(z);title('相除结果') 3、对一幅图像进行灰度变化,实现图像变亮、变暗和负片效果,在同一个窗口内分成四个子窗口来分别显示,注上文字标题。 实验结果如右图: 代码如下: Subplot (2,2,1) i=imread('E:\数字图像处理 \23.jpg') imshow(i) title('原图') Subplot (2,2,2) J = imadjust(i,[],[],3); imshow(J) title('变暗') Subplot (2,2,3) J = imadjust(i,[],[],0.4) imshow(J) title('变亮') Subplot (2,2,4) J=255-i Imshow(J) title('变负') 二、实验总结 分析图像的代数运算结果,分别陈述图像的加、减、乘、除运算可能的应用领域。 解答:图像减运算与图像加运算的原理和用法类似,同样要求两幅图像X、Y的大小类型相同,但是图像减运算imsubtract()有可能导致结果中出现负数,此时系统将负数统一置为零,即为黑色。 乘运算实际上是对两幅原始图像X、Y对应的像素点进行点乘(X.*Y),将结果输出到矩阵Z中,若乘以一个常数,将改变图像的亮度:若常数值大于1,则乘运算后的图像将会变亮;叵常数值小于是,则图像将会会暗。可用来改变图像的灰度级,实现灰度级变换,也可以用来遮住图像的某些部分,其典型应用是用于获得掩膜图像。 除运算操作与乘运算操作互为逆运算,就是对两幅图像的对应像素点进行点(X./Y), imdivide()同样可以通过除以一个常数来改变原始图像的亮度,可用来改变图像的灰度级,其典型运用是比值图像处理。 加法运算的一个重要应用是对同一场景的多幅图像求平均值 减法运算常用于检测变化及运动的物体,图像相减运算又称为图像差分运算,差分运算还可以用于消除图像背景,用于混合图像的分离。

数字图像处理实验报告

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

数字图像处理实验 2017

实验一 Matlab图像基本操作 一、实验目的 熟悉利用Matlab进行图像处理的基本操作,了解图像数据的存储形式及进行图像处理编程的步骤方法。 二、实验内容 1、图像读写与显示 重点函数:imread, imwrite, imshow 2、彩色图像灰度化 计算公式:Y = R*0.299 + G*0.587 + B*0.114 3、图像马赛克 局部平均,改变窗口大小比较处理结果,如取2×2、4×4或更大尺寸的窗口 4、图像平移 分别完成图像水平方向、竖直方向和两个方向的平移 三、实验要求 1、编写代码,完成各项实验内容 2、总结实验中遇到问题及解决方案,书写实验报告 实验二图像点运算 一、实验目的 理解图像灰度变换和直方图的概念,掌握灰度变换和直方图均衡化的原理及实现方法。 二、实验内容 1、线性灰度变换 2、非线性变换 =,修改指数γ观察图像效果,总结指数项γ合理取值的一般规律 s crγ 3、直方图 绘制直方图,观察图像效果与直方图的关系 4、直方图均衡化 利用直方图均衡化确定灰度变换关系,画出变换曲线及图像处理前后的直方图 三、实验要求 1、编写代码,完成各项实验内容 2、总结实验中遇到问题及解决方案,书写实验报告

实验三邻域运算 一、实验目的 1.巩固对图像增强的认识,明确图像空域处理的类型 2.理解图像平滑与图像锐化的概念 3.掌握图像模板卷积运算的实现方法 4.锻炼编程开发图像处理算法的能力 二、实验准备 1.了解图像处理点运算和邻域运算的区别 2.学习利用模板卷积的方法进行图像邻域运算 3.复习均值滤波和中值滤波的原理 4.列出常用的模板形式,思考中值滤波要用到的简单排序方法 5.分析对比图像平滑和图像锐化模板的差异 三、实验内容与步骤 1.列出常用的卷积模板 2.基于3×3的模板,编写均值滤波的处理程序,处理含有加性高斯噪声和椒盐噪声的图像,观察处理结果 3.编写中值滤波程序,处理相同的图像与均值滤波进行比较;改变模板尺寸观察处理结果 4.编程实现利用一阶微分算子和二阶拉普拉斯算子进行图像锐化的程序 5.对比不同的邻域运算结果,体会图像锐化与图像平滑的区别 四、实验报告与思考题 1.总结实验内容及步骤方法完成实验报告,报告中要求有关键代码的注释说明及程序运行和图像处理结果 2.实验报告中回答以下问题 (1)均值滤波和中值滤波分别适用于处理哪类图像? (2)图像平滑和图像锐化所采用的模板有什么不同? (3)邻域运算的模板尺寸对处理结果有什么影响?

数字图像处理实验四

数字图像处理—实验四 一.实验内容: ⑴图像的锐化:使用Sobel,Laplacian算子分别对图像进行运算,观察并体会运算结果。 ⑵综合练习:对需要进行处理的图像分析,正确运用所学的知识,采用正确的步骤,对图像进行各类处理,以得到令人满意的图像效果。 [3] 编程实现Roberts梯度锐化算法。 二.实验目的: 学会用Matlab中的下列函数对输入图像按实验内容进行运算;感受各种不同的图像处理方法对最终图像效果的影 响。 imfilter;fspecial;imadjust; 三.实验步骤: 1.仔细阅读Matlab帮助文件中有关以上函数的使用说明,能充分理解其使用方法并能运用它们完成实验内 容。 2.将cameraman.jpg图像文件读入Matlab,使用imfilter函数分别采用Sobel,Laplacian算子对其作锐化运算, 显示运算前后的图像。算子输入方法(两种方法都 做): (1)用fspecial函数产生(注意:fspecial仅能产生垂直方向 sobel算子,产生Laplacian算子时alpha参数选择0,详 见Help)。 (2)直接输入,其中Sobel算子形式为 (水平Sobel)(垂直Sobel) Laplacian算子形式为 。 对于Sobel算子,采用生成图像;对于Laplacian算子, 直接采用计算结果作为锐化后图像。 figure; subplot(2,3,1);

i1=imread('D:\images\cameraman.tif'); i1=im2double(i1); imshow(i1);title('Input Image'); subplot(2,3,2); h=fspecial('sobel'); g=h.'; T1= imfilter(i1, h); T2=imfilter(i1, g); T3=sqrt(T1.^2+T2.^2); imshow(T3);title('方法一sobel算子'); subplot(2,3,3); h = fspecial('laplacian',0); T4= imfilter(i1, h); imshow(T4);title('方法一laplacian算子'); subplot(2,3,4); dx=[-1 -2 -1 0 0 0 1 2 1]; dy=[-1 0 1 -2 0 2 -1 0 1]; T5= imfilter(i1, dx); T6= imfilter(i1, dy); T7=sqrt(T1.^2+T2.^2); imshow(T7);title('方法二sobel算子');

相关主题