zoukankan      html  css  js  c++  java
  • OpenCV 入门示例之二:播放 AVI 视频

    前言

      本文展示一个播放 AVI 视频的程序。( 呵呵是 AVI 视频不是 AV 视频噢! )

    代码示例

     1 // 此头文件包含图像IO函数的声明
     2 #include "highgui.h"
     3 
     4 int main (void) {
     5 
     6     // 定义一个窗口来播放视频
     7     cvNamedWindow ("示例", CV_WINDOW_AUTOSIZE );
     8 
     9     // 将 D 盘目录下名为" 1.avi "的视频加载至内存并获得一个指向该视频内存块的指针 capture
    10     // 该指针所指向的结构包含了此视频的当前播放帧序
    11     CvCapture *capture = cvCreateFileCapture ("D:\1.avi");
    12 
    13     // 定义一个图像指针来指向各帧图像
    14     IplImage *frame;
    15 
    16     while (1) {
    17 
    18         // 获取视频最新的帧图。这个帧图是存放在视频内存块里的,因此,程序结束时只释放 capture 所指向的内存块就够了。
    19         frame = cvQueryFrame (capture);
    20 
    21         // 读取帧失败则退出程序
    22         if (!frame) break;
    23 
    24         // 显示最新获取到的帧图
    25         cvShowImage ("示例", frame);
    26 
    27         // 用户键入ESC后退出循环,键入其他按键播放下一帧,什么都不按则 33 毫秒之后自动播放下一帧。
    28         char c = cvWaitKey(33);
    29         if (c==27) break;
    30     }
    31 
    32     // 释放内存空间
    33     cvReleaseCapture (&capture);
    34     cvDestroyWindow ("示例");
    35 
    36     return 0;
    37 }

    运行测试

      1. 将格式为 avi 的测试视频拷贝到 D 盘,命名为 "1.avi"。

      2. 运行结果:

      

  • 相关阅读:
    ASP.NET MVC 与 Web Forms
    去除两端margin的方法
    Media Queries之Respond.js
    ECMAScript5严格模式
    用rem设置文字大小
    BFC与hasLayout
    快速把项目部署到webLogic上
    判断一个坐标点是否在不规则多边形内部的算法
    Git 工作流的正确打开方式
    Java设计模式六大原则
  • 原文地址:https://www.cnblogs.com/scut-fm/p/3720230.html
Copyright © 2011-2022 走看看