Operasi Konversi, Edit dan Compose Gambar pada ImageMagick

Logo ImageMagick

Logo ImageMagick

ImageMagick adalah sebuah perangkat lunak grafis yang gratis. Perangkat lunak ini dapat memungkinkan para pengguna untuk mengkonversi, memanipulasi atau meng-compose suatu gambar yang ingin diolah. Kelebihan ImageMagick dengan perangkat lunak grafis lainnya adalah sifatnya yang multiplatform dan dapat digunakan, dimodifikasi serta didistribusikan. Bayangkan jika kita ingin mengkonversi format suatu gambar dalam jumlah yang sangat besar menggunakan perangkat lunak seperti Matlab sangatlah tidak mungkin. Hal itu akan membuang waktu yang cukup banyak dan sulit. Namun dengan menggunakan ImageMagick Hal itu sangat mungkin dilakukan dengan hanya sebaris script dan waktu yang digunakan untuk mengkonversi format suatu gambar sangat efisien.

Agar lebih memahami operasi apa saja yang dapat dilakukan, berikut penjelasan singkat dan implementasi fitur-fitur yang terdapat pada ImageMagick :

Konversi Format Gambar

Gunakan script berikut untuk mengkonversi format gambar serta mengubah ukuran gambar, blur, flip, join, dsb.

Contoh pemakaian :

Operasi di bawah ini merupakan contoh untuk mengkonvesi format gambar dari png ke jpg.

$convert magick.png magick.jpg

Konversi Format

Konversi Format

Keterangan :

  • convert : merupakan perintah pada ImageMagick untuk mengkonversi suatu gambar.
  • magick.png : merupakan file input
  • magick.jpg : file output

Kita juga dapat merubah ukuran gambar sebelum melakukan proses konversi gambar.

$convert magick.png -resize 50% magick.jpg

Konversi Format dengan Mengubah Ukuran Gambar

Konversi Format dengan Mengubah Ukuran Gambar

Hasil Konversi dengan Mengubah Ukuran Gambar

Hasil Konversi dengan Mengubah Ukuran Gambar

Keterangan :

  • convert : merupakan perintah pada ImageMagick untuk mengkonversi suatu gambar.
  • magick.png : merupakan file input
  • -resize : option yang digunakan untuk mengubah ukuran gambar
  • 50% : merupakan besar ukuran gambar yang di-resize
  • magick.jpg : file output

Selain itu kita bisa mengkombinasi beberapa operasi pengolahan citra untuk memproduksi hasil yang lebih kompleks.

$convert -size 390×100 canvas:none -font Bookman-DemiItalic -pointsize 72 \
-draw “text 25,60 ‘Bayu Aji'” -channel RGBA -blur 0x6 -fill darkred -stroke magenta \
-draw “text 20,55 ‘Bayu Aji'” bayuaji.png

Operasi Konversi Pengolahan Citra yang Lebih Kompleks

Operasi Konversi Pengolahan Citra yang Lebih Kompleks

Output Operasi Pengolahan Citra yang Lebih Kompleks

Output Operasi Pengolahan Citra yang Lebih Kompleks

Keterangan :

  • -size : Lebar dan tinggi suatu image
  • -canvas : Penggunaan canvas pada suatu gambar
  • -font : Font yang digunakan pada gambar
  • -pointsize : Ukuran titik suatu font
  • -draw : Membubuhi keterangan gambar dengan grafis primitif
  • -channel : Menerapkan opsi untuk channel warna yang akan digunakan pada gambar
  • -blur : Mengurangi noise dan mengurangi tingkat detail suatu gambar
  • -fill : Warna yang digunakan pada grafis primitif
  • -stroke : Grafis warna stroke primitif
  • bayuaji.png : File output

