Как предотвратить рисование ограничительной рамки распознавания лиц в mediapipe android


Недавно (менее чем за неделю) я начал использовать библиотеку mediapipe для реализации функции распознавания лиц, поэтому заранее извиняюсь. До сих пор мне удалось создать aar для Android и успешно использовать его в своем приложении. Однако я не хочу, чтобы ограничивающая рамка появлялась над обнаруженным лицом.
  • Я изменил значение толщины DetectionsToRenderDataCalculatorOptions-> в face_detection_mobile_gpu.pbtxt с 4.0 на 0.0, перестроил график и безуспешно применил его к моему приложению.
  • Я попытался удалить DetectionsToRenderDataCalculatorOptions из узла DetectionsToRenderDataCalculator в face_detection_mobile_gpu.pbtxt, перестроил график и безуспешно применил его к моему приложению.
  • Я даже закомментировал следующие строки из Detections_to_render_data.cc, перестроил aar, применил к моему проекту безуспешно.

render_annotation->mutable_color()->set_r(options.color().r());render_annotation->mutable_color()->set_g(options.color().g());render_annotation->mutable_color()->set_b(options.color().b());render_annotation->set_thickness(options.thickness());

Я должен упомянуть, что во всех вышеперечисленных случаях ограничивающая рамка нарисована очень тонкой черной линией (как настройка по умолчанию).

Любые советы по этому поводу будут оценены, спасибо

1 ответ

Только что нашел простой взлом этого решения, вы можете закомментировать код рендеринга, используемый для рендеринга данных рендеринга в калькуляторе. Я пробовал использовать пример FaceMesh, закомментировав следующие строки в файле Calculators / util / annotation_overlay_calculator.cc.

       const RenderData& render_data = cc->Inputs().Get(id).Get<RenderData>();
 renderer_->RenderDataOnImage(render_data);

а также

      for (const RenderData& render_data : render_data_vec) {
    renderer_->RenderDataOnImage(render_data);
}
Другие вопросы по тегам