Пирамиды не работают

Здесь нужно сообщать об ошибках в QGIS, с подробным описанием шагов и версии ПО.
Ответить
Аватара пользователя
SS_Rebelious
Гуру
Сообщения: 1304
Зарегистрирован: 24 фев 2009, 16:51
Репутация: 99
Ваше звание: GIS pro-fan
Откуда: Lahti / Газ-ПУТИНбург
Контактная информация:

Пирамиды не работают

Сообщение SS_Rebelious » 21 апр 2010, 10:52

QGIS отказывается строить/читать пирамиды геотифоф, преобразованных в данный формат из jpeg с привязкой мапинфо.

1. Берём jpeg-изображение, привязанное в мапинфо.
2. Конвертируем гдалтулзом в геотиф ".tif".
3. Открываем полученный геотиф в кугисе, заходим в свойства, пирамиды. Пытаемся посторить пирамиды (неважно, встроенные или внешние). Получаем сообщение "для данного типа растров данная операция не поддерживается".
4. Делаем круглые глаза О_о; не сдаёмся и лезем в гдалтулз - построение пирамид и строим пирамиды для нашего геотифа.
5. С помощью гдалинфо убеждаемся, что пирамиды построены

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

Driver: GTiff/GeoTIFF
Files: D:/GIS-Lab/WGS-84/MI_VE-parts_2-1.tif
Size is 6672, 8192
Coordinate System is `'
GCP Projection = GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.2572235630016,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4326"]]
GCP[  0]: Id=1, Info=
          (0,0) -> (106.710205078125,57.1243140842962,0)
GCP[  1]: Id=2, Info=
          (6672,8192) -> (111.29150390625,53.9431547022493,0)
GCP[  2]: Id=3, Info=
          (0,8192) -> (106.710205078125,53.9431547022493,0)
GCP[  3]: Id=4, Info=
          (6672,0) -> (111.29150390625,57.1243140842962,0)
GCP[  4]: Id=5, Info=
          (3336,4096) -> (109.000854492188,55.5659220302579,0)
GCP[  5]: Id=6, Info=
          (3336,0) -> (109.000854492188,57.1243140842962,0)
GCP[  6]: Id=7, Info=
          (0,4096) -> (106.710205078125,55.5659220302579,0)
GCP[  7]: Id=8, Info=
          (6672,4096) -> (111.29150390625,55.5659220302579,0)
GCP[  8]: Id=9, Info=
          (3336,8192) -> (109.000854492188,53.9431547022493,0)
Metadata:
  AREA_OR_POINT=Area
Image Structure Metadata:
  INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left  (    0.0,    0.0)
Lower Left  (    0.0, 8192.0)
Upper Right ( 6672.0,    0.0)
Lower Right ( 6672.0, 8192.0)
Center      ( 3336.0, 4096.0)
Band 1 Block=6672x1 Type=Byte, ColorInterp=Red
  Overviews: 3336x4096, 1668x2048, 834x1024, 417x512, 209x256
Band 2 Block=6672x1 Type=Byte, ColorInterp=Green
  Overviews: 3336x4096, 1668x2048, 834x1024, 417x512, 209x256
Band 3 Block=6672x1 Type=Byte, ColorInterp=Blue
  Overviews: 3336x4096, 1668x2048, 834x1024, 417x512, 209x256
проверяем заоодно в каком-нибудь вьюэре.
6. Открываем растр в кугис, лезем в свойства - пирамиды и видим, что пирамид нет О_о, точнее он их почему-то не видит.

r 13311

UPD. Если делать всё то же самое, но если изначальная привязка jpeg была аркгисовская, то проблем c пирамидами не возникает

UPD2: r 13340 - картина та же.
Последний раз редактировалось SS_Rebelious 21 апр 2010, 17:10, всего редактировалось 1 раз.
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Пирамиды не работают

Сообщение Дмитрий Барышников » 21 апр 2010, 11:45

Если изображение не трансформировано, а только зарегистрировано (содержит GCP или матрицу преобразования с поворотом), то QGIS использует врапер (WRAP). Текущая версия gdal не позволяет строить и использовать(!) пирамиды для таких растров. Я зарелизил патч в багтраке gdal (http://trac.osgeo.org/gdal/ticket/2076). Как он работает (если работает :) ) можно посмотреть при помощи моей программы (http://code.google.com/p/wxgis/downloads/list). Я проверял на этом изображении от сюда ftp://ftp.remotesensing.org/pub/geotiff/samples/misc/
P.S. Это уже обсуждалось здесь - viewtopic.php?f=35&t=3421

Аватара пользователя
SS_Rebelious
Гуру
Сообщения: 1304
Зарегистрирован: 24 фев 2009, 16:51
Репутация: 99
Ваше звание: GIS pro-fan
Откуда: Lahti / Газ-ПУТИНбург
Контактная информация:

Re: Пирамиды не работают

Сообщение SS_Rebelious » 21 апр 2010, 12:18

Bishop писал(а):P.S. Это уже обсуждалось здесь - viewtopic.php?f=35&t=3421
да, видел этот топик, но подумал, что у меня другая проблема.

Простите, а что делает ваша программа? При нажатии на превью, она у меня вылетает.

Дело в том, что гдал тулз строит пирамиды, действительно строит - проверял и гдалинфо и вьюэрами и в других гис.
Bishop писал(а):Если изображение не трансформировано, а только зарегистрировано (содержит GCP или матрицу преобразования с поворотом), то QGIS использует врапер (WRAP)
То есть мне надо как-то по другому преобразовывать мапинфовскую привязку в геотиф? Как именно?
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!

Аватара пользователя
SS_Rebelious
Гуру
Сообщения: 1304
Зарегистрирован: 24 фев 2009, 16:51
Репутация: 99
Ваше звание: GIS pro-fan
Откуда: Lahti / Газ-ПУТИНбург
Контактная информация:

Re: Пирамиды не работают

Сообщение SS_Rebelious » 21 апр 2010, 12:49

SS_Rebelious писал(а):о есть мне надо как-то по другому преобразовывать мапинфовскую привязку в геотиф? Как именно?
То есть изначальный jpeg файл конвертнуть в тиф, построить пирамиды, а потом уже этот тиф конвертить в геотиф?
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Пирамиды не работают

Сообщение Дмитрий Барышников » 21 апр 2010, 14:25

SS_Rebelious писал(а):Простите, а что делает ваша программа? При нажатии на превью, она у меня вылетает.
Аналог ArcCatalog (просмотр гис файлов и операции с ними). Сгенерил аналогичный файл - дома посмотрю из-за чего ошибка вылетает. Альфа версия - уж не обессудьте.
SS_Rebelious писал(а):То есть мне надо как-то по другому преобразовывать мапинфовскую привязку в геотиф? Как именно?
Надо сделать полное перепроецирование. В ArcGIS это делает команда Rectify из Georeferencing. А у вас получается аналог работы команды Update Georeferencing из Georeferencing (т.е. обновляется метаданные привязки, а пикселы на месте остаются). Попробуйте с помощью QGIS экспортнуть в другой формат и у результата строить пирамиды.

Аватара пользователя
SS_Rebelious
Гуру
Сообщения: 1304
Зарегистрирован: 24 фев 2009, 16:51
Репутация: 99
Ваше звание: GIS pro-fan
Откуда: Lahti / Газ-ПУТИНбург
Контактная информация:

Re: Пирамиды не работают

Сообщение SS_Rebelious » 21 апр 2010, 17:09

Bishop писал(а):Альфа версия - уж не обессудьте.
Да я всё понимаю, баг репорт был, однако)))
Bishop писал(а):Надо сделать полное перепроецирование.
Это действительно то, что нужно. Ниже решение, которое я сейчас изложу для тех, кто вдруг столкнётся с такой-же проблемой.
Итак, у меня имеется набор геотифов в которых в метаданные забиты точки привязки в WGS84 (хотя конвертируя мапинфовскую привязку в геотиф изначально я надеялся на большее, чем включение точек привязки в теги), но сам растр остаётся непересчитанным и кугис не хочет работать с его пирамидами. Чтобы физически применить проекцию к растру я воспользовался функцией "растр->добавить проекцию" и выбирал WGS84 - ту в которой он и привязан :mrgreen: . Эта функция физически преобразовала растр, заменив информацию о точках привязки на информацию о проекции. Вот как теперь выглядит растр, информация о котором содержится в моём первом посте:

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

Driver: GTiff/GeoTIFF
Files: D:/GIS-Lab/WGS-84/MI_VE-parts_2-1.tif
Size is 8678, 6026
Coordinate System is:
GEOGCS["WGS 84",
    DATUM["WGS_1984",
        SPHEROID["WGS 84",6378137,298.2572235630016,
            AUTHORITY["EPSG","7030"]],
        AUTHORITY["EPSG","6326"]],
    PRIMEM["Greenwich",0],
    UNIT["degree",0.0174532925199433],
    AUTHORITY["EPSG","4326"]]
Origin = (106.710205078124940,57.124314084296280)
Pixel Size = (0.000527906366199,-0.000527906366199)
Metadata:
  AREA_OR_POINT=Area
Image Structure Metadata:
  INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left  ( 106.7102051,  57.1243141) (106d42'36.74"E, 57d 7'27.53"N)
Lower Left  ( 106.7102051,  53.9431503) (106d42'36.74"E, 53d56'35.34"N)
Upper Right ( 111.2913765,  57.1243141) (111d17'28.96"E, 57d 7'27.53"N)
Lower Right ( 111.2913765,  53.9431503) (111d17'28.96"E, 53d56'35.34"N)
Center      ( 109.0007908,  55.5337322) (109d 0'2.85"E, 55d32'1.44"N)
Band 1 Block=8678x1 Type=Byte, ColorInterp=Red
Band 2 Block=8678x1 Type=Byte, ColorInterp=Green
Band 3 Block=8678x1 Type=Byte, ColorInterp=Blue
Таким образом, мы видим, что растр изменил разрешение и выглядит так как должен, а встроенные пирамиды исчезли. Но это не беда, ибо теперь кугис с удовольствием строит их из свойств слоя.
Последний раз редактировалось SS_Rebelious 21 апр 2010, 22:05, всего редактировалось 1 раз.
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Пирамиды не работают

Сообщение Дмитрий Барышников » 21 апр 2010, 21:28

SS_Rebelious писал(а): Да я всё понимаю, баг репорт был, однако)))
Спасибо за выловленную ошибку. Патч на http://trac.osgeo.org/gdal/ticket/2076 обновил.

Ответить

Вернуться в «Ошибки QGIS»

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость