• OpenCV第一课


    1、OpenCV下载地址:http://opencv.org/downloads.html

    因为本人电脑装的是vs2010,所以下载的是opencv-2.4.11.exe(vc10、vc11、vc12),最新版3.0没有vc10;

    高版本的OpenCV已经为VS系列编译器预先配置好了动态库和静态库,不需要自己cmake编译了。
    %OpenCV%代表安装目录,vc10是vc的版本,可以查看目录支持什么版本
    • 32位系统 & VC2010,库目录   %OpenCV%uildx86vc10lib
    • 64位系统 & VC2010,库目为:%OpenCV%uildx64vc10lib
    因为2.4.11版本的opencv内嵌了TBB的功能,所以取消了TBB直接安装,这样就不需要再配置TBB环境变量了。(假装没看见)
     
    我们可以看到安装目录下有vc10 vc11 vc12所以你懂得。

    解压:D:opencv

    2、配置

    (1).创建一个MFC的对话框程序

    打开  项目---属性
    配置属性”->“VC++目录”->“包含目录”,包含
    (2).配置include

    D:opencvD:opencvuildinclude

    D:opencvuildincludeopencv

    D:opencvuildincludeopencv

    (3).配置lib目录(此处是Debug版本)

    //附加包含目录D:opencvuildx86vc10lib (说明xxxxxd.lib是Debug版本, xxxxx.lib是Release版本)

    opencv_calib3d2411d.lib
    opencv_contrib2411d.lib
    opencv_core2411d.lib
    opencv_features2d2411d.lib
    opencv_flann2411d.lib
    opencv_gpu2411d.lib
    opencv_highgui2411d.lib
    opencv_imgproc2411d.lib
    opencv_legacy2411d.lib
    opencv_ml2411d.lib
    opencv_nonfree2411d.lib
    opencv_objdetect2411d.lib
    opencv_ocl2411d.lib
    opencv_photo2411d.lib
    opencv_stitching2411d.lib
    opencv_superres2411d.lib
    opencv_ts2411d.lib
    opencv_video2411d.lib
    opencv_videostab2411d.lib

    (4).引入lib对应的dll

    3、显示第一个图片

     1 void CCOpenCvDemoDlg::OnBnClickedButton3()
     2 {
     3     //显示图像文件
     4     const char *pstrImageName = "F:\VSProject\COpenCvDemo\image\second.jpg";
     5     const char *pstrWindowsTitle = "OpenCV第一个程序";
     6     //从文件中读取图像
     7     IplImage *pImage = cvLoadImage(pstrImageName, CV_LOAD_IMAGE_UNCHANGED);
     8 
     9     //创建窗口
    10     cvNamedWindow(pstrWindowsTitle, CV_WINDOW_AUTOSIZE);
    11 
    12     //在指定窗口中显示图像
    13     cvShowImage(pstrWindowsTitle, pImage);
    14 
    15     //等待按键事件
    16     cvWaitKey();
    17 
    18     cvDestroyWindow(pstrWindowsTitle);
    19     cvReleaseImage(&pImage);
    20 }

    对代码中的主要函数进行下讲解:

    1.创建窗口 cvNamedWindow

    函数名称:cvNamedWindow
    函数功能:创建窗口
    函数原型:
    int cvNamedWindow( const char* name, int flags=CV_WINDOW_AUTOSIZE );

    参数说明:
    第一个参数表示窗口的名字,它被用来区分不同的窗口,并被显示为窗口标题。被创建的窗口可以通过它们的名字被引用。
    第二个参数表示窗口属性标志。目前唯一支持的标志是CV_WINDOW_AUTOSIZE。当这个标志被设置后,用户不能手动改变窗口大小,窗口大小会自动调整以适合被显示图像。
    函数cvNamedWindow创建一个可以放置图像和trackbar的窗口。

    注意:
    如果已经存在这个名字的窗口,这个函数将不做任何事情。

    2.在指定窗口中显示图像 cvShowImage

    函数名称:cvShowImage
    函数功能:在指定窗口中显示图像
    函数原型:
    void cvShowImage( const char* name, const CvArr* image );
    参数说明:

    第一个参数:窗口的名字。
    第二个参数:被显示的图像。

    3.等待按键事件 cvWaitKey

    函数名称:cvWaitKey

    函数功能:等待按键事件

    函数原型:
    int cvWaitKey( int delay=0 );
    参数说明:

    第一个参数:延迟的毫秒数,当delay<=0时表示无限等待。

    函数返回值:

    如果超过指定时间则返回-1,否则返回被按键的值。

  • 相关阅读:
    checkbox 全选与全消
    sql server 关联和一些函数
    checkbox 判断是否选择
    sql 总结
    前台写逻辑
    android应用开发——popupWindow非全屏显示
    整理PostgreSQL数据库占用磁盘空间
    PHP常用的几个函数
    MySQL,PostgreSQL系统表(确认配置是否生效)
    Linux,查看目录大小
  • 原文地址:https://www.cnblogs.com/lpxblog/p/4700687.html
Copyright © 2020-2023  润新知