c++人脸特征保存到本地_OpenVINO开发必备知识点——人脸检测实战

本文介绍了使用OpenVINO进行人脸检测的实战过程,包括C++工程的目录结构、BaseFace类和FaceDetector类的实现。通过FaceDetector类,实现了从图片中检测人脸并绘制人脸框的功能,所有代码已上传至Github。
摘要由CSDN通过智能技术生成

OpenVINO是Intel推出的计算机视觉深度学习推理加速库,支持Intel CPU, 核心显卡,VPU和FPGA。前三篇文章分别介绍了OpenVINO的环境搭建、重要文件、目录、环境变量, 以及人脸特征提取SDK的开发。

人脸识别的完整流程主要包括人脸检测(人脸位置定位),人脸特征提取和人脸特征检索三个阶段。只提供人脸特征提取并不能完成完整的人脸识别。人脸识别的第一步是从图片中找出人脸的位置,然后将人脸图片抠出来作为人脸特征提取的输入,从而人脸特征提取器提出人脸特征,用于后续的人脸特征检索,因此本文就来实战一下人脸检测。本文所有操作的系统环境为Ubuntu16.04。


人脸检测的C++工程已经推到了Github: adamydwang/face-openvino。 该工程取名为face-openvino是希望能够包括整个人脸识别的完整sdk, 因此该工程集成了Github: adamydwang/insightface-openvino


CMake工程目录结构

本文延续insightface-openvino工程的做法,依然采用CMakeLists来构建C++工程,目录如下:

89997c289323707f5b0954fef41643e6.png
  • bin: 用于保存编译生成的人脸特征提取和人脸检测demo可执行程序。
  • build: 用于保存编译过程中产生的临时文件。
  • demo: 存放人脸特征提取和人脸检测demo程序。
  • image: 存放了一张测试图片。
  • include: 用于保存C++头文件。
  • lib: 用于保存编译生成的人脸相关的sdk,包括人脸特征提取和人脸检测。
  • model: 用于保存openvino模型文件。
  • src: 用于保存C++源文件。

完整的CMakeLists.txt文件内容如下
本工程的CMakeLists几乎是最简版,只包括了必须的内容,可用于初学者参考学习CMakeLists的编写。

cmake_minimum_required(VERSION 2.7)project(insightface)add_definitions(-std=c++11)find_package(InferenceEngine REQUIRED)find_package(OpenCV REQUIRED)include_directories(${PROJECT_SOURCE_DIR}/include                  ${InferenceEngine_INCLUDE_DIRS}                  ${OpenCV_INCLUDE_DIRS})set(LIBS ${InferenceEngine_LIBRARIES} ${OpenCV_LIBRARIES})set(SRCS  ${PROJECT_SOURCE_DIR}/src/insightface.cpp        ${PROJECT
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值