opencv-学习笔记(1)常用函数和方法。
opencv-学习笔记(1)常用函数和方法。
cv2.imread(filename,falg)
filename是文件名字
flag是读入的方式
cv2.MREAD_UNCHANGED :不进行转化,比如保存为了16位的图片,读取出来仍然为16位。
cv2.IMREAD_GRAYSCALE :进行转化为灰度图,比如保存为了16位的图片,读取出来为8位,类型为CV_8UC1。
cv2.IMREAD_COLOR :进行转化为三通道图像。
cv2.IMREAD_ANYDEPTH :如果图像深度为16位则读出为16位,32位则读出为32位,其余的转化为8位。
实际应用中,falg=0就是灰度图像,falg=1就是三通道图。这种方便
import cv2
import numpy as np
img=cv2.imread('1.jpg',0)//读入灰度图像
cv2.imshow('image',img)
cv2.waitKey(0)
看看输出
flag=0 flag=1

cv2.imshow(‘窗口名字’,图像对象)
但是光光这个不够
还要下面加一句cv2.waitKey(0)
这个函数顾名思义就是等待键盘输入,0就是不停等待,5000就是5s内,函数会返回按下的ascii码
cv2. destroyAllWindows(“窗口名”)
可以关闭任何窗口
不加参数则是关闭所有窗口
cv2.namedWindow('新建窗口名',flag)
创建一个窗口名叫image
flag=cv2.WINDOW_AUTOSIZE时候就自动适应大小这是默认的
flag=cv2.WINDOW_NORMAL就是图片自适应窗口大小
# -*- coding: utf-8 -*-
"""
Created on Thu May 31 17:32:11 2018 @author: Administrator
""" import cv2
import numpy as np
cv2.namedWindow('image',cv2.WINDOW_NORMAL)
img=cv2.imread('1.jpg',1)
cv2.imshow('image',img)
cv2.waitKey(0)
现在就可以图片自适应窗口了
cv2.imwrite('图像名字',图像对象)
用来保存图片,效果如下

cv.waitKey()
这个函数是有返回值的,我们来看看则么用
import cv2
import numpy as np img=cv2.imread('1.jpg',1)
cv2.imshow('image',img)
k=cv2.waitKey(0)&0xFF#64位系统必须添加
if k==27: #ESC退出不保存
cv2.destroyAllWindows()
elif k==ord('s'): #s键保存
cv2.imwrite('fuck2.jpg',img)
cv2.destroyAllWindows()
matplotlib
这个py库的使用是
from matplotlib import pyplot as plt
import cv2
import numpy as np
from matplotlib import pyplot as plt img=cv2.imread('1.jpg',1)
cv2.imshow('image',img)
cv2.waitKey(0)
plt.imshow(img,cmap='gray',interpolation='bicubic')
plt.xticks([]),plt.yticks([])
plt.show()
这个代码分别用opencv和matplotlib显示了图像可以看出来都相反了?
因为

opencv用摄像头捕捉视频
# -*- coding: utf-8 -*-
"""
Created on Thu May 31 17:32:11 2018 @author: Administrator
""" import numpy as np
import cv2 #打开摄像头
cap=cv2.VideoCapture(0) while(True):
#一帧一帧捕获视频
ret,frame=cap.read()
cv2.imshow("frame",frame)
#q键退出
if cv2.waitKey(1)&0xFF==ord('q'):
break;
cap.release()
cv2.destroyAllWindows()
效果如下

