vitis::ai::PolypSegmentation - 3.5 简体中文

Vitis AI Library 用户指南 (UG1354)

Document ID
UG1354
Release Date
2023-06-29
Version
3.5 简体中文
此基本类用于检测输入图像 (cv::Mat) 中的对象。输入为图像 (cv::Mat)。输出是输入图像中对象的位置。代码样本:
 auto img = cv::imread("sample_yolov2.jpg");
 auto model = vitis::ai::PolypSegmentation::create("yolov2_voc");
 auto result = model->run(img);
 for (const auto &bbox : result.bboxes) {
   int label = bbox.label;
   float xmin = bbox.x * img.cols + 1;
   float ymin = bbox.y * img.rows + 1;
   float xmax = xmin + bbox.width * img.cols;
   float ymax = ymin + bbox.height * img.rows;
   if (xmax > img.cols)
     xmax = img.cols;
   if (ymax > img.rows)
     ymax = img.rows;
   float confidence = bbox.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);
}

函数快速参考

下表列出了 vitis::ai::PolypSegmentation 类中定义的所有函数:

表 1. 函数快速参考
类型 成员 实参
std::unique_ptr< PolypSegmentation > create
  • const std::string & model_name
  • bool need_preprocess
SegmentationResult run
  • const cv::Mat & image
std::vector< SegmentationResult > run
  • const std::vector< cv::Mat > & images