1.clone2个项目:git clone + url
https://github.com/ageitgey/face_recognition.git
https://github.com/davisking/dlib.git
2.python环境检查
python --version 查看python版本
如果你发现输入python3 --version才是python3的版本,你的电脑里就至少有python和python3两个环境.下面的命令你根据想要安装的环境来.想装python3的就按python3来
3.pip检查
>>> pip -V查看版本
>>> brew install pip (python3的就是pip3)
>>> pip list 查看pip下安装了哪些东西.如果有装有pip2 pip3这是命令就是pip3 list(对应python3) pip2 list(对应python2)
(下面的命令如果报permission的错误,就在命令前+sudo:如果输入./b2 install 报了,就输入sudo ./b2 install)
4.安装dlib库准备工作(需要cmake,boost)
1.cmake可以自己下载安装 终端输入cmake 如果出现cmake command not found,恭喜你没有装好:http://blog.csdn.net/baiyu9821179/article/details/54632135
2.boost
1.可以去www.boost.org下载boost_1_64_0.tar.gz解压进入:安装步骤和linux(ubuntu)一样
>>> ./bootstrap.sh --with-libraries=python(python版本根据实际情况来)
>>> ./b2
>>> sudo ./b2 install
2.安装boost-python
brew install boost-python --with-python3 --without-python (这是python3的)
brew reinstall boost-python --with-python3 --without-python(重新安装)
brew install boost-python (这是默认python)
5.cmake和boost安装了的再往下看:找到前面下载的dlib项目
两种方法:
1.进入dlib/examples创建build文件夹执行cmake命令(csdn里的方法)
>>> cd dlib/examples
>>> mkdir build
>>> cd build
>>> cmake ..
>>> cmake --build . --config Release
进入dlib文件夹
>>> cd ../..
>>> python setup.py install (默认python)
>>> python3 setup.py install (要安装python3的用这个,默认是python3就使用上面一个命令)
2.进入dlib文件夹创建build文件夹执行cmake命令(clone的face_recognition里的链接看的,也可以参考https://github.com/davisking/dlib这个项目里说明)
>>> cd dlib
>>> mkdir build
>>> cd build
>>> cmake .. -DDLIB_USE_CUDA=0 -DUSE_AVX_INSTRUCTIONS=1
>>> cmake --build .
>>> cd ..
>>> python3 setup.py install --yes USE_AVX_INSTRUCTIONS --no DLIB_USE_CUDA
如果要重新安装dlib,删除刚才build的文件夹,再创建build重新来
6.验证dlib:
>>> python (根据实际的python环境来)
>>> import dlib
>>>
说明成功导入了dlib模块
如果报could not find Boost 可以参考https://www.cnblogs.com/as3asddd/p/7237280.html
7.dlib安装好了,开始
pip3 install face_recognition (这里用pip2和pip3还不懂的话,)
报错了应该是前面dlib没装好,还有就是timeout,重新执行这个命令.目前没遇到其他问题,有的话请自行百度和提出来交流
8.验证face_recognition
1.直接在终端输入 face_re 能自动补全就说明装好了
2.输入 pip3 list 查看
9.进一步验证:运行验证
1.创建两个文件夹:如i_know和unknown
2.i_know相当于图片库:图片名为人名,unknown相当于需要识别的人的图片,可以放多张
3.运行:face_recognition i_know unknown
输出结果
10.到了这里你的face_recognition已经成功了,但是python3的哥们可能会有import cv2找不到cv2模块的问题,这个问题python2暂时没遇到
检查有没有这个问题
>>> python
>>> import cv2
>>>
说明没有这个问题
11.这个问题重点在于找到当前环境python site-packages目录的路径
1.找路径
>>> import site; site.getsitepackages() 只适用于python2
>>> import os;os.path.dirname(os.file)
例子:
>>>python
>>> import os
>>> print(os.path.dirname(os.file))
输出结果:
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6
2.进入到该路径下的site-packages,创建软连接,根据实际路径调整命令,目标:找到site-packages下的cv2.cpython-**m-drawin.so,比如我的找到的路径是:
>>> cd /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/
>>> ln -s /usr/local/Cellar/opencv3/3.1.0_4/lib/python3.5/site-packages/cv2.cpython-35m-darwin.so cv2.so
这个问题参考http://blog.csdn.net/willduan1/article/details/53898440
12.import cv2 遇到了ImportError: numpy.core.multiarray failed to import
numpy,scipy卸了重装
>>> pip uninstall numpy
>>> pip uninstall scipy
>>> pip install numpy
>>> pip install scipy
回到步骤10检查cv2模块
csdn地址http://blog.csdn.net/u010487344/article/details/78571479