Aide à protéger la Grande barrière de corail avec tensorflow sur Kaggle Rejoignez Défi

tensorflow :: opérations :: NonMaxSuppressionV5

#include <image_ops.h>

Sélectionne goulûment un sous-ensemble de boîtes englobantes par ordre décroissant de score.

Résumé

élaguer les boîtes qui ont un chevauchement intersection-sur-union (IOU) élevé avec les boîtes précédemment sélectionnées. Les encadrés avec un score inférieur à score_threshold sont supprimés. Les boîtes englobantes sont fournies sous la forme [y1, x1, y2, x2], où (y1, x1) et (y2, x2) sont les coordonnées de toute paire diagonale de coins de boîte et les coordonnées peuvent être fournies comme normalisées (c.-à-d. l'intervalle [0, 1]) ou absolu. Notez que cet algorithme est indépendant de l'endroit où se trouve l'origine dans le système de coordonnées et plus généralement est invariant aux transformations orthogonales et aux traductions du système de coordonnées; ainsi, la traduction ou les réflexions du système de coordonnées entraînent la sélection des mêmes cases par l'algorithme. La sortie de cette opération est un ensemble d'entiers indexés dans la collection d'entrée de boîtes englobantes représentant les boîtes sélectionnées. Les coordonnées de la boîte englobante correspondant aux indices sélectionnés peuvent alors être obtenues en utilisant l' tf.gather operation . Par exemple: selected_indices = tf.image.non_max_suppression_v2 (boxes, scores, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather (boxes, selected_indices) Cette opération supporte également un mode Soft-NMS (avec pondération gaussienne) (cf Bodla et al , https://arxiv.org/abs/1704.04503 ) où les cases réduisent le score des autres cases qui se chevauchent au lieu de provoquer directement leur élagage. Pour activer ce mode Soft-NMS, définissez le paramètre soft_nms_sigma sur une valeur supérieure à 0.

Arguments:

  • scope: un objet Scope
  • cases: Un tenseur flottant 2D de forme [num_boxes, 4] .
  • scores: Un tenseur flottant 1-D de forme [num_boxes] représentant un seul score correspondant à chaque case (chaque rangée de cases).
  • max_output_size: Un tenseur scalaire entier représentant le nombre maximum de cases à sélectionner par suppression non max.
  • iou_threshold: Un tenseur flottant 0-D représentant le seuil pour décider si les boîtes se chevauchent trop par rapport à l'IOU.
  • score_threshold: un tenseur flottant 0-D représentant le seuil pour décider quand supprimer les boîtes en fonction du score.
  • soft_nms_sigma: un tenseur flottant 0-D représentant le paramètre sigma pour Soft NMS; voir Bodla et al (cf https://arxiv.org/abs/1704.04503 ). Lorsque soft_nms_sigma=0.0 (qui est la valeur par défaut), nous revenons au NMS standard (dur).

Attributs facultatifs (voir Attrs ):

  • pad_to_max_output_size: Si true, la sortie selected_indices est complétée pour être de longueur max_output_size . La valeur par défaut est false.

Retour:

  • Output selected_indices: Un tenseur entier 1-D de forme [M] représentant les indices sélectionnés à partir du tenseur des boîtes, où M <= max_output_size .
  • Output selected_scores: Un tenseur flottant 1-D de forme [M] représentant les scores correspondants pour chaque case sélectionnée, où M <= max_output_size . Les scores ne diffèrent des scores d'entrée correspondants que lors de l'utilisation de Soft NMS (c'est-à-dire lorsque soft_nms_sigma>0 )
  • Output valid_outputs: un tenseur entier 0-D représentant le nombre d'éléments valides dans selected_indices , avec les éléments valides apparaissant en premier.

Constructeurs et destructeurs

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)

Attributs publics

operation
selected_indices
selected_scores
valid_outputs

Fonctions statiques publiques

PadToMaxOutputSize (bool x)

Structs

tensorflow :: ops :: NonMaxSuppressionV5 :: Attrs

Définisseurs d' attributs facultatifs pour NonMaxSuppressionV5 .

Attributs publics

opération

Operation operation

selected_indices

::tensorflow::Output selected_indices

selected_scores

::tensorflow::Output selected_scores

valid_outputs

::tensorflow::Output valid_outputs

Fonctions publiques

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
)

Fonctions statiques publiques

PadToMaxOutputSize

Attrs PadToMaxOutputSize(
  bool x
)