ImageSegmenter

publiczna klasa końcowa ImageSegmenter

Wykonuje segmentację obrazów.

Interfejs API oczekuje modelu TFLite z metadanymi modelu TFLite. .

Interfejs API obsługuje modele z jednym tensorem wejściowym obrazu i jednym tensorem wyjściowym. Mówiąc dokładniej, oto wymagania.

  • Tensor obrazu wejściowego ( kTfLiteUInt8 / kTfLiteFloat32 )
    • wprowadzanie obrazu o rozmiarze [batch x height x width x channels] .
    • wnioskowanie wsadowe nie jest obsługiwane (wymagana jest batch 1).
    • obsługiwane są tylko wejścia RGB (wymagane są 3 channels ).
    • jeśli typ to kTfLiteFloat32 , do metadanych należy dołączyć NormalizationOptions w celu normalizacji danych wejściowych.
  • Tensor obrazu wyjściowego ( kTfLiteUInt8 / kTfLiteFloat32 )
    • tensor rozmiaru [batch x mask_height x mask_width x num_classes] , gdzie batch musi wynosić 1, mask_width i mask_height to wymiary masek segmentacji tworzonych przez model, a num_classes to liczba klas obsługiwanych przez model.
    • opcjonalne (ale zalecane) mapy etykiet można dołączyć jako pliki AssociatedFile typu TENSOR_AXIS_LABELS, zawierające jedną etykietę w linii. Pierwszy taki AssociatedFile (jeśli istnieje) jest używany do wypełnienia nazwy klasy, tj. ColoredLabel.getlabel() wyników. Nazwa wyświetlana, tj. ColoredLabel.getDisplayName() , jest wypełniana z pliku AssociatedFile (jeśli istnieje), którego ustawienia regionalne odpowiadają polu `display_names_locale` w opcji `ImageSegmenterOptions` używanej w czasie tworzenia (domyślnie „en”, tj. w języku angielskim). Jeśli żaden z nich nie jest dostępny, wypełnione zostanie jedynie pole „indeks” wyników.

Przykład takiego modelu można znaleźć na TensorFlow Hub. .

Klasy zagnieżdżone

klasa ImageSegmenter.ImageSegmenterOptions Opcje konfiguracji ImageSegmenter .

Metody publiczne

statyczny segmentator obrazów
createFromBuffer ( ByteBuffer modelBuffer)
Tworzy instancję ImageSegmenter z buforem modelu i domyślnym ImageSegmenter.ImageSegmenterOptions .
statyczny segmentator obrazów
statyczny segmentator obrazów
createFromFile (kontekst kontekstowy, String modelPath)
Tworzy instancję ImageSegmenter na podstawie domyślnej ImageSegmenter.ImageSegmenterOptions .
statyczny segmentator obrazów
createFromFile ( plik modelFile)
Tworzy instancję ImageSegmenter na podstawie domyślnej ImageSegmenter.ImageSegmenterOptions .
statyczny segmentator obrazów
statyczny segmentator obrazów
Lista < Segmentacja >
segment (długa ramkaBufferHandle, opcje ImageProcessingOptions )
Lista < Segmentacja >
segment (obraz TensorImage )
Wykonuje rzeczywistą segmentację dostarczonego obrazu.
Lista < Segmentacja >
segment (obraz MlImage )
Wykonuje rzeczywistą segmentację na dostarczonym MlImage .
Lista < Segmentacja >
segment (obraz TensorImage , opcje ImageProcessingOptions )
Wykonuje rzeczywistą segmentację dostarczonego obrazu za pomocą ImageProcessingOptions .
Lista < Segmentacja >
segment (obraz MlImage , opcje ImageProcessingOptions )
Wykonuje rzeczywistą segmentację na dostarczonym MlImage z ImageProcessingOptions .

Metody dziedziczone

Metody publiczne

publiczny statyczny ImageSegmenter createFromBuffer ( ByteBuffer modelBuffer)

