Возможная ошибка в GDAL?

Учитывая этот файл:

http://mtarchive.geol.iastate.edu/2019/02/18/mrms/ncep/GaugeCorr_QPE_01H/GaugeCorr_QPE_01H_00.00_20190218-150000.grib2.gz

… Я получаю разные результаты в зависимости от программного обеспечения, которое я использую.

wgrib2 2019021815.grib2 -csv wgrib2.csv

а также

cdo outputtab,date,time,lat,lon,value 2019021815.grib2 > cdo.txt

оба выхода:

-3 (undefined) :  8,869,250 records
0              : 14,848,865 records
Other values   :    781,885 records
___________________________________
Total          : 24,500,000 records

Тем не мение:

gdal_translate.exe -of xyz 2019021815.grib2 gdal.csv

выходы -3 для всех 24 500 000 записей.

Я получаю тот же результат, если я анализирую файл, используя Python + GDAL.

Это ошибка в GDAL? Я хотел бы иметь возможность анализировать эти файлы с помощью Python.

0 ответов

Я отвечу на вашу проблему, чтобы перейти на использование Weather-Climate Toolkit от NOAA.

Скачать здесь для Windows/Mac/Linux

Он может экспортировать данные NEXRAD/MRMS с координатной сеткой и радиальные данные в CSV. Вот пример пакетной команды для тех, кто нуждается в этой помощи:

wct-export DataSetName.grib2.gz csv Output.csv wctbatchconfig.xml

Если возникают ошибки, попробуйте другую / более раннюю / бета-версию WCT по адресу: https://www1.ncdc.noaa.gov/pub/data/wct/dist/ и обязательно проверьте образцы команд на веб-сайте.

Как вы предполагаете, это похоже на ошибку в GDAL. Я протестировал ту же команду с помощью GDAL 2.4.2, и она работает. Журнал изменений для 2.4.0 указывает на несколько исправлений драйвера GRIB.

Драйвер GRIB:

  • заменить DataSource? и производные классы с VSILFILE напрямую для поддержки файлов> 4 ГБ в Windows
  • включить предупреждение printf() как сообщения CPLDebug()
  • правильно читать и записывать отсутствующие значения данных для сложной упаковки, когда исходные данные являются целыми числами (#1063)
  • g2clib: избегайте переполнения int. Исправления https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=8194
  • g2clib: избегать потенциального доступа за пределы (CID 1393528)
  • degrib: исправить деление с плавающей запятой на ноль. Исправляет https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=9407.
  • degrib: избегать деления числа с плавающей запятой на ноль. Исправления https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10291
  • добавить узел UNIT[] в SRS при чтении, чтобы он был действительным
Другие вопросы по тегам