Python进阶之opencv图片和视频基本读取关闭

opencv

目录

pip 下载


在终端下载

已经修改pip源可直接下载,未修改为下面代码+ -i 镜像网址

代码展示:

python 复制代码
pip install opencv-python==3.4.18.65
pip install opencv-contrib-python==3.4.18.65

图片基本读取关闭


导入前提

图片和视频可以复制粘贴到当前根目录下,这里图片的地址就是:at1.png

读取显示和关闭

  • imread('图片地址')
    读取图片
  • imshow('窗口命名',图片变量)
    图片展示

图片直接print输出为含多个矩阵的矩阵

  • waitKey(数值)
    单位是ms,可以设置图片显示时长

有返回值,点击键盘如空格键,会关闭窗口,不再显示,返回值为键盘对应ASCII的数组,如空格停止返回值为32

  • destroyAllWindows()
    关闭所有窗口

图片属性

  • shape 返回(m,n,r),m高n宽r个通道
  • dtype 返回类型
  • size 返回大小,有色图为mnr,灰度图为m*n

代码展示:

python 复制代码
import cv2
a = cv2.imread('at1.png')
print(a)
cv2.imshow('t1',a)
b = cv2.waitKey(0)
print(b)
cv2.destroyAllWindows()
print(f'shape:{a.shape}')
print(f'dtype:{a.dtype}')
print(f'size:{a.size}')

运行结果:

视频读取显示和关闭


视频读取
  • VideoCapture('图片地址')
    读取视频
  • isOpened()
    判断视频是否打开,返回布尔值
  • read()
    逐帧读取视频

返回两个值,第一个是布尔值,表示是否能读取到,第二个是读取到的图片

  • imshow('窗口命名',图片变量)
    显示图片,同一个命名相同会覆盖
  • waitKey(数值)
    间隔时间显示图片组成播放视频
  • release()
    释放资源
  • destroyAllWindows()
    关闭所有窗口

代码展示:

python 复制代码
v = cv2.VideoCapture('av2.gif')
# 如果视频可以打开播放,如果不能打开,输出错误,退出
if not v.isOpened():
    print('错误')
    exit()
#可以播放进行读取
while True:
    # r为布尔值是否读取到,f为读取到的图片,按顺序读取
    r,f = v.read()
# 如果r为F,not r 为真,跳出循环,结束
    if not r:
        break
    cv2.imshow('video',f)
    #当按空格键时,停止播放,跳出循环
    if cv2.waitKey(100) == 32:
        break
# 释放资源
v.release()
cv2.destroyAllWindows()

运行结果:

相关推荐
StudyWinter1 小时前
【FFmpeg从入门到精通】第四章-FFmpeg转码
ffmpeg·音视频
_一条咸鱼_2 小时前
Python 数据类型之可变与不可变类型详解(十)
人工智能·python·面试
_一条咸鱼_2 小时前
Python 入门之基本运算符(六)
python·深度学习·面试
_一条咸鱼_2 小时前
Python 流程控制之 for 循环(九)
人工智能·python·面试
_一条咸鱼_2 小时前
Python 语法入门之流程控制 if 判断(七)
人工智能·python·面试
_一条咸鱼_2 小时前
Python 流程控制之 while 循环(八)
人工智能·python·面试
HtwHUAT2 小时前
实验四 Java图形界面与事件处理
开发语言·前端·python
Tech Synapse2 小时前
基于Surprise和Flask构建个性化电影推荐系统:从算法到全栈实现
python·算法·flask·协同过滤算法
麦麦大数据2 小时前
vue+flask+CNN电影推荐系统
pytorch·python·cnn·flask·scikit-learn·电影推荐
腾飞开源2 小时前
02_Flask是什么?
python·flask·python web开发·flask快速入门教程·人人都能学·小白看得懂学得会·跟我学编程