Sewar
Sewar is a python package for image quality assessment using different metrics. You can check documentation here.
Implemented metrics
- Mean Squared Error (MSE)
- Root Mean Squared Error (RMSE)
- Peak Signal-to-Noise Ratio (PSNR) [1]
- Structural Similarity Index (SSIM) [1]
- Universal Quality Image Index (UQI) [2]
- Multi-scale Structural Similarity Index (MS-SSIM) [3]
- Erreur Relative Globale Adimensionnelle de Synthèse (ERGAS) [4]
- Spatial Correlation Coefficient (SCC) [5]
- Relative Average Spectral Error (RASE) [6]
- Spectral Angle Mapper (SAM) [7]
- Spectral Distortion Index (D_lambda) [8]
- Spatial Distortion Index (D_S) [8]
- Quality with No Reference (QNR) [8]
- Visual Information Fidelity (VIF) [9]
- Block Sensitive - Peak Signal-to-Noise Ratio (PSNR-B) [10]
- Hypercomplex Image Quality Index (Q2n) [11]
Todo
- Add command-line support for No-reference metrics
Installation
Just as simple as
pip install sewar
Running tests
pip install pytest pytest-cov
pytest --cov=sewar
Example usage
A simple example to use UQI. All metric functions expect numpy arrays in H x W x C format (height x width x channels):
>>> import numpy as np
>>> from PIL import Image
>>> from sewar.full_ref import uqi
>>> img1 = np.asarray(Image.open("image1.tif"))
>>> img2 = np.asarray(Image.open("image2.tif"))
>>> uqi(img1, img2)
0.8847521481522062
Example usage for command line interface
sewar [metric] [GT path] [P path] (any extra parameters)
An example to use SSIM
foo@bar:~$ sewar ssim images/ground_truth.tif images/deformed.tif -ws 13
ssim : 0.8947009811410856
Available metrics list
mse, rmse, psnr, rmse_sw, uqi, ssim, ergas, scc, rase, sam, msssim, vifp, psnrb, q2n
Contributors
Special thanks to @sachinpuranik99 and @sunwj.
References
[1] "Image quality assessment: from error visibility to structural similarity." 2004)
[2] "A universal image quality index." (2002)
[3] "Multiscale structural similarity for image quality assessment." (2003)
[4] "Quality of high resolution synthesised images: Is there a simple criterion?." (2000)
[5] "A wavelet transform method to merge Landsat TM and SPOT panchromatic data." (1998)
[6] "Fusion of multispectral and panchromatic images using improved IHS and PCA mergers based on wavelet decomposition." (2004)
[7] "Discrimination among semi-arid landscape endmembers using the spectral angle mapper (SAM) algorithm." (1992)
[8] "Multispectral and panchromatic data fusion assessment without reference." (2008)
[9] "Image information and visual quality." (2006)
[10] "Quality Assessment of Deblocked Images" (2011)
[11] "Hypercomplex quality assessment of multi/hyperspectral images." (2009)
Metadata
Release files for sewar 0.4.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sewar-0.4.8.tar.gz | 14.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sewar-0.4.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 28.2 kB
Release files / sewar-0.4.8.tar.gz
| Download URL | sewar-0.4.8.tar.gz |
|---|---|
| Size | 14.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
02b48ef198543c7736c9026893347e63690791507bda4fd85bed14baa9e0c249
|
|
BLAKE2b-256 checksum How to use checksums |
fb1f1ff7e5b66fce63f20dbd456f4754032a6dc99c6bd9671a6a6e47f4835ce0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.5
|
Release files / sewar-0.4.8-py3-none-any.whl
| Download URL | sewar-0.4.8-py3-none-any.whl |
|---|---|
| Size | 13.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
94d09e14139d51553c6717e4d313de6a33acf8d400ff9c325f22d7feb69c78b5
|
|
BLAKE2b-256 checksum How to use checksums |
83b4da3386557ce0c7ec848043f0a725339e98112e5128b431fc80e45787c785
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.5
|