pil ubuntu,ubuntu18.04下载

大家好,如果您还对pil ubuntu不太了解,没有关系,今天就由本站为大家分享pil ubuntu的知识,包括ubuntu18.04下载的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

python有多少个版本(python几个版本的区别)

导读:今天首席CTO笔记来给各位分享关于python有多少个版本的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

不同的电脑应该下载什么python

您可以搜索Windows32位和Windows64位的不同安装版本进行安装。

根据专业软件开发者所描述,python主要有以下几个版本。

1、pythonv2.07:很多公司都写了python2的代码,python也是从这个版本中成为了一颗新启的星星,也让更多的开发者认识和加入到python的开发行例。但是,随着python和开发者的越来越多,python2的功能库、资源也就再也满足了开发者的需求,而且python2与后面的版本python3是不兼容的,官方也宣布在2020停止对python2的更新与维护。

2、pythonv3.5:是目前用于教学的版本。

3、pvythonv3.8:截止今日pyhton的最新版本。

python有几个版本

Python的3.0版本,常被称为Python3000,或简称Py3k。相对于Python的早期版本,这是一个较大的升级。

为了不带入过多的累赘,Python3.0在设计的时候没有考虑向下相容。

许多针对早期Python版本设计的程式都无法在Python3.0上正常执行。

为了照顾现有程式,Python2.6作为一个过渡版本,基本使用了Python2.x的语法和库,同时考虑了向Python3.0的迁移,允许使用部分

Python3.0的语法与函数。

python学习网,免费的python学习网站,欢迎在线学习!

新的Python程式建议使用Python3.0版本的语法。

除非执行环境无法安装Python3.0或者程式本身使用了不支援Python3.0的第三方库。目前不支援Python3.0的第三方库有Twisted,

py2exe,PIL等。

大多数第三方库都正在努力地相容Python3.0版本。即使无法立即使用Python3.0,也建议编写相容Python3.0版本的程式,然后使用

Python2.6,Python2.7来执行。

python所有版本发布时间?

Python的所有版本发布时间如下:

Python3.3.2发布于2013年5月15日。

Python3.2.5发布于2013年5月15日。

Python3.1.5发布于2012年4月10日。

Python3.0.1发布于2009年2月13日。

Python2.7.5发布于2013年5月15日。

Python2.6.8发布于2012年4月10日。

Python2.5.6发布于2011年5月26日。

Python2.4.6发布于2008年12月19日。

Python2.3.7发布于2008年3月11日。

Python2.2.3发布于2003年5月30日。

Python2.1.3发布于2002年4月8日。

Python2.0.1发布于2001年6。

Python1.6.1发布于2000年9月。

Python1.5.2发布于1999年4月。

Python的创始人为荷兰人吉多·范罗苏姆(GuidovanRossum)。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。

之所以选中Python(大蟒蛇的意思)作为该编程语言的名字,是取自英国20世纪70年代首播的电视喜剧《蒙提.派森的飞行马戏团》(MontyPython'sFlyingCircus)。

ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。

但是ABC语言并没有成功,究其原因,Guido认为是其非开放造成的。Guido决心在Python中避免这一错误。同时,他还想实现在ABC中闪现过但未曾实现的东西。

就这样,Python在Guido手中诞生了。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unixshell和C的习惯。

扩展资料:

Python的设计哲学是“优雅”、“明确”、“简单”。因此,Perl语言中“总是有多种方法来做同一件事”的理念在Python开发者中通常是难以忍受的。Python开发者的哲学是“用一种方法,最好是只有一种方法来做一件事”。

在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确的没有或者很少有歧义的语法。

由于这种设计观念的差异,Python源代码通常被认为比Perl具备更好的可读性,并且能够支撑大规模的软件开发。这些准则被称为Python格言。在Python解释器内运行importthis可以获得完整的列表。

参考资料:

百度百科--Python

现在python已经更新到哪个版本了

已经更新到python3.10.2版本了。后附官方链接:

Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言,随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。

python3.6有几个版本?

python3.6有12个版本,分别是3.6.0、3.6.1、3.6.2、3.6.3、3.6.4、3.6.5、3.6.7、3.6.8、3.6.9、3.6.10、3.6.11。

我们可以在python官网中查看python3.6各个版本的信息:

更多Python知识请关注Python自学网

两个python版本,怎么确定哪个是在用的

很多初学者刚开始学python的时候,一定都遇到过这个问题,python的世界有2个版本,python2和python3,而且有些语法还不兼容.怎么办~~到底应该选择哪个版本来开发呢?好,今天我们就来聊聊这个话题.

1.Python2和Python3的历史背景

Python语言是在20世纪90年代诞生的,算算到现在已经是25岁的大叔级的语言了(跟它同一个时代的还有一个鼎鼎大名的java是在1995发行的,红了几十年).

但是Python真正成名比java晚了很多年,其实也主要是应用领域的时代变迁.(猜测为啥,对了大数据的出现)

Python2是Python里面一个非常重要的版本,最早的版本是从2001的时候开始的,特别是从2006年开始py2.5的发布,python的功能逐渐强大起来,慢慢开始稳定下来,并且差不多1-2年左右递增一个版本,在08年左右开始慢慢的火起来了.

而Python3最早是从2008开始发布,但是py3.0的版本非常不稳定,所以社区更新的很快,差不多几个月就更新一次。所以一开始的时候并没有很多人用,只到2014春暖花开的时候python3.4deliver了才开始慢慢稳定下来.

下面我们看一个数据,这是Python社区联和一些网站在2014做的一个调查,关于Python2/3,部分的结果如下:

1).97.51%用户还在写Python2的代码

