Movie Recommendation System Using Real Time Image

This project presents a novel approach to enhancing user experience through an emotion-aware movie recommendation system. By leveraging computer vision and deep learning, the system detects a user’s facial expressions in real-time and identifies the dominant emotion. Subsequently, it recommends a curated list of movies aligned with the identified emotion by dynamically scraping genre-specific data from IMDb. This integration of affective computing and content-based recommendation aims to create an emotionally intelligent system capable of delivering personalized entertainment choices. Main Objectives Detect emotions from facial expressions in real-time. Analyze which emotion appears most frequently. Recommend movies based on that detected emotion. Use real IMDb data for movie recommendations. Introduction Emotion recognition has emerged as a significant area of interest within human-computer interaction, enabling systems to adapt responses based on a user's emotional state. In this project, we demonstrate a practical application of emotion detection in the entertainment domain by developing a system that suggests movies based on the user’s current mood. Utilizing a pre-trained deep learning model for emotion classification, OpenCV for real-time image processing, and web scraping for dynamic data retrieval from IMDb, the system effectively bridges affective computing with recommendation systems. System Architecture Real-Time Emotion Detection The system captures video input through a webcam and processes each frame to detect faces using OpenCV’s Haar Cascade Classifier. Once a face is detected, it is converted to grayscale, resized to 48x48 pixels, and normalized before being passed to a pre-trained Convolutional Neural Network (CNN) model. The model classifies the facial expression into one of the following seven emotions: Angry Disgust Fear Happy Neutral Sad Surprise Emotion Frequency Analysis Over the course of the session, the system maintains a count of how many times each emotion is detected. Once the detection session is terminated (triggered by a keystroke), the emotion with the highest frequency—excluding “Neutral”—is considered the dominant emotional state of the user. Genre Mapping and Recommendation Strategy Each emotion is mapped to a predefined movie genre based on common psychological associations and cinematic conventions. For example: Sad → Drama Disgust → Musical Angry → Family Fear → Sport Surprise → Film Noir Happy/Enjoyment → Comedy/Thriller Trust → Western This emotion-to-genre mapping enables the system to tailor recommendations based on emotional relevance. IMDb Web Scraping and Data Extraction To fetch real-time movie suggestions, the system issues HTTP requests to IMDb genre-specific search URLs. The HTML content is parsed using the BeautifulSoup library, and movie titles are extracted using regular expressions. A set number of top movies (typically 10–14) are displayed based on the current popularity and relevance on IMDb. This ensures dynamic and up-to-date recommendations without relying on static datasets. Technologies Used Python OpenCV – for real-time webcam feed and face detection TensorFlow/Keras – to load and use a pre-trained Convolutional Neural Network (CNN) model for emotion classification Haar Cascade Classifier – for detecting faces in the video frames IMDb Web Scraping (with BeautifulSoup) – to fetch movies based on emotion-related genres NumPy – for efficient numerical operations Requests & Regex – for HTTP requests and extracting relevant movie data from IMDb Conclusion The proposed system effectively combines deep learning, computer vision, and web technologies to deliver an interactive and emotionally intelligent recommendation engine. Its ability to recognize user emotions in real time and translate them into personalized content suggestions makes it a promising prototype for applications in smart entertainment systems, human-computer interaction, and emotion-aware digital services.

Publication Details

Journal
Zenodo (CERN European Organization for Nuclear Research)
Published
2025-04-08
DOI
https://doi.org/10.5281/zenodo.15175851
Primary Topic
Emotion and Mood Recognition
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Movie Recommendation System Using Real Time Image

Zenodo (CERN European Organization for Nuclear Research)
Emotion and Mood Recognition
article

Movie Recommendation System Using Real Time Image

article en

Abstract

This project presents a novel approach to enhancing user experience through an emotion-aware movie recommendation system. By leveraging computer vision and deep learning, the system detects a user’s facial expressions in real-time and identifies the dominant emotion. Subsequently, it recommends a curated list of movies aligned with the identified emotion by dynamically scraping genre-specific data from IMDb. This integration of affective computing and content-based recommendation aims to create an emotionally intelligent system capable of delivering personalized entertainment choices. Main Objectives Detect emotions from facial expressions in real-time. Analyze which emotion appears most frequently. Recommend movies based on that detected emotion. Use real IMDb data for movie recommendations. Introduction Emotion recognition has emerged as a significant area of interest within human-computer interaction, enabling systems to adapt responses based on a user's emotional state. In this project, we demonstrate a practical application of emotion detection in the entertainment domain by developing a system that suggests movies based on the user’s current mood. Utilizing a pre-trained deep learning model for emotion classification, OpenCV for real-time image processing, and web scraping for dynamic data retrieval from IMDb, the system effectively bridges affective computing with recommendation systems. System Architecture Real-Time Emotion Detection The system captures video input through a webcam and processes each frame to detect faces using OpenCV’s Haar Cascade Classifier. Once a face is detected, it is converted to grayscale, resized to 48x48 pixels, and normalized before being passed to a pre-trained Convolutional Neural Network (CNN) model. The model classifies the facial expression into one of the following seven emotions: Angry Disgust Fear Happy Neutral Sad Surprise Emotion Frequency Analysis Over the course of the session, the system maintains a count of how many times each emotion is detected. Once the detection session is terminated (triggered by a keystroke), the emotion with the highest frequency—excluding “Neutral”—is considered the dominant emotional state of the user. Genre Mapping and Recommendation Strategy Each emotion is mapped to a predefined movie genre based on common psychological associations and cinematic conventions. For example: Sad → Drama Disgust → Musical Angry → Family Fear → Sport Surprise → Film Noir Happy/Enjoyment → Comedy/Thriller Trust → Western This emotion-to-genre mapping enables the system to tailor recommendations based on emotional relevance. IMDb Web Scraping and Data Extraction To fetch real-time movie suggestions, the system issues HTTP requests to IMDb genre-specific search URLs. The HTML content is parsed using the BeautifulSoup library, and movie titles are extracted using regular expressions. A set number of top movies (typically 10–14) are displayed based on the current popularity and relevance on IMDb. This ensures dynamic and up-to-date recommendations without relying on static datasets. Technologies Used Python OpenCV – for real-time webcam feed and face detection TensorFlow/Keras – to load and use a pre-trained Convolutional Neural Network (CNN) model for emotion classification Haar Cascade Classifier – for detecting faces in the video frames IMDb Web Scraping (with BeautifulSoup) – to fetch movies based on emotion-related genres NumPy – for efficient numerical operations Requests & Regex – for HTTP requests and extracting relevant movie data from IMDb Conclusion The proposed system effectively combines deep learning, computer vision, and web technologies to deliver an interactive and emotionally intelligent recommendation engine. Its ability to recognize user emotions in real time and translate them into personalized content suggestions makes it a promising prototype for applications in smart entertainment systems, human-computer interaction, and emotion-aware digital services.

Zenodo (CERN European Organization for Nuclear Research)
Openalex Percentile: Top 55%
Emotion and Mood Recognition
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.