ImageEmbedder

class final public ImageEmbedder

Melakukan ekstraksi penyematan pada gambar.

API mengharapkan model TFLite dengan Metadata Model TFLite opsional, tetapi sangat direkomendasikan.

API mendukung model dengan satu tensor input gambar dan satu atau beberapa tensor output. Untuk lebih spesifik, berikut persyaratannya.

  • Tensor image input (kTfLiteUInt8/kTfLiteFloat32)
    • Input gambar dengan ukuran [batch x height x width x channels].
    • inferensi batch tidak didukung (batch harus 1).
    • hanya input RGB yang didukung (channels harus 3).
    • jika berjenis kTfLiteFloat32, NormalizationOptions perlu dilampirkan ke metadata untuk normalisasi input.
  • Setidaknya satu tensor output (kTfLiteUInt8/kTfLiteFloat32) dengan bentuk [1 x N] dengan N adalah jumlah dimensi dalam embedding yang dihasilkan.

Class Bertingkat

class ImageEmbedder.ImageEmbedderOptions Opsi untuk menyiapkan dan ImageEmbedder

Metode Publik

statis ganda
cosineSimilarity(Embedding u, Embedding v)
Fungsi utilitas untuk menghitung kesamaan kosinus antara dua objek Embedding.
statis ImageEmbedder
createFromBuffer(Konteks konteks, modelBuffer ByteBuffer)
Membuat instance ImageEmbedder dari buffering model dan ImageEmbedder.ImageEmbedderOptions default.
statis ImageEmbedder
createFromFile(Konteks konteks, String modelPath)
Membuat instance ImageEmbedder dari file model dan ImageEmbedder.ImageEmbedderOptions default.
statis ImageEmbedder
createFromFile(Konteks konteks, File modelFile)
Membuat instance ImageEmbedder dari file model dan ImageEmbedder.ImageEmbedderOptions default.
statis ImageEmbedder
ImageEmbedderResult
embed(gambar MPImage, ImageProcessingOptions imageProcessingOptions)
Melakukan ekstraksi penyematan pada satu gambar yang disediakan.
ImageEmbedderResult
embed(gambar MPImage)
Melakukan ekstraksi penyematan pada satu gambar yang disediakan dengan opsi pemrosesan gambar default, yaitu
void
embedAsync(gambar MPImage, ImageProcessingOptions imageProcessingOptions, stempel waktu yang panjang)
Mengirimkan data gambar live untuk melakukan ekstraksi penyematan, dan hasilnya akan tersedia melalui OutputHandler.ResultListener yang disediakan di ImageEmbedder.ImageEmbedderOptions.
void
embedAsync(gambar MPImage, timestampMs panjang)
Mengirim data gambar live untuk melakukan ekstraksi penyematan dengan opsi pemrosesan gambar default, yaitu
ImageEmbedderResult
embedForVideo(gambar MPImage, ImageProcessingOptions imageProcessingOptions, stempel waktu yang panjang)
Melakukan ekstraksi penyematan pada frame video yang disediakan.
ImageEmbedderResult
embedForVideo(gambar MPImage, timestampMs panjang)
Melakukan ekstraksi penyematan pada frame video yang disediakan dengan opsi pemrosesan gambar default, yaitu

Metode Turunan

Metode Publik

publik statis double cosineSimilarity (Embedding u, Embedding v)

Fungsi utilitas untuk menghitung kesamaan kosinus antara dua objek Embedding.

Parameter
u
v
Menampilkan
IllegalArgumentException jika embedding memiliki jenis yang berbeda (float vs. terkuantisasi), memiliki ukuran yang berbeda, atau memiliki norma L2 0.

publik statis ImageEmbedder createFromBuffer (Context context, ByteBuffer modelBuffer)

Membuat instance ImageEmbedder dari buffering model dan ImageEmbedder.ImageEmbedderOptions default.

Parameter
context ERROR(/Context) Android.
modelBuffer ByteBuffer langsung atau ERROR(/MappedByteBuffer) dari model embedding.
Menampilkan
jika terjadi error selama pembuatan ImageEmbedder.

publik statis ImageEmbedder createFromFile (Konteks konteks, String modelPath)

Membuat instance ImageEmbedder dari file model dan ImageEmbedder.ImageEmbedderOptions default.

Parameter
context ERROR(/Context) Android.
modelPath jalur ke model embedding dalam aset.
Menampilkan
jika terjadi error selama pembuatan ImageEmbedder.

publik statis ImageEmbedder createFromFile (Konteks konteks, File modelFile)

Membuat instance ImageEmbedder dari file model dan ImageEmbedder.ImageEmbedderOptions default.

Parameter
context ERROR(/Context) Android.
modelFile instance File model embedding.
Menampilkan
IOException jika terjadi error I/O saat membuka file model tflite.
jika terjadi error selama pembuatan ImageEmbedder.

publik statis ImageEmbedder createFromOptions (Konteks konteks, ImageEmbedder.ImageEmbedderOptions)

