此基本类用于检测面部图像 (cv::Mat) 的 5 个关键点和得分。
输入面部图像 (cv::Mat)。
输出面部得分和 5 个关键点。
代码样本:
注释: 通常输入图像仅含一张人脸。如果包含多张人脸,则函数会返回最高得分。
cv:Mat image = cv::imread("sample_facelandmark.jpg");
auto landmark = vitis::ai::FaceLandmark::create
("face_landmark");
auto result = landmark->run(image);
float score = result.score;
auto points = result.points;
for(int i = 0; i< 5 ; ++i){
auto x = points[i].frist * image.cols;
auto y = points[i].second * image.rows;
}
显示模型结果:
图 1. 结果图像

函数快速参考
下表列出了 vitis::ai::FaceLandmark
类中定义的所有函数:
类型 | 成员 | 实参 |
---|---|---|
std::unique_ptr<
FaceLandmark
> |
create |
|
std::unique_ptr<
FaceLandmark
> |
create |
|
int | getInputWidth |
|
int | getInputHeight |
|
size_t | get_input_batch |
|
FaceLandmarkResult
|
run |
|
std::vector<
FaceLandmarkResult
> |
run |
|