piqe

Оценка качества изображений на основе восприятия (PIQE) без эталонных счетов качества изображений

Описание

пример

score = piqe(A) вычисляет score качества изображений без ссылки для изображения A использование основанного на восприятии оценщика качества изображения.

пример

[score,activityMask,noticeableArtifactsMask,noiseMask] = piqe(A) также возвращает пространственные маски качества, вычисленные из входа изображения.

Примеры

свернуть все

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

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

A = imread('lighthouse.png');
Anoise = imnoise(A,'Gaussian',0,0.05);
Ablur = imgaussfilt(A,2);

Вычислите счет PIQE для оригинального изображения и искаженных изображений.

score = piqe(A);
score_noise = piqe(Anoise);
score_blur = piqe(Ablur);

Отобразите изображения как монтаж с соответствующими счетами как часть заголовка рисунка.

figure
montage({A,Anoise,Ablur},'Size',[1 3])
title({['Original Image: PIQE score = ', num2str(score),'    |    Noisy Image: PIQE score = ', num2str(score_noise),'    ' ...
    '|    Blurred Image: PIQE score = ', num2str(score_blur)]}, 'FontSize',12)

Figure contains an axes. The axes with title Original Image: PIQE score = 24.8481 | Noisy Image: PIQE score = 72.3643 | Blurred Image: PIQE score = 85.7362 contains an object of type image.

Вычислите счет PIQE изображения, искаженного из-за блокирующих программных продуктов и Гауссова шума. Сгенерировать пространственные маски качества, которые указывают на высокие пространственно активные блоки, заметные блоки программных продуктов и шумовые блоки на изображении. Визуализируйте пространственные маски качества путем наложения их на искаженное изображение. Отображение изображения с масками и без них и счет PIQE для изображения.

Считайте искаженное изображение (искажение из-за JPEG2K) в рабочую область.

Adistorted = imread('DistortedImage.png');

Вычислите счет PIQE и пространственные маски качества.

[score,activityMask,noticeableArtifactsMask,noiseMask] = piqe(Adistorted);

Наложите пространственные маски качества на вход изображение.

mask_1 = labeloverlay(Adistorted,activityMask,'Colormap','winter','Transparency',0.25);
mask_2 = labeloverlay(Adistorted,noticeableArtifactsMask,'Colormap','autumn','Transparency',0.25);
mask_3 = labeloverlay(Adistorted,noiseMask,'Colormap','hot','Transparency',0.25);

Отобразите исходное искаженное изображение и искаженные изображения с наложенными пространственными масками качества в качестве монтажа.

figure
montage({Adistorted,mask_1,mask_2,mask_3},'Size',[1 4])
title('Distorted Image   |    Overlay activityMask    |    Overlay noticeableArtifactsMask    |    Overlay noiseMask','FontSize',12)

Figure contains an axes. The axes with title Distorted Image | Overlay activityMask | Overlay noticeableArtifactsMask | Overlay noiseMask contains an object of type image.

Отобразите счет PIQE для искаженного изображения.

fprintf('PIQE score for the distorted image is %0.4f.\n',score)
PIQE score for the distorted image is 65.1855.

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

свернуть все

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

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

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

свернуть все

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

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

Пространственная маска качества активных блоков, возвращенная как 2-D бинарное изображение размера m -by- n, где m и n являются размерностями входного изображения A. The activityMask состоит из высоких пространственно активных блоков во входном изображении. Высокие пространственно-активные блоки в вход изображении являются областями с большей пространственной изменчивостью из-за факторов, которые включают программные продукты сжатия и шум. Высоким пространственно активным блокам присваивается значение '1' в activityMask.

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

Пространственная маска качества заметных программных продуктов, возвращаемая как 2-D бинарное изображение размера m -by- n, где m и n являются размерностями входного изображения A. The noticeableArtifactsMask состоит из блоков в activityMask которые содержат блокирующие программные продукты (из-за сжатия) или внезапные искажения.

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

Пространственная маска качества Гауссова шума, возвращенная как 2-D бинарное изображение размера m -by- n, где m и n являются размерностями входного изображения A. The noiseMask состоит из блоков в activityMask которые содержат Гауссов шум.

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

Алгоритмы

PIQE вычисляет счет качества без ссылки для изображения посредством блочной оценки искажений, используя следующие шаги:

  1. Вычислите средний вычитаемый коэффициент контрастности (MSCN) для каждого пикселя изображения с помощью алгоритма, предложенного Н. Венкатанатом и другими [1].

  2. Разделите вход изображение на неперекрывающиеся блоки размера 16 на 16.

  3. Идентифицируйте высокие пространственно-активные блоки на основе отклонения коэффициентов MSCN.

  4. Сгенерируйте activityMask использование идентифицированных высоких пространственно активных блоков.

  5. В каждом блоке оценивайте искажение из-за блокирования программных продуктов и шума с помощью коэффициентов MSCN.

  6. Используйте пороговые критерии для классификации блоков как искаженных блоков с программными продуктами блокировки, искаженных блоков с Гауссовым шумом и неискаженных блоков.

  7. Сгенерируйте noticeableArtifactsMask из искаженных блоков с блокирующими программными продуктами и noiseMask из искаженных блоков с Гауссовым шумом.

  8. Вычислите оценку PIQE для входа изображения как среднее значение счетов в искаженных блоках.

  9. Шкала качества изображения, основанная на его счете PIQE, приведена в этой таблице. Шкала качества и соответствующая область значений счетов назначаются путем экспериментального анализа на наборе данных в LIVE Image Quality Assessment Database Release 2 [2].

Шкала качестваСчет Области значений
Отлично[0, 20]
Хорошо[21, 35]
Ясно[36, 50]
Бедный[51, 80]
Плохо[81, 100]

Ссылки

[1] Н. Венкатанатх, Д. Пранет, Б. М. Чандрасехар, С. С. Чаннаппайя и С. С. Медасани. «Оценка качества слепых изображений с использованием основанных на восприятии Функций», В трудах 21st Национальная конференция по коммуникациям (НКК). Piscataway, NJ: IEEE, 2015.

[2] Sheikh, H. R., Z. Wang, L. Cormack and A.C. Bovik, «LIVE Image Quality Assessment Релиз 2», https://live.ece.utexas.edu/research/quality.

Введенный в R2018b