BoundingBoxUtil

class final publik BoundingBoxUtil

Class helper untuk mengonversi nilai yang mewakili kotak pembatas menjadi persegi panjang.

Class ini menyediakan fungsi statis untuk membuat kotak pembatas sebagai RectF dari berbagai jenis konfigurasi.

Umumnya, kotak pembatas dapat dinyatakan oleh 4 nilai float, tetapi nilai tersebut dapat ditafsirkan dengan berbagai cara. Sekarang kami mendukung 3 konfigurasi BoundingBoxUtil.Type, dan urutan elemen di setiap jenis juga dapat dikonfigurasi.

Class Bertingkat

enum BoundingBoxUtil.CoordinateType Menunjukkan apakah koordinat adalah piksel sebenarnya atau rasio relatif. 
enum BoundingBoxUtil.Type Menunjukkan cara kotak pembatas ditampilkan. 

Metode Publik

statis List<RectF>
convert(tensor TensorBuffer, int[] valueIndex, int boundingBoxAxis, jenis BoundingBoxUtil.Type, BoundingBoxUtil.CoordinateType CoordinateType, int height, lebar int)
Membuat daftar kotak pembatas dari TensorBuffer yang mewakili kotak pembatas.

Metode Turunan

Metode Publik

publik statis List<RectF> convert (TensorBuffer tensor, int[] valueIndex, int boundingBoxAxis, BoundingBoxUtil.Type type, BoundingBoxUtil.CoordinateType CoordinateType, int height, int width)

Membuat daftar kotak pembatas dari TensorBuffer yang mewakili kotak pembatas.

Parameter
Tensor menyimpan data yang mewakili beberapa kotak.
valueIndex menunjukkan urutan elemen yang didefinisikan dalam setiap jenis kotak pembatas. Array indeks kosong mewakili urutan default setiap jenis kotak pembatas. Misalnya, untuk menunjukkan urutan default BOUNDARIES, {left, top, right, bottom}, indeksnya harus {0, 1, 2, 3}. Untuk menunjukkan urutan {kiri, kanan, atas, bawah}, urutannya harus {0, 2, 1, 3}.

Array indeks dapat diterapkan ke semua jenis kotak pembatas untuk menyesuaikan urutan elemen dasarnya yang sesuai.

boundingBoxAxis menentukan indeks dimensi yang mewakili kotak pembatas. Ukuran untuk dimensi tersebut harus 4. Indeks di sini dimulai dari 0. Misalnya, jika tensor memiliki bentuk 4x10, sumbu untuk kotak pembatas cenderung 0. Sumbu negatif juga didukung: -1 memberikan sumbu terakhir dan -2 memberikan sumbu kedua, .etc. Untuk bentuk 10x4, sumbu cenderung bernilai 1 (atau -1, ekuivalen).
tipe mendefinisikan bagaimana nilai harus dikonversi menjadi kotak. Lihat BoundingBoxUtil.Type
coordinateType mendefinisikan bagaimana nilai ditafsirkan sebagai koordinat. Lihat BoundingBoxUtil.CoordinateType
tinggi tinggi gambar tempat kotak-kotak itu berada. Hanya memiliki efek jika coordinateType adalah BoundingBoxUtil.CoordinateType.RATIO
lebar lebar gambar tempat kotak-kotak itu berada. Hanya memiliki efek jika coordinateType adalah BoundingBoxUtil.CoordinateType.RATIO
Hasil
  • Daftar kotak pembatas yang diwakili oleh tensor. Semua dimensi kecuali boundingBoxAxis akan diciutkan dengan urutan yang dipertahankan. Misalnya, dengan tensor dengan bentuk {1, 4, 10, 2}, dan boundingBoxAxis = 1, hasilnya akan berupa daftar 20 kotak pembatas.
Menampilkan
IllegalArgumentException jika ukuran dimensi kotak pembatas (ditetapkan oleh boundingBoxAxis) bukan 4.
IllegalArgumentException jika boundingBoxAxis tidak ada dalam (-(D+1), D) yang mana D adalah jumlah dimensi dari tensor.
IllegalArgumentException jika tensor memiliki jenis data selain DataType.FLOAT32.