本書基于卷積神經(jīng)網(wǎng)絡(luò)和圖像識(shí)別方法,介紹了PyTorch和PaddlePaddle兩種框架,并結(jié)合移動(dòng)機(jī)器人講解了具體的開發(fā)過程。書中所用的硬件平臺(tái),帶有兩個(gè)攝像頭傳感器,為機(jī)器人和無人駕駛車輛多攝像頭導(dǎo)航提供了理論指導(dǎo)。書中提到的模擬沙盤,正是機(jī)器人作為園區(qū)巡檢或無人配送實(shí)例的縮影。通過基于理論的實(shí)踐,本書不局限于具體的平臺(tái)和場(chǎng)景,可以作為實(shí)現(xiàn)深度學(xué)習(xí)的通用化方法。本書源于工程化實(shí)踐,抽象為具體方法和案例,為學(xué)習(xí)基于深度學(xué)習(xí)的機(jī)器人技術(shù)提供了指南。
張銳,北京鋼鐵俠科技有限公司創(chuàng)始人,全國(guó)仿生學(xué)標(biāo)準(zhǔn)化技術(shù)委員會(huì)委員,全國(guó)工商聯(lián)高端裝備制造與儀器儀表委員會(huì)委員,中關(guān)村高聚工程高端領(lǐng)軍人才,北京市青年托舉工程入選人,青島市拔尖人才,中國(guó)人工智能學(xué)會(huì)教育工作委員會(huì)委員,教育部高職?浦悄軝C(jī)器人技術(shù)、高職本科機(jī)器人技術(shù)教學(xué)標(biāo)準(zhǔn)起草委員會(huì)委員,參與制定機(jī)器人領(lǐng)域國(guó)家標(biāo)準(zhǔn)6項(xiàng),承擔(dān)了多個(gè)北京市科技重大專項(xiàng)等省部級(jí)項(xiàng)目。
目錄
認(rèn) 知 篇
第1章 人工智能、深度學(xué)習(xí)和計(jì)算機(jī)視覺 1
1.1 人工智能簡(jiǎn)介 1
1.2 人工智能的發(fā)展 3
1.3 深度學(xué)習(xí)簡(jiǎn)介 4
1.4 計(jì)算機(jī)視覺 5
第2章 卷積神經(jīng)網(wǎng)絡(luò)及應(yīng)用介紹 7
2.1 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu) 8
2.1.1 神經(jīng)元與感知器 8
2.1.2 神經(jīng)網(wǎng)絡(luò) 9
2.2 圖像識(shí)別的任務(wù) 10
2.2.1 視覺感知 10
2.2.2 圖像表達(dá) 11
2.2.3 畫面不變性 12
2.3 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu) 14
2.3.1 卷積層 15
2.3.2 池化 16
2.3.3 激活函數(shù) 16
2.3.4 全連接層 17
2.3.5 卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練 18
2.4 軟件環(huán)境安裝 20
2.4.1 Python環(huán)境安裝 20
2.4.2 Numpy功能包安裝 25
2.5 卷積神經(jīng)網(wǎng)絡(luò)代碼詳解 26
2.5.1 Numpy功能包導(dǎo)入 26
2.5.2 卷積層的實(shí)現(xiàn) 26
2.5.3 Max Pooling層的實(shí)現(xiàn) 35
2.6 網(wǎng)絡(luò)參數(shù)調(diào)整或微調(diào) 37
框 架 篇
第3章 圖像分類及目標(biāo)檢測(cè) 38
3.1 圖像分類簡(jiǎn)介 38
3.1.1 AlexNet 42
3.1.2 VGG 45
3.1.3 GoogLeNet 49
3.1.4 ResNet 53
3.2 目標(biāo)檢測(cè) 60
3.2.1 目標(biāo)檢測(cè)簡(jiǎn)介 60
3.2.2 RCNN基礎(chǔ) 72
3.2.3 Faster RCNN原理 80
3.2.4 Yolo系列算法 89
3.2.5 Yolov3案例 105
第4章 PyTorch基礎(chǔ) 137
4.1 PyTorch簡(jiǎn)介 137
4.1.1 Tensor數(shù)據(jù)類型 137
4.1.2 Tensor運(yùn)算 140
4.1.3 搭建簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò) 144
4.2 自動(dòng)求梯度 146
4.3 構(gòu)建模型和優(yōu)化參數(shù) 148
4.3.1 torch.nn 148
4.3.2 torch.optim 151
4.4 案例:基于PyTorch的CIFAR-10圖片分類 153
第5章 PaddlePaddle基礎(chǔ) 157
5.1 PaddlePaddle卷積神經(jīng)網(wǎng)絡(luò)基礎(chǔ) 157
5.1.1 CNN的構(gòu)成 158
5.1.2 卷積層 159
5.1.3 填充 160
5.1.4 步長(zhǎng) 161
5.1.5 多通道卷積 161
5.1.6 多卷積核卷積 162
5.1.7 特征圖大小 163
5.1.8 池化層 163
5.1.9 全連接層 164
5.2 PaddlePaddle基本運(yùn)算 165
5.3 使用PaddlePaddle高層API直接調(diào)用分類網(wǎng)絡(luò) 170
5.4 手寫數(shù)字識(shí)別案例 171
5.4.1 數(shù)據(jù)處理及數(shù)據(jù)加載 172
5.4.2 網(wǎng)絡(luò)結(jié)構(gòu)和設(shè)置學(xué)習(xí)率 173
5.4.3 模型訓(xùn)練及模型推理 174
實(shí) 戰(zhàn) 篇
第6章 深度學(xué)習(xí)智能車項(xiàng)目 180
6.1 智能車硬件架構(gòu)設(shè)計(jì) 181
6.2 深度學(xué)習(xí)智能車各部分介紹 182
6.3 軟件安裝和使用 183
6.4 點(diǎn)亮深度學(xué)習(xí)智能車的車燈 185
6.4.1 深度學(xué)習(xí)智能車車燈介紹 185
6.4.2 智能車LED引腳連接配置 185
6.4.3 智能車LED電路設(shè)計(jì) 186
6.4.4 程序設(shè)計(jì) 186
6.4.5 執(zhí)行程序和查看結(jié)果 187
6.5 智能車運(yùn)動(dòng)控制 187
6.5.1 智能車電機(jī)特征 187
6.5.2 電機(jī)工作方式 188
6.5.3 智能車電機(jī)控制 189
6.5.4 智能車電機(jī)引腳連接配置 190
6.5.5 電機(jī)驅(qū)動(dòng)電路 190
6.5.6 智能車驅(qū)動(dòng)程序設(shè)計(jì) 192
6.5.7 執(zhí)行程序和查看結(jié)果 194
6.6 智能車上位機(jī)與下位機(jī)通信 194
6.6.1 智能車下位機(jī)程序設(shè)計(jì) 194
6.6.2 智能車上位機(jī)程序設(shè)計(jì) 198
6.6.3 智能車串口通信調(diào)試 199
第7章 實(shí)戰(zhàn)案例 200
7.1 基于PaddlePaddle深度學(xué)習(xí)框架的安裝 200
7.2 車道線識(shí)別數(shù)據(jù)處理與模型構(gòu)建 203
7.3 車道線識(shí)別訓(xùn)練模型 207
7.4 標(biāo)志物檢測(cè)的數(shù)據(jù)采集與處理 211
7.5 Yolov5網(wǎng)絡(luò)模型介紹 213
7.5.1 Yolov5網(wǎng)絡(luò)結(jié)構(gòu) 213
7.5.2 Yolov5相對(duì)于Yolov4和Yolov3的改進(jìn) 215
7.6 標(biāo)志物識(shí)別的模型訓(xùn)練 218
7.7 智能車無人駕駛實(shí)踐 226
7.7.1 無人駕駛沙盤模型 226
7.7.2 深度學(xué)習(xí)智能車 227
7.7.3 遙控使用 228
7.7.4 深度學(xué)習(xí)智能車 229
參考文獻(xiàn) 235