您的位置:首页 > 运维架构

在VS2013上配置OpenCV1.0

2015-11-03 17:59 267 查看
OpenCV1.0版(下载)基本上已经是老掉牙了,但是不想装新版,只是因为任性。所以就有了这样一个新老搭配。装完回想起来还是挺简单的,但是还是费了我一晚上,所以有必要记录一下。

先在电脑上装好OpenCV1.0,安装好之后目录如下图:





接下来把bin目录中的文件复制到c盘windows/system32下(如果是64位系统就复制到windows/syswow64)。然后就可以新建项目了,如下图:





创建一个win32控制台应用程序。

接下来设置项目的属性:1.右键点击项目名称,选择“属性”。2.“配置属性”->“c/c++”->“常规”->编辑附加包含目录,添加如图所示的文件夹:



3.“链接器”->“常规”->编辑“附加库目录”:





4.还在“链接器”下,选择“输入”,添加附加依赖项:





注意这些.lib文件名就是OpenCV\lib下的文件的名字。

cv.lib

cvaux.lib

cvcam.lib

cxcore.lib

cxts.lib

cxtsd.lib

highgui.lib

ml.lib

属性设置完后,写一个hello world,代码是我从网上找的,出处已经找不到了。

#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include <cv.h>
#include <highgui.h>
#include <string>

using namespace std;
int main(int argc, char *argv[])
{
IplImage* img = 0;
int height, width, step, channels;
uchar *data;
int i, j, k;

string name = "D://2.bmp";
// load an image
img = cvLoadImage(name.c_str());

if (!img){
printf("Could not load image file: %s\n",name.c_str());
//exit(0);
}

// get the image data
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\n", height, width, channels);

// create a window
cvNamedWindow("mainWin", CV_WINDOW_AUTOSIZE);
cvMoveWindow("mainWin", 100, 100);

// invert the image
for (i = 0; i < height; i++) for (j = 0; j < width; j++) for (k = 0; k < channels; k++)
data[i*step + j*channels + k] = ~data[i*step + j*channels + k];

// show the image
cvShowImage("mainWin", img);

// wait for a key
cvWaitKey(0);

// release the image
cvReleaseImage(&img);
return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: