{"id":{"repo_id":"cape-town","oai_identifier":"oai:open.uct.ac.za:11427/41869"},"canonical_url":"https://search.dev.ndltd.org/etd/cape-town/oai:open.uct.ac.za:11427/41869","repository":{"repo_id":"cape-town","name":"University of Cape Town","base_url":"https://open.uct.ac.za/oai/request"},"display":{"title":"Real-time video sentiment analysis through the use of snapshots","abstract":"There are many types of emotions that one can experience and they usually have a direct impact on a person's behaviour. Emotions can be conveyed in several ways such as gestures/body movement, words or facial expressions and this dissertation we aim to distinguish the emotional state of a person based on their facial expressions. Several approaches have been devised in this regard by various past researchers within the computer vision field but unfortunately, despite the similarities in the adopted techniques for the facial and emotion detection processes, there still exist some discrepancies regarding their performances when applied to different images or video streams. As such, the goal of this dissertation is to develop a program that can analyse a real-time video stream and take in each of the frames as an image snapshot which can be in turn processed to efficiently identify faces and recognise a person's emotion based on their facial expressions. Two scenarios, namely Frontal only, and Profile and Frontal, each with their datasets were accounted for in this research. The first dataset (Frontal) consists only of users who are facing forward and the second one (Profile and Frontal) consists of users who are facing forward as well as sideways. Convolutional Neural Network (CNN) models were constructed for each of the given datasets on both the augmented and non-augmented versions of these datasets to obtain the best possible model for each scenario before applying such model to a real-time video stream. In both scenarios, the augmented models outperformed the non-augmented models when tested on unseen static image data and when such a model was applied to a real-time video stream with the help of the OpenCV library and the relevant Haar Cascade classifiers, required for the face detection process (depending on which scenario), fairly accurate results were obtained when each frame within the video stream were converted into an image snapshot before classification. The code for this dissertation can be found here: https://github.com/Drish19/Facial-Emotion-Recognition.","abstract_html":"There are many types of emotions that one can experience and they usually have a direct impact on a person&#x27;s behaviour. Emotions can be conveyed in several ways such as gestures/body movement, words or facial expressions and this dissertation we aim to distinguish the emotional state of a person based on their facial expressions. Several approaches have been devised in this regard by various past researchers within the computer vision field but unfortunately, despite the similarities in the adopted techniques for the facial and emotion detection processes, there still exist some discrepancies regarding their performances when applied to different images or video streams. As such, the goal of this dissertation is to develop a program that can analyse a real-time video stream and take in each of the frames as an image snapshot which can be in turn processed to efficiently identify faces and recognise a person&#x27;s emotion based on their facial expressions. Two scenarios, namely Frontal only, and Profile and Frontal, each with their datasets were accounted for in this research. The first dataset (Frontal) consists only of users who are facing forward and the second one (Profile and Frontal) consists of users who are facing forward as well as sideways. Convolutional Neural Network (CNN) models were constructed for each of the given datasets on both the augmented and non-augmented versions of these datasets to obtain the best possible model for each scenario before applying such model to a real-time video stream. In both scenarios, the augmented models outperformed the non-augmented models when tested on unseen static image data and when such a model was applied to a real-time video stream with the help of the OpenCV library and the relevant Haar Cascade classifiers, required for the face detection process (depending on which scenario), fairly accurate results were obtained when each frame within the video stream were converted into an image snapshot before classification. The code for this dissertation can be found here: https://github.com/Drish19/Facial-Emotion-Recognition.","abstract_has_math":false,"creators":["Ramma, Sudiptee"],"institution":"Department of Statistical Sciences","degree_name":null,"degree_level":null,"degree_discipline":null,"degree_department":null,"school":null,"contributors":[],"advisors":["Nyirenda, Juwa"],"committee_chairs":[],"committee_members":[],"year":2025,"date_issued":"2025","date_published":"2025","updated_at":"2026-07-22T22:22:38Z","subjects":["Emotion recognition","Facial emotion recognition","Face detection","Emotion classification","Convolutional Neural Network (CNN)","OpenCV"],"languages":["en"],"rights":[],"rights_urls":[],"identifier_entries":[]},"links":{"outbound_url":"http://hdl.handle.net/11427/41869","outbound_label":"Handle","outbound_source":"dc:identifier.uri"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor.advisor","label":"Advisor","values":["Nyirenda, Juwa"]},{"key":"dc:creator","label":"Author","values":["Ramma, Sudiptee"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date.accessioned","label":"Dc Date Accessioned","values":["2025-09-19T09:54:23Z"]},{"key":"dc:date.available","label":"Dc Date Available","values":["2025-09-19T09:54:23Z"]},{"key":"dc:date.issued","label":"Date","values":["2025"]},{"key":"dc:publisher.department","label":"Dc Publisher Department","values":["Department of Statistical Sciences"]},{"key":"dc:publisher.institution","label":"Dc Publisher Institution","values":["University of Cape Town"]},{"key":"dc:type","label":"Dc Type","values":["Thesis / Dissertation"]},{"key":"dc:type.qualificationlevel","label":"Dc Type Qualificationlevel","values":["Masters","MSc"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["Emotion recognition","Facial emotion recognition","Face detection","Emotion classification","Convolutional Neural Network (CNN)","OpenCV"]}]},{"id":"language_rights","label":"Language and Rights","entries":[{"key":"dc:language.iso","label":"Language (ISO)","values":["en"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier.uri","label":"Identifier URI","values":["http://hdl.handle.net/11427/41869"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description.abstract","label":"Abstract","values":["There are many types of emotions that one can experience and they usually have a direct impact on a person's behaviour. Emotions can be conveyed in several ways such as gestures/body movement, words or facial expressions and this dissertation we aim to distinguish the emotional state of a person based on their facial expressions. Several approaches have been devised in this regard by various past researchers within the computer vision field but unfortunately, despite the similarities in the adopted techniques for the facial and emotion detection processes, there still exist some discrepancies regarding their performances when applied to different images or video streams. As such, the goal of this dissertation is to develop a program that can analyse a real-time video stream and take in each of the frames as an image snapshot which can be in turn processed to efficiently identify faces and recognise a person's emotion based on their facial expressions. Two scenarios, namely Frontal only, and Profile and Frontal, each with their datasets were accounted for in this research. The first dataset (Frontal) consists only of users who are facing forward and the second one (Profile and Frontal) consists of users who are facing forward as well as sideways. Convolutional Neural Network (CNN) models were constructed for each of the given datasets on both the augmented and non-augmented versions of these datasets to obtain the best possible model for each scenario before applying such model to a real-time video stream. In both scenarios, the augmented models outperformed the non-augmented models when tested on unseen static image data and when such a model was applied to a real-time video stream with the help of the OpenCV library and the relevant Haar Cascade classifiers, required for the face detection process (depending on which scenario), fairly accurate results were obtained when each frame within the video stream were converted into an image snapshot before classification. The code for this dissertation can be found here: https://github.com/Drish19/Facial-Emotion-Recognition."]},{"key":"dc:title","label":"Title","values":["Real-time video sentiment analysis through the use of snapshots"]}]}],"canonical_facts":{"dc:contributor.advisor":["Nyirenda, Juwa"],"dc:creator":["Ramma, Sudiptee"],"dc:date.accessioned":["2025-09-19T09:54:23Z"],"dc:date.available":["2025-09-19T09:54:23Z"],"dc:date.issued":["2025"],"dc:description.abstract":["There are many types of emotions that one can experience and they usually have a direct impact on a person's behaviour. Emotions can be conveyed in several ways such as gestures/body movement, words or facial expressions and this dissertation we aim to distinguish the emotional state of a person based on their facial expressions. Several approaches have been devised in this regard by various past researchers within the computer vision field but unfortunately, despite the similarities in the adopted techniques for the facial and emotion detection processes, there still exist some discrepancies regarding their performances when applied to different images or video streams. As such, the goal of this dissertation is to develop a program that can analyse a real-time video stream and take in each of the frames as an image snapshot which can be in turn processed to efficiently identify faces and recognise a person's emotion based on their facial expressions. Two scenarios, namely Frontal only, and Profile and Frontal, each with their datasets were accounted for in this research. The first dataset (Frontal) consists only of users who are facing forward and the second one (Profile and Frontal) consists of users who are facing forward as well as sideways. Convolutional Neural Network (CNN) models were constructed for each of the given datasets on both the augmented and non-augmented versions of these datasets to obtain the best possible model for each scenario before applying such model to a real-time video stream. In both scenarios, the augmented models outperformed the non-augmented models when tested on unseen static image data and when such a model was applied to a real-time video stream with the help of the OpenCV library and the relevant Haar Cascade classifiers, required for the face detection process (depending on which scenario), fairly accurate results were obtained when each frame within the video stream were converted into an image snapshot before classification. The code for this dissertation can be found here: https://github.com/Drish19/Facial-Emotion-Recognition."],"dc:identifier.uri":["http://hdl.handle.net/11427/41869"],"dc:language.iso":["en"],"dc:publisher.department":["Department of Statistical Sciences"],"dc:publisher.institution":["University of Cape Town"],"dc:subject":["Emotion recognition","Facial emotion recognition","Face detection","Emotion classification","Convolutional Neural Network (CNN)","OpenCV"],"dc:title":["Real-time video sentiment analysis through the use of snapshots"],"dc:type":["Thesis / Dissertation"],"dc:type.qualificationlevel":["Masters","MSc"]},"updated_at":"2026-07-22T22:22:38Z"}