// import 'package:camera/camera.dart';
// import 'package:flutter/material.dart';
// import 'package:google_mlkit_face_detection/google_mlkit_face_detection.dart';
//
//
// class MLVisionService {
//   // singleton boilerplate
//   static final MLVisionService _cameraServiceService = MLVisionService._internal();
//
//   factory MLVisionService() {
//     return _cameraServiceService;
//   }
//   // singleton boilerplate
//   MLVisionService._internal();
//
//   FaceDetector? _faceDetector;
//   FaceDetector? get faceDetector => this._faceDetector;
//
//   void initialize() {
//     this._faceDetector = FaceDetector(options: FaceDetectorOptions(
//         performanceMode: FaceDetectorMode.accurate,
//         enableClassification: true,
//         enableLandmarks: true
//     ));
//     //     GoogleMlKit.vision.faceDetector(
//     //   FaceDetectorOptions(
//     //     performanceMode: FaceDetectorMode.accurate,
//     //     enableClassification: true,
//     //     enableLandmarks: true
//     //   ),
//     // );
//   }
//
//   Future<List<Face>> getFacesFromImage(CameraImage image, InputImageRotation inputImageRotation) async {
//     final InputImageFormat inputImageFormat =
//         InputImageFormatValue.fromRawValue(image.format.raw) ??
//             InputImageFormat.nv21;
//     int width = image.planes[0].bytesPerRow;
//     /// preprocess the image  🧑🏻‍🔧
//     InputImageData _firebaseImageMetadata = InputImageData(
//       imageRotation: inputImageRotation,
//       size: Size(image.width.toDouble(), image.height.toDouble()),
//       planeData: image.planes.map(
//         (Plane plane) {
//           return InputImagePlaneMetadata(
//             bytesPerRow: plane.bytesPerRow,
//             height: plane.height,
//             width: plane.width,
//           );
//         },
//       ).toList(), inputImageFormat: inputImageFormat,
//     );
//     /// Transform the image input for the _faceDetector 🎯
//
//     InputImage _firebaseVisionImage =
//     InputImage.fromBytes(bytes: image.planes[0].bytes, inputImageData: _firebaseImageMetadata);
//     /// proces the image and makes inference 🤖
//     List<Face> faces = await this._faceDetector!.processImage(_firebaseVisionImage);
//     return faces;
//   }
// }
