【Ubuntu】基于C++实现人脸识别( 十 )


图5-2 创建人脸识别应用
图5-3 创建人脸库
5.2 人脸识别SDK环境搭建
注意到将人脸截图上传到百度云,然后再接收百度云回传的识别信息,从中提取出我们所关心的姓名等信息,整个过程是非常繁琐的,所以百度云贴心的为我们准备了SDK来完成这一系列工作 。SDK(Kit) 即软件开发工具包,一般是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立的用于应用软件开发的工具集合 。本质就是辅助我们做开发的一些工具 。
所以本节的主要目的就是下载百度的人脸识别SDK到本地,然后成功在本地调用 。
下载SDK 。安装依赖库 。引入SDK头文件"face.h" 。
整个过程可以参考官方文档的步骤:
图5-4 安装百度云人脸识别SDK的步骤
见下面“1.下载SDK”
1. 下载SDK
图5-5 下载人脸识别SDK
2. 安装依赖库
因为百度的SDK中含有一些依赖库,所以下面需要在中安装这些依赖库 。其中就包括了很多网络通信协议如http,包含了网络通信加密相关的东西,包含了解析、提取的过程 。安装依赖库:
########################指令速览#########################sudo apt-get install libcurl4-openssl-devsudo apt-get install opensslsudo apt-get install libjsoncpp-devsudo apt-get install libssl-dev # 不安装后续编译会有报错########################终端演示#########################lyl@ubuntu:~/桌面$ sudo apt-get install libcurl-dev[sudo] lyl 的密码: 正在读取软件包列表... 完成正在分析软件包的依赖关系树正在读取状态信息... 完成虚拟软件包 libcurl-dev 由下面的软件包提供:libcurl4-openssl-dev 7.68.0-1ubuntu2.19libcurl4-nss-dev 7.68.0-1ubuntu2.19libcurl4-gnutls-dev 7.68.0-1ubuntu2.19请您明确地选择安装其中一个 。E: 软件包 libcurl-dev 没有可安装候选lyl@ubuntu:~/桌面$ sudo apt-get install libcurl4-openssl-dev正在读取软件包列表... 完成正在分析软件包的依赖关系树正在读取状态信息... 完成将会同时安装下列软件:libcurl4建议安装:libcurl4-doc libidn11-dev libkrb5-dev libldap2-dev librtmp-dev libssh2-1-devlibssl-dev下列【新】软件包将被安装:libcurl4 libcurl4-openssl-dev升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 246 个软件包未被升级 。需要下载 557 kB 的归档 。解压缩后会消耗 2,260 kB 的额外空间 。您希望继续执行吗? [Y/n] y获取:1 https://mirrors.aliyun.com/ubuntu focal-security/main amd64 libcurl4 amd64 7.68.0-1ubuntu2.19 [235 kB]获取:2 https://mirrors.aliyun.com/ubuntu focal-security/main amd64 libcurl4-openssl-dev amd64 7.68.0-1ubuntu2.19 [322 kB]已下载 557 kB,耗时 1秒 (787 kB/s)正在选中未选择的软件包 libcurl4:amd64 。(正在读取数据库 ... 系统当前共安装有 173564 个文件和目录 。)准备解压 .../libcurl4_7.68.0-1ubuntu2.19_amd64.deb...正在解压 libcurl4:amd64 (7.68.0-1ubuntu2.19) ...正在选中未选择的软件包 libcurl4-openssl-dev:amd64 。准备解压 .../libcurl4-openssl-dev_7.68.0-1ubuntu2.19_amd64.deb...正在解压 libcurl4-openssl-dev:amd64 (7.68.0-1ubuntu2.19) ...正在设置 libcurl4:amd64 (7.68.0-1ubuntu2.19) ...正在设置 libcurl4-openssl-dev:amd64 (7.68.0-1ubuntu2.19) ...正在处理用于 man-db (2.9.1-1) 的触发器 ...正在处理用于 libc-bin (2.31-0ubuntu9.7) 的触发器 ...lyl@ubuntu:~/桌面$ dpkg -s libcurl4-openssl-devPackage: libcurl4-openssl-devStatus: install ok installedPriority: optionalSection: libdevelInstalled-Size: 1509Maintainer: Ubuntu Developers Architecture: amd64Multi-Arch: sameSource: curlVersion: 7.68.0-1ubuntu2.19Provides: libcurl-dev, libcurl-ssl-dev, libcurl3-dev, libcurl3-openssl-dev, libcurl4-devDepends: libcurl4 (= 7.68.0-1ubuntu2.19)Suggests: libcurl4-doc, libidn11-dev, libkrb5-dev, libldap2-dev, librtmp-dev, libssh2-1-dev, libssl-dev (>= 1.1), pkg-config, zlib1g-devConflicts: libcurl4-gnutls-dev, libcurl4-nss-dev, libssl-dev (