GDAL的资料.docx
- 文档编号:2997053
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:14
- 大小:27.69KB
GDAL的资料.docx
《GDAL的资料.docx》由会员分享,可在线阅读,更多相关《GDAL的资料.docx(14页珍藏版)》请在冰豆网上搜索。
GDAL的资料
GDALDataModel
即描述一个GDALdatastore能够包含的信息的类型。
Dataset
一个dataset(即一个GDALDataset对象)是一组相关的rasterbands和一些属于它们的公共信息的集合。
尤其是dataset有一个适用于它所有bands的关于rastersize的概念,它是用pixels和lines来描述的。
这个dataset也负责它所有bands的地理参考的转换和坐标系统的定义。
Dataset本身也可有相关的metadata,即以string形式的一张name/valuespairs的列表。
注意:
GDALdataset和rasterband的数据模型是基于theOpenGISGrid
Coveragesspecification的。
CoordinateSystem
Dataset的坐标系统是按OpenGISWKT(WellknownText)的方式来描述的。
它包括:
*Anoverallcoordinatesystemname.
一个总的坐标系的名称。
*Ageographiccoordinatesystemname.
一个地理坐标系统的名称。
*Adatumidentifier.
大地参照系。
*Anellipsoidname,semi-majoraxis,andinverseflattening.
参考椭球体,椭球半长轴和。
椭球扁率的导数(即a/(a-b))
*AprimemeridiannameandoffsetfromGreenwich.
一个0度经线的名车以及它于本初子午线的偏离程度。
*Aprojectionmethodtype(ie.TransverseMerctator).
一个投影类型。
*Alistofprojectionparameters(ie.central_meridian).
一个投影参数的列表。
*Aunitsname,andconversionfactortometersorradians.
一个单位名称以及转化为米或者弧度的转化因子。
*Namesandorderingfortheaxes.
轴的名称和排序。
*Codesformostoftheaboveintermsofpredefinedcoordinatesystemsfrom authoritiessuchasEPSG.
按照预先定义的权威的坐标系统对上面的大多数信息进行编码。
要想获取更多的关于OpenGISWKT格式的坐标系统的定义,以及使用它们的方式,可以参考osr_tutorial文档和OGRSpatialReference类的文档(OGR库中)。
由GDALDataset:
:
GetProjectionRef()返回的坐标系统描述的是经过仿射几何变换所得的地理坐标参考系,该变换由GDALDateset:
:
GetGeoTransform()所得。
由GDALDataset:
:
GetGCPProjection()返回的坐标系统描述的是带控制点的地理参考坐标系,控制点由GDALDateset:
:
GetGCPs()得到。
注意:
一个返回的带“”的坐标系字符串没有指出任何关于地理参考坐标系统的东西。
AffineGeoTransform
GDALdatasets有两种方式描述raster位置(用pixel/line坐标)与地理参考坐标之间的关系。
首先,最常用的是theaffinetransform(theotherisGCPS)。
Theaffinetransform包括由GDALDataset:
:
GetGeoTransform()的六个系数。
如把pixel/linecoordinate转化成georeferencedspace使用如下关系:
Xgeo=GT(0)+Xpixel*GT
(1)+Yline*GT
(2)
Ygeo=GT(3)+Xpixel*GT(4)+Yline*GT(5)
在正北朝上的影像中,系数GT
(2)与GT(4)都为0,GT
(1)是pixelwidth,
GT(5)是pixelheight。
(GT(0),GT(3))是raster的左上角pixel的左上角位置。
注意:
thepixel/linecoordinate上起左上像素的左上角(0.0,0.0),下至右下像素的右下角(width_in_pixels,height_in_pixels)。
这样左上像素的中间的pixel/line位置就是(0.5,0.5)。
GCPS
一个dataset可以有一个与从raster到georeferencedcoordinates的一个或多个位置有关的控制点的集合。
所有的GCPS共同拥有一个地理参考坐标系统(由GDALDataset:
:
GetGCPProjection()返回)。
每一个GCP由一个GDAL_GCP对象表示,它如下定义:
typedefstruct
{
char *pszId;
char *pszInfo;
double dfGCPPixel;
double dfGCPLine;
double dfGCPX;
double dfGCPY;
double dfGCPZ;
}GDAL_GCP;
pszId字符串被期望是这个dataset里所有GCPS集合里对应每个GCP的唯一标识(常常是但并不总是数字)。
pszInfo通常是一个空字符串,但是它可以包括任何用户定义的与GCP有关的文本。
潜在的它也能包括机器中关于GCP状态的信息尽管现在还不行。
第三、四个成员是GCP在rster中的位置,后三个是相关的地理参考位置(其中Z经常为0)。
GDAL数据模型并没暗示GCPS必须产生的转化机制,这个留给具体的应用程序,可是从第一到第五个多项式是常见的。
通常地一个dataset将包括一个affinegeotransform或GCPS或两者都不包括。
两个都有的情况并不常见,哪一种方式更权威并没有明确定义。
Metadata
GDAL元数据是一种保存为一组name/valuepairs列表的辅助格式和应用程序特殊的文本数据。
Thenames要求有良好的表示行为(没有间隔或单个的字符串)。
而thevalues可以是任何长度以及包括任何东西除了内嵌NULL(ASCIIzero)值。
元素据处理系统并不能很好的处理大容量的元素据。
为一个dataset处理超过100K的元素据将很可能导致性能的降级。
随着时间的推移,将会有一些以建立的语义所定义的著名的names;可是目前还没有。
有一些格式将支持一般的(用户自定义的)元素据,而其他一些格式的驱动将把明确的格式属性映射到元数据的names中。
比如theTIFF的驱动就以元数据的方式返回了一些信息标记,包括日期/时间的属性以下面这种形式返回:
TIFFTAG_DATETIME=1999:
05:
1111:
29:
56
元素据被切分成称做域的指定的组,缺省的域没有名字(NULL或“”)。
一些特殊的域为一些特殊的目的而存在。
注意:
目前无法对一个给定的对象列举出所有可用的域,但是应用程序能够对它们知道如何解释的任何域进行测试。
SUBDATASETSDomain
TheSUBDATASETS域保存了一份子datasets的列表。
通常这被用来提供指针指向单张多影像文件所存储的影像列表(比如HDF或NITF)。
比如,一个含有四张images的NITF可能有如下的subdatasetlist.
SUBDATASET_1_NAME=NITF_IM:
0:
multi_1b.ntf
SUBDATASET_1_DESC=Image1ofmulti_1b.ntf
SUBDATASET_2_NAME=NITF_IM:
1:
multi_1b.ntf
SUBDATASET_2_DESC=Image2ofmulti_1b.ntf
SUBDATASET_3_NAME=NITF_IM:
2:
multi_1b.ntf
SUBDATASET_3_DESC=Image3ofmulti_1b.ntf
SUBDATASET_4_NAME=NITF_IM:
3:
multi_1b.ntf
SUBDATASET_4_DESC=Image4ofmulti_1b.ntf
SUBDATASET_5_NAME=NITF_IM:
4:
multi_1b.ntf
SUBDATASET_5_DESC=Image5ofmulti_1b.ntf
_NAME的值是能够被传给GDALOpen()访问那个文件的字符串。
_DESC的值被用作为能够在一个选择器中显示给用户的更友好的字符串。
IMAGE_STRCTUREDomain
缺省域中的元数据与影像有关,但是并不特别的与影像存储在磁盘上的方式有关。
也就是说,当dataset被复制成另一种格式时它是适合的。
一些感兴趣的信息与特定的文件格式和存储机制有紧密联系。
为了防止它们随着数据集一起被复制,它们被存放在一个叫做IMAGE_STRCTURE的特殊的域,这个域将不会正常的被复制到一中新的格式中。
出现在IMAGE_STRCTURE域中的一个条目就是用于这种格式的压缩的配置(OR摘要信息)。
这个元素据条目名称是COMPRESSION,但是其值对不同的格式是不同的。
xml:
Domains任何以xml为前缀名的域都不是通常的name/value元素据。
它只是存储为一个长字符串的XML文档。
RasterBand一个rasterband在GDAL中是用一个GDALRasterBand对象表示的。
它代表一个单独的rasterband/channel/layer.它不必要表示整个影像。
比如,1张24位的RGB影像将通常被表示为一个具有3个bands的datasets,分别表示红,绿,蓝。
一个rasterband有如下属性:
*Awidthandheightinpixelsandlines.Thisisthesameasthatdefinedforthedataset,ifthisisafullresolutionband.
*Adatatype(GDALDataType).OneofByte,UInt16,Int16,UInt32,Int32,Float32,Float64,andthecomplextypesCInt16,CInt32,CFloat32,andCFloat64.
*Ablocksize.Thisisapreferred(efficient)accesschunksize.Fortiledimagesthiswillbeonetile.Forscanlineorientedimagesthiswillnormallybeonescanline.
*Alistofname/valuepairmetadatainthe
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- GDAL 资料