텐서플로우:: 작전:: CombinedNonMaxSuppression

#include <image_ops.h>

점수의 내림차순으로 경계 상자의 하위 집합을 탐욕스럽게 선택합니다.

요약

이 작업은 모든 클래스에서 배치당 입력에 대해 non_max_suppression을 수행합니다. 이전에 선택한 상자와 IOU(Intersection-Over-Union)가 많이 겹치는 상자를 제거합니다. 경계 상자는 [y1, x1, y2, x2]로 제공됩니다. 여기서 (y1, x1) 및 (y2, x2)는 상자 모서리의 대각선 쌍의 좌표이며 좌표는 정규화된 대로 제공될 수 있습니다(예: 간격 [0, 1]) 또는 절대값. 이 알고리즘은 좌표계에서 원점이 어디에 있는지에 영향을 받지 않습니다. 또한 이 알고리즘은 좌표계의 직교 변환 및 변환에 변하지 않습니다. 따라서 좌표계를 변환하거나 반영하면 알고리즘에 의해 동일한 상자가 선택됩니다. 이 작업의 출력은 non_max_suppression을 수행한 후 반환된 최종 상자, 점수 및 클래스 텐서입니다.

인수:

  • 범위: 범위 개체
  • 상자: [batch_size, num_boxes, q, 4] 모양의 4차원 부동 텐서. q 가 1이면 모든 클래스에 동일한 상자가 사용됩니다. 그렇지 않으면 q 클래스 수와 같으면 클래스별 상자가 사용됩니다.
  • 점수: 각 상자(상자의 각 행)에 해당하는 단일 점수를 나타내는 [batch_size, num_boxes, num_classes] 모양의 3D 부동 텐서입니다.
  • max_output_size_per_class: 클래스당 비최대 억제로 선택할 최대 상자 수를 나타내는 스칼라 정수 텐서
  • max_total_size: 모든 클래스에 걸쳐 유지되는 최대 상자 수를 나타내는 스칼라입니다.
  • iou_threshold: IOU와 관련하여 상자가 너무 많이 겹치는지 여부를 결정하기 위한 임계값을 나타내는 0-D 부동 텐서입니다.
  • Score_threshold: 점수에 따라 상자를 제거할 시기를 결정하기 위한 임계값을 나타내는 0-D 부동 텐서입니다.

선택적 속성( Attrs 참조):

  • pad_per_class: false인 경우 출력 nmsed 상자, 점수 및 클래스가 max_total_size 에 채워지거나 잘립니다. true인 경우 출력 nmsed 상자, 점수 및 클래스는 max_size_per_class * num_classes 길이가 되도록 채워집니다. 단, max_total_size 초과하지 않는 한 max_total_size 로 잘립니다. 기본값은 거짓입니다.
  • Clip_boxes: true인 경우 상자 좌표가 [0, 1] 사이에 있다고 가정하고 출력 상자가 [0, 1]을 벗어나면 출력 상자를 자릅니다. false인 경우 클리핑을 하지 않고 상자 좌표를 그대로 출력합니다.

보고:

  • Output nmsed_boxes: 최대값이 아닌 억제된 상자를 포함하는 [batch_size, max_Detections, 4] float32 텐서.
  • Output nmsed_scores: 상자의 점수를 포함하는 [batch_size, max_Detections] float32 텐서.
  • Output nmsed_classes: 상자의 클래스를 포함하는 [batch_size, max_Detections] float32 텐서.
  • Output valid_Detections: 배치 항목당 유효한 감지 수를 나타내는 [batch_size] int32 텐서입니다. nms_boxes[i], nms_scores[i] 및 nms_class[i]의 상위 num_Detections[i] 항목만 유효합니다. 나머지 항목은 0 패딩입니다.

생성자와 소멸자

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)

공개 속성

nmsed_boxes
nmsed_classes
nmsed_scores
operation
valid_detections

공개 정적 함수

ClipBoxes (bool x)
PadPerClass (bool x)

구조체

텐서플로우:: ops:: CombinedNonMaxSuppression:: Attrs

CombinedNonMaxSuppression 에 대한 선택적 속성 설정자입니다.

공개 속성

nmsed_boxes

::tensorflow::Output nmsed_boxes

nmsed_classes

::tensorflow::Output nmsed_classes

nmsed_scores

::tensorflow::Output nmsed_scores

작업

Operation operation

유효한 감지

::tensorflow::Output valid_detections

공공 기능

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
)

공개 정적 함수

클립박스

Attrs ClipBoxes(
  bool x
)

PadPerClass

Attrs PadPerClass(
  bool x
)