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