2).60%的用户写Python3的代码

3).78.09%的用户更多地写Python2代码

4).77.09%的用户认可Python3

目前有一些Linux里的操作系统已经默认使用Python3:

1).ArchLinux(轻量级的Linux操作系统)

2).Ubuntu16.04(一个桌面应用为主的Linux操作系统)

3).Fedora(Redhat桌面版本的延续)

2.Python2和Python3的主要区别:

目前最新的数据是,Python有两个版本:一个是2.7.12版,一个是3.5.12版.

那么Python2运行的好好的,为啥突然要出个Python3呢,其实是为了解决Python2里面一些历史问题

第一个是字符串的问题:

Python2中文本和二进制数据是一个烂摊子,Python中的str是代表二进制数据还是文本数据是有二义性,文字既能代表文本数据又能代表二进制数据这很麻烦,此类错误发生的时候,我们很难意识到。

第二个是对Unicode的支持

由于python是在1991年2月开源发布,这意味着它早于在1991年10月发布的第一版Unicode标准。在接下来几年中,晚于Unicode标准出现的语言都选择在支持Unicode编码的基础上实现自己的str类型,这让Python2处于尴尬的境地。

目前是一个python2/3共存的时代,这两个版本是不兼容的。

python2现在只是做bug的修复,新硬件和操作系统兼容的相关维护工作。不会再有新的功能加入,python2只支持到2020年.

现在Python正在朝着3版本进化,在进化过程中,大量的针对2.x版本的代码要修改后才能运行,所以目前有许多第三方库还暂时无法在3.x上使用。

不过可以畅想一下,也许再过几年情况就会好很多,毕竟全世界有很多优秀的程序员正在把一些库从Py2往Py3上迁移.

3.选择还是要根据自己的需求

若是企业的开发,要满足工作的需求,尤其是依赖的软件只能运行在Python2下,首选Python2.比如你的开发需要依赖大量的第三方的库(因为学Python非常大的一个原因就是因为它有成千上万的第三方包),像大量的数据分析,科学计算,还是选Python2吧.

如果你是自己学习,研究的话,愿意拥抱变化,那么建议学Python3,因为它是未来的方向.

结论:

编程其实主要是对编程思想的理解和经验的积累,千万不要因为纠结学Py2还是Py3而浪费大量时间。

Py2和Py3里面的思想基本是相通的,招式是类似的.当你熟悉Python到一定的程序的时候,会Py2的人学Py3只需要很短的时间。

所以不要再纠结细枝末节的语法差异,而耽误了宝贵的学习时间

结语:以上就是首席CTO笔记为大家介绍的关于python有多少个版本的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。

ubuntu怎么安装Django

导读:今天首席CTO笔记来给各位分享关于ubuntu怎么安装Django的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

如何在ubuntu12.04下搭建PythonDjango环境

首先Ubuntu自带Python然后安装Django

这个是安装配置使用NginxUwsgi来配置Django

