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 Files\OpenCV2.2”。
1. 安装完后在VS2010中新建工程test。
配置属性。
a. 在“属性”-“配置属性”-“VC++目录”中,在“包含目录”中添加三个路径:
C:\Program Files\OpenCV2.2\include
C:\Program Files\OpenCV2.2\include\opencv
C:\Program Files\OpenCV2.2\include\opencv2
添加包含目录的意义在于,程序中包含的库头文件在编译时会到这些目录中去找,不添加的话会报“***.h找不到”。
b. 在“属性”-“配置属性”-“VC++目录”中,在“库目录“中添加路径:
C:\Program Files\OpenCV2.2\lib
添加库目录路径意义在于,链接过程中需要链接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 = ;
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\n", filename);
exit();
}
// 获取图像数据
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);
// 创建窗口
cvNamedWindow("mainWin", CV_WINDOW_AUTOSIZE);
cvMoveWindow("mainWin", , );
// 反色图像
for(i=;i<height;i++)
for(j=;j<width;j++)
for(k=;k<channels;k++)
data[i*step+j*channels+k] = - data[i*step + j*channels + k];
// 显示图像
cvShowImage("mainWin", img ); // wait for a key
cvWaitKey();
// release the image
cvReleaseImage(&img );
return ;
}
运行结果:
上边是程序输出,下边是原图。
最新文章
- 轻量级ORM框架——第一篇:Dapper快速学习
- 当类型为dynamic的视图模型遭遇匿名对象
- 数据库 之MySQL 简单教程
- IT基础架构规划方案之实际网络设计案例
- mysqldump的使用
- IntelliJ IDEA---java的编译工具【转】
- 使用Beanstalkd实现队列
- WAMP 403 Forbidden禁止访问 的解决办法
- 第六章Linux的文件权限与目录配置
- 获取Mac、CPUID、硬盘序列号、本地IP地址、外网IP地址OCX控件
- Java判断PC端还是移动端
- Conjugate
- day5 模拟用户登录
- 使用Go语言+Protobuf协议完成一个多人聊天室
- redis之数据类型以及使用
- linux下mysql的远程访问
- OAuth2.0网页授权 提示未关注该测试号
- stdClass object 数据获取方法
- oracle 多字段去重查询
- ubuntu zip解压
热门文章
- Springboot使用zuul进行负载均衡
- Python generator 类型
- 中国萌兔-月饼工厂流水线 -万圣节萌宠-月饼售罄后续-B站东予薏米
- postgresql interval 字段拼接
- Linunx创建软连接、删除软连接、修改软连接
- 官网引用的axios,lodash文件在脚手架中如何使用?
- [转][C#]AutoFac 使用方法总结
- SQL-W3School-高级:SQL Date 函数
- 手把手教你实现RecyclerView的下拉刷新和上拉加载更多
- Android中实现日期时间选择器(DatePicker和TimePicker)