Tuesday, July 8, 2014

MSE dan PSNR

Apa itu MSE dan PSNR ?
Peak Signal to Noise Ratio (PSNR) adalah perbandingan antara nilai maksimum dari sinyal yang diukur dengan besarnya derau yang berpengaruh pada sinyal tersebut. PSNR biasanya diukur dalam satuan decibel (db). PSNR digunakan untuk mengetahui perbandingan kualitas citra cover sebelum dan sesudah disisipkan pesan. Untuk menentukan PSNR, terlebih dahulu harus ditentukan nilai MSE (Mean Square Error). MSE adalah nilai error kuadrat rata-rata antara citra asli dengan citra manipulasi (dalam kasus steganografi ; MSE adalah nilai error kuadrat rata-rata antara citra asli (cover-image) dengan citra hasil penyisipan (stego-image)

Bagaimana menghitung MSE dan PSNR ?
Dalam suatu pengembangan dan pelaksanaan rekonstruksi gambar diperlukan perbandingan antara gambar hasil rekonstruksi dengan gambar asli. Ukuran umum yang digunakan untuk tujuan ini adalah Peak Signal to Noise Ratio (PSNR). Nilai PSNR yang lebih tinggi menyiratkan kemiripan yang lebih erat antara hasil rekonstruksi dan gambar asli. PSNR didefinisikan sebagai : 
 Dimana MSE dinyatakan sebagai mean square error yang didefinisikan sebagai : 

Dimana x dan y adalah koordinat dari gambar, M dan N adalah dimensi dari gambar, S_xy menyatakan stego-image dan C_xy menyatakan cover-image. C_max^2 memiliki nilai maksimum dalam gambar, sebagai contoh :

PSNR sering dinyatakan dalam skala logaritmik dalam decibel (dB). Nilai PSNR jatuh dibawah 30 dB mengindikasikan qualitas yang relative rendah, dimana distorsi yang dikarenakan penyisipan terlihat jelas. Akan tetapi kualitas stego-image yang tinggi berada pada nilai 40dB dan diatasnya (Cheddad, 2010).

contoh perhitungan MSE dan PSNR (pada citra asli dan citra akhir penyisipan pesan):
Berikut ini adalah contoh perhitungannya. citra awal adalah citra yang belum disisipi pesan, dan citra akhir adalah citra yang sudah disisipi pesan (pada studi kasus steganografi). Untuk meliha contohnya lebih jelas, klik aja gambarnya ya, hehehhee :D




sumber : 
Cheddad, A., Condell, J., Curran, K., Kevitt, P.Mc., 2010. Digital Image Steganography : Survey and Analysis of Current Methods. Signal Processing, Elsevier. Northern Ireland, UK. 

35 comments:

  1. Mas Numpang Copy tulisannya, hehehehe, terima kasih..

    ReplyDelete
  2. k tolong share skrip perhitungan PSNR dan MSE 512X512?????
    THANK'S

    ReplyDelete
  3. @Mayemi Natonis :
    Sama aja perhitungannya mas. Tinggal dimasukkan nilai masing-masing piksel kedalam rumus MSE (untuk dapetin errornya), kemudian hasilnya masukin ke rumus PSNR-nya mas.

    Kalo dibuatin perhitungannya secara manual, banyak sekali itu mas. kalo pake program lebih gampang mas.

    ReplyDelete
  4. mas, patokan nilai PSNR yang bagus itu berapa ya? minta tolong kl bisa kasi sumber nya dong, jurnal atau apa gitu. buat referensi tugas akhir saya. terima kasih...

    ReplyDelete
    Replies
    1. terimakasih atas kunjungannya.
      maaf baru bisa membalas pertanyaanya.

      untuk patokan nilainya, dari yang saya baca di jurnal "Cheddad, A., Condell, J., Curran, K., Kevitt, P.Mc., 2010. Digital Image Steganography : Survey and Analysis of Current Methods. Signal Processing, Elsevier. Northern Ireland, UK. " nilai stego image yang rendah di angka 30db, dan nilai yang baik diatas 40db

      Delete
  5. Mas mau tanya boleh? Tolong dijawab ya. Pada peramalan kuantitatif, nilai MSE dihitung untuk mengetahui apa ya? Terimakasih

    ReplyDelete
    Replies
    1. Mohon maaf mbak/mas , maaf saya lama membalasnya. Untuk peramalan kuantitatif saya kurang paham. sedikit dari yg saya baca mungkin yang mbak/mas maksud bisa menggunakan metode di statistika.
      Peramalan (forecasting) : adalah seni dan ilmu memprediksi peristiwa-peristiwa yang akan terjadi dengan menggunakan data historis dan memproyeksikannya ke masa depan dengan beberapa bentuk model matematis. (dari yg saya baca)

      Jadi untuk MSE yang saya bahas disini, hanya berfokus pada perbandingan kualitas citra.
      Jikalau nanti saya sempat membaca mengenai peramalan kuantitatif lebih lanjut mungkin kita bisa diskusikan.
      terimakasih telah berkunjung mas/mbak.

      Delete
  6. Terima Kasih kepada penulis, postingannya menambah wawasan saya tentang MSE dan PSNR :)

    ReplyDelete
    Replies
    1. Terimakasih telah berkunjung mbak Feby. Terimakasih untuk komentarnya. :)

      Delete
  7. Mas, saya mau tanya tolong dijawab ya.
    Apakah input dari citra ini RGB atau grayscale? Pada umumnya MSE & PSNR menggunakan citra yang seperti apa?
    Saya sedikit bingung ketika mendapat nilai MSE dari citra RGB ada tiga nilai masing-masing R G dan B . Untuk perhitungan PSNR nya bagaimana mas? Apakah PSNR nya jadi mempunyai 3 nilai juga?
    Terimakasih

    ReplyDelete
    Replies
    1. Selamat malam mbak @atika, maaf baru bisa saya balas commentnya.

      Untuk contoh diatas adalah teorinya mbak, untuk contoh input citra dalam programming bisa kunjungi halaman saya di http://ketutrare.blogspot.co.id/2014/11/contoh-program-perhitungan-mse-dan-psnr.html

      Pada umumnya, MSE dan PSNR menghitung setiap channel warna sebagai perbandingan. Kalau RGB menggunakan 3 Channel, kalau grayscle / black and white menggunakan 1 channel.

      Dari pengalaman saya menggunakan MSE dan PSNR pada masing masing channel R, G, B (citra RGB) perhitungannya dipisahkan. Karena pada waktu itu saya sempat mencari nilai MSEd & PSNR dari masing2 channel dan kemudian merata-ratakannya untuk mendapatkan satu nilai MSE dan PSNR. Tetapi hasil tersebut tidak akurat, karena dosen saya mengatakan ketika kita menggunakan rumus MSE_R + MSE_G + MSE_B dibagi 3 nilainya sulit untuk dibuktikan. harus ada teori mean yang lebih untuk membandingkannya.

      Kalau dari pengalaman saya, saya membandingkan 3 nilai MSE dan PSNR dari masing masing channel R, G, dan B dari citra cover (induk) dan citra modifikasi.

      Delete
  8. Maaf mas, mau tanya, itu di PSNR kok nilai C max = 7 ya? Itu drmana ya mas? Terimakasih

    ReplyDelete
    Replies
    1. maaf baru saya bisa balas pesannya.
      terimakasih sudah berkunjung.

      Untuk nilai Cmax = 7 , itu diambil dari nilai tertinggi pada piksel citra yang dibandingkan.

      Delete
  9. Maaf mas, mau tanya, itu di PSNR kok nilai C max = 7 ya? Itu drmana ya mas? Terimakasih

    ReplyDelete
  10. This comment has been removed by the author.

    ReplyDelete
  11. Mohon maaf sebelumnya. Pada bagian contoh perhitungan MSE dan PSNR (pada citra asli dan citra akhir penyisipan pesan, tabel berisi 9 kotak itu dapat darimana isinya mas ?

    ReplyDelete
    Replies
    1. terimakasih sebelumnya mas @rizal, telah berkunjung. :)
      maaf baru sempat saya balas komentarnya.

      untuk tabel berisi 9 kotak itu adalah ilustrasi dari nilai piksel citra mas. Nilai dari piksel citra yang diolah akan digunakan untuk mencari nilai MSE dan PSNR.

      Delete
  12. This comment has been removed by the author.

    ReplyDelete
  13. maaf nih kalo agak aneh pertanyaannya, mau tau dong perbedaan dari snr dan psnr. kapan snr dan psnr dipakai. makasih ya mas

    ReplyDelete
    Replies
    1. maaf mas, baru sempet saya balas.
      untuk snr saya belum banyak membaca. sedangkan untuk psnr sudah saya tuliskan di artikel diatas.

      berikut ini mungkin sedikit referensi yang bisa membantu mas Arduina :
      http://dsp.stackexchange.com/questions/11326/difference-between-snr-and-psnr
      http://dsp.stackexchange.com/questions/11326/difference-between-snr-and-psnr
      http://stackoverflow.com/questions/19621915/difference-between-snr-and-psnr

      Delete
  14. blogmu jos topmargondang mas :D recomended :)

    ReplyDelete
    Replies
    1. terimakasih mas,
      terimakasih telah berkunjung.

      Delete
    2. Punya ku dibales dong maas, dijawaab. Jangan dikacangin :(

      Delete
  15. gus dados tyang mnta id line gus ? ada yang aq mw tnyain soal kodingan matlab gus,atau ini id line tyang gus, idline : gungsuryahadi . Tolong kontak gus nggih, suksma atas informasinya blognya ini :)

    ReplyDelete
    Replies
    1. ampura baru sempat tyang balas bli, niki id line tyang : wiraichigo

      suksma sampun mampir ring blog tyang.

      Delete
  16. Mas saya mau tanya, untuk mengetahui nilai dari piksel citra yang akan diolah dan digunakan untuk mencari nilai MSE dan PSNR itu gimana ya mas?

    jadi caranya kita tau matriks dari sebuah citra awal dan akhir itu gimana?

    terimakasih

    ReplyDelete
    Replies
    1. terimakasih telah berkunjung.

      untuk menhgitung resolusi citra bisa dengan cara :
      image = openimage;
      resolusi = size(image);

      kemudian untuk melihat nilai setiap piksel citra :
      misalnya pada citra rgb :
      image = openimage;
      piksel_r = image(:,:,1)
      piksel_g = image(:,:,2)
      piksel_b = image(:,:,3)

      semoga membantu.
      salam,
      ketutrare.blogspot.com

      Delete
  17. maaf mas, boleh nanya ngak?
    kalau boleh, ada ngak judul buku mengenai metode MSE

    ReplyDelete
    Replies
    1. terimakasih telah berkunjung.

      maaf baru sempat saya balas commentnya mas @rado.

      kalau tidak salah kemaren saya pakai buku judulnya "Pengolahan Citra Digital" . maaf saya lupa nama pengarangnya.
      selebihnya saya membaca dari jurnal internasional.

      Delete
  18. Thanks banget, akhirnya ada pencerahan mengenai cara perhitungan MSE dan PSNR pada citra,. :)

    ReplyDelete
  19. Buat kalian ada yang BARU nih sayangi GEDGET kalian yaaa:) banyak INFORMASI yang bakal kalian tau dengan lihat link-link ini langsung saja yuuu:)
    http://zapplerepair.com/perbedaan-antara-lcd-iPhone-original-sama-iPhone-lcd-ori-kaca-palsu.html

    ReplyDelete