|
Smart Camera ESP32
An AI-driven, real-time Sentry Turret platform leveraging asynchronous I/O and computer vision to deliver high-precision autonomous motion tracking on resource-constrained embedded hardware.
|
An abstract base class (Interface) that defines the contract for detection algorithms. This class allows the Controller to remain agnostic of the specific detection method (e.g., Color, AI, or Motion) by providing a consistent interface. More...
#include <base_detection_module.h>
Public Member Functions | |
| virtual | ~BaseDetectionModule ()=default |
| Virtual destructor to ensure proper cleanup of derived classes. | |
| virtual std::tuple< MoveX, MoveY > | detect_object (camera_buffer_t frame)=0 |
| Analyzes a camera frame to locate a specific object. | |
| virtual MotionData | get_motion_data () const |
| Get the latest motion data from the detection module. | |
An abstract base class (Interface) that defines the contract for detection algorithms. This class allows the Controller to remain agnostic of the specific detection method (e.g., Color, AI, or Motion) by providing a consistent interface.
|
pure virtual |
Analyzes a camera frame to locate a specific object.
| frame | Pointer to the ESP32-CAM frame buffer (camera_fb_t). |
Implemented in CameraDiffDetection.
|
inlinevirtual |
Get the latest motion data from the detection module.
This method provides access to the motion metrics detected. Derived classes should override this to return their current metrics.
Reimplemented in CameraDiffDetection.