C++视频读取与视频保存
VideoCapture cap("E:\\122.avi");
//计算视频帧数
int VedioFPS = cap.get(CV_CAP_PROP_FPS);
//cout << "视频帧率" << VedioFPS << endl;
// 保存视频
VideoWriter writer("LoadBeltTear.mp4", CV_FOURCC('M', 'J', 'P', 'G'), VedioFPS, Size(ROI_Weidth, ROI_Height * ));
if (!cap.isOpened())
{
cout << "Error opening video stream or file" << endl;
return -;
}
Mat frame;
while () {
// Capture frame-by-frame
cap >> frame;
// If the frame is empty, break immediately
if (frame.empty()) break;
if (frame.channels() == ) cvtColor(frame, frame, CV_RGB2GRAY);
//******************
// 处理图像
//******************
//在图像上打上标记
cvtColor(frame(roi_rect), ROIimg, CV_GRAY2RGB);
std::string str2 = "OriginalImage";
cv::putText(ROIimg, str2, Point(roi_rect.width *0.5 - , ), cv::FONT_HERSHEY_SIMPLEX, 0.3, cv::Scalar(, , ), );
cv::putText(ROIimg, "LoadBelt", Point(, ), cv::FONT_HERSHEY_SIMPLEX, 0.5, cv::Scalar(, , ), );
std::string str1 = "ImageProcessing";
cv::putText(tempImg, str1, Point(roi_rect.width *0.5 - , ), cv::FONT_HERSHEY_SIMPLEX, 0.3, cv::Scalar(, , ), );
vconcat(ROIimg, tempImg, conbine);
imshow("拼接", conbine);
writer << conbine;
char c = (char)waitKey();
if (c == )
break;
}
cap.release();
destroyAllWindows();
从视频文件中读取视频,对单帧图像进行相关处理,将处理后的图像整理成视频
C++视频读取与视频保存的更多相关文章
- [转载]matlab视频读取函数VideoReader
看到以前matlab中读取视频多 使用mmreader等(参考<matlab读取/播放视频的函数>),而现在matlab有一个专门的视频读取类VideoReader完成视频读取的功能. 相 ...
- OpenCV-Python 读取显示视频 | 六
目标 学习读取视频,显示视频和保存视频. 学习从相机捕捉并显示它. 你将学习以下功能:cv.VideoCapture(),cv.VideoWriter() 从相机中读取视频 通常情况下,我们必须用摄像 ...
- OpenCV计算机视觉学习(1)——图像基本操作(图像视频读取,ROI区域截取,常用cv函数解释)
1,计算机眼中的图像 我们打开经典的 Lena图片,看看计算机是如何看待图片的: 我们点击图中的一个小格子,发现计算机会将其分为R,G,B三种通道.每个通道分别由一堆0~256之间的数字组成,那Ope ...
- 机器学习进阶-背景建模-(帧差法与混合高斯模型) 1.cv2.VideoCapture(进行视频读取) 2.cv2.getStructureElement(构造形态学的卷积) 3.cv2.createBackgroundSubtractorMOG2(构造高斯混合模型) 4.cv2.morpholyEx(对图像进行形态学的变化)
1. cv2.VideoCapture('test.avi') 进行视频读取 参数说明:‘test.avi’ 输入视频的地址2. cv2.getStructureElement(cv2.MORPH_E ...
- matlab读写图片,读取图像序列,读取AVI视频
介绍使用matlab读写图片,读取图像序列,读取AVI视频的方法: 一.读写图像 使用matlab读一幅图像,并另存 % Filename: ImageReadWrite clc; clear; i ...
- jwPlayer读取本地视频及相关配置(Tomcat配置虚拟目录)
最近做项目,发现好多知识点都是以前做过的或用过的,但最后要用到的时候,要么就记不牢了,要么就还是得重新整理一遍,所以以后有用的东东,尽量整理一下或Market下了. 项目要求:读取服务器多个视频到本地 ...
- 基于OpenCV之视频读取,处理和显示框架的搭建(一)
主要包括以下内容: 1.使用的主要函数的说明. 2.两个实例:视频读取和显示.搭建视频读取和处理框架,调用canny函数提取边缘并显示. 3.一些注意事项和代码说明. 一.使用的主要函数 1.延时函数 ...
- OpenCV视频读取播放,视频转换为图片
转载请注明出处!!! http://blog.csdn.net/zhonghuan1992 OpenCV视频读取播放,视频转换为图片 介绍几个有关视频读取的函数: VideoCapture::Vide ...
- Linux下实现视频读取
V4L(video4linux是一些视频系统,视频软件.音频软件的基础,经常时候在需要采集图像的场合,如视频监控,webcam,可视电话,经常使用在embedded linux中是linux嵌入式开发 ...
随机推荐
- GFS中元数据的管理
GFS 元数据(metadata)中包含三部分: GFS元数据的管理方式: 1.文件的命名空间和块的命名空间: 采用持久化的方式. 对于文件和块的命名空间以及从文件到块的映射:通过向操作日志登记修改而 ...
- json页面解析
List<TjfxDTO> cyjbList = new ArrayList<TjfxDTO>(); cyjbList=tjfxService.cyjb_wcjd(tjfxDT ...
- 位于0/nut文件里的'Calculated'边界条件是什么意思?【翻译】
翻译自:CFD-online 帖子地址:http://www.cfd-online.com/Forums/openfoam-pre-processing/140984-what-does-calcul ...
- Python实现协程
什么是进程和线程 有一定基础的小伙伴们肯定都知道进程和线程. 进程是什么呢? 直白地讲,进程就是应用程序的启动实例.比如我们运行一个游戏,打开一个软件,就是开启了一个进程. 进程拥有代码和打开的文件资 ...
- linux文件管理指令
总述 所有指令都可以使用--help来查看说明 例如:cat --help -x 表示参数 1.cat:用于打印文件(cat -x filename) 参数: -n:由1开始对每行进行编号 -b:由1 ...
- 编译grub时报告"grub_script.yy.c:19:22: error: statement with no effect [-Werror=unused-value]"怎么处理?
答: 在configure时加--disable-werror选项,如下: ./configure --target=aarch64-linux-gnu --disable-werror
- Leetcode: Find First and Last Position of Element in Sorted Array
Given a sorted array of integers, find the starting and ending position of a given target value. You ...
- List的remove()方法的三种正确打开方式
转: java编程:List的remove()方法的三种正确打开方式! 2018年08月12日 16:26:13 Aries9986 阅读数 2728更多 分类专栏: leetcode刷题 版权声 ...
- EasyUI动态生成菜单
业务需求:不同角色有不同的权限,我们根据角色加载页面时展示不同的菜单.在easyUI中,菜单一般采用手风琴accordion组件进行展示,一级菜单下可以加载二级菜单,效果如下: 普通用户看到的菜: 管 ...
- LeetCode_118. Pascal's Triangle
118. Pascal's Triangle Easy Given a non-negative integer numRows, generate the first numRows of Pasc ...