Ошибка при открытии растра (мал. число задаваемых классов)

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Ответить
Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 3020
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 69
Ваше звание: Лиса
Откуда: **
Контактная информация:

Ошибка при открытии растра (мал. число задаваемых классов)

Сообщение Natalia Novoselova » 28 дек 2016, 14:02

При конвертировании растра из формта netcdf уже во втором случае вижу такую ошибку. Растр (tif) открывается в ArcGIS, сохраняя (как думаю) правильные значения переменной в каждом пикселе (что можно понять через Identify instrument при клике на разные пикселы). Но при этом в растре нельзя задать число классов (Properties > Classidied) больше 2 (в одном случае) и 3 в другом. При выборе большего числа классов – система сама скидывает на 2 или 3.
Это лишает возможности построить карту и это явно ошибка. В чем может быть дело? Что вообще может быть не так в растре, что может давать такую ошибку?
Как ее решить?

Приложен – один такой растр (наиболее правильный – с привязкой, получен из конвертирования в tif готового продукта). Для него нельзя задать число классов больше 3.
С ним еще одна странность, при архивировании в zip он почему-то очень сильно уменьшается в размерах С 674 мб до 922 kb. Поэтому могу его приложить прямо к теме. Может быть это как-то связано. Со вторым растром такого нет.
Вложения
soilmoisture.zip
(922.27 КБ) 277 скачиваний

Аватара пользователя
Игорь Белов
Гуру
Сообщения: 2240
Зарегистрирован: 04 янв 2011, 22:00
Репутация: 1513
Откуда: Казань

Re: Ошибка при открытии растра (мал. число задаваемых классо

Сообщение Игорь Белов » 28 дек 2016, 18:04

Вероятно, значение NODATA не соответствует действительности: фоновое значение -999.0, а в тэгах -3.40282299999999995e+38. Надо исправить NODATA:

Код: Выделить всё

gdal_edit.py -a_nodata -999 soilmoisture.tif
Если и теперь ArcGIS упирается, смените тип данных на целочисленный:

Код: Выделить всё

gdal_translate -ot Byte -of GTiff -scale 9.5423779100656e-08 0.85025954246521 1 255 -a_nodata 0 -co COMPRESS=LZW soilmoisture.tif soilmoisture8.tif
Вложения
soilmoisture8.zip
(166.52 КБ) 299 скачиваний
The purpose of computing is insight, not numbers

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 3020
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 69
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Ошибка при открытии растра (мал. число задаваемых классо

Сообщение Natalia Novoselova » 28 дек 2016, 18:47

Игорь Белов писал(а):Вероятно, значение NODATA не соответствует действительности: фоновое значение -999.0, а в тэгах -3.40282299999999995e+38. Надо исправить NODATA:

Код: Выделить всё

gdal_edit.py -a_nodata -999 soilmoisture.tif
Если и теперь ArcGIS упирается, смените тип данных на целочисленный:

Код: Выделить всё

gdal_translate -ot Byte -of GTiff -scale 9.5423779100656e-08 0.85025954246521 1 255 -a_nodata 0 -co [/quote]

Спасибо, дело было в этом!

Помимо операции через консоль, эту операцию я сделала и через ArcMap. Пересохранив растр (Data> Export Data) и задав значание NODATA = -999.0.
Новый растр - имеет возможность классификации.

Ответить

Вернуться в «ArcGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: Ahrefs [Bot] и 2 гостя