| | |
| | | in->config.point_size_config = CV_DETECT_ENABLE_ALIGN_106;
|
| | | else
|
| | | {
|
| | | LOG_ERROR << "alignment point size must be 21 or 106";
|
| | | LOG_ERROR << "alignment point size must be 21 or 106" << std::endl;
|
| | | return false;
|
| | | }
|
| | |
|
| | |
| | | in->config.point_size_config | CV_FACE_TRACKING_TWO_THREAD);
|
| | | if (cv_result != CV_OK)
|
| | | {
|
| | | LOG_ERROR << "cv_face_create_tracker failed, error code" << cv_result;
|
| | | LOG_ERROR << "cv_face_create_tracker failed, error code" << cv_result << std::endl;
|
| | | return false;
|
| | | }
|
| | |
|
| | |
| | | cv_result = cv_face_track_set_detect_face_cnt_limit(in->handle_track, in->config.detect_face_cnt_limit, &val);
|
| | | if (cv_result != CV_OK)
|
| | | {
|
| | | LOG_ERROR << "cv_face_track_set_detect_face_cnt_limit failed, error : " << cv_result;
|
| | | LOG_ERROR << "cv_face_track_set_detect_face_cnt_limit failed, error : " << cv_result << std::endl;
|
| | | return false;
|
| | | }
|
| | | else
|
| | | LOG_ERROR << "detect face count limit : " << val;
|
| | | LOG_ERROR << "detect face count limit : " << val << std::endl;
|
| | |
|
| | | return true;
|
| | | }
|
| | |
| | | CV_FACE_UP, &p_face, &face_count);
|
| | | if (cv_result != CV_OK)
|
| | | {
|
| | | LOG_ERROR << "cv_face_track failed, error : " << cv_result;
|
| | | LOG_ERROR << "cv_face_track failed, error : " << cv_result << std::endl;
|
| | | cv_face_release_tracker_result(p_face, face_count);
|
| | | return -1;
|
| | | }
|
| | |
| | |
|
| | | if (pm.type != PipeMaterial::PMT_FRAME)
|
| | | {
|
| | | LOG_ERROR << "Only support PMT_FRAME";
|
| | | LOG_ERROR << "Only support PMT_FRAME" << std::endl;
|
| | | return false;
|
| | | }
|
| | |
|
| | |
| | | MB_Frame* frame = (MB_Frame*)pm.buffer;
|
| | | if (frame->type != MB_Frame::MBFT_YUV420)
|
| | | {
|
| | | LOG_ERROR << "Only support MBFT_YUV420";
|
| | | LOG_ERROR << "Only support MBFT_YUV420" << std::endl;
|
| | | return false;
|
| | | }
|
| | |
|