cv - Detecção de características com vários modelos de imagem (:cv_detect_templates)
Declaração
conjunto_de_resultados, imagem_visualizada = imagem:cv_detect_templates(conjunto_de_modelos_de_imagem_pequena_e_opcoes)
Parâmetros
-
conjunto_de_modelos_de_imagem_pequena_e_opcoes
Tabela opcional; cada elemento sequencial é um objeto de imagem e os campos nomeados são opçõesCampos das opções
{
should_visualize = false | true, -- campo opcional; produzir saída visualizada. O padrão é false
detector = 0 | 1 | 2, -- campo opcional; detector de características: 0: ORB, 1: SIFT, 2: SURF; padrão 0: ORB
score_thresh = number_value, -- campo opcional; limiar de pontuação de correspondência de características em escala de 100. O padrão é 90
}
Valores retornados
-
conjunto_de_resultados
Tabela com as informações das características dos modelos detectados na imagemEstrutura do conjunto de resultados detectados
{
{ -- resultado 1
{ -- vértice 1 do resultado 1
["y"] = number_value,
["x"] = number_value,
},
{ -- vértice 2 do resultado 1
["y"] = number_value,
["x"] = number_value,
},
{ -- vértice 3 do resultado 1
["y"] = number_value,
["x"] = number_value,
},
{ -- vértice 4 do resultado 1
["y"] = number_value,
["x"] = number_value,
},
confidence = number_value, -- confiança combinada de todos os pontos característicos do resultado 1
angle = number_value, -- ângulo de rotação
index = number_value, -- índice do modelo correspondente no conjunto de modelos de imagem pequena
},
{ -- resultado 2
{ -- vértice 1 do resultado 2
["y"] = number_value,
["x"] = number_value,
},
{ -- vértice 2 do resultado 2
["y"] = number_value,
["x"] = number_value,
},
{ -- vértice 3 do resultado 2
["y"] = number_value,
["x"] = number_value,
},
{ -- vértice 4 do resultado 2
["y"] = number_value,
["x"] = number_value,
},
confidence = number_value, -- confiança combinada de todos os pontos característicos do resultado 2
angle = number_value, -- ângulo de rotação
index = number_value, -- índice do modelo correspondente no conjunto de modelos de imagem pequena
},
...
} -
imagem_visualizada
Objeto de imagem; quandooptions.should_visualizeé true, este valor retornado é uma imagem visualizada
Descrição
Detecta na imagem as características dos modelos do conjunto de imagens pequenas; pode ser usado para detectar características após deformação ou rotação.
Cada modelo de imagem pequena terá apenas o melhor resultado com pontuação superior a score_thresh.
Compatível a partir da versão 20250625
Observação
score_thresh nos parâmetros é diferente de confidence no valor retornado.
score_thresh filtra os pontos característicos, enquanto confidence é a confiança combinada de todos os pontos característicos do modelo.
Exemplo
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, -- produzir saída visualizada; quando true, o segundo valor retornado é uma imagem
})
nLog(results) -- exibir as informações dos resultados detectados
dialog():add_image(visimg):show() -- exibir visualmente a imagem dos resultados detectados