Найдите шаблон в изображении
Поиск шаблона в изображении.
Создайте vision.TemplateMatcher
Объекту и установите его свойства.
Вызывайте объект с аргументами, как будто это функция.
Дополнительные сведения о работе системных объектов см. в разделе «Что такое системные объекты?».
возвращает объект шаблона matcher, tMatcher
= vision.TemplateMatchertMatcher
. Этот объект выполняет соответствие шаблона путем сдвига шаблона в однопиксельных шагах по всему внутреннему пространству изображения.
устанавливает свойства с помощью одной или нескольких пар "имя-значение". Заключайте каждое имя свойства в кавычки. Для примера, tMatcher
= vision.TemplateMatcher(Name,Value
)tMatcher = vision.TemplateMatcher('Metric','Sum of absolute differences')
возвращает [x
y] координаты местоположения наилучшего соответствия шаблона относительно верхнего левого угла изображения между матрицей изображения, Ilocation
= tMatcher(I
,T
), и матрица шаблона,
T
. Объект вычисляет местоположение путем сдвига шаблона в однопиксельные шаги по всей внутренней части изображения.
[
возвращает местоположение наилучшего соответствия шаблона location
,numberOfValues
,numValid
] = tMatcher(I
,T
,ROI
)location
метрические значения вокруг наилучшего совпадают numberOfValues
, и логический флаг numValid
. Это применяется, когда вы устанавливаете OutputValue
свойство к 'Best match location'
и BestMatchNeighborhoodOutputPort
свойство к true
.
[
также возвращает логический флаг, location
,numberOfValues
,numValid
,ROIvalid
] = tMatcher(I
,T
,ROI
)ROIvalid
чтобы указать, является ли ROI
находится вне границ входа изображения I
. Это применяется, когда вы устанавливаете OutputValue
свойство к 'Best match location'
, и BestMatchNeighborhoodOutputPort
, ROIInputPort
, и ROIValidityOutputPort
свойства для true
.
[
также возвращает логический флаг location
,ROIvalid
] = tMatcher(I
,T
,ROI
)ROIvalid
указывает, является ли заданный ROI
находится вне границ входа изображения I
. Это применяется, когда вы устанавливаете OutputValue
свойство к 'Best match location'
и оба ROIInputPort
и ROIValidityOutputPort
свойства для true
.
Чтобы использовать функцию объекта, задайте Системную object™ в качестве первого входного параметра. Например, чтобы освободить системные ресурсы системного объекта с именем obj
, используйте следующий синтаксис:
release(obj)
Типичное использование соответствия шаблона включает нахождение небольшой области в большем изображении. Область задается шаблоном изображением, которое может быть таким же большим, как и вход изображение, но которое обычно меньше, чем вход изображение.
Объект выводит координаты наилучшего соответствия относительно верхнего левого угла изображения.
Координаты [x y] местоположения соответствуют центру шаблона. При использовании шаблона с нечетным количеством пикселей объект использует центр шаблона. Когда вы используете шаблон с четным количеством пикселей, объект использует центрированный левый верхний пиксель для расположения. Следующая таблица показывает, как объект выводит расположение (LOC), нечетных и четных шаблонов:
Нечетное количество пикселей в шаблоне | Четное количество пикселей в шаблоне |
---|---|
insertMarker
| opticalFlowFarneback
| opticalFlowHS
| opticalFlowLK
| opticalFlowLKDoG