fluxo tensor:: ops:: NãoMaxSuppressionV5
#include <image_ops.h>
Seleciona avidamente um subconjunto de caixas delimitadoras em ordem decrescente de pontuação.
Resumo
podando caixas que tenham alta sobreposição de interseção sobre união (IOU) com caixas previamente selecionadas. As caixas delimitadoras com pontuação menor que score_threshold
são removidas. As caixas delimitadoras são fornecidas como [y1, x1, y2, x2], onde (y1, x1) e (y2, x2) são as coordenadas de qualquer par diagonal de cantos de caixa e as coordenadas podem ser fornecidas como normalizadas (ou seja, situadas em o intervalo [0, 1]) ou absoluto. Observe que este algoritmo é independente de onde a origem está no sistema de coordenadas e, mais geralmente, é invariante às transformações ortogonais e translações do sistema de coordenadas; assim, a tradução ou reflexão do sistema de coordenadas resulta na seleção das mesmas caixas pelo algoritmo. A saída desta operação é um conjunto de inteiros indexados na coleção de entrada de caixas delimitadoras que representam as caixas selecionadas. As coordenadas da caixa delimitadora correspondentes aos índices selecionados podem então ser obtidas usando a tf.gather operation
. Por exemplo: selected_indices = tf.image.non_max_suppression_v2( boxes, score, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather(boxes, selected_indices) Esta operação também suporta um modo Soft-NMS (com ponderação gaussiana) (cf Bodla et al , https://arxiv.org/abs/1704.04503 ) onde as caixas reduzem a pontuação de outras caixas sobrepostas em vez de fazer com que sejam podadas diretamente. Para ativar este modo Soft-NMS, defina o parâmetro soft_nms_sigma
como maior que 0.
Argumentos:
- escopo: um objeto Escopo
- caixas: Um tensor flutuante 2-D de forma
[num_boxes, 4]
. - pontuações: um tensor flutuante 1-D de forma
[num_boxes]
representando uma única pontuação correspondente a cada caixa (cada linha de caixas). - max_output_size: Um tensor inteiro escalar que representa o número máximo de caixas a serem selecionadas por supressão não máxima.
- iou_threshold: Um tensor flutuante 0-D que representa o limite para decidir se as caixas se sobrepõem demais em relação ao IOU.
- score_threshold: um tensor flutuante 0-D que representa o limite para decidir quando remover caixas com base na pontuação.
- soft_nms_sigma: Um tensor flutuante 0-D representando o parâmetro sigma para Soft NMS; veja Bodla et al (cf https://arxiv.org/abs/1704.04503 ). Quando
soft_nms_sigma=0.0
(que é o padrão), voltamos ao NMS padrão (hard).
Atributos opcionais (veja Attrs
):
- pad_to_max_output_size: se verdadeiro, a saída
selected_indices
será preenchida para ter o comprimentomax_output_size
. O padrão é falso.
Retorna:
-
Output
selected_indices: Um tensor inteiro 1-D de forma[M]
representando os índices selecionados do tensor de caixas, ondeM <= max_output_size
. -
Output
select_scores: um tensor flutuante 1-D de formato[M]
representando as pontuações correspondentes para cada caixa selecionada, ondeM <= max_output_size
. As pontuações diferem apenas das pontuações de entrada correspondentes ao usar Soft NMS (ou seja, quandosoft_nms_sigma>0
) -
Output
valid_outputs: um tensor inteiro 0-D que representa o número de elementos válidos emselected_indices
, com os elementos válidos aparecendo primeiro.
Construtores e Destruidores | |
---|---|
NonMaxSuppressionV5 (const :: tensorflow::Scope & scope, :: tensorflow::Input boxes, :: tensorflow::Input scores, :: tensorflow::Input max_output_size, :: tensorflow::Input iou_threshold, :: tensorflow::Input score_threshold, :: tensorflow::Input soft_nms_sigma) | |
NonMaxSuppressionV5 (const :: tensorflow::Scope & scope, :: tensorflow::Input boxes, :: tensorflow::Input scores, :: tensorflow::Input max_output_size, :: tensorflow::Input iou_threshold, :: tensorflow::Input score_threshold, :: tensorflow::Input soft_nms_sigma, const NonMaxSuppressionV5::Attrs & attrs) |
Atributos públicos | |
---|---|
operation | |
selected_indices | |
selected_scores | |
valid_outputs |
Funções estáticas públicas | |
---|---|
PadToMaxOutputSize (bool x) |
Estruturas | |
---|---|
tensorflow:: ops:: NonMaxSuppressionV5:: Attrs | Configuradores de atributos opcionais para NonMaxSuppressionV5 . |
Atributos públicos
operação
Operation operation
índices_selecionados
::tensorflow::Output selected_indices
pontuações_selecionadas
::tensorflow::Output selected_scores
saídas válidas
::tensorflow::Output valid_outputs
Funções públicas
NãoMaxSuppressionV5
NonMaxSuppressionV5( const ::tensorflow::Scope & scope, ::tensorflow::Input boxes, ::tensorflow::Input scores, ::tensorflow::Input max_output_size, ::tensorflow::Input iou_threshold, ::tensorflow::Input score_threshold, ::tensorflow::Input soft_nms_sigma )
NãoMaxSuppressionV5
NonMaxSuppressionV5( const ::tensorflow::Scope & scope, ::tensorflow::Input boxes, ::tensorflow::Input scores, ::tensorflow::Input max_output_size, ::tensorflow::Input iou_threshold, ::tensorflow::Input score_threshold, ::tensorflow::Input soft_nms_sigma, const NonMaxSuppressionV5::Attrs & attrs )
Funções estáticas públicas
PadToMaxOutputSize
Attrs PadToMaxOutputSize( bool x )