face_camera

一个实时检测人脸的Flutter相机插件。

预览


安装


首先,在您的pubspec.yaml文件中将face_camera添加为依赖项。

face_camera: ^0.0.3

iOS


  • 最低 iOS 部署目标:10.0
  • 请遵循此链接并设置ML Kit,这是face_cameraiOS中正常运行所必需的。

ios/Runner/Info.plist中添加两行:

  • 一行是键为Privacy - Camera Usage Description以及使用说明。
  • 另一行是键为Privacy - Microphone Usage Description以及使用说明。

如果将Info.plist作为文本进行编辑,请添加

<key>NSCameraUsageDescription</key>
<string>your usage description here</string>
<key>NSMicrophoneUsageDescription</key>
<string>your usage description here</string>
  

Android


  • 在您的 android/app/build.gradle 文件中将最低 Android sdk 版本更改为 21(或更高)。
minSdkVersion 21

用法


  • 第一步是在main.dart中初始化face_camera
void main() async{
  WidgetsFlutterBinding.ensureInitialized(); //Add this

  await FaceCamera.intialize(); //Add this

  runApp(const MyApp());
}
  • 然后,在您的应用程序中渲染组件,并设置onCapture回调。
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        body: SmartFaceCamera(
          autoCapture: true,
          defaultCameraLens: CameraLens.front,
          message: 'Center your face in the square',
          onCapture: (File? image){
            
          },
        )
    );
  }

自定义


以下是可用于自定义小部件的属性列表:

名称 类型 描述
onCapture Function(File) 相机捕获图像时调用的回调
imageResolution ImageResolution 用于设置图像分辨率
defaultCameraLens CameraLens 用于设置初始相机镜头方向
defaultFlashMode CameraFlashMode 用于设置初始闪光灯模式
enableAudio 布尔值 设置为false可禁用拍摄声音
autoCapture 布尔值 设置为true可在检测到人脸时捕获图像
showControls 布尔值 设置为false可隐藏所有控件
showCaptureControl 布尔值 设置为false可隐藏拍摄控件图标
showFlashControl 布尔值 设置为false可隐藏闪光灯控件图标
showCameraLensControl 布尔值 设置为false可隐藏相机镜头控件图标
message 字符串 用于在相机上方显示消息
messageStyle TextStyle 应用于消息小部件的样式
orientation CameraOrientation 用于锁定相机方向
captureControlIcon Widget 用于为拍摄控件渲染自定义小部件
lensControlIcon Widget 用于为相机镜头控件渲染自定义小部件
flashControlBuilder FlashControlBuilder 用于根据相机闪光灯模式构建自定义小部件

贡献


欢迎任何形式的贡献!随时可以Fork并以任何您想要的方式改进face_camera,提交Pull Request或打开Issue。

支持此库


您可以通过在pub上点赞、在Github上标星以及报告遇到的任何bug来支持此库。

GitHub

查看 Github