public void ListEmotionResult(Activity msg, Emotion[] emotionResult) { List <Attachment> emotionList = new List <Attachment>(); if (emotionResult != null) { EmotionResultDisplay[] resultDisplay = new EmotionResultDisplay[8]; for (int i = 0; i < emotionResult.Length; i++) { Emotion emotion = emotionResult[i]; resultDisplay[0] = new EmotionResultDisplay { EmotionString = "Anger", Score = emotion.Scores.Anger }; resultDisplay[1] = new EmotionResultDisplay { EmotionString = "Contempt", Score = emotion.Scores.Contempt }; resultDisplay[2] = new EmotionResultDisplay { EmotionString = "Disgust", Score = emotion.Scores.Disgust }; resultDisplay[3] = new EmotionResultDisplay { EmotionString = "Fear", Score = emotion.Scores.Fear }; resultDisplay[4] = new EmotionResultDisplay { EmotionString = "Happiness", Score = emotion.Scores.Happiness }; resultDisplay[5] = new EmotionResultDisplay { EmotionString = "Neutral", Score = emotion.Scores.Neutral }; resultDisplay[6] = new EmotionResultDisplay { EmotionString = "Sadness", Score = emotion.Scores.Sadness }; resultDisplay[7] = new EmotionResultDisplay { EmotionString = "Surprise", Score = emotion.Scores.Surprise }; Array.Sort(resultDisplay, CompareDisplayResults); String[] emotionStrings = new String[3]; for (int j = 0; j < 3; j++) { emotionList.Add(new Attachment { Name = resultDisplay[j].EmotionString + ":" + resultDisplay[j].Score.ToString("0.000000") }); //emotionStrings[j] = resultDisplay[j].EmotionString + ":" + resultDisplay[j].Score.ToString("0.000000"); ; } msg.Attachments = emotionList; } } }
public List <string> ListEmotionResult(Emotion[] emotionResult) { List <String> TopEmotionPerFace = new List <string>(); if (emotionResult != null) { EmotionResultDisplay[] resultDisplay = new EmotionResultDisplay[8]; for (int i = 0; i < emotionResult.Length; i++) { Emotion emotion = emotionResult[i]; resultDisplay[0] = new EmotionResultDisplay { EmotionString = "Anger", Score = emotion.Scores.Anger }; resultDisplay[1] = new EmotionResultDisplay { EmotionString = "Contempt", Score = emotion.Scores.Contempt }; resultDisplay[2] = new EmotionResultDisplay { EmotionString = "Disgust", Score = emotion.Scores.Disgust }; resultDisplay[3] = new EmotionResultDisplay { EmotionString = "Fear", Score = emotion.Scores.Fear }; resultDisplay[4] = new EmotionResultDisplay { EmotionString = "Happiness", Score = emotion.Scores.Happiness }; resultDisplay[5] = new EmotionResultDisplay { EmotionString = "Neutral", Score = emotion.Scores.Neutral }; resultDisplay[6] = new EmotionResultDisplay { EmotionString = "Sadness", Score = emotion.Scores.Sadness }; resultDisplay[7] = new EmotionResultDisplay { EmotionString = "Surprise", Score = emotion.Scores.Surprise }; Array.Sort(resultDisplay, CompareDisplayResults); String[] emotionStrings = new String[3]; for (int j = 0; j < 3; j++) { emotionStrings[j] = resultDisplay[j].EmotionString + ":" + resultDisplay[j].Score.ToString("0.000000");; } TopEmotionPerFace.Add(resultDisplay[0].EmotionString); } return(TopEmotionPerFace); } return(null); }
public Dictionary <string, string> ListEmotionResult(Emotion emotion) { if (emotion != null) { EmotionResultDisplay[] resultDisplay = new EmotionResultDisplay[8]; resultDisplay[0] = new EmotionResultDisplay { EmotionString = "Bravo", Score = emotion.Scores.Anger * 100 }; resultDisplay[1] = new EmotionResultDisplay { EmotionString = "Desprezo", Score = emotion.Scores.Contempt * 100 }; resultDisplay[2] = new EmotionResultDisplay { EmotionString = "Nojo", Score = emotion.Scores.Disgust * 100 }; resultDisplay[3] = new EmotionResultDisplay { EmotionString = "Medo", Score = emotion.Scores.Fear * 100 }; resultDisplay[4] = new EmotionResultDisplay { EmotionString = "Felicidade", Score = emotion.Scores.Happiness * 100 }; resultDisplay[5] = new EmotionResultDisplay { EmotionString = "Neutro", Score = emotion.Scores.Neutral * 100 }; resultDisplay[6] = new EmotionResultDisplay { EmotionString = "Tristeza", Score = emotion.Scores.Sadness * 100 }; resultDisplay[7] = new EmotionResultDisplay { EmotionString = "Surpresa", Score = emotion.Scores.Surprise * 100 }; Array.Sort(resultDisplay, CompareDisplayResults); Dictionary <string, string> res = new Dictionary <string, string>(); res.Add(resultDisplay[0].EmotionString, resultDisplay[0].Score.ToString("##0.000") + "%"); /* * for (int j = 0; j < 3; j++) * { * if (!resultDisplay[j].Score.ToString("##0.000").Equals("0,000") && !resultDisplay[j].Score.ToString("##0.000").Equals("0.000")) * { * res.Add(resultDisplay[j].EmotionString, resultDisplay[j].Score.ToString("##0.000") + "%"); * } * } */ return(res); } return(null); }
private int CompareDisplayResults(EmotionResultDisplay result1, EmotionResultDisplay result2) { return((result1.Score == result2.Score) ? 0 : ((result1.Score < result2.Score) ? 1 : -1)); }