You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Expo配置expo-face-detector后无法获取人脸关键点坐标怎么办

解决expo-face-detector无法获取人脸关键点坐标的方案

核心问题

你配置的人脸检测属性名存在大小写错误,React Native组件属性大小写敏感,expo-camera 支持的人脸检测配置属性为小写开头的 faceDetectorSettings,你代码中使用的大写开头 FaceDetectorSettings 属于无效自定义属性,你配置的关键点检测规则完全未生效,系统默认不会返回人脸关键点数据。

修复步骤

  1. 修正Camera组件的属性名,将FaceDetectorSettings改为faceDetectorSettings,修改后的代码如下:
<Camera   
   style={{ flex: 1 }}
   type='front'
   onFacesDetected={faceDetected}
   faceDetectorSettings={{
       mode: FaceDetector.Constants.Mode.accurate,
       detectLandmarks: FaceDetector.Constants.Landmarks.all,
       runClassifications: FaceDetector.Constants.Classifications.all,
       minDetectionInterval: 5000,
       tracking: true
   }}
>
  1. 额外检查项,避免其他原因导致的配置不生效:
  • 确保expo、expo-camera、expo-face-detector三个依赖的版本互相兼容,版本不匹配会导致原生模块功能异常
  • 如果你使用Expo Go预览项目,需保证Expo Go版本和项目使用的Expo SDK版本一致
  • 建议将tracking参数设置为true,可提升连续场景下的关键点检测稳定性
  • 部分老旧安卓设备对人脸关键点检测支持度较差,可更换iOS设备或主流高版本安卓设备测试验证

修改完成后重新运行项目,faceDetected回调返回的人脸对象中就会包含rightEyePosition、leftEyePosition、noseBasePosition等你需要的关键点坐标数据。

内容的提问来源于stack exchange,提问作者Jumin Kamki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 01:45:03