Some WEB APIs for ROS usage
This is a ROS wrapper for the Microsoft Cognitive Services FACE API. It offers ROS services to detect faces, extract face markers, and recognise attributes like "gender", "smile", and "age". Also, faces can be trained for identification and if a face is trained, the detection will also contain the identity of a person in the image.
- call service
cognitivefaceapi/detect
to detect faces in an image - Service Definition:
ms_face_api/Detect
- An image can either be defined by defining in the requests
- a
sensor_msgs/Image
, - a
filename
, or - a
topic
where the image is read from (waiting for a timeout)
- a
- It returns an
ms_face_api/Faces
data structure - if the
identify
flag istrue
in the request, the API tries to identify all the detected faces
- An image can either be defined by defining in the requests
- call service
cognitivefaceapi/add_face
to add the largest face in the provided image with a givenname
- Service Definition:
ms_face_api/AddIdentityFace
- An image is defined in the same way as for
Detect
(se above)
- An image is defined in the same way as for
- The person is given a name in the request in the
person
field. If this person is already known, then the image is added to the training set for that person. If the person is not known, a new person is created and the face added to the training set. - This service immediately retrains the face identifications system.
- Afterwards, the trained person should be identified by the
Detect
service (potentially after some delay as training can take some time)