Ubuntu上OpenCV2的视频编码与解码

   2024-09-30 2520
核心提示:在Ubuntu上使用OpenCV2进行视频编码和解码,你需要首先安装OpenCV库安装依赖项:sudo apt-get updatesudo apt-get install build

在Ubuntu上使用OpenCV2进行视频编码和解码,你需要首先安装OpenCV库

安装依赖项:
sudo apt-get updatesudo apt-get install build-essential cmake git pkg-config libavcodec-dev libavformat-dev libswscale-dev
克隆OpenCV和OpenCV_contrib仓库:
git clone https://github.com/opencv/opencv.gitgit clone https://github.com/opencv/opencv_contrib.git
进入opencv目录并创建一个名为build的文件夹:
cd opencvmkdir buildcd build
运行cmake并指定opencv_contrib模块的路径:
cmake -D CMAKE_BUILD_TYPE=RELEASE \      -D CMAKE_INSTALL_PREFIX=/usr/local \      -D INSTALL_C_EXAMPLES=ON \      -D INSTALL_PYTHON_EXAMPLES=ON \      -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules \      -D BUILD_EXAMPLES=ON ..
编译并安装OpenCV:
make -j4    # -j4表示使用4个内核进行编译,根据你的CPU核心数调整sudo make installsudo ldconfig

现在你已经安装了OpenCV库,可以开始进行视频编码和解码。以下是一个简单的Python示例,展示了如何使用OpenCV2读取、编码和保存视频:

import cv2# 读取视频video = cv2.VideoCapture('input_video.mp4')# 获取视频的宽度和高度width = int(video.get(cv2.CAP_PROP_FRAME_WIDTH))height = int(video.get(cv2.CAP_PROP_FRAME_HEIGHT))# 创建一个视频写入器fourcc = cv2.VideoWriter_fourcc(*'XVID')  # 选择视频编码格式out = cv2.VideoWriter('output_video.avi', fourcc, 20.0, (width, height))while True:    # 读取视频帧    ret, frame = video.read()    if not ret:        break    # 将帧写入输出视频    out.write(frame)    # 显示帧(可选)    cv2.imshow('Frame', frame)    # 按'q'键退出    if cv2.waitKey(1) & 0xFF == ord('q'):        break# 释放资源video.release()out.release()cv2.destroyAllWindows()

这个示例将读取名为input_video.mp4的视频文件,然后使用XVID编码器将其保存为output_video.avi。你可以根据需要修改输入和输出文件名以及编码器设置。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号