why is it useful
The Hat Hater demonstrates how AI can be applied to automate typical social interaction and reminders. Not only does this reduce the need for human enforcement but it does it in a respectful way that keeps the importance of the building. Additionally, it targets specific people which aids in getting communication through the masses. This leads to a more effective delivery, similar to a sales person.
What it does
The Hat Hater uses a camera and AI model to detect when someone is wearing a hat when they shouldn't be. I used the memorial student center as a particular case. When it spots a hat, it automatically turns toward the person, tracks their movement, and politely says, “Please remove your hat,” until the person properly removes their hat, upon which it returns to its original position and continues scanning. Outside the scope of keeping campus tradition alive, this can also be used to enforce safety protocols on construction sites, tracking unidentified personnel, etc.
How we built it
This project was mainly built in vscode using PIO IDE, esp32, and a servo motor. The case was designed and 3D-printed using TinkerCad and ultimaker cura. A pre-trained AI was used which was then fine-tuned to track a specific object(hats). The AI portion of the backend, and the servo computation was all programmed using Python while the webserver and esp32 servo control instructions were programmed in C++
how it works
This project was built off a pre-trained ai imported from ultralytics. I then fine-tuned the AI by feeding it 4000 images of people wearing hats, effectively leading to 20+ hours of training time. Once the AI had reached a appropriate intelligence, I then constructed the rest of the turret using an esp32-devkit and esp32-cam. The esp32-cam creates a webserver which streams its video feed onto the local network. My personal laptop, which contains the fine-tuned ai, then grabs this feed and computes the data. The computed instructions are then sent via local network to the esp32-devkit which controls the servo, spinning the camera to face the person wearing a hat.
Tech stack
Hardware:
- esp32-devkit
- esp32-cam
- servo motor
- battery bank
Software:
- VScode
- C++/Python
- PIO IDE
- Ultimaker Cura
- TinkerCad
Log in or sign up for Devpost to join the conversation.