This is the official Python Tensorflow implementations of our ICASSP 2021 paper "CAPTURING BANDING IN IMAGES: DATABASE CONSTRUCTION AND OBJECTIVE ASSESSMENT".
The Deep Banding Index Paper
introduces first of its kind dataset, and an Objective Assesment of Banding quantification in HD images with Deep Banding Index, which aims to capture the annoyance caused to end users (QoE) as they percieve media featuring Banding Artifacts.
Banding, colour banding, or false contours is a common visual artifact appearing in images and videos, often in large regions of low textures and slow gradients such as sky. When the granularity of bit-depth or display intensity levels mismatches with the visual system’s perception of the smooth transition of color and luminance presented in the image content,the discontinuity positions in smooth image gradients are transformed into perceivable, wide, discrete bands. Banding significantly deteriorates the perceptual quality-of-experience(QoE) of end users. A visual example is shown in the image below where banding artifacts are clearly visible in the sky.
This work is completed as a research project at University of Waterloo, Under guidance of Dr.Zhou Wang and Jatin Sapra MEng.
The following results are obtained using the method described in Deep Banding Index Paper
Please cite our paper if you find our model or the Banding Patches Dataset, HD Images Dataset with Banded and NonBanded region Information dataset useful.
A. Kapoor, J. Sapra and Z. Wang, "Capturing banding in images: database construction and objective assessment," IEEE International Conference on Acoustics, Speech and Signal Processing, Jun. 2021.
Data Generation From Pristine Videos
Patches Generation from HD images
for understanding semi automatic labelling procedure, Also the image below illustrates the patches generation from HD images.The code has been tested on Ubuntu 18.04
and on Windows 10
with Python 3.8
and tensorflow 2.1
tensorflow-gpu=2.1
, statistics
, pandas
, numpy
, python 3.8
and OpenCV
pretrained_model
The Source
folder contains the source files used for generating semi-automatic labelled dataset, CNN_classifier training files and prediction file which can be used for generating Deep Banding index for any image.
LabelImg
.
XML_to_CSV
for the code used to convert XML files region infomation to CSV files.Bannding Patches Dataset
.
Training Script
for CNN_classifier Training for Banded vs NonBanded classification tasks.DBI paper
.
Deep Banding Index Prediction Script
for using DBI for out of sample image.Deep Banding Map Generation
explains the working of Deep Banding Index by generating Deep Banding Maps for HD images.refer MATLAB Scripts
Use this folder structure to calculate Deep Banding Index for your images, follow these steps to get Deep Banding Score for HD banded Images:
Demo
folder.Image Path Folder
DBI Predict File
, make sure you have the following dependencies on your device
Tensorflow 2.1, numpy, pandas, Open-CV
], and you have CNN_Banded Patch classifer
in the same path as presented in Demo folder.CSV Result File
to see the results associated with the HD images present in the Image Path Folder
.