答案 0 :(得分:0)
最佳方法很可能会根据您的总体目标而有所不同。为了帮助您入门,您可以尝试使用 EBImage 程序包提供的功能,这是一个通用的图像处理和分析工具箱,可用于生物图像分析。它提供了将图像加载到R中的功能,并执行各种图像转换和过滤。下面的示例说明了如何加载样本图像并绘制直方图。有关package vignette的详细信息以及所提供功能的概述,请参阅image data representation。
# package installation form Biocondcutor
# need to run this only once
source("https://bioconductor.org/biocLite.R")
biocLite("EBImage")
library("EBImage")
img <- readImage("https://i.stack.imgur.com/JTSWO.jpg")
## Image
## colorMode : Color
## storage.mode : double
## dim : 1500 1001 3
## frames.total : 3
## frames.render: 1
##
## imageData(object)[1:5,1:6,1]
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 0.05098039 0.09019608 0.04705882 0.00000000 0.02352941 0.02745098
## [2,] 0.06274510 0.09411765 0.05490196 0.01176471 0.02745098 0.02745098
## [3,] 0.06274510 0.08235294 0.05098039 0.01960784 0.02745098 0.02352941
## [4,] 0.04705882 0.05098039 0.03529412 0.01960784 0.01960784 0.01960784
## [5,] 0.02352941 0.01176471 0.01176471 0.01960784 0.01176471 0.01176471
hist(img)
例如,您可以通过mean
功能在第3个图像维度上轻松计算每个颜色通道的apply
像素强度值。
apply(img, 3, mean)
## [1] 0.2216768 0.2592197 0.1629841
这些值分别对应于红色,绿色和蓝色通道中的平均像素值。像素值通常标准化为[0,1]范围,因此这些数字代表图像中相应颜色的分数。请注意,如果您有兴趣可靠地比较在同一地点但在不同时间点拍摄的图像,则应确保使用相同的白平衡固定值拍摄。