Python package provinding tools for artistic interactive applications using AI
Created by ReDrawing Campinas team for the OpenCV AI 2021 Competition.
Stages are the basic processing units of the redrawing package. They receive data objects from input channels, processes them and output data in the output channels.
Examples of stages:
|OAK_Stage||Handles a OAK camera. Can be changed using OAK_Substages, like a Body detector or a Hand gesture detector|
|PCR_Viewer||Visualizer for image, depth and body pose data|
|CameraReceiver/IMUReceiver||Receives data from a smarthphone|
|UKF_IMU||UKF filter for orientation estimation using IMU data|
Data and communication
All inter stage data communication occours using Data classes.
Examples of data classes:
|BodyPose||Stores body pose data (keypoints)|
|Image||Stores image data|
|Depth_Map||Stores depth data|
|IMU||Stores IMU data|
For exchange data with client applications, the UDP_Stage can be used, using UDP protocol with JSON converted messages. We also have client libraries for receiving and decoding data:
- redrawing_java: client library for Java
- ReDrawing for Processing: client library for Processing, encapsulates the redrawing_java library