Contoh penggunaan • Ringkasan opsi
Gunakan program compare untuk menganotasi secara matematis dan visual perbedaan antara gambar dan hasil rekonstruksinya. Lihat Pemrosesan baris perintah untuk saran mengenai cara menyusun perintah compare Anda, atau lihat contoh penggunaan perintah ini di bawah.
Contoh penggunaan
Berikut beberapa contoh perintah compare untuk menunjukkan kegunaan dan kemudahan pemakaiannya. Untuk memulai, mari kita bandingkan gambar dengan versi yang telah dipertajam:
magick rose.jpg -sharpen 0x1 reconstruct.jpg
magick compare rose.jpg reconstruct.jpg difference.png
magick compare -compose src rose.jpg reconstruct.jpg difference.png
Area merah pada gambar selisih menonjolkan (highlight) piksel yang terpengaruh oleh proses penajaman gambar, sedangkan area putih menyamarkan (lowlight) piksel yang tidak tersentuh oleh proses penajaman tersebut.
Selain interpretasi visual atas perbedaan antara gambar dan hasil rekonstruksinya, kami juga melaporkan ukuran matematis dari perbedaan tersebut:
$ magick compare -verbose -metric rmse rose.jpg reconstruct.jpg difference.png
Image: rose.jpg
Channel distortion: RMSE
red: 2833.91 (0.0432427)
green: 2401.45 (0.0366438)
blue: 2560.43 (0.0390696)
all: 2604.73 (0.0397456)
Atau, jika Anda hanya ingin distorsi kanal merah, gunakan perintah berikut:
$ magick compare -channel red -metric PSNR rose.jpg reconstruct.jpg difference.png
27.2817 (0.227348)
Atau, jika Anda hanya ingin distorsi gambar secara keseluruhan, gunakan perintah berikut:
$ magick compare -metric PSNR rose.jpg reconstruct.jpg difference.png
28.0142 (0.233452)
Jika gambar hasil rekonstruksi merupakan subgambar dari gambar aslinya, program compare mengembalikan offset kecocokan terbaik. Selain itu, program ini juga mengembalikan gambar kemiripan (similarity image), sehingga lokasi yang benar-benar cocok tampil putih penuh, dan jika tidak ada piksel yang cocok tampil hitam, atau di antaranya berupa tingkat abu-abu tertentu:
$ magick compare -metric NCC -subimage-search logo.png hat.png similarity.pfm
0 (0) @ 417,44 [0]
$ magick identify -define identify:locate=maximum -define identify:limit=1 similarity.pfm
Channel maximum locations:
Gray: 65532.9 (0.999967) 417,44
Nilai dalam tanda kurung siku tersebut adalah metrik kemiripan (similarity) yang telah dinormalisasi.
Perlu diketahui, pencarian kemiripan (similarity search) memperhitungkan offset halaman virtual. Untuk memastikan hasil yang sesuai harapan, pastikan offset halaman gambar Anda adalah +0+0.
Fitur pencarian subgambar (subimage search) di ImageMagick bisa cukup lambat karena sifatnya yang iteratif. Namun, jika rilis ImageMagick Anda menyertakan dukungan FFTW (Fastest Fourier Transform in the West) dan metrik yang digunakan adalah DPC, MSE, NCC, RMSE, PHASE, atau PSNR, Anda dapat mengharapkan peningkatan kecepatan pemrosesan hingga satu orde besaran. Untuk pembahasan lebih lanjut, lihat Accelerated Subimage-search Compare.
Jika opsi -subimage-search tidak diaktifkan, ImageMagick melakukan perbandingan langsung piksel demi piksel antara kedua gambar, dimulai dari offset halaman masing-masing, biasanya sudut kiri atas. Jika ukuran kedua gambar berbeda, gambar yang lebih kecil disejajarkan dengan gambar yang lebih besar. Area tambahan pada gambar yang lebih kecil diperlakukan sebagai piksel virtual. Piksel virtual ini dapat diproses sesuai metode piksel virtual yang dipilih, yang memengaruhi cara wilayah yang tidak cocok ditangani dalam perbandingan. Akibatnya, metrik perbandingan dapat terpengaruh oleh area tambahan ini, yang berpotensi memengaruhi penilaian kemiripan secara keseluruhan. Untuk hanya membandingkan piksel asli, gunakan -define compare:virtual-pixels=false.
Anda dapat menemukan contoh tambahan penggunaan compare di Examples of ImageMagick Usage.
Dua gambar dianggap mirip jika perbedaannya menurut metrik dan nilai fuzz yang ditentukan adalah 0, kecuali untuk metrik korelasi silang ternormalisasi (NCC), yang menganggap dua gambar mirip apabila nilai korelasi silang ternormalisasinya adalah 1. Metrik default adalah NCC.
Program compare mengembalikan nilai 2 jika terjadi error, 0 jika gambar-gambar tersebut mirip, atau nilai antara 0 dan 1 jika tidak mirip.
Ringkasan opsi
Perintah compare mengenali opsi-opsi berikut. Klik salah satu opsi untuk melihat detail lebih lanjut mengenai cara kerjanya.
| Opsi | Deskripsi |
|---|---|
| -adjoin | menggabungkan gambar menjadi satu file multi-gambar |
| -alpha | mengatur kanal alpha ke on, activate, off, deactivate, set, opaque, copy, transparent, extract, background, atau shape |
| -authenticate value | mendekripsi gambar dengan kata sandi ini |
| -auto-orient | mengatur orientasi gambar secara otomatis |
| -background color | warna latar belakang |
| -brightness-contrast geometry | meningkatkan kecerahan/kontras gambar |
| -channel type | menerapkan opsi untuk memilih kanal gambar |
| -colorspace type | mengatur ruang warna gambar |
| -compose operator | mengatur operator komposit gambar |
| -crop geometry | memangkas (crop) gambar |
| -decipher filename | mengonversi piksel cipher menjadi piksel biasa |
| -debug events | menampilkan informasi debug yang melimpah |
| -define format:option | mendefinisikan satu atau beberapa opsi format gambar |
| -density geometry | kerapatan (density) horizontal dan vertikal gambar |
| -depth value | kedalaman bit gambar |
| -dissimilarity-threshold value | distorsi maksimum untuk kecocokan (sub)gambar (default 0.2) |
| -distort type coefficients | mendistorsi gambar |
| -encipher filename | mengonversi piksel biasa menjadi piksel cipher |
| -extract geometry | mengekstrak area dari gambar |
| -fuzz distance | warna dalam jarak ini dianggap sama |
| -gravity type | penempatan teks horizontal dan vertikal |
| -help | menampilkan opsi program |
| -highlight-color color | menonjolkan perbedaan piksel dengan warna ini |
| -identify | mengidentifikasi format dan karakteristik gambar |
| -interlace type | jenis skema interlacing gambar |
| -level value | menyesuaikan level kontras gambar |
| -limit type value | batas sumber daya cache piksel |
| -log format | format informasi debug |
| -lowlight-color color | menyamarkan perbedaan piksel dengan warna ini |
| -metric type | mengukur perbedaan antar-gambar dengan metrik ini. Metrik default adalah RMSE. |
| -negate | mengganti setiap piksel dengan warna komplementernya |
| -profile filename | menambahkan, menghapus, atau menerapkan profil gambar |
| -quality value | level kompresi JPEG/MIFF/PNG |
| -quantize colorspace | mengurangi warna gambar dalam ruang warna ini |
| -quiet | menekan semua pesan peringatan |
| -read-mask filename | mengaitkan mask baca dengan gambar |
| -regard-warnings | memperhatikan pesan peringatan. |
| -repage geometry | ukuran dan lokasi kanvas gambar |
| -resize geometry | mengubah ukuran (resize) gambar |
| -respect-parentheses | pengaturan tetap berlaku hingga batas tanda kurung. |
| -rotate degrees | menerapkan rotasi Paeth ke gambar |
| -sampling-factor geometry | faktor sampling horizontal dan vertikal |
| -seed value | memberi seed untuk urutan bilangan pseudo-acak baru |
| -separate | memisahkan kanal gambar menjadi gambar grayscale |
| -set attribute value | mengatur atribut gambar |
| -sigmoidal-contrast geometry | meningkatkan kontras tanpa menjenuhkan area terang atau gelap |
| -similarity-threshold value | distorsi minimum untuk kecocokan (sub)gambar (default 0.0) |
| -size geometry | lebar dan tinggi gambar |
| -subimage-search | mencari subgambar |
| -synchronize | menyinkronkan gambar ke perangkat penyimpanan |
| -taint | menandai gambar sebagai telah diubah |
| -transparent-color color | warna transparan |
| -trim | memotong tepi gambar |
| -verbose | menampilkan informasi rinci tentang gambar |
| -version | menampilkan informasi versi |
| -virtual-pixel method | metode akses untuk piksel di luar batas gambar |
| -write-mask filename | mengaitkan mask tulis dengan gambar |


