=== Description de l’état de l’art
ifdef::env-gitlab,env-browser[:outfilesuffix: .adoc]

==== Borne à smiley

La borne à smiley est une solution très populaire et utilisée par de nombreuses entreprises pour recueillir les avis utilisateurs par appui sur un émoticône représentant une émotion. La popularité de ce produit montre le besoin de dispositifs de recueil d’avis automatisé. Cependant, l'utilisation de ce type de borne a rapidement décru après la pandémie pour des raisons d'hygiène. De plus, ces bornes présentent d'autres inconvénients: incapabilité de poser plus qu'une question et absence de justification derrière les réponses.

.Exemple de borne à smiley
image::../images/borne.png[logo borne, 200, 600]

==== Données annotées https://github.com/aesuli/SentiWordNet[SentiWordNet] et https://archive.illc.uva.nl//EuroWordNet/[EuroWordNet]

SentiWordNet est un ensemble de groupes de synonymes en Anglais (appelés synsets) auxquels ont été affectés trois scores quantifiant leur positivité, leur négativité et leur objectivité. L'ensemble est disponible en libre accès à des fins de recherche sur la classification d'émotion, un domaine récemment créé. C'est sur ce principe qu'est basé EuroWordNet, à la différence qu'il a été développé pour les langues européennes et donc nous est utile pour analyser des avis en Français. Le coeur de notre projet étant la classification d'avis utilisateurs pour permettre au gérant d'améliorer au mieux l'expérience utilisateur, ces bases de données sont extrêmement pertinentes.

image::../images/Sentiwordnet.jpg[logo Sentiwordnet, 300, 66]
image::../images/eurowordnet.jpeg[logo eurowordnet]

==== Outil https://github.com/cjhutto/vaderSentiment[VADER]

VADER est un outil développé par le MIT pour un usage dans le traitement du langage naturel en Anglais. Il faut mentionner qu'il peut être utilisé sur du Français en s'appuyant sur un outil de traduction externe. À un avis utilisateur donné, il associe trois scores: positivité, négativité et neutralité, puis en déduit un score global, en fonction d'une pondération définie par le programmeur (nous dans ce cas), (entre 1 (avis le plus positif possible) et -1 (avis le plus négatif possible). Il peut, entre autres, prendre en compte les émoticônes, la présence de majuscules, la disposition de la ponctuation, des abbréviations usuelles. Il a l'avantage d'être particulièrement efficace pour analyser les sentiments des avis postés sur les réseaux sociaux, or nous voulons pratiquer le scrapping d'avis sur ces plateformes pour que le gérant puisse avoir un maximum de retours. 

==== Algorithme https://github.com/HSE-asavchenko/face-emotion-recognition[HSEmotion] (High-Speed face Emotion recognition)

Cet algorithme a été développé à l'université HSE dans le but de reconnaître des émotions à partir de photos ou de vidéos. Il a notamment permis à son auteur Andrey Savchenko d'avoir de très bons résultats aux concours de reconnaissance d'émotion organisés par <<ibug>>, un groupe d'experts spécialisés dans l'analyse du comportement humain. Cela montre que ce domaine est en plein essor.

==== https://google.github.io/mediapipe/solutions/hands.html[MediaPipe Hands]

Cette interface de programmation permet au programmeur d'avoir un traçage de la main. Le processus se décompose en deux parties: dans un premier temps, un modèle de machine learning délimite la main dans l'image entière, puis un deuxième modèle se charge de placer des points critiques de la main à partir de cette image bornée. L'ensemble peut permettre de reconnaître des signes de la main par exemple. Nous avons pour projet de reconnaître de tels signes pour permettre une interaction à distance entre l'utilisateur et la borne.

.Exemples de placement de points sur des mains réelles (en haut) et issues d'images de synthèse (en bas) (source: https://google.github.io/mediapipe/solutions/hands.html)
image::../images/hand.png[logo hand, 480, 254]


==== Interface Google My Business

Cette interface de programmation permet, entre autres, de https://developers.google.com/my-business/reference/rest/v4/accounts.locations.reviews[récupérer] des avis laissés sur Google Maps concernant un lieu. Elle peut s'avérer utile pour recueillir des avis pour notre projet.

image::../images/googlebusiness.jpg[logo googlebusiness, 150, 150]

==== Langage de requête https://developers.facebook.com/docs/instagram-api/[GraphQL]

Ce langage développé par Facebook permet de récupérer des données. Dans le cadre de notre projet, il peut être utilisé pour récupérer le nombre de likes sur un post ou sur un commentaire.

image::../images/graphql.png[logo graphql, 125, 125]
