Выполняет классификацию изображений.
API ожидает модель TFLite с необязательными, но настоятельно рекомендуемыми метаданными модели TFLite. .
API поддерживает модели с одним входным тензором изображения и одним или несколькими выходными тензорами. Если быть более конкретным, то вот требования.
- Тензор входного изображения (
kTfLiteUInt8
/kTfLiteFloat32
)- Ввод изображения размера
[batch x height x width x channels]
. - Пакетный вывод не поддерживается (
batch
должен быть равен 1). - поддерживаются только входы RGB (
channels
должно быть 3). - если тип — kTfLiteFloat32, параметры NormalizationOptions необходимо прикрепить к метаданным для нормализации ввода.
- Ввод изображения размера
kTfLiteUInt8
/ kTfLiteFloat32
) с:-
N
классов и 2 или 4 измерения, т.е.[1 x N]
или[1 x 1 x 1 x N]
- необязательные (но рекомендуемые) карты меток в виде AssociatedFile-s с типом TENSOR_AXIS_LABELS, содержащие одну метку в строке. Первый такой AssociatedFile (если есть) используется для заполнения поля
class_name
результатов. Полеdisplay_name
заполняется из AssociatedFile (если есть), языковой стандарт которого соответствует полюdisplay_names_locale
вImageClassifierOptions
, используемом во время создания (по умолчанию «en», т.е. английский). Если ни один из них недоступен, будет заполнено только полеindex
результатов. - дополнительную калибровку оценки можно прикрепить с помощью ScoreCalibrationOptions и AssociatedFile с типом TENSOR_AXIS_SCORE_CALIBRATION. Дополнительную информацию см. в файле Metadata_schema.fbs .
Пример такой модели можно найти в TensorFlow Hub .
Вложенные классы
сорт | ImageClassifier.ImageClassifierOptions | Варианты настройки и ImageClassifier . |
Публичные методы
Классификатор изображенияРезультат | классифицировать (изображение MPImage ) Выполняет классификацию предоставленного одиночного изображения с параметрами обработки изображения по умолчанию, т.е. |
Классификатор изображенияРезультат | классифицировать (изображение MPImage , ImageProcessingOptions imageProcessingOptions) Выполняет классификацию предоставленного единственного изображения. |
пустота | classifyAsync (изображение MPImage , ImageProcessingOptions imageProcessingOptions, long timestampMs) Отправляет данные живого изображения для выполнения классификации, и результаты будут доступны через OutputHandler.ResultListener , указанный в ImageClassifier.ImageClassifierOptions . |
пустота | classifyAsync (изображение MPImage , длинная метка времени) Отправляет данные живого изображения для выполнения классификации с параметрами обработки изображений по умолчанию, т.е. |
Классификатор изображенияРезультат | classifyForVideo (изображение MPImage , длинная временная меткаMs) Выполняет классификацию предоставленного видеокадра с параметрами обработки изображения по умолчанию, т.е. |
Классификатор изображенияРезультат | classifyForVideo (изображение MPImage , ImageProcessingOptions imageProcessingOptions, long timestampMs) Выполняет классификацию предоставленного видеокадра. |
статический классификатор изображений | createFromBuffer (контекстный контекст, модель ByteBufferBuffer ) Создает экземпляр ImageClassifier из буфера модели и ImageClassifier.ImageClassifierOptions по умолчанию. |
статический классификатор изображений | createFromFile (контекст контекста, String modelPath) Создает экземпляр ImageClassifier из файла модели и ImageClassifier.ImageClassifierOptions по умолчанию. |
статический классификатор изображений | createFromFile (контекстный контекст, файл модели файла ) Создает экземпляр ImageClassifier из файла модели и ImageClassifier.ImageClassifierOptions по умолчанию. |
статический классификатор изображений | createFromOptions (контекст контекста, параметры ImageClassifier.ImageClassifierOptions ) Создает экземпляр ImageClassifier из экземпляра ImageClassifier.ImageClassifierOptions . |
Унаследованные методы
Публичные методы
public ImageClassifierResult классифицировать (изображение MPImage )
Выполняет классификацию предоставленного одиночного изображения с параметрами обработки изображения по умолчанию, т. е. использует все изображение в качестве области интереса и без применения поворота. Используйте этот метод только в том случае, если ImageClassifier
создан с помощью ERROR(/RunningMode.IMAGE)
.
ImageClassifier
поддерживает следующие типы цветового пространства:
Параметры
изображение | объект MediaPipe MPImage для обработки. |
---|
Броски
если произошла внутренняя ошибка. |
общедоступная классификация ImageClassifierResult (изображение MPImage , ImageProcessingOptions imageProcessingOptions)
Выполняет классификацию предоставленного единственного изображения. Используйте этот метод только в том случае, если ImageClassifier
создан с помощью ERROR(/RunningMode.IMAGE)
.
ImageClassifier
поддерживает следующие типы цветового пространства:
Параметры
изображение | объект MediaPipe MPImage для обработки. |
---|---|
Параметры обработки изображений | ImageProcessingOptions определяющий, как обрабатывать входное изображение перед выполнением вывода. |
Броски
если произошла внутренняя ошибка. |
public void classifyAsync (изображение MPImage , ImageProcessingOptions imageProcessingOptions, long timestampMs)
Отправляет данные живого изображения для выполнения классификации, и результаты будут доступны через OutputHandler.ResultListener
, указанный в ImageClassifier.ImageClassifierOptions
. Используйте этот метод только в том случае, если ImageClassifier
создан с помощью ERROR(/RunningMode.LIVE_STREAM)
.
Необходимо указать временную метку (в миллисекундах), чтобы указать, когда входное изображение отправляется в детектор объектов. Входные временные метки должны монотонно возрастать.
ImageClassifier
поддерживает следующие типы цветового пространства:
Параметры
изображение | объект MediaPipe MPImage для обработки. |
---|---|
Параметры обработки изображений | ImageProcessingOptions определяющий, как обрабатывать входное изображение перед выполнением вывода. |
временная меткаMs | временная метка ввода (в миллисекундах). |
Броски
если произошла внутренняя ошибка. |
public void classifyAsync (изображение MPImage , длинная метка времени)
Отправляет данные живого изображения для выполнения классификации с параметрами обработки изображения по умолчанию, т. е. использует все изображение в качестве интересующей области и без применения поворота, а результаты будут доступны через OutputHandler.ResultListener
, предоставленный в ImageClassifier.ImageClassifierOptions
. Используйте этот метод только в том случае, если ImageClassifier
создан с помощью ERROR(/RunningMode.LIVE_STREAM)
.
Необходимо указать временную метку (в миллисекундах), чтобы указать, когда входное изображение отправляется в детектор объектов. Входные временные метки должны монотонно возрастать.
ImageClassifier
поддерживает следующие типы цветового пространства:
Параметры
изображение | объект MediaPipe MPImage для обработки. |
---|---|
временная меткаMs | временная метка ввода (в миллисекундах). |
Броски
если произошла внутренняя ошибка. |
public ImageClassifierResult classifyForVideo (изображение MPImage , длинная временная меткаMs)
Выполняет классификацию предоставленного видеокадра с параметрами обработки изображения по умолчанию, т. е. использует все изображение в качестве области интереса и без применения поворота. Используйте этот метод только в том случае, если ImageClassifier
создан с помощью ERROR(/RunningMode.VIDEO)
.
Необходимо указать временную метку видеокадра (в миллисекундах). Входные временные метки должны монотонно возрастать.
ImageClassifier
поддерживает следующие типы цветового пространства:
Параметры
изображение | объект MediaPipe MPImage для обработки. |
---|---|
временная меткаMs | временная метка ввода (в миллисекундах). |
Броски
если произошла внутренняя ошибка. |
public ImageClassifierResult classifyForVideo (изображение MPImage , ImageProcessingOptions imageProcessingOptions, long timestampMs)
Выполняет классификацию предоставленного видеокадра. Используйте этот метод только в том случае, если ImageClassifier
создан с помощью ERROR(/RunningMode.VIDEO)
.
Необходимо указать временную метку видеокадра (в миллисекундах). Входные временные метки должны монотонно возрастать.
ImageClassifier
поддерживает следующие типы цветового пространства:
Параметры
изображение | объект MediaPipe MPImage для обработки. |
---|---|
Параметры обработки изображений | ImageProcessingOptions определяющий, как обрабатывать входное изображение перед выполнением вывода. |
временная меткаMs | временная метка ввода (в миллисекундах). |
Броски
если произошла внутренняя ошибка. |
общедоступный статический ImageClassifier createFromBuffer (контекст контекста, ByteBuffer modelBuffer)
Создает экземпляр ImageClassifier
из буфера модели и ImageClassifier.ImageClassifierOptions
по умолчанию.
Параметры
контекст | ERROR(/Context) . |
---|---|
модельBuffer | прямой ByteBuffer или ERROR(/MappedByteBuffer) модели классификации. |
Броски
если при создании ImageClassifier произошла ошибка. |
общедоступный статический ImageClassifier createFromFile (контекст контекста, String modelPath)
Создает экземпляр ImageClassifier
из файла модели и ImageClassifier.ImageClassifierOptions
по умолчанию.
Параметры
контекст | ERROR(/Context) . |
---|---|
модельпуть | путь к модели классификации в активах. |
Броски
если при создании ImageClassifier возникла ошибка. |
общедоступный статический ImageClassifier createFromFile (контекстный контекст, файл modelFile)
Создает экземпляр ImageClassifier
из файла модели и ImageClassifier.ImageClassifierOptions
по умолчанию.
Параметры
контекст | ERROR(/Context) . |
---|---|
МодельФайл | экземпляр File модели классификации. |
Броски
Исключение IO | если при открытии файла модели tflite возникает ошибка ввода-вывода. |
---|---|
если при создании ImageClassifier возникла ошибка. |
общедоступный статический ImageClassifier createFromOptions (контекст контекста, параметры ImageClassifier.ImageClassifierOptions )
Создает экземпляр ImageClassifier
из экземпляра ImageClassifier.ImageClassifierOptions
.
Параметры
контекст | ERROR(/Context) . |
---|---|
параметры | экземпляр ImageClassifier.ImageClassifierOptions . |
Броски
если при создании ImageClassifier произошла ошибка. |