Запуск gdal_polygonize

Ответить
Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Запуск gdal_polygonize

Сообщение Denis Rykov » 05 ноя 2008, 10:18

Скачал gdal_polygonize.py и поместил в папку \bin\ FWTools, запускаю его из под FWTools Shell. Без праметров, выдает справку о команде, то есть вроде бы все в порядке. Затем пробую запустить с параметрами, получаю сообщение:

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

gdal.Polygonize() not available.  You are likely using "old gen"
bindings or an older version of the next gen bindings.
Может быть кто подскажет, в чем проблема, как я понял не хватает какой-то библиотеки?
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9128
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 747
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Запуск gdal_polygonize

Сообщение Максим Дубинин » 05 ноя 2008, 19:55

какая версия FWTools/GDAL?
пристегивайтесь, турбулентность прямо по курсу

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Запуск gdal_polygonize

Сообщение Denis Rykov » 05 ноя 2008, 20:06

FWTools2.2.6 и соответствующая версия GDAL
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9128
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 747
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Запуск gdal_polygonize

Сообщение Максим Дубинин » 05 ноя 2008, 20:07

в 2.2.8 FWTools gdal_polygonize есть в bin если запускать его, сообщение об ошибке такое же

если взять последний gdal_polygonize из svn (старше на 6 дней) - сообщение другое:
Creating output test of format GML.
Traceback (most recent call last):
File "gdal_polygonize.py", line 182, in ?
result = gdal.Polygonize( srcband, maskband, dst_layer, dst_field, options,
AttributeError: 'module' object has no attribute 'Polygonize'
Из OSGeo4W тоже самое, замена на snv-овскую версию не помогает.
пристегивайтесь, турбулентность прямо по курсу

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9128
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 747
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Запуск gdal_polygonize

Сообщение Максим Дубинин » 07 ноя 2008, 08:50

попробовал в Ubuntu (FWTools 2.0.6) - те же сообщения, один в один
пристегивайтесь, турбулентность прямо по курсу

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Запуск gdal_polygonize

Сообщение Denis Rykov » 12 ноя 2008, 09:42

gdal_polygonize таки запущен с помощью OSGeo4W!

Вот небольшая инструкция:

1. Идем сюда и скачиваем установщик;

2. Выбираем Advanced Install - Install from Internet, выбираем директорию, куда хотим установить необходимые компоненты и директорию, куда будут сохранены установочные файлы (это позволит в случае переустановки не скачивать заново файлы с Интернета), указываем параметры соединения;

3. В появившемся списке выбираем Commandline_Utilites и выбираем пакет gdal-dev, при этом все необходимые для работы этого пакета другие пакеты также станут отмеченными, скачиваем все это дело и устанавливаем;

4. Идем в \OSGeo4W\apps\gdal-dev\bin\ и пытаемся запустить gdal_polygonize.bat, в результате появляется сообщение: " "python" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом." Для решения этой проблемы есть несколько способов. Вот один из них. Дописываем в переменную среды PATH адрес C:\OSGeo4W\bin (здесь и далее приведены адреса, которые используются в моей системе, они могут отличаться от ваших в зависимости от директории, куда был установлен OSGeo4W);

5. Снова пытаемся запустить gdal_polygonize.bat, получаем сообщение "python: can't open file '\apps\gdal-dev\bin\gdal_polygonize.py': [Errno 2] No such file or directory". Заходим в gdal_polygonize.bat и заменяем %OSGEO4W_ROOT% на C:\OSGeo4W;

6. Запускаем gdal_polygonize.bat, получаем:

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

C:\OSGeo4W\apps\gdal-dev\bin>gdal_polygonize
gdal_polygonize [-o name=value] [-nomask] [-mask filename] raster_file [-b band]  [-q] [-f ogr_format] out_file [layer] [fieldname]
7. Теперь проверим, работает ли эта команда:

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

C:\OSGeo4W\apps\gdal-dev\bin>gdal_polygonize 1.tif -f "ESRI Shapefile" 1.shp
Creating output 1.shp of format ESRI Shapefile.
0...10...20...30...40...50...60...70...80...90...100 - done.
Как видно, все работает!

Кто знает, что из себя представляет файл маски?

Да, кстати в FWTools gdal_polygonize запустить не удастся, вот что пишет по этому поводу сам автор FWTools Frank Warmerdam:
gdal_polygonize is not supported in FWTools as FWTools is distributed using
the "old generation" python bindings (for OpenEV compatability), and there
are no plans to introduce new functions - like polygonize - into the old
bindings.

OSGeo4W (the gdal-dev package) is the best bet for pre-built binaries that
includes gdal_polygonize.
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9128
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 747
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Запуск gdal_polygonize

Сообщение Максим Дубинин » 13 ноя 2008, 09:11

работает!

в пункте 4 получал немного другую ошибку

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

C:\Gis\OSGeo4W\apps\gdal-dev\bin>gdal_polygonize.py
Traceback (most recent call last):
  File "C:\Gis\OSGeo4W\apps\gdal-dev\bin\gdal_polygonize.py", line 34, in <modul
e>
    import gdal, ogr, osr
ImportError: No module named gdal
добавил в PYTHONPATH C:\Gis\OSGeo4W\apps\gdal-dev\pymod;C:\Gis\OSGeo4W\apps\Python25\Lib и все заработало
пристегивайтесь, турбулентность прямо по курсу

Ответить

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

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

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