Skip to main content

Emotion detection system

Emotion detection system using python 


An emotion detection system using Python and a pre-trained model like fer (Facial Emotion Recognition) or DeepFace. This code will use the DeepFace library, which supports multiple models for facial emotion recognition.

Step 1: Install Required Libraries

pip install deepface opencv-python

Step 2: Write the Emotion Detection Code

import cv2
from deepface import DeepFace # Load the pre-trained DeepFace model for emotion detection def detect_emotion(image_path): # Analyze the image to detect emotions analysis = DeepFace.analyze(img_path=image_path, actions=['emotion']) # Get the dominant emotion dominant_emotion = analysis['dominant_emotion'] return dominant_emotion # Capture video from the webcam def emotion_from_webcam(): cap = cv2.VideoCapture(0) while True: ret, frame = cap.read() # Save the frame as a temporary image cv2.imwrite("temp.jpg", frame) # Detect emotion in the current frame emotion = detect_emotion("temp.jpg") # Display the detected emotion on the frame cv2.putText(frame, emotion, (50, 50), cv2.FONT_HERSHEY_SIMPLEX, 1, (255, 0, 0), 2, cv2.LINE_AA) # Show the frame cv2.imshow('Emotion Detection', frame) # Break the loop if 'q' is pressed if cv2.waitKey(1) & 0xFF == ord('q'): break # Release the video capture object and close all OpenCV windows cap.release() cv2.destroyAllWindows() # Run the emotion detection from webcam emotion_from_webcam()

How the Code Works:

  1. DeepFace: The DeepFace.analyze function is used to analyze the image and detect emotions. It supports several models, but the default model is VGG-Face.
  2. Webcam Capture: The code captures video from the webcam and detects emotions in real-time.
  3. Display Emotion: The detected emotion is overlaid on the video frame.

Step 3: Run the Code

When you run the code, it will open a webcam feed, detect emotions in real-time, and display the dominant emotion on the video stream. Press q to exit the webcam feed.

Notes:

  • The emotion detection is based on facial expressions, so ensure your face is visible in the webcam for accurate results.
  • You can replace "temp.jpg" with frame directly if you prefer to analyze the frame without saving it as an image file. However, the current approach ensures that the frame is properly analyzed in case of any format issues.

Comments

Popular posts from this blog

Unlocking Efficiency and Consistency with the Docker Library

Unlocking Efficiency and Consistency with the Docker Library In the dynamic landscape of software development and deployment, efficiency, consistency, and scalability are key pillars of success. Docker, a leading containerization platform, has revolutionized the way applications are built, shipped, and run. At the heart of Docker's ecosystem lies the Docker Library, a treasure trove of container images that empowers developers with ready-to-use solutions and accelerates the development process. Understanding the Docker Librar y: The Docker Library, often referred to as the Docker Hub, is a centralized repository of container images spanning a wide array of software stacks, frameworks, and tools. These images serve as pre-packaged environments, encapsulating everything needed to run an application, including dependencies, libraries, and configuration settings. The Docker Library offers a vast collection of official and community-contributed images, covering popular technologies like...

What is Fuzzy Logic?

 Title: Demystifying Fuzzy Logic: A Primer for Engineering Students Introduction In the world of engineering, precise calculations and binary decisions often reign supreme. However, there are real-world scenarios where the classical "yes" or "no" approach falls short of capturing the nuances of human thought and the complexity of certain systems. This is where fuzzy logic comes into play. Fuzzy logic is a powerful tool that allows engineers to handle uncertainty and vagueness in a more human-like way. In this article, we'll explore the basics of fuzzy logic, its applications, and how it can benefit engineering students. Understanding Fuzzy Logic Fuzzy logic, developed by Lotfi Zadeh in the 1960s, is a mathematical framework that deals with reasoning and decision-making in the presence of uncertainty and imprecision. Unlike classical binary logic, which relies on "true" or "false" values, fuzzy logic works with degrees of truth, allowing for a...

Machine Learning: The Power , Pros and Potential.

 **Title: Machine Learning: The Power, Pros, and Potential Pitfalls** **Introduction** Machine Learning (ML) stands as one of the most transformative technologies of our time, offering a glimpse into a future where data-driven decisions and automation redefine how we live and work. In this blog, we'll delve into the world of machine learning, exploring its myriad benefits, potential drawbacks, and the exciting possibilities it holds for the future. **Understanding Machine Learning** Machine learning is a subset of artificial intelligence that equips computers with the ability to learn and improve from experience without being explicitly programmed. It relies on algorithms and statistical models to make predictions or decisions based on data, a process often described as "training" a model. **The Benefits of Machine Learning** 1. **Automation and Efficiency**: ML can automate repetitive tasks, freeing up human resources for more creative and complex endeavors. This boosts...