发表于2024-11-21
掌握在Android平台实现计算机视觉算法的艺术,开发稳健、高效的应用!
◎理解如何利用OpenCV处理图像
◎利用多种高水准的特征匹配算法在图像和视频中检测特定目标,比如SIFT、SURF和ORB
◎执行图像变换,例如改变颜色、空间、缩放,以及应用高斯模糊等滤波器
◎用移动电话的摄像头与现实世界交互
◎在OpenCV Android编程当中探索人脸检测、目标检测和图像拼接
◎利用机器学习算法构建更智能的应用
◎学会调试程序,并理解数据的内部存储方式,以便创造*优的定制算法
《深入OpenCV Android应用开发》以在Android 平台上开发OpenCV 应用为重点,详细介绍了计算机视觉技术的理论及其在移动平台的应用。《深入OpenCV Android应用开发》由浅入深,囊括了从基本的开发环境部署,到基础的图像处理算法,再到目标检测、人脸检测、目标追踪、图像拼接等高级图像分析技术,以及用于图像分类的机器学习算法等各方面的知识。
《深入OpenCV Android应用开发》虽然篇幅不多,但内容十分丰富,从理论到实践,从精辟的数学公式到翔实的源代码,从系统的算法解释到实用的编程技巧,完全能够满足读者从入门到进阶的求知需要。《深入OpenCV Android应用开发》适合于有一定Java 和Android 开发基础,并对计算机视觉技术感兴趣的入门读者,亦可作为从事Android 图像编程的开发人员,以及熟悉OpenCV 开发并有意一试身手的编程爱好者的参考手册。
Salil Kapur,Microsoft 软件工程师,在位于彼拉尼(Pilani)的博拉理工学院(BirlaInstitute of Technology and Science)获得计算机科学专业学士学位。
他对编程充满热情,并满怀激情不断尝试新技术。他的兴趣领域是计算机视觉、网络和可扩展系统。他也是一位开源爱好者,对诸如SimpleCV、BinPy 和Krita 等库都有所贡献。
在工作之余,他把大部分时间都花在Quora 和Hacker News 上。他爱好篮球和极限飞盘。他的联系方式是salilkapur93@gmail.com。
Nisarg Thakkar,软件开发者,可以称得上是技术狂热者。他主要用C++和Java 编程,对Android 应用开发和基于OpenCV 的计算机视觉应用开发有着丰富的经验。他对OpenCV项目也做出了贡献,并且在闲暇之时参与其开发工作。他的兴趣领域是立体视觉、虚拟现实,还有将Android 平台用于非商业性项目,以帮助无法承担传统解决方案的开发者。
在大学期间,他曾是移动应用俱乐部的Subcoordinator,也是两个创业项目的共同发起人。这两个项目都是他与朋友们合作开发的,其一为宾馆开发Android 应用,另一项目至今仍致力于为Android 平台开发更优秀的联系人管理应用。
Nisarg Thakkar 目前就读于彼拉尼的博拉理工学院K. K. Birla Goa 校区,预计于2016年5 月获得计算机科学专业荣誉工学学位。他的联系方式是nisargtha@gmail.com。
岳翰,网名John Hany,现居成都,计算机图形学研究者,技术博客博主。他对编程充满热情,总是很兴奋地尝试新技术。他的兴趣领域是计算机视觉、网络和可扩展系统。
目录
1 为图像添加效果 1
入门 1
部署OpenCV 2
在OpenCV中存储图像 4
OpenCV中的线性滤波器 5
均值模糊方法 7
高斯模糊方法 13
中值模糊方法 14
创建自定义核 16
形态学运算 17
阈值化 20
自适应阈值 21
小结 22
2 检测图像的基本特征 23
创建应用 23
边缘和角点检测 28
高斯差分技术 28
Canny边缘检测器 31
Sobel算子 33
Harris角点检测 36
霍夫变换 37
霍夫直线 38
霍夫圆 40
轮廓 41
项目――检测图像中的数独 43
小结 45
3 检测目标 47
特征是什么? 47
尺度不变特征变换 49
理解SIFT的原理 49
OpenCV中的SIFT 58
匹配特征与检测目标 60
暴力匹配器 61
基于FLANN的匹配器 61
匹配点 62
检测目标 66
加速稳健特征 66
SURF检测器 67
SURF描述子 68
OpenCV中的SURF 70
ORB 71
oFAST:FAST关键点定向 72
rBRIEF:旋转可知的BRIEF 73
OpenCV中的ORB 75
BRISK 75
尺度空间关键点检测 76
关键点描述 77
OpenCV中的BRISK 79
FREAK 80
视网膜采样模式 80
由粗到精的描述子 80
跳视搜索 81
方向 81
OpenCV中的FREAK 81
小结 82
4 深入目标检测:级联分类器 83
级联分类器简介 83
Haar级联分类器 84
LBP级联分类器 85
用级联分类器检测人脸 86
HOG描述子 94
项目――快乐相机 97
小结 98
5 追踪视频中的目标 99
光流法 99
Horn?Schunck方法 100
Lucas?Kanade方法 101
在Android上查看光流场 104
图像金字塔 110
高斯金字塔 111
拉普拉斯金字塔 113
基本的二维变换 120
全局运动估计 121
Kanade-Lucas-Tomasi追踪器 124
查看OpenCV中的KLT追踪器 124
小结 126
6 利用图像对齐和拼接 127
图像拼接 127
特征检测和匹配 128
图像匹配 129
光束法平差 131
自动全景校直 132
增益补偿 133
多频段融合 134
用OpenCV进行图像拼接 134
小结 145
7 OpenCV机器学习使应用焕发生机 147
光学字符辨识 147
k-最近邻算法用于OCR 148
支持向量机用于OCR 158
求解数独 160
识别数独中的数字 160
小结 162
8 疑难解答和最佳实践 163
错误排除 163
权限错误 163
用Logcat调试代码 166
最佳实践 167
在Android中操纵图像 168
在多个Activity之间操纵数据 170
小结 172
9 开发一个文档扫描应用 173
让我们开始吧 174
算法 176
在Android上的实现 177
小结 188
前言
本书能立刻为你在Android 平台上使用OpenCV 助一臂之力。书中既从概念上阐述了多种计算机视觉算法,也介绍了这些算法在Android 平台上的实现。如果你希望在现有的或新开发的Android 应用中实现计算机视觉模块,那么本书正是一份宝贵的资料。
本书内容安排
第1 章 为图像添加效果。本章介绍在计算机视觉应用中广泛使用的一些基础的预处理算法。同时,本章也会说明如何将OpenCV 整合到现有项目中。
第2 章 检测图像的基本特征。本章讲解图像基本特征的检测,比如边缘、角点、直线和圆等。
第3 章 检测目标。本章进一步探讨特征检测,即利用更复杂的算法来检测和描述图像的特征,以保证能与其他目标的特征唯一匹配。
第4 章 深入目标检测:级联分类器。本章讲解对更具一般性目标的检测,比如在图像和视频中检测人脸或眼睛。
第5 章 追踪视频中的目标。本章介绍一种运动检测器——光流法的概念,并利用Lucas-Kanade-Tomasi 追踪器在视频中追踪目标。
第6 章 利用图像对齐和拼接。本章介绍图像对齐和图像拼接的基本概念,并以此合成全景图像。
第7 章 OpenCV 机器学习使应用焕发生机。本章讲解如何在计算机视觉应用中利用机器学习。在这一章中,我们会了解一些常用的机器学习算法,以及它们在Android 上的应用。
第8 章 疑难解答和最佳实践。本章列举一些开发者在开发应用过程中容易遇到的错误和问题,同时也介绍一些提高应用效率的优秀经验。
第9 章 开发一个文档扫描应用。本章利用在前面章节中介绍的一些算法构建一个完整的框架,使其无论以何种角度拍摄图像都能扫描文档。
阅读本书需要什么
本书涉及的内容要求机器至少有1GB 的内存。目前,Windows、OS X 和Linux 操作系统都支持Android 开发。
本书的读者对象
如果你是一位Java 与Android 开发者,并且希望通过学习OpenCV Android 应用编程的新特性来提升自己的能力,那么本书就是为你量身打造的!
约定
在本书中,你会发现不同的信息呈现不同的格式。这里我们举例说明这些格式,并解释它们的含义。
正文中的代码、数据库表名、文件夹名、文件名、文件扩展名、文件路径、伪URL、用户输入和Twitter 句柄等都采用以下格式:
“创建一个名为Application.mk 的文件,并将以下代码复制到该文件内。”代码块是这样安排的:
<user-permission android:name="android.permission.CAMERA"/>
<user-feature android:name="android.hardware.camera"
android:required="false"/>
<user-feature android:name="android.hardware.camera.autofocus"
android:required="false"/>
<user-feature android:name="android.hardware.camera.front"
android:required="false"/>
<user-feature android:name="android.hardware.camera.
front.autofocus" android:required="false"/>
新术语和重要词汇以黑体显示。
警告或重要的事项以这种方式表示。
提示和技巧像这样表示。
下载本书的彩色图片
我们另外提供了一个PDF 文件,该文件中包含了本书用到的截屏和图表的彩色版本。彩色图片有助于你更好地理解输出结果所产生的变化。PDF 文件可以在这里下载:https://www.packtpub.com/sites/default/files/downloads/8204OS_ImageBundle.pdf。
下载示例代码
你可以从http://www.broadview.com.cn 的“下载专区”,下载所有已购买的博文视点书籍的示例代码文件1。
勘误表
虽然我们已经尽力谨慎地确保内容的准确性,但错误仍然存在。如果你发现了书中的错误,包括正文和代码中的错误,请告诉我们,我们会非常感激。这样,你不仅帮助了其他读者,也帮助我们改进后续的出版。如发现任何勘误,可以在博文视点网站相应图书的页面提交勘误信息。一旦你找到的错误被证实,你提交的信息就会被接受,我们的网站也会发布这些勘误信息。你可以随时浏览图书页面,查看已发布的勘误信息。
深入OpenCV Android应用开发 下载 mobi pdf epub txt 电子书 格式 2024
深入OpenCV Android应用开发 下载 mobi epub pdf 电子书书挺好,快递态度也挺好。除了速度,还算完美的一次购物。
评分不错不错,挺好!!
评分 评分满意,满意,满意!!!
评分很好,真的不错,有时间细读。
评分 评分不错 快递很给力 很满意的一次
评分这本书很不错
评分专业知识很多,有收获。
深入OpenCV Android应用开发 mobi epub pdf txt 电子书 格式下载 2024