Оценка геометрического преобразования из совпадающих пар точек
Панель инструментов компьютерного зрения/геометрические преобразования

Блок «Оценка геометрического преобразования» используется для поиска матрицы преобразования, отображающей наибольшее количество пар точек между двумя изображениями. Пара точек относится к точке во входном изображении и связанной с ней точке на изображении, созданном с помощью матрицы преобразования. Для исключения отклонений и вычисления матрицы преобразования можно использовать алгоритм RANdom SAmple Consolude (RANSAC) или алгоритм наименьших медианных квадратов. Можно также использовать все входные точки для вычисления матрицы преобразования.
Pts1 - Координаты точекКоординаты точек, заданные как M-by-2 матрица координат точек [x y], где M представляет количество точек.
Блок выводит данные того же типа для матрицы преобразования, что и Pts1 и Pts2 точки изображения.
Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32
Pts2 - Координаты точекКоординаты точек, заданные как M-by-2 матрица координат точек [x y], где M представляет количество точек.
Блок выводит данные того же типа для матрицы преобразования, что и Pts1 и Pts2 точки изображения.
Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32
Num - Количество действительных точекКоличество допустимых точек для поиска в Pts1 и Pts2, указанных как скаляр. Этот порт появляется при включении параметра Allow variable-size signal input.
Типы данных: int8 | int16 | int32 | uint8 | uint16 | uint32
TForm - ТрансформацияПреобразование, возвращаемое в виде матрицы 3 на 2 или 3 на 3. Блок выводит данные того же типа для матрицы преобразования, что и Pts1 и Pts2 точки изображения.
Если Pts1 и Pts2 являются одиночными или двойными, то выходная матрица преобразования также будет иметь один или двойной тип данных.
Если изображения Pts1 и Pts2 являются встроенными целыми числами, доступна опция установки типа данных матрицы преобразования: Single или Double.
Типы данных: single | double
Inlier - Используемые точкиТочки, используемые для расчета TForm, возвращенный как вектор M-by-1.
Порт Inlier появляется при включении логического сигнала Output, указывающего, какие пары точек являются параметрами inliers.
Типы данных: Boolean
Transformation type - Тип преобразованияAffine (по умолчанию) | Nonreflective similarity | ProjectiveУкажите тип преобразования как Nonreflective similarity, Affine, или Projective. Более подробное обсуждение см. в разделе Преобразования.
Можно задать дополнительные параметры в зависимости от типа преобразования:
Для Projective преобразование, вы можете указать скалярный алгебраический порог расстояния для определения inliers.
Для Affine или Projective можно задать порог расстояния для определения входов в пикселях.
Find and exclude outliers - Поиск и исключение отклоненийПозволяет находить и исключать отклонения из входных точек и использовать только внутренние точки для вычисления матрицы преобразования. При отключении этого параметра все входные точки используются для вычисления матрицы преобразования.
Method - Метод поиска отклоненийRANdom SAmple Consensus (RANSAC) (по умолчанию) | Least Median of SquaresВыберите метод для поиска отклонений: RANdom SAmple Consensus (RANSAC) или Least Median of Squares Для получения более подробной информации см. RANSAC и Алгоритмы наименьших медианных квадратов.
Этот параметр появляется при включении флажка Найти и исключить отклонения.
Algebraic distance threshold for determining inliers - Алгебраический порог расстояния для определения входовУкажите скалярное пороговое значение для определения входов. Порог управляет верхним пределом, используемым для поиска алгебраического расстояния в алгоритме RANSAC.
Этот параметр появляется при установке для параметра Method значения Random Sample Consensus (RANSAC) и параметр типа преобразования для Projective.
Distance threshold for determining inliers (in pixels) - Порог расстояния для определения входов (в пикселях)1.5 (по умолчанию) | скалярУкажите верхнее предельное расстояние, на которое точка может отличаться от местоположения проекции соответствующей точки.
Этот параметр появляется при установке для параметра Method значения Random Sample Consensus (RANSAC) и вы устанавливаете значение параметра Transformation type равным Nonreflective similarity или Affine.
Determine number of random samplings using - Определение количества случайных выборок с помощьюSpecified value (по умолчанию) | Desired confidenceВыбрать Specified value для ввода положительного целого значения числа случайных выборок. Выбрать Desired confidence для задания количества случайных выборок в процентах и максимального числа.
Этот параметр появляется при установке флажка Найти и исключить отклонения (Find and exclude outliers) и установке значения параметра Метод (Method) равным Random Sample Consensus (RANSAC).
Number of random samplings - Количество случайных выборок500 (по умолчанию) | скалярУкажите количество случайных выборок для выполняемого алгоритма.
Этот параметр появляется при установке значения параметра Определить число случайных выборок с помощью параметра Specified value.
Desired confidence (in %) - Желаемая уверенность (в%)99 (по умолчанию) | скалярУкажите требуемый процент достоверности, введя число между 0 и 100. Значение представляет вероятность алгоритма найти наибольшую группу точек, которые могут быть отображены матрицей преобразования.
Этот параметр появляется, если для параметра Определить число случайных выборок (Define number of random samplings using parameter) задано значение Desired confidence.
Maximum number of random samplings - Максимальное количество случайных выборок1000 (по умолчанию) | целое числоУкажите целое число для максимального количества случайных выборок.
Этот параметр появляется при установке для параметра Method значения Random Sample Consensus (RANSAC) и установить значение параметра Определить число случайных выборок, используя параметр Desired confidence.
Stop sampling earlier when a specified percentage of point pairs are determined to be inlier - Остановить отбор пробВключите этот параметр, чтобы остановить случайную выборку, если процент входных точек был найден как inliers.
Этот параметр появляется при установке для параметра Method значения Random Sample Consensus (RANSAC).
Perform additional iterative refinement of the transformation matrix - Выполнить дополнительную итеративную доработкуУкажите, следует ли выполнять уточнение матрицы преобразования.
Этот параметр появляется при установке флажка Найти и исключить отклонения.
Output Boolean signal indicating which point pairs are inliers - Выходной логический сигналЭтот параметр используется для вывода пар внутренних точек, которые использовались для вычисления матрицы преобразования.
Этот параметр появляется при установке флажка Найти и исключить отклонения (Find and exclude outliers).
Блок не будет использовать этот параметр со подписанными или двойными точками типа данных.
When Pts1 and Pts2 are built-in integers, set transformation matrix date type to - Установить тип даты матрицы преобразованияSingle (по умолчанию) | DoubleУкажите тип данных матрицы преобразования как Single или Double когда входные точки являются встроенными целыми числами.
Блок не будет использовать этот параметр со подписанными или двойными точками типа данных.
Allow variable-sized signal input - Разрешить ввод сигнала переменного размераВключите этот параметр, чтобы разрешить ввод сигнала переменного размера.
Алгоритм RANSAC основан на пороговом значении расстояния. Пара точек, (изображение a, Pts1) и pib (изображение b, Pts2) является внутренней только тогда, когда расстояние pib и проекцией piabased на матрице преобразования находится в пределах заданного порога. В алгоритме RANSAC используется следующая метрика расстояния:
), t)
Алгоритм наименьших медианных квадратов предполагает, что не менее 50% пар точек могут быть отображены матрицей преобразования. Алгоритм не должен явно указывать порог расстояния. Вместо этого используется медианное расстояние между всеми парами входных точек. Метрика расстояния, используемая в алгоритме наименьшей медианы квадратов, выглядит следующим образом:
pNumb, (pNa: H))
Для обоих уравнений:
- точка на изображении a (Pts1)
- точка на изображении b (Pts2)
H) - проекция точки на изображение a на основе матрицы преобразования H
pjb) - расстояние между двумя парами точек на изображении b
- пороговое значение
Число точек
Чем меньше метрика расстояния, тем лучше матрица преобразования и, следовательно, чем точнее проекционное изображение.
Блок «Оценка геометрического преобразования» поддерживает Nonreflective similarity, Affine, и Projective типы преобразования, которые описаны в этом разделе.
Нерефлексивное преобразование подобия поддерживает перемещение, вращение и изотропное масштабирование. Он имеет четыре степени свободы и требует две пары точек.

