Automating Education with Computer Vision
Uhm-azing Classroom (엄청난 강의실) is a smart classroom platform that automates and assists repetitive tasks in lecture environments using cutting-edge computer vision technologies. Our system supports face-recognition attendance, real-time lecture material interaction, and random presenter selection—all in one seamless pipeline.
- 🎯 Automated Attendance: Face recognition-based attendance system
- 🖐️ Interactive Lectures: Hand gesture-controlled pointer and slides
- 🎲 Fair Selection: Random presenter selection from detected students
- 🚁 Flexible Input: Supports both drone and Raspberry Pi camera inputs
graph LR
A[🚁 Drone/PiCam] -->|Video Stream| B[📹 ZMQ Server]
B -->|Frames| C[🤖 CV Processing]
C -->|Recognition Results| D[📡 WebSocket Server]
D -->|Real-time Data| E[🖥️ Web Dashboard]
C -->|Attendance Data| F[📊 CSV Reports]
| Component | Input | Processing | Output |
|---|---|---|---|
| Uhm-Tendance | Video frames | PyTorch CNN + Face Recognition | Attendance records |
| Pow-Uhm Point | Video frames | MediaPipe + Hand Tracking | Pointer coordinates |
| Pick Me, Uhm! | Video frames | OpenCV + Object Detection | Selected student |
|
김태화 📝 Documentation |
김태량 🖐️ Gesture Recognition |
박형빈 🖐️ Hand Tracking |
이찬 🎓 Attendance System |
홍석진 🎲 Presenter Selection |
손찬수 🚁 Hardware Setup |
손인화 🎓 Face Recognition |
|
이가은 💻 Web Development |
||||||
# Real-time attendance tracking
- PyTorch-based CNN classification
- ZMQ video stream processing
- WebSocket broadcasting
- CSV report generationTechnologies: OpenCV, PyTorch, ZMQ, WebSocket
# Gesture-based slide control
- Hand keypoint detection
- Gesture classification
- Pointer coordinate mapping
- Slide navigation controlTechnologies: OpenCV, MediaPipe, Hand Tracking
# Fair student selection
- Crowd detection
- Student counting
- Random selection algorithm
- Visual feedback systemTechnologies: OpenCV, Object Detection, DNN
# Python 3.8 or higher
python --version
# Install dependencies
pip install -r requirements.txt# Clone the repository
git clone https://github.com/your-org/uhm-azing-classroom.git
cd uhm-azing-classroom
# Set up virtual environment
conda create -n icv python=3.8
conda activate icv
# Install packages
pip install opencv-python torch torchvision mediapipe websockets pyzmq# 1. Start AI Server
python 03_run_attendance_server.py
# 2. Start Camera Client (Drone/PiCam)
python zmq_client.py
# 3. Open Web Dashboard
# Navigate to ws://localhost:5556실제 강의실 환경에서 테스트된 실시간 시스템
|
Real-time face recognition |
Interactive slide navigation |
Fair presenter picking |
We welcome contributions! Please check out our Contributing Guidelines.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Computer Vision Course, University
- Professor Uhm and Teaching Assistants
- All team members for their dedication
- Open source community
Built with ❤️ by Team 4 | Computer Vision Term Project