NonMaxSuppressionV5

public final class NonMaxSuppressionV5

Seleziona avidamente un sottoinsieme di riquadri di delimitazione in ordine decrescente di punteggio,

eliminazione di scatole che hanno un'elevata sovrapposizione di intersezione su unione (IOU) con scatole precedentemente selezionate. I riquadri di delimitazione con punteggio inferiore a "score_threshold" vengono rimossi. I riquadri di selezione sono forniti come [y1, x1, y2, x2], dove (y1, x1) e (y2, x2) sono le coordinate di qualsiasi coppia diagonale di angoli del riquadro e le coordinate possono essere fornite come normalizzate l'intervallo [0, 1]) o assoluto. Si noti che questo algoritmo è agnostico rispetto al punto in cui l'origine è nel sistema di coordinate e più in generale è invariante alle trasformazioni ortogonali e alle traslazioni del sistema di coordinate; quindi la traduzione o le riflessioni del sistema di coordinate risultano nelle stesse caselle selezionate dall'algoritmo. L'output di questa operazione è un insieme di numeri interi indicizzati nella raccolta di input di riquadri di delimitazione che rappresentano i riquadri selezionati. Le coordinate del riquadro di delimitazione corrispondenti agli indici selezionati possono quindi essere ottenute utilizzando l'operazione `tf.gather`. Ad esempio: selected_indices = tf.image.non_max_suppression_v2 (box, score, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather (box, selected_indices) Questa opzione supporta anche una modalità Soft-NMS (con ponderazione gaussiana) (cfr Bodla et al , https://arxiv.org/abs/1704.04503) dove le scatole riducono il punteggio di altre scatole sovrapposte invece di provocarne l'eliminazione diretta. Per abilitare questa modalità Soft-NMS, impostare il parametro `soft_nms_sigma` su un valore maggiore di 0.

Classi annidate

classe NonMaxSuppressionV5.Options Attributi facoltativi per NonMaxSuppressionV5

Metodi pubblici

static <T extends Number> NonMaxSuppressionV5 <T>
creare ( Ambito di applicazione portata, operando <T> scatole, operando <T> colonne sonore, operando <Integer> maxOutputSize, operando <T> iouThreshold, operando <T> scoreThreshold, operando <T> softNmsSigma, Opzioni ... Opzioni)
Metodo Factory per creare una classe che racchiude una nuova operazione NonMaxSuppressionV5.
static NonMaxSuppressionV5.Options
padToMaxOutputSize (Boolean padToMaxOutputSize)
Uscita <Integer>
selectedIndices ()
Un tensore intero 1-D di forma "[M]" che rappresenta gli indici selezionati dal tensore delle caselle, dove "M <= max_output_size".
Uscita <T>
selectedScores ()
Un tensore a virgola mobile 1-D di forma "[M]" che rappresenta i punteggi corrispondenti per ciascuna casella selezionata, dove "M <= max_output_size".
Uscita <Integer>
validOutputs ()
Un tensore intero 0-D che rappresenta il numero di elementi validi in "selected_indices", con gli elementi validi che appaiono per primi.

Metodi ereditati

Metodi pubblici

public static NonMaxSuppressionV5 <T> create ( Scope scope, Operando <T> box, Operand <T> score, Operand <Integer> maxOutputSize, Operand <T> iouThreshold, Operand <T> scoreThreshold, Operand <T> softNmsSigma, Options . opzioni)

Metodo Factory per creare una classe che racchiude una nuova operazione NonMaxSuppressionV5.

Parametri
scopo ambito attuale
scatole Un tensore a virgola mobile 2-D di forma `[num_boxes, 4]`.
punteggi Un tensore in virgola mobile 1-D di forma "[num_boxes]" che rappresenta un singolo punteggio corrispondente a ciascuna casella (ciascuna riga di caselle).
maxOutputSize Un tensore intero scalare che rappresenta il numero massimo di caselle che possono essere selezionate dalla soppressione non massima.
iouThreshold Un tensore a virgola mobile 0-D che rappresenta la soglia per decidere se le caselle si sovrappongono troppo rispetto a IOU.
scoreThreshold Un tensore a virgola mobile 0-D che rappresenta la soglia per decidere quando rimuovere le caselle in base al punteggio.
softNmsSigma Un tensore a virgola mobile 0-D che rappresenta il parametro sigma per Soft NMS; vedere Bodla et al (cfr https://arxiv.org/abs/1704.04503). Quando "soft_nms_sigma = 0.0" (che è l'impostazione predefinita), torniamo allo standard (hard) NMS.
opzioni trasporta valori di attributi opzionali
ritorna
  • una nuova istanza di NonMaxSuppressionV5

public static NonMaxSuppressionV5.Options padToMaxOutputSize (Boolean padToMaxOutputSize)

Parametri
padToMaxOutputSize Se vero, l'output `selected_indices` viene riempito in modo da essere di lunghezza` max_output_size`. Il valore predefinito è false.

public Output <Integer> selectedIndices ()

Un tensore intero 1-D di forma "[M]" che rappresenta gli indici selezionati dal tensore delle caselle, dove "M <= max_output_size".

output pubblico <T> selectedScores ()

Un tensore a virgola mobile 1-D di forma "[M]" che rappresenta i punteggi corrispondenti per ciascuna casella selezionata, dove "M <= max_output_size". I punteggi differiscono solo dai punteggi di input corrispondenti quando si usa Soft NMS (cioè quando `soft_nms_sigma> 0`)

output pubblico <Integer> validOutputs ()

Un tensore intero 0-D che rappresenta il numero di elementi validi in "selected_indices", con gli elementi validi che appaiono per primi.