https://github.com/bukalapak/pybrisque
A python implementation of BRISQUE Image Quality Assessment
https://github.com/bukalapak/pybrisque
brisque computer-vision image-processing image-quality-assessment python
Last synced: 3 months ago
JSON representation
A python implementation of BRISQUE Image Quality Assessment
- Host: GitHub
- URL: https://github.com/bukalapak/pybrisque
- Owner: bukalapak
- License: gpl-3.0
- Created: 2018-08-01T13:01:03.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2022-05-13T18:26:58.000Z (over 3 years ago)
- Last Synced: 2025-06-10T09:19:12.206Z (4 months ago)
- Topics: brisque, computer-vision, image-processing, image-quality-assessment, python
- Language: Python
- Homepage:
- Size: 684 KB
- Stars: 239
- Watchers: 286
- Forks: 48
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PyBRISQUE
An implementation of BRISQUE (Blind/Referenceless Image Spatial Quality
Evaluator) in Python from the paper: ["No-Reference Image Quality Assessment
in the Spatial Domain"](https://ieeexplore.ieee.org/document/6272356/).## Installation
LibSVM is required. On ubuntu or other debian-based system, you can install ```libsvm-dev``` package from apt as follows:```apt-get install libsvm-dev```
The package is in PyPI so you can install it simply by this command:
```pip install --process-dependency-links pybrisque```
## Usage
Initialize once:
```
brisq = BRISQUE()
```
and get the BRISQUE feature or score many times:
```
brisq.get_feature('/path')
brisq.get_score('/image_path')
```## Limitations
This implementation is heavily adopted from the original Matlab
implementation in [here](https://github.com/dsoellinger/blind_image_quality_toolbox/tree/master/%2Bbrisque). There is one catch though, the bicubic interpolation when resizing image in
Matlab and OpenCV is a bit different as explained in [here](https://stackoverflow.com/questions/26823140/imresize-trying-to-understand-the-bicubic-interpolation). For now, it uses ```nearest``` interpolation
which gives the most similar output with the original implementation.Comparing with Matlab original implementation on reference images of TID 2008:

And the absolute differences' stat is as follows:
```
{'min': 0.17222238726479588,
'max': 16.544924728934404,
'mean': 3.9994322498322754,
'std': 3.0715344507521416}
```