22 {
24
27 {
28 auto encoded_image = utils::readFile(
image_path);
29 error =
sfeImageDecode(encoded_image.data(), encoded_image.size(), &image);
30 utils::checkError(error);
31
32 std::cout << "Image size: " << image.width << "x" << image.height << std::endl;
33 }
34
35 std::vector<SFEDetection> detections(10);
36 {
37
41 utils::checkError(error);
42
43
44 size_t detection_count = detections.size();
47 image,
49 detections.data(), &detection_count);
50 utils::checkError(error);
51 detections.resize(detection_count);
52
53 std::cout << "Detected " << detection_count << " persons" << std::endl;
54 }
55}
float detection_threshold
std::string solver_detect
const auto SOLVER_PARAMETERS
void sfeSolverFree(SFESolver solver)
Free memory associated with SFESolver.
void * SFESolver
Solver provides an abstract interface over inference models and engines.
void * SFEError
Error type used to hold optional error message.
void sfeImageFree(SFEImage image)
Free memory associated with SFEImage.
SFEError sfeSolverCreate(const char *solver_file, const SFESolverParameter *solver_parameters, size_t solver_parameters_count, SFESolver *out_solver)
Create new solver from solver file.
SFEError sfeImageDecode(const unsigned char *data, size_t data_len, SFEImage *out_image)
Decode SFEImage from raw image data of various formats. Eg. PNG, JPEG ..
SFEError sfeDetect(SFESolver solver, SFEImageView image, float threshold, SFEDetection *out_detections, size_t *in_out_detection_count)
Detect objects in the source image using unified detection API.
Raw owned raster image representation, HWC|BGR order.