Selecciona con avidez un subconjunto de cuadros delimitadores en orden descendente de puntuación,
Esta operación realiza non_max_suppression en las entradas por lote, en todas las clases. Elimina las cajas que tienen una alta superposición de intersección sobre unión (IOU) con las cajas seleccionadas previamente. Los cuadros delimitadores se suministran como [y1, x1, y2, x2], donde (y1, x1) y (y2, x2) son las coordenadas de cualquier par diagonal de esquinas del cuadro y las coordenadas se pueden proporcionar normalizadas (es decir, situadas en el intervalo [0, 1]) o absoluto. Tenga en cuenta que este algoritmo es independiente de dónde está el origen en el sistema de coordenadas. Tenga en cuenta también que este algoritmo es invariante para transformaciones ortogonales y traslaciones del sistema de coordenadas; por lo tanto, la traducción o las reflexiones del sistema de coordenadas dan como resultado que el algoritmo seleccione las mismas casillas. El resultado de esta operación son los cuadros, puntuaciones y clases finales del tensor devueltos después de realizar non_max_suppression.
Clases anidadas
clase | Opciones combinadas de NonMaxSuppression | Atributos opcionales para CombinedNonMaxSuppression |
Constantes
Cadena | OP_NOMBRE | El nombre de esta operación, como lo conoce el motor central de TensorFlow. |
Métodos públicos
Opciones estáticas combinadasNonMaxSuppression | clipBoxes (clipBoxes booleanos) |
Supresión estática combinada no máxima | crear ( alcance alcance, cuadros de operando <TFloat32> , puntuaciones de operando <TFloat32> , operando <TInt32> maxOutputSizePerClass, operando <TInt32> maxTotalSize, operando <TFloat32> iouThreshold, operando <TFloat32> scoreThreshold, opciones... opciones) Método de fábrica para crear una clase que envuelve una nueva operación CombinedNonMaxSuppression. |
Salida <TFloat32> | nmsedBoxes () Un tensor float32 [batch_size, max_detections, 4] que contiene los cuadros suprimidos no máximos. |
Salida <TFloat32> | clases nmsed () Un tensor float32 [batch_size, max_detections] que contiene las clases para las cajas. |
Salida <TFloat32> | nmsedPuntuaciones () Un tensor float32 [batch_size, max_detections] que contiene las puntuaciones de las cajas. |
Opciones estáticas combinadasNonMaxSuppression | padPerClass (padPerClass booleano) |
Salida < TInt32 > | detecciones válidas () Un tensor [batch_size] int32 que indica el número de detecciones válidas por elemento de lote. |
Métodos heredados
Constantes
Cadena final estática pública OP_NAME
El nombre de esta operación, como lo conoce el motor central de TensorFlow.
Métodos públicos
público estático CombinedNonMaxSuppression.Options clipBoxes (clipBoxes booleanos)
Parámetros
clipBoxes | Si es verdadero, suponga que las coordenadas del cuadro están entre [0, 1] y recorte los cuadros de salida si caen más allá de [0, 1]. Si es falso, no recorte y genere las coordenadas del cuadro tal como están. |
---|
creación pública estática CombinedNonMaxSuppression (ámbito de alcance , cuadros de operando <TFloat32> , puntuaciones de operando <TFloat32> , operando <TInt32> maxOutputSizePerClass, operando <TInt32> maxTotalSize, operando <TFloat32> iouThreshold, operando <TFloat32> scoreThreshold, opciones... opciones)
Método de fábrica para crear una clase que envuelve una nueva operación CombinedNonMaxSuppression.
Parámetros
alcance | alcance actual |
---|---|
cajas | Un tensor flotante 4-D de forma `[batch_size, num_boxes, q, 4]`. Si `q` es 1, entonces se usan los mismos cuadros para todas las clases; de lo contrario, si `q` es igual al número de clases, se usan cuadros específicos de clase. |
puntuaciones | Un tensor flotante tridimensional con forma `[batch_size, num_boxes, num_classes]` que representa una puntuación única correspondiente a cada cuadro (cada fila de cuadros). |
tamaño máximo de salida por clase | Un tensor entero escalar que representa el número máximo de cajas que se seleccionarán mediante supresión no máxima por clase. |
tamañototalmax | Un escalar que representa el número máximo de cajas retenidas en todas las clases. |
iouumbral | Un tensor flotante 0-D que representa el umbral para decidir si las cajas se superponen demasiado con respecto al pagaré. |
puntuaciónUmbral | Un tensor flotante 0-D que representa el umbral para decidir cuándo eliminar cuadros según la puntuación. |
opciones | lleva valores de atributos opcionales |
Devoluciones
- una nueva instancia de CombinedNonMaxSuppression
Salida pública <TFloat32> nmsedBoxes ()
Un tensor float32 [batch_size, max_detections, 4] que contiene los cuadros suprimidos no máximos.
Salida pública <TFloat32> nmsedClasses ()
Un tensor float32 [batch_size, max_detections] que contiene las clases para las cajas.
Salida pública <TFloat32> nmsedScores ()
Un tensor float32 [batch_size, max_detections] que contiene las puntuaciones de las cajas.
público estático CombinedNonMaxSuppression.Options padPerClass (booleano padPerClass)
Parámetros
padPorClase | Si es falso, los cuadros, puntuaciones y clases de nmsed de salida se rellenan/recortan a `max_total_size`. Si es verdadero, los cuadros, puntuaciones y clases nmsed de salida se rellenan para que tengan una longitud `max_size_per_class`*`num_classes`, a menos que exceda `max_total_size`, en cuyo caso se recorta a `max_total_size`. El valor predeterminado es falso. |
---|