tensorflow :: operaciones :: CombinedNonMaxSuppression
#include <image_ops.h>
Selecciona codiciosamente un subconjunto de cuadros delimitadores en orden descendente de puntuación.
Resumen
Esta operación realiza non_max_suppression en las entradas por lote, en todas las clases. Elimina las cajas que tienen una gran superposición de intersección sobre unión (IOU) con las cajas seleccionadas previamente. Los cuadros delimitadores se proporcionan como [y1, x1, y2, x2], donde (y1, x1) y (y2, x2) son las coordenadas de cualquier par diagonal de esquinas de cuadro y las coordenadas se pueden proporcionar como 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. También tenga en cuenta que este algoritmo es invariante a las 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 cajas. El resultado de esta operación son los cuadros finales, puntajes y tensor de clases devueltos después de realizar non_max_suppression.
Argumentos:
- alcance: un objeto de alcance
- cajas: Un tensor flotante 4-D de forma
[batch_size, num_boxes, q, 4]
. Siq
es 1, se utilizan las mismas casillas para todas las clases; de lo contrario, siq
es igual al número de clases, se utilizan casillas específicas de la clase. - puntuaciones: un tensor flotante 3-D de forma
[batch_size, num_boxes, num_classes]
representa una única puntuación correspondiente a cada casilla (cada fila de casillas). - max_output_size_per_class: un tensor entero escalar que representa el número máximo de casillas que se seleccionarán mediante supresión no máxima por clase
- max_total_size: un escalar que representa el número máximo de cajas retenidas en todas las clases.
- iou_threshold: un tensor flotante 0-D que representa el umbral para decidir si las cajas se superponen demasiado con respecto a IOU.
- score_threshold: un tensor flotante 0-D que representa el umbral para decidir cuándo quitar casillas en función de la puntuación.
Atributos opcionales (consulte Attrs
):
- pad_per_class: si es falso, los cuadros, las puntuaciones y las clases asignados a la salida se rellenan / recortan a
max_total_size
. Si es verdadero, las casillas, las puntuaciones y las clases indicadas en la salida se rellenan para tener la longitudmax_size_per_class
*num_classes
, a menos que excedamax_total_size
en cuyo caso se recorta amax_total_size
. El valor predeterminado es falso. - clip_boxes: 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.
Devoluciones:
-
Output
nmsed_boxes: Un tensor de [batch_size, max_detections, 4] float32 que contiene las cajas no máximas suprimidas. -
Output
nmsed_scores: un tensor float32 de [batch_size, max_detections] que contiene las puntuaciones de las casillas. -
Output
nmsed_classes: un tensor float32 de [batch_size, max_detections] que contiene las clases de las cajas. -
Output
valid_detections: un tensor int32 de [batch_size] que indica el número de detecciones válidas por lote. Solo son válidas las primeras entradas num_detections [i] en nms_boxes [i], nms_scores [i] y nms_class [i]. El resto de las entradas son rellenos de ceros.
Constructores y Destructores | |
---|---|
CombinedNonMaxSuppression (const :: tensorflow::Scope & scope, :: tensorflow::Input boxes, :: tensorflow::Input scores, :: tensorflow::Input max_output_size_per_class, :: tensorflow::Input max_total_size, :: tensorflow::Input iou_threshold, :: tensorflow::Input score_threshold) | |
CombinedNonMaxSuppression (const :: tensorflow::Scope & scope, :: tensorflow::Input boxes, :: tensorflow::Input scores, :: tensorflow::Input max_output_size_per_class, :: tensorflow::Input max_total_size, :: tensorflow::Input iou_threshold, :: tensorflow::Input score_threshold, const CombinedNonMaxSuppression::Attrs & attrs) |
Atributos públicos | |
---|---|
nmsed_boxes | |
nmsed_classes | |
nmsed_scores | |
operation | |
valid_detections |
Funciones estáticas públicas | |
---|---|
ClipBoxes (bool x) | |
PadPerClass (bool x) |
Estructuras | |
---|---|
tensorflow :: ops :: CombinedNonMaxSuppression :: Attrs | Establecedores de atributos opcionales para CombinedNonMaxSuppression . |
Atributos públicos
nmsed_boxes
::tensorflow::Output nmsed_boxes
nmsed_classes
::tensorflow::Output nmsed_classes
nmsed_scores
::tensorflow::Output nmsed_scores
operación
Operation operation
válidas_detecciones
::tensorflow::Output valid_detections
Funciones publicas
CombinedNonMaxSuppression
CombinedNonMaxSuppression( const ::tensorflow::Scope & scope, ::tensorflow::Input boxes, ::tensorflow::Input scores, ::tensorflow::Input max_output_size_per_class, ::tensorflow::Input max_total_size, ::tensorflow::Input iou_threshold, ::tensorflow::Input score_threshold )
CombinedNonMaxSuppression
CombinedNonMaxSuppression( const ::tensorflow::Scope & scope, ::tensorflow::Input boxes, ::tensorflow::Input scores, ::tensorflow::Input max_output_size_per_class, ::tensorflow::Input max_total_size, ::tensorflow::Input iou_threshold, ::tensorflow::Input score_threshold, const CombinedNonMaxSuppression::Attrs & attrs )
Funciones estáticas públicas
ClipBoxes
Attrs ClipBoxes( bool x )
PadPerClass
Attrs PadPerClass( bool x )