Refactor encode fullframe body face
This commit is contained in:
parent
4c925361a1
commit
e70c9bbd6a
@ -31,7 +31,6 @@ unsigned int FaceNvInferServerManager::nvds_lib_minor_version =
|
||||
|
||||
const gchar pgie_class_str[PGIE_DETECTED_CLASS_NUM][32] = {"Person_SGIE"};
|
||||
const gchar sgie_class_str[SGIE_DETECTED_CLASS_NUM][32] = {"PreciseFace_SGIE"};
|
||||
int high_confidence_faces = 0;
|
||||
|
||||
std::vector<FaceNvInferServerManager::FACE_BODY>
|
||||
FaceNvInferServerManager::face_body_list;
|
||||
@ -1401,20 +1400,10 @@ GstPadProbeReturn FaceNvInferServerManager::sgie_pad_buffer_probe(
|
||||
if ((strcmp(layer.layerName, "bbox") == 0)) {
|
||||
for (int l = 0; l < 4; l++) {
|
||||
face_location[l] = data_face[l];
|
||||
// std::cout << "face_location[" << l
|
||||
// << "]= " << data_face[l] <<
|
||||
// std::endl;
|
||||
}
|
||||
}
|
||||
if ((strcmp(layer.layerName, "score") == 0)) {
|
||||
score_face = data_face[0];
|
||||
// std::cout << "score_face= " << score_face
|
||||
// <<std::endl; if (score_face>0.9){
|
||||
// high_confidence_faces++;
|
||||
// std::cout << "high_confidence_faces= " <<
|
||||
// high_confidence_faces << std::endl;
|
||||
// std::quick_exit(0);
|
||||
// }
|
||||
}
|
||||
} else {
|
||||
// is_zero_embedding_vector = 0: send data into server!
|
||||
@ -1503,70 +1492,48 @@ GstPadProbeReturn FaceNvInferServerManager::sgie_pad_buffer_probe(
|
||||
text_params.font_params.font_size = 11;
|
||||
text_params.font_params.font_color =
|
||||
NvOSD_ColorParams{1, 1, 1, 1};
|
||||
// adding landmarks to obj_meta as user_meta
|
||||
// NvDsUserMeta *um1 =
|
||||
// nvds_acquire_user_meta_from_pool(batch_meta);
|
||||
// um1->user_meta_data = set_metadata_ptr(
|
||||
// &(data[index * 57])); // Add landmarks here
|
||||
// um1->base_meta.meta_type =
|
||||
// NVDS_USER_OBJECT_META_LANDMARKS_AND_SOURCE_ID;
|
||||
// um1->base_meta.copy_func
|
||||
// =(NvDsMetaCopyFunc)copy_user_meta;
|
||||
// um1->base_meta.release_func =
|
||||
// (NvDsMetaReleaseFunc)release_user_meta;
|
||||
// nvds_add_user_meta_to_obj(obj_meta, um1);
|
||||
// nvds_add_obj_meta_to_frame(frame_meta, final_face_obj,
|
||||
// NULL);
|
||||
if (is_zero_embedding_vector == false) {
|
||||
// encode_objects_attach_meta(ctx, ip_surf, frame_meta,
|
||||
// obj_meta);
|
||||
|
||||
// // collect all body objects
|
||||
// auto body_map = collect_body_objects(frame_meta);
|
||||
// // encode body corresponding to this object
|
||||
find_body = false;
|
||||
auto it = body_map.find(obj_meta->object_id);
|
||||
if (it != body_map.end()) {
|
||||
NvDsObjectMeta *body_meta = it->second;
|
||||
encode_objects_attach_meta(ctx, ip_surf, frame_meta,
|
||||
body_meta);
|
||||
find_body = true;
|
||||
} else {
|
||||
// body object not found for this object_id
|
||||
// std::cout << "No body object found for object_id
|
||||
// = " << obj_meta->object_id << std::endl;
|
||||
}
|
||||
|
||||
if (find_body == true) {
|
||||
// if (current_full_frame_is_captured == false) {
|
||||
// encode_full_frame_attach_meta(ctx, ip_surf,
|
||||
// frame_meta);
|
||||
// current_full_frame_is_captured = true;
|
||||
// }
|
||||
encode_full_frame_attach_meta(ctx, ip_surf,
|
||||
frame_meta);
|
||||
|
||||
encode_objects_attach_meta(ctx, ip_surf, frame_meta,
|
||||
final_face_obj);
|
||||
}
|
||||
|
||||
// adding embedding vector to final_face_obj as
|
||||
// user_meta
|
||||
NvDsUserMeta *user_meta_embedding_vector =
|
||||
nvds_acquire_user_meta_from_pool(batch_meta);
|
||||
assert(user_meta_embedding_vector != NULL);
|
||||
user_meta_embedding_vector->user_meta_data =
|
||||
set_metadata_ptr(
|
||||
embedding_vector); // Add embedding vector
|
||||
user_meta_embedding_vector->base_meta.meta_type =
|
||||
NVDS_USER_EMBEDDING_VECTOR_META;
|
||||
user_meta_embedding_vector->base_meta.copy_func =
|
||||
(NvDsMetaCopyFunc)copy_user_meta;
|
||||
user_meta_embedding_vector->base_meta.release_func =
|
||||
(NvDsMetaReleaseFunc)release_user_meta;
|
||||
nvds_add_user_meta_to_obj(final_face_obj,
|
||||
user_meta_embedding_vector);
|
||||
// // collect all body objects
|
||||
// auto body_map = collect_body_objects(frame_meta);
|
||||
// // encode body corresponding to this object
|
||||
find_body = false;
|
||||
auto it = body_map.find(obj_meta->object_id);
|
||||
if (it != body_map.end()) {
|
||||
NvDsObjectMeta *body_meta = it->second;
|
||||
encode_objects_attach_meta(ctx, ip_surf, frame_meta,
|
||||
body_meta);
|
||||
find_body = true;
|
||||
} else {
|
||||
// body object not found for this object_id
|
||||
// std::cout << "No body object found for object_id
|
||||
// = " << obj_meta->object_id << std::endl;
|
||||
}
|
||||
|
||||
if (find_body == true) {
|
||||
// if (current_full_frame_is_captured == false) {
|
||||
// current_full_frame_is_captured = true;
|
||||
// }
|
||||
encode_full_frame_attach_meta(ctx, ip_surf, frame_meta);
|
||||
|
||||
encode_objects_attach_meta(ctx, ip_surf, frame_meta,
|
||||
final_face_obj);
|
||||
}
|
||||
|
||||
// adding embedding vector to final_face_obj as user_meta
|
||||
NvDsUserMeta *user_meta_embedding_vector =
|
||||
nvds_acquire_user_meta_from_pool(batch_meta);
|
||||
assert(user_meta_embedding_vector != NULL);
|
||||
user_meta_embedding_vector->user_meta_data =
|
||||
set_metadata_ptr(
|
||||
embedding_vector); // Add embedding vector
|
||||
user_meta_embedding_vector->base_meta.meta_type =
|
||||
NVDS_USER_EMBEDDING_VECTOR_META;
|
||||
user_meta_embedding_vector->base_meta.copy_func =
|
||||
(NvDsMetaCopyFunc)copy_user_meta;
|
||||
user_meta_embedding_vector->base_meta.release_func =
|
||||
(NvDsMetaReleaseFunc)release_user_meta;
|
||||
nvds_add_user_meta_to_obj(final_face_obj,
|
||||
user_meta_embedding_vector);
|
||||
nvds_add_obj_meta_to_frame(frame_meta, final_face_obj,
|
||||
obj_meta);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user