47 lines
1.1 KiB
C++
47 lines
1.1 KiB
C++
// test_landmark68.cpp : 定义控制台应用程序的入口点。
|
|
//
|
|
|
|
#include "stdafx.h"
|
|
#include "Inc/toolkit/LocalCamera.h"
|
|
#include "Inc/Landmark68.h"
|
|
#include "Inc/FaceMask.h"
|
|
#include "Inc/TimeCount.h"
|
|
|
|
int main()
|
|
{
|
|
std::vector<CamObj> cams;
|
|
LocalCamera::GetAllCam(cams);
|
|
|
|
cams[1].Open([](int devID, std::string devName, cv::Mat& frame) {
|
|
std::vector<FaceInfo> face_infos;
|
|
CenterFaceMnn::GetInstance()->Detect(frame, face_infos, 0);
|
|
if (face_infos.size() > 0)
|
|
{
|
|
float score = 0.f;
|
|
FaceMask::GetInstance()->Detect(frame, score, face_infos[0].landmarks);
|
|
std::cout << "score => " << score << std::endl;
|
|
//std::vector<float> pose;
|
|
//std::vector<float> landmarks;
|
|
//{
|
|
// //USE_TIME use("landmark68 => ");
|
|
// Landmark68::GetInstance()->Detect(frame, face_infos[0], pose, landmarks);
|
|
//}
|
|
//
|
|
//for (int i = 0; i < 68; i++)
|
|
//{
|
|
// cv::circle(frame, cv::Point((int)(landmarks[i * 2]), (int)(landmarks[i * 2 + 1])), 1, cv::Scalar(255, 0, 0), 1);
|
|
//}
|
|
|
|
}
|
|
|
|
cv::imshow(devName, frame);
|
|
cv::waitKey(10);
|
|
});
|
|
|
|
while (true)
|
|
{
|
|
}
|
|
return 0;
|
|
}
|
|
|