konwersja z HDF do GeoTiff

11

Mam problemy z konwersją z HDF na GeoTiff.

Postępuję zgodnie z krokami opisanymi na tej stronie . Problem polega na tym, że nie mogę znaleźć nazwy subdataset NDVI (XXXX), aby uruchomić polecenie gdaltranslate.

gdal_translate -of GTiff HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf"
 :MOD_Grid_monthly_CMG_VI:XXXX modis_ndvi01.tif

To jest wyjście gdalinfo dla jednego z plików (MOD13C2.A2001001.005.2007078152825.hdf):

E:\GDAL>gdalinfo MOD13C2.A2001001.005.2007078152825.hdf
Driver: HDF4/Hierarchical Data Format Release 4
Files: MOD13C2.A2001001.005.2007078152825.hdf
Size is 512, 512
Coordinate System is `'
Metadata:
  HDFEOSVersion=HDFEOS_V2.9
  LOCALGRANULEID=MOD13C2.A2001001.005.2007078152825.hdf
  PRODUCTIONDATETIME=2007-03-19T19:28:25.000Z
  DAYNIGHTFLAG=Both
  REPROCESSINGACTUAL=reprocessed
  LOCALVERSIONID=5.2.1
  REPROCESSINGPLANNED=further update is anticipated
  SCIENCEQUALITYFLAG=Not Investigated
  AUTOMATICQUALITYFLAGEXPLANATION=No automatic quality assessment is performed in the PGE
  AUTOMATICQUALITYFLAG=Passed
  SCIENCEQUALITYFLAGEXPLANATION=See http://landweb.nascom.nasa.gov/cgi-bin/QA_WWW/qaFlagPage.cgi?sat=terra for the product Science Quality status.
  QAPERCENTMISSINGDATA=0
  QAPERCENTOUTOFBOUNDSDATA=0
  QAPERCENTCLOUDCOVER=0
  QAPERCENTINTERPOLATEDDATA=100
  PARAMETERNAME=CMG 0.05 Deg Monthly NDVI

(...)

Subdatasets:
  SUBDATASET_1_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly NDVI
  SUBDATASET_1_DESC=[3600x7200] CMG 0.05 Deg Monthly NDVI MOD_Grid_monthly_CMG_VI (16-bit integer)
  SUBDATASET_2_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly EVI
  SUBDATASET_2_DESC=[3600x7200] CMG 0.05 Deg Monthly EVI MOD_Grid_monthly_CMG_VI (16-bit integer)
  SUBDATASET_3_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly VI Quality
  SUBDATASET_3_DESC=[3600x7200] CMG 0.05 Deg Monthly VI Quality MOD_Grid_monthly_CMG_VI (16-bit unsigned integer)
  SUBDATASET_4_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly red reflectance
  SUBDATASET_4_DESC=[3600x7200] CMG 0.05 Deg Monthly red reflectance MOD_Grid_monthly_CMG_VI (16-bit integer)
  SUBDATASET_5_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly NIR reflectance
  SUBDATASET_5_DESC=[3600x7200] CMG 0.05 Deg Monthly NIR reflectance MOD_Grid_monthly_CMG_VI (16-bit integer)
  SUBDATASET_6_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly blue reflectance
  SUBDATASET_6_DESC=[3600x7200] CMG 0.05 Deg Monthly blue reflectance MOD_Grid_monthly_CMG_VI (16-bit integer)
  SUBDATASET_7_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly MIR reflectance
  SUBDATASET_7_DESC=[3600x7200] CMG 0.05 Deg Monthly MIR reflectance MOD_Grid_monthly_CMG_VI (16-bit integer)
  SUBDATASET_8_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly Avg sun zen angle
  SUBDATASET_8_DESC=[3600x7200] CMG 0.05 Deg Monthly Avg sun zen angle MOD_Grid_monthly_CMG_VI (16-bit integer)
  SUBDATASET_9_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly NDVI std dev
  SUBDATASET_9_DESC=[3600x7200] CMG 0.05 Deg Monthly NDVI std dev MOD_Grid_monthly_CMG_VI (16-bit integer)
  SUBDATASET_10_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly EVI std dev
  SUBDATASET_10_DESC=[3600x7200] CMG 0.05 Deg Monthly EVI std dev MOD_Grid_monthly_CMG_VI (16-bit integer)
  SUBDATASET_11_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly #1km pix used
  SUBDATASET_11_DESC=[3600x7200] CMG 0.05 Deg Monthly #1km pix used MOD_Grid_monthly_CMG_VI (8-bit unsigned integer)
  SUBDATASET_12_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly #1km pix +-30deg VZ
  SUBDATASET_12_DESC=[3600x7200] CMG 0.05 Deg Monthly #1km pix +-30deg VZ MOD_Grid_monthly_CMG_VI (8-bit unsigned integer)
  SUBDATASET_13_NAME=HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly pixel reliability
  SUBDATASET_13_DESC=[3600x7200] CMG 0.05 Deg Monthly pixel reliability MOD_Grid_monthly_CMG_VI (8-bit integer)
Gago-Silva
źródło
1
Co się stanie, jeśli wypiszesz pełną nazwę „HDF4_EOS: EOS_GRID:„ MOD13C2.A2001001.005.2007078152825.hdf ”: MOD_Grid_monthly_CMG_VI: CMG 0,05 stopnia miesięcznie NDVI” jako dane wejściowe?
Chethan S.
@Chethan S. Moje przeprosiny Chethan. Nie widziałem twojego komentarza, kiedy opublikowałem swoją odpowiedź. Jeśli chcesz opublikować swój komentarz jako odpowiedź, pójdę naprzód i usunę mój.
Cyrus
Nie martw się Cyrus, wciąż nie jestem pewien, czy to działa. Podobała mi się twoja odpowiedź i też ją głosowałem. Więc proszę nie usuwaj go. :)
Chethan S.
2
Dzięki chłopaki! Nie działa dokładnie tak, jak sugerowano, ale było blisko: gdal_translate -z GTiff HDF4_EOS: EOS_GRID: "MOD13C2.A2001001.005.2007078152825.hdf": MOD_Grid_monthly_CMG_VI: "CMG 0,05 DEG miesięczny NDVI" ndvi.tiff
Gago-Silva
1
@AR Jeszcze raz spojrzałem na link, który opublikowałeś w swoim pytaniu i zauważyłem, że wspomina on FWTools. Testowałem metodę, którą Chethan i ja zasugerowaliśmy na Ubuntu i działała dobrze, ale nie przetestowałem jej za pomocą FWTools w systemie Windows. Może nazwa wejściowa jest przetwarzana nieco inaczej przy użyciu FWTools? W każdym razie cieszę się, że znalazłeś rozwiązanie. Czasami używam FWTools w pracy i jestem pewien, że prędzej czy później wrócę do twojej odpowiedzi. Dzięki.
Cyrus

Odpowiedzi:

7

Myślę, że prawie to masz. Pamiętaj, aby dodać pojedyncze cudzysłowy wokół całej nazwy wejściowej z podwójnymi cudzysłowami wokół nazwy pliku hdf.

gdal_translate -of GTiff 'HDF4_EOS:EOS_GRID:"MOD13C2.A2001001.005.2007078152825.hdf":MOD_Grid_monthly_CMG_VI:CMG 0.05 Deg Monthly NDVI'

Mam nadzieję, że to pomaga

Cyrus
źródło