library(magick)
## Linking to ImageMagick 6.9.12.3
## Enabled features: cairo, freetype, fftw, ghostscript, heic, lcms, pango, raw, rsvg, webp
## Disabled features: fontconfig, x11

Baris kode ini memuat paket magick yang digunakan untuk mengolah gambar.

Erpan <- image_read('https://cdn.popmama.com/content-images/post/20211207/erpan-5jpg-1da6095a7435eacce887433be1af14e0.jpg')
print(Erpan)
##   format width height colorspace matte filesize density
## 1   JPEG   800    420       sRGB FALSE    74004   72x72

Baris kode ini membaca gambar Erpan dari tautan URL dan menampilkannya di konsol dengan menggunakan fungsi print().

image_write(Erpan, path = "Erpan.jpg", format = "jpg")
Erpan_jpg <- image_convert(Erpan, "jpg")
image_info(Erpan_jpg)
##   format width height colorspace matte filesize density
## 1    JPG   800    420       sRGB FALSE        0   72x72

Baris kode ini menulis gambar Erpan dalam format .jpg dengan menggunakan fungsi image_write() dan menyimpannya dalam direktori kerja dengan nama Erpan.jpg. Selanjutnya, gambar tersebut diubah formatnya menjadi .jpg dengan menggunakan fungsi image_convert(). Kemudian, informasi gambar Erpan_jpg ditampilkan di konsol dengan menggunakan fungsi image_info().

Tria <- image_read("https://www.pngmart.com/files/17/Abstract-Triangle-Transparent-PNG.png")
print(Tria)
##   format width height colorspace matte filesize density
## 1    PNG  2508   2508       sRGB  TRUE  2687202   72x72

Baris kode ini membaca gambar Tria dari tautan URL dan menampilkannya di konsol dengan menggunakan fungsi print().

image_border(image_background(Tria, "black"), "#000080", "20x10")

image_border Baris kode ini menambahkan bingkai hitam pada gambar Tria dengan menggunakan fungsi image_border(). Fungsi image_background() digunakan untuk menetapkan warna latar belakang hitam. Selanjutnya, warna bingkai ditetapkan dengan kode warna “#000080”, dan ukuran bingkai ditetapkan dengan “20x10”.

image_trim(Tria)

image_trim Baris kode ini memotong bagian tepi yang kosong atau tidak perlu pada gambar Tria dengan menggunakan fungsi image_trim().

image_crop(Tria, "758x600+50")

image_crop Baris kode ini memotong gambar Tria dengan menggunakan fungsi image_crop(). Ukuran potongan gambar ditetapkan dengan “758x600”, sedangkan posisi potongan gambar ditetapkan dengan “+50” (dimulai dari koordinat x=50).

image_scale(Tria, "350")

image_scale Baris kode ini mengubah ukuran gambar Tria menjadi lebar 350 piksel dengan menggunakan fungsi image_scale().

image_rotate(Tria, 60)

image_rotate Baris kode ini memutar gambar Tria sebesar 60 derajat berlawanan arah jarum jam dengan menggunakan fungsi image_rotate().

image_flip(Tria)

image_flip Baris kode ini membalik gambar Tria secara horizontal dengan menggunakan fungsi image_flip().

image_flop(Tria)

image_flop Baris kode ini membalik gambar Tria secara vertikal dengan menggunakan fungsi image_flop().

image_modulate(Tria, brightness = 80, saturation = 120, hue = 50)

image_modulate Baris kode ini mengubah properti warna gambar Tria dengan menggunakan fungsi image_modulate(). Nilai kecerahan atau brightness diatur menjadi 80, kejenuhan atau saturation diatur menjadi 120, dan nilai hue atau warna diatur menjadi 50.

image_fill(Tria, "orange", point = "+100+200", fuzz = 20)

imange_fill Baris kode ini mengisi warna pada bagian tertentu dari gambar Tria dengan menggunakan fungsi image_fill(). Warna yang digunakan adalah “orange”, dan titik atau point yang dijadikan acuan adalah “+100+200”. Selain itu, nilai fuzz atau toleransi warna diatur menjadi 20.

Magick

kita menggunakan package magick untuk melakukan manipulasi pada gambar. Pertama-tama, kita membaca gambar Erpan dan menampilkan informasi mengenai gambar tersebut. Selanjutnya, kita menulis ulang gambar tersebut menjadi format .jpg dan menampilkan informasi baru mengenai gambar tersebut.

Kemudian, kita membaca gambar Tria dan menampilkan informasi mengenai gambar tersebut. Kita juga melakukan beberapa manipulasi pada gambar tersebut seperti menambahkan border, memotong bagian-bagian tertentu, memperbesar atau memperkecil ukuran gambar, memutar gambar, dan lain sebagainya.

Dalam keseluruhan proses manipulasi gambar tersebut, kita menggunakan fungsi-fungsi yang telah disediakan oleh package magick seperti image_read(), image_write(), image_border(), image_trim(), image_crop(), image_scale(), image_rotate(), image_flip(), image_flop(), image_modulate(), dan image_fill(). Dengan memanfaatkan package magick, kita dapat melakukan berbagai manipulasi pada gambar dengan mudah dan efisien.