nativeRaster
images to/from PNG and JPEGThe {fastpng}
, {png}
and
{jpeg}
packages allow images to be loaded directly as
nativeRaster
images.
png_file <- system.file("image", "deer-1.png", package="nara")
jpg_file <- system.file("image", "deer-1.jpg", package="nara")
nr <- fastpng::read_png(png_file, type = 'nativeraster')
class(nr)
#> [1] "nativeRaster"
grid.raster(nr, interpolate = FALSE)
nr <- png::readPNG(png_file, native = TRUE)
class(nr)
#> [1] "nativeRaster"
grid.raster(nr, interpolate = FALSE)
nr <- jpeg::readJPEG(jpg_file, native = TRUE)
class(nr)
#> [1] "nativeRaster"
grid.raster(nr, interpolate = FALSE)
These packages will also automatically detect and save native raster images
raster
image to/from
nativeRaster
ras <- matrix(c('brown', 'darkblue', 'darkblue', 'brown'), 2, 2)
ras
#> [,1] [,2]
#> [1,] "brown" "darkblue"
#> [2,] "darkblue" "brown"
class(ras)
#> [1] "matrix" "array"
grid.raster(ras, interpolate = FALSE)
nr <- nara::raster_to_nr(ras)
nr
#> <nativeRaster> object: rows:2 cols:2
class(nr)
#> [1] "nativeRaster"
grid.raster(nr, interpolate = FALSE)
array
image to/from
nativeRaster
arr <- array(c(
1, 1, 0,
0, 0, 0,
0, 0, 0,
1, 1, 0
), dim = c(2, 2, 3))
arr
#> , , 1
#>
#> [,1] [,2]
#> [1,] 1 0
#> [2,] 1 0
#>
#> , , 2
#>
#> [,1] [,2]
#> [1,] 0 0
#> [2,] 0 0
#>
#> , , 3
#>
#> [,1] [,2]
#> [1,] 0 1
#> [2,] 1 0
class(arr)
#> [1] "array"
grid.raster(arr, interpolate = FALSE)
nr <- nara::array_to_nr(arr)
nr
#> <nativeRaster> object: rows:2 cols:2
class(nr)
#> [1] "nativeRaster"
grid.raster(nr, interpolate = FALSE)