exponenta event banner

esfrChart

Тестовый график пространственной частотной характеристики (eSFR)

Описание

Один esfrChart объект хранит положения и измерения интересующих областей (ROI) тестовых диаграмм пространственно-частотной характеристики (eSFR) края Imatest ® [1], [2].

esfrChart объект поддерживает расширенную и расширенную версии тестовой диаграммы eSFR. Эти тестовые диаграммы основаны на стандартной тестовой диаграмме ISO 12233:2014 и имеют дополнительные визуальные возможности, такие как цветные ROI и дополнительные наклонные ROI краев. esfrChart объект также принимает версии тестовых диаграмм Enhanced и Extended eSFR с дополнительными фоновыми клиньями.

Создание

Описание

chart = esfrChart(A) создает esfrChart объект из изображения тестовой диаграммы, A. esfrChart объект выполняет автоматическое определение положения и стиля диаграммы.

пример

chart = esfrChart(A,'Sensitivity',s) создает esfrChart объект с использованием чувствительности s во время автоматического обнаружения диаграммы.

пример

chart = esfrChart(A,'RegistrationPoints',p) создает esfrChart путем указания положения, p, пунктов регистрации.

chart = esfrChart(___,Name,Value) уточняет автоматическое обнаружение диаграммы с использованием одного или нескольких аргументов «имя-значение».

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

развернуть все

Тестовое изображение диаграммы, указанное как цифровой массив m-by-n-by-3, представляющий изображение RGB, или числовая матрица m-by-n, представляющая изображение в градациях серого. Этот аргумент задает свойство Image.

Если задано изображение в градациях серого, то esfrChart объект моделирует цветное изображение путем тиражирования значений интенсивности пикселей по трем цветовым каналам. В этом случае измерения цвета, возвращаемые measureColor функции бессмысленны.

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

Чувствительность обнаружения диаграммы, заданная как числовой скаляр в диапазоне [0, 1]. Если задано высокое значение чувствительности, то esfrChart объект обнаруживает больше интересующих точек для регистрации изображения тестовой диаграммы.

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

Положение точек регистрации, используемых для ориентации изображения, задается как числовая матрица 4 на 2. Четыре строки соответствуют верхним левым, верхним правым, нижним правым и нижним левым точкам регистрации соответственно. Два столбца представляют координаты пикселей в [x, y] формат. Этот аргумент задает свойство RegistrationPoints.

Аргументы пары «имя-значение»

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

Пример: 'Style','Extended'

Стиль тестовой схемы, указанный как 'Enhanced', 'Extended', 'WedgeEnhanced', или 'WedgeExtended'. Если стиль диаграммы не указан, то по умолчанию esfrChart объект оценивает стиль диаграммы на основе количества и положения интересующих точек. Этот аргумент задает свойство Style.

Типы данных: char | string

Параметры камеры, используемые для компенсации искажения, указанные как cameraParameters (Панель инструментов компьютерного зрения). Для использования этого аргумента требуется программа Computer Vision Toolbox™.

Уточнение положения наклонных краевых ROI, указанных как числовые или логические 1 (true) или 0 (false).

esfrChart объект сначала выполняет начальную оценку позиций ROI относительно точек регистрации, RegistrationPoints. При указании 'RefinePoints'как trueзатем объект корректирует положения ROI наклонного края, используя локализованную информацию о содержимом изображения. Когда false, объект не уточняет положения ROI наклонной кромки.

Свойства

развернуть все

Тестовый образ диаграммы, заданный как числовой массив m-by-n-by-3.

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

Значения положения и интенсивности наклонных кромок, заданные как вектор структур 60 на 1. Каждый элемент в векторе соответствует одному ROI и содержит следующие поля:

ОбластьОписание
ROIВектор 1 на 4, задающий пространственную протяженность ROI. Вектор имеет вид [X Y Width Height]. X и Y - координаты верхнего левого угла окупаемости инвестиций. Width и Height - ширина и высота ROI в пикселях. ROI имеет тип данных double.
ROIIntensityМассив значений интенсивности в пределах ROI в формате RGB. Массив имеет размеры Heightоколо-Width-к-3. Тип данных ROIIntensity соответствует типу данных свойства Image.

