当前位置:文档之家› 图像几何变换的实现

图像几何变换的实现

图像几何变换的实现
图像几何变换的实现

图像几何变换的实现

引论

随着计算机科学的迅猛前进,计算机应用已经与生活中的方方面面密切联系,二十世纪八十年代图形界面操作系统的横空出世,促进了计算机的应用逐渐得到普及。数字图像存储着大量的信息量,现代社会信息大爆炸使得数字图像得到广泛应用,数字图象的收集和处理技术获得普遍的利用。

图像处理通常指的是数字图像处理。数字图象技术始于20世纪20年代,1920年从英国伦敦到美国纽约通过海底电缆传送了一幅图片,那是第一幅数字照片,传输该照片还采用了数字压缩技术,数字图象压缩技术还没有达到今天的水平,当时传输一幅图片采用压缩技术用时3天。从那时起,社会科技的不断发展和前进,数字图象与生活的联系愈来愈密切,为了使获得的图像显示的更为精确,就需要更高效的数字图象处理技术来支持,数字图象处理技术能够辅助人们更客观、确切地认识自然世界,另外,经过数字图象处理中的模式识别技术,能够将不同风格的图像分类处理。

当前国内利用的图像处理软件,其中包含一些专业图像操作软件,在润饰摄影或者绘画作品时,具有十分巨大的功效。可是这些专业性比较强的软件适宜专业的图象处理,国内常用的图像处理软件产品有美图秀秀,该软件是一款无偿的图片处理软件,不需耗费时间去特意研习就会用,比Adobe Photoshop简单很多。但是没有办法完全满足专业人士的要求,这就需要开发一种全新的软件来适应市场需求。

为了满足大多数人数字图像的处理,本文在综上研究了目前社会上普遍使用的图像处理软件,分析了现在社会上图像处理软件存在的不足,明确了研究的目标,主要针对存在的脱节现象,本文重点介绍了图像处理有关图像变换方面的操作,该设计针对目前社会上普遍存在用户自主设计,用户可以自行设计图像处理的效果,在很大程度上满足用户的要求。

Windows系统在现代社会上使用的比较普遍,Visual Studio是微软公司特意设计的在Windows系统下设计应用程序的集成开发平台,支持JavaScript、VB、C#和C/C++语言开发程序。C++语言是是一种高级语言,由C语言发展而来的,C++语言不但继承了C语言的简练、高效和在某些操作上沿袭了汇编语言指令的特色,支持用C语言设计的系统基础类,C + +也有其独特的特点:支持面向对象编程,支持泛型编程和强大的标准模板库。基于MFC 的软件设计使用C++语言开发不仅可以使用其强大的类库,可以很方便的设计界面平台,还有利于程序文档的编写。

第一章图像基础

1.1图像的矩阵表示

通常在计算机平面上看到的画面是通过图形或者图像的形式显示的,图形和图像是计算机上两种不同的图像存储形式。通常图形是以矢量结构的形式存储图形数据的;图像则是以栅格结构的形式存储图的,每个栅格又被称为一个像素,图像就是将一幅图片分成很多的栅格,像素以数列矩阵的形式排列,就组成一个像素矩阵,一幅图像就以这种数列矩阵的形式存储在计算机上的;像素描述一幅图像的基本信息包括图像的强度、颜色和坐标等,这种以像素和数列矩阵的形式存储图像数据的存储方式方便设计和实现数字图像处理操作。图像存

储了大量的信息,这样显示出的图像效果比较准确,但由此图像的存储空间就比较大,系统在显示图像是还要大量的内存,使用图像压缩算法将图像的数据进行压缩,可以使得系统在显示图像时花费的内存开销减少,保存文件时相应需要

的存储空间也降低。

自然界的图像可以用基于三维坐标的三维函数来表示,即:

错误!未找到引用源。} (1-1)

其中错误!未找到引用源。,错误!未找到引用源。,错误!未找到引用源。分别代表该位置像素点的红、绿、蓝三种原色的色彩分量值,协调不仅记录了像素值还保存了像素地址,每个组件是一个连续函数空间,即每个点的连续空间治疗后有一个精确的数值对比。

在每一个点的二维平面只包含两个坐标平面图像的功能,可以代表一个连续的一个二维函数,即:

错误!未找到引用源。x,y)(1-2)

连续数字图像f(x,y)的一个类似的表示,一般是由采样值矩阵由点现金图像存储算法:

错误!未找到引用源。(1-3)

在每个采样单元矩阵称为像素,在(1-3)型,M,N都记录在数字图像(横向),列(垂直)方向的像素数。与二维阵列的矩阵形式表示的数字图像的通用计算机,根据不同的方法,该像素结构或保存,并可能构成不同的图像格式,以一种方式把图像数据保存为文件就能够得到图像文件。以不同的数据格式处理图像之后,将图像保存而获得的图像文件后缀名通常不同。比较常见的图像文件扩展名有JPG、BMP等。本文做的软件以BMP格式的图像为目标。

1.2 BMP位图文件

位图分为内部位图和外部位图两种格式,内部位图格式是一种系统设置有关的格式,当系统的设置不同时系统显示的图像也会不同;与独立集系统内部和外部的位图格式的不同,通常后缀BMP位图文件。

(1)BMP位图文件头

BMP位图文件头结构包含了BMP位图文件存储类型,文件大小和位图起始坐标数据。其结构类型定义如下:

typedef struct tagBMPFILEHEAD

{

WORD bfType;

DWORD bfSize;

WORD bfRserved1;

WORD bfRserved2;

DWORD bfOffBits;

}BMPILEHEAD;

(2)位图信息头

BMP位图文件头中用于声明一个位图大小属性。

typedef struct BMPINFOHEAD

{

DWORD bfSize;

LONG biWidth;

LONG biHeight;

WORD biPlanes;

WORD biBitCount;

DWORD biSizeImage;

LONG biXPerMeter;

LONG biYPelsPerMeter;

DWORD biClrUsed;

DWORD biClrImporttant;

}BMPINFOHEAD;

第二章图像几何变换

2.1 几何变换的概念及分类

图像的几何变换是一种图片像素值不会发生变化,只改变像素相对的位置的图片处理技术。几何变更只针对图片像素点办理,图像在计算机内以数组形式存储,图像几何变更简单的包括:图像平移变换、图像的缩放变换、图像的旋转变幻、图像的镜像变换和图像转置变幻,这些都是基本的几何变换,更繁杂的图像变换还有仿射变换和错切变换。本文主要介绍了图像平移,图像转置,图像缩放。

2.2 几何变换的插值算法

