windows上安装Anaconda和python的教程详解


Posted in Python onMarch 28, 2017

 一提到数字图像处理编程,可能大多数人就会想到matlab,但matlab也有自身的缺点:

1、不开源,价格贵

2、软件容量大。一般3G以上,高版本甚至达5G以上。

3、只能做研究,不易转化成软件。

因此,我们这里使用Python这个脚本语言来进行数字图像处理。

要使用Python,必须先安装python,一般是2.7版本以上,不管是在windows系统,还是Linux系统,安装都是非常简单的。

要使用python进行各种开发和科学计算,还需要安装对应的包。这和matlab非常相似,只是matlab里面叫工具箱(toolbox),而python里面叫库或包。基于python脚本语言开发的数字图片处理包,其实很多,比如PIL,Pillow, OpenCV, scikit-image等。

对比这些包,PIL和Pillow只提供最基础的数字图像处理,功能有限;OpenCV实际上是一个c++库,只是提供了python接口,更新速度非常慢。到现在python都发展到了3.5版本,而opencv只支持到python 2.7版本;scikit-image是基于scipy的一款图像处理包,它将图片作为numpy数组进行处理,正好与matlab一样,因此,我们最终选择scikit-image进行数字图像处理。

一、需要的安装包

因为scikit-image是基于scipy进行运算的,因此安装numpy和scipy是肯定的。要进行图片的显示,还需要安装matplotlib包,综合起来,需要的包有:

Python >= 2.6
Numpy >= 1.6.1
Cython >= 0.21
Six >=1.4
SciPy >=0.9
Matplotlib >= 1.1.0
NetworkX >= 1.8
Pillow >= 1.7.8
dask[array] >= 0.5.0

比较,安装起来非常费事,尤其是scipy,在windows上基本安装不上。

但是不用怕,我们选择一款集成安装环境就行了,在此推荐Anaconda, 它把以上需要的包都集成在了一起,因此我们实际上从头到尾只需要安装Anaconda软件就行了,其它什么都不用装。

二、下载并安装 anaconda

先到https://www.continuum.io/downloads 下载anaconda, 现在的版本有python2.7版本和python3.5版本,下载好对应版本、对应系统的anaconda,它实际上是一个sh脚本文件,大约280M左右。

本系列以windows7+python3.5为例,因此我们下载如下图红框里的版本:

windows上安装Anaconda和python的教程详解

名称为: Anaconda3-2.4.1-Windows-x86_64.exe

是一个可执行的exe文件,下载完成好,直接双击就可以安装了。

在安装的时候,假设我们安装在D盘根目录,如:

windows上安装Anaconda和python的教程详解

并且将两个选项都选上,将安装路径写入环境变量。

windows上安装Anaconda和python的教程详解

然后等待安装完成就可以了。

安装完成后,打开windows的命令提示符:

输入conda list 就可以查询现在安装了哪些库,常用的numpy, scipy名列其中。如果你还有什么包没有安装上,可以运行

conda install ***  来进行安装。(***为需要的包的名称)

如果某个包版本不是最新的,运行 conda update *** 就可以更新了。

三、简单测试

anaconda自带了一款编辑器spyder,我们以后就可以用这款编辑器来编写代码。

spyder.exe放在安装目录下的Scripts里面,如我的是 D:/Anaconda3/Scripts/spyder.exe, 直接双击就能运行。我们可以右键发送到桌面快捷方式,以后运行就比较方便了。

我们简单编写一个程序来测试一下安装是否成功,该程序用来打开一张图片并显示。首先准备一张图片,然后打开spyder,编写如下代码:

from skimage import io
img=io.imread('d:/dog.jpg')
io.imshow(img)

将其中的d:/dog.jpg 改成你的图片位置

然后点击上面工具栏里的绿色三角进行运行,最终显示

windows上安装Anaconda和python的教程详解

如果右下角“ Ipython console" 能显示出图片,说明我们的运行环境安装成功。

我们可以选择右上角的 ” variable explorer" 来查看图片信息,如

windows上安装Anaconda和python的教程详解

我们可以把这个程序保存起来,注意python脚本文件的后缀名为py.

四、skimage包的子模块

skimage包的全称是scikit-image SciKit (toolkit for SciPy) ,它对scipy.ndimage进行了扩展,提供了更多的图片处理功能。它是由python语言编写的,由scipy 社区开发和维护。skimage包由许多的子模块组成,各个子模块提供不同的功能。主要子模块列表如下:

