Проблема преобразования данных высоты в библиотеке Java Gdal

Я использую GDAL Java API. У меня есть фрагмент кода, конвертирующий файлы SRTM (hgt), geotiff и dted друг в друга.

При тестировании кода я УСПЕШНО преобразовал образец файла hgt (загруженный из Интернета, например, с этого сайта: http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Eurasia/) в формат dted.

Но когда я использую файл geotiff и успешно конвертирую его в файл hgt, используя свой код преобразования, а затем загружаю этот преобразованный файл hgt, чтобы преобразовать его в формат dted, inputDataSet возвращает значение null.

Когда я проверяю документацию по API, она говорит, что в файловой структуре что-то не так.

Как я могу преодолеть эту проблему? Есть ли у Gdal Java API способ сказать мне, что не так с этим файлом hgt?

Фрагмент кода:

....
gdal.AllRegister();
inputDataset=gdal.Open(inputImagePath);
....

Примечание. Я еще раз подчеркиваю для ясности, что этот код работает с файлом hgt, загруженным из Интернета. Проблема заключается в повторной подаче уже конвертированного файла в конвертер.


person Bulent Ozhorasan    schedule 14.01.2014    source источник
comment
Я сделал еще несколько тестов: после преобразования файла tiff в формат hgt я загружаю сгенерированный файл hgt, чтобы преобразовать его в файл tiff. InputDataset снова равен нулю.   -  person Bulent Ozhorasan    schedule 14.01.2014


Ответы (1)


Мы пришли к выводу, что для файлов hgt важно не только содержимое файла, но и имя файла. Например, N00E072.hgt: имя файла относится к широте и долготе левого нижнего угла плитки. Если имя файла не соответствует этому формату, при преобразовании возникает ошибка.

person Bulent Ozhorasan    schedule 12.02.2014