VideoCapture是OpenCV 2.X中新增的类,提供从摄像机或视频文件捕获视频的C++接口。利用它读入视频的方法一般有两种:

// method 1
VideoCapture capture;
capture.open("1.avi");
// method 2
VideoCapture capture("1.avi");

读取并播放视频

ReadPlayVideo.cxx

#include <opencv2/opencv.hpp>

int main(){
// read video
cv::VideoCapture capture("1.avi"); // show each frame
while(){
cv::Mat frame; // read current frame;
capture >> frame;
if(frame.empty()) break; // show current frame
imshow("Read Video", frame);
cv::waitKey();
}
return ;
}

CMakeList.txt

cmake_minimum_required (VERSION 2.8)
project (ReadPlayVideo) # find OpenCV packages
find_package( OpenCV REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS} ) # add the executable
add_executable (ReadPlayVideo ReadPlayVideo.cxx)
target_link_libraries(ReadPlayVideo opencv_core opencv_highgui opencv_videoio opencv_imgcodecs)

调用摄像头采集图像

GetVideoFromCam.cxx

#include <opencv2/opencv.hpp>
#include <opencv2/imgproc/imgproc.hpp>
int main(){
// read video
cv::VideoCapture capture(); // show each frame
while(){
cv::Mat frame, edges; // read current frame;
capture >> frame; // convert to gray-scale
cv::cvtColor(frame, edges, CV_BGR2GRAY); // denoise
cv::blur(edges, edges, cv::Size(,)); // canny operator
cv::Canny(edges, edges, , , ); // show current frame
imshow("Read Video", edges); // if input 'e', exit
char c = cv::waitKey();
if (c=='e') {
break;
}
}
return ;
}

CMakeList.txt

cmake_minimum_required (VERSION 2.8)
project (ReadPlayVideo) # find OpenCV packages
find_package( OpenCV REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS} ) # add the executable
add_executable (ReadPlayVideo ReadPlayVideo.cxx)
target_link_libraries(ReadPlayVideo opencv_core opencv_highgui opencv_videoio opencv_imgcodecs opencv_imgproc)

视频处理简单实例 [OpenCV 笔记2]的更多相关文章

  1. 图像处理简单实例[OpenCV 笔记1]

    几个入门的简单程序,和对应的CMakeList, 虽然简单重新测一下写一下也是好的. CMake教程传送门 图像显示 ShowImage.cxx #include <opencv2/opencv ...

  2. 图像显示 imshow()[OpenCV 笔记5]

    void imshow(const string& winname InputArray mat); winname 窗口表识名称 mat 需要显示的图像.InputArray类型,声明如下 ...

  3. 实例:图形绘制[OpenCV 笔记15]

    DrawShapes.cxx # include "DrawShapes_utils.h" #define WINDOW_NAME1 "Painting 1" ...

  4. 实例:图像载入、显示、混合与输出[OpenCV 笔记8]

    是的是的,忍着尿意努力更新,就是为了更到wuli男神的部分,当然要把男神放在前面镇楼,欢迎下载配图,具体操作见code wuliEddie.jpg logo.png results.jpg LoadS ...

  5. OpenCV基本架构[OpenCV 笔记0]

    最近正在系统学习OpenCV,将不定期发布笔记,主要按照毛星云的<OpenCV3编程入门>的顺序学习,会参考官方教程和文档.学习工具是Xcode+CMake,会对书中一部分内容更正,并加入 ...

  6. 访问图像中的像素[OpenCV 笔记16]

    再更一发好久没更过的OpenCV,不过其实写到这个部分对计算机视觉算法有所了解的应该可以做到用什么查什么了,所以后面可能会更的慢一点吧,既然开了新坑,还是机器学习更有研究价值吧... 图像在内存中的存 ...

  7. 查找并绘制轮廓[OpenCV 笔记XX]

    好久没有更新了,原谅自己放了个假最近又在赶进度,所以...更新的内容是很靠后的第八章,因为最近工作要用就先跳了,后面会更新笔记编号...加油加油! 在二值图像中寻找轮廓 void cv::findCo ...

  8. 滑动条 Trackbar[OpenCV 笔记9]

    OpenCV中没有实现按钮的功能,我们可以利用滑动条来实现按钮功能. , ); trackbarname 轨迹条的名字. winname 窗口的名字,轨迹条会依附在这个窗口上. value 一个指向整 ...

  9. 输出图像到文件 imwrite()[OpenCV 笔记7]

    bool imwrite(const string& filename, InputArray img, const vector<int>& params=vector& ...

随机推荐

  1. SQL 2005中char、nchar、varchar、ntext and nvarchar(max)的区别

    原文地址 MS SQL大值数据类型varchar(max).nvarchar(max).varbinary(max) 在MS SQL2005及以上的版本中,加入大值数据类型(varchar(max). ...

  2. Web开发需要关注的技术细节

    摘要:在网站发布前,开发者需要关注有许多的技术细节,比如接口设计.用户体验.安全性.Web标准.性能.SEO等,倘若一个疏忽就会影响到整体的体验效果.作为一名Web开发者,哪些技术细节需要考虑呢? [ ...

  3. 18. 4Sum

    #include <string>#include <stack>#include <vector>#include <map>#include < ...

  4. Bzoj 2141: 排队 分块,逆序对,树状数组

    2141: 排队 Time Limit: 4 Sec  Memory Limit: 259 MBSubmit: 1310  Solved: 517[Submit][Status][Discuss] D ...

  5. oc学习之路----内存管理

    直接上图啊.

  6. ABAP ALV DEMO示例源码

    关于ALV表格颜色,感觉这种需求在项目中用到的时候不是很多,但是前一段时间面试的时候,面试官问了我关于ALV单元格颜色的问题. 以前了解过一点,回答的不是很好,后来百度了一下,大概了解了一些,今天工作 ...

  7. Decode Ways -- LeetCode

    原题链接: http://oj.leetcode.com/problems/decode-ways/  这道题要求解一个数字串依照字符串编码方式可解析方式的数量.看到这样的求数量的,我们非常easy想 ...

  8. 在android客户端加载html源代码总结

    在实际应用中,客户端要从网页上获取数据是常见的事,如果要解析网页上的html文档,那么首先得获取html源码,然后现在一般使用Jsoup来转换成Document文档来进行解析,本文主要讨论如何使用Js ...

  9. android 77 fragment

    fragment是3.0之后才有的,之前平板是3.0专用,后来手机和平板都用3.0 Activity: package com.itheima.fragment; import android.os. ...

  10. WPF中将DataGrid导出Excel

    int number = 1; private void MenuItem_Click(object sender, RoutedEventArgs e) { #region string path ...