BoundingBoxUtil

classe pubblica finale BoundingBoxUtil

Classe di supporto per la conversione dei valori che rappresentano i riquadri di delimitazione in rettangoli.

La classe fornisce una funzione statica per creare riquadri di delimitazione come RectF da diversi tipi di configurazioni.

In genere, un riquadro di delimitazione può essere rappresentato da quattro valori in virgola mobile, ma i valori possono essere interpretati in molti modi. Ora supportiamo 3 BoundingBoxUtil.Type configurazioni e anche l'ordine degli elementi di ogni tipo è configurabile.

Corsi nidificati

enum BoundingBoxUtil.CoordinateType Indica se le coordinate sono pixel o rapporti relativi effettivi. 
enum BoundingBoxUtil.Type Indica come viene rappresentato un riquadro di delimitazione. 

Metodi pubblici

statico Elenco<RectF>
convert(tensor di TensorBuffer, int[] valueIndex, int boundingBoxAxis, tipo BoundingBoxUtil.Type, coordinateType BoundingBoxUtil.CoordinateType, int altezza, int width)
Crea un elenco di riquadri di delimitazione da un elemento TensorBuffer che rappresenta i riquadri di delimitazione.

Metodi ereditati

Metodi pubblici

pubblico static List<RectF> convert (TensorBuffer tensor, int[] valueIndex, int boundingBoxAxis, tipo BoundingBoxUtil.Type, BoundingBoxUtil.CoordinateType

Crea un elenco di riquadri di delimitazione da un elemento TensorBuffer che rappresenta i riquadri di delimitazione.

Parametri
tensore contiene i dati che rappresentano alcune caselle.
valueIndex indica l'ordine degli elementi definiti in ciascun tipo di riquadro di delimitazione. Un array di indice vuoto rappresenta l'ordine predefinito di ogni tipo di riquadro di delimitazione. Ad esempio, per indicare l'ordine predefinito dei BOUNDARIES {left, top,right,bottom}, l'indice deve essere {0, 1, 2, 3}. Per indicare l'ordine {left, left, top, below}, l'ordine deve essere {0, 2, 1, 3}.

L'array di indici può essere applicato a tutti i tipi di riquadri di delimitazione per regolare l'ordine degli elementi sottostanti corrispondenti.

boundingBoxAxis specifica l'indice della dimensione che rappresenta il riquadro di delimitazione. La dimensione di questa dimensione deve essere 4. L'indice inizia da 0. Ad esempio, se il tensore ha una forma 4 x 10, è probabile che l'asse per i riquadri di delimitazione sia 0. Sono supportati anche gli assi negativi: -1 indica l'ultimo asse e -2 indica il secondo e così via.
Tipo definisce la modalità di conversione dei valori in caselle. Visualizza BoundingBoxUtil.Type
coordinateType definisce il modo in cui i valori vengono interpretati in coordinate. Visualizza BoundingBoxUtil.CoordinateType
altezza l'altezza dell'immagine a cui appartengono le caselle. Ha effetti solo quando coordinateType è BoundingBoxUtil.CoordinateType.RATIO
larghezza la larghezza dell'immagine a cui appartengono le caselle. Ha effetti solo quando coordinateType è BoundingBoxUtil.CoordinateType.RATIO
Ritorni
  • Un elenco di riquadri di delimitazione rappresentati da tensor. Tutte le dimensioni tranne boundingBoxAxis verranno compresse con l'ordine mantenuto. Ad esempio, se tensor ha la forma {1, 4, 10, 2} e boundingBoxAxis = 1, il risultato sarà un elenco di 20 riquadri di delimitazione.
Lanci
IllegalArgumentException se la dimensione del riquadro di delimitazione (impostata da boundingBoxAxis) è diversa da 4.
IllegalArgumentException se boundingBoxAxis non è in (-(D+1), D), dove D è il numero delle dimensioni di tensor.
IllegalArgumentException se tensor ha un tipo di dati diverso da DataType.FLOAT32.