niqe


 

import os
import numpy as np
from PIL import Image
import pyiqa
import torch

# 输入包含图像的文件夹路径pyiqa
input_folder = '/media/sdnu/f9cc3556-f530-42b2-95df-64c823288321/home/sdnu/SXY/Data/unpair/LLFormer_DICM/'  # 替换为包含图像的文件夹路径

# 初始化一个列表来存储所有图像的 NIQE 分数
niqe_scores = []


device = 'cuda:0'

# 使用默认设置创建度量
iqa_metric = pyiqa.create_metric('niqe').to(device)


# 遍历输入文件夹中的所有图像
for filename in os.listdir(input_folder):
    if filename.endswith('.jpg') or filename.endswith('.png'):
        # 读取图像
        image = Image.open(os.path.join(input_folder, filename))

        # 将图像转换为 numpy 数组
        image_np = np.array(image)
        image_tensor = torch.from_numpy(image_np).permute(2,0,1).unsqueeze(0).float().div(255).to(device)


        # 计算图像的 NIQE 分数并添加到列表中
        niqe_score = iqa_metric(image_tensor)
        niqe_scores.append(niqe_score.item())

# 计算所有图像的平均 NIQE 分数
average_niqe = np.mean(niqe_scores)
print(f'Average NIQE score of images in the folder: {average_niqe}')

 

posted @ 2024-03-27 16:19  helloWorldhelloWorld  阅读(7)  评论(0编辑  收藏  举报