resizeImage:机器学习调整图像大小转换
使用指定的大小调整方法,将图像的大小调整为指定的维度。
用法
resizeImage(vars, width = 224, height = 224, resizingOption = "IsoCrop")
参数
vars
输入变量名称和输出变量名称的字符向量的命名列表。 请注意,所有输入变量的类型必须相同。 对于输入变量和输出变量之间的一对一映射,可以使用命名字符向量。
width
指定缩放图像的宽度(以像素为单位)。 默认值为 224。
height
指定缩放图像的高度(以像素为单位)。 默认值为 224。
resizingOption
指定要使用的大小调整方法。 请注意,所有方法都使用双线性内插。 选项包括:
"IsoPad"
:调整图像大小以保留纵横比。 如果需要,可使用黑色填充图像以适应新宽度或高度。"IsoCrop"
:调整图像大小以保留纵横比。 如果需要,可裁剪图像以适应新宽度或高度。"Aniso"
:图像拉伸到新宽度和高度,不保留纵横比。 默认值是"IsoPad"
。
详细信息
resizeImage
使用指定的调整大小方法将图像重设为指定的高度和宽度。 此转换的输入变量必须是图像,通常是 loadImage
转换的结果。
值
一个 maml
对象,用于定义转换。
作者
Microsoft Corporation Microsoft Technical Support
示例
train <- data.frame(Path = c(system.file("help/figures/RevolutionAnalyticslogo.png", package = "MicrosoftML")), Label = c(TRUE), stringsAsFactors = FALSE)
# Loads the images from variable Path, resizes the images to 1x1 pixels and trains a neural net.
model <- rxNeuralNet(
Label ~ Features,
data = train,
mlTransforms = list(
loadImage(vars = list(Features = "Path")),
resizeImage(vars = "Features", width = 1, height = 1, resizing = "Aniso"),
extractPixels(vars = "Features")
),
mlTransformVars = "Path",
numHiddenNodes = 1,
numIterations = 1)
# Featurizes the images from variable Path using the default model, and trains a linear model on the result.
model <- rxFastLinear(
Label ~ Features,
data = train,
mlTransforms = list(
loadImage(vars = list(Features = "Path")),
resizeImage(vars = "Features", width = 224, height = 224), # If dnnModel == "AlexNet", the image has to be resized to 227x227.
extractPixels(vars = "Features"),
featurizeImage(var = "Features")
),
mlTransformVars = "Path")