OpenCV-Python learning---1
来源:互联网 发布:竖琴 知乎 编辑:程序博客网 时间:2024/05/26 15:55
1. OpenCV与OpenGL区别
https://www.zhihu.com/question/20212016
一个是让机器识别东西的,OpenCV是给电脑做眼睛的。
一个是让机器计算出更好画面的,OpenGL用在游戏渲染方面很多。
OpenCV(Open Source Computer Vision Library)是一个基于(开源)发行的跨平台计算机视觉库,OpenGL(全写Open Graphics Library)是个定义了一个跨编程语言、跨平台的编程接口规格的专业的图形程序接口。
2. OpenCV安装
(1)官网下载 或者https://sourceforge.net/projects/opencvlibrary/files/,安装后如下位置(...\opencv\build\python\2.7\x64
)的pyd拷贝到Python27/lib/site-packeges
中,本方式只支持python27。注意版本和xx位的对应。
(2)pip install opencv-python
,或者使用whl文件
3. 读取、保存图片
import cv2img=cv2.imread("../../source/gril.jpg",cv2.IMREAD_COLOR)#彩图,IMREAD_GRAYSCALE灰度图cv2.namedWindow("测试",cv2.WINDOW_NORMAL)#图像随窗口伸缩,默认WINDOW_AUTOSIZEcv2.imshow("测试",img)#名字“测试”区分不同的窗口s=cv2.waitKey(0)# waitKey(x);# 等待x ms(如果x=0,那么无限等待下去),如果在此期间有按键按下,则立即结束并返回按下按键的ASCII码,否则返回-1print(s)if s==27:#esc键 cv2.imwrite('../../source/gril_copy.jpg',img)#保存图片 print("图片已保存")cv2.destroyAllWindows()
4 . matplotlib中显示图片
import cv2import matplotlib.pyplot as pltimg=cv2.imread("../../source/gril.jpg",cv2.IMREAD_COLOR)#彩图,IMREAD_GRAYSCALE灰度图plt.imshow(img,interpolation='bicubic')plt.xticks([])plt.yticks([])plt.show()#opencv以BGR加载图片,matplotlib以RGB模式。
原图见头像,显示如下。
修改代码如下:
import cv2import matplotlib.pyplot as pltimg=cv2.imread("../../source/gril.jpg",cv2.IMREAD_COLOR)#彩图,IMREAD_GRAYSCALE灰度图b,g,r=cv2.split(img)img2=cv2.merge([r,g,b])plt.imshow(img2)plt.xticks([]),plt.yticks([]) # 不显示坐标轴plt.show()
显示见原图。
阅读全文
0 0
- OpenCV-Python learning---1
- OpenCV-Python learning---0
- OpenCV-Python learning---2
- OpenCV-Python learning---3
- OpenCV-Python learning---4
- OpenCV-Python learning---5
- learning OpenCV(1)
- learning opencv 4-1
- Learning opencv 1 imageMask
- Learning OpenCV第十一章(1)
- Learning OpenCV
- learning opencv
- learning Opencv
- Learning python 系列1
- learning python(1)
- Learning Python (1)
- Learning Opencv第三章(1)
- Learning OpenCV 2-1 显示图像
- C++之中的友元函数的作用
- Shopping
- 窗口分析函数
- 参数—传值调用
- 远程使用x-manager中Xstart工具报缺少xterm包错误
- OpenCV-Python learning---1
- JavaFX应用程序的基本骨架
- Jackson介绍
- 蓝桥杯 算法提高 三进制数位和
- Android函数响应式编程——RxJava不完整定义回调,更灵动的观察者写法
- Android脚本envsetup.sh逐行分析
- VS code中godoc命令不可用问题解决
- Photon Server游戏服务器从零开始学习(五) NHibernate 对数据库的操作
- glassfish基本使用