opencv-学习笔记(1)常用函数和方法。的更多相关文章
- OpenCV 学习笔记03 findContours函数
opencv-python 4.0.1 1 函数释义 词义:发现轮廓! 从二进制图像中查找轮廓(Finds contours in a binary image):轮廓是形状分析和物体检测和识别的 ...
- Python学习笔记之常用函数及说明
Python学习笔记之常用函数及说明 俗话说"好记性不如烂笔头",老祖宗们几千年总结出来的东西还是有些道理的,所以,常用的东西也要记下来,不记不知道,一记吓一跳,乖乖,函数咋这么多 ...
- numpy学习笔记 - numpy常用函数、向量化操作及基本数学统计方法
# -*- coding: utf-8 -*-"""主要记录代码,相关说明采用注释形势,供日常总结.查阅使用,不定时更新.Created on Fri Aug 24 19 ...
- opencv学习笔记——cv::CommandLineParser函数详解
命令行解析类CommandLineParser 该类的作用主要用于命令行的解析,也就是分解命令行的作用.以前版本没这个类时,如果要运行带参数的.exe,必须在命令行中输入文件路径以及各种参数,并且输入 ...
- opencv学习笔记之cvSobel 函数解析
首先,我们来开一下计算机是如何检测边缘的.以灰度图像为例,它的理论基础是这样的,如果出现一个边缘,那么图像的灰度就会有一定的变化,为了方便假设由黑渐变为白代表一个边界,那么对其灰度分析,在边缘的灰度函 ...
- OpenCV学习笔记:resize函数改变图像的大小
OpenCV提供了resize函数来改变图像的大小,函数原型如下: , , int interpolation=INTER_LINEAR ); 参数解释: src:输入,原图像,即待改变大小的图像: ...
- OpenCV 学习笔记03 threshold函数
opencv-python 4.0.1 简介:该函数是对数组中的每一个元素(each array element)应用固定级别阈值(Applies a fixed-level threshold) ...
- opencv学习笔记——cv::mean()函数详解
opencv中封装了一个专门用于求解cv::Mat均值的函数,即cv::mean(&cv::Mat),该函数会得到Mat中各个通道的均值,若要获取指定通道的均值,做进一步解析即可. 具体使用方 ...
- 【opencv学习笔记】SetImageROI函数设置ROI区域的作用及用法
虽然先前知道ROI区域是感兴趣区域,但是真正看到调用了OpenCV的cvSetImageROI函数时,并不知道它的作用,所以还是单独写了一段代码对这个函数进行探究. OpenCVchm文档中对cv ...
随机推荐
- MyBatis之properties配置
这些属性都是可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素来传递.例如: <properties resource=" ...
- Swift_函数
Swift_函数 点击查看源码 定义和调用函数 //定义和调用函数 func testDefiningAndCallingFunctions() { func sayHello(_ personNam ...
- java基础知识(初学)
(小记) 文本文档方式可以下载notepad 在设置-新建-修改默认语言为java 编码为ANSI! java关键字特点:1.完全小写字母.如:public. java标识符:方法的名称,类的名称,变 ...
- python drf+xadmin+react+dva+react-native+sentry+nginx 搭建前后端分离的博客完整平台
前言: 经过差不多半年的开发,搭建从前端到服务器,实现了前后端分离的一个集PC端.移动端的多端应用,实属不易,今天得空,好好写篇文章,记录这些天的成果.同时也做个分享. 演示网站地址: http:// ...
- Spring + Mybatis应该如何配置
### 1. MYBATIS简介 MYBATIS是持久层框架,大大的简化了持久层开发. 当使用MYBATIS框架时,开发人员不必再编写繁琐的JDBC代码,只需要定义好每个功能对应的抽象方法与需要执行的 ...
- Linux每日一命令:【00】总纲
Linux每日一命令更新频率为每周5篇. 文章结构如下: 简介 语法 选项 参数 常用实例 实用技巧(可选) 参考文档 文章目录如下: 2018-02-19 20:15 -- Linux每日一命令:[ ...
- django模板的变量,标签,过滤器和自定义过滤器,注释
模板的作用是计算并输出: {{ 变量}} 当模版引擎遇到点如book.title,会按照下列顺序解析: 1.字典book['title'] 2.先属性后方法,将book当作对象,查找属性title,如 ...
- PC环境搭建——虚拟机配置双网卡
Vmware虚拟机三种网络模式详解 TCP/IP协议四层模型: 应用层 传输层 网络层 物理接口 桥接模式时,主机和虚拟机在同一个网段,之间可以相互访问 NAT模式时,主机和虚拟机不在同一网段,之间通 ...
- 优步UBER司机全国各地奖励政策汇总 (2月8日-2月14日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- 北京Uber优步司机奖励政策(3月30日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...