GDAL을 사용하여 하나의 밴드에 색상 표를 추가하는 방법은 무엇입니까?


11

1 밴드 GeoTIFF 파일이 있습니다. 밴드의 색상 해석은 회색입니다. 내 변환하기 위해 색상 표를 원하는 Col.tiff에를 Col.jpegCol.png.

.vrt를 통해이 tiff에 색상 표를 넣으려고했습니다.

gdal_translate -of VRT  Col.tiff Col.vrt

그런 다음 .vrt에 추가하십시오.

<ColorInterp>Palette</ColorInterp>
<ColorTable>
   <Entry c1="0" c2="0" c3="255" c4="240"/>
   <Entry c1="0" c2="0" c3="254" c4="240"/>
   <Entry c1="0" c2="0" c3="253" c4="240"/>
   <Entry c1="0" c2="0" c3="252" c4="240"/>
</ColorTable>

그리고 다시 번역하십시오 :

gdal_translate Col.vrt Col.tiff

그러나 그것은 대답했다 :

Warning 1: Unable to export color table to GeoTIFF file.  Color tables can only be written to 1 band or 2 bands Byte or UInt16 GeoTIFF files.

어떻게하니?

자세한 내용은 밴드에 대한 gdalinfo가 있습니다.

Band 1 Block=55x18 Type=Float64, ColorInterp=Gray
  Description = Something
  Metadata:
    GRIB_COMMENT=Something[p]
    GRIB_ELEMENT=TMP
    GRIB_FORECAST_SECONDS=0 sec
    GRIB_REF_TIME=1401926400 sec UTC
    GRIB_SHORT_NAME=SMTHG
    GRIB_UNIT=[p]
    GRIB_VALID_TIME=1401926400 sec UTC

tif의 최대 / 최소값은 무엇입니까? Float64이므로이 10 진수 값은 색상 표의 정수 값과 어떻게 일치해야합니까?
AndreJ

오류는 출력이 Byte 또는 UInt16 유형이어야 함을 나타냅니다. 아마도 "-ot UInt16"을 gdal_translate 명령에 추가해야 할 것입니다.
user30184

고마워, 그것은 지금 작동, 난 그냥 좋은 색상을 찾아야합니다 :)
Faquarl

@AndreJoost 내가 한 일은 최대 / 최소 값을 가져 와서 255 클래스로 나누는 것입니다. 그런 다음 각 값에 대해 색상을 넣습니다.
Faquarl

마지막으로 나는 4bands (rgba)가 없다는 것을 제외하고는 동일한 정보로 새로운 강성을 만들기 위해 파이썬 스크립트를 만들었습니다
Faquarl

답변:


5

gdal을 사용하면 gdal_dem ( color_relief )을 기반으로 이미지를 채색 할 수 있습니다

색상 구성 파일의 구문은 GRASS r.colors 유틸리티가 지원하는 구문에서 파생됩니다 . ESRI HDR 색상 표 파일 (.clr)도 해당 구문과 일치합니다. 알파 구성 요소 및 구분 기호로 탭 및 쉼표 지원은 GDAL 전용 확장입니다.

aspect: aspect oriented grey colors
aspectcolr: aspect oriented rainbow colors
bcyr: blue through cyan through yellow to red
bgyr: blue through green through yellow to red
byg: blue through yellow to green
byr: blue through yellow to red
celsius: blue to red for degree Celsius temperature
corine: EU Corine land cover colors
curvature: for terrain curvatures (from v.surf.rst and r.slope.aspect)
differences: differences oriented colors
elevation: maps relative ranges of raster values to elevation color ramp
etopo2: colors for ETOPO2 worldwide bathymetry/topography
evi: enhanced vegetative index colors
gdd: accumulated growing degree days
grey: grey scale
grey.eq: histogram-equalized grey scale
grey.log: histogram logarithmic transformed grey scale
grey1.0: grey scale for raster values between 0.0-1.0
grey255: grey scale for raster values between 0-255
gyr: green through yellow to red
haxby: relative colors for bathymetry or topography
ndvi: Normalized Difference Vegetation Index colors
population: color table covering human population classification breaks
population_dens: color table covering human population density classification breaks
precipitation: precipitation color table (0..2000mm)
precipitation_monthly: precipitation color table (0..1000mm)
rainbow: rainbow color table
ramp: color ramp
random: random color table
rstcurv: terrain curvature (from r.resamp.rst)
rules: create new color table based on user-specified rules read from stdin
ryb: red through yellow to blue
ryg: red through yellow to green
sepia: yellowish-brown through to white
slope: r.slope.aspect-type slope colors for raster values 0-90
srtm: color palette for Shuttle Radar Topography Mission elevation
terrain: global elevation color table covering -11000 to +8850m
wave: color wave

확장 된 예제를 참조하십시오 : gis.stackexchange.com/questions/130199/…
AndreJ

@AndreJ의 답변에 직접 연결 : gis.stackexchange.com/a/132690/49134
Tom Saleeba

예, 감사합니다. 2015 년 질문은 중복으로 표시되어야하지만 AndreJ의 답변은 내 것보다 더 자세합니다.
radouxju
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.