MlImage

public class MlImage

Wraps image data for on-device machine learning (ODML) usages.

MlImage is designed to be an immutable image container, which could be shared cross-platforms, among different Google ODML frameworks(TFLite Support, MLKit).

It is a common abstraction image that could help to chain different frameworks that adapts MlImage together.

To construct an MlImage, use the provided builders:

MlImage uses reference counting to maintain internal storage. When it is created the reference count is 1. Developer can call close() to reduce reference count to release internal storage earlier, otherwise Java garbage collection will release the storage eventually.

To extract concrete image, first check MlImage.StorageType and then use the provided extractors:

In future release, MlImage will support internal conversion(e.g. Bitmap -> ByteBuffer) and multiple storages.

Nested Classes

@interface MlImage.ImageFormat Specifies the image format of an image. 
class MlImage.Internal Advanced API access for MlImage
@interface MlImage.StorageType Specifies the image container type. 

Constants

int IMAGE_FORMAT_ALPHA
int IMAGE_FORMAT_JPEG
int IMAGE_FORMAT_NV12
int IMAGE_FORMAT_NV21
int IMAGE_FORMAT_RGB
int IMAGE_FORMAT_RGBA
int IMAGE_FORMAT_UNKNOWN
int IMAGE_FORMAT_YUV_420_888
int IMAGE_FORMAT_YV12
int IMAGE_FORMAT_YV21
int STORAGE_TYPE_BITMAP
int STORAGE_TYPE_BYTEBUFFER
int STORAGE_TYPE_IMAGE_PROXY
int STORAGE_TYPE_MEDIA_IMAGE

Public Methods

synchronized void
close()
Removes a reference that was previously acquired or init.
List<ImageProperties>