♻️ Recyclops: Smart Recycling Assistant 🤖

🌱 Inspiration

The idea for Recyclops came from the growing global challenge of waste management and the lack of accessible, user-friendly recycling systems. 🗑️ With a vision to simplify recycling decisions and reduce landfill waste, we designed a smart system leveraging the latest in AI, sensors, and hardware technology. 🌍✨

🛠️ What it does

Recyclops is a Computer Vision and AI powered recycling assistant that:

  • Detects objects using ultrasonic motion sensors and a camera.
  • Identifies the material of the object using AI-based material recognition.
  • Provides real-time feedback with:
    • Visual Guidance: A facial display module shows happy, neutral, or angry faces based on recycling actions.
    • Audio Feedback: Text-to-speech delivers spoken instructions on proper waste disposal.
  • Tracks user behavior to ensure the object is placed in the correct location.

💡 How we built it

Recyclops runs on a Raspberry Pi 5, integrating multiple hardware and software components:

  • 🔧 Hardware:
    • IMX500 Camera (hardware/cameras/imx500_camera.py): Captures images for object and material recognition.
    • Ultrasonic Motion Sensor (hardware/motion_sensor/ultrasonic_motion_sensor.py): Detects the presence of objects to trigger the recycling process.
    • USB Speaker (hardware/speakers/USB_speaker.py): Provides verbal feedback via text-to-speech.
    • Facial Display (face_display/face_display.py): Displays facial expressions to engage users visually.
  • 💻 Software:
    • Core System (main.py): Manages the state machine for scanning, tracking, and providing feedback.
    • Object Detection:
    • Motion Detection (object_tracking/motiondetection.py): Tracks object movement using OpenCV.
    • Object Tracker (object_tracking/object_tracker.py): Captures images and integrates motion sensor data.
    • AI Material Recognition:
    • OpenAI API Client (material_recognition/client.py): Classifies materials from captured images.
    • API Response Parser (material_recognition/prompt_output.py): Structures AI responses for actionable insights.
    • Text-to-Speech (text_to_speech/tts.py): Converts text instructions into speech.
    • Logger Utility (utils/custom_logger.py): Centralized logging for debugging and system monitoring.

🚧 Challenges we ran into

  • Hardware Compatibility: Integrating multiple hardware components on the Raspberry Pi while managing limited resources.
  • Real-Time Processing: Ensuring smooth transitions between object detection, material recognition, and feedback.
  • AI Response Parsing: Structuring complex responses into simple, user-friendly instructions.
  • Motion Detection: Reducing false positives in low-light or cluttered environments.

🎉 Accomplishments that we're proud of

  • Developed a fully functional recycling assistant that provides interactive feedback.
  • Seamlessly integrated AI, hardware, and software into a unified system.
  • Created a scalable framework to support additional object types and materials.

📚 What we learned

  • Efficient Hardware Utilization: Optimizing performance on Raspberry Pi 5 was essential for real-time operations.
  • User Experience Design: Audio-visual feedback enhances user engagement and compliance.
  • AI Integration: Proper structuring of AI-generated data is critical for usability.

🚀 What's next for Recyclops

  • Improved Material Recognition: Training a custom AI model for higher accuracy.
  • Enhanced Feedback: Adding multilingual support and more expressive visual feedback.
  • Gamification: Rewarding users for correct recycling actions with points or achievements.
  • Mobile App Integration: Extending functionality to smartphones for tracking and analytics.

Recyclops represents a leap forward in making recycling accessible, fun, and impactful. 🌎♻️✨

Share this project:

Updates