您当前的位置 : 首页  /  主要产品  /  专著与教材

《机器视觉及深度学习——经典算法与系统搭建》

bookfm2022.jpg


前言 

机器视觉及深度学习是人工智能的主要技术手段,已经广泛应用于各个领域。传统机器视觉技术,一般需要有较深的研发经验,才能进行相关应用项目的开发,处理算法的通用性较差,学习门槛较高。深度学习需要搭建很多神经网络层次结构,一般人不具备搭建深度学习框架的能力,好在有不少大公司和专业机构根据不同的需求设计了一些深度学习框架并对外开放,一般人可以利用这些深度学习框架,实现自己的图像检测目的,学习门槛较低。

在功能方面,传统机器视觉技术更适合精确检测与定位,处理速度快,对硬件处理能力要求不高。深度学习更适合目标分类,需要对大量检测目标样本进行训练,处理量大,自然环境下的检测精度一般在80%左右,需要采用高性能的GPU处理设备提高检测速度。   如果能够融合深度学习和传统机器视觉技术,针对深度学习的检测结果,再通过传统机器视觉技术进行精确检测和定位,就可以大大提高AI技术的效率和精度。

为了让初学者能够通过本书的学习,理解和掌握机器视觉及深度学习的理论和编程实践,本书分上篇和下篇。上篇介绍理论算法,包括机器视觉的经典图像处理算法、深度学习的理论基础和目前深度学习框架。下篇介绍编程环境系统搭建,首先介绍机器视觉图像处理算法及深度学习的编程工具VC++PythonOpenCV;然后利用VC++Python工具,搭建图像处理的工程界面;最后介绍常用的9种深度学习框架获得方法、安装设置、工程创建,以及深度学习工程的编译、训练、评估与部署方法。每一个搭建的工程,都提供一套可下载的源代码例程序,方便读者下载学习。部分例程程序下载网址:www.fubo-tech.com

本书由10位编委会成员共同完成。为了确保初学者能够按教材顺利搭建系统,作者完成编写后,由没有经验的人员根据编写材料试用并提出修改意见。为了完成深度学习框架的搭建,根据需要部分读者需要配置高性能的GPU处理器计算机。

编委会成员的具体分工如下:

  陈兵旗:内容策划,编写第1章 基础知识、第2章 目标提取、第8章平台软件、第9VC++图像处理工程和第10Python图像处理工程。

彧:负责组织实施,全部书稿审阅和定稿。

梁习卉子:编写第3章边缘检测、第4章去噪声处理和第5章几何参数检测。

张亚伟:编写第6章直线检测。

刘星星:编写第7章深度学习框架介绍和第18YOLOv4深度学习工程。

尹彦鑫:编写第11TensorFlow深度学习工程。

胡标:编写第12Keras深度学习工程和第17Theano深度学习工程

苏道:编写第13 PyTorch深度学习工程。

田文斌:编写第14Caffe深度学习工程、第15MXNet深度学习工程和第16CNTK深度学习工程。

陈建:编写第19 PaddlePaddle深度学习工程

 

虽然编委会付出了很大努力,但是在内容结构和文字表述方面难免有不合理的地方,敬请批评指正。

                 主编: 陈兵旗    fbcbq@163.com

                   谭彧      tanyu@cau.edu.cn

                   20223

 

 

编委会

 

  主编:陈兵旗 博士/教授  中国农业大学 fbcbq@163.com   

谭彧 博士/教授  中国农业大学 tanyu@cau.edu.cn

 

编委(按姓氏笔画):

尹彦鑫        博士  北京农业智能装备技术研究中心 yinyx@nercita.org.cn

田文斌        博士  中国农业大学  wenbin.tian@cau.edu.cn

刘星星        博士  中国农业大学  liuxingxing56285@163.com

陈建          博士  中国农业大学  jch@cau.edu.cn  

苏道毕力格    博士  中国农业大学  sudao@cau.edu.cn

张亚伟        博士  中国农业大学  zywcu@cau.edu.cn

胡标          博士  中国农业大学  hubiao_007@163.com

梁习卉子      博士  苏州健雄职业技术学院  liangxihuizi@sina.com




目录

第1章 基础知识

1.1 图像与颜

1.1.1彩色图像

1.1.2灰度图像

1.1.3 颜色变换

1.2 机器视觉

1.2.1机器视觉构成

1.2.2 数字图像处理

