本教程由小白学视觉团队 译
关注微信公众号“小白学视觉”获取更多计算机视觉学习资料
小白学视觉是2018年5月由哈尔滨工业大学博士生创办的技术类公众号,主要面向对计算机视觉、图像处理感兴趣的爱好者,分享计算机视觉学习资源、学习过程总结、前沿技术等内容,搭建计算机视觉、图像处理学习和交流的平台。
小白学视觉分享内容包括: OpenCV入门 SLAM学习 优质书籍介绍 优质课程分享 编程技巧 论文解读 前沿方向介绍 招聘内推 招聘信息
- 引言
- 第一章 Contrib Modules介绍与安装
- 第二章 ArUco标记检测(aruco模块)
- 2.1 ArUco标记检测
- 2.2 ArUco标记板的检测
- 2.3 ChArUco角的检测
- 2.4 菱形标记检测
- 2.5 使用ArUco和ChArUco进行相机标定
- 2.6 Aruco模块常见问题
- 第三章 背景分割(bgsegm模块)
- 3.1 背景分割
- 第四章 生物视觉 (bioinspired模块)
- 4.1 视网膜视觉和真实世界的视觉
- 4.2 处理引起视错觉的图像
- 第五章 相机标定(ccalib模块)
- 第六章 3D物体分类和位姿估计(cnn_3dobj模块)
- 6.1 使用Icosphere训练数据
- 6.2 分类
- 6.3 分析训练模型
- 第七章 可视化调试(cvv模块)
- 7.1 计算机视觉应用的交互式可视化调试
- 第八章 CNNs目标检测(dnn_objdetect模块)
- 8.1 使用CNNs进行目标检测
- 第九章 图像超分(dnn_superresm模块)
- 第十章 人脸识别(face模块)
- 10.1 OpenCV中的人脸识别
- 10.2 图像中的人脸标志检测
- 10.3 训练面部标志探测器
- 10.4 视频中的人脸标志检测
- 10.5 使用人脸标志检测进行人脸交换
- 10.6 向人脸标志API添加新算法
- 10.7 使用人脸标志 API
- 10.8 使用人脸标志AMM
- 第十一章 模糊图像处理(fuzzy模块)
- 11.1 模糊变换理论
- 11.2 通过模糊变换进行图像修复
- 11.3 使用模糊变换滤波
- 第十二章 分层数据格式的输入与输出(hdf)
- 12.1 建立群组
- 12.2 创建、写入和读取数据集
- 12.3 读写属性
- 第十三章 线特征(line_descriptor模块)
- 13.1 线特征教程
- 第十四章 相位展开(phase_unwrapping)
- 14.1 二维相位图展开
- 第十五章 SFM运动恢复结构 (sfm模块)
- 第十六章 立体准稠密匹配(stereo模块)
- 第十七章 结构光教程(structured_light模块)
- 第十八章 目标跟踪(tracking模块)
- 18.1 使用MultiTracker跟踪
- 18.2 OpenCV跟踪器介绍
- 18.3 自定义CN跟踪器
- 第十九章 立体可视化(viz模块)
- 第二十章 扩展图像处理(ximgproc模块)
- 20.1 视差图滤波
- 20.2 用于快速边缘检测的结构化森
- 20.3 训练结构化森林
- 第二十一章 对照片进行处理(xphoto模块)
- 21.1 图像修复
- 21.2 油画效果
- 21.3 训练基于学习的白平衡算法
为什么翻译此书?
小白
2020年2月8日
Contrib Modules是OpenCV的扩展模块,包含了很多用于实现特定算法的子模块。由于计算机视觉和图像处理算法研究的发展,有很多优秀的算法无法很快集成到基础库中(就是我们平时最常使用的OpenCV库),这样将其单独编写独立的模块不仅有利于新算法的推广和维护,而且也可以避免随着版本的更新基础库中的内容越来越冗余,避免所占内存越来越大,方便使用。此外,由于由部分算法被专利保护,使用扩展模块的形式也避免了很多不必要的纠纷,例如大名鼎鼎的SIFT算法就有专利保护。
近些年来,人工智能快速发展,众多效果好、速度快的计算机视觉算法被提出。然而OpenCV基础库中的增加的算法却有限,造成了一种OpenCV只适合基础的算法学习的错觉。实际上,OpenCV每个版本的更新都带来众多最新的算法,只是很多内容被放置在了Contrib Modules扩展模块中。 目前市面上很多关于OpenCV学习的书籍都是在介绍如何使用OpenCV的基础库,却很少有提及扩展模块。虽然书籍的面向群体不同,但是当读者完成OpenCV入门之后,却鲜有书籍能够帮助读者进一步提高,因此读者十分需要一本介绍OpenCV扩展模块的进阶书籍。本书结合官网内容,对OpenCV扩展模块的使用进行整理,更够帮助有一定图像处理基础的读者在OpenCV的使用上更进一步。
本书是OpenCV学习的进阶版,建议结合《OpenCV 4计算机视觉编程实战》进行配套学习。
本书面向对计算机视觉和图像处理感兴趣并且使用OpenCV进行学术研究的读者,建议读者对OpenCV具有一定的了解,也可以建议结合《OpenCV 4计算机视觉编程实战》进行配套学习。本书教程为C++语言,因此本书主要面向使用C++语言编程的读者。
- 庞家明,测控专业在读本科生。主要负责2.5、2.6节和第5章到第9章的内容。
- 王润泽,圣马家沟男子职业技术学院研究生在读,主要负责2.2、2.3节和第11章到第14章内容。
- 唐佳满,北下关军事基地信号处理研一在读,主要负责2.4节和第17章、第20章和第21章内容。
- 吴鹏飞 珠江环岛工业大学未知环境侦查研究生在读,主要负责第10章内容
- 税科,C++图像处理工程师(天津开发区中环系统电子工程股份有限公司博士后工作站),主要负责第18章和第19章内容。
- 瀚海古月,马家沟大沙河驻地机器人研一在读,主要负责第3章、第15章和第16章内容。
- 赵宏峰 霍尼韦尔航空航天部门软件工程师,主要负责2.1节和第4章内容。
- 小白,小白学视觉公众号博主,主要负责第一章和全书的排版校对。
由于翻译人员的水平和精力有限,在翻译过程中难免会有错误发生,请读者予以理解。如果阅读本文档的过程中发现问题,可以与我们联系,我们会第一时间对内容进行更正。
特殊说明
由于小白还在读书,最近项目进度有些紧,因此近期能够用来整理Github的时间比较少,因此现将已经整理完成的部分公开,供大家交流学习。
完整版电子书pdf已经整理完成,喜欢阅读电子书,和迫切需要完整版朋友可以在小白学视觉微信公众号后台回复扩展模块中文教程获取