텐서플로우:: ops:: 오버랩이 있는 비최대 억제

#include <image_ops.h>

점수가 높은 순서대로 경계 상자의 부분 집합을 탐욕적으로 선택합니다.

요약

이전에 선택된 박스와 겹치는 부분이 많은 박스를 제거합니다. 점수가 score_threshold 보다 낮은 바운딩 박스는 제거됩니다. N×n 크기의 겹침 값은 정사각형 행렬로 제공되므로 사용자 지정 겹침 기준(예: 합집합 대비 교집합, 면적 대비 교집합 등)을 정의할 수 있습니다.

이 연산의 출력은 선택된 박스를 나타내는 입력 바운딩 박스 컬렉션의 인덱스를 갖는 정수 집합입니다. 선택된 인덱스에 해당하는 바운딩 박스 좌표는 tf.gather operation 사용하여 얻을 수 있습니다. 예를 들면 다음과 같습니다.

selected_indices = tf.image.non_max_suppression_with_overlaps( overlaps, scores, max_output_size, overlap_threshold, score_threshold) selected_boxes = tf.gather(boxes, selected_indices)

논거:

  • 범위: Scope 객체
  • overlaps: n×n 박스 중첩 값을 나타내는 [num_boxes, num_boxes] 형태의 2차원 float 텐서입니다.
  • scores: 각 박스(각 박스 행)에 해당하는 단일 점수를 나타내는 [num_boxes] 형태의 1차원 float 텐서입니다.
  • max_output_size: 비최대 억제(non max suppression)에서 선택될 최대 박스 수를 나타내는 스칼라 정수 텐서입니다.
  • overlap_threshold: 박스가 겹치는지 여부를 결정하는 임계값을 나타내는 0차원 부동 소수점 텐서입니다.
  • score_threshold: 점수를 기준으로 박스를 제거할 시점을 결정하는 임계값을 나타내는 0차원 부동 소수점 텐서입니다.

보고:

  • Output : 박스 텐서에서 선택된 인덱스를 나타내는 [M] 형태의 1차원 정수 텐서입니다. 여기서 M <= max_output_size .

생성자와 소멸자

NonMaxSuppressionWithOverlaps (const :: tensorflow::Scope & scope, :: tensorflow::Input overlaps, :: tensorflow::Input scores, :: tensorflow::Input max_output_size, :: tensorflow::Input overlap_threshold, :: tensorflow::Input score_threshold)

공개 속성

operation
selected_indices

공공 기능

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

공개 속성

작업

Operation operation

선택된 인덱스

::tensorflow::Output selected_indices

공공 기능

겹침이 있는 비최대 억제

 NonMaxSuppressionWithOverlaps(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input overlaps,
  ::tensorflow::Input scores,
  ::tensorflow::Input max_output_size,
  ::tensorflow::Input overlap_threshold,
  ::tensorflow::Input score_threshold
)

마디

::tensorflow::Node * node() const 

연산자::텐서플로우::입력

 operator::tensorflow::Input() const 

연산자::텐서플로우::출력

 operator::tensorflow::Output() const