Avidamente seleciona um subconjunto de caixas delimitadoras em ordem decrescente de pontuação,
Essa operação executa non_max_suppression nas entradas por lote, em todas as classes. Poda as caixas que têm alta sobreposição de interseção sobre união (IOU) com caixas selecionadas anteriormente. 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 é agnóstico para onde a origem está no sistema de coordenadas. Observe também que este algoritmo é invariante a transformações ortogonais e translações do sistema de coordenadas; assim a tradução ou reflexões do sistema de coordenadas resultam nas mesmas caixas sendo selecionadas pelo algoritmo. A saída desta operação são as caixas finais, pontuações e tensores de classes retornados após a execução de non_max_suppression.
Classes aninhadas
aula | CombinedNonMaxSuppression.Options | Atributos opcionais para CombinedNonMaxSuppression |
Métodos públicos
static CombinedNonMaxSuppression.Options | clipBoxes (boolean clipBoxes) |
estático CombinadoNãoMaxSupressão | create ( Escopo do escopo, caixas Operando <Float>, Operando <Float> pontuações, Operando <Integer> maxOutputSizePerClass, Operando <Integer> maxTotalSize, Operando <Float> iouThreshold, Operando <Float> scoreThreshold, Options... options) Método de fábrica para criar uma classe que envolve uma nova operação CombinedNonMaxSuppression. |
Saída <Float> | nmsedBoxes () Um tensor [batch_size, max_detections, 4] float32 contendo as caixas não-max suprimidas. |
Saída <Float> | nmsedClasses () Um tensor float32 [batch_size, max_detections] contendo as classes para as caixas. |
Saída <Float> | nmsedScores () Um tensor float32 [batch_size, max_detections] contendo as pontuações para as caixas. |
static CombinedNonMaxSuppression.Options | padPerClass (Booleano padPerClass) |
Saída <Inteiro> | válidaDetecções () Um tensor int32 [batch_size] indicando o número de detecções válidas por item de lote. |
Métodos Herdados
Métodos públicos
public static CombinedNonMaxSuppression.Options clipBoxes (boolean clipBoxes)
Parâmetros
caixas de clipes | Se verdadeiro, suponha que as coordenadas da caixa estejam entre [0, 1] e recorte as caixas de saída se elas ficarem além de [0, 1]. Se false, não faça o recorte e mostre as coordenadas da caixa como estão. |
---|
public static CombinedNonMaxSuppression create ( Escopo do escopo, Operando <Float> caixas, Operando <Float> pontuações, Operando <Integer> maxOutputSizePerClass, Operando <Integer> maxTotalSize, Operando <Float> iouThreshold, Operando <Float> scoreThreshold, Opções... opções)
Método de fábrica para criar uma classe que envolve uma nova operação CombinedNonMaxSuppression.
Parâmetros
alcance | escopo atual |
---|---|
caixas | Um tensor flutuante 4-D de forma `[batch_size, num_boxes, q, 4]`. Se `q` for 1, as mesmas caixas serão usadas para todas as classes, caso contrário, se `q` for igual ao número de classes, as caixas específicas da classe serão usadas. |
pontuações | Um tensor flutuante 3-D de forma `[batch_size, num_boxes, num_classes]` representando uma única pontuação correspondente a cada caixa (cada linha de caixas). |
maxOutputSizePerClass | Um tensor inteiro escalar que representa o número máximo de caixas a serem selecionadas por supressão não máxima por classe |
maxTotalSize | Um escalar int32 que representa o número máximo de caixas retidas em todas as classes. Observe que definir esse valor como um número grande pode resultar em erro OOM, dependendo da carga de trabalho do sistema. |
iouThreshold | Um tensor flutuante 0-D representando o limite para decidir se as caixas se sobrepõem demais em relação à IOU. |
limite de pontuação | Um tensor flutuante 0-D representando o limite para decidir quando remover caixas com base na pontuação. |
opções | carrega valores de atributos opcionais |
Devoluções
- uma nova instância de CombinedNonMaxSuppression
Public Output <Float> nmsedBoxes ()
Um tensor [batch_size, max_detections, 4] float32 contendo as caixas não-max suprimidas.
Public Output <Float> nmsedClasses ()
Um tensor float32 [batch_size, max_detections] contendo as classes para as caixas.
Public Output <Float> nmsedScores ()
Um tensor float32 [batch_size, max_detections] contendo as pontuações para as caixas.
public static CombinedNonMaxSuppression.Options padPerClass (Boolean padPerClass)
Parâmetros
padPerClass | Se false, as caixas nmsed de saída, pontuações e classes são preenchidas/recortadas para `max_total_size`. Se true, as caixas nmsed de saída, pontuações e classes são preenchidas para ter o tamanho `max_size_per_class`*`num_classes`, a menos que exceda `max_total_size`, caso em que é recortado para `max_total_size`. O padrão é falso. |
---|
Public Output <Integer> validDetections ()
Um tensor int32 [batch_size] indicando o número de detecções válidas por item de lote. Apenas as principais entradas num_detections[i] em nms_boxes[i], nms_scores[i] e nms_class[i] são válidas. O resto das entradas são preenchimentos zero.