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).

ImageClassifier obsługuje te typy przestrzeni kolorów:

Parametry
obraz do przetwarzania obiektu MediaPipe MPImage.
Rzuty
jeśli wystąpił błąd wewnętrzny.

public ImageClassifierResult classify (obraz MPImage, ImageProcessingOptions imageProcessingOptions)

Przeprowadza klasyfikację na podanym pojedynczym obrazie. Używaj tej metody tylko wtedy, gdy tworzony jest ImageClassifier za pomocą ERROR(/RunningMode.IMAGE).

ImageClassifier obsługuje te typy przestrzeni kolorów:

Parametry
obraz do przetwarzania obiektu MediaPipe MPImage.
imageProcessingOptions ImageProcessingOptions określający sposób przetwarzania obrazu wejściowego przed uruchomieniem wnioskowania.
Rzuty
jeśli wystąpił błąd wewnętrzny.

public 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. Używaj tej metody tylko wtedy, gdy ImageClassifier zostaje utworzony za pomocą ERROR(/RunningMode.LIVE_STREAM).

Podanie sygnatury czasowej (w milisekundach), która wskazuje, kiedy obraz wejściowy jest wysyłany do detektora obiektów, jest wymagany. Podane sygnatury czasowe muszą rosnąć monotonicznie.

ImageClassifier obsługuje te typy przestrzeni kolorów:

Parametry
obraz do przetwarzania obiektu MediaPipe MPImage.
imageProcessingOptions ImageProcessingOptions określający sposób przetwarzania obrazu wejściowego przed uruchomieniem wnioskowania.
timestampMs wejściową sygnaturę czasową (w milisekundach).
Rzuty
jeśli wystąpił błąd wewnętrzny.

public void classifyAsync (obraz MPImage, długie sygnatura czasowa)

Wysyła aktywne dane obrazu w celu przeprowadzenia klasyfikacji z domyślnymi opcjami przetwarzania obrazu, tj.wykorzystanie całego obrazu jako odpowiedniego regionu bez żadnej rotacji. Wyniki będą dostępne za pomocą funkcji OutputHandler.ResultListener podanej w interfejsie ImageClassifier.ImageClassifierOptions. Używaj tej metody tylko wtedy, gdy obiekt ImageClassifier został utworzony za pomocą ERROR(/RunningMode.LIVE_STREAM).

Podanie sygnatury czasowej (w milisekundach), która wskazuje, kiedy obraz wejściowy jest wysyłany do detektora obiektów, jest wymagany. Podane sygnatury czasowe muszą rosnąć monotonicznie.

ImageClassifier obsługuje te typy przestrzeni kolorów:

Parametry
obraz do przetwarzania obiektu MediaPipe MPImage.
timestampMs wejściową sygnaturę czasową (w milisekundach).
Rzuty
jeśli wystąpił błąd wewnętrzny.

public ImageClassifierResult classifyForVideo (obraz MPImage, długie sygnatury czasowe)

Przeprowadza klasyfikację w podanej ramce wideo 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 ImageClassifier zostaje utworzony za pomocą ERROR(/RunningMode.VIDEO).

Wymagane jest podanie sygnatury czasowej klatki wideo (w milisekundach). Wejściowe sygnatury czasowe muszą rosnąć monotonicznie.

ImageClassifier obsługuje te typy przestrzeni kolorów:

Parametry
obraz do przetwarzania obiektu MediaPipe MPImage.
timestampMs wejściową sygnaturę czasową (w milisekundach).
Rzuty
jeśli wystąpił błąd wewnętrzny.

public ImageClassifierResult classifyForVideo (obraz MPImage, ImageProcessingOptions imageProcessingOptions, long timestampMs)

Przeprowadza klasyfikację w podanej klatce wideo. Używaj tej metody tylko wtedy, gdy tworzony jest ImageClassifier za pomocą ERROR(/RunningMode.VIDEO).

Wymagane jest podanie sygnatury czasowej klatki wideo (w milisekundach). Wejściowe sygnatury czasowe muszą rosnąć monotonicznie.

ImageClassifier obsługuje te typy przestrzeni kolorów:

Parametry
obraz do przetwarzania obiektu MediaPipe MPImage.
imageProcessingOptions ImageProcessingOptions określający sposób przetwarzania obrazu wejściowego przed uruchomieniem wnioskowania.
timestampMs wejściową sygnaturę czasową (w milisekundach).
Rzuty
jeśli wystąpił błąd wewnętrzny.

public static ImageClassifier createFromBuffer (Kontekst kontekstu, ByteBuffer modelBuffer)

Tworzy instancję ImageClassifier z bufora modelu i domyślnej wartości ImageClassifier.ImageClassifierOptions.

Parametry
sytuacja ERROR(/Context) na Androidzie.
modelBuffer bezpośrednia ByteBuffer lub ERROR(/MappedByteBuffer) modelu klasyfikacji.
Rzuty
jeśli podczas tworzenia zbioru danych ImageClassifier wystąpi błąd.

public static ImageClassifier createFromFile (Kontekst kontekstu, String modelPath)

Tworzy instancję ImageClassifier z pliku modelu i domyślny element ImageClassifier.ImageClassifierOptions.

Parametry
sytuacja ERROR(/Context) na Androidzie.
modelPath ścieżki do modelu klasyfikacji w zasobach.
Rzuty
jeśli podczas tworzenia zbioru danych ImageClassifier wystąpi błąd.

public static ImageClassifier createFromFile (Kontekst kontekst, Plik modelFile)

Tworzy instancję ImageClassifier z pliku modelu i domyślny element ImageClassifier.ImageClassifierOptions.

Parametry
sytuacja ERROR(/Context) na Androidzie.
modelFile instancję modelu klasyfikacji File.
Rzuty
IOException jeśli podczas otwierania pliku modelu tflite wystąpi błąd wejścia-wyjścia.
jeśli podczas tworzenia zbioru danych ImageClassifier wystąpi błąd.

public static ImageClassifier createFromOptions (Kontekst kontekstowy, opcje ImageClassifier.ImageClassifierOptions)

Parametry
sytuacja ERROR(/Context) na Androidzie.
Opcje instancję ImageClassifier.ImageClassifierOptions.
Rzuty
jeśli podczas tworzenia zbioru danych ImageClassifier wystąpi błąd.