新手学习opencv
看你想学到什么程度了。弄本书
《学习OpenCV》。
挺不错的。
还有个opencv中文论坛。
简单的入门蛮快的。尤其是那个论坛,常见问题都有。
个人整理的opencv最基本入门资料
有C/C++语言基础的人学OpenCV很简单,它只是一个工具,要学好OpenCV主要还是看你编程功底怎么样了,它只是一个函数库,编程功底好的,根据需要会调用里面的函数就可以。推荐的书也就两本,一本是《学习OpenCV》,这个最经典了,还有《OpenCV教程——基础篇》,初学者这两本书足够用了!希望能帮到你!如何从入门开始学习OpenCV
方法如下:
先去下载最新版OpenCV,网址如下:。下载完成后解压到相应目录。本人解压到D:\Program Files\OpenCV2.4.3。
有的文章提到使用CMake把OpenCV下面的范例生成为Visual Studio的工程,此处我没有这样做。直接使用范例。这里先把OpenCV目录下面的几个重要目录做个说明:
doc目录:主要包含OpenCV的帮助文档。其中opencv2refman.pdf主要是OpenCV的各种类和函数的使用说明。
opencv_tutorials.pdf,主要是下面教学代码目录里面各个教学范例的简单讲解。
opencv_cheatsheet.pdf主要是最常用OpenCV类和函数的集合。此3个PDF文档对自学者帮助最大。
samples\cpp\tutorial_code目录:里面包含基本教学代码。和上面的opencv_tutorials.pdf文档遥相呼应,构成一个完整的自学体系。
build目录:包含编译,调试,发布所需要的各类动态库,静态库,头文件等。因为OpenCV2.4.3好像只支持Visual Studio 2008以上版本,我在这里以Visual Studio 2008为例讲解如何让范例跑起来。
添加环境变量:此处我在path环境变量中添加如下目录:D:\Program Files\OpenCV2.4.3\build\x86\vc9\bin。记住在前面一个目录后面加分号。
在Visual Studio中包含头文件目录:见附件中的图片,已经用红色矩形框标识如何操作。
在Visual Studio中包含库文件目录:见附件中的图片,已经用红色矩形框标识如何操作。4
建立一个新建Visual Studio VC win32控制台应用工程,这里我选择带预编译头的工程,省去添加cpp文件的工作。
代码创建:这里我选择samples\cpp\tutorial_code\ImgProc\Morphology_2.cpp文件。先添加包含目录,如下(以后所有范例均可以如下添加):#include <opencv2/opencv.hpp>#include <stdio.h>然后复制代码。
编译文件:自然少不了要包含静态库,要添加的库(debug版和release差别就是文件名后多了一个d标识是debug版)如下:
debug版:
opencv_calib3d243d.lib
opencv_contrib243d.lib
opencv_core243d.lib
opencv_features2d243d.lib
opencv_flann243d.lib
opencv_gpu243d.lib
opencv_haartraining_engined.lib
ibrelease版:
opencv_calib3d243.lib
opencv_contrib243.lib
opencv_core243.lib
opencv_features2d243.lib
opencv_flann243.lib
opencv_gpu243.lib
字符集设置:如果编译过程中出现如下错误:不能将参数 1 从“_TCHAR *”转换为“const std::string &”原因如下: 无法从“_TCHAR *”转换为“const std::string”。请字符集设置为“使用多字节字符集”。
最后指定命令后参数:方法见附件。这样就可以不用在windows命令行下输入参数了,方便调试,但是要注意,图片必须放在你所建立的工程目录下(和.cpp以及.h文件同一目录)。否则就要加上相应的路径。如果参数多于1个,请以空格分开。
支持所有参数设置完成,开始编译运行吧。如果Visual Studio无问题的话,按照以上按部就班操作,每个范例均可以正常运行。
学习OPENCV困难吗? 一般需要多久? 有没好的电子书推荐一本
内容来自用户:sandy154525105
Opencv资料----ByMocoSun2010.12.19
1.简介OpenCV的全称是:OpenSourceComputerVisionLibrary,Intel公司支持的开源计算机视
觉库,采用c/c++编写,可以运行在linux/windows/mac等操作系统上。Opencv还提供了python、ruby、matlab以及其他语言的接口。
其目标是构建一个简单易用的计算机视觉框架,以帮助开发人员更便捷地设计更复杂的计算机视觉相关应用程序。Opencv包含的函数有500多个,覆盖了如工厂产品检测、医学成像、信息安全、用户界面、摄像机标定、立体视觉和机器人等,具体将在下面介绍。Opencv使用宽松的BSD开源协议,在遵守协议的情况下,允许生成商业产品,不必开发源代码。
Opencv利用了IPP(高性能多媒体函数库)高度手工优化,且在inter处理器上有更高的运行速度。最新版本:2.2,项目网址其他版本的OpenCV:opencv-extension-library:扩展,,另一个扩展,版opencv,底层还是c,的结构:
cv图像处理和视觉算法
MLL统计分类器
HighGUI图像和视频输入/出
CXCORE
基本结构和算法,XML支持,绘图函数
2.Opencv例子
2.1显示图像
Opencv可以读取各种类型的图像,包括BMP,DIB,JPEG,JPE,PNG,PBM,PGM,
PPM,SR,RAS,TIFF等
opencv 好学吗?
opencv只是个工具,它实现了计算机视觉领域很多很实用的算法。学习opencv之前请先对计算机视觉的基础知识进行学习,建议至少学习一本计算机视觉的理论书籍和一本图像处理的理论书籍
有了以上基本的理论基础,再学习opencv,教程可以看,但更多的应该是看参考文档。opencv的参考文档是非常完善的,有看不懂的再到网上搜索,要抓住这个函数有什么用,在什么情况下用,输入输出分别是什么这条主线来学习。
另外关于opencv1.0和2.0以上版本
我建议新手从1.0入手,2.0大量使用mat,对于新手来说有些函数使用方法难以理解。
其实1.0版本已经足够强大了,我做过很多项目,都是用的1.0,对于新手来说,1.0已经足够你去啃上一年。当然2.0以上版本又多了很多算法,但其实很多算法很少用。所以从1.0入手是个不错的选择