作品简介

本书通过具体的编程实践案例,全面系统地讲述了机器学习涉及的核心内容。首先介绍新特性以及安装OpenCV 4构建计算机视觉应用程序。你将探索机器学习的基础知识,学习设计用于图像处理的各种算法。本书将逐步介绍有监督学习和无监督学习。你将获得使用Python中的scikit-learn开发各种机器学习应用程序的实践经验。后续章节将重点介绍决策树、支持向量机、贝叶斯学习等各种机器学习算法,以及如何将这些算法应用于目标检测等计算机视觉操作。然后,你将深入研究深度学习和集成学习,并探索它们在现实世界中的应用。最后,你将学习用于构建图像处理系统的的Intel OpenVINO。

阿迪蒂亚·夏尔马(Aditya Sharma)

是罗伯特·博世(Robert Bosch)公司的一名高级工程师,致力于解决真实世界的自动计算机视觉问题。曾获得罗伯特·博世公司2019年人工智能编程马拉松的第一名。在印度理工学院,他于2019年的ICIP和2019年的MICCAI上发表了有关深度学习医学成像的论文。在国际信息技术学院,他的工作主要是文档图像超分辨。

他还是一个积极进取的作家,曾为DataCamp和LearnOpenCV撰写过很多有关机器学习和深度学习的文章。他不仅经营着自己的YouTube频道,还在NCVPRIPG会议(2017)以及阿里格尔穆斯林大学(Aligarh Muslim University)的深度学习研讨会上做过演讲。

维什韦什·拉维·什里马利(Vishwesh Ravi Shrimali)

于2018年毕业于彼拉尼博拉理工学院(BITS Pilani)机械工程专业。此后一直在BigVision LLC从事深度学习和计算机视觉方面的工作,还参与了官方OpenCV课程的创建。他对编程和人工智能有着浓厚的兴趣,并将其应用到机械工程项目中。他还在LearnOpenCV上写了多篇有关OpenCV和深度学习的博客。除了撰写博客和做项目,他喜欢散步和弹奏木吉他。

迈克尔·贝耶勒(Michael Beyeler)

是华盛顿大学神经工程和数据科学的博士后研究员,致力于仿生视觉的计算模型研究,以为盲人植入人工视网膜(仿生眼睛),改善盲人的感知体验。他的工作属于神经科学、计算机工程、计算机视觉和机器学习的交叉领域。他还是几个开源软件项目的主要贡献者,并在Python、C/C++、CUDA、MATLAB和Android等方面拥有专业的编程经验。迈克尔在加州大学欧文分校获得计算机科学博士学位,在瑞士苏黎世联邦理工学院获得生物医学工程硕士学位和电子工程学士学位。

作品目录

  • 译者序
  • 前言
  • 作者简介
  • 审校者简介
  • 第一部分 机器学习与OpenCV的基础知识
  • 第1章 机器学习体验
  • 1.1 技术需求
  • 1.2 开始机器学习
  • 1.3 机器学习可以解决的问题
  • 1.4 开始使用Python
  • 1.5 开始使用OpenCV
  • 1.6 安装
  • 1.7 机器学习的应用
  • 1.8 OpenCV 4.0的新功能
  • 1.9 本章小结
  • 第2章 用OpenCV处理数据
  • 2.1 技术需求
  • 2.2 理解机器学习的工作流程
  • 2.3 使用OpenCV和Python处理数据
  • 2.4 本章小结
  • 第3章 监督学习的第一步
  • 3.1 技术需求
  • 3.2 理解监督学习
  • 3.3 使用分类模型预测类标签
  • 3.4 使用回归模型预测连续的结果
  • 3.5 使用逻辑回归分类鸢尾花的种类
  • 3.6 本章小结
  • 第4章 数据表示和特征工程
  • 4.1 技术需求
  • 4.2 理解特征工程
  • 4.3 数据预处理
  • 4.4 理解降维
  • 4.5 类别变量的表示
  • 4.6 文本特征的表示
  • 4.7 图像的表示
  • 4.8 本章小结
  • 第二部分 基于OpenCV的运算
  • 第5章 基于决策树进行医疗诊断
  • 5.1 技术需求
  • 5.2 理解决策树
  • 5.3 使用决策树诊断乳腺癌
  • 5.4 使用决策树进行回归
  • 5.5 本章小结
  • 第6章 利用支持向量机进行行人检测
  • 6.1 技术需求
  • 6.2 理解线性SVM
  • 6.3 处理非线性决策边界
  • 6.4 检测自然场景中的行人
  • 6.5 使用SVM的多类分类
  • 6.6 本章小结
  • 第7章 利用贝叶斯学习实现一个垃圾邮件过滤器
  • 7.1 技术需求
  • 7.2 理解贝叶斯推理
  • 7.3 实现第一个贝叶斯分类器
  • 7.4 使用朴素贝叶斯分类器分类邮件
  • 7.5 本章小结
  • 第8章 利用无监督学习发现隐藏结构
  • 8.1 技术需求
  • 8.2 理解无监督学习
  • 8.3 理解k-均值聚类
  • 8.4 理解最大期望
  • 8.5 使用k-均值压缩颜色空间
  • 8.6 使用k-均值分类手写数字
  • 8.7 将聚类组织为层次树
  • 8.8 本章小结
  • 第三部分 基于OpenCV的高级机器学习
  • 第9章 使用深度学习分类手写数字
  • 9.1 技术需求
  • 9.2 理解McCulloch-Pitts神经元
  • 9.3 理解感知器
  • 9.4 实现第一个感知器
  • 9.5 理解多层感知器
  • 9.6 结识深度学习
  • 9.7 分类手写数字
  • 9.8 本章小结
  • 第10章 集成分类方法
  • 10.1 技术需求
  • 10.2 理解集成方法
  • 10.3 将决策树组合成随机森林
  • 10.4 利用随机森林进行人脸识别
  • 10.5 实现AdaBoost
  • 10.6 把各种模型组合成一个投票分类器
  • 10.7 本章小结
  • 第11章 选择正确的模型与超参数调优
  • 11.1 技术需求
  • 11.2 模型评估
  • 11.3 理解交叉验证
  • 11.4 利用bootstrapping评估鲁棒性
  • 11.5 评估结果的显著性
  • 11.6 基于网格搜索的超参数调优
  • 11.7 利用各种评估指标对模型评分
  • 11.8 将算法链接起来形成管道
  • 11.9 本章小结
  • 第12章 使用基于OpenCV的OpenVINO
  • 12.1 技术需求
  • 12.2 OpenVINO简介
  • 12.3 OpenVINO工具包安装
  • 12.4 交互式人脸检测演示
  • 12.5 使用基于OpenCV的OpenVINO推理引擎
  • 12.6 使用基于OpenCV的OpenVINO模型组
  • 12.7 使用OpenCV和OpenVINO推理引擎进行图像分类
  • 12.8 本章小结
  • 第13章 尾声
  • 13.1 技术需求
  • 13.2 机器学习问题的解决方案
  • 13.3 构建自己的估计器
  • 13.4 接下来要做的工作
  • 13.5 本章小结
展开全部