IQA-PyTorch 项目介绍
简介
IQA-PyTorch 是一个使用纯 Python 和 PyTorch 构建的全面图像质量评估工具箱。该工具箱实现了多个主流的全参考(FR)和无参考(NR)指标,通过 GPU 加速,性能大多超过了传统的 Matlab 实现。项目设计旨在为研究人员和开发人员提供灵活高效的图像质量评估工具。
项目更新
- 2024年11月:新增
pyiqa.load_dataset
功能,简化常见数据集的加载。 - 2024年10月:更新
topiq_nr-face
指标,采用 GCFIQA 数据集进行训练。 - 2024年8月:新增多个指标,如
qalign_4bit
与qalign_8bit
,优化内存使用。 - 更多更新包括新指标的加入和现有指标的优化。
快速开始
安装
用户可以通过以下方法安装 IQA-PyTorch:
pip install pyiqa # 使用 pip 安装
pip install git+https://github.com/chaofengc/IQA-PyTorch.git # 安装最新的 GitHub 版本
基本使用
用户可以通过命令行界面简单地使用此工具包:
pyiqa -ls # 列出所有可用的指标
pyiqa [metric_name(s)] -t [image_path or dir] -r [image_path or dir] --device [cuda or cpu] --verbose # 使用默认设置进行测试
进阶功能
用户可以通过代码进行更高级的测试和训练。例如:
import pyiqa
device = torch.device("cuda") if torch.cuda.is_available() else torch.device("cpu")
iqa_metric = pyiqa.create_metric('lpips', device=device)
score_fr = iqa_metric('./ResultsCalibra/dist_dir/I03.bmp', './ResultsCalibra/ref_dir/I03.bmp')
用户还可以将指标作为损失函数使用,或加载自定义设置和权重以进行模型重训或微调。
数据集支持
IQA-PyTorch 提供了方便的方式来加载流行的图像质量评估数据集,这些数据集可以通过配置文件自动从 Huggingface 平台下载。
from pyiqa import get_dataset_info, load_dataset
dataset = load_dataset('koniq10k', data_root='./datasets')
基准性能评估
项目附带了多种评估协议,以确保结果的准确性和再现性。用户可以通过提供的脚本获取不同数据集上的性能基准。
参与和贡献
任何对该项目的贡献都是受欢迎的。感兴趣的开发者可以参考贡献指南进行参与。
许可证与引用
本项目遵循 NTU S-Lab 许可协议。用户在使用本项目时请注明来源,并在相关研究中引用相关文献。
联系
项目相关问题可以通过邮箱 chaofenghust@gmail.com
联系。
IQA-PyTorch 提供了丰富的工具和资源来支持图像质量评估的研究和开发,期待您的使用和反馈。