子模块名称  主要实现功能
io 读取、保存和显示图片或视频
data 提供一些测试图片和样本数据
color 颜色空间变换
filters 图像增强、边缘检测、排序滤波器、自动阈值等
draw 操作于numpy数组上的基本图形绘制,包括线条、矩形、圆和文本等
transform 几何变换或其它变换,如旋转、拉伸和拉东变换等
morphology 形态学操作,如开闭运算、骨架提取等
exposure 图片强度调整,如亮度调整、直方图均衡等
feature 特征检测与提取等
measure 图像属性的测量,如相似性或等高线等
segmentation 图像分割
restoration 图像恢复
util 通用函数

用到一些图片处理的操作函数时,需要导入对应的子模块,如果需要导入多个子模块,则用逗号隔开,如:

from skimage import io,data,color

以上所述是小编给大家介绍的windows上安装Anaconda和python的教程详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python中Django框架利用url来控制登录的方法
Jul 25 Python
python简单实例训练(21~30)
Nov 15 Python
Python实现感知机(PLA)算法
Dec 20 Python
python3.7简单的爬虫实例详解
Jul 08 Python
Python3打包exe代码2种方法实例解析
Feb 17 Python
关于win10在tensorflow的安装及在pycharm中运行步骤详解
Mar 16 Python
Python集成开发工具Pycharm的安装和使用详解
Mar 18 Python
结束运行python的方法
Jun 16 Python
matplotlib 画双轴子图无法显示x轴的解决方法
Jul 27 Python
python3实现名片管理系统(控制台版)
Nov 29 Python
python scrapy简单模拟登录的代码分析
Jul 21 Python
python基础之错误和异常处理
Oct 24 Python
利用python爬取软考试题之ip自动代理
Mar 28 #Python
详解python调度框架APScheduler使用
Mar 28 #Python
Python中is与==判断的区别
Mar 28 #Python
Python利用Beautiful Soup模块创建对象详解
Mar 27 #Python
Python利用Beautiful Soup模块修改内容方法示例
Mar 27 #Python
python递归查询菜单并转换成json实例
Mar 27 #Python
Python中的命令行参数解析工具之docopt详解
Mar 27 #Python
You might like
PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
2009/05/28 PHP
php 处理上百万条的数据库如何提高处理查询速度
2010/02/08 PHP
PHP源码分析之变量的存储过程分解
2014/07/03 PHP
PHP+HTML+JavaScript+Css实现简单爬虫开发
2016/03/28 PHP
PHP使用内置函数生成图片的方法详解
2016/05/09 PHP
PHP使用Nginx实现反向代理
2017/09/20 PHP
PHP实现的MD5结合RSA签名算法实例
2017/10/07 PHP
由浅到深了解JavaScript类
2006/09/08 Javascript
让iframe子窗体取父窗体地址栏参数(querystring)
2009/10/13 Javascript
JavaScript面向对象知识串结(读JavaScript高级程序设计(第三版))
2012/07/17 Javascript
基于jquery的has()方法以及与find()方法以及filter()方法的区别详解
2013/04/26 Javascript
jQuery类选择器用法实例
2014/12/23 Javascript
jQuery实现仿路边灯箱广告图片轮播效果
2015/04/15 Javascript
jQuery插件datalist实现很好看的input下拉列表
2015/07/14 Javascript
解决js页面滚动效果scrollTop在FireFox与Chrome浏览器间的兼容问题的方法
2015/12/03 Javascript
js解决movebox移动问题
2016/03/29 Javascript
JavaScript监听手机物理返回键的两种解决方法
2017/08/14 Javascript
JavaScript动态加载重复绑定问题
2018/04/01 Javascript
NodeJS服务器实现gzip压缩的示例代码
2018/10/12 NodeJs
微信小程序ibeacon三点定位详解
2018/10/31 Javascript
node.js实现为PDF添加水印的示例代码
2018/12/05 Javascript
JS实现的A*寻路算法详解
2018/12/14 Javascript
详解如何在Vue项目中发送jsonp请求
2019/10/25 Javascript
[05:06]2017亚洲邀请赛DAC回顾片
2017/04/19 DOTA
Python实现随机生成手机号及正则验证手机号的方法
2018/04/25 Python
flask-socketio实现WebSocket的方法
2018/07/31 Python
解决flask接口返回的内容中文乱码的问题
2020/04/03 Python
python爬虫请求头的使用
2020/12/01 Python
轻松掌握CSS3中的字体大小单位rem的使用方法
2016/05/24 HTML / CSS
HTML5标签小集
2011/08/02 HTML / CSS
英国在线电子和小工具商店:TecoBuy
2018/10/06 全球购物
高中生班主任评语
2014/04/25 职场文书
《中国梦我的梦》大学生演讲稿
2014/08/20 职场文书
2014迎国庆标语大全
2014/09/19 职场文书
小学二年级数学教学计划
2015/01/20 职场文书
导游词之湖北武当山
2019/09/23 职场文书