照着一步步来就行很简单生产环境使用

django安装各种包报错

Ubuntu新环境下搭建djangorestapi时安装MySQL-python报错。

需要安装(sudo)apt-getinstallpython-dev

python-dev是必须的?----error:Python.h

你需要自己安装一个源外的python类库,而这个类库内含需要编译的调用pythonapi的c/c++文件

你自己写的一个程序编译需要链接libpythonXX.(a|so)

(注:以上不含使用ctypes/ffi或者裸dlsym方式直接调用libpython.so)

其他正常使用python或者通过安装源内的python类库的不需

Installingcollectedpackages:MySQL-python

Runningsetup.pyinstallforMySQL-python...error

Completeoutputfromcommand/usr/bin/python-u-c"importsetuptools,tokenize;__file__='/tmp/pip-build-ZzcKHT/MySQL-python/setup.py';f=getattr(tokenize,'open',open)(__file__);code=f.read().replace('\r\n','\n');f.close();exec(compile(code,__file__,'exec'))"install--record/tmp/pip-Ur_CBU-record/install-record.txt--single-version-externally-managed--compile:

runninginstall

runningbuild

runningbuild_py

creatingbuild

creatingbuild/lib.linux-x86_64-2.7

copying_mysql_exceptions.py-build/lib.linux-x86_64-2.7

creatingbuild/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/__init__.py-build/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/converters.py-build/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/connections.py-build/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/cursors.py-build/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/release.py-build/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/times.py-build/lib.linux-x86_64-2.7/MySQLdb

creatingbuild/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/__init__.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/CR.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/FIELD_TYPE.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/ER.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/FLAG.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/REFRESH.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/CLIENT.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

runningbuild_ext

building'_mysql'extension

creatingbuild/temp.linux-x86_64-2.7

x86_64-linux-gnu-gcc-pthread-DNDEBUG-g-fwrapv-O2-Wall-Wstrict-prototypes-fno-strict-aliasing-Wdate-time-D_FORTIFY_SOURCE=2-g-fstack-protector-strong-Wformat-Werror=format-security-fPIC-Dversion_info=(1,2,5,'final',1)-D__version__=1.2.5-I/usr/include/mysql-I/usr/include/python2.7-c_mysql.c-obuild/temp.linux-x86_64-2.7/_mysql.o

_mysql.c:29:20:fatalerror:Python.h:Nosuchfileordirectory

#include"Python.h"

^

compilationterminated.

error:command'x86_64-linux-gnu-gcc'failedwithexitstatus1

----------------------------------------

Command"/usr/bin/python-u-c"importsetuptools,tokenize;__file__='/tmp/pip-build-ZzcKHT/MySQL-python/setup.py';f=getattr(tokenize,'open',open)(__file__);code=f.read().replace('\r\n','\n');f.close();exec(compile(code,__file__,'exec'))"install--record/tmp/pip-Ur_CBU-record/install-record.txt--single-version-externally-managed--compile"failedwitherrorcode1in/tmp/pip-build-ZzcKHT/MySQL-python/

python2.7怎么安装django

Django提供3种发行版本,推荐使用官方的稳定版本:

1.你的操作系统提供的发行版本(Linux)

2.官方稳定版本(推荐)

3.开发测试版本

Django本质上是Python语言的一个类库,因此可以通过pip工具安装。这也是最简便最好的安装方式。不建议通过下载安装包或者编译源码进行安装的方法,除非你的环境无法连接外部网络。

首先,确保你已经安装了pip!

在Ubuntu下:sudopipinstalldjango

在windows下:命令行中pipinstalldjango

如果要指定版本,可使用pipinstalldjango=1.14.1这种形式。

摘自:刘江的博客和教程:liujiangblog-com,里面有详细的描述。

ubuntu怎么部署django

记录一次在全新服务器下配置Django项目说明:

Linux操作系统:Ubuntu16.04

Django版本:1.8.7

Python版本:2.7.12

运行模式:Ubuntu+Django+Apache2+Mod_wsgi

Apache2配置文件:sudovi/etc/apache2/apache2.conf

Apache2错误日志:cat-n/var/log/apache2/error.log

Apache2命令:

启动:sudo/etc/init.d/apache2start

重启:sudo/etc/init.d/apache2restart

