텐서플로우:: 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