Làm cách nào để thêm bảng màu vào bảng một băng bằng cách sử dụng GDAL?


11

Tôi có tệp GeoTIFF 1 băng tần. Giải thích màu cho ban nhạc là màu xám. Tôi muốn một bảng màu để chuyển đổi Col.tiffthành Col.jpeghoặc Col.png.

Tôi đã thử đặt một bảng màu trong tiff này thông qua một .vrt:

gdal_translate -of VRT  Col.tiff Col.vrt

sau đó thêm vào .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>

Và dịch lại:

gdal_translate Col.vrt Col.tiff

Nhưng nó đã trả lời:

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.

Tôi làm nó như thế nào?

Để biết thông tin, có gdalinfo cho Band:

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

Giá trị tối đa / phút nào mà tif của bạn có? Đó là Float64, vậy giá trị thập phân này phải tương ứng với các giá trị nguyên cho bảng màu như thế nào?
AndreJ

Lỗi nói rằng đầu ra phải là loại Byte hoặc UInt16. Có lẽ bạn nên thêm "-ot UInt16" vào lệnh gdal_translate.
dùng49584

Cảm ơn, nó hoạt động ngay bây giờ, tôi chỉ cần tìm màu sắc tốt :)
Faquarl

@AndreJoost Những gì tôi đã làm là lấy các giá trị tối đa / phút và chia chúng cho 255 lớp. Sau đó, với mỗi giá trị, tôi đặt một màu.
Faquarl

Cuối cùng tôi đã tạo một kịch bản Python để tạo một tiff mới với cùng thông tin ngoại trừ có 4band (rgba)
Faquarl

Câu trả lời:


5

với gdal, bạn có thể tô màu một hình ảnh dựa trên gdal_dem ( color_relief )

cú pháp của tệp cấu hình màu được lấy từ một cú pháp được hỗ trợ bởi tiện ích GRASS r.colors . Các tệp bảng màu ESRI HDR (.clr) cũng khớp với cú pháp đó. Thành phần alpha và sự hỗ trợ của tab và dấu phẩy là dấu phân cách là các tiện ích mở rộng cụ thể 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

Xem thêm ví dụ mở rộng của tôi ở đây: gis.stackexchange.com/questions/130199/NH
AndreJ

liên kết trực tiếp đến câu trả lời của @ AndreJ: gis.stackexchange.com/a/132690/49134
Tom Saleeba

vâng, cảm ơn, những câu hỏi năm 2015 nên được đánh dấu là trùng lặp nhưng câu trả lời của AndreJ chi tiết hơn câu hỏi của tôi.
radouxju
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.