processImage method
Future<List<CustomFace> >
processImage(
- CameraImage image,
- CameraDescription cameraDescription
override
Implementation
@override
Future<List<CustomFace>> processImage(
CameraImage image,
CameraDescription cameraDescription,
) async {
if (_isClosed || _faceDetector == null) return [];
final inputImage = _toInputImage(image, cameraDescription);
if (inputImage == null) {
return [];
}
try {
final faces = await _faceDetector!.processImage(inputImage);
return faces.map((face) {
return CustomFace(
trackingId: face.trackingId,
smilingProbability: face.smilingProbability ?? 0.0,
headEulerAngleX: face.headEulerAngleX ?? 0.0,
headEulerAngleY: face.headEulerAngleY ?? 0.0,
leftEyeOpenProbability: face.leftEyeOpenProbability ?? 1.0,
rightEyeOpenProbability: face.rightEyeOpenProbability ?? 1.0,
boundingBox: face.boundingBox,
landmarks: [], // Face detector doesn't provide mesh points
);
}).toList();
} catch (e) {
return [];
}
}