停止:sudo/etc/init.d/apache2stop

配置过程如遇到错误,请仔细检查前面每一步是否有完全按照教程来执行。

1.安装Django

a)sudoapt-getinstallpython-pip

b)sudopipinstallDjango==1.10.5

2.安装Apache2

a)sudoapt-getinstallapache2

3.安装libapache2-mod-wsgi

a)sudoapt-getinstalllibapache2-mod-wsgi

4.创建项目及应用

a)创建项目

django-adminstartproject项目名称

b)创建应用(如果有应用就上传到项目目录下,否则创建)

pythonmanage.pystartapp应用名称

5.项目和应用建好后给予权限

a)chown-Rwww-data:www-data项目名称

6.配置Apache2

a)sudovi/etc/apache2/apache2.conf

169-177行是我添加的内容

169Directory/home/z/product/Code(改为自己的项目目录)

170OptionsIndexesFollowSymLinks

171AllowOverrideNone

172Requireallgranted

173/Directory

174WSGIScriptAlias//home/z/product/Code/Code/wsgi.py(改为自己的项目文件)

175WSGIPythonPath/home/z/product/Code(改为自己的项目文件)

176Alias/static//home/z/product/Code/business/static/(改为自己的项目内的应用)

177Alias/static//home/z/product/Code/yyl/static/(改为自己的项目内的应用)

169-175行的功能为添加项目至Apache

176和177行是为了加载应用内/static/目录内的静态资源

错误及解决方案:

下面错误可能只是自己当前项目中所遇到的错误,其他项目请忽略。

问题一:ImportError:Nomodulenamedcelery

sudopipinstallgit+

问题二:NomodulenamedPIL.ImImagePlugin

sudoapt-getinstallpython-imaging

问题三:Nomodulenamedrequests

sudopipinstallrequests

问题四:Nomodulenameddss.Serializer

sudopipinstalldjango-simple-serializer

Ubuntu14.04下Django+MySQL安装部署全过程

Ubuntu16.04下安装部署Nginx+uWSGI+Django1.9.7

Django的详细介绍:请点这里

Django的下载地址:请点这里

本文永久更新链接地址:

腾讯云python系列之部署Django流程

我的是centos系统

我们通过腾讯的控制台的登录按钮,进入到远程登录的界面,如图1为腾讯云的控制台界面。图2为登录以后的密码输入窗口

进入登录界面以后,会是图3这样子的情况,我们输入ls,会发现没有任何文件,输入piplist会提示没有安装pip,而输入python时,会显示默认安装了python2.7.5版本

一、首先我们要安装pip,根据自己的系统自行选择

centos类系统:sudoyuminstallpythonpython-pip

ubuntu类系统:sudoapt-getinstallpythonpython-pip

安装好以后piplist一下,看看都有哪些python安装包

二、安装django

我安装的Django版本为1.9.8的,根据自己的情况,更改后面的版本号

sudopipinstallDjango==1.9.8

可能会出现图4这样的问题,原因是我们pip版本太低,直接按照提示升级我们的pip

更新了pip以后,安装可能会出现如图5这样的问题,我们不要在==两边加空格,因为加空格会导致不识别django的版本。

安装完以后你会发现自己找不到Django放在哪里了,其实我的django被安装在了

/usr/lib/python2.7/site-packages/

并且我们要执行创建django的命令在django的bin目录下,如图6

/usr/lib/python2.7/site-packages/django/bin

进入到该目录下,运行django-admin.pystartprojectFirstProject,创建出FirstProject的项目。就会在该目录下创建出FirstProject这个项目,进入项目,运行pythonmanage.pyrunserver

问题来了,我们运行以后,不要点击,这个是进不去的,我们应该通过腾讯云的公网ip来访问网站,但又有同学发现通过公网的ip也无法访问我们的网站,这是因为自己的腾讯云没有打开相应的端口,所以无法访问。开放端口在安全组这个选项,如图7

进入安全组,新建我们的开放端口,我开放的是80端口。如图8

开放端口后,我们重新pythonmanage.pyrunserver0.0.0.0:80,如图9

通过公网ip,就可以直接访问我们的网站了。如图10

如何在ubuntu下配置Django和apache+mod

参考一下:

Apache是全球使用率最高的、开源的一个Web服务端软件,现在介绍一下如何在Ubuntu14.04上安装和配置Apache。

