DeleteAsync method doesn't work in Azure Face Recognition Service

Viewed 99

We use Azure Cognitive Services in order to add face recognition feature to our application. Everithing except delete method works fine. According to the documentation, there is a delete method to delete a user and a deleteFace method to delete only the face data of the user from the system. At first deletion process takes place successfully. But when the deleted person’s photo is given to the system as input, it returns a candidate for given photo that consists his/her old person id. However, we cannot get person data such as name for given id. Also, the person is not in the person list, thus system returns not found exception. When we use client.Face.IdentifyAsync method for given input in recognition process, the system returns deleted person’s old person id.

We tried Deletion process in two different methods such as DeleteFaceAsync and DeleteAsync. In DeleteFaceAsync method, we tried to delete that person’s face data one by one then the person itself. Then in the DeleteAsync method, we delete the person from the person list assuming that it automatically deletes the faces attached to itself. But none of the methods above worked. We are still facing the same error. So, what do we suppose to do in order to delete a person from the system completely?

 IdentifyAsync method still returns candidate for deleted person id.

1 Answers

Once you call the DeleteAsync function to remove a person, this person will be removed immediately from the person group person list, but if you want to call the identify function, you should train your person group first if there is any modification to your person group.

If not do so, your group identify model hasn't been updated, it remains could recognize the removed person.

It also has been mentioned in official Face API reference: enter image description here

I have tested on my side, after I train my group, then call identify function, my group can't recognize the removed person anymore.

Related