2D Корреляция

Вычислите 2D взаимную корреляцию двух входных матриц

Библиотека

Статистика

visionstatistics

Описание

2D блок Correlation вычисляет двумерную взаимную корреляцию двух входных матриц. Примите, что матрица А имеет размерности (Ma, Na), и матрица B имеет размерности (Mb, Nb). Когда блок вычисляет полный выходной размер, уравнение для двумерной дискретной взаимной корреляции

C(i,j)=m=0(Ma1)n=0(Na1)A(m,n)conj(B(m+i,n+j))

где 0i<Ma+Mb1 и 0j<Na+Nb1.

ПортВвод/выводПоддерживаемые типы данныхПоддерживаемые комплексные числа

I1

Вектор или матрица значений интенсивности

  • Плавающая точка двойной точности

  • Плавающая точка с одинарной точностью

  • Фиксированная точка

  • 8-, 16-, 32-битное целое число со знаком

  • 8-, 16-, 32-битное беззнаковое целое

Да

I2

Скаляр, вектор или матрица значений интенсивности или скаляра, вектора или матрицы, которая представляет одну плоскость видеопотока RGB

То же самое как порт I1

Да

Вывод

Свертка входных матриц

То же самое как порт I1

Да

Если тип данных входа является плавающей точкой, вывод блока является совпадающим типом данных.

Размерности вывода диктуют параметр Output size и размеры входных параметров в портах I1 и I2. Например, примите, что вход в порте I1 имеет размерности (Ma, Na), и вход в порте I2 имеет размерности (Mb, Nb). Если для параметра Output size вы выбираете Full, вывод является полной двумерной взаимной корреляцией с размерностями (Ma +Mb-1, Na +Nb-1). Если для параметра Output size вы выбираете Same as input port I1, вывод является центральной частью взаимной корреляции с теми же размерностями как вход в порте I1. Если для параметра Output size вы выбираете Valid, вывод является только теми частями взаимной корреляции, которые вычисляются без дополненных нулем ребер любого входа. Этот вывод имеет размерности (Ma-Mb+1, Na-Nb+1). Однако, если all(size(I1)<size(I2)), блочные ошибки.

Если вы устанавливаете флажок Normalized output, вывод блока разделен на sqrt(sum(dot(I1p,I1p))*sum(dot(I2,I2))), где I1p является фрагментом матрицы I1, которая выравнивается с матрицей I2. Смотрите Пример 2 для получения дополнительной информации.

Примечание

Когда вы устанавливаете флажок Normalized output, вход блока не может быть фиксированной точкой.

Типы данных с фиксированной точкой

Следующая схема показывает типы данных, используемые в 2D блоке Correlation для сигналов фиксированной точки.

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

Вывод множителя находится в типе выходных данных продукта, если по крайней мере одни из входных параметров ко множителю действительны. Если оба из входных параметров ко множителю являются комплексными, результат умножения находится в типе данных аккумулятора. Для получения дополнительной информации на комплексном выполняемом умножении, обратитесь к Типам данных Умножения.

Примеры

Пример 1

Предположим, что I1, первая входная матрица, имеет размерности (4,3). I2, вторая входная матрица, имеет размерности (2,2). Если для параметра Output size вы выбираете Full, блок использует следующие уравнения, чтобы определить количество строк и столбцов выходной матрицы:

Получившаяся матрица

Если для параметра Output size вы выбираете Same as input port I1, вывод является центральной частью Cfull с теми же размерностями как вход в порте I1, (4,3). Однако начиная с 4 3 матрица не может быть извлечена от точного центра, блок оставляет больше строк и столбцов на главной и левой стороне матрицы и выходных параметров:

Если для параметра Output size вы выбираете Valid, блок использует следующие уравнения, чтобы определить количество строк и столбцов выходной матрицы:

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

Пример 2

Во взаимной корреляции значение выходного элемента вычисляется как взвешенная сумма соседних элементов.

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

I1 = [17  24   1   8  15
     23   5   7  14  16
      4   6  13  20  22
     10  12  19  21   3
     11  18  25   2   9]

