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获取系统默认字符编码的方法
Jun 04 Python
Python实现多线程抓取妹子图
Aug 08 Python
Python对列表去重的多种方法(四种方法)
Dec 05 Python
python Flask 装饰器顺序问题解决
Aug 08 Python
Python进程间通信Queue消息队列用法分析
May 22 Python
Django 对象关系映射(ORM)源码详解
Aug 06 Python
Python openpyxl模块原理及用法解析
Jan 19 Python
使用python matplotlib 画图导入到word中如何保证分辨率
Apr 16 Python
解决tensorflow/keras时出现数组维度不匹配问题
Jun 29 Python
python读取pdf格式文档的实现代码
Apr 01 Python
tensorflow+k-means聚类简单实现猫狗图像分类的方法
Apr 28 Python
Python帮你解决手机qq微信内存占用太多问题
Feb 15 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实现简易计算器功能
2020/08/28 PHP
EasyUI的treegrid组件动态加载数据问题的解决办法
2011/12/11 Javascript
JavaScript中常用的运算符小结
2012/01/18 Javascript
精心挑选的12款优秀的基于jQuery的手风琴效果插件和教程
2012/08/22 Javascript
javascript ready和load事件的区别示例介绍
2013/08/30 Javascript
javascript 闭包详解
2015/02/15 Javascript
JavaScript获得页面base标签中url的方法
2015/04/03 Javascript
js仿QQ中对联系人向左滑动、滑出删除按钮的操作
2016/04/07 Javascript
JavaScript中windows.open()、windows.close()方法详解
2016/07/28 Javascript
JQuery和HTML5 Canvas实现弹幕效果
2017/01/04 Javascript
JavaScript通过改变文字透明度实现的文字闪烁效果实例
2017/04/27 Javascript
JQuery.dataTables表格插件添加跳转到指定页
2017/06/09 jQuery
Vue自定义指令详解
2017/07/28 Javascript
nodejs对express中next函数的一些理解
2017/09/08 NodeJs
vue axios 简单封装以及思考
2018/10/09 Javascript
Vue使用NPM方式搭建项目
2018/10/25 Javascript
在Vue.js中使用TypeScript的方法
2020/03/19 Javascript
JavaScript随机数的组合问题案例分析
2020/05/16 Javascript
Vant+postcss-pxtorem 实现浏览器适配功能
2021/02/05 Javascript
Python THREADING模块中的JOIN()方法深入理解
2015/02/18 Python
Python编程给numpy矩阵添加一列方法示例
2017/12/04 Python
Python及Django框架生成二维码的方法分析
2018/01/31 Python
python pands实现execl转csv 并修改csv指定列的方法
2018/12/12 Python
python实战串口助手_解决8串口多个发送的问题
2019/06/12 Python
python 设置输出图像的像素大小方法
2019/07/04 Python
python中matplotlib实现随鼠标滑动自动标注代码
2020/04/23 Python
Python常用类型转换实现代码实例
2020/07/28 Python
python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警
2021/01/30 Python
Python字节单位转换(将字节转换为K M G T)
2021/03/02 Python
无需JS和jQuery代码实现CSS3鼠标浮动放大图片
2016/11/21 HTML / CSS
英国高端食品和葡萄酒超市:Waitrose
2016/08/23 全球购物
COACH德国官方网站:纽约现代奢侈品牌,1941年
2018/06/09 全球购物
关于运动会的广播稿50字
2014/10/17 职场文书
幼儿园教师求职信
2015/03/20 职场文书
《静夜思》教学反思
2016/02/17 职场文书
Win10服务主机占用内存怎么办?Win10服务主机进程占用大量内存解决方法
2022/09/23 数码科技