perch_eye 0.0.1 copy "perch_eye: ^0.0.1" to clipboard
perch_eye: ^0.0.1 copied to clipboard

PlatformAndroid

Flutter plugin for PerchEye SDK

PerchEye Flutter SDK โ€“ Dart API Reference #

This class provides a high-level Dart interface for accessing native face recognition functionality through platform channels using the PerchEye Android SDK.


๐Ÿ”Œ Class: PerchEye #

๐Ÿ“ก Channel #

static const MethodChannel _channel = MethodChannel('perch_eye_method_channel');

Internal method channel used for native communication (do not modify).


๐Ÿงน Methods #

Future<void> init() #

Initializes the underlying PerchEye native SDK. Must be called once before any recognition-related operations.

await PerchEye.init();

Future<void> destroy() #

Releases SDK resources and unloads the model. Call this when the app or session ends.

await PerchEye.destroy();

Future<void> openTransaction() #

Opens a new session for face processing. This is required before addImage().

await PerchEye.openTransaction();

Future<String> addImage(String base64) #

Adds a face image to the current transaction for processing. Accepts a base64-encoded image string.

Returns:

  • A string representing the result enum (SUCCESS, FACE_NOT_FOUND, etc.)
final result = await PerchEye.addImage(base64Image);
if (result == 'SUCCESS') {
  // Proceed with enroll or verify
}

Future<String> enroll() #

Generates a Base64-encoded face embedding hash from the previously added image.

Returns:

  • A String face hash
await PerchEye.openTransaction();
await PerchEye.addImage(base64Image);
final hash = await PerchEye.enroll();

Future<double> verify(String hash) #

Verifies the last added image against a given face hash.

Returns:

  • Similarity score (0.0 to 1.0)
await PerchEye.openTransaction();
await PerchEye.addImage(base64Image);
final similarity = await PerchEye.verify(hash);

Future<String> evaluate(List<String> base64Images) #

Evaluates multiple images to produce a single aggregated face hash.

Returns:

  • Combined hash as String
final hash = await PerchEye.evaluate([base64Image1, base64Image2]);

Future<double> compareList(List<String> images, String hash) #

Compares a list of base64-encoded images against a face hash.

Returns:

  • Similarity score (0.0 to 1.0)
final sim = await PerchEye.compareList(
  [base64Image1, base64Image2],
  knownHash,
);

Future<double> compareFaces(String base64_1, String base64_2) #

Convenience method: Internally performs:

  • openTransaction()
  • addImage(image1) โ†’ enroll() โ†’ openTransaction() โ†’ addImage(image2) โ†’ verify()

Returns:

  • Similarity score (0.0 to 1.0)
final similarity = await PerchEye.compareFaces(base64Image1, base64Image2);

๐Ÿงช Example Workflow #

await PerchEye.init();

await PerchEye.openTransaction();
await PerchEye.addImage(base64Image1);
final hash = await PerchEye.enroll();

await PerchEye.openTransaction();
await PerchEye.addImage(base64Image2);
final similarity = await PerchEye.verify(hash);

await PerchEye.destroy();

1
likes
120
points
5
downloads

Publisher

unverified uploader

Weekly Downloads

Flutter plugin for PerchEye SDK

Homepage

Documentation

API reference

License

Apache-2.0 (license)

Dependencies

flutter

More

Packages that depend on perch_eye

Packages that implement perch_eye