Вторая входная матрица также представляет изображение и задана как

I2 = [8   1   6
     3   5   7
     4   9   2]

Следующие данные показывают, как вычислить (2,4) выходной элемент (основанная на нуле индексация) использующий эти шаги:

  1. Двигайте центральный элемент I2 так, чтобы нашелся сверху (1,3) элемент I1.

  2. Умножьте каждый вес в I2 элементом I1 внизу.

  3. Суммируйте отдельные продукты от шага 2.

(2,4) выходной элемент от взаимной корреляции 18+81+156+73+145+167+134+209+222=585.

Вычисление (2,4) Вывод взаимной корреляции

Нормированной взаимной корреляцией (2,4) выходной элемент является 585/sqrt(sum(dot(I1p,I1p))*sum(dot(I2,I2))) = 0.8070, где I1p = [1 8 15; 7 14 16; 13 20 22].

Параметры

Output size

Этот параметр управляет размером выходного скаляра, вектора или матрицы, произведенной в результате взаимной корреляции между двумя входными параметрами. Если вы выбираете Full, вывод имеет размерности (Ma +Mb-1, Na +Nb-1). Если вы выбираете Same as input port I1, вывод имеет те же размерности как вход в порте I1. Если вы выбираете Valid, выводите, имеет размерности (Ma-Mb+1, Na-Nb+1).

Normalized output

Если вы устанавливаете этот флажок, вывод блока нормирован.

Rounding mode

Выберите Rounding Modes для операций фиксированной точки.

Overflow mode

Выберите режим Overflow для операций фиксированной точки.

Product output

Задайте тип выходных данных продукта. Смотрите Типы данных с фиксированной точкой и Типы данных Умножения для рисунков, изображающих использование типа выходных данных продукта в этом блоке:

  • Когда вы выбираете Same as first input, эти характеристики совпадают с теми из первого входа к блоку.

  • Когда вы выбираете Binary point scaling, можно ввести размер слова и дробную длину продукта вывод в битах.

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова в битах и наклоне продукта вывод. Смещение всех сигналов в программном обеспечении Computer Vision Toolbox™ 0.

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

Знак входа I1Знак входа I2Знак продукта Вывод
без знакабез знакабез знака
без знакасо знакомсо знаком
со знакомбез знакасо знаком
со знакомсо знакомсо знаком

Accumulator

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

  • Когда вы выбираете Same as product output, эти характеристики совпадают с теми из продукта вывод.

  • Когда вы выбираете Same as first input, эти характеристики совпадают с теми из первого входа к блоку.

  • Когда вы выбираете Binary point scaling, можно ввести размер слова и дробную длину аккумулятора в битах.

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова в битах и наклоне аккумулятора. Смещение всех сигналов в программном обеспечении Computer Vision Toolbox 0.

Output

Выберите, как задать размер слова и дробная продолжительность вывода блока:

  • Когда вы выбираете Same as first input, эти характеристики совпадают с теми из первого входа к блоку.

  • Когда вы выбираете Binary point scaling, можно ввести размер слова и дробная продолжительность вывода в битах.

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова в битах и наклоне вывода. Смещение всех сигналов в программном обеспечении Computer Vision Toolbox 0.

Lock data type settings against change by the fixed-point tools

Выберите этот параметр, чтобы препятствовать тому, чтобы Fixed-Point Tool заменили типы данных, которые вы задаете на маске блока. Для получения дополнительной информации смотрите fxptdlg, страницу с описанием на Fixed-Point Tool в документации Simulink®.

Смотрите также

2D Автокорреляция

Computer Vision Toolbox

2D Гистограмма

Computer Vision Toolbox

2D Среднее значение

Computer Vision Toolbox

2D Медиана

Computer Vision Toolbox

2D стандартное отклонение

Computer Vision Toolbox

2D Отклонение

Computer Vision Toolbox

2D Максимум

Computer Vision Toolbox

2D Минимум

Computer Vision Toolbox

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Представлено до R2006a