A real-time face recognition system using OpenCV and Python with LBPH and OpenCL for GPU acceleration. Integrated with a MERN stack web interface for video stream processing, user management, and logging of detected faces. This MCA mini project combines machine learning and web development.
- Project Overview
- Features
- Screenshots
- Technologies Used
- Installation
- Usage
- Future Enhancements
- License
- Acknowledgments
This Face Recognition System is designed to identify and log faces in real-time using live video streams. By leveraging the Local Binary Patterns Histogram (LBPH) algorithm with GPU acceleration via OpenCL, this system achieves efficient and accurate face detection. The project also includes a MERN stack-based web interface for managing users, viewing live feeds, and reviewing past detections.
- Real-Time Face Recognition: Detect faces from video streams with OpenCV and LBPH.
- MERN Web Interface: Frontend with React, backend API with Express and Node.js, and MongoDB for data storage.
- User Management: Admin dashboard to manage user roles and access permissions.
- Logging and Reports: Log detected faces with timestamps, including options for viewing detection history.
- GPU Acceleration: Uses OpenCL to optimize performance, especially useful for large datasets or high-resolution video feeds.
- Frontend: React, Tailwind CSS🎨
- Backend: Node.js, Express.js, MongoDB
- Face Recognition: OpenCV, LBPH Algorithm
- GPU Acceleration: OpenCL
- Other Tools: Python for machine learning, Firebase🔥 for authentication
- Node.js and npm
- Python 3.x
- MongoDB (local or MongoDB Atlas)
- OpenCV with OpenCL enabled
-
Clone the Repository:
git clone https://github.com/yourusername/Face-Recognition-System.git cd Face-Recognition-System -
Backend Setup:
- Navigate to the
backendfolder. - Install dependencies:
npm init -y
- Set up your
.envfile with MongoDB connection details.
- Navigate to the
-
Frontend Setup:
- Navigate to the
frontendfolder. - Install dependencies:
- Navigate to the
npm create vite@latest .
npm install
- Configure frontend environment variables as needed.
-
Run the Application:
- Start the backend server:
or use nodemon for live reloading:
node index.js
npm start
- Start the frontend server:
npm run dev
- Start the backend server:
-
Run Face Recognition Script:
- Ensure OpenCV is installed with OpenCL support.
- Run the face detection script:
cd Face-Recognition-System/recognition python gpu_video.py
-
Accessing the System:
- Open the frontend by visiting
http://localhost:3000. - Log in as an admin to access the dashboard and manage settings.
- Open the frontend by visiting
-
Adding Users and Cameras:
- Admins can add new users and cameras for live video monitoring.
-
Viewing Logs:
- Navigate to the Logs section to view previous detections, timestamps, and other details.
- Advanced Face Recognition Models: Integrate deep learning-based face recognition (e.g., FaceNet or DeepFace).
- Enhanced Security: Implement multi-factor authentication.
- Improved Analytics: Add more analytics for detection patterns and user behavior.
This project is licensed under the Hippocratic License HL3-CL-SOC-SV.
Special thanks to the open-source community and to the authors of the packages and libraries used in this project.
For detailed documentation, like college records support me on ko-fi and just messagge me on ko-fi chat. I will provide you the detailed documentation of this project (word file).



