214const char *
expectedUsageMessage =
"Usage: sudo ./AI_Watch_A1.bin <path/openpose folder/> <./path/openpose.bin> "
215 "<path/images folder/> <path/JSON output folder/>";
229int main (
int argc,
char ** argv) {
230 rs2::pipeline pipelineStream;
233 const char * destinationKafkaTopic =
"topic1";
235 unsigned int user_nFrame = 50, resX = 848, resY = 480;
236 const unsigned short int framesToSkip = 5;
237 const float skeletonThreshold = 0.05;
238 struct rs2_intrinsics color_intrin;
243 myUtility->
startEnvironment(pipelineStream, color_intrin, & scale, resX, resY, destinationKafkaTopic, room);
250 myUtility->
getVideoFrames(user_nFrame, pipelineStream, scale, framesToSkip);
CVPR Lab class represents the CVPR Lab abstraction. The CVPR Lab is a Room with default values....
FacadeSingleton class is used as a single access point to a simplified interface.
void showSkeletons(unsigned int user_nFrame, const float skeletonThreshold)
Retrieve OpenPose's output, convert it to RealSense coordinate's space, show results and save them.
void startEnvironment(rs2::pipeline &pipelineStream, struct rs2_intrinsics &color_intrin, float *scale, unsigned short int resX, unsigned short int resY, const char *destinationKafkaTopic, Room room)
This method is useful to invoke at the boot of the program where we want to initialize the different ...
void getVideoBodyKeyPoints(int *argc, char ***argv)
Start and execute OpenPose submodule.
void getVideoFrames(unsigned int user_nFrame, rs2::pipeline &pipelineStream, float scale, const unsigned short int framesToSkip)
Get user_nFrame video frames from the pipeline by applying a specific scaling factor.
void cleanBuildFolder(void)
This method cleans the build folder, in order to prepare the environment for the next loop iteration....
void sendData(unsigned int user_nFrame)
Send saved results by getVideoBodyKeyPoints(...) via Kafka using the KafkaManager.
static FacadeSingleton * getInstance(void)
Get the unique class instance. This methods should be called in the following scenario: when we just ...
Room class represents the Room abstraction. A Room object has different specifications,...
int main(int argc, char **argv)
Main.
const char * expectedUsageMessage