esfrChart объект исключает некоторые наклонные границы ROI в 'Enhanced' и 'WedgeEnhanced' диаграммы тестирования стилей.

  • Когда стиль диаграммы 'Enhanced', esfrChart объект исключает четыре ROI с индексами 1, 19, 41 и 59.

  • Когда стиль диаграммы 'Enhanced', esfrChart объект исключает двенадцать ROI с индексами 1, 2, 4, 18, 19, 20, 41, 42, 44, 58, 59 и 60.

Для исключенных ROI значение ROI поле имеет значение [NaN NaN NaN NaN] и значение ROIIntensity поле является пустым массивом, [].

Значения положения и интенсивности серых фрагментов, заданные как вектор структур 20 на 1. Каждый элемент в векторе соответствует одному ROI и содержит следующие поля:

ОбластьОписание
ROIВектор 1 на 4, задающий пространственную протяженность ROI. Вектор имеет вид [X Y Width Height]. X и Y - координаты верхнего левого угла окупаемости инвестиций. Width и Height - ширина и высота ROI в пикселях. ROI имеет тип данных double.
ROIIntensityМассив значений интенсивности в пределах ROI в формате RGB. Массив имеет размеры Heightоколо-Width-к-3. Тип данных ROIIntensity соответствует типу данных свойства Image.

Значения положения и интенсивности цветовых фрагментов, заданные как вектор структур 16 на 1. Каждый элемент в векторе соответствует одному ROI и содержит следующие поля:

ОбластьОписание
ROIВектор 1 на 4, задающий пространственную протяженность ROI. Вектор имеет вид [X Y Width Height]. X и Y - координаты верхнего левого угла окупаемости инвестиций. Width и Height - ширина и высота ROI в пикселях. ROI имеет тип данных double.
ROIIntensityМассив значений интенсивности в пределах ROI в формате RGB. Массив имеет размеры Heightоколо-Width-к-3. Тип данных ROIIntensity соответствует типу данных свойства Image.

Положение точек регистрации, используемых для ориентации изображения, задается как числовая матрица 4 на 2. Четыре строки соответствуют верхним левым, верхним правым, нижним правым и нижним левым точкам регистрации соответственно. Два столбца представляют координаты пикселей в формате [x, y].

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

Эталонные значения ROI серого цвета в цветовом пространстве CIE 1976 L * a * b *, указанные как числовая матрица 20 на 3. Три столбца содержат значения L *, a * и b * серых фрагментов соответственно. Строки содержат эталонные интенсивности 20 серых ROI в том же последовательном порядке.

Примечание

esfrChart объект включает значения CIE 1976 L * a * b * по умолчанию для серых значений ROI. Однако фактические ссылочные значения могут изменяться в зависимости от нескольких факторов, таких как качество печати.

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

Эталонные значения цветовых ROI в цветовом пространстве CIE 1976 L * a * b *, указанные как числовая матрица 16 на 3. Три столбца содержат значения L *, a * и b * цветовых фрагментов соответственно. Строки содержат ссылочные интенсивности 16 цветовых ROI в том же последовательном порядке.

Примечание

esfrChart объект включает значения по умолчанию CIE 1976 L * a * b * для цветовых значений ROI. Однако фактические ссылочные значения могут изменяться в зависимости от нескольких факторов, таких как качество печати. Точные эталонные значения цвета приводят к более точным измерениям воспроизведения цвета.

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

Стиль тестовой схемы, указанный как 'Enhanced', 'Extended', 'WedgeEnhanced', или 'WedgeExtended'.

Функции объекта

measureSharpnessИзмерение пространственной частотной характеристики по диаграмме Imatest eSFR
measureChromaticAberrationИзмерение хроматической аберрации на наклонных краях с помощью диаграммы Imatest eSFR
measureNoiseИзмерение шума по схеме Imatest eSFR
measureColorИзмерение цветопередачи с помощью тестовой диаграммы
measureIlluminantИзмерение освещенности сцены с помощью тестовой диаграммы
displayChartОтображение тестовой диаграммы с наложенными областями, представляющими интерес

