Python OpenCV NumPy Raspberry Pi .cursorrules prompt file
About .cursorrules prompt file
What you can build
Image and Audio Archive System for Libraries: Develop a Raspberry Pi-based system that uses OpenCV and SoundDevice to digitize books and associate audio recordings for library archives. Use SQLite for efficient metadata storage and RPi.GPIO for controlling the process with physical buttons.
Home Automation Assistant with Audio Commands: Create a home automation system using Raspberry Pi that processes audio commands via the sounddevice library and controls smart devices using RPi.GPIO. Optimize for low CPU and memory usage on Raspberry Pi.
Interactive Digital Picture Frame: Design a digital picture frame that uses image processing to change displayed images based on detected motion or presence. Utilize OpenCV for motion detection, and manage images with SQLite database for easy updates and retrieval.
Voice-Controlled Personal Journal: Implement a personal journaling system where users can record audio entries managed with SQLite on a Raspberry Pi. Use RPi.GPIO for starting and stopping recordings and integrate image processing for associating images with audio entries.
DIY Wildlife Observation Camera: Build a low-cost wildlife observation camera using Raspberry Pi that captures images with OpenCV and records sounds with the sounddevice library. Use perceptual hashing to detect new animal patterns and manage collected data with SQLite.
Smart Doorbell with Facial Recognition: Develop a smart doorbell system using Raspberry Pi equipped with a camera and microphone. Use OpenCV for facial recognition and sounddevice for communication, storing visitor information with SQLite for security analysis.
Customizable Automation Controller for Makers: Create a Raspberry Pi-based controller for DIY projects, utilizing RPi.GPIO for interfacing with sensors and actuators. Include image and audio processing functionalities with OpenCV and SoundDevice for custom applications.
Portable Audio-Visual Storytelling Device for Kids: Create an educational device where children interact with physical buttons to trigger audio stories paired with visual content, using Raspberry Pi with RPi.GPIO and managing the content database with SQLite.
Hands-Free Compliance Checker for Manufacturing: Design a system to verify manufactured products' compliance using OpenCV for visual checks and sounddevice for audible alerts. Manage process logs and check results with SQLite, integrated via Raspberry Pi.
Remote Nature Monitoring Station: Develop a remote monitoring system using Raspberry Pi, capturing images and audio data from nature settings for research purposes. Efficiently handle large datasets with batch processing and SQLite indexing.
Benefits
- Comprehensive focus on Raspberry Pi compatibility, ensuring low memory and CPU usage strategies are prioritized for efficient processing.
- Emphasis on using Python libraries for powerful feature extraction, perceptual hashing, and managing low-resources hardware interactions efficiently.
- Encourages a structured approach using object-oriented and functional programming, following PEP 8, with version control for clean, maintainable code management.
Synopsis
Developers working on Raspberry Pi projects involving image and audio processing can use this prompt to build an efficient system for digitizing books with synchronized audio narration.
Overview of .cursorrules prompt
The .cursorrules file outlines a comprehensive set of guidelines for implementing image processing, audio manipulation, and hardware integration on Raspberry Pi using Python libraries such as OpenCV, NumPy, SoundDevice, SQLite, and RPi.GPIO. Key areas include concise technical responses with clear Python examples, efficient workflows prioritizing performance and memory optimization, and ensuring compatibility with low-spec hardware. The file emphasizes object-oriented and functional programming strategies, use of SQLite for database management, and integration with Raspberry Pi hardware through the RPi.GPIO library. It provides detailed strategies for image and audio processing, error handling, debugging, and performance optimization, along with the necessary dependencies and conventions for maintaining structured code and documentation.