車両、歩行者などの位置を検出するためのベース クラス。
入力はイメージ (cv:Mat) です。
出力は
SSDResult
という名前の検出結果の構造体です。
サンプル コード:
Mat img = cv::imread("sample_ssd.jpg");
auto ssd = vitis::ai::SSD::create
("ssd_traffic_pruned_0_9",true);
auto results = ssd->run(img);
for(const auto &r : results.bboxes){
auto label = r.label;
auto x = r.x * img.cols;
auto y = r.y * img.rows;
auto width = r.width * img.cols;
auto heigth = r.height * img.rows;
auto score = r.score;
std::cout << "RESULT: " << label << "\t" << x << "\t" << y << "\t" <<
width
<< "\t" << height << "\t" << score << std::endl;
}
モデルの結果を次に示します。
図 1. 検出結果
関数クイック リファレンス
次の表に、vitis::ai::SSD
クラスに定義されているすべての関数を示します。
タイプ | メンバー | 引数 |
---|---|---|
std::unique_ptr<
SSD
> |
create |
|
std::unique_ptr<
SSD
> |
create |
|
vitis::ai::SSDResult
|
run |
|
std::vector<
vitis::ai::SSDResult
> |
run |
|
std::vector<
vitis::ai::SSDResult
> |
run |
|