niqe

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

Описание

пример

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 38 images.
...
Completed 10 of 38 images.  Time: Calculating...
.....
Completed 24 of 38 images.  Time: 00:20 of 00:31
...
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.8728.

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

свернуть все

Введите изображение в виде 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