Membuat instance ImageEmbedder dari instance ImageEmbedder.ImageEmbedderOptions.

Parameter
context ERROR(/Context) Android.
opsi instance ImageEmbedder.ImageEmbedderOptions.
Menampilkan
jika terjadi error selama pembuatan ImageEmbedder.

publik ImageEmbedderResult embed (MPImage image, ImageProcessingOptions imageProcessingOptions)

Melakukan ekstraksi penyematan pada satu gambar yang disediakan. Hanya gunakan metode ini jika ImageEmbedder dibuat dengan ERROR(/RunningMode.IMAGE).

ImageEmbedder mendukung jenis ruang warna berikut:

Parameter
gambar objek MPImage MediaPipe untuk diproses.
imageProcessingOptions ImageProcessingOptions yang menentukan cara memproses gambar input sebelum menjalankan inferensi.
Menampilkan
jika terjadi error internal.

publik ImageEmbedderResult embed (gambar MPImage)

Melakukan ekstraksi penyematan pada satu gambar yang disediakan dengan opsi pemrosesan gambar default, yaitu menggunakan seluruh gambar sebagai wilayah minat dan tanpa menerapkan rotasi apa pun. Hanya gunakan metode ini saat ImageEmbedder dibuat dengan ERROR(/RunningMode.IMAGE).

ImageEmbedder mendukung jenis ruang warna berikut:

Parameter
gambar objek MPImage MediaPipe untuk diproses.
Menampilkan
jika terjadi error internal.

public void embedAsync (Gambar MPImage, ImageProcessingOptions imageProcessingOptions, stempel waktu yang panjang)

Mengirimkan data gambar live untuk melakukan ekstraksi penyematan, dan hasilnya akan tersedia melalui OutputHandler.ResultListener yang disediakan di ImageEmbedder.ImageEmbedderOptions. Hanya gunakan metode ini jika ImageEmbedder dibuat dengan ERROR(/RunningMode.LIVE_STREAM).

Stempel waktu (dalam milidetik) harus diberikan untuk menunjukkan kapan gambar input dikirim ke detektor objek. Stempel waktu input harus meningkat secara monoton.

ImageEmbedder mendukung jenis ruang warna berikut:

Parameter
gambar objek MPImage MediaPipe untuk diproses.
imageProcessingOptions ImageProcessingOptions yang menentukan cara memproses gambar input sebelum menjalankan inferensi.
timestampMs stempel waktu input (dalam milidetik).
Menampilkan
jika terjadi error internal.

public void embedAsync (gambar MPImage, stempel waktu panjang)

Mengirim data gambar live untuk melakukan ekstraksi penyematan dengan opsi pemrosesan gambar default, yaitu menggunakan seluruh gambar sebagai wilayah menarik tanpa menerapkan rotasi apa pun, dan hasilnya akan tersedia melalui OutputHandler.ResultListener yang disediakan di ImageEmbedder.ImageEmbedderOptions. Hanya gunakan metode ini jika ImageEmbedder dibuat dengan ERROR(/RunningMode.LIVE_STREAM).

Stempel waktu (dalam milidetik) harus diberikan untuk menunjukkan kapan gambar input dikirim ke detektor objek. Stempel waktu input harus meningkat secara monoton.

ImageEmbedder mendukung jenis ruang warna berikut:

Parameter
gambar objek MPImage MediaPipe untuk diproses.
timestampMs stempel waktu input (dalam milidetik).
Menampilkan
jika terjadi error internal.

publik ImageEmbedderResult embedForVideo (gambar MPImage, ImageProcessingOptions imageProcessingOptions, stempel waktu yang panjangMs)

Melakukan ekstraksi penyematan pada frame video yang disediakan. Hanya gunakan metode ini saat ImageEmbedder dibuat dengan ERROR(/RunningMode.VIDEO).

Anda harus memberikan stempel waktu frame video (dalam milidetik). Stempel waktu input harus meningkat secara monoton.

ImageEmbedder mendukung jenis ruang warna berikut:

Parameter
gambar objek MPImage MediaPipe untuk diproses.
imageProcessingOptions ImageProcessingOptions yang menentukan cara memproses gambar input sebelum menjalankan inferensi.
timestampMs stempel waktu input (dalam milidetik).
Menampilkan
jika terjadi error internal.

publik ImageEmbedderResult embedForVideo (gambar MPImage, timestampMs yang panjang)

Melakukan ekstraksi penyematan pada frame video yang disediakan dengan opsi pemrosesan gambar default, yaitu menggunakan seluruh gambar sebagai wilayah minat dan tanpa menerapkan rotasi apa pun. Hanya gunakan metode ini saat ImageEmbedder dibuat dengan ERROR(/RunningMode.VIDEO).

Anda harus memberikan stempel waktu frame video (dalam milidetik). Stempel waktu input harus meningkat secara monoton.

ImageEmbedder mendukung jenis ruang warna berikut:

Parameter
gambar objek MPImage MediaPipe untuk diproses.
timestampMs stempel waktu input (dalam milidetik).
Menampilkan
jika terjadi error internal.