[GDAL] (1) 사용법 및 명령어

이로률·2023년 4월 10일
1

공간정보기술

목록 보기
1/5
post-thumbnail

GDAL (Geospatial Data Abstraction Library)

지리 데이터를 처리하고 변환하는 데 사용되는 오픈 소스 라이브러리
주로 지리 정보 시스템 (GIS)과 관련된 소프트웨어에서 사용
다양한 공간 데이터 조작 기능, 프로젝션 변환, 이미지 처리, 데이터 타입 변환 등 다양한 기능을 제공

주요 사이트

proj4j

지리 정보 시스템(GIS)에서 사용되는 데이터 변환 라이브러리
주로 지리 정보 시스템에서 사용되는 다양한 지리 좌표계 간에 데이터를 변환하는 데 사용

주요 사이트



cmd창에서 GDAL 사용 방법

1. gdal 라이브러리 설치

gdal download link

2. cmd 창에서 gdal 설치 경로로 이동

cd C:\Program Files\GDAL

3. gdal 명령어 입력

gdalinfo --version // 버전 확인

3-1 gdalwarp

  • 래스터 데이터를 다른 공간 참조 시스템(SRS)으로 변환
//EPSG:5186 좌표계를 가진 tif파일을 EPSG:4326 좌표계 tif 파일로 변환
gdalwarp -s_srs "EPSG:5186" -t_srs "EPSG:4326" --config GTIFF_SRS_SOURCE EPSG road_GeoTiff_03.tif road_GeoTiff_03_EPSG4326.tif
gdalwarp -s_srs "EPSG:5186" -t_srs "EPSG:4326" road_GeoTiff_03.tif geotiff03_epsg_4326.tif

3-2 gdal_translate

//파일 형식 변환
gdal_translate -co compress=lzw input.tif output.tif
gdal_translate -of GeoTiff -co compress=lzw input.tif output.tif

//tif 파일을 png 파일로 변환(이미지 사이즈 10% 축소)
gdal_translate -of png -outsize 10% 10% input.tif output.png

//좌표 변환
gdal_translate -a_srs EPSG:3857 input.tif output.tif
gdal_translate -a_srs EPSG:4326 -co COMPRESS=LZW -co PREDICTOR=2 -co TILED=YES -co BLOCKXSIZE=256 -co BLOCKYSIZE=256 input.tif output.tif
gdal_translate -a_nodata -9999 -a_srs EPSG:4326 input.tif output.tif

3-3 gdaldem

  • Slope, Aspect, Hillshade 등과 같은 지형 데이터에서 유용한 정보를 추출
  • DEM 데이터에서 히스토그램을 만들고, 히스토그램을 기반으로 컬러 맵으로 출력
//png 파일에 스타일 텍스트 파일을 적용하여 컬러 맵으로 출력
gdaldem color-relief input.png colorscale_seaice_rainbow.txt output.png

3-4 gdalsrsinfo

  • tif파일의 좌표계 추출
  • cd C:\Program Files\GDAL\projlib

C:\Program Files\GDAL\projlib>gdalsrsinfo -o epsg v5_epsg_1.tif

//EPSG:3275의 좌표를 EPSG:4326으로 변환
C:\Program Files\GDAL\projlib>gdaltransform.exe -s_srs EPSG:3275 -t_srs EPSG:4326
Enter X Y [Z [T]] values separated by space, and press Return.
209300.0 533756.4
127.10503776985 37.4031149023943 0

//WGS84 
C:\Program Files\GDAL\projlib>gdalsrsinfo -o proj4 bathy.tif

+proj=longlat +datum=WGS84 +no_defs

//Well-known text(WKT)
C:\Program Files\GDAL\projlib>gdalsrsinfo -o wkt EPSG:4326
GEOGCRS["WGS 84",
    ENSEMBLE["World Geodetic System 1984 ensemble",
        MEMBER["World Geodetic System 1984 (Transit)"],
        MEMBER["World Geodetic System 1984 (G730)"],
        MEMBER["World Geodetic System 1984 (G873)"],
        MEMBER["World Geodetic System 1984 (G1150)"],
        MEMBER["World Geodetic System 1984 (G1674)"],
        MEMBER["World Geodetic System 1984 (G1762)"],
        MEMBER["World Geodetic System 1984 (G2139)"],
        ELLIPSOID["WGS 84",6378137,298.257223563,
            LENGTHUNIT["metre",1]],
        ENSEMBLEACCURACY[2.0]],
    PRIMEM["Greenwich",0,
        ANGLEUNIT["degree",0.0174532925199433]],
    CS[ellipsoidal,2],
        AXIS["geodetic latitude (Lat)",north,
            ORDER[1],
            ANGLEUNIT["degree",0.0174532925199433]],
        AXIS["geodetic longitude (Lon)",east,
            ORDER[2],
            ANGLEUNIT["degree",0.0174532925199433]],
    USAGE[
        SCOPE["Horizontal component of 3D system."],
        AREA["World."],
        BBOX[-90,-180,90,180]],
    ID["EPSG",4326]]

JAVA에서 GDAL 사용 방법

🔗 https://velog.io/@soyul2823/GDAL-사용법-및-명령어-JAVA

profile
💻🧐💗💝💘💖

0개의 댓글