Pencarian by image merupakan fitur advance dalam dunia internet saat ini, terutama setelah Google meluncurkan fitur ini terintegrasi dalam layanan search enginenya. Pada dasarnya fitur pencarian by image akan mencari gambar yang memiliki karakter mirip dengan gambar pembandingnya.
Fasilitas ini bisa kita gunakan ketika ingin mencari gambar yang sama tetapi diupload oleh situs lain, bisa karena ingin mendapatkan resolusi gambar lebih baik, atau untuk mendeteksi adanya situs lain yang mengunggah hasil jepretan mereka tanpa ijin. Fitur search by image ini tergolong fitur baru sehingga wajar jika hasil pencarian seringkali tidak sesuai dengan gambar yang kita inputkan. Ada banyak pendekatan yang digunakan untuk mendapatkan hasil terbaik, dan banyak programmer/hacker di seluruh dunia berusaha menemukan formula terbaik pencarian ini.
Lalu bagaimana sebenarnya algoritma untuk mencari gambar?
Berbeda dengan pencarian by text yang cukup mengetikan keywordnya di search engine, search by image memerlukan translasi gambar menjadi kode untuk dicarikan kode yang mirip. Ada beberapa pendekatan dalam pembuatan algoritma search by image.
1. Color histogram
Dengan teknik ini, persebaran warna gambar akan dideteksi, dengan menggunakan histogram gambar yang dinormalisasi, search engine akan mencari histogram yang identik. Kelemahan teknik ini jika bertemu dengan gambar yang di sudah di crop.
2. GQ view image comparison
Gambar akan dibagi dalam 32 x 32 grid array atau 1024 kotak, dalam setiap kotak, warna akan dipecah menjadi tiga warna dasar RGB, 32×32 array ini berlaku sebagai signature gambar tersebut. Saat melakukan perbandingan 2 gambar, komputer akan menghitung signature tiap array dan mencari rata2 perbandingannya dengan rumus
kesamaan = 1 – (abs (merah [img1] – red [img2]) + abs (biru [img1] – biru [img2]) + abs (green [img1] – green [img2])) / 255 * 1024 * 3
nilai 1.0 menandakan identik dan 0.0 menandakan tidak identik. Teknik ini cocok digunakan untuk mengkomparasi gambar yang disimpan dalam format, ukuran dan kompresi berbeda.
3. findimagesduple.pl algoritma
Sebelum diperbandingkan gambar akan diresize menjadi ukuran 160 x 160, kemudian mengubahnya ke mode greyscale, menambahkan noise, menormalisasi, kemudian mengcontraskan dan dikompres lagi menjadi ukuran 16 x 16, setelah setiap pixel berisi 1 bit, gambar terlihat hanya berupa titik hitam putih. Array hitam putih ini diubah jadi format raw data dan kemudian dicari perbandingannya dengan teknik XOR.
4. Average hashing
Mirip seperti teknik ketiga, dengan menyusutkan ukuran gambar menjadi 8×8 pixel dan mengubahnya menjadi grayscale. Teknik ini dimaksudkan untuk meminimalisir frekuensi yaitu dari bit 64Red 64Green 64Blue menjadi total 64 warna grey. Ke 64 warna tersebut dihitung rata2nya dan dianggap sebagai average hash. 64 warna diubah menjadi 64 bits dan menjadi 64 integer array. Bandingkan urutan array tersebut dengan urutan array image yang dicari dengan teknik Hamming distance (membandingkan jarak bit karakter yang sama). Semakin kecil Hamming distancenya (0) menandakan bit pada gambar identik.
Selain teknik di atas masih banyak algoritma pencarian berdasarkan gambar seperti berdasarkan wavelet, content based images retriveal, k-nearest algoritms. Beberapa algoritma menggunakan gabungan deteksi persebaran warna, shape, dan proporsionalitas untuk mendapatkan hasil maksimal. Terutama karena sebuah gambar identik dapat diupload dalam bentuk resizing, cropping, noising, different pixel & format, greyscaling dan juga rotating.
Melihat kemajuan fitur pencarian semacam ini, bukan tidak mungkin kelak kita cukup menghadap browser dan melantunkan sepenggal lagu, kemudian search engine akan mencarikan mp3, video dan lirik dari lagu tersebut langsung ke depan layar monitor kita.
sok nganggo tapi nembe ngerti cara kerjane 😀
nek dikon gawe programme nyong kayane tiarap loh kang, miyen ra diajari sejero kuwe