Azalan puan sırasına göre sınırlayıcı kutuların bir alt kümesini açgözlülükle seçer,
Bu işlem, tüm sınıflarda toplu iş başına girişlerde non_max_suppression işlemini gerçekleştirir. Daha önce seçilen kutularla yüksek kesişme-birleşim (IOU) çakışmasına sahip olan kutuları budayıp atar. Sınırlayıcı kutular [y1, x1, y2, x2] olarak sağlanır; burada (y1, x1) ve (y2, x2), herhangi bir köşegen kutu köşesi çiftinin koordinatlarıdır ve koordinatlar normalleştirilmiş olarak sağlanabilir (yani, aralık [0, 1]) veya mutlak. Bu algoritmanın orijinin koordinat sisteminde nerede olduğuna bağlı olmadığını unutmayın. Ayrıca bu algoritmanın koordinat sisteminin ortogonal dönüşümleri ve ötelemeleriyle değişmez olduğuna dikkat edin; dolayısıyla koordinat sisteminin çevrilmesi veya yansıtılması, algoritma tarafından aynı kutuların seçilmesine neden olur. Bu işlemin çıktısı, non_max_suppression gerçekleştirildikten sonra döndürülen son kutular, puanlar ve sınıf tensörüdür.
İç İçe Sınıflar
sınıf | CombinedNonMaxSuppression.Options | CombinedNonMaxSuppression için isteğe bağlı özellikler |
Genel Yöntemler
statik CombinedNonMaxSuppression.Options | ClipBox'lar (Boolean ClipBox'lar) |
Statik KombineNonMaxSuppression | create ( Kapsam kapsamı, İşlenen <Float> kutuları, İşlenen <Float> puanları, İşlenen <Tamsayı> maxOutputSizePerClass, İşlenen <Tamsayı> maxTotalSize, İşlenen <Float> iouThreshold, İşlenen <Float> ScoreThreshold, Seçenekler... seçenekleri) Yeni bir CombinedNonMaxSuppression işlemini saran bir sınıf oluşturmaya yönelik fabrika yöntemi. |
Çıkış <Kamanma> | nmsedBox'lar () Maksimum olmayan bastırılmış kutuları içeren bir [batch_size, max_detections, 4] float32 tensörü. |
Çıkış <Kamanma> | nmsedSınıflar () Kutulara ilişkin sınıfları içeren bir [batch_size, max_detections] float32 tensörü. |
Çıkış <Kamanma> | nmsedScores () Kutulara ilişkin puanları içeren bir [batch_size, max_detections] float32 tensörü. |
statik CombinedNonMaxSuppression.Options | padPerClass (Boolean padPerClass) |
Çıkış <Tamsayı> | geçerliDetections () Toplu öğe başına geçerli algılama sayısını belirten bir [batch_size] int32 tensörü. |
Kalıtsal Yöntemler
Genel Yöntemler
public static CombinedNonMaxSuppression.Options ClipBoxes (Boolean ClipBoxes)
Parametreler
Klip Kutuları | Doğruysa, kutu koordinatlarının [0, 1] arasında olduğunu varsayalım ve [0, 1]'in ötesine düşüyorlarsa çıkış kutularını kırpın. Yanlışsa, kırpma yapmayın ve kutu koordinatlarını olduğu gibi çıkarın. |
---|
public static CombinedNonMaxSuppression create ( Kapsam kapsamı, İşlenen <Float> kutuları, İşlenen <Float> puanları, İşlenen <Tamsayı> maxOutputSizePerClass, İşlenen <Tamsayı> maxTotalSize, İşlenen <Float> iouThreshold, İşlenen <Float> ScoreThreshold, Seçenekler... seçenekleri)
Yeni bir CombinedNonMaxSuppression işlemini saran bir sınıf oluşturmaya yönelik fabrika yöntemi.
Parametreler
kapsam | mevcut kapsam |
---|---|
kutular | '[batch_size, num_boxes, q, 4]' şeklindeki 4 boyutlu kayan tensör. Eğer 'q' 1 ise tüm sınıflar için aynı kutular kullanılır, aksi takdirde 'q' sınıf sayısına eşitse sınıfa özel kutular kullanılır. |
puanlar | Her kutuya (kutuların her satırı) karşılık gelen tek bir puanı temsil eden "[batch_size, num_boxes, num_classes]" şeklindeki 3 boyutlu kayan tensör. |
maxOutputSizePerClass | Sınıf başına maksimum olmayan bastırma tarafından seçilecek maksimum kutu sayısını temsil eden bir skaler tamsayı tensörü |
maxToplamBoyut | Tüm sınıflarda tutulan maksimum kutu sayısını temsil eden bir int32 skaler. Bu değerin büyük bir sayıya ayarlanmasının sistem iş yüküne bağlı olarak OOM hatasına yol açabileceğini unutmayın. |
iouEşik | Kutuların IOU'ya göre çok fazla örtüşüp örtüşmediğine karar vermek için eşiği temsil eden 0-D kayan tensör. |
puanEşik | Puana göre kutuların ne zaman kaldırılacağına karar verme eşiğini temsil eden 0-D kayan tensör. |
seçenekler | isteğe bağlı nitelik değerlerini taşır |
İadeler
- CombinedNonMaxSuppression'ın yeni bir örneği
genel Çıkış <Float> nmsedBoxes ()
Maksimum olmayan bastırılmış kutuları içeren bir [batch_size, max_detections, 4] float32 tensörü.
genel Çıkış <Float> nmsedClasses ()
Kutulara ilişkin sınıfları içeren bir [batch_size, max_detections] float32 tensörü.
public Çıktı <Float> nmsedScores ()
Kutulara ilişkin puanları içeren bir [batch_size, max_detections] float32 tensörü.
public static CombinedNonMaxSuppression.Options padPerClass (Boolean padPerClass)
Parametreler
padPerClass | Yanlışsa çıktı nmsed kutuları, puanları ve sınıfları "max_total_size" değerine eklenir/kırpılır. Doğruysa, çıktı nmsed kutuları, puanlar ve sınıflar, "max_total_size" değerini aşmadığı sürece "max_size_per_class"*"num_classes" uzunluğunda olacak şekilde doldurulur; bu durumda "max_total_size" olarak kırpılır. Varsayılan olarak false olur. |
---|
genel Çıkış <Tamsayı> validDetections ()
Toplu öğe başına geçerli algılama sayısını belirten bir [batch_size] int32 tensörü. nms_boxes[i], nms_scores[i] ve nms_class[i] içindeki yalnızca en üstteki num_detections[i] girişleri geçerlidir. Girişlerin geri kalanı sıfır dolgudur.