zoukankan      html  css  js  c++  java
  • OpenCV安装和测试

    参考链接http://blog.csdn.net/bruce_zeng/article/details/7961153

    OpenCv下载链接:http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.2/

    下载的是

    • OpenCV-2.2.0-win32-vs2010.exe,傻瓜式安装。安装过程中勾选“Add OpenCV to system PATH for all users”选项。或者安装完后自己添加环境变量。

    下载后安装,我的安装目录是“C:Program FilesOpenCV2.2”。

    1. 安装完后在VS2010中新建工程test。

    配置属性。

    a. 在“属性”-“配置属性”-“VC++目录”中,在“包含目录”中添加三个路径:

      C:Program FilesOpenCV2.2include

      C:Program FilesOpenCV2.2includeopencv

      C:Program FilesOpenCV2.2includeopencv2

    添加包含目录的意义在于,程序中包含的库头文件在编译时会到这些目录中去找,不添加的话会报“***.h找不到”。

    b. 在“属性”-“配置属性”-“VC++目录”中,在“库目录“中添加路径:

      C:Program FilesOpenCV2.2lib

    添加库目录路径意义在于,链接过程中需要链接lib文件,而查找目录就是这个。

    c. 在“属性”-“配置属性”-”链接器“-”输入“中,添加”附加依赖项“。

      opencv_calib3d220d.lib
      opencv_contrib220d.lib
      opencv_core220d.lib
      opencv_features2d220d.lib
      opencv_ffmpeg220d.lib
      opencv_video220d.lib
      opencv_highgui220d.lib

    可以按自己需要有选择的添加。

    添加的库会在链接的时候自动链接。

    2. 至此opencv环境已经搭好,可以在程序中使用了,新建test.cpp文件,添加代码:

      该程序反色一个图片。 

    #include <stdlib.h>
    #include <stdio.h>
    #include <math.h>
    #include <cv.h>
    #include <highgui.h>
    
    int main(int argc, char *argv[])
    {
        IplImage* img = 0; 
        int height,width,step,channels;
        uchar *data;
        int i,j,k;
        const char * filename ="C:\Users\zhu\Pictures\new.jpg";
        // 载入图像
        img = cvLoadImage(filename);
        if(!img){
            printf("Could not load image file: %s
    ", filename);
            exit(0);
        }
        // 获取图像数据
        height = img->height;
        width = img->width;
        step = img->widthStep;
        channels = img->nChannels;
        data = (uchar *)img->imageData;
        printf("Processing a %dx%d image with %d channels
    ",height,width,channels); 
        // 创建窗口
        cvNamedWindow("mainWin", CV_WINDOW_AUTOSIZE); 
        cvMoveWindow("mainWin", 100, 100);
        // 反色图像
        for(i=0;i<height;i++) 
            for(j=0;j<width;j++) 
                for(k=0;k<channels;k++)
                    data[i*step+j*channels+k] = 255 - data[i*step + j*channels + k];
        // 显示图像
        cvShowImage("mainWin", img );
    
        // wait for a key
        cvWaitKey(0);
        // release the image
        cvReleaseImage(&img );
        return 0;
    }  

    运行结果:

      上边是程序输出,下边是原图。

      

      

  • 相关阅读:
    下班的时候收到两封Mail
    图解SSIS监视文件夹并自动导入数据
    用SqlDependency类为SQL2005查询提供更改通知
    一句话理解ref object的意义
    开源Mono框架将C#编程带到iPhone、Android和Wii
    div css 图片和文字上下居中对齐
    js 表单验证思路
    jquery 表单验证插件
    PHP开源AJAX框架
    Hello China V1.5 源码下载地址
  • 原文地址:https://www.cnblogs.com/fwst/p/opencv.html
Copyright © 2011-2022 走看看