GDAL讀取元數據

GDAL讀取元數據

對於GDALDataset,可以使用GetMetadataDomainList()獲取到元數據的域。 
對於一幅標準TIF影像,通常可以得到這樣的一組字符串:

  • “ESRI”

  • “”

  • “xml:XMP”

  • “IMAGE_STRUCTURE”

  • “EXIF”

可以用GetMetaData(“域名”)來獲取域的元數據,其默認參數爲“”

  • “”域: 
    [1]:TIFFTAG_DATETIME:影像時間 
    [2]:TIFFTAG_RESOLUTIONUNIT:分辨率 
    [3]:TIFFTAG_SOFTWARE:存儲軟件 
    [4]:TIFFTAG_XRESOLUTION:X水平分辨率(Dpi) 
    [5]:TIFFTAG_YRESOLUTION:Y垂直分辨率(Dpi)

  • “IMAGE_STRUCTURE”域: 
    [1]:INTERLEAVE:對於影像結果爲PIXEL

  • “EXIF”域: 
    [1]:EXIF_ColorSpace:顏色表空間 
    [2]:EXIF_PixelXDimension:影像X像素尺寸(即影像寬度) 
    [2]:EXIF_PixelYDimension:影像Y像素尺寸(即影像高度)

  • “ESRI”域:(需要影像生成統計數據xml) 
    [1]:PyramidResamplingType:金字塔採樣方式

可以通過GetMetadataItem(“標籤名”,”域名”)獲取上述標籤的值

//C++
//以獲取垂直分辨率爲例
GDALDataset* dataset = (GDALDataset*)GDALOpen(_imagepath, GDALAccess::GA_ReadOnly);
double dDpiY = atof(dataset->GetMetadataItem("TIFFTAG_YRESOLUTION", ""));
  • 1
  • 2
  • 3
  • 4
  • 5
//C#
Dataset dataset = Gdal.Open(_imagepath, Access.GA_ReadOnly);
double dDpiY = Convert.ToDouble(dataset.GetMetadataItem("TIFFTAG_YRESOLUTION", ""));
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章