大神代码链接

称之为MTCNN人脸检测算法,同时有大神已经GitHub上开源了其基于caffe的C++ API 的源代码,https://github.com/DaFuCoding/MTCNN_Caffe  再次感谢大神以及开源~

编译机器

1. 安装依赖

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler  libatlas-base-dev cmake  python-pip

2. 安装  numpy

pip install numpy

3 安装caffe动态库

  下载caffe源码

    wget  https://github.com/BVLC/caffe/archive/1.0.tar.gz

  cd caffe-1.0.0

  cp Makefile.config.example Makefile.config

  更改Makefile.config   第一行 加入  如下内容

    ①. 修改opencv库路径【如果不指定opencv库 用默认的即可】

OPENCV_PATH := /work/lib/opencv/3.3.0
OPENCV_INCLUDE_PATH = $(OPENCV_PATH)/include
OPENCV_LIB_PATH = $(OPENCV_PATH)/lib

       修改包含目录和库目录

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include $(OPENCV_INCLUDE_PATH)
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib $(OPENCV_LIB_PATH)

如果不想这么麻烦  可以修改 cmake/Dependencies.cmake

最顶部加入:

set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} "/work/lib/opencv/3.3")
find_package(OpenCV 3.3.0 REQUIRED)

    ② 第八行   CPU_ONLY := 1  打开,表示只使用CPU,如果你用GPU  这一步就不用做了。

   

mkdir build

cd build

cmake  ../   -DBUILD_SHARED_LIBS=1 -DCMAKE_INSTALL_PREFIX=install

  ####  cmake .   -DBUILD_SHARED_LIBS=1 -DCMAKE_INSTALL_PREFIX=install

【可选项】修改caffe 源码,使其不要在控制台打印一大堆东西, 将src/caffe/common.cpp  GlobalInit 源码替换为如下

void GlobalInit(int* pargc, char*** pargv) {
{
  // Google flags.
  ::gflags::ParseCommandLineFlags(pargc, pargv, true);
  ::google::InitGoogleLogging(*(pargv)[]);
  google::SetLogDestination(google::WARNING,"");
}

  make

  make install

cd MTCNN_Caffe

cmake .

make

运行机器:

apt-get install  libgoogle-glog-dev  libopencv-dev

mark ubuntu 16.04 64bit + cpu only install mtcnn的更多相关文章

  1. Ubuntu 16.04 - 64bit 解压 rar 报错 Parsing Filters not supported

    Ubuntu 16.04 - 64bit  解压rar 文件报错: 错误如下图: 原因: 未安装解压命令 unrar 参考博客: Error - "Parsing Filters not s ...

  2. Ubuntu 16.04中CPU轮流100%的问题解决

    刚装好Ubuntu 16.04,但是观察各个CPU都是轮流100%,如图所示:

  3. aliyun Ubuntu 14.04 64bit OpenJDK Tomcat7 install

    my work environment: aliyun Ubuntu 14.04 64位 first phase:apt-get update    (it is very important,oth ...

  4. Ubuntu 16.04 TensorFlow CPU 版本安装

    1.下载Anaconda,官方网站.我下载的时Python 2.7 64bit版本: 2.安装执行命令     bash Anaconda2-4.2.0-Linux-x86_64.sh 设置好目录后等 ...

  5. ok6410[001] Ubuntu 16.04[64bit]嵌入式交叉编译环境arm-linux-gcc搭建过程图解

    开发PC:Ubuntu16.04.1 开发板:OK6410[飞凌公司出品] 目标:通过GPIO点亮LED ----------------------------------------------- ...

  6. 配置 阿里云ECS Ubuntu 16.04 64bit 桌面环境

    1. 步骤 安装软件 修改root权限 重启 2. 详情 1. 安装软件 创建脚本文件(例如:desktopSetting.sh),并输入以下内容: #!/bin/bash #更新软件库 apt-ge ...

  7. ubuntu 16.04 64bit安装 Julia

    sudo add-apt-repository ppa:staticfloat/juliareleases sudo add-apt-repository ppa:staticfloat/julia- ...

  8. Ubuntu 16.04 Mxnet CPU 版本安装

    在安装前配置好更新源,基本要求就是速度越快越好: 1.安装Python   apt-get install python 2.安装Git    apt-get install git 3.安装依赖包  ...

  9. Ubuntu 16.04 - 64bit 访问Windows磁盘报错 he NTFS partition is in an unsafe state. Please resume and shutdown Windows fully (no hibernation ...

    今天在打开某个磁盘时,突然报错,报错信息如下 原因:Windows 未正常关闭,导致系统误以为存在临时缓存文件 解决方法: http://www.linuxidc.com/Linux/2014-05/ ...

随机推荐

  1. python pip 使用

    一.修改 pip 源 Windows 在用户目录下新建 pip\pip.ini 文件,如:C:\Users\Administrator\pip\pip.ini [global] index-url = ...

  2. python小白之list使用笔记

     List常见用法 list拆分 I=array([4.,2.]) print(I[:,newaxis])#将原本在一个列表里的两个数拆为两个不同列表里 list合并 法一 运算符重载 num=[1, ...

  3. Mybatis中表名当做变量

    做业务时,有时候会遇到不同SQL语句之中,只有使用的表名不用而已,其他参数和取得值都是一样的情况.这种时候必然想到把表名当做一个变量传到共通的SQL语句中. 当然正常的传入参数的方式#{param}肯 ...

  4. c++ STL之unordered_map

    1.1 特性 关联性:通过key去检索value,而不是通过绝对地址(和顺序容器不同) 无序性:使用hash表存储,内部无序 Map : 每个值对应一个键值 键唯一性:不存在两个元素的键一样 动态内存 ...

  5. jenkins配置jdk、git、maven

    进入首页->系统管理->全局工具配置 配置jdk 查找jdk安装路径 如果是容器版jenkins,就登进容器里面查看jdk路径 [root@test2 ~]# echo $JAVA_HOM ...

  6. 简单wait(),notify()方法

    1.两个类public class Name{ public static void main(String[] args) throws InterruptedException { User us ...

  7. SpringBoot: 5.访问静态资源(转)

    springboot默认从项目的resources里面的static目录下或者webapp目录下访问静态资源 方式一:在resources下新建static文件(文件名必须是static) 在浏览器中 ...

  8. DevOps - 虚拟环境构建工具Vagrant

    1 - Vagrant HomePage: https://www.vagrantup.com/ Download: https://www.vagrantup.com/downloads.html ...

  9. UML类图与时序图

    UML统一建模语言 结构式图形: 静态图(类图,对象图,包图) 实现图(组件图,部署图) 剖面图 复合结构图 行为式图形: 活动图 状态图 用例图 交互式图形: 通信图 交互概念图(2.0) 时序图( ...

  10. bootstrap4 调整元素之间距离

    影响元素之间的间距是可以通过style的margin或padding属性来实现,但这两个属性本意并不相同:margin影响的是本元素与相邻外界元素之间的距离,这里简称外边距:padding影响的元素本 ...