Tworzy instancję ImageSegmenter z buforem modelu i domyślnym ImageSegmenter.ImageSegmenterOptions .

Parametry
Bufor modelu bezpośredni ByteBuffer lub MappedByteBuffer modelu segmentacji
Rzuca
Wyjątek IllegalStateException jeśli wystąpił błąd wewnętrzny
Wyjątek czasu wykonania jeśli wystąpi inny nieokreślony błąd
Wyjątek IllegalArgument jeśli bufor modelu nie jest bezpośrednim ByteBuffer lub MappedByteBuffer

public static ImageSegmenter createFromBufferAndOptions (opcje ByteBuffer modelBuffer, ImageSegmenter.ImageSegmenterOptions )

Tworzy instancję ImageSegmenter z buforem modelu i ImageSegmenter.ImageSegmenterOptions .

Parametry
Bufor modelu bezpośredni ByteBuffer lub MappedByteBuffer modelu segmentacji
opcje
Rzuca
Wyjątek IllegalStateException jeśli wystąpił błąd wewnętrzny
Wyjątek czasu wykonania jeśli wystąpi inny nieokreślony błąd
Wyjątek IllegalArgument jeśli bufor modelu nie jest bezpośrednim ByteBuffer lub MappedByteBuffer

public static ImageSegmenter createFromFile (kontekst kontekstowy, string modelPath)

Tworzy instancję ImageSegmenter na podstawie domyślnej ImageSegmenter.ImageSegmenterOptions .

Parametry
kontekst
Ścieżka modelu ścieżka modelu segmentacji z metadanymi w zasobach
Rzuca
Wyjątek IO jeśli wystąpi błąd we/wy podczas ładowania modelu tflite
Wyjątek IllegalArgument jeśli argument jest nieprawidłowy
Wyjątek IllegalStateException jeśli wystąpił błąd wewnętrzny
Wyjątek czasu wykonania jeśli wystąpi inny nieokreślony błąd

publiczny statyczny ImageSegmenter createFromFile ( plik modelFile)

Tworzy instancję ImageSegmenter na podstawie domyślnej ImageSegmenter.ImageSegmenterOptions .

Parametry
plik modelu model segmentacji Instancja File
Rzuca
Wyjątek IO jeśli wystąpi błąd we/wy podczas ładowania modelu tflite
Wyjątek IllegalArgument jeśli argument jest nieprawidłowy
Wyjątek IllegalStateException jeśli wystąpił błąd wewnętrzny
Wyjątek czasu wykonania jeśli wystąpi inny nieokreślony błąd

public static ImageSegmenter createFromFileAndOptions ( Opcje pliku modelFile, ImageSegmenter.ImageSegmenterOptions )

Parametry
plik modelu model segmentacji Instancja File
opcje
Rzuca
Wyjątek IO jeśli wystąpi błąd we/wy podczas ładowania modelu tflite
Wyjątek IllegalArgument jeśli argument jest nieprawidłowy
Wyjątek IllegalStateException jeśli wystąpił błąd wewnętrzny
Wyjątek czasu wykonania jeśli wystąpi inny nieokreślony błąd

public static ImageSegmenter createFromFileAndOptions (kontekst kontekstowy, String modelPath, opcje ImageSegmenter.ImageSegmenterOptions )

Parametry
kontekst
Ścieżka modelu ścieżka modelu segmentacji z metadanymi w zasobach
opcje
Rzuca
Wyjątek IO jeśli wystąpi błąd we/wy podczas ładowania modelu tflite
Wyjątek IllegalArgument jeśli argument jest nieprawidłowy
Wyjątek IllegalStateException jeśli wystąpił błąd wewnętrzny
Wyjątek czasu wykonania jeśli wystąpi inny nieokreślony błąd

public List < Segmentacja > segment (długa ramkaBufferHandle, opcje ImageProcessingOptions )

Parametry
uchwyt bufora ramki
opcje

lista publiczna <segmentacja> segment (obraz TensorImage )

