Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

图像质量评估工具

基于 OpenCV 的客观图像质量评估程序,支持多种画质指标分析和对比。

功能特性

  • 多维度画质评估:清晰度、噪点、对比度、动态范围、色彩、曝光
  • 噪点感知清晰度:改进算法避免将噪点误判为细节
  • 多格式支持:JPG、PNG、HEIF/HIF等
  • 批量分析:自动分析目录下所有图像并排序
  • 详细对比:输出画质差异分析和排名

安装

使用 uv(推荐)

uv venv
source .venv/bin/activate  # Linux/Mac
# 或 .venv\Scripts\activate  # Windows
uv pip install -e .

使用 pip

pip install -e .

使用方法

基本用法

# 分析当前目录下的所有图片
python analyze_quality.py

# 分析指定目录
python analyze_quality.py /path/to/images

输出示例

╔══════════════════════════════════════════════════════════════════════╗
║  图片: DSC_4387.JPG                                      ║
╠══════════════════════════════════════════════════════════════════════╣
║  【清晰度指标】                                                       ║
║    • 拉普拉斯清晰度:     343.81                                 ║
║    • 清晰度:             163.91                                 ║
║  【细节与噪点】                                                       ║
║    • 噪点水平:         8.895478                               ║
║    • 估计信噪比:          17.50 dB                              ║
╠══════════════════════════════════════════════════════════════════════╣
║  ★ 综合评分:    61.07/100                                      ║
╚══════════════════════════════════════════════════════════════════════╝

评估指标说明

指标 说明 理想值
拉普拉斯清晰度 边缘锐度检测 越高越好
清晰度 噪点感知的真实清晰度 越高越好
噪点水平 估计噪声标准差 越低越好
信噪比(SNR) 信号与噪声比值 >20dB优秀
动态范围 亮度层次丰富度 接近255

算法原理

清晰度计算

  1. 拉普拉斯方差:检测二阶边缘变化
  2. Sobel梯度:计算一阶梯度强度
  3. 清晰度计算:使用噪点感知算法,自动校正噪点干扰

噪点估计

使用拉普拉斯响应的中值绝对偏差(MAD)估计噪声水平:

noise_σ = MAD / 0.6745

项目结构

.
├── analyze_quality.py   # 主程序
├── pyproject.toml       # 项目配置
├── README.md           # 本文件
└── .gitignore

依赖项

  • Python >= 3.10
  • OpenCV >= 4.8.0
  • Pillow >= 10.0.0
  • pillow-heif >= 1.3.0
  • NumPy >= 1.24.0
  • rawpy >= 0.18.0

License

MIT License

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages