Seleziona avidamente un sottoinsieme di riquadri di delimitazione in ordine decrescente di punteggio,
Questa operazione esegue non_max_suppression sugli input per batch, in tutte le classi. Elimina le caselle che presentano un'elevata sovrapposizione di intersezioni su unione (IOU) con le caselle selezionate in precedenza. I riquadri di delimitazione vengono 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 (ovvero, giacenti in l'intervallo [0, 1]) o assoluto. Si noti che questo algoritmo è indipendente dalla posizione dell'origine nel sistema di coordinate. Si noti inoltre che questo algoritmo è invariante alle trasformazioni ortogonali e alle traslazioni del sistema di coordinate; quindi la traslazione o le riflessioni del sistema di coordinate comportano la selezione delle stesse caselle da parte dell'algoritmo. L'output di questa operazione sono le caselle finali, i punteggi e il tensore delle classi restituiti dopo aver eseguito non_max_suppression.
Classi nidificate
classe | CombinedNonMaxSuppression.Options | Attributi facoltativi per CombinedNonMaxSuppression |
Metodi pubblici
CombinedNonMaxSuppression.Options statico | clipBox (clipBox booleani) |
Statico CombinedNonMaxSuppression | create ( ambito ambito , caselle operando <float>, punteggi operando <float>, operando <intero> maxOutputSizePerClass, operando <intero> maxTotalSize, operando <float> iouThreshold, operando <float> scoreThreshold, opzioni... opzioni) Metodo factory per creare una classe che racchiude una nuova operazione CombinedNonMaxSuppression. |
Uscita <Mobile> | nmsedBox () Un tensore [batch_size, max_detections, 4] float32 contenente le caselle soppresse non massime. |
Uscita <Mobile> | nmsedClasses () Un tensore [batch_size, max_detections] float32 contenente le classi per le scatole. |
Uscita <Mobile> | nmsedScores () Un tensore [batch_size, max_detections] float32 contenente i punteggi per le caselle. |
CombinedNonMaxSuppression.Options statico | padPerClass (padPerClass booleano) |
Output <Intero> | validDetections () Un tensore int32 [batch_size] che indica il numero di rilevamenti validi per articolo batch. |
Metodi ereditati
Metodi pubblici
public static CombinedNonMaxSuppression.Options clipBoxes (clipBox booleani)
Parametri
clipBoxes | Se vero, presupponi che le coordinate della casella siano comprese tra [0, 1] e ritaglia le caselle di output se cadono oltre [0, 1]. Se falso, non eseguire il ritaglio e visualizzare le coordinate del riquadro così come sono. |
---|
creazione statica pubblica CombinedNonMaxSuppression (ambito ambito , caselle operando <Float>, punteggi operando <Float>, operando <Integer> maxOutputSizePerClass, operando <Integer> maxTotalSize, operando <Float> iouThreshold, operando <Float> scoreThreshold, Opzioni... opzioni)
Metodo factory per creare una classe che racchiude una nuova operazione CombinedNonMaxSuppression.
Parametri
scopo | ambito attuale |
---|---|
scatole | Un tensore float 4-D di forma "[batch_size, num_boxes, q, 4]". Se "q" è 1, vengono utilizzate le stesse caselle per tutte le classi, altrimenti, se "q" è uguale al numero di classi, vengono utilizzate caselle specifiche della classe. |
punteggi | Un tensore float 3D di forma `[batch_size, num_boxes, num_classes]` che rappresenta un singolo punteggio corrispondente a ciascuna casella (ogni riga di caselle). |
maxOutputSizePerClass | Un tensore intero scalare che rappresenta il numero massimo di caselle da selezionare mediante soppressione non massima per classe |
dimensione totale max | Uno scalare int32 che rappresenta il numero massimo di caselle conservate in tutte le classi. Tieni presente che l'impostazione di questo valore su un numero elevato potrebbe causare un errore OOM a seconda del carico di lavoro del sistema. |
iouSoglia | Un tensore float 0-D che rappresenta la soglia per decidere se le scatole si sovrappongono troppo rispetto all'IOU. |
punteggioSoglia | Un tensore float 0-D che rappresenta la soglia per decidere quando rimuovere le caselle in base al punteggio. |
opzioni | trasporta valori di attributi opzionali |
ritorna
- una nuova istanza di CombinedNonMaxSuppression
Uscita pubblica <Float> nmsedBoxes ()
Un tensore [batch_size, max_detections, 4] float32 contenente le caselle soppresse non massime.
Output pubblico <Float> nmsedClasses ()
Un tensore [batch_size, max_detections] float32 contenente le classi per le scatole.
Output pubblico <Float> nmsedScores ()
Un tensore [batch_size, max_detections] float32 contenente i punteggi per le caselle.
public static CombinedNonMaxSuppression.Options padPerClass (padPerClass booleano)
Parametri
padPerClass | Se false, le caselle, i punteggi e le classi di output nmsed vengono riempiti/ritagliati in "max_total_size". Se vero, le caselle, i punteggi e le classi nms di output vengono riempiti in modo da avere lunghezza "max_size_per_class"*`num_classes", a meno che non superi "max_total_size", nel qual caso viene ritagliato a "max_total_size". Il valore predefinito è falso. |
---|
output pubblico <numero intero> validDetections ()
Un tensore int32 [batch_size] che indica il numero di rilevamenti validi per articolo batch. Sono valide solo le prime voci num_detections[i] in nms_boxes[i], nms_scores[i] e nms_class[i]. Il resto delle voci sono imbottiture pari a zero.