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编程-将Python程序转化为可执行程序[整理]
Apr 09 Python
用python写asp详细讲解
Dec 16 Python
Python实现竖排打印传单手机号码易撕条
Mar 16 Python
Python中用Spark模块的使用教程
Apr 13 Python
python中zip和unzip数据的方法
May 27 Python
利用Python抓取行政区划码的方法
Nov 28 Python
python验证码识别教程之滑动验证码
Jun 04 Python
Python面向对象之类的内置attr属性示例
Dec 14 Python
Python基于Tkinter模块实现的弹球小游戏
Dec 27 Python
Python3 pip3 list 出现 DEPRECATION 警告的解决方法
Feb 16 Python
python openssl模块安装及用法
Dec 06 Python
Python中的datetime包与time包包和模块详情
Feb 28 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
php中的注释、变量、数组、常量、函数应用介绍
2012/11/16 PHP
全面解读PHP的Yii框架中的日志功能
2016/03/17 PHP
PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案
2017/10/17 PHP
漂亮的widgets,支持换肤和后期开发新皮肤(2007-4-27已更新1.7alpha)
2007/04/27 Javascript
轻松创建nodejs服务器(1):一个简单nodejs服务器例子
2014/12/18 NodeJs
js实现鼠标经过时图片滚动停止的方法
2015/02/16 Javascript
javascript与css3动画结合使用小结
2015/03/11 Javascript
详谈LABJS按需动态加载js文件
2015/05/07 Javascript
js+cookies实现悬浮购物车的方法
2015/05/25 Javascript
jQuery实现带滚动导航效果的全屏滚动相册实例
2015/06/19 Javascript
javascript日期格式化方法汇总
2015/10/04 Javascript
学习使用grunt来打包JavaScript和CSS程序的教程
2016/01/04 Javascript
实例讲解使用原生JavaScript处理AJAX请求的方法
2016/05/10 Javascript
JS动态给对象添加属性和值的实现方法
2016/10/21 Javascript
Bootstrap和Java分页实例第一篇
2016/12/23 Javascript
vue 弹框产生的滚动穿透问题的解决
2018/09/21 Javascript
javascrit中undefined和null的区别详解
2019/04/07 Javascript
详解vue 图片上传功能
2019/04/30 Javascript
vue中使用v-model完成组件间的通信
2019/08/22 Javascript
微信小程序 textarea 层级过高问题简单解决方案
2019/10/14 Javascript
Vue页面刷新记住页面状态的实现
2019/12/27 Javascript
[02:42]完美大师赛主赛事淘汰赛第三日观众采访
2017/11/25 DOTA
用Python的Tornado框架结合memcached页面改善博客性能
2015/04/24 Python
浅析Python中将单词首字母大写的capitalize()方法
2015/05/18 Python
TensorFlow获取加载模型中的全部张量名称代码
2020/02/11 Python
new_zeros() pytorch版本的转换方式
2020/02/18 Python
Html5嵌入钉钉的实现示例
2020/06/04 HTML / CSS
Python中如何定义一个函数
2016/09/06 面试题
2014年党员公开承诺书范文
2014/03/28 职场文书
2015年度个人业务工作总结
2015/04/27 职场文书
2015年检验员工作总结范文
2015/04/30 职场文书
2015年节能减排工作总结
2015/05/14 职场文书
幼儿园大班开学寄语(2015秋季)
2015/05/27 职场文书
土木工程毕业答辩开场白
2015/05/29 职场文书
2019年年中工作总结讲话稿模板
2019/03/25 职场文书
详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)
2021/07/01 HTML / CSS