Wykonuje wykrywanie obiektów na obrazach.
Interfejs API oczekuje modelu TFLite z metadanymi modelu TFLite. .
Interfejs API obsługuje modele z jednym tensorem wejściowym obrazu i czterema tensorami wyjściowymi. 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.
- wprowadzanie obrazu o rozmiarze
DetectionPostProcess
, tj.:- Tensor lokalizacji (
kTfLiteFloat32
):- tensor rozmiaru
[1 x num_results x 4]
, wewnętrzna tablica reprezentująca ramki ograniczające w postaci [góra, lewa, prawa, dół]. - Wymagane jest dołączenie
BoundingBoxProperties
do metadanych i określenietype=BOUNDARIES
orazcoordinate_type=RATIO
.
- tensor rozmiaru
kTfLiteFloat32
):- tensor rozmiaru
[1 x num_results]
, każda wartość reprezentuje indeks całkowity klasy. - jeśli mapy etykiet są dołączone do metadanych jako pliki powiązane
TENSOR_VALUE_LABELS
, są one używane do konwertowania wartości tensora na etykiety.
kTfLiteFloat32
):- tensor rozmiaru
[1 x num_results]
, każda wartość reprezentuje wynik wykrytego obiektu.
kTfLiteFloat32
):- liczba całkowita num_results jako tensor rozmiaru
[1]
.
Przykład takiego modelu można znaleźć na TensorFlow Hub. .
Klasy zagnieżdżone
klasa | ObjectDetector.ObjectDetectorOptions | Opcje konfiguracji ObjectDetector. |
Metody publiczne
Metody dziedziczone
Metody publiczne
public static ObjectDetector createFromBuffer ( ByteBuffer modelBuffer)
Tworzy instancję ObjectDetector
z buforem modelu i domyślną ObjectDetector.ObjectDetectorOptions
.
Parametry
Bufor modelu | bezpośredni ByteBuffer lub MappedByteBuffer modelu wykrywania |
---|
Rzuca
Wyjątek IllegalArgument | jeśli bufor modelu nie jest bezpośrednim ByteBuffer lub MappedByteBuffer * @throws IllegalStateException jeśli wystąpił błąd wewnętrzny |
---|---|
Wyjątek czasu wykonania | jeśli wystąpi inny nieokreślony błąd |
public static ObjectDetector createFromBufferAndOptions (opcje ByteBuffer modelBuffer, ObjectDetector.ObjectDetectorOptions )
Tworzy instancję ObjectDetector
z buforem modelu i ObjectDetector.ObjectDetectorOptions
.
Parametry
Bufor modelu | bezpośredni ByteBuffer lub MappedByteBuffer modelu wykrywania |
---|---|
opcje |
Rzuca
Wyjątek IllegalArgument | jeśli bufor modelu nie jest bezpośrednim ByteBuffer lub MappedByteBuffer |
---|---|
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 ObjectDetector createFromFile (kontekst kontekstowy, string modelPath)
Tworzy instancję ObjectDetector
z domyślnej instancji ObjectDetector.ObjectDetectorOptions
.
Parametry
kontekst | |
---|---|
Ścieżka modelu | ścieżka do modelu wykrywania 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 |
public static ObjectDetector createFromFile ( plik modelFile)
Tworzy instancję ObjectDetector
z domyślnej instancji ObjectDetector.ObjectDetectorOptions
.
Parametry
plik modelu | model wykrywania 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 ObjectDetector createFromFileAndOptions (kontekst kontekstowy, String modelPath, opcje ObjectDetector.ObjectDetectorOptions )
Tworzy instancję ObjectDetector
z ObjectDetector.ObjectDetectorOptions
.
Parametry
kontekst | |
---|---|
Ścieżka modelu | ścieżka do modelu wykrywania 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 static ObjectDetector createFromFileAndOptions (Opcje pliku modelFile, ObjectDetector.ObjectDetectorOptions )
Tworzy instancję ObjectDetector
z ObjectDetector.ObjectDetectorOptions
.
Parametry
plik modelu | model wykrywania 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 |
lista publiczna <Wykrywanie> wykrywaj (obraz MlImage )
Wykonuje rzeczywiste wykrywanie na dostarczonym MlImage
.
Parametry
obraz | obiekt MlImage reprezentujący obraz |
---|
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 <Wykrywanie> wykrywaj (obraz TensorImage , opcje ImageProcessingOptions )
Wykonuje rzeczywiste wykrywanie na dostarczonym obrazie.
ObjectDetector
obsługuje następujące typy przestrzeni kolorów TensorImage
:
ObjectDetector
obsługuje następujące opcje:
- obrót obrazu (poprzez
ImageProcessingOptions.Builder.setOrientation(ImageProcessingOptions.Orientation)
). Domyślnie jest toImageProcessingOptions.Orientation.TOP_LEFT
.
Parametry
obraz | obiekt TensorImage UINT8, który reprezentuje obraz RGB lub YUV |
---|---|
opcje | opcje umożliwiające skonfigurowanie sposobu wstępnego przetwarzania obrazu |
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 <Wykrywanie> wykryj (obraz MlImage , opcje ImageProcessingOptions )
Wykonuje rzeczywiste wykrywanie na dostarczonym MlImage
z ImageProcessingOptions
.
ObjectDetector
obsługuje następujące opcje:
- obrót obrazu (poprzez
ImageProcessingOptions.Builder.setOrientation(ImageProcessingOptions.Orientation)
). Domyślnie jest toImageProcessingOptions.Orientation.TOP_LEFT
.MlImage.getRotation()
nie jest skuteczna.
Parametry
obraz | obiekt MlImage reprezentujący obraz |
---|---|
opcje | opcje umożliwiające skonfigurowanie sposobu wstępnego przetwarzania obrazu |
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 <Wykrywanie> wykrywaj (obraz TensorImage )
Wykonuje rzeczywiste wykrywanie na dostarczonym obrazie.
ObjectDetector
obsługuje następujące typy przestrzeni kolorów TensorImage
:
Parametry
obraz | obiekt TensorImage UINT8, który reprezentuje obraz RGB lub YUV |
---|
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 |