当前位置: 首页 > news >正文

网站推广找扬州网站建设 开元

网站推广找,扬州网站建设 开元,班级优化大师的利和弊,企业培训网站模板1. 学习目标 学习 OpenCV 的视频的编码格式 cv.VideoWriter_fourcc;学会使用 OpenCV 的视频读取函数 cv.VideoCapture;学会使用 OpenCV 的视频保存函数 cv.VideoWriter。 2. cv.VideoWriter_fourcc()常见的编码参数 2.1 参数说明 参数说明cv.VideoWr…

1. 学习目标

  1. 学习 OpenCV 的视频的编码格式 cv.VideoWriter_fourcc;
  2. 学会使用 OpenCV 的视频读取函数 cv.VideoCapture;
  3. 学会使用 OpenCV 的视频保存函数 cv.VideoWriter。

2. cv.VideoWriter_fourcc()常见的编码参数

2.1 参数说明

参数说明
cv.VideoWriter_fourcc(‘M’,‘P’,‘4’,‘V’)MPEG-4编码 .mp4 可指定结果视频的大小
cv.VideoWriter_fourcc(‘X’,‘2’,‘6’,‘4’)MPEG-4编码 .mp4 可指定结果视频的大小
cv.VideoWriter_fourcc(‘I’, ‘4’, ‘2’, ‘0’)该参数是YUV编码类型,文件名后缀为.avi 广泛兼容,但会产生大文件
cv.VideoWriter_fourcc(‘P’, ‘I’, ‘M’, ‘I’)该参数是MPEG-1编码类型,文件名后缀为.avi
cv.VideoWriter_fourcc(‘X’, ‘V’, ‘I’, ‘D’)该参数是MPEG-4编码类型,文件名后缀为.avi,可指定结果视频的大小
cv.VideoWriter_fourcc(‘T’, ‘H’, ‘E’, ‘O’)该参数是Ogg Vorbis,文件名后缀为.ogv
cv.VideoWriter_fourcc(‘F’, ‘L’, ‘V’, ‘1’)该参数是Flash视频,文件名后缀为.flv

2.2 使用

  1. 以写mp4视频为例,以下为等价写法:
fourcc = cv.VideoWriter_fourcc('m', 'p', '4', 'v')
fourcc = cv.VideoWriter_fourcc('M', 'P', '4', 'V')
fourcc = cv.VideoWriter_fourcc(*'MP4V')
fourcc = cv.VideoWriter_fourcc(*'mp4v')

3. 视频读取

3.1 cv.VideoCapture() 函数说明

cv.VideoCapture(filename[, apiPreference[, params]]) → <VideoCapture object>cv.VideoCapture(index[, apiPreference[, params]]) → <VideoCapture object>

3.2 参数说明

参数说明
filename表示读取的视频文件的路径,包括扩展名。
index表示摄像头的 ID 编号,0 表示默认后端打开默认摄像机。
apiPreference表示决定使用那个第三方库读取视频。

4. 视频保存

4.1 cv.VideoWriter() 函数说明

cv.VideoWriter(filename, fourcc, fps, frameSize[, isColor]) → <VideoWriter object>

4.2 参数说明

参数说明
filename表示保存的视频文件的路径,包括扩展名。
fourcc表示用于压缩帧的编码器/解码器的字符代码。
fps表示视频流的帧速率。
frameSize表示元组 (w, h),视频帧的宽度和高度。
isColor表示是否彩色图像。

5. cv.VideoCapture 和 cv.VideoWriter 的成员函数

函数名说明
cv.VideoCapture.isOpened()表示检查视频捕获是否初始化成功。
cv.VideoCapture.read()表示捕获视频文件、视频流或捕获的视频设备。
cv.VideoCapture.get(propId)表示获取 VideoCapture 类对象的属性。
cv.VideoCapture.set(propId, value)表示设置 VideoCapture 类对象的属性。
cv.VideoCapture.release()表示关闭视频文件或设备,释放对象。
cv.VideoWriter.fourcc(c1, c2, c3, c4[, ])表示构造编码器/解码器的fourcc代码。
cv.VideoWriter.write(image[, ])表示写入下一帧视频。
cv.VideoWriter.release()表示关闭视频写入,释放对象。

6. 实例将 .avi 转 .mp4

6.1 实例代码

import cv2 as cv
import imageio# 读取视频,将视频按照帧导出图片
def get_video_images(video_path):cap = cv.VideoCapture(video_path)images = []while cap.isOpened():ret, frame = cap.read()  # 读取下一帧视频图像if ret is True:cv.imshow("frame", frame)images.append(frame)key = cv.waitKey(24)if key == ord('q'):breakelse:breakcap.release()cv.destroyAllWindows()return images# 转MP4
def create_mp4(filename, fps, images):h,w,c = images[0].shapefourcc = cv.VideoWriter_fourcc(*'mp4v')writer = cv.VideoWriter(filename, fourcc, fps, (w,h))for frame in images:writer.write(frame)writer.release()if __name__ == "__main__":imgs = get_video_images('./images/Megamind.avi')create_mp4('./images/Megamind.mp4', 24, imgs)

6.2 转换结果使用 gif 展示

输入图片说明

7. 总结

  1. 视频写入类VideoWriter的参数frameSize是元组 (w, h),即视频帧的宽度和高度,而OpenCV图像的形状是 (h, w),注意二者的顺序相反;
  2. write 写入图片的宽高必须保持一直;
  3. 使用摄像头时,index=0 表示默认后端打开默认摄像机,例如笔记本内置摄像头。
http://www.yayakq.cn/news/991453/

相关文章:

  • 商务礼品网站模板广告投放报价
  • 做网站开发挣钱吗高端网站建设磐石网络好
  • 单页面网站好优化吗api网站模板
  • 网站建站教程企业网站建设818gx
  • 如何在12366网站上做实名认证页面设计尺寸
  • 长治建立公司网站的步骤传奇 网页游戏排行榜
  • 铁岭做网站公司哪家好苏州 营销型网站 高端网站
  • 做摄影和后期的兼职网站公司名称及网址
  • 深圳中小企业vi设计天津如何做seo优化服务
  • 底湘西网站制作网软志成免费部队网站源码下载
  • 福田设计网站唐尧文化 网站建设工作总结
  • 手机商城+手机网站建设多少钱值得浏览的国外网站
  • windows 做网站服务器吗天猫建设网站的理由
  • 网站后台密码存在哪win7怎么建设网站
  • 门户网站建设多久企业手机网站开通
  • 如何用vs2012做网站南谯区城乡建设局网站
  • 2018年网站开发语言排行阿里巴巴网站维护要怎么做
  • 专业网站快速工程施工项目管理软件
  • 小语种网站推广网站的文案
  • 可以做网站的语言电子商务网站建设怎么做
  • 万网网站安装响应式商城网站
  • 网站开发用什么后端框架网站pr怎么提升
  • 如何做公司的网站建设前端工程师是干什么的
  • 怎么用抓爬工具做网站外贸人才网论坛
  • 西宁网站建设嘉荐君博l互联网公司名字大全参考
  • 汕头网站安全开发系统南京市秦淮区建设局网站
  • 城市网站改版建设专业网站发展趋势
  • 辽阳高端网站建设公司展厅设计公司招聘
  • 企业网站建设的趋势网络维护网站美工
  • 做网站网站庄家广州四楚seo顾问