Hvordan beregne PSNR

Posted on
Forfatter: Monica Porter
Opprettelsesdato: 22 Mars 2021
Oppdater Dato: 3 Juli 2024
Anonim
Machine Learning with Python! Mean Squared Error (MSE)
Video: Machine Learning with Python! Mean Squared Error (MSE)

Topp signal / støy-forholdet (PSNR) er forholdet mellom signalets maksimale effekt og kraften til signalstøyen. Ingeniører bruker ofte PSNR for å måle kvaliteten på rekonstruerte bilder som er komprimert. Hvert bildeelement (piksel) har en fargeverdi som kan endres når et bilde komprimeres og deretter ikke komprimeres. Signaler kan ha et bredt dynamisk område, så PSNR er vanligvis uttrykt i desibel, som er en logaritmisk skala.

    Definer bel og desibel. Belgen er matematisk definert som LB = log10 (P1 / P0) der P1 og P0 er to kvantiteter som er i de samme måleenhetene. Desibelen er 0,1 bel, så desibelverdien LdB er LdB = 10 log10 (P1 / P0).

    Definer den gjennomsnittlige kvadratiske feilen (MSE) mellom to monokromatiske bilder, der det ene bildet anses å være en tilnærming til det andre. MSE kan beskrives som gjennomsnittet av kvadratet av forskjellene i pikselverdiene mellom de tilsvarende pikslene til de to bildene.

    Uttrykk MSE matematisk fra beskrivelsen i trinn 1. Vi har derfor MSE = 1 / mn der jeg og K er matriser som representerer bildene som blir sammenlignet. De to summeringene utføres for dimensjonene "i " og "j. " Derfor representerer jeg (i, j) verdien til piksel (i, j) i bilde I.

    Bestem den maksimale mulige verdien for pikslene i bilde I. Dette kan typisk gis som (2 ^ n) - 1 der n er antall biter som representerer pikslen. Dermed vil en 8-biters piksel ha en maksimal verdi på (2 ^ 8) - 1 = 255. La den maksimale verdien for piksler i bildet jeg være MAX.

    Uttrykk PSNR i desibel. Fra trinn 1 har vi desibelverdien LdB som LdB = 10 log10 (P1 / P0). La nå P1 = MAX ^ 2 og P0 = MSE. Vi har da PSNR = 10 log10 (MAX ^ 2 / MSE) = 10 log10 (MAX / (MSE) ^ (1/2)) ^ 2 = 20 log10 (MAX / (MSE) ^ (1/2)). Derfor PSNR = 20 log10 (MAX / (MSE) ^ (1/2)).