Python-OpenCV 笔记1 – 图像与视频的读取、显示、保存


一、图片的读取、显示、保存

1、图片读取
原型: imread (filename, flags=None)
参数:
filename:图片的文件名
flag:加载图像的颜色类型标志

  • cv2.IMREAD_UNCHANGED( -1): 原始图像
  • cv2.IMREAD_GRAYSCALE(0):灰度图
  • cv2.IMREAD_COLOR(1): BGR彩色图,默认值
import cv2# 相对路径,读取当前路径下的图片
img = cv2.imread('1.jpg')# 绝对路径,读取绝对路径下的图片,灰度图模式
img = cv2.imread("E:\pic.jpg", 0)

2、图片显示
原型: imshow (winname, mat)
参数:
winname:窗口名
mat:要显示的图像

import cv2# 在指定窗口中显示读取的图片
cv2.imshow("show", img)# 等待,不然会一闪而过
cv2.waitKey(0)# 释放所有窗口
cv2.destroyAllWindows()

3、创建窗口
原型: namedWindow(winname, flags=None)
参数:
winname:窗口名
flags:窗口的显示模式

  • cv2.WINDOW_NORMAL(0):窗口大小可手动调
  • cv2.WINDOW_AUTOSIZE(1):窗口大小自动缩放适应图像
import cv2# 创建可手动调大小的窗口
cv2.namedWindow("window", 0)

4、图片保存
原型: imwrite (filename, img, params=None)
参数:
filename:保存图像的文件名
img:要保存的图像
params:保存图像特定格式的参数。对于JPEG,其表示的是图像的质量,用0 - 100的整数表示,默认95;对于png ,表示的是压缩级别,默认为3。

import cv2# 相对路径保存图像
cv2.imwrite("1.jpg", img)
# 绝对路径保存图像
cv2.imwrite("E:\1.jpg", img)

二、视频的操作

1、视频打开与显示

import cv2
# 创建视频类对象,0表示打开摄像头的编号
cap = cv2.VideoCapture(0)
# 打开本地视频
#cap = cv2.VideoCapture("E:\test.avi")# 检测视频是否打开成功
while cap.isOpened():# 读取视频帧,ret标志读取的结果,frame为读取到的视频帧图像ret , frame = cap.read()# 把图像转为灰度图gray = cv2.cvtColor(frame , cv2.COLOR_BGR2GRAY)# 显示图片cv2.imshow('frame',gray)# 按q键退出if cv2.waitKey(1) &0xFF ==ord('q'): break# 释放资源
cap.release()
cv2.destroyAllWindows()

2、视频保存

import cv2cap = cv2.VideoCapture(0)# 视频保存的格式
fourcc = cv2.VideoWriter_fourcc(*'XVID')# 创建视频保存的对象
out = cv2.VideoWriter('output.avi', fourcc, 20.0, (640,480))
while(cap.isOpened()):ret, frame = cap.read()# 判断是否读取成功if ret==True:frame = cv2.flip(frame,0)# 保存视频帧out.write(frame)cv2.imshow('frame', frame)if cv2.waitKey(1) & 0xFF == ord('q'):breakelse:break# 释放资源
cap.release()
out.release()
cv2.destroyAllWindows()

