Google's ML Kit GenAI Image Description for Flutter

Pub Version analysis Star on Github License: MIT

A Flutter plugin to use Google's ML Kit GenAI Image Description API to generate descriptions for images.

PLEASE READ THIS before continuing or posting a new issue:

  • Google's ML Kit was build only for mobile platforms: iOS and Android apps. Web or any other platform is not supported, you can request support for those platform to Google in their repo.

  • This plugin is not sponsored or maintained by Google. The authors are developers excited about Machine Learning that wanted to expose Google's native APIs to Flutter.

  • Google's ML Kit APIs are only developed natively for iOS and Android. This plugin uses Flutter Platform Channels as explained here.

Requirements

Android

  • minSdkVersion: 26
  • targetSdkVersion: 35
  • compileSdkVersion: 35

Note: This API is currently only available on Android. iOS support may be added in the future.

Usage

Image Description

Create an instance of ImageDescriber

final imageDescriber = ImageDescriber();

Check feature status

final status = await imageDescriber.checkFeatureStatus();
if (status == FeatureStatus.downloadable) {
  await imageDescriber.downloadFeature(
    onDownloadCompleted: () {
      // Start image description
    },
  );
} else if (status == FeatureStatus.available) {
  // Start image description
}

Process image

final imageData = {
  'type': 'file',
  'path': '/path/to/image.jpg',
};
final description = await imageDescriber.runInference(imageData);
print('Description: $description');

Release resources with close()

imageDescriber.close();

Example app

Find the example app here.

Contributing

Contributions are welcome. In case of any problems look at existing issues, if you cannot find anything related to your problem then open an issue. Create an issue before opening a pull request for non trivial fixes. In case of trivial fixes open a pull request directly.