tensorflow::ops::NonMaxSuppressionV5

#include <image_ops.h>

Seleziona avidamente un sottoinsieme di bounding box in ordine decrescente di punteggio.

Riepilogo

Eliminazione dei riquadri che presentano un'elevata sovrapposizione di intersezione-su-unione (IOU) con i riquadri precedentemente selezionati. Vengono rimossi i riquadri di delimitazione con punteggio inferiore a score_threshold . I riquadri di delimitazione vengono forniti come [y1, x1, y2, x2], dove (y1, x1) e (y2, x2) sono le coordinate di una qualsiasi coppia diagonale di angoli del riquadro e le coordinate possono essere fornite normalizzate (ovvero, comprese nell'intervallo [0, 1]) o assolute. Si noti che questo algoritmo è indipendente dalla posizione dell'origine nel sistema di coordinate e, più in generale, è invariante rispetto a trasformazioni ortogonali e traslazioni del sistema di coordinate; pertanto, traslazioni o riflessioni del sistema di coordinate portano alla selezione degli stessi riquadri da parte dell'algoritmo. L'output di questa operazione è un insieme di numeri interi che indicizzano la collezione di input dei riquadri di delimitazione che rappresentano i riquadri selezionati. Le coordinate dei riquadri di delimitazione corrispondenti agli indici selezionati possono quindi essere ottenute utilizzando l' tf.gather operation . Ad esempio: selected_indices = tf.image.non_max_suppression_v2( boxs, scores, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather(boxes, selected_indices) Questa operazione supporta anche una modalità Soft-NMS (con ponderazione gaussiana) (cfr. Bodla et al, https://arxiv.org/abs/1704.04503 ) in cui le box riducono il punteggio di altre box sovrapposte invece di causarne direttamente la potatura. Per abilitare questa modalità Soft-NMS, impostare il parametro soft_nms_sigma su un valore maggiore di 0.

Argomentazioni:

  • ambito: un oggetto Scope
  • scatole: un tensore float 2D di forma [num_boxes, 4] .
  • punteggi: Un tensore float 1D di forma [num_boxes] che rappresenta un singolo punteggio corrispondente a ciascuna casella (ogni riga di caselle).
  • max_output_size: Un tensore scalare intero che rappresenta il numero massimo di riquadri da selezionare tramite soppressione non massima.
  • iou_threshold: Un tensore float 0-D che rappresenta la soglia per decidere se le caselle si sovrappongono troppo rispetto all'IOU.
  • score_threshold: Un tensore float 0-D che rappresenta la soglia per decidere quando rimuovere le caselle in base al punteggio.
  • soft_nms_sigma: Un tensore float 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 è il valore predefinito), si ricorre a NMS standard (hard).

Attributi opzionali (vedere Attrs ):

  • pad_to_max_output_size: Se true, l'output selected_indices viene riempito con caratteri di riempimento fino a raggiungere la lunghezza max_output_size . Il valore predefinito è false.

Resi:

  • Output selected_indices: un tensore di interi 1D di forma [M] che rappresenta gli indici selezionati dal tensore delle caselle, dove M <= max_output_size .
  • Output selected_scores: un tensore float 1D di forma [M] che rappresenta i punteggi corrispondenti per ogni casella selezionata, dove M <= max_output_size . I punteggi differiscono dai punteggi di input corrispondenti solo quando si utilizza Soft NMS (ovvero quando soft_nms_sigma>0 ).
  • Output valid_outputs: un tensore di interi a 0 dimensioni che rappresenta il numero di elementi validi in selected_indices , con gli elementi validi che appaiono per primi.

Costruttori e distruttori

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)

attributi pubblici

operation
selected_indices
selected_scores
valid_outputs

Funzioni statiche pubbliche

PadToMaxOutputSize (bool x)

Strutture

tensorflow:: ops:: NonMaxSuppressionV5:: Attrs

Impostazioni opzionali degli attributi per NonMaxSuppressionV5 .

attributi pubblici

operazione

Operation operation

indici_selezionati

::tensorflow::Output selected_indices

punteggi_selezionati

::tensorflow::Output selected_scores

output_validi

::tensorflow::Output valid_outputs

Funzioni pubbliche

NonMaxSuppressionV5

 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

 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
)

Funzioni statiche pubbliche

PadToMaxOutputSize

Attrs PadToMaxOutputSize(
  bool x
)