热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

人脸识别(1)--Python3.6+OpenCV3.2在Mac下环境搭建

  现在越来越多的地方需要用到智能识别,这里先介绍一种简单的框人脸方式环境。python安装搭建python虚拟环境安装ope

  现在越来越多的地方需要用到智能识别,这里先介绍一种简单的框人脸方式环境。

    • python安装
    • 搭建python虚拟环境
    • 安装openVC的先决条件
    • 编译openVC环境
    • 安装验证

python安装

从官网上下载最新版本的python,这里我选择了dmg文件,直接双击进行安装。
python官网;https://www.python.org/downloads/mac-osx/

之后需要更新一下PATH路径:
打开cmd,在~/.bash_profile中添加(如果不存在进行添加)

$ vim ~/.bash_profile
export PATH=/usr/local/bin:$PATH

然后重新加载~/.bash_profile,保证更新成功

$ source ~/.bash_profile

确认python安装成功

$ which python3
/usr/local/bin/python
$ python3 –version
Python 3.6.1

搭建python虚拟环境

虽然虚拟环境不是必须的步骤,但是鉴于我们可能用电脑开发很多不同的项目,所以强烈建议新建一个虚拟环境用于python的opencv开发。

首先,安装虚拟环境 virtualenv 和 virtualenvwrapper。

pip3 install virtualenv virtualenvwrapper

这个虚拟环境是在python环境中都可以用的。这里我们更新~/.bash_profile 的设置。

#Virtualenv/VirtualenvWrapper
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3
source /usr/local/bin/virtualenvwrapper.sh

然后重新加载.bash_profile:

$ source ~/.bash_profile

现在我们创建一个cv3的虚拟环境进行开发,便于安装一些这个项目需要的额外的包,并进行图片处理。

$ mkvirtualenv cv3 -p python3

在 mkvirtualenv 之后会自动进入cv3环境,但如果是已经存在这个环境,想再次进入环境的话,用worken

$ workon cv3

可以进入cv3环境。
在这个虚拟环境中,我们需要安装numpy(python的先决条件)

$ pip install numpy

安装openVC的先决条件

为了编译openVC,需要安装一些开发工具:

$ brew install cmake pkg-config

同时下载一些用于各种图片格式读取的包:

$ brew install jpeg libpng libtiff openexr

以及另外一些包用于优化openVC程序:

$ brew install eigen tbb

编译openVC环境

从Github上下载openVC源码(可以从官网上选择最新的版本进行检出):
注: Github地址:https://github.com/opencv/opencv

$ cd ~
$ git clone https://github.com/Itseez/opencv.git
$ cd opencv
$ git checkout 3.2.0

之后,我们需要下载opencv_contrib包,为OpenCV提供一些额外的支持,像内容检测等(这里我们选择和OpenCV相同的版本进行下载)

$ cd ~
$ git clone https://github.com/Itseez/opencv_contrib
$ cd opencv_contrib
$ git checkout 3.2.0

在下载完成后,创建build文件夹:

$ cd ~/opencv
$ mkdir build
$ cd build

使用CMake进行build:
注:这里要确认OpenCV和python3模块都加载完成。

$ cmake -D CMAKE_BUILD_TYPE=RELEASE \
     -D CMAKE_INSTALL_PREFIX=/usr/local \
     -D PYTHON3_PACKAGES_PATH=~/.virtualenvs/cv3/lib/python3.4/site-packages \
     -D PYTHON3_LIBRARY=/usr/local/Cellar/python3/3.4.3/Frameworks/Python.framework/Versions/3.4/lib/libpython3.4m.dylib \
     -D PYTHON3_INCLUDE_DIR=/usr/local/Cellar/python3/3.4.3/Frameworks/Python.framework/Versions/3.4/include/python3.4m \
     -D INSTALL_C_EXAMPLES=ON \
     -D INSTALL_PYTHON_EXAMPLES=ON \
     -D BUILD_EXAMPLES=ON \
     -D BUILD_opencv_python3=ON \
     -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules ..

当CMake完成并且不报错之后,开始进行编译:

$ make -j4
$ make install

若权限不足,则使用下面语句:

$ make -j4
$ sudo make install

安装验证

验证cv2.so正确:

$ cd ~/.virtualenvs/cv3/lib/python3.4/site-packages/
$ ls -l cv2.so
-rwxr-xr-x 1 admin _developer 2017027 April 14 06:11 cv2.so

验证python中可以使用opencv包,import不报错:

(cv3)74-80-245-164:~ admin$ python3
Python 3.6.1 (default, April 14 2017, 05:23:16)
[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)] on darwin
Type “help”, “copyright”, “credits” or “license” for more information.
>>> import cv2

参考文档:https://www.pyimagesearch.com/2015/06/29/install-opencv-3-0-and-python-3-4-on-osx/


推荐阅读
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • 本文介绍了解决github无法访问和克隆项目到本地的问题。作者建议通过修改配置文件中的用户名和密码来解决访问失败的问题,并提供了详细步骤。同时,还提醒读者注意输入的用户名和密码是否正确。 ... [详细]
  • 在Kubernetes上部署JupyterHub的步骤和实验依赖
    本文介绍了在Kubernetes上部署JupyterHub的步骤和实验所需的依赖,包括安装Docker和K8s,使用kubeadm进行安装,以及更新下载的镜像等。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • phpcomposer 那个中文镜像是不是凉了 ... [详细]
  • 本文介绍了在Mac上安装Xamarin并使用Windows上的VS开发iOS app的方法,包括所需的安装环境和软件,以及使用Xamarin.iOS进行开发的步骤。通过这种方法,即使没有Mac或者安装苹果系统,程序员们也能轻松开发iOS app。 ... [详细]
  • 本文介绍了Composer依赖管理的重要性及使用方法。对于现代语言而言,包管理器是标配,而Composer作为PHP的包管理器,解决了PEAR的问题,并且使用简单,方便提交自己的包。文章还提到了使用Composer能够避免各种include的问题,避免命名空间冲突,并且能够方便地安装升级扩展包。 ... [详细]
  • 1.直接在cmd窗口运行pipinstalljieba2.使用conda自带的安装工具condainstalljieba3.有一些模块是无法使用以上两种方式安装上ÿ ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
author-avatar
lanxians
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有