在几何变换的图像,通常坐标图像像素在计算机存储相应的值是一个正整数,这个改变将不会影响图像的像素,但当图像的几何变换,对非正整数输入值,将会影响到图像的像素值,如果不采用措施处理就会出现很多问题,像在图像的转制过程中,如果45.1度显示出来的画面会错节,因此这种情况的出现就要采用插值算法进行插值处理。实践证明,图像缩放插值算法可以较小的情况下,有说服力的。在一般情况下,超过0.5倍或3倍的减少,是任何可接受的图像。

2.2.1最邻近插值(近邻取样法)

最临近插值的的思想很简单。关于一个像素点经过反向变换相应获得的一个浮点坐标,对该坐标的坐标值进行简单的取整,得到一个整数型的坐标,这个整数型坐标对应的像素值便是目标像素的像素值,简单地说就是取与该浮点坐标最邻近的左上角点对应的像素值。可见,最邻近插值相对于简单且比较的直观,但经过该算法处理后获得的图像质量不高。

2.2.2双线性内插值

对一个像素(I, J)操作,对其数组坐标设置经过反向变换获得的坐标为(I +m ,J +n),其中I 、J均为非负整数,m、n均为小于1的整数数值,则这个像素得值f(I +m ,J +n) 可通过

原图像像素中坐标为(I ,J)、(I+1 ,J)、(I ,J+1)、(I+1,J+1)所对应的周围四个像素的值决定,即:

f ( I+ m , J +n) = (1-m)*(1-n)* f(I ,J) + (1-m)*n* f(I,J+1) + m*(1-v)*f(I+1,J) + m*n*f(I+1,J+1) (2-1)

式(2-1)中函数f(I ,J)代表原图像(I ,J)处的的像素值。

这就是双线性内插值法。运用双线性内插值法对图像经过反响变换时数据的计算量大,但也有有益的一方面,双线性内插值法缩放后获得的图像质量高,不会发生像素值不连续的的情形。因为双线性插值具备低通滤波器的性质,使得图像的高频分量部分受损,是以可能会使得图像通过插值处理后图像轮廓变得一定程度的模糊。

第三章图像几何变换软件的和图像的显示

3.1 CDIB类库的创建

多半图像处理软件都是基于外部位图进行设计的,Visual Studio 开发集成环境中MFC 类(微软基础类)是专门用于界面软件的开发比较简洁高效,但MFC中没有专门用于处理外部位图格式图像的类,所以我们需要重新定义一个以CBitmap类为父类的处理DIB位图的类CDib类,该类应包含的基础功能:文件的读、写操作,文件的基本属性及相关的基础操作。因此我们需要定义一个用于处理DIB位图类CDIB专项使用,这种包装的必要和有效的DIB数据成员变量和成员函数。该类具有的功能如下:载入BMP位图文件LoadFile(CString m_fileName),保存BMP位图文件SaveFile(const char *pFilename),获取位图文件名GetFileName(),获取位图文件的大小GetSize(),获取位图的高度GetHeight(),获取位图文件的宽度GetWidth(),获取位图颜色数目GetNumberOfColors(),获取颜色表首地址GetRGB(),获取图像信息结构首地址GetInfo(),获取图像数据首地址GetData()。

创建一个CDIB类CDib类文件接口,包括DIB. H和DIB. CPP,两类可以实现图像的采集和几何变换。

3.2 图像几何变换软件主菜单的设计与实现

将操作界面分为客户可操作区和非客户操作区两部分,在客户可操作区主要用于显示所要打开的图片,在非客户操作区显示操作后的图片效果图。通过设计的软件主页面如下图(2-1):

图3-1 主菜单

3.3 图像显示的实现

图像的显示,就是将所要查看的图片通过设计的程序将图像数据的录入内存并显示在界面中,本文主要涉及Bitmap格式的图片,当取到了图像数据的首地址,你可以使用原始的颜色表的图像,创建一个调色板,加载后的调色板图像可以显示。实现程序为:void CDynSplitView2 ::QnDraw(CDC * pDC)

{

int n_ temp = 1 ;//记录缩放比率

BYTE * pBitmapData = CDib - > GetData () ;//CDib 类的指针对象

LPBITMAPINFO pBitmapInfo = CDib - >GetInfo();

int bitmapHeight = CDib - >GetHeight();

int bitmapWidth = CDib - >GetWidth();

int scaledWidth = (int) (bitmapWidth * m错误!未找到引用源。scale);

int scaledHeight = ( int) (bitmapHeight * m错误!未找到引用源。scale);

}

效果图如下图

图3-2显示图片的效果图

第四章图像的几何变换的实现

4.1 图像的镜像变换

1.镜像变换的概念

图像变换是轴图像的水平(或垂直轴)作为相应的像素位置的中心(或垂直)操作,对应的图像的镜像变换分为图像的水平镜像和图像的垂直镜像变换。

水平镜像变换对原始图像的垂直轴的中心区域的图像处理,图像区域分为两部分,像

素图像对应的对称变换将最终导致在计算机屏幕上显示的图像,由于水平约为每一行像素图像反转,原始的信息线没有改变,依照每行逐点变换的形式适宜图像的水平镜像变换;垂直镜像变换和水平镜像变换是非常相似的轴,垂直镜像是原始图像的水平为中心,整个图像被分成两部分,两部分的对称变换的图像。图像镜像变换以后图像的高度和宽度都不变。假定图像高度的高度,宽度的宽度,一个原始图像的像素坐标(x_0,y_0),通过坐标的像素级图像成为(Width错误!未找到引用源。),即:

同样错误!未找到引用源。经过垂直镜像后坐标将变成为(错误!未找到引用源。,Height 错误!未找到引用源。),即:

2.实现步骤

(1) 获取图像数据区的指针

(2) 创建一个相同大小的缓冲区

(3) 利用数组依次循环图像的每个像素。水平镜像操作就是将原图的宽度减去每个像素

点水平坐标,垂直坐标不做任何变化。垂直镜像操作则将原图的宽度减去每个像素垂直坐标,水平坐标不作任何改变。

3.程序代码参看附录

图3-1 水平镜像对比图

图像的几何变换的两种实现(旋转、平移、放大、缩小)

面向对象程序设计 学号:2 学生所在学院:信息工程学院 学生姓名:邵丽群 任课教师:熊邦书 教师所在学院:信息工程学院