Python-OpenCV 笔记1 -- 图像与视频的读取、显示、保存相关推荐

  1. [OpenCV学习笔记3][图像的加载+修改+显示+保存]

    正式进入OpenCV学习了,前面开始的都是一些环境搭建和准备工作,对一些数据结构的认识主要是Mat类的认识: [1.学习目标] 图像的加载:imread() 图像的修改:cvtColor() 图像的显 ...

  2. python opencv —— io(帧、图像、视频的读取与保存)

    0. VideoCapture VideoCapture:构造函数: 常见成员函数: open:打开视频文件,或者捕获视频设备,该函数会首先调用 release() 函数以关闭已打开的文件或设备: P ...

  3. python+opencv打开大华摄像机视频

    学习笔记 python+opencv打开大华摄像机视频 python+opencv打开大华摄像机视频 import cv2 # 大华摄像机的视频采集语句,subtype=1,辅码流.0,主码流. ca ...

  4. python+OpenCV笔记(二十四):Shi-Tomasi角点检测

    Shi-Tomasi角点检测 原理 python+OpenCV笔记(二十二):角点检测原理(Harris角点检测原理.Shi-Tomasi角点检测原理)https://blog.csdn.net/qq ...

  5. Python+OpenCV+pyQt5录制双目摄像头视频

    #Python+OpenCV+pyQt5录制双目摄像头视频 ##起因 说起来录制视频,我们可能有很多的软件,但是比较坑的是,好像很少的软件支持能够同时录制两个摄像头的视频,于是我们用python自己写 ...

  6. python+OpenCv笔记(十三):边缘检测——Sobel检测算子

    Sobel检测算子 概述: Sobel边缘检测算法比较简单,实际应用中效率比canny边缘检测效率要高,但是边缘不如Canny检测的准确,但是很多实际应用的场合,sobel边缘却是首选,Sobel算子 ...

  7. 用python怎么样实现图像二值化_使用Python+OpenCV如何实现图像二值化

    使用Python+OpenCV如何实现图像二值化 发布时间:2020-10-26 14:15:52 来源:亿速云 阅读:77 作者:蛋片鸡 这篇文章运用简单易懂的例子给大家介绍使用Python+Ope ...

  8. Python+OpenCV:立体图像深度图(Depth Map from Stereo Images)

    Python+OpenCV:立体图像深度图(Depth Map from Stereo Images) 理论 If we have two images of same scene, we can g ...

  9. Python+OpenCV:交互式图像前景提取(Interactive Foreground Extraction using GrabCut Algorithm)

    Python+OpenCV:交互式图像前景提取(Interactive Foreground Extraction using GrabCut Algorithm) ################# ...

最新文章

  1. 用C语言解“12-24小时制”题
  2. 华为linux笔记本开售,华为 MateBook D Linux 版明天开售 一种价格两种版本
  3. java和打印机通信,通过Windows驱动程序与热敏打印机进行双向通信
  4. 【arduino】RFID门禁刷卡模块RFID-RC522
  5. BZOJ3569: DZY Loves Chinese II(线性基构造)
  6. Mckinsey insights 2
  7. QTP的Action之间传递参数
  8. 计算机网络网关作用,默认网关的作用
  9. android悬浮窗代码布局,三行代码实现Android应用内悬浮窗,无需一切权限,适配所有ROM和厂商...
  10. 如何学习开源项目及Ceph的浅析
  11. Linux脚本验证的常见方法,linux shell常用循环与判断语句(for,while,until,if)使用方法...
  12. C++二维vector初始化
  13. 如何用python完成评分功能呢_如何在python中创建一个高效快速的评分系统?
  14. 你了解东大六维空间嘛?
  15. 离线浏览工具webdup 可下载网站页面
  16. 医院门诊透视的生活万花筒
  17. 全网最优质的电子书资源下载网站,每一个都让你爽翻天!
  18. 环境问题-无外接显示屏(虚拟显示屏)远程控制Ubuntu
  19. CIO挂帅绩效考核 初战告捷秘诀何在?
  20. 全国计算机软件测试工程师,全国计算机等级考试软件测试工程师.doc

热门文章

  1. SQLSERVER 和 ORACLE 查询数据库文件大小
  2. C#基础 字符串读取/写入文本文件 代码示例
  3. [bzoj4825]:[Hnoi2017]单旋
  4. SQL Server资源管理之内存管理篇(上)
  5. 符合.net准则的事件
  6. Gooogle Test中的TEST()宏代码分析
  7. Linux 工程向 Windows 平台迁移的一些小小 tips
  8. eclipse版本详解以及下载安装步骤及启动eclispe报错整理
  9. Python 字典dict操作定义
  10. python字符串,列表,字典的常用方法