python图像处理入门(一)


Posted in Python onApril 04, 2019

一、环境

由于这学期开了图像处理这门课,所以想着在各种实验开始之前自己先动手试一下

图像处理那首先要配个环境嘛,配环境真的是我长久以来的噩梦了,每次都会出现奇奇怪怪的问题,首先上网查找了一下,opencv这个库还是用的比较多的,如果想要使用C++来做图像处理的话,那么使用visual studio搭配opencv是比较常见的,所以就照着网上的教程下载好了vs之后下载了opencv的包,将包导入指定的路径也设置好环境变量之后发现还是不行,怎么办呢?这个时候想到那还不如自己直接用python,一来现在python使用的越来越多,二来方法也多,语法什么的也比较简单,正好自己电脑上之前配置了pycharm,这样省了很多事

本来以为直接在pycharm里面的settings里面导入opencv的包就可以了,可是查了一下发现没有,这里还是要自己从网上下载然后导入,还是好麻烦呀,从网上查到可以从anaconda里面下载,比较方便,可是一个问题是我的pycharm的python解释器是用的自己下载的,而没用anaconda自带的解释器,这样下载下来可能也用不了,机智的我想到把原来的解释器卸载掉然后使用anaconda带来的解释器不就得了,不巧的是卸载的时候脑子一热把anaconda也卸载了……(这可怎么办好)无奈下只好重新下载了anaconda

anaconda有两种下载途径,第一种是从官网下载,第二种是使用清华镜像,清华镜像要快一点,但是一个问题是pycharm使用的时候会报错,这个时候要修改一个.condarc文件,后来又出了各种问题我就想那还是用国外的下载吧,慢就慢一点呗,意外的是其实也没有很慢,这个时候又出了一个错误,这时候重新使用国外下载的版本会报另外一个错误,有些博客提到使用conda update 或者conda update --reset这两条指令,由于前面修改了.condarc文件,所以并没有解决我的问题。可以采用两种方法解决,第一种是改回原来的样子,但是如果像我一样忘了原来的文件怎么办,就可以用第二种方法,将这个文件删掉,再重新执行conda update,成功了。

接下来是修改pycharm中的解释器,需要提到的是不仅要修改interpreter,还需要在pycharm的Run按钮旁边的这个位置

python图像处理入门(一)

我这里对应到cvTest2的下拉框,找到Edit Configuration,修改其中使用的解释器,不然的话由于原来的python解释器和现在的anaconda解释器不同,仍然会提示路径错误,找不到python

就在刚刚可以在pycharm中运行cv且不报错的时候,突然发现anaconda自带了一个神奇的小东西,它的名字叫做spyder,这个小可爱如果早点出现的话,可省了我好多麻烦

Spyder是什么呢?

python图像处理入门(一)

嗯这是一个看着很让人喜欢的python编译器,界面大概是这样的

python图像处理入门(一)

简洁又可爱是不是?更好的是在这个环境里,anaconda下载的库可以直接使用,我的cv使用的第一个成功 的例子就是在Spyder运行成功的,对它的好感又多了一分。

二、实例——读取一个图片

opencv这个库提供了很多有关图像处理的方法,在这里我们首先执行一个可以读取图片的程序:

import cv2 as cv
 
# 读入图片文件
src = cv.imread('E:\\360MoveData\\Users\\Administrator\\Desktop\\things2_0\\flower.jpg')
# 创建一个名字加 “ input image ” 的窗口,
# 窗口可以根据图片大小自动调整
cv.namedWindow('input image', cv.WINDOW_AUTOSIZE)
# 在窗口显示图片
cv.imshow('input image', src)
 
# 等待用户操作
cv.waitKey(0)
# 释放所有窗口
cv.destroyAllWindows()

imread这个方法提供了读取数据的方法,下面的nameWindow方法根据其名字就可以得知是对读取图片之后弹出的窗口做设置的,具体可看代码中注释,接下来我们看一下执行出来的效果

python图像处理入门(一)

哈,读取出来的图片和保存的原图是一样的,这是我要学习图像处理的第一步,那么下一步就要对这个图片做一些改动,这部分放在下一篇博客再讲

