An ImageLabeling
client for finding ImageLabel
s in
a supplied image.
An image labeler is created via
ImageLabeling.getClient(ImageLabelerOptionsBase)
.
Example:
ImageLabeler imageLabeler = ImageLabeling.getClient(options);
To perform label detection in an image, you first need to create an instance of
InputImage
from a Bitmap
,
ByteBuffer
, etc. See
InputImage
documentation for more details. For example, the code below creates an InputImage
from a Bitmap
.
InputImage image = InputImage.fromBitmap(bitmap, rotationDegrees);
Then the code below can detect labels in the supplied InputImage
.
Task<List<ImageLabel>> task = imageLabeler.process(image);
task.addOnSuccessListener(...).addOnFailureListener(...);
Public Method Summary
abstract void |
close()
Closes the detector and releases its resources.
|
abstract Task<List<ImageLabel>> | |
abstract Task<List<ImageLabel>> |
Inherited Method Summary
Public Methods
public abstract void close ()
Closes the detector and releases its resources.
public abstract Task<List<ImageLabel>> process (MlImage image)
Detects image labels from a supplied image.
This is an experimental API in beta version.
For image labeling model trained with AutoML Vision Edge, creating an MlImage
object from BitmapMlImageBuilder
gives best performance.
For other image labeling models, create an InputImage
object using any of MlImage
's
builder methods. See MlImage
documentation for more details.
If ImageLabeler
is created with
CustomImageLabelerOptions
, the returned Task
will be an
MlKitException
with specific error code in the following cases: (1) with error code MlKitException.NOT_FOUND
if cannot find the custom classifier model file; (2) with error code MlKitException.INVALID_ARGUMENT
if the custom model file is not compatible with this SDK.
Returns
- a
Task
that asynchronously returns aList
of detectedImageLabel
s. The labels are returned sorted by confidence in descending order. An empty list is returned by theTask
if no labels are detected.
public abstract Task<List<ImageLabel>> process (InputImage image)
Detects image labels from a supplied image.
For image labeling model trained with AutoML Vision Edge, creating an InputImage
object from
InputImage.fromBitmap(Bitmap, int)
gives best performance.
For other image labeling models, create an InputImage
object using any of InputImage
's
factory methods. See InputImage
documentation for more details.
If ImageLabeler
is created with
CustomImageLabelerOptions
, the returned Task
will be an
MlKitException
with specific error code in the following cases: (1) with error code MlKitException.NOT_FOUND
if cannot find the custom classifier model file; (2) with error code MlKitException.INVALID_ARGUMENT
if the custom model file is not compatible with this SDK.
Returns
- a
Task
that asynchronously returns aList
of detectedImageLabel
s. The labels are returned sorted by confidence in descending order. An empty list is returned by theTask
if no labels are detected.