2013级 实现图像的几何变换 电子信息工程 信息工程学院 摘要:几何变换是最常见的图像处理手段,通过对变形的图像进行几何校正,可以得出准确的图像。常用的几何变换功能包括图像的平移、图像的镜像变换、图像的转置、图像的缩放、图像的旋转等等。目前数字图像处理的应用越来越广泛,已经渗透到工业、航空航天、军事等各个领域,在国民经济中发挥越来越大的作用。作为数字图像处理的一个重要部分,本文接受的工作是如何Visual C++编程工具设计一个完整的应用程序,实现经典的图像几何变换功能。程序大概分为两大部分:读写BMP图像,和数字图像的几何变换。即首先用Visual C++创建一个单文档应用程序框架,在实现任意BMP图像的读写,打印,以及剪贴板操作的基础上,完成经典的图像几何变换功能。图像几何变换的Visual C++编程实现,为校内课题的实现提供了一个实例。 关键字:图像处理;几何变换(图像的平移、缩放、转置、旋转和镜像变换);BMP图像;Visual C++

一、引言 图像几何变换是指用数学建模的方法来描述图像位置、大小、形状等变化的方法。在实际场景拍摄到的一幅图像,如果画面过大或过小,都需要进行缩小或放大。如果拍摄时景物与摄像头不成相互平行关系的时候,会发生一些几何畸变,例如会把一个正方形拍摄成一个梯形等。这就需要进行一定的畸变校正。在进行目标物的匹配时,需要对图像进行旋转、平移等处理。在进行三维景物显示时,需要进行三维到二维平面的投影建模。因此,图像几何变换是图像处理及分析的基础。 图像几何变换是计算机图像处理领域中的一个重要组成部分,也是值得深讨的一个重要课题。在图像几何变换中主要包括图像的放缩、图像的旋转、图像的移动、图像的镜像、图像的块操作等内容,几何变换不改变图像的像素值,只改变像素所在的几何位置。从广义上说,图像是自然界景物的客观反映,是人类认识世界和人类本身的重要源泉。图像对我们并不陌生。我们生活在一个信息时代,科学研究和统计表明,人类从外界获得的信息约有75%来自视觉系统,也就是从图像中获得的。所以对数字图像的处理便显得尤为重要了。 本文主要深讨了图像的几何变换(主要包括图像的平移、转置、缩放、旋转、镜像等)理论,并在此基础上用Visual C++实现的过程。 1.3.2研究方法 方法一: 利用Windows 本身就提供了一个API函数SetWorldTransForm来实现图片旋转、位移及其他变形,这个函数是对一个设备上下文DC进行操作,通过坐标转换来实现各种功能的。 方法二: 通过图像进行平移、旋转、转置、镜像、缩放后重新计算各点新像素完成几何变换。自定义一个图像处理的Cdibapi类,把一般处理图像时要用到的函数实现封装在这个类中,该类用于实现DIB对象的绘制,DIB对象调色板的创建,DIB对象的读取与存储,图像线性变换,图像灰度拉伸等。然后把在视类中实现图像平移,图像镜像,图像转置,图像缩放及图像旋转的函数调用和实现。

图形的几何变换

《计算机图形学》上机实习报告(一)——基本图形的生成 一、实习目的和要求 1、目的 深入学习三种基本几何变换的原理和方法,以及错切、镜像变换同上的类同性, 同时,在掌握基本几何变换的基础上理解组合变换的实现机制,掌握几何变换 的共同特点; 通过程序的编写和运行,学习基本几何变换在程序上的实现方法,这就要求掌 握结构体、一维数组的基本性质和使用方法; 进一步锻炼使用WIN-TC的熟练程度。 2、要求 实现平移变换、比例变换、旋转变换三种基本几何变换; 实现镜像变换、错切变换; 二、运行环境 本次上机在WIN-TC 中进行。 三、直线的生成——用Bresenham算法实现 1、算法基本原理 图形的几何变换一般是指对图形的几何信息经过变换后产生新的图形,图形几何变换既可以看作是坐标系不动而图形变动,变动后的图形在坐标系中的坐标值发生变化;出可以看作图形不动而坐标系变动,变动后的图形在新坐标系下具有新的坐标值。这两种情况本质上都是一样的,都是图形由新的坐标值表示,因此是新产生的图形。图形几何变换包括比例变换、对称变换、错切变换、旋转变换、平移变换及其复合变换。图形上所有的点在几何变换前后的坐标关系一般用解析几何方法可以求得,但这些几何关系用矩阵方法表示,运算更为方便。 图形基本几何变换是指比例变换、对称变换、错切变换、旋转变换和平移变换等。变换通过矩阵运算均可以表示为表示几何图形的点阵的一维矩阵和表示变换的三维矩阵相乘的形式,即P’=P·T,具体如下: 平移变换

比例变换 旋转变换 对称变换 对称于x轴对称于y轴对称于原点 对称于y=x 对称于y=-x 错切变换 沿x轴方向关于y的错切 沿y轴方向关于x的错切 2、对程序中变量的说明 3、源程序 4、运行结果 5、个人总结

mfc空间几何变换之图像平移、镜像、旋转、缩放详解

MFC空间几何变换之图像平移、镜像、旋转、缩放详解 一. 图像平移 前一篇文章讲述了图像点运算(基于像素的图像变换),这篇文章讲述的是图像几何变换:在不改变图像容的情况下对图像像素进行空间几何变换的处理方式。 点运算对单幅图像做处理,不改变像素的空间位置;代数运算对多幅图像做处理,也不改变像素的空间位置;几何运算对单幅图像做处理,改变像素的空间位置,几何运算包括两个独立的算法:空间变换算法和灰度级插值算法。 空间变换操作包括简单空间变换、多项式卷绕和几何校正、控制栅格插值和图像卷绕,这里主要讲述简单的空间变换,如图像平移、镜像、缩放和旋转。主要是通过线性代数中的齐次坐标变换。 图像平移坐标变换如下: 运行效果如下图所示,其中BMP图片(0,0)像素点为左下角。