工具/原料

Ubuntu14.04

方法/步骤

命令行安装Apache

打开"终端窗口",输入"sudoapt-getinstallapache2"--回车--输入"root用户的密码"--回车--输入"y"--回车,安装完成

默认的网站根目录的路径

Apache安装完成后,默认的网站根目录是"/var/www/html",在终端窗口中输入"ls/var/www/html"--回车--在网站根目录下有一个"index.html"文件,在ie浏览器中输入"127.0.0.1"--回车,就可以打开该页面。

Apache的第一个配置文件apache2.conf的路径

在终端窗口中输入"ls/etc/apache2"--回车--有一个"apache2.conf"的配置文件。

Apache的第二个配置文件000-default.conf的路径

在终端窗口中输入"ls/etc/apache2/sites-available"--回车--有一个"000-default.conf"的配置文件。

修改网站的根目录

1、在终端窗口中输入"sudovi/etc/apache2/apache2.conf"--回车--找到"Directory/var/www/"的位置--更改"/var/www/"为新的根目录就可以了。

2、在终端窗口中输入"sudovi/etc/apache2/sites-available/000-default.conf"--回车--找到"DocumentRoot/var/www/html"的位置--更改"/var/www/html"为新的根目录就可以了,这里我把它更改为"/var/www/"。

重启Apache

在终端窗口中输入"sudo/etc/init.d/apache2restart"--回车--"输入root用户密码"--回车--重启成功。

复制"index.html"文件到"/var/www"目录下

在终端窗口中输入"cp/var/www/html/index.html/var/www/"--回车--输入"ls/var/www"--回车--有一个"index.html"文件,复制成功。

测试更改网站根目录是否成功

在"火狐浏览器"中输入"127.0.0.1"--能访问到"index.html"文件--更改成功

结语:以上就是首席CTO笔记为大家介绍的关于ubuntu怎么安装Django的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。

python多少版本才能安装dlib(安装不同版本的python)

今天给各位分享python多少版本才能安装dlib的知识,其中也会对安装不同版本的python进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

1、pythonpip安装dlib一直失败?2、如何线上部署用python基于dlib写的人脸识别算法3、ubuntu里面怎么安装dlib4、dlib库,怎么在python中安装5、谁用过python中的第三方库facerecognitionpythonpip安装dlib一直失败?

安装失败需要检查几个问题:

兼容问题,对应的包支持的操作系统,支持的Python版本

安装问题,部分包只能通过源码安装,或者离线的wheel方式安装

核对包的安装文档

如何线上部署用python基于dlib写的人脸识别算法

python使用dlib进行人脸检测与人脸关键点标记

Dlib简介:

首先给大家介绍一下Dlib

Dlib是一个跨平台的C++公共库,除了线程支持,网络支持,提供测试以及大量工具等等优点,Dlib还是一个强大的机器学习的C++库,包含了许多机器学习常用的算法。同时支持大量的数值算法如矩阵、大整数、随机数运算等等。

Dlib同时还包含了大量的图形模型算法。

最重要的是Dlib的文档和例子都非常详细。

Dlib主页:

这篇博客所述的人脸标记的算法也是来自Dlib库,Dlib实现了OneMillisecondFaceAlignmentwithanEnsembleofRegressionTrees中的算法

这篇论文非常出名,在谷歌上打上OneMillisecond就会自动补全,是CVPR2014(国际计算机视觉与模式识别会议)上的一篇国际顶级水平的论文。毫秒级别就可以实现相当准确的人脸标记,包括一些半侧脸,脸很不清楚的情况,论文本身的算法十分复杂,感兴趣的同学可以下载看看。

Dlib实现了这篇最新论文的算法,所以Dlib的人脸标记算法是十分先进的,而且Dlib自带的人脸检测库也很准确,我们项目受到硬件所限,摄像头拍摄到的画面比较模糊,而在这种情况下之前尝试了几个人脸库,识别率都非常的低,而Dlib的效果简直出乎意料。

相对于C++我还是比较喜欢使用python,同时Dlib也是支持python的,只是在配置的时候碰了不少钉子,网上大部分的Dlib资料都是针对于C++的,我好不容易才配置好了python的dlib,这里分享给大家:

Dlibforpython配置:

因为是用python去开发计算机视觉方面的东西,python的这些科学计算库是必不可少的,这里我把常用的科学计算库的安装也涵盖在内了,已经安装过这些库的同学就可以忽略了。

我的环境是Ubuntu14.04:

大家都知道Ubuntu是自带python2.7的,而且很多Ubuntu系统软件都是基于python2.7的,有一次我系统的python版本乱了,我脑残的想把python2.7卸载了重装,然后……好像是提醒我要卸载几千个软件来着,没看好直接回车了,等我反应过来Ctrl+C的时候系统已经没了一半了…

所以我发现想要搞崩系统,这句话比rm-rf还给力…

sudoapt-getremovepython2.71

首先安装两个python第三方库的下载安装工具,ubuntu14.04好像是预装了easy_install

以下过程都是在终端中进行:

1.安装pip

sudoapt-getinstallpython-pip1

2.安装easy-install

sudoapt-getinstallpython-setuptools1

3.测试一下easy_install

有时候系统环境复杂了,安装的时候会安装到别的python版本上,这就麻烦了,所以还是谨慎一点测试一下,这里安装一个我之前在博客中提到的可以模拟浏览器的第三方python库测试一下。

sudoeasy_installMechanize1

4.测试安装是否成功

在终端输入python进入pythonshell

python1

进入pythonshell后import一下刚安装的mechanize

importmechanize1

没有报错,就是安装成功了,如果说没有找到,那可能就是安装到别的python版本的路径了。

同时也测试一下PIL这个基础库

importPIL1

没有报错的话,说明PIL已经被预装过了

5.安装numpy

接下来安装numpy

首先需要安装python-dev才可以编译之后的扩展库

sudoapt-getinstallpython-dev1

之后就可以用easy-install安装numpy了

sudoeasy_installnumpy1

这里有时候用easy-install安装numpy下载的时候会卡住,那就只能用apt-get来安装了:

sudoapt-getinstallnumpy1

不推荐这样安装的原因就是系统环境或者说python版本多了之后,直接apt-get安装numpy很有可能不知道装到哪个版本去了,然后就很麻烦了,我有好几次遇到这个问题,不知道是运气问题还是什么,所以风险还是很大的,所以还是尽量用easy-install来安装。

同样importnumpy进行测试

python

importnumpy1234

没有报错的话就是成功了

下面的安装过程同理,我就从简写了,大家自己每步别忘了测试一下

6.安装scipy

sudoapt-getinstallpython-scipy1

7.安装matplotlib

sudoapt-getinstallpython-matplotlib1

8.安装dlib

我当时安装dlib的过程简直太艰辛,网上各种说不知道怎么配,配不好,我基本把stackoverflow上的方法试了个遍,才最终成功编译出来并且导入,不过听说18.18更新之后有了setup.py,那真是极好的,18.18我没有亲自配过也不能乱说,这里给大家分享我配置18.17的过程吧:

1.首先必须安装libboost,不然是不能使用.so库的

sudoapt-getinstalllibboost-python-devcmake1

2.到Dlib的官网上下载dlib,会下载下来一个压缩包,里面有C++版的dlib库以及例子文档,Pythondlib库的代码例子等等

我使用的版本是dlib-18.17,大家也可以在我这里下载:

之后进入python_examples下使用bat文件进行编译,编译需要先安装libboost-python-dev和cmake

cdtodlib-18.17/python_examples

./compile_dlib_python_module.bat123

之后会得到一个dlib.so,复制到dist-packages目录下即可使用

这里大家也可以直接用我编译好的.so库,但是也必须安装libboost才可以,不然python是不能调用so库的,下载地址:

将.so复制到dist-packages目录下

sudocpdlib.so/usr/local/lib/python2.7/dist-packages/1

最新的dlib18.18好像就没有这个bat文件了,取而代之的是一个setup文件,那么安装起来应该就没有这么麻烦了,大家可以去直接安装18.18,也可以直接下载复制我的.so库,这两种方法应该都不麻烦~

有时候还会需要下面这两个库,建议大家一并安装一下

9.安装skimage

sudoapt-getinstallpython-skimage1

10.安装imtools

sudoeasy_installimtools1

DlibfacelandmarksDemo

环境配置结束之后,我们首先看一下dlib提供的示例程序

