Gdal: Error 4

Ответить
DimonSpb
Интересующийся
Сообщения: 17
Зарегистрирован: 26 ноя 2008, 22:10
Репутация: 1

Gdal: Error 4

Сообщение DimonSpb » 17 янв 2012, 08:33

Работаю из консоли OSGeo4 (версия gdal - 1.8.1) и пытаюсь обрезать привязанный TIF по векторному слою:

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

gdalwarp.exe -dstnodata -cutline c:\b.tab c:\1_modify.tif  1.tif
В ответ получаю:

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

ERROR 4: 'c:\b.tab' not recognised as a supported file format
Утилиты ogr стоят и работают с файлами MapInfo. Менял СК векторного слоя на WGS84, пробовал с SHP фалом, эта же ошибка. :cry: Почему возникает ошибка?
Файлы

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Gdal: Error 4

Сообщение Voltron » 17 янв 2012, 13:14

Потому что параметр "-dstnodata" у вас без значения. Уберите его или задайте какую-то величину.

DimonSpb
Интересующийся
Сообщения: 17
Зарегистрирован: 26 ноя 2008, 22:10
Репутация: 1

Re: Gdal: Error 4

Сообщение DimonSpb » 17 янв 2012, 18:48

Voltron, спасибо. Исправил в файле Mapinfo полилинию на полигон и ...

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

gdalwarp.exe -cutline с:\b.tab с:\1_modify.tif 1.tif
... ошибка не появляется. Но получаемый файл не содержит фрагмент (содержит голубой фон) и имеет размер как исходный... Что еще не хватает?

DimonSpb
Интересующийся
Сообщения: 17
Зарегистрирован: 26 ноя 2008, 22:10
Репутация: 1

Re: Gdal: Error 4

Сообщение DimonSpb » 18 янв 2012, 07:33

Предполагаю, что получаю "кривой" результат из-за отсутствия информации о Датуме (неполной информации) в исходном tif файле и он (tif) получается за пределами полигона из файла Mapinfo:

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

Coordinate System is:
PROJCS["unnamed",
    GEOGCS["GCS Name = Krassovsky, 1942|Datum = unknown|Ellipsoid = krass|Primem = Greenwich|",
        DATUM["unknown",
            SPHEROID["unnamed",6378245,298.2999999999985]],
        PRIMEM["Greenwich",0],
        UNIT["degree",0.0174532925199433]],
    PROJECTION["Transverse_Mercator"],
    PARAMETER["latitude_of_origin",0],
    PARAMETER["central_meridian",33],
    PARAMETER["scale_factor",1],
    PARAMETER["false_easting",500000],
    PARAMETER["false_northing",0],
    UNIT["metre",1,
        AUTHORITY["EPSG","9001"]]]
Origin = (6455788.530024945700000,7510270.274802914800000)
Pixel Size = (12.627244804633706,-12.627244804633706)
Metadata:
  AREA_OR_POINT=Area
Image Structure Metadata:
  COMPRESSION=DEFLATE
  INTERLEAVE=BAND
Corner Coordinates:
Upper Left  ( 6455788.530, 7510270.275) ( 39d28'7.78"E,801d38'38.62"N)
Lower Left  ( 6455788.530, 7470418.690) (  4d39'54.62"E,717d48'42.37"N)
Upper Right ( 6501638.056, 7510270.275) (131d41'55.25"W,852d14'13.68"N)
Lower Right ( 6501638.056, 7470418.690) (147d45'36.30"W,762d52'55.30"N)
Center      ( 6478713.293, 7490344.483) (127d39'19.00"E,781d53'19.15"N)
Пытался исправить с помощью gdal_translate:

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

gdal_translate.exe -a_srs "+proj=tmerc +zone=6 +ellps=krass +datum=Pulkovo_1942"
Не помогает.
Как можно "принудительно" прописать параметры Датума в GeoTif?

DimonSpb
Интересующийся
Сообщения: 17
Зарегистрирован: 26 ноя 2008, 22:10
Репутация: 1

Re: Gdal: Error 4

Сообщение DimonSpb » 20 янв 2012, 08:11

Сбился с ног... :(
Может кто даст для примера "работающие" привязанный растр и контур (tab, mif, shp)?

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Gdal: Error 4

Сообщение Александр Мурый » 20 янв 2012, 12:39

DimonSpb писал(а):Сбился с ног... :(
Может кто даст для примера "работающие" привязанный растр и контур (tab, mif, shp)?
Работающий пример -- набор GEOsample для QGIS.
Например, вырезав вначале из слоя admin.shp границы Новосибирской области в слой admin_Novosib.shp, а потом применив заветную команду:

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

gdalwarp -dstnodata 0 -crop_to_cutline -cutline admin_Novosib.shp relief.tif relief_Novosib.tif
,
получаем рельеф на указанную территорию :)
gdalwarp_cutline_Novosib.png
gdalwarp_cutline_Novosib.png (75.92 КБ) 7349 просмотров
Редактор материалов, модератор форума

DimonSpb
Интересующийся
Сообщения: 17
Зарегистрирован: 26 ноя 2008, 22:10
Репутация: 1

Re: Gdal: Error 4

Сообщение DimonSpb » 23 янв 2012, 08:21

Спасибо, amuriy!
Проконтролировал "совместимость" вектора и растра в QGis.
Дело было в том, что в srs.db, позаимствованной у QGis, описание СК имеет сл.вид:

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

+proj=tmerc +lat_0=0 +lon_0=33 +k=1 +x_0=500000 +y_0=0

и если привязывать без номера зоны, то "плоские" координаты переводятся в геодезические правильно (в Geotiff), но при этом открытие растра в ГИС (MapInfo, QGis) происходит со смещением на N*10^6 (N - номер зоны), хотя в растре содержится описание СК.
В самом QGis в описании СК присутствует номер зоны:

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

+proj=tmerc +lat_0=0 +lon_0=33 +k=1 +x_0=6500000 +y_0=0
ИМХО, в srs.db присутствует несколько вариантов описания одной и той же СК (с учетом и без номера зоны) - не нашел. Или есть другое объяснение этого... :)

Ответить

Вернуться в «GDAL/OGR»

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

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