gdal是一个库,所以它附带的程序本身是很容易被忽略的。可是这些程序又是极其有用的。

TableOfContents([maxdepth])

下面介绍gdal的工具程序,先翻译:

GDAL工具

GDAL创建了下面的工具程序

创建新的文件

存取一个已存在的文件来读取是一件很容易的事情,只要在命令行中指定文件或者数据集的名字。但是,创建一个文件是一件非常复杂的事情。你可能需要指定创建格式,各种创建参数,以及指定一个坐标系统。在不同的GDAL工具中有许多参数都是差不多的,这里列举出来。

-of format

-co NAME=VALUE

-a_srs SRS

总的命令行参数

所有的GDAL命令行工具程序都支持下面的“总的”命令行参数。

--version

--formats

--format format

--optfile file

--config key value

--debug value

--help-general

各工具程序详解

Anchor(gdalinfo)

gdalinfo

列出栅格数据集的信息

用法:

gdalinfo [--help-general] [-mm] [-stats] [-nogcp] [-nomd]
        [-mdd domain] * datasetname


gdalinfo程序列出gdal支持的栅格格式的一系列信息。

-mm

-stats

-nogcp

-nomd

-mdd domain

gdalinfo会给出如下的信息(如果有的话):

例子:

gdalinfo ~/openev/utm.tif 
Driver: GTiff/GeoTIFF
Size is 512, 512
Coordinate System is:
PROJCS["NAD27 / UTM zone 11N",
    GEOGCS["NAD27",
        DATUM["North_American_Datum_1927",
            SPHEROID["Clarke 1866",6378206.4,294.978698213901]],
        PRIMEM["Greenwich",0],
        UNIT["degree",0.0174532925199433]],
    PROJECTION["Transverse_Mercator"],
    PARAMETER["latitude_of_origin",0],
    PARAMETER["central_meridian",-117],
    PARAMETER["scale_factor",0.9996],
    PARAMETER["false_easting",500000],
    PARAMETER["false_northing",0],
    UNIT["metre",1]]
Origin = (440720.000000,3751320.000000)
Pixel Size = (60.000000,-60.000000)
Corner Coordinates:
Upper Left  (  440720.000, 3751320.000) (117d38'28.21"W, 33d54'8.47"N)
Lower Left  (  440720.000, 3720600.000) (117d38'20.79"W, 33d37'31.04"N)
Upper Right (  471440.000, 3751320.000) (117d18'32.07"W, 33d54'13.08"N)
Lower Right (  471440.000, 3720600.000) (117d18'28.50"W, 33d37'35.61"N)
Center      (  456080.000, 3735960.000) (117d28'27.39"W, 33d45'52.46"N)
Band 1 Block=512x16 Type=Byte, ColorInterp=Gray


Anchor(gdal_translate)

gdal_translate

不同格式间的栅格数据转换

用法:

gdal_translate [--help-general]
       [-ot {Byte/Int16/UInt16/UInt32/Int32/Float32/Float64/
             CInt16/CInt32/CFloat32/CFloat64}] [-not_strict]
       [-of format] [-b band] [-outsize xsize[%] ysize[%]]
       [-scale [src_min src_max [dst_min dst_max]]]
       [-srcwin xoff yoff xsize ysize] [-projwin ulx uly lrx lry]
       [-a_srs srs_def] [-a_ullr ulx uly lrx lry] [-a_nodata value]
       [-gcp pixel line easting northing]*
       [-mo "META-TAG=VALUE"]* [-quiet] [-sds]
       [-co "NAME=VALUE"]*
       src_dataset dst_dataset


gdal_translate 工具可以用来在不同格式间转换栅格数据。并且在处理过程中暗地里做一些诸如子栅格设置,重采样和象元值集体变化等勾当。

-ot type

-not_strict

-of format

-b band

-outsize xsize[%] ysize[%]

-scale [src_min src_max [dst_min dst_max] ]

-srcwin xoff yoff xsize ysize

-projwin ulx uly lrx lry

-a_srs srs_def

-a_ullr ulx uly lrx lry

-a_nodata value

-mo "META-TAG=VALUE"

-co "NAME=VALUE"

-gcp pixel line easting northing

-quiet

-sds

src_dataset

dst_dataset

例子:

gdal_translate -of GTiff -co "TILED=YES" utm.tif utm_tiled.tif