1.人脸检测

dlib-18.17/python_examples/face_detector.py源程序:

#!/usr/bin/python#Thecontentsofthisfileareinthepublicdomain.SeeLICENSE_FOR_EXAMPLE_PROGRAMS.txt##?Thisexampleprogramshowshowtofindfrontalhumanfacesinanimage.?In#?particular,itshowshowyoucantakealistofimagesfromthecommand#?lineanddisplayeachonthescreenwithredboxesoverlaidoneachhuman#?face.##?Theexamples/facesfoldercontainssomejpgimagesofpeople.?Youcanrun#?thisprogramonthemandseethedetectionsbyexecutingthe#?followingcommand:#???./face_detector.py../examples/faces/*.jpg##?ThisfacedetectorismadeusingthenowclassicHistogramofOriented#?Gradients(HOG)featurecombinedwithalinearclassifier,animage#?pyramid,andslidingwindowdetectionscheme.?Thistypeofobjectdetector#?isfairlygeneralandcapableofdetectingmanytypesofsemi-rigidobjects#?inadditiontohumanfaces.?Therefore,ifyouareinterestedinmaking#?yourownobjectdetectorsthenreadthetrain_object_detector.pyexample#?program.?###COMPILINGTHEDLIBPYTHONINTERFACE#?Dlibcomeswithacompiledpythoninterfaceforpython2.7onMSWindows.If#?youareusinganotherpythonversionoroperatingsystemthenyouneedto#?compilethedlibpythoninterfacebeforeyoucanusethisfile.?Todothis,#?runcompile_dlib_python_module.bat.?Thisshouldworkonanyoperating#?systemsolongasyouhaveCMakeandboost-pythoninstalled.#?OnUbuntu,thiscanbedoneeasilybyrunningthecommand:#???sudoapt-getinstalllibboost-python-devcmake##?Alsonotethatthisexamplerequiresscikit-imagewhichcanbeinstalled#?viathecommand:#???pipinstall-Uscikit-image#?Ordownloadedfrom.importsys

importdlib

fromskimageimportio

detector=dlib.get_frontal_face_detector()

win=dlib.image_window()

print("a");forfinsys.argv[1:]:

print("a");

print("Processingfile:{}".format(f))

img=io.imread(f)

#The1inthesecondargumentindicatesthatweshouldupsampletheimage

#1time.?Thiswillmakeeverythingbiggerandallowustodetectmore

#faces.

dets=detector(img,1)

print("Numberoffacesdetected:{}".format(len(dets)))??fori,dinenumerate(dets):

print("Detection{}:Left:{}Top:{}Right:{}Bottom:{}".format(

i,d.left(),d.top(),d.right(),d.bottom()))

win.clear_overlay()

win.set_image(img)

win.add_overlay(dets)

dlib.hit_enter_to_continue()#Finally,ifyoureallywanttoyoucanaskthedetectortotellyouthescore#foreachdetection.?Thescoreisbiggerformoreconfidentdetections.#Also,theidxtellsyouwhichofthefacesub-detectorsmatched.?Thiscanbe#usedtobroadlyidentifyfacesindifferentorientations.if(len(sys.argv[1:])0):

img=io.imread(sys.argv[1])

dets,scores,idx=detector.run(img,1)??fori,dinenumerate(dets):

print("Detection{},score:{},face_type:{}".format(

d,scores[i],idx[i]))123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081

我把源代码精简了一下,加了一下注释:face_detector0.1.py

#-*-coding:utf-8-*-importsys

importdlib

fromskimageimportio#使用dlib自带的frontal_face_detector作为我们的特征提取器detector=dlib.get_frontal_face_detector()#使用dlib提供的图片窗口win=dlib.image_window()#sys.argv[]是用来获取命令行参数的,sys.argv[0]表示代码本身文件路径,所以参数从1开始向后依次获取图片路径forfinsys.argv[1:]:??#输出目前处理的图片地址

print("Processingfile:{}".format(f))??#使用skimage的io读取图片

img=io.imread(f)??#使用detector进行人脸检测dets为返回的结果

dets=detector(img,1)??#dets的元素个数即为脸的个数

print("Numberoffacesdetected:{}".format(len(dets)))??#使用enumerate函数遍历序列中的元素以及它们的下标

#下标i即为人脸序号