Примеры

свернуть все

Считывание изображения диаграммы eSFR в рабочую область. Отображение изображения.

I = imread('eSFRTestImage.jpg');
figure
imshow(I)
title('Captured Image of eSFR Chart')
text(size(I,2),size(I,1)+15, ...
    ['Chart courtesy of Imatest',char(174)],'FontSize',10,'HorizontalAlignment','right');

Figure contains an axes. The axes with title Captured Image of eSFR Chart contains 2 objects of type image, text.

Линеаризация изображения. Отображаемая диаграмма будет отображаться темнее, так как изображение больше не имеет гамма-коррекции.

I_lin = rgb2lin(I);

Создание esfrChart с использованием линеаризованного изображения диаграммы. Укажите чувствительность, esfrChart используется для определения точек для регистрации изображения диаграммы.

chart = esfrChart(I_lin,'Sensitivity',0.6)
chart = 
  esfrChart with properties:

                 Image: [1836x3084x3 uint8]
       SlantedEdgeROIs: [60x1 struct]
              GrayROIs: [20x1 struct]
             ColorROIs: [16x1 struct]
    RegistrationPoints: [4x2 double]
                 Style: 'Extended'
      ReferenceGrayLab: [20x3 double]
     ReferenceColorLab: [16x3 double]

Просмотрите импортированную диаграмму eSFR. Области интересов (ROI) выделяются и маркируются.

displayChart(chart)

Figure eSFR test chart contains an axes. The axes contains 97 objects of type image, text.

Диаграмма импортирована правильно. Все 60 наклонных краевых ROI (помеченных зелеными номерами) видны и центрированы на соответствующих краях. 20 серых ROI патча (помеченных красным) и 16 цветовых ROI патча (помеченных белым) видны и содержатся в пределах границы каждого патча.

Создание esfrChart путем указания координат четырех точек регистрации. Пункты регистрации расположены в центре черно-белых клетчатых кругов.

Считывание изображения диаграммы eSFR в рабочую область.

I = imread('eSFRTestImage.jpg');

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

figure
imshow(I)
[X, Y] = ginput(4);

Щелкните точки регистрации в следующем порядке: вверху-слева, вверху-справа, внизу-справа, внизу-слева.

Создание esfrChart , указывая четыре точки регистрации. Просмотрите импортированную диаграмму eSFR. Области, представляющие интерес, выделяются и маркируются. Точки регистрации отображаются красным цветом.

chart = esfrChart(I,'RegistrationPoints',[X, Y]);
displayChart(chart);

Совет

  • Для получения точных и достоверных результатов необходимо получить изображение карты испытаний в соответствии со стандартными спецификациями, изложенными в стандарте ISO и изготовителем [2], [3]. В качестве простого указания выровняйте диаграмму горизонтально на светлом фоне. Охватите диаграммой более 90% поля зрения, но убедитесь, что верхний и нижний края диаграммы по-прежнему видны. Для надежных измерений установите минимальную ширину изображения не менее 500 пикселей.

  • Изображение тестовой диаграммы расширенного eSFR можно получить при полном соотношении сторон 16:9 или при соотношении сторон 3:2 или 4:3, как указано на диаграмме.

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

Вопросы совместимости

развернуть все

В R2021a изменилось поведение

Ссылки

[1] Имитация. «Эсфр.» https://www.imatest.com/mathworks/esfr/.

[2] Использование eSFR ISO Часть 1. URL: https://www.imatest.com/docs/esfriso_instructions.

[3] ISO 12233:2014. «Фотография - Электронная визуализация неподвижных изображений - Разрешение и пространственные частотные характеристики». Международная организация по стандартизации; ISO/TC 42 Фотография. URL: https://www.iso.org/standard/59419.html.

Представлен в R2017b