Build a Pan-Tilt Face Tracking Robot (Phase 1 MVP - Python & ESP32-CAM)
Budget: ₹1,500 – ₹12,500 INR
I want to build a highly minimalist, budget-friendly desktop robot that tracks a person's face in real time. This is Phase 1 of a larger project; the goal here is strictly to build the pan-tilt tracking base using low-cost components. The robot will use a camera to follow a user's movements left/right and up/down.
Hardware Framework (Low Budget):
Microcontroller/Camera: ESP32-CAM
Actuators: 2x SG90 Micro Servo Motors (for Pan and Tilt)
Chassis: Minimalist 3D-printed or basic off-the-shelf pan-tilt bracket.
Brain: A local computer running the tracking logic, communicating with the ESP32 over Wi-Fi.
Software Architecture & Requirements:
Video Streaming: The ESP32-CAM must stream its video feed over the local network to a Python environment.
Computer Vision (Python): A lightweight Python script (using OpenCV or MediaPipe) must process the stream, identify the user's face, and calculate the target's coordinates relative to the center of the frame.
Control Loop & Kinematics: The Python script must calculate the required servo adjustments and send movement commands back to the ESP32-CAM via a simple, low-latency protocol (like lightweight HTTP requests or WebSockets).
Clean Code: The Python code must be highly modular and well-documented. Because I have a GCP background, the codebase needs to be structured cleanly so I can eventually scale it, add telemetry, or offload processing to the cloud in later phases.
Deliverables:
A complete, budget-optimized Bill of Materials (BOM) using easily sourceable parts.
Clean, well-documented Python script for the face-tracking logic.
Arduino C++ code for the ESP32-CAM to handle the video stream and receive servo control commands.
A brief wiring diagram and setup guide.
To Apply:
Please share your experience with OpenCV, Python, and basic servo control using microcontrollers. Let me know what low-cost pan-tilt assembly or components you recommend to keep the hardware costs low
Hardware Framework (Low Budget):
Microcontroller/Camera: ESP32-CAM
Actuators: 2x SG90 Micro Servo Motors (for Pan and Tilt)
Chassis: Minimalist 3D-printed or basic off-the-shelf pan-tilt bracket.
Brain: A local computer running the tracking logic, communicating with the ESP32 over Wi-Fi.
Software Architecture & Requirements:
Video Streaming: The ESP32-CAM must stream its video feed over the local network to a Python environment.
Computer Vision (Python): A lightweight Python script (using OpenCV or MediaPipe) must process the stream, identify the user's face, and calculate the target's coordinates relative to the center of the frame.
Control Loop & Kinematics: The Python script must calculate the required servo adjustments and send movement commands back to the ESP32-CAM via a simple, low-latency protocol (like lightweight HTTP requests or WebSockets).
Clean Code: The Python code must be highly modular and well-documented. Because I have a GCP background, the codebase needs to be structured cleanly so I can eventually scale it, add telemetry, or offload processing to the cloud in later phases.
Deliverables:
A complete, budget-optimized Bill of Materials (BOM) using easily sourceable parts.
Clean, well-documented Python script for the face-tracking logic.
Arduino C++ code for the ESP32-CAM to handle the video stream and receive servo control commands.
A brief wiring diagram and setup guide.
To Apply:
Please share your experience with OpenCV, Python, and basic servo control using microcontrollers. Let me know what low-cost pan-tilt assembly or components you recommend to keep the hardware costs low