LabVIEW中使用opencv快速实现视频的读写

‍‍博客主页: virobotics的CSDN博客:LabVIEW深度学习、人工智能博主
所属专栏:『LabVIEW深度学习实战』
上期文章: 【YOLOv8-Seg】实战三:LabVIEW+TensoRT实现YOLOv8-seg的极速推理(毫秒级)
如觉得博主文章写的不错或对你有所帮助的话,还望大家多多支持呀! 欢迎大家✌关注、点赞、✌收藏、订阅专栏

文章目录

  • 前言
  • 一、学习目标
  • 二、环境搭建
    • 2.1 部署本项目时所用环境
    • 2.2 LabVIEW工具包下载及安装
  • 三、LabVIEW中使用opencv快速实现视频的读写
    • 3.1 从文件中读取视频并播放
    • 3.2 保存视频
  • 四、项目源码
  • 总结

前言

Hello,大家好,这里是virobotics。今天我们一起来看一下私信里各位朋友问的比较多的问题:LabVIEW中使用opencv快速实现视频的读写。
LabVIEW中使用opencv快速实现视频的读写_第1张图片


一、学习目标

掌握读取视频文件,显示视频,保存视频文件的方法


二、环境搭建

2.1 部署本项目时所用环境

  • 操作系统:Windows10
  • python:3.6及以上
  • LabVIEW:2018及以上 64位版本
  • AI视觉工具包:techforce_lib_opencv_cpu-1.0.0.98.vip

2.2 LabVIEW工具包下载及安装

  • AI视觉工具包下载与安装参考:
    https://blog.csdn.net/virobotics/article/details/123656523

三、LabVIEW中使用opencv快速实现视频的读写

3.1 从文件中读取视频并播放

  • url处填写读取本地视频文件路径或者rtsp路径
  • 循环读取摄像头数据,输出为Opencv的Mat类型
  • 根据视频每帧需要播放的时间,设置每帧间隔
  • 颜色空间转换(BGR to RGB)
  • 使用属性节点获取Mat中的图片
  • 关闭摄像头、清空Mat内存

LabVIEW中使用opencv快速实现视频的读写_第2张图片

ps:附python中读取视频并播放

import numpy as np
import cv2 as cv
cap = cv.VideoCapture('aaa.mp4')
while(cap.isOpened()):
    ret, frame = cap.read()
    if ret == True:
        cv.imshow('frame',frame)
    if cv.waitKey(25) & 0xFF == ord('q'):
        break
cap.release()
cv.destoryAllwindows()

3.2 保存视频

  • 在OpenCV中我们保存视频使用的是VedioWrite这个类,第一步需要先创建对象

  • 设置视频写入的参数,包括
    filename:视频保存的位置
    format:指定视频编解码器的4字节代码
    fps:帧率
    size:帧大小

  • 利用Camera类打开需要保存的视频留

  • readImage.vi 获取视频中的每一帧图像,并使用write.vi将某一帧图像写入视频中。

  • 使用stopCapture.vi和Release.vi释放资源。
    LabVIEW中使用opencv快速实现视频的读写_第3张图片
    ps:附python中保存视频

import cv2 as cv
import numpy as np

cap = cv.VideoCapture("DOG.wmv")

frame_width = int(cap.get(3))
frame_height = int(cap.get(4))

out = cv.VideoWriter('outpy.avi',cv.VideoWriter_fourcc('M','J','P','G'), 10, (frame_width,frame_height))
while(True):

    ret, frame = cap.read()
    if ret == True: 

        out.write(frame)
    else:
        break 

cap.release()
out.release()
cv.destroyAllWindows()

四、项目源码

如需源码,请在一键三联并订阅本专栏后评论区留下邮箱


总结

以上就是今天要给大家分享的内容,希望对大家有用。我是virobotics,我们下篇文章见~

如果文章对你有帮助,欢迎✌关注、点赞、✌收藏、订阅专栏

推荐阅读

LabVIEW图形化的AI视觉开发平台(非NI Vision),大幅降低人工智能开发门槛
LabVIEW图形化的AI视觉开发平台(非NI Vision)VI简介
LabVIEW AI视觉工具包OpenCV Mat基本用法和属性
手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

技术交流 · 一起学习 · 咨询分享,请联系

你可能感兴趣的:(LabVIEW深度学习工具包,labview,opencv,音视频,计算机视觉,人工智能)