1.3 深度学习

1.3.1 基本概念

1.3.2 基本思想

1.3.3 深度学习常用方法

第2章 目标提取

2.1 灰度目标

2.1.1阈值分割

2.1.2自动2值化处理

2.2 彩色目标

2.2.1果树上红色桃子的提取

2.2.2 绿色麦苗的提取

2.3 运动图像2值化处理

2.3.1 帧间差分

2.3.2 背景差分

2.4  C语言函数

List 2.1 二值化处理

List 2.2双阈值二值化处理

List 2.3直方图

List 2.4直方图平滑化

List 2.5大津法二值化处理

第3章 边缘检测

3.1图像边缘

3.2 微分处理

3.2.1一阶微分(梯度运算)

3.2.1二阶微分(拉普拉斯运算)

3.3模板匹配

3.4 C语言函数

List 3.1 一阶微分边缘检测(梯度算子)

List3.2  二阶微分边缘检测(拉普拉斯算子)

List3.3  Prewitt算子边缘检测

List 3.4  二值图像的细线化处理

第4章 去噪声处理

4.1 移动平均

4.2 中值滤波

4.3 二值图像去噪声

4.4 C语言函数

List 4.1移动平均法

List 4.2 中值滤波

List 4.3 腐蚀处理

List 4.4 膨胀处理

第5章 几何参数检测

5.1图像的几何参数

5.2 区域标记

5.3 几何参数检测与提取

5.4 C语言函数

List 5.1 区域标记(加标记)

List5.2 计算图像特征参数

List 5.3 根据圆形度抽出物体

List 5.4复制掩模领域的原始图像

List 5.5 根据面积提取对象物

第6章 直线检测

6.1 传统Hough变换的直线检测

6.2 最小二乘法的直线检测

6.3  C语言函数

List 6.1 传统Hough变换的直线检测

List 6.2最小二乘法的直线检测(基于opencv的c++代码)

第7章 深度学习框架介绍

7.1 TensorFlow

7.1.1 TensorFlow的优势

7.1.2 TensorFlow应用场景

7.1.3 TensorFlow开发环境安装

7.2 Keras

7.2.1 Keras的优势

7.2.2 Keras 应用

7.2.3 Keras与TensorFlow2的关系

7.2.4 Keras的安装

7.3 PyTorch

7.3.1 PyTorch的优势

7.3.2 PyTorch的典型应用

7.3.3 PyTorch和TensorFlow的比较

7.3.4 PyTorch的安装

7.4 其他深度学习框架

7.4.1 Caffe

7.4.2 MXNet

7.4.3 CNTK

7.4.4 Theano

7.4.5 Darknet

7.4.6 PaddlePaddle

第8章 平台软件

8.1 OpenCV

8.1.1 基本功能介绍

8.1.2 获取与安装

8.2 VC++

8.2.1 基本功能介绍

8.2.2 获取与安装

8.3 Python

8.3.1 基本功能介绍

8.3.2 获取与安装

第9章 VC++图像处理工程

9.1工程创建

9.1.1启动Visual Studio 2010

9.1.2创建新建工程

9.2系统设置

9.3编译执行

第10章 Python图像处理系统

10.1工程创建

10.2系统设置

10.3编译执行

第11章 TensorFlow深度学习工程

11.1 框架获得

11.2 安装设置

11.3 案例

11.3.1数据准备

11.3.2训练模型

11.3.3验证准确率

11.3.4导出模型并对图片分类

第12章 Keras深度学习工程

12.1 框架获得

13.2 安装设置

13.3 工程创建

13.4 编译、训练、评估与部署

第13章 PyTorch深度学习工程

第14章Caffe深度学习工程

第15章 MXNet深度学习工程

第16章 CNTK深度学习工程

第17章Theano深度学习工程

17.1框架获得

17.2安装设置

17.3 工程创建

17.4编译、训练、评估与部署

第18章 YoloV4深度学习工程

18.1框架的获取

18.2 框架源码编译及环境设置

18.2.1 CPU版本编译

18.2.2 GPU版编译

18.2.3 darknet测试

18.3 创建Yolo训练数据集

18.4 训练YoloV4模型

18.5 测试YoloV4模型

第19章 PaddlePaddle深度学习工程

19.1 框架获得

19.2 安装设置

19.3 工程创建、编译、训练、评估与测试

19.4 基于高层API的任务快速实现




当前为第一篇