Итак, вы говорите об изображении RGB, потенциально это означает int GeoTiff.
Код выглядит так (текущая версия снимка 1.0.0-SNAPSHOT
):
val matrix: Array[Array[Int]] = ???
val cols = ??? // matrix dimensions
val rows = ???
val extent: Extent = ??? // you need extent for geotiff
val crs: CRS = ??? // you need to know crs
val tile = IntArrayTile.empty(cols, rows) // create an empty tile
for {
c <- 0 until cols
r <- 0 until rows
} tile.set(c, r, matrix(c)(r))
val geotiff = SinglebandGeoTiff(tile, extent, crs) // it's a geotiff
geotiff.write("dir where you plan to save your geotiff")
Однако это будет геотиф в оттенках серого, чтобы сохранить изображение RGB, вы можете создать три фрагмента и сохранить все как многоканальный GeoTiff.
val red: Tile = ???
val green: Tile = ???
val blue: Tile = ???
val mbtile = MultibandTile(red, green, bule)
val mbgeotiff = new MultibandGeoTiff(
mbtile,
extent,
crs,
GeoTiffOptions(
Striped,
NoCompression,
ColorSpace.RGB
)
) // GeoTiff options setup is quite important, to set up `TIFFTAG_PHOTOMETRIC` tag
mbgeotiff.write("dir where you plan to save your geotiff")
Но я не знаком с Breeze
API, мы можем обсудить ваш вариант использования в Gitter-канале GeoTrellis или / и предоставить там дополнительную информацию.
person
DaunnC
schedule
03.11.2016