我尝试了here的ML Kit人脸检测示例应用程序,但在运行LiveDataPreviewActivity时无法接收耳朵的界标数据。
对于FirebaseVisionFaceLandmark.LEFT_EAR和FirebaseVisionFaceLandmark.RIGHT_EAR,呼叫face.getLandmark始终返回null。所有其他地标都将突出显示并恢复正常。
(已在Google Pixel和Samsung S6上测试)
还有其他人遇到此问题吗?是否需要其他一些设置来检测耳朵? ...我还在回购中添加了一个github问题,但是我认为stackoverflow社区更加活跃。
drawLandmarkPosition(canvas, face, FirebaseVisionFaceLandmark.LEFT_EAR)
drawLandmarkPosition(canvas, face, FirebaseVisionFaceLandmark.RIGHT_EAR)
...
private fun drawLandmarkPosition(canvas: Canvas, face: FirebaseVisionFace, landmarkID: Int) {
val landmark = face.getLandmark(landmarkID)
landmark?.let {
val point = landmark.position
canvas.drawCircle(
translateX(point.x),
translateY(point.y),
10f, idPaint)
}
}
... 地标 的值始终为空。
答案 0 :(得分:0)
我收到了Firebase技术支持的答复(再次感谢),而缺少的是app / build.gradle中的这一行: 实现'com.google.firebase:firebase-ml-vision-face-model:17.0.2'
已经在github上创建了一个pull请求,希望它会被接受。 干杯! ;)