Bagikan melalui


resizeImage: Transformasi Gambar Mengubah Ukuran Pembelajaran Mesin

Mengubah ukuran gambar ke dimensi tertentu menggunakan metode pengurangan ukuran tertentu.

Penggunaan

  resizeImage(vars, width = 224, height = 224, resizingOption = "IsoCrop")

Argumen

vars

Daftar vektor karakter bernama dari nama variabel input dan nama variabel output. Perhatikan bahwa variabel input harus berjenis yang sama. Untuk pemetaan satu-ke-satu antara variabel input dan output, vektor karakter bernama dapat digunakan.

width

Menentukan lebar gambar yang diskalakan dalam piksel. Nilai defaultnya adalah 224.

height

Menentukan tinggi gambar yang diskalakan dalam piksel. Nilai defaultnya adalah 224.

resizingOption

Menentukan metode mengubah ukuran yang akan digunakan. Perhatikan bahwa semua metode menggunakan interpolasi bilinear. Dua opsi tersebut adalah:

  • "IsoPad": Gambar diubah ukurannya sehingga rasio aspek dipertahankan. Jika diperlukan, gambar dilapisi dengan hitam agar pas dengan lebar atau tinggi baru.
  • "IsoCrop": Gambar diubah ukurannya sehingga rasio aspek dipertahankan. Jika diperlukan, gambar dipangkas agar pas dengan lebar atau tinggi baru.
  • "Aniso": Gambar direntangkan ke lebar dan tinggi baru, tanpa mempertahankan rasio aspek. Nilai defaultnya adalah "IsoPad".

Detail

resizeImage mengubah ukuran gambar ke tinggi dan lebar yang ditentukan menggunakan metode pengurangan ukuran yang ditentukan. Variabel input untuk transformasi ini harus berupa gambar, biasanya hasil loadImage transformasi.

Nilai

Objek maml yang menentukan transformasi.

Penulis

Microsoft Corporation Microsoft Technical Support

Contoh


 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")