git clone https://github.com/xialeiliu/RankIQA.git
cd RankIQA
- Requirements for
caffe
andpycaffe
(see: Caffe installation instructions). Caffe must be built with support for Python layers!
# In your Makefile.config, make sure to have this line uncommented
WITH_PYTHON_LAYER := 1
- Requirements for GPU (Titan X (~11G of memory) is needed to train VGG).
The details can be found in data
Download the pre-trained VGG-16 ImageNet model and put it in the folder models.
To train the RankIQA models on tid2013 dataset:
./src/RankIQA/tid2013/train_vgg.sh
To train the RankIQA models on LIVE dataset:
./src/RankIQA/live/train_vgg.sh
To train the RankIQA+FT models on tid2013 dataset:
./src/FT/tid2013/train_vgg.sh
To train the RankIQA+FT models on LIVE dataset:
./src/FT/live/train_live.sh
python src/eval/Rank_eval_each_tid2013.py # evaluation for each distortions in tid2013
python src/eval/Rank_eval_all_tid2013.py # evaluation for all distortions in tid2013
python src/eval/FT_eval_each_tid2013.py # evaluation for each distortions in tid2013
python src/eval/FT_eval_all_tid2013.py # evaluation for all distortions in tid2013
python src/eval/Rank_eval_all_live.py # evaluation for all distortions in LIVE
python src/eval/FT_eval_all_live.py # evaluation for all distortions in LIVE
- data_layer includes the Python functions to read the input data for different datasets.
- MyLossLayer contains the Python functions of our efficient back-propagation method for different datasets.
- tools provides the Python functions to calculate the evaluation matrix during training.
- eval provides the Python functions to evaluate the trained models.