我只是尝试通过
image_read()
读取图像后检索并更改具有像素值的数组。但是,我不知道如何访问数据。
library(magick)
f = system.file("images", "sample-color.png", package="EBImage")
t = image_read(f)
>t
# A tibble: 1 × 7
format width height colorspace matte filesize density
<chr> <int> <int> <chr> <lgl> <int> <chr>
1 PNG 768 512 sRGB FALSE 556865 72x72
我想做的是类似的事情(假设
t
是一个 3D 数组):
t[1:10,1:10,1] = 0 # set pixel values to '0' for the top left 10x10 square
或
arr = t[1:10,1:10,1] # retrieve pixel values from the top left 10x10 square
这个问题可能有一个简单的解决方案,但我现在无法解决这个问题。
请注意,{magick} 将位图返回为 3 维矩阵。
library(magick)
f = system.file("images", "sample-color.png", package="EBImage")
i = image_read(f)
d <- i[[1]] # or use d <- image_data(i)
d[, 1:40, 1:40] <- as.raw(c(0xff, 0xff, 0xff, 0xff))
image_read(d)
创建于 2024 年 10 月 30 日,使用 reprex v2.1.0