Face Emotion
Analyzes eight face emotions in a video stream. These emotions are: Angry, Disgust, Fear, Happy, Sad, Surprise, and Neutral. It also returns most dominant emotion on a face. The event listener continuously gets the data in a JSON object as FaceAI analyzes the face emotions.
Methods
EnxFaceAI.startFaceEmotion(config, callback)
: To start analyzing face emotions in a video stream.|EnxFaceAI.stopFaceEmotion(callback)
: To stop analyzing face emotions in a video stream.
Parameters
For Method: EnxFaceAI.startFaceEmotion(config, callback)
config
: JSON Object. This is to configure or customize parameter using which the Face Gender would be analyzed.smoothness
: Number. Default 0.95. Range 0-1. A value closer to 1 provides greater smoothing and slower response time. Lower values provide less smoothing but faster response time. Set it to 0 (zero) if you need the raw signal.threshold
: Number. Default 0.70. Range 0.5-1. It controls the minimum value of confidence for which mostConfident output returns the predicted gender name instead of undefined.
callback
: Callback to know that processing request has been accepted.
For Method: EnxFaceAI.stopFaceEmotion(callback)
callback
: Callback to know that request has been accepted.
Event Listener
face-emotion
: This event notification is received repeatedly with the Face Emotion Analysis report as a JSON object.
JSON Object: Received with Face Emotion Analysis data.
{ output: {dominantEmotion: String,emotion: {Angry: Number,Disgust: Number,Fear: Number,Happy: Number,Neutral: Number,Sad: Number,Surprise: Number}}}
Analysis Data Explanation
output
: Face Emotion ReportdominantEmotion
: Name of Dominant Emotion if present, otherwise it is undefined.emotion
: Filtered (smoothened) values of the probability distribution of emotions. The sum of all the probabilities is always 1, each probability in the distribution has a value between 0 and 1.Angry
: Probability for Angry.Disgust
: Probability for Disgust.Fear
: Probability for Fear.Happy
: Probability for Happy.Sad
: Probability for Sad.Surprise
: Probability for Surprise.Neutral
: Probability for Neutral.
Sample Code
config = {smoothness: 0.95,threshold: 0.70};// Start Face EmotionfaceAI.startFaceEmotion(config, (res) => {if (res.result === 0) {window.addEventListener("face-emotion", (evt) => {console.log(evt.detail, "face-emotion");});}});// Stop Face EmotionfaceAI.stopFaceEmotion((res) => {if (res.result === 0) { }});