Dari beberapa keterangan di atas kita dapat mengetahui bahwa operasi pengolahan citra yang dilakukan adalah membuat sebuah text pada image yang berukuran 390×200 dengan font Bookman-DemiItalic. Text yang akan dibubuhi pada image tersebut adalah “Bayu Aji” yang akan diberi warna RGBA dan diberi efek blur dengan skala 0x6. Selain itu text akan diberi efek pencahayaan redup  dengan warna magenta dengan output file bayuaji.png.

Rotasi Gambar

Rotasi pada ImageMagick dapat dilakukan dengan menyertakan opsi -rotate pada command ImageMagick yang akan diproses. Variasi dalam merotasi gambar dapat dilakukan dengan mengubah warna background pada gambar yang dirotasi maupun merubah tampilan gambar menjadi bentuk yang diinginkan. Untuk memahami lebih dalam mengenai proses rotasi pada ImageMagick lakukan beberapa contoh berikut :

$convert magick.jpg -rotate 30 rotate-30.jpg

Rotasi sebesar 30 Derajat

Rotasi sebesar 30 Derajat

Dari perintah di atas dapat diketahui bahwa gambar akan mengalami operasi rotasi sebesar 30 derajat. File output rotasi akan disimpan dengan nama rotate-30.jpg. Untuk mengubah warna background pada gambar tambahkan opsi -background. Jika menginkan gambar dengan latar transparan cukup tambahkan opsi -alpha set -background none.

$convert magick.jpg -background lightblue -rotate 30 magicklatar.png
$convert magick.jpg -alpha set -background none -rotate 30 magicktrans.png

Perintah Rotasi

Perintah Rotasi

Hasil Perubahan Latar pada Operasi Rotasi

Hasil Perubahan Latar pada Operasi Rotasi

Color Management (RGB -> Grayscale)

Selain dapat melakukan operasi pada ImageMagick, kita juga bisa mengatur warna yang digunakan pada gambar. Warna yang dapat kita atur berorientasi pada warna RGB. Namun pada study kasus kali ini, kita akan mencoba bagaimana cara merubah warna yang RGB pada gambar menjadi Grayscale. Tambahkan opsi -set dan -colorspace gray untuk mengkonversi warna menjadi Grayscale.

$convert magick.jpg -set colorspace RGB -colorspace gray graymagick.jpg

Script RGB to Grayscale

Script RGB to Grayscale

Hasil Konversi RGB to Grayscale

Hasil Konversi RGB to Grayscale

Crop Basis Geometri

Pada bagian ini, kita akan melakukan operasi cropping berbasis geometri. Operasi Geometri pada pengolahan citra ditujukan untuk memodifikasi koordinat piksel dalam suatu citra dengan pendekatan tertentu, tetapi dalam perkembangannya dimungkinkan juga memodifikasi nilai skala keabuan. Pada study kasus kali ini kita akan memotong sebuah gambar. Gambar yang diambil adalah gambar melodi yang terletak pada bagian tengah bawah gambar. Untuk mendapatkan hasil pemotongan yang sesuai dengan posisi si objek. Ketik perintah di bawah ini untuk memotong gambar tersebut :

Sebelum di Crop

Sebelum di Crop

$convert jkt48.jpg -crop 600×800+400+400 jkt48crop.jpg
$identify jkt48crop.jpg
jkt48crop.jpg JPEG 600×800 600×800+0+0 8-bit DirectClass 242KB 0.000u 0:00.000

Perintah Crop

Perintah Crop

Keterangan :

  • -crop : Memotong gambar berdasarkan geometri
  • identify : Mengidentifikasi format dan karakteristik gambar

Pada perintah pertama terdapat perintah convert yang akan memroses gambar sesuai dengan opsi yang disertakan. Opsi -crop yang akan memotong citra berdasarkan geometri gambar. Nilai opsi crop yang digunakan adalah 600×800+400+400. Nilai 600×800 merupakan besar output gambar yang dihasilkan. 400+400 merupakan nilai titik pemotongan awal dan akhir gambar tersebut. File (file input jkt48.jpg, file output jkt48crop.jpg)

Hasil Crop

Hasil Crop

Referensi : http://www.imagemagick.org/

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: