Seam Carving: Algoritma Pengubah Ukuran Gambar Tanpa Distorsi

Seam carving

Biasanya, untuk mengubah ukuran gambar, kita menjaga aspect ratio bernilai tetap agar gambarnya tidak terdistorsi.

Atau jika ingin gambarnya dalam aspect ratio yang lain, kita bisa melakukan crop pada gambar, dengan konsekuensi ada beberapa bagian dari gambar yang akan hilang.

Tapi, bagaimana jika kita menggabungkan hal tersebut: Mengubah ukuran aspect ratio pada gambar, tanpa menghilangkan bagian penting dari gambar, dan juga tanpa adanya distorsi.

Apakah bisa?

Bisa. Teknik Seam Carving bisa melakukannya.

Apa itu Seam Carving?

Seam carving adalah sebuah algoritma pengubahan ukuran gambar tanpa distorsi.

Algoritma ini dikembangkan oleh Shai Avidan dan Ariel Shamir dari Mitsubishi Electric Research Laboratories (MERL).

Algoritma ini bekerja dengan cara menghilangkan bagian-bagian gambar yang dianggap tidak penting saat melakukan proses pengubahan ukuran.

Berikut ini adalah perbandingan pemrosesan gambar dengan metode konvensional dan metode seam carving:

seam carving
Gambar asli
Gambar yang diubah ukurannya (terdistorsi)
Gambar yang di-crop (tidak terdistorsi, tapi beberapa bagian hilang)
Gambar dengan algoritma Seam Carving

Proses Kerja Seam Carving

1. Mulai dengan sebuah gambar

2. Menghitung tingkat kerapatan pixel

Tingkat kerapatan pixel dapat dapat dilakukan dengan berbagai macam algoritma:

  • Gradient magnitude
  • Entropy
  • Visual saliency
  • dan lain sebagainya

3. Menentukan lapisan yang tidak penting

Berdasarkan data kerapatan pixel pada langkah sebelumnya, ditentukan mana seams (lapisan) yang tidak penting dan dapat dihilangkan tanpa mengubah gambar secara drastis.

4. Menghilangkan lapisan yang tidak penting

5. Mendapatkan gambar akhir

Cara Melakukan Seam Carving

Saat ini teknik seam carving telah banyak diadopsi penggunaannya, antara lain melalui:

  • Menulis kode program secara manual
  • Menggunakan fitur pada ImageMagick
  • Menggunakan Photoshop

Dengan ImageMagick, seam carving dapat dilakukan dengan menggunakan perintah tambahan liquid-rescale.

Contohnya dilakukan dengan perintah berikut:

convert input.jpg  -liquid-rescale 75x100%\!  output.jpg

Adapun untuk Photoshop, fitur seam carving ini dapat digunakan dengan memilih opsi content aware scale, yang terdapat pada menu

Edit > Content Aware Scale

Sebagai contoh, berikut ini adalah penggunaan seam carving yang saya lakukan.

Gambar asli:

Resize biasa (distorsi):

Seam carving:

Terima kasih!

About Fajrul 103 Articles
Menyelesaikan studi di Departemen Fisika Universitas Diponegoro. Aktif menulis berbagai topik sains populer.

Be the first to comment

Leave a Reply

Your email address will not be published.


*