mark ubuntu 16.04 64bit + cpu only install mtcnn
大神代码链接
称之为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的更多相关文章
- Ubuntu 16.04 - 64bit 解压 rar 报错 Parsing Filters not supported
Ubuntu 16.04 - 64bit 解压rar 文件报错: 错误如下图: 原因: 未安装解压命令 unrar 参考博客: Error - "Parsing Filters not s ...
- Ubuntu 16.04中CPU轮流100%的问题解决
刚装好Ubuntu 16.04,但是观察各个CPU都是轮流100%,如图所示:
- 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 ...
- Ubuntu 16.04 TensorFlow CPU 版本安装
1.下载Anaconda,官方网站.我下载的时Python 2.7 64bit版本: 2.安装执行命令 bash Anaconda2-4.2.0-Linux-x86_64.sh 设置好目录后等 ...
- ok6410[001] Ubuntu 16.04[64bit]嵌入式交叉编译环境arm-linux-gcc搭建过程图解
开发PC:Ubuntu16.04.1 开发板:OK6410[飞凌公司出品] 目标:通过GPIO点亮LED ----------------------------------------------- ...
- 配置 阿里云ECS Ubuntu 16.04 64bit 桌面环境
1. 步骤 安装软件 修改root权限 重启 2. 详情 1. 安装软件 创建脚本文件(例如:desktopSetting.sh),并输入以下内容: #!/bin/bash #更新软件库 apt-ge ...
- ubuntu 16.04 64bit安装 Julia
sudo add-apt-repository ppa:staticfloat/juliareleases sudo add-apt-repository ppa:staticfloat/julia- ...
- Ubuntu 16.04 Mxnet CPU 版本安装
在安装前配置好更新源,基本要求就是速度越快越好: 1.安装Python apt-get install python 2.安装Git apt-get install git 3.安装依赖包 ...
- 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/ ...
随机推荐
- python pip 使用
一.修改 pip 源 Windows 在用户目录下新建 pip\pip.ini 文件,如:C:\Users\Administrator\pip\pip.ini [global] index-url = ...
- python小白之list使用笔记
List常见用法 list拆分 I=array([4.,2.]) print(I[:,newaxis])#将原本在一个列表里的两个数拆为两个不同列表里 list合并 法一 运算符重载 num=[1, ...
- Mybatis中表名当做变量
做业务时,有时候会遇到不同SQL语句之中,只有使用的表名不用而已,其他参数和取得值都是一样的情况.这种时候必然想到把表名当做一个变量传到共通的SQL语句中. 当然正常的传入参数的方式#{param}肯 ...
- c++ STL之unordered_map
1.1 特性 关联性:通过key去检索value,而不是通过绝对地址(和顺序容器不同) 无序性:使用hash表存储,内部无序 Map : 每个值对应一个键值 键唯一性:不存在两个元素的键一样 动态内存 ...
- jenkins配置jdk、git、maven
进入首页->系统管理->全局工具配置 配置jdk 查找jdk安装路径 如果是容器版jenkins,就登进容器里面查看jdk路径 [root@test2 ~]# echo $JAVA_HOM ...
- 简单wait(),notify()方法
1.两个类public class Name{ public static void main(String[] args) throws InterruptedException { User us ...
- SpringBoot: 5.访问静态资源(转)
springboot默认从项目的resources里面的static目录下或者webapp目录下访问静态资源 方式一:在resources下新建static文件(文件名必须是static) 在浏览器中 ...
- DevOps - 虚拟环境构建工具Vagrant
1 - Vagrant HomePage: https://www.vagrantup.com/ Download: https://www.vagrantup.com/downloads.html ...
- UML类图与时序图
UML统一建模语言 结构式图形: 静态图(类图,对象图,包图) 实现图(组件图,部署图) 剖面图 复合结构图 行为式图形: 活动图 状态图 用例图 交互式图形: 通信图 交互概念图(2.0) 时序图( ...
- bootstrap4 调整元素之间距离
影响元素之间的间距是可以通过style的margin或padding属性来实现,但这两个属性本意并不相同:margin影响的是本元素与相邻外界元素之间的距离,这里简称外边距:padding影响的元素本 ...