brisque

Слепой/бесфазный оценщик пространственного качества изображений (BRISQUE) без эталонного счета качества изображений

Описание

пример

score = brisque(A) вычисляет счет качества изображений без ссылки для изображения A использование средства оценки пространственного качества слепых/бесфазных изображений (BRISQUE). brisque сравнить A к модели по умолчанию, вычисленной из изображений природных сцен с аналогичными искажениями. Меньший счет указывает на лучшее качество восприятия.

пример

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

Примеры

свернуть все

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

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

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

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

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

Figure contains an axes. The axes with title Original Image | Noisy Image | Blurry Image contains an object of type image.

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

brisqueI = brisque(I);
fprintf('BRISQUE score for original image is %0.4f.\n',brisqueI)
BRISQUE score for original image is 20.6586.
brisqueInoise = brisque(Inoise);
fprintf('BRISQUE score for noisy image is %0.4f.\n',brisqueInoise)
BRISQUE score for noisy image is 52.6074.
brisqueIblur = brisque(Iblur);
fprintf('BRISQUE score for blurry image is %0.4f.\n',brisqueIblur)
BRISQUE score for blurry image is 47.7553.

Оригинальное неискаженное изображение имеет лучшее перцептивное качество и, следовательно, самый низкий счет BRISQUE.

Обучите пользовательскую модель BRISQUE из набора функций и соответствующих счетов человеческого мнения. Используйте пользовательскую модель, чтобы вычислить счет BRISQUE для изображения естественной сцены.

Сохраните изображения из datastore изображений. Все эти изображения имеют программные продукты сжатия, следующие из сжатия JPEG.

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

Укажите счет мнения для каждого изображения. Следующие значения дифференциального среднего счета (DMOS) предназначены только для иллюстративных целей. Они не являются реальными значениями DMOS, полученными в ходе экспериментов.

opinionScores = 100*rand(1,size(imds.Files,1));

Создайте пользовательскую модель функций с учетом качества, используя изображение datastore и счетов мнений. Поскольку счета случайны, значения свойств будут варьироваться.

model = fitbrisque(imds,opinionScores')
Extracting features from 38 images.
......
Completed 18 of 38 images.  Time: Calculating...
..Training support vector regressor...

Done.
model = 
  brisqueModel with properties:

             Alpha: [35x1 double]
              Bias: 58.1331
    SupportVectors: [35x36 double]
            Kernel: 'gaussian'
             Scale: 0.2766

Считайте изображение естественной сцены, которое имеет тот же тип искажения, что и обучающие изображения. Отобразите изображение.

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

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

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

brisqueI = brisque(I,model);
fprintf('BRISQUE score for the image is %0.4f.\n',brisqueI)
BRISQUE score for the image is 72.7539.

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

свернуть все

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

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

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

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

свернуть все

Нет-эталонный счет качества изображения, возвращаемое как неотрицательный скаляр. Счет BRISQUE обычно находится в области значений [0, 100]. Более низкие значения score отражают лучшее качество восприятия изображения A относителен вход model.

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

Алгоритмы

brisque предсказывает счет BRISQUE с помощью модели поддержки векторной регрессии (SVR), обученной в базе данных изображений с соответствующими значениями дифференциального среднего счета мнений (DMOS). База данных содержит изображения с известными искажениями, такими как программные продукты сжатия, размытие и шум, и она содержит первозданные версии искаженных изображений. Изображение, которое будет оценено, должно иметь по крайней мере одно из искажений, для которых была обучена модель.

Ссылки

[1] Миттал, А., А. К. Маврти, и А. К. Бовик. «Оценка качества изображений без ссылок в пространственной области». Транзакции IEEE по обработке изображений. Том 21, № 12, декабрь 2012, стр. 4695-4708.

[2] Миттал, А., А. К. Маврти, и А. К. Бовик. «Бесфазное Изображение пространственный Engine оценки качества». Презентация на 45-й Асиломарской конференции по сигналам, системам и компьютерам, Pacific Grove, CA, ноябрь 2011 года.

См. также

Функции

Объекты

Введенный в R2017b