fitniqe

Подбирайте пользовательскую модель для счета качества изображения NIQE

Описание

пример

model = fitniqe(imds) создает модель Naturalness Image Quality Evaluator (NIQE) из ссылочного datastore изображений imds.

пример

model = fitniqe(imds,Name,Value) создает модель 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 14 of 38 images.  Time: Calculating...
.....
Done.

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

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

Figure contains an axes object. The axes object contains an object of type image.

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

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

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

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

Создайте пользовательскую модель функций NSS с помощью datastore изображений. Задайте размер блока и используйте порог резкости по умолчанию.

model = fitniqe(imds,'BlockSize',[48 96])
Extracting features from 38 images.
...
Completed 10 of 38 images.  Time: Calculating...
....
Completed 18 of 38 images.  Time: 00:21 of 00:48
....
Done.
model = 
  niqeModel with properties:

                  Mean: [1.9291 0.5854 0.6735 0.0667 0.0517 0.0889 ... ]
            Covariance: [36x36 double]
             BlockSize: [48 96]
    SharpnessThreshold: 0

Считайте естественное изображение в рабочую область. Отобразите изображение.

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

Figure contains an axes object. The axes object contains an object of type image.

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

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

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

свернуть все

Ссылочный datastore изображений в виде ImageDatastore объект. Datastore должен содержать 2D полутоновые или 2D изображения RGB типа данных single'double'int16uint8, или uint16.

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: model = fitniqe(imds,'BlockSize',[48 36]) подбирает модель NIQE, использующую 48 36 пиксельные блоки.

Размер блока раньше делил изображения в виде разделенной запятой пары, состоящей из 'BlockSize' и вектор-строка с 2 элементами из положительных ровных целых чисел. Блоки не перекрываются. Естественные статистические данные сцены, которые вычисляются от блоков, задают выход model.

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

Порог резкости в виде разделенной запятой пары, состоящей из 'SharpnessThreshold' и числовой скаляр в области значений [0, 1]. Порог резкости, s, средства управления, которые отображают блоки, используются для расчета модель. fitniqe вычисляет модель с помощью всех блоков, которые имеют резкость больше, чем s времена максимальная резкость среди всех блоков.

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

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

свернуть все

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

Советы

  • Пользовательский набор данных задал в datastore изображений imds должен состоять из изображений, которые являются перцепционно нетронутыми испытуемым людям. Однако определение pristine зависит от приложения. Например, нетронутый набор изображений микроскопии имеет различный набор качественных критериев, чем изображения созданий или наружных сцен. Когда обучение пользовательская модель NIQE, используйте изображения с варьировавшимся содержимым изображения и с потенциально различными наборами качественных критериев.

Ссылки

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

Введенный в R2017b