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

#include <image_ops.h>

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

요약

IOU(Intersection-Over-Union)가 높은 상자가 이전에 선택한 상자와 겹치는 부분을 제거합니다. 점수가 score_threshold 보다 작은 경계 상자가 제거됩니다. 경계 상자는 [y1, x1, y2, x2]로 제공됩니다. 여기서 (y1, x1) 및 (y2, x2)는 상자 모서리의 대각선 쌍의 좌표이며 좌표는 정규화된 대로 제공될 수 있습니다(예: 간격 [0, 1]) 또는 절대값. 이 알고리즘은 좌표계의 원점이 어디에 있는지에 영향을 받지 않으며 더 일반적으로는 좌표계의 직교 변환 및 변환에 불변합니다. 따라서 좌표계를 변환하거나 반영하면 알고리즘에 의해 동일한 상자가 선택됩니다. 이 작업의 출력은 선택한 상자를 나타내는 경계 상자의 입력 컬렉션을 인덱싱하는 정수 집합입니다. 선택한 인덱스에 해당하는 경계 상자 좌표는 tf.gather operation 사용하여 얻을 수 있습니다. 예: selected_indices = tf.image.non_max_suppression_v2(boxs, Score, max_output_size, iou_threshold, Score_threshold) selected_boxes = tf.gather(boxes, selected_indices) 이 작업은 Soft-NMS(가우시안 가중치 사용) 모드도 지원합니다(Bodla 외 참조) , https://arxiv.org/abs/1704.04503 ) 여기서 상자는 직접 잘라내는 대신 다른 겹치는 상자의 점수를 줄입니다. 이 Soft-NMS 모드를 활성화하려면 soft_nms_sigma 매개변수를 0보다 크게 설정하십시오.

인수:

  • 범위: 범위 개체
  • 상자: [num_boxes, 4] 모양의 2차원 부동 텐서.
  • 점수: 각 상자(상자의 각 행)에 해당하는 단일 점수를 나타내는 [num_boxes] 모양의 1차원 부동 소수점 텐서입니다.
  • max_output_size: 최대가 아닌 억제로 선택할 최대 상자 수를 나타내는 스칼라 정수 텐서.
  • iou_threshold: IOU와 관련하여 상자가 너무 많이 겹치는지 여부를 결정하기 위한 임계값을 나타내는 0-D 부동 텐서입니다.
  • Score_threshold: 점수에 따라 상자를 제거할 시기를 결정하기 위한 임계값을 나타내는 0-D 부동 텐서입니다.
  • Soft_nms_sigma: Soft NMS의 시그마 매개변수를 나타내는 0-D 부동 텐서; Bodla et al(참조: https://arxiv.org/abs/1704.04503 )을 참조하세요. soft_nms_sigma=0.0 (기본값)이면 표준(하드) NMS로 대체됩니다.

선택적 속성( Attrs 참조):

  • pad_to_max_output_size: true인 경우 selected_indices 출력이 max_output_size 길이가 되도록 채워집니다. 기본값은 거짓입니다.

보고:

  • Output selected_indices: 박스 텐서에서 선택된 인덱스를 나타내는 [M] 모양의 1차원 정수 텐서(여기서 M <= max_output_size .
  • Output selected_scores: 각 선택된 상자에 대한 해당 점수를 나타내는 [M] 모양의 1차원 부동 소수점 텐서(여기서 M <= max_output_size ). 점수는 Soft NMS를 사용할 때(즉, soft_nms_sigma>0 인 경우) 해당 입력 점수와만 다릅니다.
  • Output valid_outputs: selected_indices 의 유효한 요소 수를 나타내는 0-D 정수 텐서. 유효한 요소가 먼저 나타납니다.

생성자와 소멸자

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)

공개 속성

operation
selected_indices
selected_scores
valid_outputs

공개 정적 함수

PadToMaxOutputSize (bool x)

구조체

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

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

공개 속성

작업

Operation operation

selected_indices

::tensorflow::Output selected_indices

selected_scores

::tensorflow::Output selected_scores

유효한 출력

::tensorflow::Output valid_outputs

공공 기능

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
)

공개 정적 함수

PadToMaxOutputSize

Attrs PadToMaxOutputSize(
  bool x
)