身为一个.net程序员经过两天的采坑终于把人脸特征检测的项目跑通了,然后本文将以dlib项目中人脸特征检测工程为例,讲解dlib与opencv 在vs2017 C++ 项目中的编译与运行路径配置。

1、项目建立

首先建立一个C++控制台项目,然后根据自己的开发平台选择编译环境我是win10 64位系统所以我选择x64。

建立控制台项目

编译环境选择X64

2、Opecv 3.4.1安装配置

Opencv最新版下载地址:https://opencv.org/

下载最新版本3.4.1

1、配置Opencv系统环境路径:系统属性→高级系统设置→环境变量→系统变量→Path编辑→新建添加Opencv环境路径  (你的安装目录)\opencv\build\x64\vc15\bin\

进入环境变量配置

增加环境变量路径

2、回到我们一开始建立的C++项目开始配置Opencv引用路径(C#里直接引用个dll的事情在C++都得靠静态指向过去我也挺醉的 ,又更好的方法请告诉我毕竟我是C++小白。。。),vs编译器视图→其它窗口→属性管理器 ,在自己编译器环境下增加新项目属性表。

增加opencv的属性表

3、双击进入属性页VC++目录→包含目录and库目录中加入以下路径:

 包含目录:(你的安装目录)\opencv\build\include\opencv  (你的安装目录)\opencv\build\include\opencv2  (你的安装目录)\opencv\build\include

 库目录:(你的安装目录)\opencv\build\x64\vc15\lib

加入opencv库目录

4、链接器→输入→附加依赖项 加入opencv的静态链接库名字opencv_world341d.lib (不同版本的名字不一样自己看好再填)opencv\build\x64\vc15\lib 目录下查看

加入opencv静态链接库名字

5、验证opencv是否配置完毕在新建的项目中加入 #include <opencv2/opencv.hpp>  查看是否可以引用。

3、Dlib安装配置

1、下载最新版本Dlib http://dlib.net/  ,下载Cmake (一款跨平台的编译工具)https://cmake.org/

2、编译Dlib 选择dlib源目录与编译后的存放目录,选择好之后点击Generate开始编译。

3、同Opencv一样加入Dlib的新项目属性表,双击进入属性页。VC++目录→包含目录、引用目录、库目录添加Dlib根目录

\dlib-19.9\

链接器→输入→附加依赖项 添加dlib_debug_64bit_msvc1911.lib 同 opencv一样请自行查看编译后目录正确的lib名字 目录为你编译好的目录Debug目录下

C/C++ → 附加包含目录中加入

D:\Git\Dlibx64\Debug

  

4、项目右键加入现有项Dlib中的 source.cpp  ,Dlib到此配置完毕。

\dlib\all

4、人脸特征点识别

Dlib里包含各种demo,以下是人脸特征点识别的demo 需要配合样本库才能运行样本库下载地址为http://dlib.net/files/shape_predictor_68_face_landmarks.dat.bz2 ,下载后放到项目目录下即可。

D:\Git\dlib-19.9\examples\webcam_face_pose_ex.cpp

5、遇到的各种编译问题

1、stdafx.h编译头问题 解决方法如下:

1、右键除stdafx.cpp以外其他cpp 属性页中C/C++ 下预编译头 选择不使用预编译头
2、右stdafx.cpp 属性页中C/C++ 下预编译头 创建预编译头

2、各种恶心的重定义问题,项目右键属性→C/C++→预处理器→预处理器定义添加 WIN32_LEAN_AND_MEAN  我看这个大部分Dlib教程都没有写 估计都是各种C++大触写个C++中小触看的 我等.net菜鸡不懂啊!!!那么多报错吓死多少人。

3、找不到静态链接库文件,重新检查我上面提到的几个路径。

PS:爆下自己的丑照最终效果代码我去别的地方爬的官方代码太慢。。。

vs2017 dlib19.3 opencv3.41 C++ 环境配置 人脸特征点识别的更多相关文章

  1. OpenCV3.2 + VS2015环境配置

    一.准备工作: (1)   到OpenCV的官网(http://opencv.org/)下载OpenCV3.2 (2)   安装好VS2015. (3)   计算机系统:Win7(Win8, Win1 ...

  2. 详解QT5.10.0搭载OpenCV3.4.0环境配置步骤说明

    一.准备工作: 1下载Qt5.10.0 和 Qt Creator 4.5.0软件(http://download.qt.io/official_releases/qt/) 2.下载opencv3.40 ...

  3. OpenCV - win7+vs2013(2012)+opencv3.0.0 环境配置 (以及配置技巧)

    1. opencv 3.0.0 库下载地址, 这里的版本是3.0.0,其他的版本配置可能不一样,请大家注意. http://sourceforge.net/projects/opencvlibrary ...

  4. opencv3学习1:opencv3.4.10与vs2017环境配置

    原教程网址:https://jingyan.baidu.com/article/dca1fa6f13bd55f1a44052b9.html 具体教程网上很多,我也相信大家的搜素能力,作为一个初入C++ ...

  5. opencv-python:win7下,搭建python2.7.5环境,配置opencv3.1.0准备开工-OpenCV步步精深

    我的个人博客:点这里 搭建python2.7.5环境 下载python2.7.5 64位:https://www.python.org/ftp/python/2.7.5/python-2.7.5.am ...

  6. 75.VS2013和opencv3.1.0开发环境配置

    首先要做的就是 开发环境配置,具体过程如下: Step 1:OpenCV环境变量配置 我的电脑--->属性--->高级系统设置--->高级--->环境变量--->系统变量 ...

  7. Caffe+CUDA7.5+CuDNNv3+OpenCV3.0+Ubuntu14.04 配置参考文献 以及 常见编译问题总结

    Caffe+CUDA7.5+CuDNNv3+OpenCV3.0+Ubuntu14.04  配置参考文献 ---- Wang Xiao Warning: Please make sure the cud ...

  8. Caffe+CUDA8.0+CuDNNv5.1+OpenCV3.1+Ubuntu14.04 配置参考文献 以及 常见编译问题总结

    Caffe + CUDA8.0 + CuDNNv5.1 + OpenCV3.1 + Ubuntu14.04  配置参考文献 ---- Wang Xiao  Anhui University  CVPR ...

  9. 深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070 + CUDA8.0 + cuDNN5.1 + TensorFlow

    深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070 + CUDA8.0 + cuDNN5.1 + TensorFlow 最近在公司做深度学习相关的学习和实验,原来一直 ...

随机推荐

  1. 吴裕雄--天生自然 R语言开发学习:图形初阶(续二)

    # ----------------------------------------------------# # R in Action (2nd ed): Chapter 3 # # Gettin ...

  2. mac上svn: This client is too old to work with working copy 问题的解决

    安装svn时,提示This client is too old to work with working copy........原因:svn的版本过旧,安装1.8的svn即可.下面简要说明一些步骤: ...

  3. ibator使用

    一.ibator是一个ibatis的代码生成工具,它能根据数据表自动生成javabean.sqlmap. ibator的官方地址是 http://ibatis.apache.org/ibator.ht ...

  4. spring整合ehcache实现缓存

    Spring 提供了对缓存功能的抽象:即允许绑定不同的缓存解决方案(如Ehcache),但本身不直接提供缓存功能的实现.它支持注解方式使用缓存,非常方便. spring本身内置了对Cache的支持,之 ...

  5. nginx增加访问验证

    使用OpenSSL实用程序创建密码文件 如果您的服务器上安装了OpenSSL,则可以创建没有附加软件包的密码文件.我们将在/ etc / nginx配置目录中创建一个名为.htpasswd的隐藏文件来 ...

  6. 《深入理解 Java 虚拟机》读书笔记:类文件结构

    正文 一.无关性的基石 1.两种无关性 平台无关性: Java 程序的运行不受计算机平台的限制,"一次编写,到处运行". 语言无关性: Java 虚拟机只与 Class 文件关联, ...

  7. 下一代网际协议IPv6

    下一代网际协议IPv6 一.解决 IP 地址耗尽的措施 从计算机本身发展以及从因特网规模和网络传输速率来看,现在 IPv4 已很不适用. 最主要的问题就是 32 位的 IP 地址不够用. 在 2019 ...

  8. 初学qt——数据库连接

    连接数据库我们需要有相应的dll文件,不同的数据库用不同的文件,对应的dll这里就不提供了,网上一搜一堆,就只说下这些文件的存放位置吧. 找到对应的dll文件后打开自己安装的qt的文件目录,将dll文 ...

  9. LeetCode--链表3-经典问题

    LeetCode--链表3-经典问题 题1 反转链表 第一次代码超出时间限制 原因是,反转之后链表的尾部节点和头结点连上了 /** * Definition for singly-linked lis ...

  10. 设计模式-12组合模式(Composite Pattern)

    1.模式动机 很多时候会存在"部分-整体"的关系,例如:大学中的部门与学院.总公司中的部门与分公司.学习用品中的书与书包.在软件开发中也是这样,例如,文件系统中的文件与文件夹.窗体 ...