#left:人脸左边距离图片左边界的距离;right:人脸右边距离图片左边界的距离

#top:人脸上边距离图片上边界的距离;bottom:人脸下边距离图片上边界的距离

fori,dinenumerate(dets):

print("dets{}".format(d))

print("Detection{}:Left:{}Top:{}Right:{}Bottom:{}"

.format(i,d.left(),d.top(),d.right(),d.bottom()))??#也可以获取比较全面的信息,如获取人脸与detector的匹配程度

dets,scores,idx=detector.run(img,1)

fori,dinenumerate(dets):

print("Detection{},dets{},score:{},face_type:{}".format(i,d,scores[i],idx[i]))??

#绘制图片(dlib的ui库可以直接绘制dets)

win.set_image(img)

win.add_overlay(dets)??#等待点击

dlib.hit_enter_to_continue()1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950

分别测试了一个人脸的和多个人脸的,以下是运行结果:

运行的时候把图片文件路径加到后面就好了

pythonface_detector0.1.py./data/3.jpg12

一张脸的:

两张脸的:

这里可以看出侧脸与detector的匹配度要比正脸小的很多

2.人脸关键点提取

人脸检测我们使用了dlib自带的人脸检测器(detector),关键点提取需要一个特征提取器(predictor),为了构建特征提取器,预训练模型必不可少。

除了自行进行训练外,还可以使用官方提供的一个模型。该模型可从dlibsourceforge库下载:

arks.dat.bz2

也可以从我的连接下载:

这个库支持68个关键点的提取,一般来说也够用了,如果需要更多的特征点就要自己去训练了。

dlib-18.17/python_examples/face_landmark_detection.py源程序:

#!/usr/bin/python#Thecontentsofthisfileareinthepublicdomain.SeeLICENSE_FOR_EXAMPLE_PROGRAMS.txt##?Thisexampleprogramshowshowtofindfrontalhumanfacesinanimageand#?estimatetheirpose.?Theposetakestheformof68landmarks.?Theseare#?pointsonthefacesuchasthecornersofthemouth,alongtheeyebrows,on#?theeyes,andsoforth.##?ThisfacedetectorismadeusingtheclassicHistogramofOriented#?Gradients(HOG)featurecombinedwithalinear

ubuntu里面怎么安装dlib

下面是在ubuntu下如何为Python安装dlib:

1.在官网dlib官网下载最新版本的dlib

由于dlib最初是一个C++库,要安装为python第三方库,

2.要下载boost将C++编译为python,同时还要下载cmake

命令:sudoapt-getinstalllibboost-python-devcmake11

3.然后切换到dlib-18.17/python_examples目录

然后运行

./compile_dlib_python_module.bat11

会生成dlib.so

4.该脚本还要加上可执行权限

这样在dlib-18.17/python_examples目录下就可以导入dlib库,但在其它地方还不能导入

将dlib.so复制到python第三库的文件夹下

sudocpdlib.so/usr/local/lib/python2.7/dist-packages/11

这样dlib库就安装好了

dlib库,怎么在python中安装

因为这个工程中用到的依赖库比较多,所以索性下载了Anaconda,它是一个python的发行版,包括了python和很多常见的软件库,和一个包管理器conda,所以安装了Anaconda后就不用再安装python了。

1、下载Anaconda的链接:

我下载的是对应python2.7version的64位Anaconda4.2.0,我的电脑系统是win64。

2、现在的问题就转换成如何用Anaconda安装第三方库的问题(Anaconda不包含dlib库),在自己电脑上运行cmd.exe,直接在默认的路径上面执行如下程序即可安装成功:

condainstall-cmenpodlib=18.18

3、执行没问题的话,结果应该如上图所示。困扰我好几天的问题终于解决了,走的太多的弯路,不过也是一个学习的过程,希望大家能有所收获吧。

谁用过python中的第三方库facerecognition

简介

该库可以通过python或者命令行即可实现人脸识别的功能。使用dlib深度学习人脸识别技术构建,在户外脸部检测数据库基准(LabeledFacesintheWild)上的准确率为99.38%。

在github上有相关的链接和API文档。

在下方为提供的一些相关源码或是文档。当前库的版本是v0.2.0,点击docs可以查看API文档,我们可以查看一些函数相关的

阅读剩余
THE END