zoukankan      html  css  js  c++  java
  • openCV基础学习(1)

    #imclude "highgui.h"

    int main(int argc,char** argv){

      IplImage* img=cvLoadImage(argv[1]);//将图像文件加载到内存

      cvNamedWindow("Example1",CV_WINDOW_AUTOSIZE);

      cvShowImage("Example1,img");

      cvWaitKey(0);

      cvReleaseImage(&img);

      cvDestroyWindow("Example1");

    }

    cvLoadImage()是一个高层调用接口,能加载绝大多数格式类型的图像文件,返回值为一个指针,该指针指向一块为描述该图像文件的数据结构(IplImage)儿分配的内存块。

    IplImage是一个结构体,能处理单通道、多通道、整型的、浮点型的等所有类型的图像文件。

    cvNamedWindow()是一个高层调用接口,能在屏幕上创建一个窗口,第一个属性:“Example1”是窗口标题;第二个属性:“CV_WINDOW_AUTOSIZE”(默认值为0)但这一属性表示的是窗口大小会因为图像大小自动进行拉伸或收缩。

    cvShowImage()将图像在具体的窗口中显示出来

    cvReleaseImage(&img)用以执行内存释放操作

    cvDestroyWindow("Example1")摧毁显示图像文件的窗口

    #imclude "highgui.h"

    int main(int argc,char**argv){

      cvNameWindow("Example2",CV_WINDOW_AUTOSIZE);

      cvCapture*capture=cvCreateFileCapture(argv[1]);

      IplImage*frame;

      while(1){//开始读取avi文件

      frame=cvQueryFrame(capture);//用来将下一帧视频文件载入内存(实际是填充或更新cvCapture结构)

      if(!frame)break;

      cvShowImage("Example2",frame);

      char c=cvWaitKey(33);

      if(c==27)break;

    }

      cvReleaseCapture(&capture);

      cvDestroyWindow("Example2");

    }

    cvCapture*capture=cvCreateFileCapture(argv[1])通过传入参数确定读取的avi文件并返回一个cvCapture指针

  • 相关阅读:
    大型项目使用Automake/Autoconf完成编译配置
    用C语言编写Windows服务程序的五个步骤
    RPC的发展历史(本质就是双方定义好协议,传递参数后远程调用)
    libuv和libev 异步I/O库的比较
    zlog 程序日志的库 交叉编译(Linux生成ARM库,观察执行步骤)
    应用服务
    EvnetBus
    this指向
    CPU使用率
    数据量小,创建索引有必要吗
  • 原文地址:https://www.cnblogs.com/bu779783251/p/3133943.html
Copyright © 2011-2022 走看看