第1章 绪论 1
1.1 芯片简介 1
1.2 芯片架构简介 2
第2章 飞腾芯片型号及技术参数 3
2.1 飞腾公司简介 3
2.2 飞腾芯片产品概述及技术理念 4
2.2.1 飞腾芯片产品概述 4
2.2.2 飞腾产品的技术理念 4
2.3 飞腾系列芯片产品简介 5
2.3.1 高性能服务器CPU 5
2.3.2 高效能桌面CPU 8
2.3.3 高端嵌入式CPU 11
2.3.4 飞腾套片 14
第3章 开发板硬件结构及接口 15
3.1 飞腾教育开发板简介 15
3.2 板载硬件接口及模块 16
3.3 MXM显卡及硬盘 19
3.3.1 MXM显卡安装方式 19
3.3.2 硬盘安装 19
第4章 搭建开发环境 21
4.1 登录开发板系统 21
4.1.1 通过串口登录开发板系统 21
4.1.2 使用SSH登录开发板系统 25
4.1.3 无线接入局域网 28
4.1.4 开发板关机 29
4.2 安装相关软件 29
4.3 更新固件 30
4.3.1 升级BIOS固件 30
4.3.2 刻录启动盘 30
4.4 操作系统 32
4.4.1 安装银河麒麟系统 32
4.4.2 安装debian系统 35
4.4.3 安装Ubuntu系统 43
4.5 TigerVNC局域网远程桌面 44
4.6 更新Python至3.7版本 45
4.7 更新gcc至9.4.0版本 46
4.8 安装OpenCV 49
4.8.1 安装OpenCV环境(C++接口) 49
4.8.2 安装OpenCV环境(Python接口) 50
第5章 程序设计及在线开发 53
5.1 ARM指令集简介 53
5.2 程序设计流程 55
5.3 在线开发流程 56
第6章 基础应用设计实例 58
6.1 接口测试 58
6.2 IIC通信 60
6.2.1 IIC总线简介 60
6.2.2 IIC总线的工作特点 60
6.2.3 IIC总线访问外围设备 61
6.3 音频采集及输出实例 64
6.3.1 音频接口测试 64
6.3.2 音频采集实例 66
6.4 操作系统实例 67
6.4.1 文件I/O操作 67
6.4.2 进程管理、同步及通信 69
6.4.3 线程管理 72
6.4.4 线程同步及多路转接 75
6.4.5 TCP、UDP连接测试实例 78
第7章 音/视频的播放与处理 82
7.1 音/视频的播放 82
7.1.1 了解gstreamer 82
7.1.2 安装gstreamer 83
7.1.3 音/视频播放步骤 83
7.2 视频采集及缩放 85
7.2.1 视频采集 85
7.2.2 视频缩放 87
7.3 H.264的编码及解码 87
7.3.1 H.264简介 87
7.3.2 H.264编码 88
7.3.3 H.264解码 90
7.4 TS封装及播放 90
7.4.1 TS封装 90
7.4.2 TS播放 92
第8章 图像处理及相关的设计实例 95
8.1 图像处理基础知识 95
8.1.1 读取、显示、保存图像 96
8.1.2 获取图像属性 97
8.1.3 图像的通道拆分与合并 98
8.1.4 图像的加法与融合运算 98
8.1.5 图像类型转换 100
8.1.6 图像的缩放、旋转、翻转和平移 102
8.2 图像对比度的增强 106
8.2.1 图像灰度化 107
8.2.2 灰度直方图 108
8.2.3 灰度直方图均衡化 109
8.2.4 灰度线性变换 111
8.2.5 伽马变换 112
8.3 图像加噪 114
8.3.1 添加椒盐噪声 114
8.3.2 添加高斯噪声 115
8.4 图像处理基础算子 116
8.4.1 拉普拉斯算子 116
8.4.2 Sobel算子 119
8.4.3 Canny边缘检测算法 121
第9章 人工智能推理及项目设计 123
9.1 MNN 123
9.1.1 MNN的特点及框架 123
9.1.2 MNN的工作流程 125
9.1.3 MNN运行实例 126
9.2 OpenCV DNN 127
9.2.1 OpenCV DNN介绍 127
9.2.2 执行GoogLeNet分类实例 128
9.3 目标识别设计及实现 131
9.3.1 背景介绍 131
9.3.2 YOLOv1原理 133
9.3.3 目标识别实例 136
9.3.4 血细胞分类实例 140
第10章 火焰及烟雾检测项目 145
10.1 项目目标 145
10.2 项目方案 147
10.2.1 项目所需设备 147
10.2.2 OpenCV与机器视觉 148
10.2.3 深度学习模型YOLOv3 148
10.2.4 模型训练 150
10.2.5 远程监控实现 152
10.3 实验内容与具体步骤 154
10.3.1 Ubuntu系统下的OpenCV安装 154
10.3.2 基于Xftp实现PC、虚拟机、开发板间的文件传输 154
10.3.3 深度学习模型程序与程序简析 160
10.3.4 远程监控实施 163
10.4 实验结果及总结 164
第11章 垃圾分类项目 168
11.1 项目目标 168
11.2 项目方案 168
11.2.1 项目所需设备 168
11.2.2 数据集预处理 169
11.2.3 深度学习模型ResNet 171
11.2.4 模型训练 174
11.3 项目内容与具体步骤 175
11.3.1 数据集预处理及图像标注 175
11.3.2 深度学习模型的搭建、训练及测试 179
11.3.3 分类结果显示与分析 183
11.4 项目总结 185
附录A 186
展开