cv — обнаружение признаков по нескольким шаблонам изображения (:cv_detect_templates)
Объявление
результаты, визуализированное_изображение = изображение:cv_detect_templates(шаблоны_изображений_и_параметры)
Параметры
-
шаблоны_изображений_и_параметры
Необязательный параметр, таблица; каждый упорядоченный элемент таблицы — объект изображения, именованные поля задают параметрыПоля параметров
{
should_visualize = false | true, -- Необязательное поле: визуализировать ли результат, по умолчанию false
detector = 0 | 1 | 2, -- Необязательное поле: детектор признаков, 0: ORB, 1: SIFT, 2: SURF; по умолчанию 0: ORB
score_thresh = number_value, -- Необязательное поле: порог оценки сопоставления признаков по шкале 100, по умолчанию 90
}
Возвращаемое значение
-
результаты
Таблица, сведения о признаках шаблонов, обнаруженных на изображенииСтруктура набора результатов
{
{ -- Результат 1
{ -- Вершина 1 результата 1
["y"] = number_value,
["x"] = number_value,
},
{ -- Вершина 2 результата 1
["y"] = number_value,
["x"] = number_value,
},
{ -- Вершина 3 результата 1
["y"] = number_value,
["x"] = number_value,
},
{ -- Вершина 4 результата 1
["y"] = number_value,
["x"] = number_value,
},
confidence = number_value, -- Совокупная уверенность всех признаков результата 1
angle = number_value, -- Угол поворота
index = number_value, -- Индекс совпавшего шаблона в наборе небольших шаблонов
},
{ -- Результат 2
{ -- Вершина 1 результата 2
["y"] = number_value,
["x"] = number_value,
},
{ -- Вершина 2 результата 2
["y"] = number_value,
["x"] = number_value,
},
{ -- Вершина 3 результата 2
["y"] = number_value,
["x"] = number_value,
},
{ -- Вершина 4 результата 2
["y"] = number_value,
["x"] = number_value,
},
confidence = number_value, -- Совокупная уверенность всех признаков результата 2
angle = number_value, -- Угол поворота
index = number_value, -- Индекс совпавшего шаблона в наборе небольших шаблонов
},
...
} -
визуализированное_изображение
Объект изображения. Еслиoptions.should_visualizeравноtrue, это визуализированный результат — объект изображения
Описание
Обнаруживает на изображении признаки изображений из набора небольших шаблонов; это позволяет находить признаки после деформации или поворота.
Каждый небольшой шаблон сопоставляется только с лучшим результатом, оценка которого превышает score_thresh.
Поддерживается начиная с версии 20250625
Внимание
Параметр score_thresh отличается от возвращаемого значения confidence.
score_thresh используется для фильтрации признаков, а confidence — это совокупная уверенность всех признаков шаблона.
Пример
local cv = require("image.cv")
local img1 = image.load_file(XXT_SCRIPTS_PATH..'/1.png')
local img2 = image.load_file(XXT_SCRIPTS_PATH..'/2.png')
local results, visimg = screen.image():cv_detect_templates({
img1, img2;
score_thresh = 90,
detector = 1, -- SIFT
should_visualize = true, -- При true второе возвращаемое значение является изображением
})
nLog(results) -- Вывести сведения о результатах обнаружения
dialog():add_image(visimg):show() -- Визуально просмотреть изображение результатов обнаружения