此基本类用于检测输入图像 (cv::Mat) 中的对象。
输入为图像 (cv::Mat)。
输出是输入图像中行人的位置。
代码样本:
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);
函数快速参考
下表列出了 vitis::ai::OFAYOLO
类中定义的所有函数:
类型 | 成员 | 实参 |
---|---|---|
std::unique_ptr<
OFAYOLO
> |
create |
|
OFAYOLOResult
|
run |
|
std::vector<
OFAYOLOResult
> |
run |
|