aliran tensor:: operasi:: GabunganNonMaxSuppression
#include <image_ops.h>
Dengan rakus memilih subset kotak pembatas dalam urutan skor yang menurun.
Ringkasan
Operasi ini melakukan non_max_suppression pada input per batch, di semua kelas. Memangkas kotak yang memiliki interseksi-over-union (IOU) tinggi yang tumpang tindih dengan kotak yang dipilih sebelumnya. Kotak pembatas diberikan sebagai [y1, x1, y2, x2], di mana (y1, x1) dan (y2, x2) adalah koordinat dari setiap pasangan sudut kotak diagonal dan koordinat dapat diberikan sebagai dinormalisasi (yaitu, terletak di interval [0, 1]) atau absolut. Perhatikan bahwa algoritma ini tidak tergantung pada titik asal dalam sistem koordinat. Perhatikan juga bahwa algoritma ini tidak berubah terhadap transformasi ortogonal dan terjemahan sistem koordinat; sehingga penerjemahan atau refleksi dari sistem koordinat menghasilkan kotak yang sama yang dipilih oleh algoritma. Output dari operasi ini adalah kotak terakhir, skor, dan tensor kelas yang dikembalikan setelah melakukan non_max_suppression.
Argumen:
- ruang lingkup: Objek Lingkup
- kotak: Tensor float 4-D dengan bentuk
[batch_size, num_boxes, q, 4]
. Jikaq
sama dengan 1 maka kotak yang sama digunakan untuk semua kelas, sebaliknya jikaq
sama dengan jumlah kelas, maka kotak khusus kelas digunakan. - skor: Tensor float 3-D dengan bentuk
[batch_size, num_boxes, num_classes]
yang mewakili satu skor yang sesuai dengan setiap kotak (setiap baris kotak). - max_output_size_per_class: Tensor bilangan bulat skalar yang mewakili jumlah maksimum kotak yang akan dipilih dengan penekanan non-maks per kelas
- max_total_size: Skalar yang mewakili jumlah maksimum kotak yang dipertahankan di semua kelas.
- iou_threshold: Tensor float 0-D yang mewakili ambang batas untuk memutuskan apakah kotak terlalu banyak tumpang tindih sehubungan dengan IOU.
- score_threshold: Tensor float 0-D yang mewakili ambang batas untuk memutuskan kapan harus menghapus kotak berdasarkan skor.
Atribut opsional (lihat Attrs
):
- pad_per_class: Jika salah, kotak, skor, dan kelas keluaran nms akan diisi/dipotong ke
max_total_size
. Jika benar, kotak keluaran nms, skor dan kelas akan diisi dengan panjangmax_size_per_class
*num_classes
, kecuali jika melebihimax_total_size
dalam hal ini akan dipotong menjadimax_total_size
. Defaultnya salah. - clip_boxes: Jika benar, asumsikan koordinat kotak berada di antara [0, 1] dan potong kotak keluaran jika berada di luar [0, 1]. Jika salah, jangan lakukan kliping dan tampilkan koordinat kotak apa adanya.
Pengembalian:
-
Output
nmsed_boxes: Tensor [batch_size, max_detections, 4] float32 yang berisi kotak non-maks yang ditekan. -
Output
nmsed_scores: Tensor float32 [batch_size, max_detections] yang berisi skor untuk kotak. -
Output
nmsed_classes: Tensor float32 [batch_size, max_detections] yang berisi kelas untuk kotak. -
Output
valid_detections: Tensor int32 [batch_size] yang menunjukkan jumlah deteksi valid per item batch. Hanya entri num_detections[i] teratas di nms_boxes[i], nms_scores[i] dan nms_class[i] yang valid. Entri lainnya adalah nol bantalan.
Konstruktor dan Destruktor | |
---|---|
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) |
Atribut publik | |
---|---|
nmsed_boxes | |
nmsed_classes | |
nmsed_scores | |
operation | |
valid_detections |
Fungsi statis publik | |
---|---|
ClipBoxes (bool x) | |
PadPerClass (bool x) |
Struktur | |
---|---|
tensorflow:: ops:: GabunganNonMaxSuppression:: Attrs | Penyetel atribut opsional untuk CombinedNonMaxSuppression . |
Atribut publik
nmsed_boxes
::tensorflow::Output nmsed_boxes
nmsed_classes
::tensorflow::Output nmsed_classes
nmsed_scores
::tensorflow::Output nmsed_scores
operasi
Operation operation
deteksi_valid
::tensorflow::Output valid_detections
Fungsi publik
GabunganNonMaxSuppression
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 )
GabunganNonMaxSuppression
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 )
Fungsi statis publik
Kotak Klip
Attrs ClipBoxes( bool x )
PadPerKelas
Attrs PadPerClass( bool x )