OpenCV 第一课总结

放假第一天,简单的接触了下OpenCV,现在总结下今天的内容。

首先是VS2010下配置OpenCV,这是第一步,也是最重要的一步。

1.配置环境变量

   打开我的电脑系统属性,在用户变量或者系统变量中修改Path,加上OpenCV的安装路径

    vc9表示VS2008,不同的变量之间必须加上分号。

2.建立WIN32控制台程序

3.在项目--属性--vc++目录添加依赖库

 

      

      

上面的工作做完了,就可以编写简单的OpenCV程序了。

先看看OpenCV的大体结构

       CxCore 最基本的 这里有基本数据结构 数组操作 动态结构等;

       ML,cv,HighGui涉及图形的处理,一些识别的算法,当然刚刚接触,还有很多不懂。

下面列出写的两个基本的程序

////////////////////图片显示 保存//////////////////////////////////////
#include <opencv.hpp>
//该头文件 显示图片 注意 
#include <highgui.h>


int main()
{   
    //文件资源
    IplImage *src=cvLoadImage("F:\\project\\OPENCV\\First\\First\\CIMG1733.jpg",CV_LOAD_IMAGE_ANYCOLOR | CV_LOAD_IMAGE_ANYDEPTH);
    // 建立窗口 以名称区别 这里 窗口的显示位置可以发生变化
    cvNamedWindow("show_image");
    //在指定窗口显示
    cvShowImage("show_image",src);
    //cvSaveImage 保存图片
    //等待响应  大于0 则是等待时间 小于等于0则是等待按键
    cvWaitKey(0);

    //释放图片资源
    cvReleaseImage(&src);
    //释放窗口资源 
    cvDestroyWindow("show_image");
    return 0;
}
#include <opencv.hpp>

int main()
{   
    //创建显示的窗口
    cvNamedWindow("show_image");
    //CvCapture 结构体 保存每一帧的信息  
    //这里的指针一般会出问题  原因 1.文件不存在 2.没有解码器 有解码器 可以读很多文件 3.没有链接库 移动到其他电脑上可能没有链接库 导致
    //CvCapture *capture=cvCreateFileCapture("F:\\OpenCV\\2.flv");
    //读取摄像头  可以多个摄像头获取
    CvCapture *capture=cvCreateCameraCapture(-1);
    //这里的视屏只是读取文件 没有 读取 声音 
    IplImage *pshow;

    while(1)
    {  
        //这里是获取内容 没有分配内存 而是覆盖 使用 获取每一帧的信息
        pshow=cvQueryFrame(capture);
        cvShowImage("show_image",pshow);
        //下面控制帧率(每一秒播放的帧数)
        char c=cvWaitKey(33);//以毫秒计算  快进则是变小 慢则是变大 返回按键的ASCII值 
//这里是退出键
if (c==27) break;
//对图片是单张处理的 所以在录制视屏时 完全可以再此时实现 识别 实现轨迹坐标的记录 等等 }
//释放结构体 同时释放打开文件的相关信息 cvReleaseCapture(&capture); cvDestroyWindow("show_image"); return 0; }

好了,只是OpenCV简单的接触下,明天必须多花点时间接着学了,还要学习算法!!!

 

posted @ 2014-01-13 20:51  the yesterday  阅读(403)  评论(0编辑  收藏  举报