Wykonuje rzeczywistą segmentację dostarczonego obrazu.

ImageSegmenter obsługuje następujące typy przestrzeni kolorów TensorImage :

Parametry
obraz obiekt TensorImage UINT8, który reprezentuje obraz RGB lub YUV
Zwroty
  • wyniki przeprowadzenia segmentacji obrazu. Należy pamiętać, że w tym momencie oczekuje się zwrócenia pojedynczego elementu Segmentation . Wynik jest przechowywany na List w celu późniejszego rozszerzenia na przykład do modeli segmentacji instancji, które mogą zwracać jedną segmentację na obiekt.
Rzuca
Wyjątek IllegalStateException jeśli wystąpił błąd wewnętrzny
Wyjątek czasu wykonania jeśli wystąpi inny nieokreślony błąd
Wyjątek IllegalArgument jeśli typ przestrzeni kolorów obrazu nie jest obsługiwany

lista publiczna <segmentacja> segment (obraz MlImage )

Wykonuje rzeczywistą segmentację na dostarczonym MlImage .

Parametry
obraz MlImage do segmentacji.
Zwroty
  • wyniki przeprowadzenia segmentacji obrazu. Należy pamiętać, że w tym momencie oczekuje się zwrócenia pojedynczego elementu Segmentation . Wynik jest przechowywany na List w celu późniejszego rozszerzenia na przykład do modeli segmentacji instancji, które mogą zwracać jedną segmentację na obiekt.
Rzuca
Wyjątek IllegalStateException jeśli wystąpił błąd wewnętrzny
Wyjątek czasu wykonania jeśli wystąpi inny nieokreślony błąd
Wyjątek IllegalArgument jeśli typ przechowywania lub format obrazu nie jest obsługiwany

lista publiczna <segmentacja> segment (obraz TensorImage , opcje ImageProcessingOptions )

Wykonuje rzeczywistą segmentację dostarczonego obrazu za pomocą ImageProcessingOptions .

ImageSegmenter obsługuje następujące typy przestrzeni kolorów TensorImage :

ImageSegmenter obsługuje następujące opcje:

Parametry
obraz obiekt TensorImage UINT8, który reprezentuje obraz RGB lub YUV
opcje opcje konfigurują sposób wstępnego przetwarzania obrazu
Zwroty
  • wyniki przeprowadzenia segmentacji obrazu. Należy pamiętać, że w tym momencie oczekuje się zwrócenia pojedynczego elementu Segmentation . Wynik jest przechowywany na List w celu późniejszego rozszerzenia na przykład do modeli segmentacji instancji, które mogą zwracać jedną segmentację na obiekt.
Rzuca
Wyjątek IllegalStateException jeśli wystąpił błąd wewnętrzny
Wyjątek czasu wykonania jeśli wystąpi inny nieokreślony błąd
Wyjątek IllegalArgument jeśli typ przestrzeni kolorów obrazu nie jest obsługiwany

public List < Segmentacja > segment (obraz MlImage , opcje ImageProcessingOptions )

Wykonuje rzeczywistą segmentację na dostarczonym MlImage z ImageProcessingOptions .

ImageSegmenter obsługuje następujące opcje:

Parametry
obraz MlImage do segmentacji.
opcje opcje konfigurują sposób wstępnego przetwarzania obrazu.
Zwroty
  • wyniki przeprowadzenia segmentacji obrazu. Należy pamiętać, że w tym momencie oczekuje się zwrócenia pojedynczego elementu Segmentation . Wynik jest przechowywany na List w celu późniejszego rozszerzenia na przykład do modeli segmentacji instancji, które mogą zwracać jedną segmentację na obiekt.
Rzuca
Wyjątek IllegalStateException jeśli wystąpił błąd wewnętrzny
Wyjątek czasu wykonania jeśli wystąpi inny nieokreślony błąd
Wyjątek IllegalArgument jeśli typ przestrzeni kolorów obrazu nie jest obsługiwany