Inspiration
The Attendify project was inspired by the inefficiencies and errors associated with traditional methods of tracking student attendance in kenyan universities, such as calling out names or manual sign-ins or RFID-based systems. These methods are prone to inaccuracies, inefficient, time-consuming, and susceptible to errors or forgery. The goal was to develop a more efficient, automated solution using face recognition to simplify attendance tracking in educational institutions.
What it does
Attendify is a smart, automated student attendance system that uses face recognition to track student attendance in real-time. The system captures student images through a webcam, detects faces using the Haar-Cascade algorithm, and identifies students through the Local Binary Pattern Histogram (LBPH) algorithm. Once recognized, the system logs their attendance, stores it in a secure database, and generates attendance reports. Administrators can manage student records, view attendance reports, and download them in an Excel format. It simplifies the entire attendance process, making it faster and more reliable.
How we built it
We developed Attendify using:
- Python for backend logic and face detection/recognition algorithms.
- Django as the web framework to manage user authentication, attendance logic, and database interactions.
- PostgreSQL for storing student data, attendance logs, and other system information.
- Railway to host the PostgreSQL database, ensuring easy access and scalability.
- Bootstrap, CSS3 for building an intuitive, responsive user interface that is easy to navigate for both students and administrators.
- JavaScript for call to action functionalities
- OpenCV for implementing face detection and recognition, using pre-trained models to recognize students accurately.
- Postman for testing and verifying the APIs, ensuring smooth communication between the frontend and backend systems.
Challenges we ran into
We face the challenge of
- Lighting Conditions: The accuracy of face recognition was affected by varying lighting conditions. We had to fine-tune the face detection and recognition algorithms to perform consistently across different environments, ensuring reliable performance even in low-light settings.
Accomplishments that we're proud of
We are proud to have developed a fully functional face recognition attendance system that:
- Delivers accurate and fast recognition results,
- Automates attendance logging seamlessly, reducing the workload for teachers and administrators and preventing any tampering or fraud.
- Improves the overall user experience, with a clean, easy-to-use interface for administrators, students, and faculty, allowing them to manage attendance data effortlessly.
- Generates comprehensive attendance reports that can be downloaded in Excel format, making attendance management straightforward and organized.
What we learned
Through building, we learned valuable lessons about:
- Computer vision, especially in the context of face detection and recognition, which required deep understanding of algorithms like Haar-Cascade and LBPH to fine-tune the system's performance.
- The importance of system optimization and scalability in web development. Handling real-time data and ensuring that the system could accommodate future growth in terms of users and classrooms was critical.
- User-centered design, which involved making sure that the system is easy to navigate for both technical and non-technical users. The design process required continuous feedback to create an interface that could meet the expectations of educators and students alike.
What's next for Attendify
Looking forward, we plan to expand Attendify by:
- Integrating additional hardware, such as external CCTV cameras, to increase the reliability of face recognition by capturing faces from multiple angles. This will enhance the system’s performance in larger classrooms or more complex environments.
- Adding mobile app support, allowing students and faculty to access the system via their smartphones. This would increase accessibility and provide more convenience for users, enabling them to check attendance and reports on the go.
Log in or sign up for Devpost to join the conversation.