Image-Quality-Assessment-By-Multiple-Models icon indicating copy to clipboard operation
Image-Quality-Assessment-By-Multiple-Models copied to clipboard

Using multiple models (CNN, LeNet-5, ResNet, VGG) to implement IQA and compare their performance

Image Quality Assessment by Mutiple Models

Prepare

  1. download the database you need and put it under ./data, e.g. ./data/LIVE/fastfading ...

    LIVE (release2 recommended): http://live.ece.utexas.edu/research/Quality/subjective.htm

    tid2008: http://www.ponomarenko.info/tid2008.htm

    tid2013: http://www.ponomarenko.info/tid2013.htm

  2. specify datainfo andim_dir in config.yaml

  3. make directory ‘logger’

Training

CUDA_VISIBLE_DEVICES=0 python main.py --model='resnet18' --database='LIVE'
  • Train/Val/Test split ratio in intra-database experiments can be set in config.yaml (default is 0.6/0.2/0.2).

  • Compare different models' performance:

Test Demo

Input an image and output its IQA score

run:

python test_demo.py --im_path=data/images/test_images/blur.jpg --model_file=models/resnet18-LIVE
  • --im_path: put your test image in the folder -- data/test_images

  • --model_file: choose your trained model, the pre-trained resnet18-LIVE model is given

Visualization

In the server (host:port):

tensorboard --logdir=tensorboard_logs --port=6006

e.g. put the dpai-11 file in logger/test_log, run:

tensorboard --logdir="./logger/test_log" --port=6006

In your PC:

ssh -p port -L 6006:localhost:6006 user@host
  • localhost: localhost's IP address
  • user: user's name in host
  • host: host's IP address

See the visualization in your PC:

Enter localhost:16006 in the browser

Application

See IQA Distortion Classification and Reconstruction System

Requirements

conda create -n reproducibleresearch pip python=3.6
source activate reproducibleresearch
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
source deactive

Note: You need to install the right CUDA version.