以上所述是小编给大家介绍的python图像处理入门详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
讲解Python中if语句的嵌套用法
May 14 Python
分享python数据统计的一些小技巧
Jul 21 Python
python 2.6.6升级到python 2.7.x版本的方法
Oct 09 Python
Windows下安装python MySQLdb遇到的问题及解决方法
Mar 16 Python
Python3导入自定义模块的三种方法详解
Apr 13 Python
Python实现模拟浏览器请求及会话保持操作示例
Jul 30 Python
在Django中URL正则表达式匹配的方法
Dec 20 Python
使用Django搭建web服务器的例子(最最正确的方式)
Aug 29 Python
python编写计算器功能
Oct 25 Python
Python Pandas 转换unix时间戳方式
Dec 07 Python
详解python 降级到3.6终极解决方案
Feb 06 Python
opencv+python实现均值滤波
Feb 19 Python
python爬虫简单的添加代理进行访问的实现代码
Apr 04 #Python
Django项目中添加ldap登陆认证功能的实现
Apr 04 #Python
使用 Python 玩转 GitHub 的贡献板(推荐)
Apr 04 #Python
python中yield的用法详解——最简单,最清晰的解释
Apr 04 #Python
详解python项目实战:模拟登陆CSDN
Apr 04 #Python
Python实现字符串匹配的KMP算法
Apr 04 #Python
Python GUI编程完整示例
Apr 04 #Python
You might like
利用discuz自带通行证整合dedecms的方法以及文件下载
2007/03/06 PHP
php的access操作类
2008/04/09 PHP
PHP Parse Error: syntax error, unexpected $end 错误的解决办法
2012/06/05 PHP
PHP微信开发之文本自动回复
2016/06/23 PHP
Javascript引用指针使用介绍
2012/11/07 Javascript
获取元素距离浏览器周边的位置的方法getBoundingClientRect
2013/04/17 Javascript
js对象与打印对象分析比较
2013/04/23 Javascript
使用javaScript动态加载Js文件和Css文件
2015/10/24 Javascript
win7下安装配置node.js+express开发环境
2015/12/06 Javascript
基于jQuery ligerUI实现分页样式
2016/09/18 Javascript
用jQuery的AJax实现异步访问、异步加载
2016/11/02 Javascript
JavaScript基于自定义函数判断变量类型的实现方法
2016/11/23 Javascript
微信小程序 地图map详解及简单实例
2017/01/10 Javascript
JavaScript实现按键精灵的原理分析
2017/02/21 Javascript
Node.js设置CORS跨域请求中多域名白名单的方法
2017/03/28 Javascript
JavaScript+Html5实现按钮复制文字到剪切板功能(手机网页兼容)
2017/03/30 Javascript
基于JS代码实现简单易用的倒计时 x 天 x 时 x 分 x 秒效果
2017/07/13 Javascript
详解如何去除vue项目中的#——History模式
2017/10/13 Javascript
详解在React项目中安装并使用Less(用法总结)
2019/03/18 Javascript
简单了解TypeScript中如何继承 Error 类
2019/06/21 Javascript
Vue 子组件与数据传递问题及注意事项
2019/07/11 Javascript
vue实现循环滚动列表
2020/06/30 Javascript
python利用hook技术破解https的实例代码
2013/03/25 Python
深入浅析Python中的迭代器
2019/06/04 Python
关于Python作用域自学总结
2019/06/10 Python
实例详解Python装饰器与闭包
2019/07/29 Python
python统计字符的个数代码实例
2020/02/07 Python
Python使用monkey.patch_all()解决协程阻塞问题
2020/04/15 Python
python获取整个网页源码的方法
2020/08/03 Python
Python list和str互转的实现示例
2020/11/16 Python
一款利用html5和css3实现的3D立方体旋转效果教程
2016/04/26 HTML / CSS
帮一个朋友写的求职信
2014/08/09 职场文书
党的群众路线对照检查材料范文
2014/09/24 职场文书
党员学习群众路线心得体会
2014/11/04 职场文书
怀孕辞职信怎么写
2015/02/28 职场文书
红灯733-1型14管5波段半导体收音机
2021/04/22 无线电