niqe

Средство анализа качества изображения естественности (NIQE) счет качества изображения без ссылок

Синтаксис

score = niqe(A)
score = niqe(A,model)

Описание

пример

score = niqe(A) вычисляет счет качества изображения без ссылок к изображению A с помощью Средства анализа качества изображения естественности (NIQE). niqe сравнивает A с моделью по умолчанию, вычисленной из изображений естественных сцен. Меньший счет указывает на лучшее перцепционное качество.

пример

score = niqe(A,model) вычисляет счет качества изображения с помощью пользовательской модели.

Примеры

свернуть все

Вычислите счет NIQE к естественному изображению и его искаженным версиям с помощью модели по умолчанию.

Считайте изображение в рабочую область. Создайте копии изображения с шумом и размывающимися искажениями.

I = imread('lighthouse.png');
Inoise = imnoise(I,'salt & pepper',0.02);
Iblur = imgaussfilt(I,2);

Отобразите изображения.

figure
montage({I,Inoise,Iblur},'Size',[1 3])
title('Original Image | Noisy Image | Blurry Image')

Вычислите счет NIQE к каждому изображению с помощью модели по умолчанию. Отобразите счет.

niqeI = niqe(I);
fprintf('NIQE score for original image is %0.4f.\n',niqeI)
NIQE score for original image is 2.5455.
niqeInoise = niqe(Inoise);
fprintf('NIQE score for noisy image is %0.4f.\n',niqeInoise)
NIQE score for noisy image is 10.8770.
niqeIblur = niqe(Iblur);
fprintf('NIQE score for blurry image is %0.4f.\n',niqeIblur)
NIQE score for blurry image is 5.2661.

Исходное неискаженное изображение имеет лучшее перцепционное качество и поэтому самый низкий счет NIQE.

Загрузите набор естественных изображений в datastore изображений. Эти изображения поставляются в Image Processing Toolbox™ в директории, названной 'imdata'.

setDir = fullfile(toolboxdir('images'),'imdata');
imds = imageDatastore(setDir,'FileExtensions',{'.jpg'});

Обучите пользовательскую модель NIQE с помощью datastore изображений.

model = fitniqe(imds);
Extracting features from 37 images.
.....
Completed 12 of 37 images.  Time: Calculating...
.....
Completed 31 of 37 images.  Time: 00:21 of 00:25
.
Done.

Считайте изображение естественной сцены. Отобразите изображение.

I = imread('car1.jpg');
imshow(I)

Вычислите счет NIQE к изображению с помощью пользовательской модели. Отобразите счет.

niqeI = niqe(I,model);
fprintf('NIQE score for the image is %0.4f.\n',niqeI)
NIQE score for the image is 1.8601.

Входные параметры

свернуть все

Введите изображение, заданное как 2D шкала полутонов или изображение RGB.

Типы данных: single | double | int16 | uint8 | uint16

Пользовательская модель функций изображений, заданных как объект niqeModel. model выведен от естественной статистики сцены.

Выходные аргументы

свернуть все

Счет качества изображения без ссылок, возвращенный как неотрицательный скаляр. Нижние значения score отражают лучшее перцепционное качество изображения A относительно входа model.

Типы данных: double

Алгоритмы

NIQE измеряет расстояние между основанными на NSS функциями, вычисленными от изображения, A к функциям, полученным из базы данных изображений раньше, обучал модель. Функции моделируются как многомерные Распределения Гаусса.

Ссылки

[1] Миттал, A., Р. Сундарарэджэн и А. К. Бовик. "Делая Абсолютно Слепое Качество изображения Анализатором". Буквы Обработки сигналов IEEE. Издание 22, Номер 3, март 2013, стр 209–212.

Смотрите также

Функции

Объекты

Введенный в R2017b