最近对人像识别有点兴趣,就想自己试试。
对python有一点了解,就选用了python。
背景:
1、mac自带python2.7
2、已经安装过homebrew
开始安装:
1、安装opencv
brew install opencv3
2、配置环境
2.1 cd /Library/Python/2.7/site-packages/
2.2 ln -s /usr/local/Cellar/opencv/3.3.0_3/lib/python2.7/site-packages/cv.py cv.py
2.3 ln -s /usr/local/Cellar/opencv/3.3.0_3/lib/python2.7/site-packages/cv2.so cv2.so
*注:如果ln命令被权限拒绝了,请使用sudo权限
打开配置文件,添加环境配置 (我的路径:/Users/songjunjun/.zshrc)
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages
添加好后,记得刷新
此时opencv已经安装好了
运行下面的代码
import cv2
# windows to display image
cv2.namedWindow("Image")
# read image
image = cv2.imread('bbb.jpeg')
# show image
cv2.imshow("Image", image)
# exit at closing of window
cv2.waitKey(0)
cv2.destroyAllWindows()
3、此时会出现 ImportError: numpy.core.multiarray failed to import 错误。
解决方案:
pip install -U numpy
如果不行,就用
pip install numpy –user -U
4、因为是图片,还要安装图片库
pip install image
或者
sudo pip install image
至此,应该是可以正常使用了
运行人脸识别demo
然后做了一个人脸识别,参考人脸检测
该代码中haarcascade的位置让我很是懵逼,最后发现他的地址和mac的不一样,我的文件夹地址是 /usr/local/Cellar/opencv/3.3.0_3/share/OpenCV/haarcascades/
至此,可以正常跑这个人脸识别了。
该代码中存在一个问题,会重复创建文件夹,导致异常,加个判断就好了