esfrChart

Ребро пространственная частотная характеристика (eSFR) Imatest тестирует график

Описание

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

esfrChart поддержка объектов Расширенные и Расширенные версии eSFR тестирует график. Эти тестовые графики основаны на тестовом графике стандарта ISO 12233:2014, и у них есть дополнительные визуальные функции, такие как цветные ROI и дополнительные наклонные ROI ребра. esfrChart объект также принимает версии Расширенных и Расширенных тестовых графиков 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) совершенствовал автоматическое обнаружение графика с помощью одних или нескольких аргументов name-value.

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

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

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

Если вы задаете полутоновое изображение, то 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 возразите оценивает стиль графика на основе номера и положения интересных мест. Этот аргумент устанавливает Свойство стиля.

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

Параметры камеры раньше компенсировали искажение в виде cameraParameters Объект (Computer Vision Toolbox). Использование этого аргумента требует Computer Vision Toolbox™.

Совершенствуйте положение наклонных ROI ребра в виде числового или логического 1 TRUE) или 0 ложь).

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 координаты верхнего левого угла ROI. Width и Height ширина и высота ROI, в пикселях. ROI имеет тип данных double.
ROIIntensityМассив значений интенсивности в ROI, в формате RGB. Массив имеет размерности Height- Width- 3. Тип данных ROIIntensity совпадает с типом данных Свойства изображения.

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 координаты верхнего левого угла ROI. Width и Height ширина и высота ROI, в пикселях. ROI имеет тип данных double.
ROIIntensityМассив значений интенсивности в ROI, в формате RGB. Массив имеет размерности Height- Width- 3. Тип данных ROIIntensity совпадает с типом данных Свойства изображения.

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

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

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

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

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

Примечание

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

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

Ссылочные значения цветных ROI в CIE 1976 L*a*b* цветовое пространство в виде 16 3 числовой матрицы. Эти три столбца содержат L**, и 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 object. The axes object 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 object. The axes object 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

Ссылки

[2] Используя часть 1 eSFR ISO. URL: https://www.imatest.com/docs/esfriso_instructions.

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

Введенный в R2017b