ImageClassifier

publiczna klasa końcowego ImageClassifier

Przeprowadza klasyfikację obrazów.

Interfejs API oczekuje modelu TFLite z opcjonalnymi, ale zdecydowanie zalecanymi metadanymi modelu TFLite.

Interfejs API obsługuje modele z 1 tensorem wejściowym obrazu i co najmniej 1 tensorem wyjściowym. Oto wymagania.

  • Tensor obrazu wejściowego (kTfLiteUInt8/kTfLiteFloat32)
    • obraz o rozmiarze [batch x height x width x channels].
    • wnioskowanie zbiorcze nie jest obsługiwane (wartość batch musi wynosić 1).
    • obsługiwane są tylko wejścia RGB (wartość channels musi wynosić 3).
    • W przypadku typu kTfLiteFloat32 do metadanych należy dołączyć atrybut NormalizationOptions w celu normalizacji danych wejściowych.
  • Co najmniej 1 tensor wyjściowy (kTfLiteUInt8/kTfLiteFloat32) z:
    • N klasy i 2 lub 4 wymiary, tj. [1 x N] lub [1 x 1 x 1 x N]
    • opcjonalne (ale zalecane) mapy etykiet jako Powiązane pliki typu TENSOR_AXIS_LABELS zawierające po jednej etykiecie w wierszu. Pierwszy taki element AssociatedFile (jeśli występuje) jest używany do wypełnienia pola class_name wyników. Pole display_name jest wypełniane na podstawie pliku AssociatedFile (jeśli występuje), którego język jest zgodny z polem display_names_locale pola ImageClassifierOptions używanego podczas tworzenia („en” – domyślnie, tj. angielskim). Jeśli żadna z tych opcji nie jest dostępna, wypełnione będzie tylko pole index.
    • opcjonalną kalibrację wyników można dołączyć za pomocą opcji ScoreCalibrationOptions i elementu AssociatedFile typu TENSOR_AXIS_SCORE_CALIBRATION. Więcej informacji znajdziesz na stronie metadata_schema.fbs.

Przykład takiego modelu znajdziesz tutaj.

Zagnieżdżone klasy

klasa ImageClassifier.ImageClassifierOptions Opcje konfiguracji i usługi ImageClassifier

Metody publiczne

ImageClassifierResult
classify(obraz MPImage)
Przeprowadza klasyfikację na przesłanym pojedynczym obrazie z domyślnymi opcjami przetwarzania obrazu, tj.
ImageClassifierResult
classify(obraz MPImage, opcje przetwarzania obrazu ImageProcessingOptions)
Przeprowadza klasyfikację na podanym pojedynczym obrazie.
void
classifyAsync(obraz MPImage, ImageProcessingOptions imageProcessingOptions, długi timestampMs)
Wysyła bieżące dane obrazu do klasyfikacji, a wyniki będą dostępne przez interfejs OutputHandler.ResultListener w interfejsie ImageClassifier.ImageClassifierOptions.
void
classifyAsync(obraz MPImage, długie sygnatury czasowe)
Wysyła aktywne dane obrazu w celu przeprowadzenia klasyfikacji z użyciem domyślnych opcji przetwarzania obrazu, np.
ImageClassifierResult
classifyForVideo(obraz MPImage, długie sygnatury czasowe)
Przeprowadza klasyfikację w dostarczonej ramce wideo z domyślnymi opcjami przetwarzania obrazu, tj.
ImageClassifierResult
classifyForVideo(obraz MPImage, ImageProcessingOptions imageProcessingOptions, długi timestampMs)
Przeprowadza klasyfikację w podanej klatce wideo.
statyczny ImageClassifier
createFromBuffer(kontekst kontekst, ByteBuffer modelBuffer)
Tworzy instancję ImageClassifier z bufora modelu i domyślnej wartości ImageClassifier.ImageClassifierOptions.
statyczny ImageClassifier
createFromFile(Kontekst; ciąg znaków modelPath)
Tworzy instancję ImageClassifier z pliku modelu i domyślny element ImageClassifier.ImageClassifierOptions.
statyczny ImageClassifier
createFromFile(kontekst; plik modelFile)
Tworzy instancję ImageClassifier z pliku modelu i domyślny element ImageClassifier.ImageClassifierOptions.
statyczny ImageClassifier

Metody dziedziczone

Metody publiczne

public ImageClassifierResult classify (obraz MPImage)

Przeprowadza klasyfikację na przesłanym pojedynczym obrazie z domyślnymi opcjami przetwarzania obrazu, tj. wykorzystuje cały obraz jako interesujący Cię region bez żadnej rotacji. Używaj tej metody tylko wtedy, gdy obiekt ImageClassifier został utworzony za pomocą metody ERROR(/RunningMode.IMAGE).