Hoe te kwantificeren beeldkwaliteit Metrics: Psnr en Ssim berekeningen in de praktijk
Het meten van beeldkwaliteit is essentieel op verschillende gebieden zoals beeldverwerking, compressie en transmissie. Twee gangbare metrieken zijn Peak Signal-to-Noise Ratio (PSNR) en Structural Liquidity Index (SSIM). In dit artikel wordt uitgelegd hoe deze metrieken in de praktijk berekend moeten worden.
PSNR begrijpen
PSNR meet het verschil tussen een gecomprimeerde of verwerkte afbeelding en de oorspronkelijke versie. Het wordt uitgedrukt in decibels (dB). Hogere PSNR waarden geven een betere kwaliteit aan.
Om PSNR te berekenen, bereken je eerst de gemiddelde vierkantsfout (MSE) tussen de twee afbeeldingen:
MSE = (1 / (breedte × hoogte)) × Σ (I origineel - I bewerkt)2
Vervolgens wordt PSNR berekend als:
PSNR = 10 × log10 (MAX I2 / MSE)
waarbij MAX I de maximaal mogelijke pixelwaarde van de afbeelding is (bijv. 255 voor 8-bits afbeeldingen).
SSIM begrijpen
SSIM evalueert de overeenkomst tussen twee afbeeldingen op basis van helderheid, contrast en structuur. Het geeft een waarde tussen -1 en 1, waarbij 1 identieke afbeeldingen aangeeft.
De SSIM-index wordt berekend met behulp van de formule:
SSIM = [(2μ xμ y + C1)(2σ xy + C2)] / [(μ x2 + μ y2 + C1)(σ x2 + σ y2 + C2)]
waarbij μ x en μ y het middel zijn van afbeeldingen x en y, σ x2 en σ y2 de varianties zijn, σ xy het covarium is, en C1, C2 constanten zijn om de verdeling te stabiliseren.
Praktische berekeningstips
Bij de uitvoering van deze berekeningen wordt meestal gebruik gemaakt van bibliotheken voor het bewerken van afbeeldingen zoals OpenCV of scikit-image in Python. Deze bibliotheken bieden functies om PSNR en SSIM direct te berekenen, waardoor het proces wordt vereenvoudigd.
- Zorg ervoor dat de afbeeldingen in dezelfde grootte en kleurruimte zijn.
- Gebruik floating-point weergaven voor nauwkeurigheid.
- Pas de juiste normalisatie toe indien nodig.
- Gebruik bestaande bibliotheekfuncties voor efficiëntie.