measureChromaticAberration

Измерьте хроматическую аберрацию в наклонных ребрах с помощью графика Imatest eSFR

Описание

пример

aberrationTable = measureChromaticAberration(chart) измеряет хроматическую аберрацию во всех наклонных видимых областях (ROIs) ребра Imatest® график eSFR [1].

aberrationTable = measureChromaticAberration(chart,Name,Value) измеряет хроматическую аберрацию дополнительными параметрами, чтобы задать подмножество ROI, чтобы измериться.

Примеры

свернуть все

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

I = imread('eSFRTestImage.jpg');

Создайте esfrChart объект, затем отобразите график с аннотациями ROI. 60 наклонных ROI ребра помечены зелеными числами.

chart = esfrChart(I);
displayChart(chart,'displayColorROIs',false,...
    'displayGrayROIs',false,'displayRegistrationPoints',false)

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

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

chTable = measureChromaticAberration(chart);
ROIIndex = 3;
chTable(3,:)
ans=1×5 table
    ROI    aberration    percentAberration     edgeProfile     normalizedEdgeProfile
    ___    __________    _________________    _____________    _____________________

     3       1.5261           0.11843         {336x4 table}        {336x4 table}    

Сохраните нормированный краевой профиль в отдельной переменной, edgeProfile, для ясности. Исследуйте нормированную интенсивность цвета первого и последнего пикселя edgeProfile.

edgeProfile = chTable.normalizedEdgeProfile{ROIIndex};
edgeProfile([1 end],:)
ans=2×4 table
    normalizedEdgeProfile_R    normalizedEdgeProfile_G    normalizedEdgeProfile_B    normalizedEdgeProfile_Y
    _______________________    _______________________    _______________________    _______________________

          -0.0014365                  0.0072757                  0.0089823                  0.0052007       
             0.98138                     0.9884                    0.98325                    0.98792       

Постройте нормированную интенсивность для ROI.

npix = length(edgeProfile.normalizedEdgeProfile_R);
plot(1:npix,edgeProfile.normalizedEdgeProfile_R,'r', ...
    1:npix,edgeProfile.normalizedEdgeProfile_G,'g', ...
    1:npix,edgeProfile.normalizedEdgeProfile_B,'b')
xlabel('Pixel')
ylabel('Normalized Intensity')
title(['ROI ' num2str(ROIIndex) ' with Aberration ' num2str(chTable.aberration(ROIIndex))])

Figure eSFR test chart contains an axes object. The axes object with title ROI 3 with Aberration 1.5261 contains 3 objects of type line.

Синий канал имеет более высокую интенсивность, чем красные и зеленые каналы сразу перед ребром и более низкой интенсивностью, чем красные и зеленые каналы сразу после ребра. Это различие в интенсивности способствует измеренному значению хроматической аберрации.

Измеренные значения aberration и percentAberration поскольку это ребро относительно мало. Визуальный осмотр изображения подтверждает, что стороны ребра не имеют сильного цветного оттенка.

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

свернуть все

eSFR строят диаграмму в виде esfrChart объект.

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

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

Пример: 'ROIIndex',2 измеряет хроматическую аберрацию только ROI 2.

Индексы ROI, чтобы включать в измерения в виде разделенной запятой пары, состоящей из 'ROIIndex' и скаляр или вектор из целых чисел в области значений [1, 60]. Индексы совпадают с числами ROI, отображенными displayChart.

Примечание

measureChromaticAberration использует пересечение ROI, заданных 'ROIIndex' и 'ROIOrientation'.

Пример: 29:32

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

Ориентация ROI в виде разделенной запятой пары, состоящей из 'ROIOrientation' и 'both', 'vertical', или 'horizontal'. measureChromaticAberration функция выполняет измерения только на ROI с заданной ориентацией.

Примечание

measureChromaticAberration использует пересечение ROI, заданных 'ROIIndex' и 'ROIOrientation'.

Пример: 'vertical'

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

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

свернуть все

Измерения хроматической аберрации, возвращенные как m-by-5 таблица. m является количеством произведенных ROI.

Эти пять столбцов представляют эти переменные:

ПеременнаяОписание
ROIИндекс произведенного ROI. Значение ROI целое число в области значений [1, 60].
aberration

Хроматическая аберрация, измеренная как область между максимумом и минимальными красными, зелеными, и синими профилями интенсивности ребра. Измеренная хроматическая аберрация указывает на перцепционную хроматическую аберрацию. aberration скаляр типа double.

percentAberrationАберрация, описанная как процент расстояния в пикселях между центром изображения и центром ROI.
edgeProfile

Профиль интенсивности каждого цветового канала через ребро в ROI. edgeProfile s-by-4 таблица, где s является количеством отсчетов через ребро. Эти четыре столбца представляют красный, зеленый, синий цвет, и значения яркости, усредненные вдоль ребра.

Яркость (Y) является линейной комбинацией красного (R), зеленый (G), и синий (B) каналы согласно:

Y = 0.213R + 0.715G + 0.072B

Примечание

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

normalizedEdgeProfile

Профиль интенсивности, нормированный между [0, 1] использование 5% фронтэнда и заключительная часть данных. normalizedEdgeProfile s-by-4 таблица с подобной структурой к edgeProfile.

Советы

  • Хроматическая аберрация лучше всего измеряется в наклонных ребрах, которые являются:

    • Примерно ортогональный к линии, соединяющей центр изображения и центр ROI

    • Самый дальний от центра изображения

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

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

Ссылки

Введенный в R2017b