래스터 데이터를 다각형 데이터로 변환


12

래스터 데이터를 다각형 데이터로 변환하려고합니다. 이전에는 shapefile.py를 사용하여 래스터의 개별 위도 / 경도에 포인트 데이터를 작성했습니다. 그러나 그것은 거대한 데이터를 생성하고 쿼리하는 것은 큰 문제가 될 것입니다.

따라서 래스터 데이터를 다각형 데이터로 변환 할 수 있으면 더 좋습니다. SAGA 를 찾을 수 있었지만 .grd 파일 만 변환 할 수있는 것 같습니다 . GeoTIFF 형식 또는 래스터 데이터 세트를 일반적으로 다각형으로 변환하는 방법이 있습니까?

업데이트 : gdal_polygonize.py 사용

다음 코드 줄을 실행 중입니다.

gdal_polygonize.py ~/development/Biodiversity/biodiversity/GeoTIFF/bio11.tif -f "ESRI Shapefile" bio11.shp

그러나 다음과 같은 오류가 발생합니다. 내 gdal 버전은 1.9.0입니다.

Traceback (most recent call last):
  File "/usr/bin/gdal_polygonize.py", line 34, in <module>
    import gdal, ogr, osr
  File "/usr/lib/python2.7/dist-packages/gdal.py", line 2, in <module>
    from osgeo.gdal import deprecation_warn
  File "/usr/lib/python2.7/dist-packages/osgeo/__init__.py", line 21, in <module>
    _gdal = swig_import_helper()
  File "/usr/lib/python2.7/dist-packages/osgeo/__init__.py", line 17, in swig_import_helper
    _mod = imp.load_module('_gdal', fp, pathname, description)
ImportError: libjvm.so: cannot open shared object file: No such file or directory

1
tiffs를 사용하여 토지 분류를 수행하는 경우 감독되지 않은 최대 우도 분류를 사용하여 tiff 를 다각형으로 변환하는 방법이 있는 링크 ( gis.stackexchange.com/q/29570/8104 )를 확인하십시오 .
Aaron

@Aaron에게 감사하지만이 프로젝트에서 오픈 소스 작업을해야합니다
Sam007

200 개의 tif를 한 번에 변환하는 방법이 있습니까?
Benjo

답변:


21

gdal_polygonize.py를 시도 하십시오 . 예는 Shape 파일을 만들 수 있습니다 mylayer.shp입력에서 myraster.tif:

gdal_polygonize.py myraster.tif -f "ESRI Shapefile" mylayer.shp

또는 PostGIS 데이터베이스로 직접 출력합니다 ( GDAL에 대한 PostgreSQL / PostGIS 드라이버 세부 정보 참조 ).

gdal_polygonize.py myraster.tif -f PostgreSQL PG:"dbname='postgis' user='postgres'" mylayer

( "오류 1 : 'mylayer'에 대한 필드 정의가 없습니다. 테이블입니까?"메시지를 무시하십시오.)

이 도구를 사용자 정의 해야하는 경우 GDALPolygonize에 Python 바인딩 이 있습니다.


고마워 마이크. 시도해 보도록하겠습니다. 또한 shapefile로 출력하는 대신 PostGIS에 직접 할당하고 Geoserver에서 액세스 할 수 있습니다.
Sam007

@ Sam007 yup, PostGIS 출력도 작동합니다. 업데이트 참조
Mike T

shapefile을 만드는 이유가이 오류가 있습니다. postgis 데이터베이스에 추가하지 않았습니다. dpaste.de/L8tSK GeoTIFF가 다른 디렉토리에 있으면 문제가 있습니까?
Sam007

파이썬에서 사용하는 SWIG 바인딩과 관련된 혼란스러운 오류처럼 보입니다. 어떤 버전의 GDAL이 있으며 어떻게 설치 했습니까?
Mike T

1
@ Sam007 사용해보십시오 sudo apt-get install python-gdal. 그래도 작동하지 않으면 새 질문을 게시하십시오. OpenGeo와의 작동 방식을 테스트하지 않았습니다.
Mike T
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.