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