22 #include <opencv2/core.hpp>
24 #include <utils/image_utils.h>
26 #include "models/image_model.h"
51 float confidenceThreshold,
52 const std::string& layout =
"",
54 RESIZE_MODE resizeMode = RESIZE_KEEP_ASPECT);
56 std::unique_ptr<ResultBase> postprocess(
InferenceResult& infResult)
override;
58 std::shared_ptr<InternalModelData> preprocess(
const InputData& inputData, ov::InferRequest& request)
override;
61 void prepareInputsOutputs(std::shared_ptr<ov::Model>& model)
override;
63 cv::Size inputLayerSize;
66 float confidenceThreshold;
69 std::string embeddingsTensorName;
70 std::string heatmapsTensorName;
71 std::string nmsHeatmapsTensorName;
73 static const int numJoints = 17;
74 static const int stride = 32;
75 static const int maxNumPeople = 30;
76 static const cv::Vec3f meanPixel;
77 static const float detectionThreshold;
78 static const float tagThreshold;
80 void changeInputSize(std::shared_ptr<ov::Model>& model);
82 std::string findTensorByName(
const std::string& tensorName,
const std::vector<std::string>& outputsNames);
84 std::vector<cv::Mat> split(
float* data,
const ov::Shape& shape);
86 std::vector<HumanPose> extractPoses(std::vector<cv::Mat>& heatMaps,
87 const std::vector<cv::Mat>& aembdsMaps,
88 const std::vector<cv::Mat>& nmsHeatMaps)
const;
Definition: hpe_model_associative_embedding.h:39
HpeAssociativeEmbedding(const std::string &modelFileName, double aspectRatio, int targetSize, float confidenceThreshold, const std::string &layout="", float delta=0.0, RESIZE_MODE resizeMode=RESIZE_KEEP_ASPECT)
Definition: hpe_model_associative_embedding.cpp:45
Definition: image_model.h:32
Definition: results.h:113
Definition: internal_model_data.h:19