vitis::ai::OFAYOLO - 3.0 English

Vitis AI Library User Guide (UG1354)

Document ID
UG1354
Release Date
2023-01-12
Version
3.0 English
Base class for detecting objects in the input image (cv::Mat).

Input is an image (cv::Mat).

Output is the position of the pedestrians in the input image.

Sample code:

auto yolo = vitis::ai::OFAYOLO::create("ofa_yolo_pt", true);

Mat img = cv::imread("sample_ofa_yolo.jpg");
auto results = yolo->run(img);

for (auto& box : results.bboxes) {
  int label = box.label;
  float xmin = box.x * img.cols + 1;
  float ymin = box.y * img.rows + 1;
  float xmax = xmin + box.width * img.cols;
  float ymax = ymin + box.height * img.rows;
  if (xmin < 0.) xmin = 1.;
  if (ymin < 0.) ymin = 1.;
  if (xmax > img.cols) xmax = img.cols;
  if (ymax > img.rows) ymax = img.rows;
  float confidence = box.score;

  cout << "RESULT: " << label << "\t" << xmin << "\t" << ymin << "\t" << xmax
       << "\t" << ymax << "\t" << confidence << "\n";
  rectangle(img, Point(xmin, ymin), Point(xmax, ymax), Scalar(0, 255, 0), 1,
            1, 0);
}
imwrite("result.jpg", img);

Quick Function Reference

The following table lists all the functions defined in the vitis::ai::OFAYOLO class:

Table 1. Quick Function Reference
Type Member Arguments
std::unique_ptr< OFAYOLO > create
  • const std::string & model_name
  • bool need_preprocess
OFAYOLOResult run
  • const cv::Mat & image
std::vector< OFAYOLOResult > run
  • const std::vector< cv::Mat > & images