您好,欢迎访问三七文档
学习OpenCV.doc第1页共110页1出版前言...........................VI译者序..............................XI写在前面的话..................XIII前言................................XV第1章概述......................1什么是OpenCV..................1OpenCV的应用领域..........1什么是计算机视觉..............2OpenCV的起源..................6下载和安装OpenCV..........8通过SVN获取最新的OpenCV代码...........11更多OpenCV文档...........12OpenCV的结构和内容....14移植性..16练习.....16第2章OpenCV入门.....18开始准备............................18初试牛刀——显示图像...19第二个程序——播放AVI视频....................21视频播放控制....................23一个简单的变换................26一个复杂一点的变换........28从摄像机读入数据............30写入AVI视频文件..........31小结.....33练习.....34第3章初探OpenCV.....35OpenCV的基本数据类型35学习OpenCV.doc第2页共110页2CvMat矩阵结构................38IplImage数据结构.............48矩阵和图像操作................54绘图.....91数据存储............................98集成性能基元..................102小结...103练习...103第4章细说HighGUI......106一个可移植的图形工具包............................106创建窗口..........................107载入图像..........................108显示图像..........................110视频的处理......................120ConvertImage函数..........125练习...126第5章图像处理..........128综述...128平滑处理..........................128图像形态学......................134漫水填充算法..................146尺寸调整..........................149图像金字塔......................150阈值化155练习...162第6章图像变换..........165概述...165卷积...165学习OpenCV.doc第3页共110页3梯度和Sobel导数...........169拉普拉斯变换..................172Canny算子......................173霍夫变换..........................175重映射183拉伸、收缩、扭曲和旋转............................185CartToPolar与PolarToCart...........................196LogPolar...........................197离散傅里叶变换(DFT)...200离散余弦变换(DCT).......205积分图像..........................206距离变换..........................208直方图均衡化..................211练习...213第7章直方图与匹配...216直方图的基本数据结构..219访问直方图......................221直方图的基本操作..........223一些更复杂的策略..........231练习...244第8章轮廓..................246内存...246序列...248查找轮廓..........................259Freeman链码...................266轮廓例子..........................268另一个轮廓例子..............270深入分析轮廓..................271学习OpenCV.doc第4页共110页4轮廓的匹配......................279练习...290第9章图像局部与分割.................293局部与分割......................293背景减除..........................294分水岭算法......................328用Inpainting修补图像....329均值漂移分割..................331Delaunay三角剖分和Voronoi划分...........333练习...347第10章跟踪与运动.....350跟踪基础..........................350寻找角点..........................351亚像素级角点..................353不变特征..........................355光流...356mean-shift和camshift跟踪...........................371运动模板..........................376预估器383condensation算法............399练习...403第11章摄像机模型与标定...........406摄像机模型......................407标定...414矫正...430一次完成标定..................432罗德里格斯变换..............437练习...438学习OpenCV.doc第5页共110页5第12章投影与三维视觉...............441投影...441仿射变换和透视变换......443POSIT:3D姿态估计....449立体成像..........................452来自运动的结构..............493二维和三维下的直线拟合............................494练习...498第13章机器学习........499什么是机器学习..............499OpenCV机器学习算法..502Mahalanobis距离............516K均值519朴素贝叶斯分类..............524二叉决策树......................527boosting............................537随机森林..........................543人脸识别和Haar分类器549其他机器学习算法..........559练习...560第14章OpenCV的未来...............564过去与未来......................564发展方向..........................565OpenCV与艺术家..........568后记...570参考文献.........................571索引...............................586关于作者和译者..............599学习OpenCV.doc第6页共110页6封面图片.........................601什么是OpenCV第1章概述OpenCV是一个开源(参见)的计算机视觉库,项目主页为。OpenCV采用C/C++语言编写,可以运行在Linux/Windows/Mac等操作系统上。OpenCV还提供了Python、Ruby、MATLAB以及其他语言的接口。OpenCV的设计目标是执行速度尽量快,主要关注实时应用。它采用优化的C代码编写,能够充分利用多核处理器的优势。如果是希望在Intel平台上得到更快的处理速度,可以购买Intel的高性能多媒体函数库IPP(IntegratedPerformancePrimitives)。IPP库包含许多从底层优化的函数,这些函数涵盖多个应用领域。如果系统已经安装了IPP库,OpenCV会在运行时自动使用相应的IPP库。OpenCV的一个目标是构建一个简单易用的计算机视觉框架,以帮助开发人员更便捷地设计更复杂的计算机视觉相关应用程序。OpenCV包含的函数有500多个,覆盖了计算机视觉的许多应用领域,如工厂产品检测、医学成像、信息安全、用户界面、摄像机标定、立体视觉和机器人等。因为计算机视觉和机器学习密切相关,所以OpenCV还提供了MLL(MachineLearningLibrary)机器学习库。该机器学习库侧重于统计方面的模式识别和聚类(clustering)。MLL除了用在视觉相关的任务中,还可以方便地应用于其他的机器学习场合。OpenCV的应用领域大多数计算机科学家和程序员已经意识到计算机视觉的重要作用。但是很少有人知道计算机视觉的所有应用。例如,大多数人或多或少地知道计算机视觉可用在监控方面,也知道视觉被越来越多地用在网络图像和视频方面。少数人也了解计算机视觉在游戏界面方面的应用。但是很少有人了解大多数航空和街道地图图像(如Google的StreetView)也大量使用计算机定标和图像拼接技术。一些人知道安全监控、无人飞行器或生物医学分析等方面的应用,但是很少人知道机器视觉是多么广泛地被用在工厂中:差不多所有的大规模制造的产品都在流水线上的某个环节上自动使用视觉检测。【1~2】OpenCV所有的开放源代码协议允许你使用OpenCV的全部代码或者OpenCV的部分代码生成商业产品。使用了OpenCV后,你不必对公众开放自己的源代码或改善后的算法,虽然我们非常希望你能够开放源代码。许多公司(IBM,Microsoft,Intel,SONY,Siemens和Google等其他公司)和研究单位(例如斯坦福大学、MIT、CMU、剑桥大学和INRIA)中的人都广泛使用OpenCV,其部分原因是OpenCV采用了这个宽松的协议。Yahoogroups里有一个OpenCV论坛(),用户可以在此发帖提问和讨论;该论坛大约有20000个会员。OpenCV在全世界广受欢迎,在中国、日本、俄罗斯、欧洲和以色列都有庞大的用户群。学习OpenCV.doc第7页共110页7自从OpenCV在1999年1月发布alpha版本开始,它就被广泛用在许多应用领域、产品和研究成果中。相关应用包括卫星地图和电子地图的拼接,扫描图像的对齐,医学图像去噪(消噪或滤波),图像中的物体分析,安全和入侵检测系统,自动监视和安全系统,制造业中的产品质量检测系统,摄像机标定,军事应用,无人飞行器,无人汽车和无人水下机器人。将视觉识别技术用在声谱图上,OpenCV可以进行声音和音乐识别。在斯坦福大学的Stanley机器人项目中,OpenCV是其视觉系统的关键部分。Stanle
本文标题:OpenCV
链接地址:https://www.777doc.com/doc-4208393 .html