机器学习:使用OpenCV和Python进行智能图像处理
基本信息


编辑推荐
OpenCV是一个综合了经典和先进计算机视觉、机器学习算法的开源库。通过与Python Anaconda版本结合,你就可以获取你所需要的所有开源计算库。
本书首先介绍分类和回归等统计学习的基本概念,然后详细讲解决策树、支持向量机和贝叶斯网络等算法,以及如何把它们与其他OpenCV函数结合,*后还会介绍时下热门主题——深度学习。通过本书的学习,你将掌握大量实用机器学习技巧,并依据书中提供的代码或从零开发自己的算法,解决实际问题。
通过阅读本书,你将:
·学习并高效使用OpenCV的机器学习模块
·使用Python学习用于计算机视觉领域的深度学习技术
·掌握线性回归和归一化技巧
·对花卉品种、手写数字和行人等物体进行分类
·学习支持向量机、提升决策树和随机森林的高效使用方法
·学习使用神经网络和深度学习解决现实问题
·使用k均值聚类发现数据的隐藏结构
·掌握数据预处理和特征工程
内容简介
计算机书籍
本书是一本基于OpenCV和Python的机器学习实战手册,既详细介绍机器学习及OpenCV相关的基础知识,又通过具体实例展示如何使用OpenCV和Python实现各种机器学习算法,并提供大量示列代码,可以帮助你掌握机器学习实用技巧,解决各种不同的机器学习和图像处理问题。
全书共12章,第1章简要介绍机器学习基础知识,并讲解如何安装OpenCV和Python工具;第2章展示经典的机器学习处理流程及OpenCV和Python工具的使用;第3章讨论监督学习算法,以及如何使用OpenCV实现这些算法;第4章讨论数据表示和特征工程,并介绍OpenCV中提供的用于处理图像数据的常见特征提取技术;第5章展示如何使用OpenCV构建决策树进行医疗诊断;第6章讨论如何使用OpenCV构建支持向量机检测行人;第7章介绍概率论,并展示如何使用贝叶斯学习实现垃圾邮件过滤;第8章讨论一些非监督学习算法;第9章详细讲解如何构建深度神经网络来识别手写数字;第10章讨论如何高效地集成多个算法来提升性能;第11章讨论如何比较不同分类器的结果,选择合适的工具;第12章给出一些处理实际机器学习问题的提示和技巧。
作译者
他还拥有加利福尼亚大学欧文分校计算机科学专业的博士学位、瑞士苏黎世联邦理工学院生物医学专业的硕士学位和电子工程专业的学士学位。当他不“呆头呆脑” 地研究大脑时,他会攀登雪山、参加现场音乐会或者弹钢琴。
目录
序
前言
审校者简介
第1章 品味机器学习 1
1.1 初步了解机器学习 1
1.2 机器学习可以解决的事情 3
1.3 初步了解 Python 4
1.4 初步了解 OpenCV 4
1.5 安装 5
1.5.1 获取本书最新的代码 5
1.5.2 掌握 Python Anaconda 6
1.5.3 在 conda 环境中安装OpenCV 8
1.5.4 验证安装结果 9
1.5.5 一睹 OpenCV ML 模块 11
1.6 总结 11
第2章 使用 OpenCV 和 Python处理数据 12
2.1 理解机器学习流程 12
2.2 使用 OpenCV 和 Python 处理数据 14
2.2.1 创建一个新的 IPython 或 Jupyter 会话 15
前言
机器学习已经不再是一个时髦的词汇,它在我们周围随处可见:保护你的电子邮件、自动在图片上标记朋友、预测你喜欢的电影。作为数据科学的一个子领域,机器学习让电脑可以通过经验来学习:通过收集历史数据来对未来进行预测。
而要被分析的数据是无穷无尽的!目前每天产生的数据量达到了2.5艾字节(约为10亿 GB)。你能相信吗?这些数据足够塞满1000万张蓝光光盘,或者相当于能够持续播放90年的高清视频。为了处理如此庞大的数据,诸如谷歌、亚马逊、微软和脸书这样的公司,投入了大量的人力物力到让我们可以随时随地从机器学习中获益——从你的手机应用扩展到连接着云端的超级计算机的数据平台开发上。
换句话说:现在是时候对机器学习进行投资了。如果你也希望成为机器学习从业人员,那么本书非常适合你!
不过先别急:你的应用并不需要像上面的例子一样规模巨大或者有影响力,才能从机器学习中获益。不积跬步,无以至千里。 因此,本书第一步会通过简单直接的例子,向你介绍统计学习的基础概念,比如分类和回归。如果你已经详细学习了机器学习, 本书将教会你如何学以致用。对了,如果你对这个领域一无所知也没关系——只要你好学即可。
当本书介绍完了所有的基础概念后,将会开始探索各种算法,比如决策树、支持向量机和贝叶斯网络,以及如何把它们与其他 OpenCV 功能结合。在这个过程中,你将会学习如何通过理解数据来理解任务,以及如何构建具有完整功能的机器学习管道。
你的机器学习技能将会随着本书的深入而提高,直到你准备接触这个领域最热的话题:深度学习。结合如何针对任务选择正确工具的训练技巧,我们将确保你可以掌握所有的机器学习基础知识。
在本书的最后部分,你将会准备好面对你自己的机器学习问题,要么基于现有的源代码构建,要么从零开始构建你自己的算法!
本书所涉及的内容
第1章将会简要介绍机器学习不同的子领域,并讲解如何安装 OpenCV 和 Python Anaconda 版本下的其他必要工具。
第2章将展示经典的机器学习处理流程,以及载入处理数据的时机。将会解释训练数据和测试数据之间的区别,以及如何使用 OpenCV 和 Python 载入、存储、处理数据并进行可视化。
第3章将会通过回顾一些核心概念来介绍监督学习的内容,比如分类和回归。你将会学到如何使用 OpenCV 实现一个简单的机器学习算法,如何对数据进行预测,以及如何评估模型。
第4章将会教你如何切身体会一些常见的、著名的机器学习数据集,以及如何从原始数据中提取感兴趣的内容。
第5章将会展示如何使用 OpenCV 构建决策树,以及如何在不同的分类问题和回归问题上使用它。
第6章将会解释如何使用 OpenCV 构建支持向量机,以及如何把它们应用于检测图像中的行人。
第7章将会介绍概率论,并展示如何使用贝叶斯推断来判断邮件是否为垃圾邮件。
第8章将会讨论一些非监督学习算法,比如 k 均值聚类算法和期望最大化算法,并展示如何使用它们从简单、无标签的数据集中提取隐藏的结构信息。
第9章将会把你带到令人激动的深度学习领域。从感知器和多层感知器开始,你将会学习如何构建深度神经网络来对 MNIST 数据集中的手写数字进行识别。
第10章将展示如何高效地集成多个算法,以克服单个学习器的弱点,让预测结果更加准确可靠。
第11章将会介绍模型选择的概念,帮助你针对手上的任务,从不同的机器学习算法中,选择合适的工具。
媒体评论
本书首先介绍分类和回归等统计学习的基本概念,然后详细讲解决策树、支持向量机和贝叶斯网络等算法,以及如何把它们与其他OpenCV函数结合,最后还会介绍时下热门主题——深度学习。通过本书的学习,你将掌握大量实用机器学习技巧,并依据书中提供的代码或从零开发自己的算法,解决实际问题。
通过阅读本书,你将:
·学习并高效使用OpenCV的机器学习模块
·使用Python学习用于计算机视觉领域的深度学习技术
·掌握线性回归和归一化技巧
·对花卉品种、手写数字和行人等物体进行分类
·学习支持向量机、提升决策树和随机森林的高效使用方法
·学习使用神经网络和深度学习解决现实问题
·使用k均值聚类发现数据的隐藏结构
·掌握数据预处理和特征工程