标签
内容简介
本书是面向 Android 平台计算机视觉应用的实战型技术书,作者贾志刚长期从事图形图像应用开发,全书围绕 OpenCV 在 Android 上的工程落地展开,共分两部分、十章。 第一部分为「OpenCV 图像处理系统学习篇」(第 1~7 章),从框架与环境讲起:介绍 OpenCV 的发展、模块划分与 Android SDK,演示开发环境搭建、构建演示 App 以及拍照与图像选择;随后讲解 Mat 与 Bitmap 对象的创建、保存和相互转换,Mat 像素读写、通道与均值方差计算、算术运算与亮度对比度调整、加权叠加;再进入图像操作层面,涵盖模糊、统计排序滤波、边缘保留滤波、自定义滤波、形态学操作与阈值化;接着是梯度计算、拉普拉斯算子、Canny 边缘检测、霍夫直线与圆检测、轮廓发现与分析、图像直方图、模板匹配等基本特征检测内容;第 6 章讲解 Harris、Shi-Tomasi 角点检测,SURF 与 SIFT 特征检测,Feature2D 中的检测器与描述子,用特征匹配查找已知对象,以及级联分类器人脸检测;第 7 章介绍相机使用,包括 JavaCameraView、横竖屏显示、预览帧处理和在预览帧中做人脸检测。 第二部分为「OpenCV4Android 应用实战」(第 8~10 章),以三个完整案例收尾:OCR 识别(结合 Tesseract 识别证件号码,并通过训练数据与图像预处理提升识别率)、人脸美颜(积分图、局部均方差滤波、遮罩生成、高斯权重融合与边缘提升)以及人眼实时跟踪与渲染(人脸检测跟踪、眼睛候选区、眼睛检测、黑眼球定位与渲染优化)。书中强调算法流程设计、API 组合使用、性能与内存控制以及 NDK 开发技巧,适合已有一定 Android 基础、希望把视觉能力真正做进 App 的开发者边学边练。
编辑推荐
市面上把 OpenCV 讲清楚的书不少,把 Android 讲清楚的书更多,但按「Android 工程怎么真的跑起 OpenCV」来组织的不多。这本 223 页的实战书价值就在这里:它不铺陈数学推导,而是从 SDK 下载、环境搭建、构建演示 App 一路讲到你亲手做出可演示的功能模块。 结构上可谓「先打地基,再盖房子」。前七章把 Mat 与 Bitmap 的转换、像素操作、滤波、形态学、边缘检测、特征检测与匹配、相机预览帧处理逐层铺开——这些恰恰是新手最容易卡住、老手最常翻回去查的部分;后三章直接给出 OCR 识别、人脸美颜、人眼实时跟踪三个完整案例,且都不是玩具级 demo:证件号码识别涉及区域定位、模板匹配与 Tesseract 训练数据;美颜涉及积分图、局部均方差滤波、遮罩与高斯权重融合;眼睛跟踪则落到黑眼球定位与渲染优化。 作者贾志刚具备多年 Java 图形图像开发与讲学经验,行文偏工程口吻,Code 与思路同时给,并反复提醒性能与内存问题、何时该走 NDK、多次 JNI 调用的代价——这类经验很难从 API 文档里读到。书末还留有可延伸的视频课程线索,方便读完继续进阶。适合有一定 Android 基础、想在应用里落地视觉功能的工程师。
适合谁读
适合
- 已有 Android 开发基础,想为 App 增加图像识别、人脸处理功能的工程师
- 正在做毕业设计或技术项目,需要完整视觉案例流程与代码思路的学生
- 习惯「边写代码边学」、希望少读公式多动手的 OpenCV 入门者
- 想了解如何把 C++ 视觉算法通过 NDK 接入 Android 的开发者
不适合
- 完全没有 Java 和 Android 基础、需要先补语言与四大组件的零基础读者
- 期望系统学习计算机视觉数学原理与算法推导的研究型读者
- 寻找最新版 OpenCV 4.x/Kotlin/Compose 现代移动端开发实践的人
阅读建议
- 先照第 1 章的步骤把 OpenCV Android SDK 环境跑通并成功构建演示 App,再开始后续章节。
- 阅读时对照代码实践:Mat 与 Bitmap 的转换、像素操作等章节建议亲手写一遍,避免只读不练。
- 进入第 8~10 章前先确定一个自己的小目标(如证件识别或美颜),带着需求读案例,效果更好。
- 注意书中版本年代较早(2018 年),SIFT、SURF 等在新版 OpenCV 中位置有变化,请对照所用版本的 API 文档调试。
出版社简介
机械工业出版社
中国 · 成立于 1950 年
机械工业出版社(China Machine Press)在科技与专业出版之外,库内图书还体现出对心理学、计算机、管理、财经与社科等方向的持续关注。心理学方面收入荣格作品及分析心理学导论,并涉及压力与健康、成瘾与疗愈等应用议题;计算机领域有《计算机程序的构造和解释(JavaScript版)》;管理与财经类包括《管理行为(原书第4版)》《不平等的代价(珍藏版)》《这次不一样:八百年金融危机史(纪念版)》;科学哲学与科学史方面则有《世界观(原书第3版)》。相关作者资源涵盖C.G.荣格、威廉·麦圭尔、索努·沙姆达萨尼、加博尔·马泰等。公开资料有限,以上仅据库内图书归纳其出版面貌。
目录
- 前言
- 第一部分 OpenCV图像处理系统学习篇
- 第1章 OpenCV Android开发框架(1.1 OpenCV是什么 1.2 开发环境搭建 1.3 构建演示APP 1.4 拍照与图像选择 1.5 小结)
- 第2章 Mat与Bitmap对象(2.1 Mat对象 2.2 Android中的Bitmap对象 2.3 基础形状绘制与填充 2.4 Mat与Bitmap的使用与转换 2.5 小结)
- 第3章 Mat像素操作(3.1 像素读写 3.2 图像通道与均值方差计算 3.3 算术操作与调整图像的亮度和对比度 3.4 基于权重的图像叠加 3.5 Mat的其他各种像素操作 3.6 小结)
- 第4章 图像操作(4.1 模糊 4.2 统计排序滤波 4.3 边缘保留滤波 4.4 自定义滤波 4.5 形态学操作 4.6 阈值化与阈值 4.7 小结)
- 第5章 基本特征检测(5.1 梯度计算 5.2 拉普拉斯算子 5.3 Canny边缘检测 5.4 霍夫直线检测 5.5 霍夫圆检测 5.6 轮廓发现与绘制 5.7 轮廓分析 5.8 图像直方图 5.9 模板匹配 5.10 小结)
- 第6章 特征检测与匹配(6.1 Harris角点检测 6.2 Shi-Tomasi角点检测 6.3 SURF特征检测 6.4 SIFT特征检测 6.5 Feature2D中的检测器与描述子 6.6 特征匹配查找已知对象 6.7 级联分类器与人脸检测 6.8 小结)
- 第7章 相机使用(7.1 使用JavaCameraView 7.2 横屏与竖屏显示 7.3 相机预览帧图像处理 7.4 在预览帧中实现人脸检测 7.5 小结)
- 第二部分 OpenCV4Android应用实战
- 第8章 OCR识别(8.1 什么是OCR 8.2 开源OCR框架Tesseract 8.3 识别身份证号码 8.4 提高OCR识别率 8.5 小结)
- 第9章 人脸美颜(9.1 积分图计算 9.2 局部均方差滤波 9.3 遮罩层生成 9.4 高斯权重融合 9.5 边缘提升 9.6 美颜实现 9.7 小结)
- 第10章 人眼实时跟踪与渲染(10.1 界面显示与相机预览 10.2 人脸检测与跟踪 10.3 寻找眼睛候选区域 10.4 眼睛检测 10.5 黑眼球定位 10.6 渲染与优化 10.7 小结)
常见问题
这本书需要什么前置基础?
需要基本的 Java 语法和 Android 开发经验(能建工程、会 Activity 与界面布局),以及基础 C/C++ 读代码能力,因为案例中会涉及 NDK 层的实现。
书里的代码是 Java 还是 C++?
以 Java 层调用 OpenCV 的 Java API 为主线,同时在性能敏感的环节(如美颜、预览帧处理)引入 NDK 方式编写 C++ 代码,两者结合。
书中的实案例有哪些?
共三个:结合 Tesseract 的 OCR 证件号码识别、基于积分图与滤波的人脸美颜、以及人眼实时跟踪与渲染,均包含算法流程设计与编码实现步骤。
2018 年的书,现在学还适用吗?
图像处理的核心概念(Mat、滤波、边缘检测、特征匹配)并不过时,仍具参考价值;但 SDK 配置、Gradle 与部分 API 已更新,需对照当前 OpenCV 与 Android 文档调整。
这本书适合当作 OpenCV 入门书吗?
适合以 Android 应用为目标的学习者作为入门+实战用书;若想系统学视觉理论,建议搭配一本偏原理的教材,本书更侧重工程实践与 API 使用。
读者评论
查询本书
本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。
作者简介
贾志刚
作者 · 中国
贾志刚,中国作家、记者与体育评论家,毕业于大连理工大学,曾任深圳报业集团记者、广东网络作家协会副主席。他长期致力于历史普及写作,代表作《说春秋》以多卷本形式梳理春秋时期的诸侯兴衰与人物命运,其中涉及孔子世家、圣贤本色、吴越兴亡、晋楚争雄、秦晋恩怨、齐楚崛起及天下大乱等主题,兼具叙事性与可读性。其作品常见于历史读物分类,亦旁及东方哲学与法律等题材,并曾担任央视《百家讲坛》主讲嘉宾,现为旅美华人作家。公开资料有限,生卒年未详,库内收录其作品十二种。