【问题标题】:Azure FaceAPI Face is Not Found in Android Java在 Android Java 中未找到 Azure FaceAPI 人脸
【发布时间】:2022-02-08 16:11:47
【问题描述】:

我正在尝试使用 Azure FaceAPI 构建人脸识别考勤系统。我创建了一个人脸列表。然后,我从 firebase 下载了图像的 URL,然后使用检测方法来检测每个人脸。我将每个面孔添加到面孔列表中。最后,我想通过给它一个带有 faces UUID 数组的现有面来测试 findSimilar 方法。 这些是部分代码(我每次调用都使用一个线程)

private FaceServiceClient faceServiceClient=new FaceServiceRestClient("https://train.cognitiveservices.azure.com/face/v1.0/",key); 
--
faceServiceClient.createFaceList(faceListId, "mylist", "recognition_04");
--
// in a loop from i=0 --> i < no of images
faces= faceServiceClient.detect(Urls.get(i), false, false, null);
facesIds.add( faceServiceClient.addFacesToFaceList(faceListId, Urls.get(i), null, faces[0].faceRectangle).persistedFaceId);
--
faceServiceClient.findSimilar(id,ids, 1 );

我打印出所有 ID 并检查它们是否存在。但是调用 findSimilar 方法后总是报错。

com.microsoft.projectoxford.face.rest.ClientException: Face is not found.

谁能告诉我问题出在哪里?

【问题讨论】:

标签: java android azure face-api


【解决方案1】:

答案很简单,findSimilar 方法从 faceList 中获取检测到的人脸 ID,而不是 faceID。 对我来说,我使用现有的 faceID 只是为了测试。但是,我必须先检测一张脸,然后再获取它的 ID。

faceServiceClient.findSimilar(id,ids, 1 );

总结:将“id”替换为检测到的人脸 ID。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-27
    • 2013-09-24
    • 2013-07-31
    • 2019-07-11
    • 1970-01-01
    • 2021-08-27
    • 2012-07-18
    • 1970-01-01
    相关资源
    最近更新 更多