Bundle ONNX Runtime inference library for running pre-trained models. Supports object detection (YOLO), image classification (ResNet), segmentation (DeepLab), pose estimation (OpenPose), face recognition, and Phi-3 text generation. Compile with -lib onnx.
OpenPoseSession
OpenPose inference session for human pose estimation (17-keypoint COCO skeleton). Uses letterbox preprocessing with inverse keypoint mapping for accurate coordinates. Supports 18/19/25/26/57-channel output configurations.
Example
labels := ["nose", "left_eye", "right_eye", "left_ear", "right_ear",
"left_shoulder", "right_shoulder", "left_elbow", "right_elbow",
"left_wrist", "right_wrist", "left_hip", "right_hip",
"left_knee", "right_knee", "left_ankle", "right_ankle"];
session := OpenPoseSession->New("openpose.onnx");
result := session->Inference(image_bytes, labels);
each(kp in result->GetClassifications()) {
if(kp->GetConfidence() > 0) {
"{kp->GetName()}: [{kp->GetNormalizedX()}, {kp->GetNormalizedY()}]"->PrintLine();
};
};
session->Close();Operations
Inference #
OpenPose image inference
method : public : Inference(image:Byte[], ) ~ API.Onnx.OpenPoseResultParameters
| Name | Type | Description |
|---|---|---|
| image | Byte | width width |
Example
labels := ["nose", "left_eye", "right_eye", "left_ear", "right_ear",
"left_shoulder", "right_shoulder", "left_elbow", "right_elbow",
"left_wrist", "right_wrist", "left_hip", "right_hip",
"left_knee", "right_knee", "left_ankle", "right_ankle"];
session := OpenPoseSession->New("openpose.onnx");
image := FileReader->ReadBinaryFile("person.jpg");
result := session->Inference(image, labels);
each(kp in result->GetClassifications()) {
if(kp->GetConfidence() > 0) {
"{$kp->GetName()}: ({$kp->GetNormalizedX()},{$kp->GetNormalizedY()})"->PrintLine();
};
};
session->Close();