图像处理入门(一):linux(ubuntu)配置Openface+测试
至于为什么要写这么基础的东西,em....说多了都是泪TT...
一、了解Openface:
官方文档:http://cmusatyalab.github.io/openface/setup/
二、我遇到的坑爹问题TT:
首先我使用的是比较新版的ubuntu系统,而问题就出现在它比较新!!!:
问题1: VirtualBox硬盘容量初始分配的时候没有分配足,总提示存储容量不够,如何扩展?
我最开始分配了10GB(最后我给了100GB),有个什么更新没选,结果依赖还没装完就一堆错TTT.....
万一你没分配足,可以看看这一篇:VirtualBox如何扩展虚拟机Ubuntu的硬盘容量?
问题2:无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
在ubuntu中我们使用sudo apt-get install 或者dpkg -i *.deb安装软件时,常常提示“有未能满足的依赖关系“, 这是因为当前软件源中依赖库的版本不满足软件的要求。
解决办法:ubuntu安装软件时:有未能满足的依赖关系???
问题3:错误提示:E: 无法获得锁 /var/cache/apt/archives/lock - open (11 资源临时不可用)。
强制解锁,命令
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
三、配置Openface前的准备工作:
(一):openface是一个基于深度神经网络的开源人脸识别系统。该系统基于谷歌的文章FaceNet: A Unified Embedding for Face Recognition and Clustering。openface是卡内基梅隆大学的 Brandon Amos主导的。
官方地址:http://cmusatyalab.github.io/openface/
代码:https://github.com/cmusatyalab/openface
(二):使用虚拟机virtualbox,系统:Ubuntu 16 64位桌面操作系统,此处一定要记得初始分配硬盘大小要分配足,装系统的时候该勾选的要勾选上!!!我最开始分配了10GB(最后我给了100GB),有个什么更新没选,结果依赖还没装完就一堆错TTT.....
万一你没分配足,可以看看这一篇:VirtualBox如何扩展虚拟机Ubuntu的硬盘容量?
参考:http://cmusatyalab.github.io/openface/setup/
(三)Ubuntu切换root用户
最常用的是在命令前加上sudo,不过由于要用root的地方太多,这里我在打开终端后先用sudo -s再敲命令,如果还想进一步配置成打开系统就是root的话可以看看这篇文章:
参考文章:
http://blog.csdn.net/itas109/article/details/50679251
四、开始配置Openface:
(一):Python:Ubuntu 16.04桌面版自带python2.7 和3.5,这里推荐使用python3.5,python2.7将逐渐被淘汰,不过python2.7里可以不用管torch的安装,python3.5则不可以直接使用torch!
(二):安装必要的程序,可以用下面的批处理,也可以一个一个的进行安装。
1. sudo apt-get install build-essential -y 2. sudo apt-get install cmake -y 3. sudo apt-get install curl -y 4. sudo apt-get install gfortran -y 5. sudo apt-get install git -y 6. sudo apt-get install libatlas-dev -y 7. sudo apt-get install libavcodec-dev -y 8. sudo apt-get install libavformat-dev -y 9. sudo apt-get install libboost-all-dev -y 10. sudo apt-get install libgtk2.0-dev -y 11. sudo apt-get install libjpeg-dev -y 12. sudo apt-get install liblapack-dev -y 13. sudo apt-get install libswscale-dev -y 14. sudo apt-get install pkg-config -y 15. sudo apt-get install python-dev -y 16. sudo apt-get install python-pip -y 17. sudo apt-get install wget -y 18. sudo apt-get install zip –y
(三)git,pip安装:
sudo apt-get install git
sudo apt install python-pip
为了不影响后面的操作可以:pip install --upgrade pip
(四)下载OpenFace代码:
git clone https://github.com/cmusatyalab/openface.git
(五)OpenCV安装:
opencv版本为2.4.11,下载地址:https://github.com/Itseez/opencv/archive/2.4.11.zip
编译参考:http://docs.opencv.org/2.4/doc/tutorials/introduction/linux_install/linux_install.html
linux指令下载:
1. cd ~ 2. mkdir -p src 3. cd src 4. curl -L https://github.com/Itseez/opencv/archive/2.4.11.zip -o ocv.zip
1. 解压: 2. unzip ocv.zip
1. 编译: 2. cd opencv-2.4.11 3. mkdir release 4. cd release 5. cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. 6. make -j8 7. make install
1. 验证: 2. import cv2
(六)编译工具CMake:
sudo apt-get install cmake
(七)安装必要的库:
1. pip install numpy scipy pandas 2. pip install scikit-learn scikit-image
1. .C++标准库安装 2. sudo apt-get install libboost-dev 3. sudo apt-get install libboost-python-dev
1. 安装依赖的 PYTHON库(在openface目录下安装!): 2. cd openface 3. sudo pip install -r requirements.txt 4. sudo pip install dlib 5. sudo pip install matplotlib
(八)安装 luarocks—Lua 包管理器,提供一个命令行的方式来管理 Lua 包依赖、安装第三方 Lua 包等功能:
sudo apt-get install luarocks
(九)安装 TORCH—科学计算框架,支持机器学习算法:
1. git clone https://github.com/torch/distro.git ~/torch --recursive 2. cd torch 3. bash install-deps 4. ./install.sh
1. 使 torch 设置的刚刚的环境变量生效 2. source ~/.bashrc
(十)安装依赖:
luarocks install $NAME, where $NAME is as listed below.
dpnn
nn
csvigo
cunn (使用CUDA)
fblualib (仅为了训练DNN)
torchx (仅为了训练DNN)
命令:
安装依赖的 LUA库
~/torch/install/bin/luarocks install dpnn
自选:
1. ~/torch/install/bin/luarocks install nn 2. ~/torch/install/bin/luarocks install optim 3. ~/torch/install/bin/luarocks install csvigo 4. ~/torch/install/bin/luarocks install cunn 5. ~/torch/install/bin/luarocks install fblualib 6. ~/torch/install/bin/luarocks install torchx
验证是否安装依赖成功
用th命令验证
(十一)安装dlib:
dlib v18.16下载地址:https://github.com/davisking/dlib/releases/download/v18.16/dlib-18.16.tar.bz2
1. 安装、编译: 2. mkdir -p ~/src 3. cd ~/src tar xf dlib-18.16.tar.bz2 4. cd dlib-18.16/python_examples 5. mkdir build 6. cd build 7. cmake ../../tools/python 8. cmake --build . --config Release 9. cp dlib.so /usr/local/lib/python2.7/dist-packages
1. 验证: 2. import dlib
(十二)编译OpenFace代码:
1. python setup.py build 2. sudo python setup.py install
五、测试Openface:
(一)下载预训练后的数据:
1. sh models/get-models.sh 2. wget https://storage.cmusatyalab.org/openface-models/nn4.v1.t7 -O models/openface/nn4.v1.t7
(二)用compare.py(demo文件夹中)给出的示例检测两张脸的相近程度:
python demos/compare.py {3.jpg,4.jpg}
这里可能会遇到:could not convert string to float:
这样就可以了:python demos/compare.py {'1.jpg','2.jpg'}(1.jpg和2.jpg一定是和compare.py在一个目录下才行)
AIEarth是一个由众多领域内专家博主共同打造的学术平台,旨在建设一个拥抱智慧未来的学术殿堂!【平台地址:https://devpress.csdn.net/aiearth】 很高兴认识你!加入我们共同进步!