2015-01-15 3 views
2

MODIS 대기 제품 (MOD04)의 데이터 세트를 .hdf 형식으로 가지고 있으며 재 투영하여 Geotiff로 저장하려고합니다. gdalwarp를 사용하는 것이 가능하다는 것을 알고 있지만 문제는 이미지를 저장하기 전에 조작을해야한다는 것입니다. 기본적으로 hdf 파일에서 다른 하위 데이터 집합을 읽고 numpy를 사용하여 수정 한 다음 마지막으로 배열을 Geotiff 파일로 저장해야합니다.gdal/python을 사용하여 재 투영 및 모자이크 MODIS level2

저는 gdal을 사용하는 데 익숙하지 않지만 일반적으로 어떻게 작동하는지 알고 있습니다. 나는 MOD04 hdf 파일을 gdal로 열면 gdal이 GeoProjection 및 GeoTransform 데이터를 읽을 수 없다는 것을 알아야합니다!

>>> src = 'D:/Test/MYD04_L2.A2007231.0745.006.2014054160056.hdf' 
>>> dataset = gdal.Open(src,gdal.GA_ReadOnly) 
>>> print dataset.GetProjection() 

>>> print dataset.GetGeoTransform() 
(0.0, 1.0, 0.0, 0.0, 0.0, 1.0) 

위의 내용은 내 hdf 파일을 읽는 예제입니다. 하위 데이터 세트를 직접 열 때도 마찬가지입니다. 아무도 내가 어떻게이 문제를 해결할 수 있는지 궁금하다.

답변

0

데이터가 이미 투영되어 있다고 생각하지 않기 때문에 gdalwarp으로 재 투영하는 것은 효과가 없습니다. 먼저 MODIS Swath 데이터를 그리드로 리샘플링해야합니다. 예를 들어 MRTSwath 또는 PyResample과 같은 도구를 사용하면됩니다.

이론적으로 gdalwarp은 위도/경도 그리드를 지리적 위치 배열로 처리 할 수 ​​있어야하지만 스캐닝 센서의 나비 넥타이 효과로 인해 잘 작동하지 않는다고 생각합니다.

+0

답장을 보내 주셔서 감사합니다. 예, 맞습니다. 제 데이터가 투사되지는 않지만, gdalwarp는이 데이터를 완벽하게 작동하며 bowtie 효과가 없습니다. 나는 방금 gdalwarp의 결과를 HEGtool과 비교했으며 거의 ​​동일합니다. 문제는 필자가 필요로하는 모든 하위 집합을 투영하지 않고 계산을 수행하고 결과를 저장하지 않기 위해서입니다. 배열로 서브 데이터 집합을 읽는 방법을 찾고 있는데, 내 물건과 프로젝트를 최종 배열로 Geotiff로 사용합니다. 어쨌든 PyResample을 살펴보고 해결책을 찾으면 게시물을 업데이트합니다. – Monobakht