Матрица преобразования: h2h2h1h3h4]
Проекция точки на His: xy1] H
аффинное преобразование поддерживает неизотропное масштабирование в дополнение ко всем преобразованиям, которые поддерживает нерефлексивное преобразование подобия. Он имеет шесть степеней свободы, которые можно определить по трем парам неколлинеарных точек.
![]()
Матрица преобразования: h1h4h2h5h3h6]
Проекция точки на His: xy1] H
Проективное преобразование поддерживает наклон в дополнение ко всем преобразованиям, поддерживаемым аффинным преобразованием.
![]()
Матрица преобразования: h ]
Проекция точки His, представляемая однородными координатами: [xy1] H
Для вычислительной простоты и эффективности этот блок использует алгебраическое расстояние. Алгебраическое расстояние для пары точек, T на изображении a и ] на изображении b, согласно преобразованию определяется следующим образом:
Для проективного преобразования:
(v ^ a − где [u ^ av ^ aw ^ a] = [xaya1] H
Для нерефлективного подобия или аффинного преобразования: ( y ^ a − y ^ b) 2) 12,
где xaya1] H
Блок выполняет сравнение и повторяет его К раз между последовательными матрицами преобразования. При выборе опции Найти и исключить отклонения становятся доступными алгоритмы RANSAC и Наименьшие медианные квадраты (LMS). Эти алгоритмы вычисляют и сравнивают метрику расстояния. Матрица преобразования, которая создает метрику меньшего расстояния, становится новой матрицей преобразования, которую использует следующее сравнение. Окончательная матрица преобразования решается, если:
K выполняется случайная выборка
Алгоритм RANSAC, когда может быть отображено достаточное количество пар входящих точек (динамическое обновление K)
Алгоритм оценки геометрического преобразования (Estimate Geometric Transformation) выполняет следующие действия.
Матрица H преобразования инициализируется в нули
Набор count = 0 (Случайная выборка).
В то время как count < K , где K - общее количество выполняемых случайных выборок, выполняющих:
Увеличьте число; count = count + 1.
Случайным образом выберите пару точек из изображений a и b, (2 пары для нерефлективного подобия, 3 пары для аффинного или 4 пары для проективного).
Вычислите матрицу преобразования по выбранным точкам.
Если Hhas метрика расстояния меньше метрики , то заменить на .
(Необязательно только для алгоритма RANSAC)
Обновление K динамически.
Выход из цикла выборки, если достаточное количество пар точек может быть отображено .
Используйте все пары точек на изображениях a и b, которые могут быть отображены с помощью , чтобы вычислить уточненную матрицу преобразования
Итеративное уточнение (необязательно для алгоритмов RANSAC и LMS)
Укажите все пары точек, которые могут быть отображены как inliers.
Используйте пары внутренних точек для вычисления матрицы преобразования .
Если метрика расстояния Hhas меньше метрики , то замените на , в противном случае выйдите из цикла.
Количество случайных выборок может быть задано пользователем для алгоритмов RANSAC и наименьших медианных квадратов. Можно использовать дополнительную опцию с алгоритмом RANSAC, который вычисляет это число на основе требования точности. Точность определяется требуемым уровнем достоверности.
Вычисленное число случайных выборок, K, используемых с алгоритмом RANSAC, является следующим:
(1 − qs)
где
p - вероятность независимых пар точек, принадлежащих к самой большой группе, которые могут быть отображены тем же самым преобразованием. Вероятность динамически вычисляется на основе количества найденных входов по отношению к общему количеству точек. По мере увеличения вероятности количество выборок, K, уменьшается.
q - вероятность нахождения самой большой группы, которая может быть отображена тем же самым преобразованием.
s равно значению 2, 3 или 4 для нерефлективного подобия, аффинного и проективного преобразования соответственно.
Матрица преобразования, вычисленная по всем входным линиям, может использоваться для вычисления уточненной матрицы преобразования. Уточненная матрица преобразования затем используется для поиска нового набора вложенных элементов. Эта процедура может повторяться до тех пор, пока матрица преобразования не может быть дополнительно улучшена. Это итеративное уточнение является необязательным.
[1] Р. Хартли и А. Зизерман, «Геометрия множественного вида в компьютерном зрении», второе издание, Cambridge University Press, 2003
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.