Melakukan klasifikasi 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 (
batchharus 1). - hanya input RGB yang didukung (
channelsharus 3). - jika berjenis kTfLiteFloat32, NormalizationOptions perlu dilampirkan ke metadata untuk normalisasi input.
- Input gambar dengan ukuran
- Setidaknya satu tensor output (
kTfLiteUInt8/kTfLiteFloat32) dengan:- Class
Ndan 2 atau 4 dimensi, yaitu[1 x N]atau[1 x 1 x 1 x N] - peta label opsional (tetapi direkomendasikan) sebagai AssociatedFile-s dengan jenis
TENSOR_AXIS_LABEL, yang berisi satu label per baris. AssociatedFile pertama (jika
ada) digunakan untuk mengisi kolom
class_namedari hasil. Kolomdisplay_namediisi dari AssociatedFile (jika ada) yang lokalnya cocok dengan kolomdisplay_names_localedariImageClassifierOptionsyang digunakan pada waktu pembuatan ("en" secara default, yaitu bahasa Inggris). Jika tidak ada opsi yang tersedia, hanya kolomindexdari hasil yang akan diisi. - kalibrasi skor opsional dapat ditambahkan menggunakan ScoreCalibrationOptions dan AssociatedFile dengan jenis TENSOR_AXIS_Score_CALIBRATION. Lihat metadata_schema.fbs untuk detail selengkapnya.
- Class
Contoh model tersebut dapat ditemukan di TensorFlow Hub.
Class Bertingkat
| class | ImageClassifier.ImageClassifierOptions | Opsi untuk menyiapkan dan ImageClassifier. |
|
Metode Publik
| ImageClassifierResult | |
| ImageClassifierResult |
classify(gambar MPImage, ImageProcessingOptions imageProcessingOptions)
Melakukan klasifikasi pada gambar tunggal yang disediakan.
|
| void |
classifyAsync(gambar MPImage, ImageProcessingOptions imageProcessingOptions, stempel waktu yang panjang)
Mengirim data gambar live untuk melakukan klasifikasi, dan hasilnya akan tersedia melalui
OutputHandler.ResultListener yang disediakan di ImageClassifier.ImageClassifierOptions. |
| void |
classifyAsync(gambar MPImage, timestampMs panjang)
Mengirim data gambar live untuk melakukan klasifikasi dengan opsi pemrosesan gambar default, yaitu
|
| ImageClassifierResult |
classifyForVideo(gambar MPImage, timestampMs panjang)
Melakukan klasifikasi pada frame video yang disediakan dengan opsi pemrosesan gambar default, yaitu
|
| ImageClassifierResult |
classifyForVideo(gambar MPImage, ImageProcessingOptions imageProcessingOptions, stempel waktu yang panjang)
Melakukan klasifikasi pada frame video yang disediakan.
|
| statis ImageClassifier |
createFromBuffer(Konteks konteks, modelBuffer ByteBuffer)
Membuat instance
ImageClassifier dari buffering model dan ImageClassifier.ImageClassifierOptions default. |
| statis ImageClassifier |
createFromFile(Konteks konteks, String modelPath)
Membuat instance
ImageClassifier dari file model dan ImageClassifier.ImageClassifierOptions default. |
| statis ImageClassifier |
createFromFile(Konteks konteks, File modelFile)
Membuat instance
ImageClassifier dari file model dan ImageClassifier.ImageClassifierOptions default. |
| statis ImageClassifier |
createFromOptions(Konteks konteks, opsi ImageClassifier.ImageClassifierOptions)
Membuat instance
ImageClassifier dari instance ImageClassifier.ImageClassifierOptions. |
Metode Turunan
Metode Publik
public ImageClassifierResult mengklasifikasikan (gambar MPImage)
Melakukan klasifikasi pada satu gambar yang disediakan dengan opsi pemrosesan gambar default, yaitu menggunakan seluruh gambar sebagai wilayah menarik dan tanpa menerapkan rotasi apa pun. Hanya gunakan
metode ini saat ImageClassifier dibuat dengan ERROR(/RunningMode.IMAGE).
ImageClassifier mendukung jenis ruang warna berikut:
Parameter
| gambar | objek MPImage MediaPipe untuk diproses. |
|---|
Menampilkan
| jika terjadi error internal. |
publik ImageClassifierResult classify (gambar MPImage, ImageProcessingOptions imageProcessingOptions)
Melakukan klasifikasi pada gambar tunggal yang disediakan. Hanya gunakan metode ini saat ImageClassifier dibuat dengan ERROR(/RunningMode.IMAGE).
ImageClassifier 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. |
public void classifyAsync (Gambar MPImage, ImageProcessingOptions imageProcessingOptions, stempel waktu yang panjang)
Mengirim data gambar live untuk melakukan klasifikasi, dan hasilnya akan tersedia melalui OutputHandler.ResultListener yang disediakan di ImageClassifier.ImageClassifierOptions. Hanya gunakan metode ini jika ImageClassifier 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.
ImageClassifier 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 classifyAsync (gambar MPImage, stempel waktu panjang)
Mengirim data gambar live untuk melakukan klasifikasi 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 ImageClassifier.ImageClassifierOptions. Hanya gunakan metode ini jika ImageClassifier 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.
ImageClassifier mendukung jenis ruang warna berikut:
Parameter
| gambar | objek MPImage MediaPipe untuk diproses. |
|---|---|
| timestampMs | stempel waktu input (dalam milidetik). |
Menampilkan
| jika terjadi error internal. |
publik ImageClassifierResult classifyForVideo (gambar MPImage, timestampMs panjang)
Melakukan klasifikasi 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 jika ImageClassifier dibuat dengan ERROR(/RunningMode.VIDEO).
Anda harus memberikan stempel waktu frame video (dalam milidetik). Stempel waktu input harus meningkat secara monoton.
ImageClassifier mendukung jenis ruang warna berikut:
Parameter
| gambar | objek MPImage MediaPipe untuk diproses. |
|---|---|
| timestampMs | stempel waktu input (dalam milidetik). |
Menampilkan
| jika terjadi error internal. |
publik ImageClassifierResult classifyForVideo (gambar MPImage, ImageProcessingOptions imageProcessingOptions, stempel waktu yang panjang)
Melakukan klasifikasi pada frame video yang disediakan. Hanya gunakan metode ini saat ImageClassifier dibuat dengan ERROR(/RunningMode.VIDEO).
Anda harus memberikan stempel waktu frame video (dalam milidetik). Stempel waktu input harus meningkat secara monoton.
ImageClassifier 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 statis ImageClassifier createFromBuffer (Konteks konteks, ByteBuffer modelBuffer)
Membuat instance ImageClassifier dari buffering model dan ImageClassifier.ImageClassifierOptions default.
Parameter
| context | ERROR(/Context) Android. |
|---|---|
| modelBuffer | ByteBuffer langsung atau ERROR(/MappedByteBuffer) dari model klasifikasi. |
Menampilkan
jika terjadi error selama pembuatan ImageClassifier.
|
publik statis ImageClassifier createFromFile (Konteks konteks, String modelPath)
Membuat instance ImageClassifier dari file model dan ImageClassifier.ImageClassifierOptions default.
Parameter
| context | ERROR(/Context) Android. |
|---|---|
| modelPath | jalur ke model klasifikasi dalam aset. |
Menampilkan
jika terjadi error selama pembuatan ImageClassifier.
|
public statis ImageClassifier createFromFile (Konteks konteks, File modelFile)
Membuat instance ImageClassifier dari file model dan ImageClassifier.ImageClassifierOptions default.
Parameter
| context | ERROR(/Context) Android. |
|---|---|
| modelFile | instance File model klasifikasi. |
Menampilkan
| IOException | jika terjadi error I/O saat membuka file model tflite. |
|---|---|
jika terjadi error selama pembuatan ImageClassifier.
|
publik statis ImageClassifier createFromOptions (Konteks konteks, ImageClassifier.ImageClassifierOptions)
Membuat instance ImageClassifier dari instance ImageClassifier.ImageClassifierOptions.
Parameter
| context | ERROR(/Context) Android. |
|---|---|
| opsi | instance ImageClassifier.ImageClassifierOptions. |
Menampilkan
jika terjadi error selama pembuatan ImageClassifier.
|