其代码核心算法: 1.在对话框中输入平移坐标(x,y) m_xPY=x,m_yPY=y 2.定义Place=dlg.m_yPY*m_nWidth*3 表示当前m_yPY行需要填充为黑色 3.新建一个像素矩阵ImageSize=new unsigned char[m_nImage] 4.循环整个像素矩阵处理 for(int i=0 ; i=Place && countWidth=Place && countWidth>=dlg.m_xPY*3) {//图像像素平移区域 ImageSize[i]=m_pImage[m_pImagePlace];//原(0,0)像素赋值过去 m_pImagePlace++;countWidth++; if(countWidth==m_nWidth*3) {//一行填满m_pImagePlace走到(0,1) number++;m_pImagePlace=number*m_nWidth*3; } } } 5.写文件绘图fwrite(ImageSize,m_nImage,1,fpw) 第一步:在ResourceView资源视图中,添加Menu子菜单如下:(注意ID号) 第二步:设置平移对话框。将试图切换到ResourceView界面--选中Dialog,右键鼠标新建一个Dialog,并新建一个名为IDD_DIALOG_PY。编辑框(X)IDC_EDIT_PYX 和(Y)IDC_EDIT_PYY,确定为默认按钮。设置成下图对话框:

图像的几何变换及其matlab实现

数字图像处理论文--图像的几何变换及其MATLAB实现 学院:理学院专业:信息与计算科学 班级:信计1012 姓名: 学号:任课老师: 集美大学理学院 二○一三年十一月二十八日

目录 摘要 (1) 一、何谓数字图像处理 (1) 二、数字图像几何变换简介 (1) 三、MATLAB图像处理工具介绍 (1) 四、图像几何变换的MATLAB实现 (2) 4.1图像几何变换的概述 (2) 4.2 图像的平移变换 (2) 4.3 图像的比例缩放 (4) 4.4 图像的镜像变换 (5) 4.5 图像的旋转变换 (7) 4.6 图像的剪取 (8) 五、图像几何变换的应用以及技术局限 (10) 参考文献 (10)

摘要:图像变换就是把图像从空间域转换到变换域(如频率域)的过程。图像变换可以使人们从另一角度来分析图像信号的特性,利用变换域中特有的性质,使图像处理过程更加简单、有效。图像变换是许多图像处理与分析技术的基础,而几何变换是图像变换中最基础也是应用最广泛的技术之一,本文基于MATLAB的图像处理工具,通过改变图像像素的空间位置或估算新空间位置上的像素值,从而实现图像的平移、缩放、旋转、镜像变换、图像插值等几何变换。 关键字:图像变换、几何变换、MATLAB 一、何谓数字图像处理 数字图像处理(Digital Image Processing),就是利用数字计算机或则其他数字硬件,对从图像信息转换而得到的电信号进行某些数学运算,以提高图像的实用性。例如从卫星图片中提取目标物的特征参数,三维立体断层图像的重建等。总的来说,数字图像处理包括点运算、几何处理、图像增强、图像复原、图像形态学处理、图像编码、图像重建、模式识别等。目前数字图像处理的应用越来越广泛,已经渗透到工业、医疗保健、航空航天、军事等各个领域,在国民经济中发挥越来越大的作用。 二、数字图像几何变换简介[3] 今天数字技术时代,我们身边接触到很多的数字图像,而对数字图像的处理往往会遇到需要对图像进行几何变换的一些问题。图像几何变换是图像显示技术中的一个重要组成部分。在图像几何变换中主要包括图像的缩放、旋转、移动、剪取等内容。无论照片、图画、书报、还是医学X光和卫星遥感图像等领域都会用到这些技术。通过图像的几何变换技术,可以显著提高图像处理效率和质量,为更进一步的图像处理奠定基础。 三、MATLAB图像处理工具介绍[1] MATLAB全称是Matrix Laboratory(矩阵实验室),一开始它是一种专门用于矩阵数值

计算机图形学-图形的几何变换

贵州大学实验报告 学院:计算机科学与技术专业:软件工程班级:软件132 姓名常伟学号1308060226 实验地点一教704 实验时间2016.5.9 指导教师李智实验成绩 实验项目名称试验四、图形的几何变换 实验目的1.掌握矢量运算。 2.熟练使用齐次坐标。 3.掌握采用齐次坐标进行几何变换。 实验要求1.理解几何图形变换的原理,编程实现图形的几何变换。 2.编程界面友好,实现变换的所有方式,包括平移、缩放、旋转、对称、错切以及基本变换基础上的组合变换。 3.几何变换使用矩阵进行运算。

实验原理 二维齐次坐标变换的矩阵的形式是 ? ? ? ? ? ? ? ? ? ? i h g f e d c b a 这个矩阵的每一个元素都是有特殊含义的。其中,? ? ? ? ? ? e d b a 可以对图形进行缩放、旋 转、对称和错切等变换;? ? ? ? ? ? f c 是对图形进行平移变换;[]h g是对图形作投影变换;[]i 则是对图形进行缩放变换。 下面给出几个基本变换的矩阵运算。 1.平移变换 ? ? ? ? ? ? ? ? ? ? = ? ? ? ? ? ? ? ? ? ? + + = ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? = ? ? ? ? ? ? ? ? ? ? ? ? 1 ) , ( 1 1 1 1 1 1 ' ' y x T y x y x t t t t t t y x y x y x y x 2.缩放变换 ? ? ? ? ? ? ? ? ? ? = ? ? ? ? ? ? ? ? ? ? ? ? = ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? = ? ? ? ? ? ? ? ? ? ? 1 ) , ( 1 1 1 1 ' ' y x s s S y s x s y x s s y x y x y x y x 3.旋转矩阵 ? ? ? ? ? ? ? ? ? ? = ? ? ? ? ? ? ? ? ? ? + - = ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?- = ? ? ? ? ? ? ? ? ? ? 1 ) ( 1 cos sin sin cos 1 1 cos sin sin cos 1 ' ' y x R y x y x y x y x θ θ θ θ θ θ θ θ θ 4.对称矩阵 ? ? ? ? ? ? ? ? ? ? + + = ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? = ? ? ? ? ? ? ? ? ? ? 1 1 1 1 ' ' ey dx by ax y x e d b a y x 对称变换其实只是a、b、d、e取0、1等特殊值产生的一些特殊效果。 5.错切变换 ? ? ? ? ? ? ? ? ? ? + + = ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? = ? ? ? ? ? ? ? ? ? ? 1 1 1 1 1 1 ' ' y dx by x y x d b y x

计算机图形学--图形几何变换实现

实验五 图形几何变换的实现 班级:信计二班 学号: :解川 分数: 一、实验目的 为了掌握理解二维、三维的数学知识、变换原理、变换种类、变换方法;进一步理解采用齐次坐标进行二维、三维变换的必要性;利用VC++语言实现二维、三维图形的基本变换与复合变换。 二、实验容 (1) 理解采用齐次坐标进行图形变换的必要性——变换的连续性,使复合变换 得以实现。 (2) 掌握二维、三维图形基本变换的原理及数学公式。 (3) 利用VC++语言实现二维、三维图形的基本变换、复合变换,在评不上显 示变换过程或变换结果。 三、实验步骤 (1) 预习教材关于二维、三维图形变换的原理与方法。 (2) 使用VC++语言实现某一种或几种基本变换。 (3) 调试、编译、运行程序。 四、原理分析 源程序分别实现了对二维图形进行的平移变换—基本变换;对三维图形进行的绕某一个坐标轴旋转变换以及相对于立方体中心的比例变换—复合变换。 三维几何变换: (1) 比例变换: []1111z y x =[]1z y x T 3D =[]1z y x ????? ?? ?? ???s n m l r j i h q f e d p c b q 局部比例变换: s T =? ? ??? ???? ???1000000000000j e a 其中a 、b 、j 分别为在x 、y 、z 方向的比例系数。

整体比例变换: s T =? ? ??? ???? ???s 000010000100001其中s 为在xyz 方向的等比例系数。S>1时,整体缩小;s<1时,整体放大。 (2) 旋转变换: 旋转变换的角度方向为(沿坐标轴的反方向看去,各轴按逆时针方向旋转) 绕z 轴旋转: RZ T =?? ??? ???? ???-100 010000cos sin 00sin cos θθθθ 绕x 轴旋转: RX T =??????? ?? ???-10 00 0cos sin 00sin cos 000 01 θθθθ 绕y 轴旋转: RY T =????? ???? ???-10 0cos 0sin 00100sin 0cos θθθθ 程序代码: /*三维图形(立方体)旋转变换、比例变换*/ #include #include #include #include #include #include #define ZOOM_IN 0.9 #define ZOOM_OUT 1.1

图像几何变换

图像几何变换 一、实验目的 (1)学习几种常见的图像几何变换,并通过实验体会几何变换的效果; (2)掌握图像平移、剪切、缩放、旋转、镜像、错切等几何变换的算法原理及编 程实现 (3)掌握matlab编程环境中基本的图像处理函数 (4)掌握图像的复合变换 二、涉及知识点 (1)图像几何变换不改变图像像素的值,只改变像素所在的几何位置 (2)图像裁剪imcrop函数,语法格式为: B=imcrop(A);交互式用鼠标选取区域进行剪切 B=imcrop(A,[left top right bottom]);针对指定的区域[left top right bottom]进行剪切 (3)图像缩放imresize函数,语法格式为: B = imresize(A,m,method) 这里参数method用于指定插值的方法,可选用的值为'nearest'(最邻近法),'bilinear'(双线性插值),'bicubic'(双三次插值),默认为'nearest'。 B = imresize(A,m,method)返回原图A的m倍放大的图像(m小于1时效果是 缩小)。 (4)图像旋转imrotate函数,语法格式为: B = imrot ate(A,angle,’crop’),参数crop用于指定裁剪旋转后超出图像的部分。 三、实验内容 (1)将图像hehua.bmp裁剪成200X200大小,并保存 (2)制作动画,将一幅图像逐渐向左上角平移移出图像区域,空白的地方用白色 填充 (3)利用剪切图像函数制作动画 (4)将图像分别放大1.5倍和缩小0.8倍,插值方法使用最近邻域法和双线性插 值法,对比显示图像。 (5)将图像水平镜像,再顺时针旋转45度,显示旋转后的图像。 (6)将图像分别进行水平方向30度错切,垂直方向45度错切,分别显示结果 具体实现: 1.将图像hehua.bmp裁剪成200X200大小,并保存 I=imread('hehua.bmp'); n=size(I); figure; subplot(1,2,1); imshow(I); title('原图'); I=double(I);

计算机图形学 图形几何变换的实现

计算机图形学图形几何变换的实现

————————————————————————————————作者:————————————————————————————————日期:

实验五图形几何变换的实现 班级08信计2 学号89姓名徐阳分数 一、实验目的和要求: 1、掌握理解二维、三维变换的数学知识、变换原理、变换种类、变换方法;进一步理解采用齐次坐标进行二维、三维变换的必要性;利用Turboc实现二维、三维图形的基本变换和复合变换。 二、实验内容: 1、理解采用齐次坐标进行图形变换的必要性——变换的连续性,使复合变换得以实现。 2、掌握二维、三维图形基本变换(平移、缩放、对称、旋转、错切)的原理及数学公式。 3、利用Turboc实现二维、三维图形的基本变换、复合变换,在屏幕上显示变换过程或变换结果。 三、实验结果分析: 程序代码如下: /*二维图形(直线)平移变换*/ #include #include #include main() {int x0,y0,x1,y1,i,j; int a[3][3]; char key; for(i=0;i<3;i++) for(j=0;j<3;j++) a[i][j]=0; for(i=0;i<3;i++) a[i][i]=1; int graphdriver=DETECT; int graphmode=0; initgraph(&graphdriver,&graphmode," "); cleardevice(); x0=250;y0=120;x1=350;y1=220; line(x0,y0,x1,y1); for( ; ;) {outtextxy(100,400,"<-:left->:right^:up v:down Esc->exit"); key=getch();

计算机图形学图形的几何变换的实现算法

实验二 图形的几何变换的实现算法 班级 08信计 学号 59 姓名 分数 一、实验目的和要求: 1、掌握而为图形的基本几何变换,如平移,旋转,缩放,对称,错切变换;。 2、掌握OpenGL 中模型变换函数,实现简单的动画技术。 3、学习使用OpenGL 生成基本图形。 4、巩固所学理论知识,加深对二维变换的理解,加深理解利用变换矩阵可由简单图形得到复杂图形。加深对变换矩阵算法的理解。 编制利用旋转变换绘制齿轮的程序。编程实现变换矩阵算法,绘制给出形体的三视图。调试程序及分析运行结果。要求每位学生独立完成该实验,并上传实验报告。 二、实验原理和内容: . 原理: 图像的几何变换包括:图像的空间平移、比例缩放、旋转、仿射变换和图像插值。 图像几何变换的实质:改变像素的空间位置,估算新空间位置上的像素值。 图像几何变换的一般表达式:[,][(,),(,)]u v X x y Y x y = ,其中,[,]u v 为变换后图像像素的笛卡尔坐标, [,]x y 为原始图像中像素的笛卡尔坐标。这样就得到了原始图像与变换后图像的像素的对应关系。 平移变换:若图像像素点 (,)x y 平移到 00(,)x x y y ++,则变换函数为 0(,)u X x y x x ==+, 0(,)v Y x y y y ==+,写成矩阵表达式为: 00x u x y v y ??????=+???????????? 其中,x 0和y 0分别为x 和y 的坐标平移量。 比例缩放:若图像坐标 (,)x y 缩放到( ,x y s s )倍,则变换函数为: 00x y s u x s v y ??????=?????????? ?? 其中, ,x y s s 分别为x 和y 坐标的缩放因子,其大于1表示放大,小于1表示缩小。 旋转变换:将输入图像绕笛卡尔坐标系的原点逆时针旋转θ角度,则变换后图像坐标为: cos sin sin cos u x v y θ-θ??????=??????θθ?????? 内容: 1、对一个三角形分别实现平移,缩放旋转等变化。

图形与几何变换.doc

图形与变换 一、考点综述 考点内容: (1)图形的轴对称 (2)图形的平移 (3)图形的旋转 (4)图形相似变换 考纲要求: 1理解轴对称及轴对称图形的联系和区别; 2掌握轴对称的性质;根据要求正确地作出轴对称图形。 3理解图形的平移性质; 4会按要求画出平移图形; 5会利用平移进行图案设计。 6理解图形旋转的有关性质; 7掌握基本中心对称图形; 8会运用轴对称、平移和旋转的组合进行图案设计 9掌握按耍求作出简单平面图形经相似变换后的图形。 考查方式及分值: 近年全国各地的中考数学试题出现了不少有关图形变换的试题.这些试题以新课程标准的内容和要求为依据,注重对数学知识的理解,技能的掌握综合应用能力的检测,积极推进素质教育和数学创新思维培养,中考中考查的内容丰富,形式多样,题型涉及选择题、填空题、作图题和解答题等,其中尤以选择题居多,填空题相对较少,所占分值在3"0分,在选择、填空、解答题中都有出现,图案的设计常在作图题中出现。 备考策略: 加强了对学生实验操作、读图作图、合情推理等能力的耍求,强化对图形变换的训练, 适当渗透空间观念,侧重数学思想方法以及运用几何知识解决实际问题能力。 二、例题精析 例1、如图1,在直线/上摆放有AABC和宜角梯形DEFG,且CD = 6 cm;在左ABC中:ZC = 90°, ZA=30°, AB = 4 cm;在直角梯形DEFG 中:EF//DG, ZDGF=90°, DG=6 cm, DE = 4cm, ZEDG = 60° 解答下列问题: o (1)旋转:将AABC绕点C顺时针方向旋转90°,请你在图中作出旋转后的对应图形 △ABC,并求出AB】的长度; (2)翻折:将沿过点Bi且与直线/垂直的直线翻折,得到翻折后的对应图形

图像的几何变换

1实验目的、要求 实验目的: (1)掌握图像在空间域进行基本变换的原理与相关方法。 (2)能使用VC++实现图像平移变换、镜像变换、旋转变换、缩放变换的功能。 实验要求: A部分: (1)使用VC++设计程序:实现图像平移变换,图像缩放、图像裁剪、图像对角线镜像。 (2)使用VC++设计程序:对一幅高度与宽度均相等的图像,实现逆时针90度旋转。B部分: (1)包括A部分全部要求。 (2)使用VC++设计程序:对任意一幅图像(高度与宽度可以不相等),实现任意角度的旋转。 (3)研究放大图像时使用的插值算法,使用VC++实现常见的三种图像插值算法:最近邻插值,双线性插值,立方卷积插值。通过实验验证其效果。 2实验原理 图像的平移:通过直角坐标系的平移变换公式: x ‘ = x +dx y’ = y + dy 注:(x,y)为源图像的坐标,(x’, y’)为新图像的坐标,dx对应x的偏移量,dy对应y的偏移量。即:平移之后新图像上坐标为(x’, y’)的像素点的颜色值,应该等于原图像上坐标为(x, y)的像素点的颜色值,以下类似。 图像的镜像:镜像分为水平镜像和垂直镜像 垂直镜像计算公式如下(图像大小为宽度为M,高度为N): x’ = x y’ = N – 1 – y 水平镜像计算公式为:

x’ = M – 1 – x y’ = y 对角线镜像(对角线为左上角至右下角)计算公式: x’ = M – 1 – x y’ = N – 1 – y 图像的旋转:图像的旋转计算公式如下: X’ = X *COS Q – Y *SIN Q Y’ = X *SIN Q + Y*COS Q 注:(x,y)为源图像的坐标,(x’, y’)为新图像的坐标。 图像缩放:设原图像大小为宽度M、高度N,调整后宽度为k1×M、高度为k2×N,则: Img.New(x,y) = Img.Old(x/k1, y/k2) 图像插值:当放大图像时,像素也相应地增加,增加的过程就是插值程序自动选择信息较好的像素作为增加的像素,而并非只使用临近的像素,所以在放大图像时,图像看上去会比较平滑、干净。常用插值算法包括: 最近邻插值:近邻取样插值的缩放算法,直接取Color0颜色作为缩放后点的颜色 双线性插值:需要考虑(Sx,Sy)坐标点周围4个颜色值Color0\Color1\Color2\Color3,把(Sx,Sy)到A\B\C\D坐标点的距离作为系数来把4个颜色混合出缩放后点的颜色立方卷积插值:考虑映射点周围16个点(4x4)的颜色来计算最终的混合颜色 3主要设备、器材 硬件环境:AMD A8-4500M 1.90G/4G RAM 软件环境:操作系统:WIN7 开发工具:Micrsoft Visual C++ 6.0 4实验步骤及原始数据记录 关键代码说明:

2二次函数图象的几何变换

一、二次函数图象的平移变换 (1)具体步骤: 先利用配方法把二次函数化成2 ()y a x h k =-+的形式,确定其顶点(,)h k ,然后做出二次函 数2y ax =的图像,将抛物线2 y ax =平移,使其顶点平移到(,)h k .具体平移方法如图所示: (2)平移规律:在原有函数的基础上“左加右减”. 二、二次函数图象的对称变换 二次函数图象的对称一般有五种情况,可以用一般式或顶点式表达 1. 关于x 轴对称 2 y a x b x c =++关于x 轴对称后,得到的解析式是2y ax bx c =---; ()2 y a x h k =-+关于x 轴对称后,得到的解析式是()2 y a x h k =---; 2. 关于y 轴对称 2 y a x b x c =++关于y 轴对称后,得到的解析式是2y ax bx c =-+; ()2 y a x h k =-+关于y 轴对称后,得到的解析式是()2 y a x h k =++; 3. 关于原点对称 2 y a x b x c =++关于原点对称后,得到的解析式是2y ax bx c =-+-; ()2 y a x h k =-+关于原点对称后,得到的解析式是 ()2 y a x h k =-+-; 4. 关于顶点对称 2 y a x b x c =++关于顶点对称后,得到的解析式是2 2 2b y ax bx c a =--+- ; ()2y a x h k =-+关于顶点对称后,得到的解析式是()2 y a x h k =--+. 5. 关于点()m n , 对称 ()2 y a x h k =-+关于点()m n ,对称后,得到的解析式是()2 22y a x h m n k =-+-+- 根据对称的性质,显然无论作何种对称变换,抛物线的形状一定不会发生变化,因此a 永远不变.求抛物线的对称抛物线的表达式时,可以依据题意或方便运算的原则,选择合适的形式,习惯上是先确定原抛物线(或表达式已知的抛物线)的顶点坐标及开口方向,再确定其对称抛物线的顶点坐标及开口方向,然后再写出其对称抛物线的表达式. 知识点拨 二次函数图象的几何变换

matlab 图像几何变换+答案

实验四:图像几何变换(编程报告) 一、实验目的 (1)学习几种常见的图像几何变换,并通过实验体会几何变换的效果; (2)掌握图像平移、剪切、缩放、旋转、镜像、错切等几何变换的算法原理及编 程实现 (3)掌握matlab编程环境中基本的图像处理函数 (4)掌握图像的复合变换 二、涉及知识点 (1)图像几何变换不改变图像像素的值,只改变像素所在的几何位置 (2)图像裁剪imcrop函数,语法格式为: B=imcrop(A);交互式用鼠标选取区域进行剪切 B=imcrop(A,[left top right bottom]);针对指定的区域[left top right bottom]进行剪切 (3)图像缩放imresize函数,语法格式为: B = imresize(A,m,method) 这里参数method用于指定插值的方法,可选用的值为'nearest'(最邻近法),'bilinear'(双线性插值),'bicubic'(双三次插值),默认为'nearest'。 B = imresize(A,m,method)返回原图A的m倍放大的图像(m小于1时效果是 缩小)。 (4)图像旋转imrotate函数,语法格式为: B = imrotate(A,angle,’crop’),参数crop用于指定裁剪旋转后超出图像的部分。 三、实验内容 (1)将图像hehua.bmp裁剪成200X200大小 (2)制作动画,将一幅图像逐渐向左上角平移移出图像区域,空白的地方用白色 填充 (3)利用剪切图像函数制作动画 (4)将图像分别放大1.5倍和缩小0.8倍,插值方法使用双线性插值法,分别显 示图像。 (5)将图像水平镜像,再顺时针旋转45度,显示旋转后的图像。 (6)将图像分别进行水平方向30度错切,垂直方向45度错切,分别显示结果 四、实验环境 Windows下matlab编程环境 五、实验源代码及结果 1.f=imread('hehua.bmp'); figure; imshow(f); title('原图'); f2=imcrop(f,[50,50,250,250]); figure; imshow(uint8(f2)); title('裁剪后'); imwrite(f2,'d:/5/hehua1.bmp');

图像几何变换程序设计_

实践教案 兰州理工大学 计算机与通信学院 2012 年秋季学期 计算机图象处理课程设计 题目:图像几何变换程序设计专业班级: 姓名:学号:指导教师:成绩: 目录 摘要 (1) 一、前言 ................................................... 2. ..

二、算法分析与描述 ................................................... 2. .. 三、详细设计过程 .................................................... 4. .. 四、调试过程中出现地问题及相应解决办法............. 8. 五、程序运行截图及其说明 .................................................... 9. .. 六、简单操作手册 ................................................... 1. .3. 设计总结 .................................................... 1. .4. 参考文献 .................................................... 1. .4. 致谢........................................... 1..5.. 附录 ................................................... 1. .5..

图像几何变换的实现

图像几何变换的实现 引论 随着计算机科学的迅猛前进,计算机应用已经与生活中的方方面面密切联系,二十世纪八十年代图形界面操作系统的横空出世,促进了计算机的应用逐渐得到普及。数字图像存储着大量的信息量,现代社会信息大爆炸使得数字图像得到广泛应用,数字图象的收集和处理技术获得普遍的利用。 图像处理通常指的是数字图像处理。数字图象技术始于20世纪20年代,1920年从英国伦敦到美国纽约通过海底电缆传送了一幅图片,那是第一幅数字照片,传输该照片还采用了数字压缩技术,数字图象压缩技术还没有达到今天的水平,当时传输一幅图片采用压缩技术用时3天。从那时起,社会科技的不断发展和前进,数字图象与生活的联系愈来愈密切,为了使获得的图像显示的更为精确,就需要更高效的数字图象处理技术来支持,数字图象处理技术能够辅助人们更客观、确切地认识自然世界,另外,经过数字图象处理中的模式识别技术,能够将不同风格的图像分类处理。 当前国内利用的图像处理软件,其中包含一些专业图像操作软件,在润饰摄影或者绘画作品时,具有十分巨大的功效。可是这些专业性比较强的软件适宜专业的图象处理,国内常用的图像处理软件产品有美图秀秀,该软件是一款无偿的图片处理软件,不需耗费时间去特意研习就会用,比Adobe Photoshop简单很多。但是没有办法完全满足专业人士的要求,这就需要开发一种全新的软件来适应市场需求。 为了满足大多数人数字图像的处理,本文在综上研究了目前社会上普遍使用的图像处理软件,分析了现在社会上图像处理软件存在的不足,明确了研究的目标,主要针对存在的脱节现象,本文重点介绍了图像处理有关图像变换方面的操作,该设计针对目前社会上普遍存在用户自主设计,用户可以自行设计图像处理的效果,在很大程度上满足用户的要求。 Windows系统在现代社会上使用的比较普遍,Visual Studio是微软公司特意设计的在Windows系统下设计应用程序的集成开发平台,支持JavaScript、VB、C#和C/C++语言开发程序。C++语言是是一种高级语言,由C语言发展而来的,C++语言不但继承了C语言的简练、高效和在某些操作上沿袭了汇编语言指令的特色,支持用C语言设计的系统基础类,C + +也有其独特的特点:支持面向对象编程,支持泛型编程和强大的标准模板库。基于MFC 的软件设计使用C++语言开发不仅可以使用其强大的类库,可以很方便的设计界面平台,还有利于程序文档的编写。 第一章图像基础 1.1图像的矩阵表示 通常在计算机平面上看到的画面是通过图形或者图像的形式显示的,图形和图像是计算机上两种不同的图像存储形式。通常图形是以矢量结构的形式存储图形数据的;图像则是以栅格结构的形式存储图的,每个栅格又被称为一个像素,图像就是将一幅图片分成很多的栅格,像素以数列矩阵的形式排列,就组成一个像素矩阵,一幅图像就以这种数列矩阵的形式存储在计算机上的;像素描述一幅图像的基本信息包括图像的强度、颜色和坐标等,这种以像素和数列矩阵的形式存储图像数据的存储方式方便设计和实现数字图像处理操作。图像存

数字图象处理 第4章 图像的几何变换

数字图像处理基础 山东大学威海分校信息工程学院 张亚涛讲师

第四章图像几何变换 几何变换基础 1 图像的位置变换 2 图像的形状变换 3 4图像错切 5三维图像的投影变换

1 几何变换基础—一些概念 一些概念 1 图像的几何变换:是指用数学建模的方法来描述图像的位置,大小,形状等变换的方法,是通过数学建模实现对数字图像进行几何变换处理。 2 几何变换内容:图像的空间平移、比例缩放、旋转、仿射变换和图像插值。 3 几何变换实质:改变像素的空间位置或估算新空间位置上的像素值。

说明:[u,v]为变换后图像像素的笛卡尔坐标,[x,y]为原始图像中像素的笛卡尔坐标。这样就得到了原始图像与变换后图像的像素的对应关系。 如果,则有 ,即变换后图像仅是原图像简单拷贝。 注意,几何变换不改变像素值,而是改变像素所在的位置。这说明像素的 亮度和色彩并不变化,仅仅是像素位置发生改变。1 几何变换基础—一些概念 4 图像几何变换的一般表达式:

1 几何变换基础—齐次坐标 为什么引入齐次坐标? 在对图像进行操作时候,经常要对图像连续做几次变换。例如做了平移后再做旋转,做放缩等等。因为旋转,放缩等都是线性变换,都可用矩阵表示,这样旋转和放缩就可合并成: ?? ? ? ? ?????=??????????z y x T z y x ''' 但是平移变换不能写成矩阵形式,也就不能合并到上式中,因为在直角坐标系中,它不是线性变换。因此引入齐次坐标。 齐次坐标表示图像的几何变换十分方便。

1 几何变换基础—齐次坐标 齐次坐标表示 所谓齐次坐标表示法就是用N+1维向量表示N维向量。线性代数 如把平面上的点P=[x,y]放到空间去表示为[X Y H],使得x=X/H,y=Y/H 则称[X Y H」是点P的齐次坐标。如规定齐次坐标的第三个分量H必须是1,则称为规范齐次坐标。P=[X,Y」的规范齐次坐标是[x y 1]。显然,二维空间中描述的点与齐次坐标空间描述的点是一对多的关系。

图像的几何变换|图像的几何变换包括

学号专业姓名 实验日期教师签字成绩 实验报告 【实验名称】实验七图像的几何变换 【实验目的】 理解和掌握图像的剪切、垂直镜像变换、水平镜像变换、缩放和旋转的原理和应用。 【实验内容】 【实验步骤】 1.对原图使用最近邻插值法进行放大2倍。 2.对原图使用双线性插值法进行旋转。

3.对原图同时进行垂直镜像变换和水平镜像变换。 对原图进行剪切,剪切的区域的位置和范围自己设定。 选做可自行选取多种方法完成以上操作。并进行比较和讨论。 附图像的镜像变换是以图像垂直中轴线或水平中轴线交换图像的变换,分为垂直镜像变换和水平镜像变换。 【程序清单】 图像放大缩小 >> I=imread("D:\Fig_lenna_RGB.tif"); >> figure,imshow(I) >> D=imresize(I,0.2,"nearest"); >> figure,imshow(D) >> E=imresize(D,4,"nearest");

>> figure,imshow(E) 【实验截图】 512*512*3 uint8 102*102*3 uint8 408*408*3 uint8512 图像旋转 >> I=imread("D:\Fig_lenna_RGB.tif"); >> J=imrotate(I,40,"bilinear"); >> figure,imshow(I) >> figure,imshow(J) 【实验截图】 图像水平镜像变换和垂直镜像变换

>> I=imread("D:\Fig_lenna_RGB.tif"); >> subplot(2,2,1),imshow(uint8(I)) >> title("(a)原始图像"); >> subplot(2,2,2),imshow(uint8(I)) >> title("(b)原始图像"); >> I=double(I); >> h=size(I); >> I_fliplr(1:h(1),1:h(2),1:h(3))=I(1:h(1),h(2):-1:1,1:h(3)); >> I1=uint8(I_fliplr); >> subplot(2,2,3),imshow(I1) >> title("(c)水平镜像变换");

几何变换

EX05:几何变换 本实验包含个任务。任务1要求对一个扫描产生的图像文件进行仿射变换,任务2是进行栅格数据的矢量化,栅格数据矢量化是一种重要的数据输入方式,任务3是对一幅卫星影像进行仿射变换。 任务1:地理参照和矫正一幅扫描地图 所需数据:hoytmtn.tif,用TIFF格式存储的扫描后的土壤图。 二值扫描图文件hoytmtn.tif的度量单位为英寸。在本任务中要将扫描图像转换为UTM 坐标。本转换过程包含2个基本步骤:首先,使用4个位于原始土壤图角点的控制点(Tics)对图像进行地理参照,其次,对地理参照后的结果进行校正。4个控制点以度-分-秒(DMS)制表示的经纬度值如下: Tic-id 经度纬度 1 - 116 00 00 47 15 00 2 - 115 52 30 47 15 00 3 - 115 52 30 47 07 30 4 - 116 00 00 47 07 30 当投影到NAD 1927 UTM Zone 11N坐标系统后,上面4点x,y坐标为: Tic-id x y 1 575672.2771 5233212.6163 2 585131.2232 5233341.4371 3 585331.3327 5219450.4360 4 575850.1480 5219321.5730 接下来对hoytmtn.tif进行地理参考。 1.运行ArcMap,将数据框架命名为Task1并将hoytmtn.tif添加到Task1。单击View菜单, 指向Toolbars,设置Georeferencing。ArcMap中会出现Georeferencing工具条,在Layer 下拉列表中存在hoytmtn.tif项(图5.1)。 图5.1 Georeferencing工具条 2.对hoytmtn.tif进行缩放,定位到4个控制点。这些控制点以框标表示,2个位于图像的 顶端,2个位于图像的底部。1号点位于左上角,而后按顺时针方向顺序排列。(图5.2) 图5.2 控制点 3.放大到第1个控制点,在Georeferencing工具条上单击Add Control Points工具,在框标 角点处单击,而后第2次单击。此时,在控制点上的 + 标志由绿色变为红色。使用同样的方法增加其他3个控制点(图5.3)。

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