人工智能+機(jī)器人入門與實(shí)戰(zhàn) 用樹莓派+Python+OpenCV制作計(jì)算機(jī)視覺機(jī)器人
定 價(jià):69 元
- 作者:陳宇航 侯俊萍 葉昶
- 出版時(shí)間:2020/5/1
- ISBN:9787115530486
- 出 版 社:人民郵電出版社
- 中圖法分類:TP242
- 頁碼:143
- 紙張:
- 版次:01
- 開本:小16開
樹莓派是一款基于ARM架構(gòu)、Linux系統(tǒng)的極簡計(jì)算機(jī),既可以用于計(jì)算機(jī)編程教育,也可以作為機(jī)器人的控制核心。第一種運(yùn)行于樹莓派上的編程語言是Python,這是當(dāng)前人工智能領(lǐng)域最為流行的編程語言。機(jī)器視覺是人工智能中重要的細(xì)分研究領(lǐng)域,OpenCV則是當(dāng)前機(jī)器視覺領(lǐng)域主流的開源處理庫,可以方便地用于計(jì)算機(jī)圖像處理,并應(yīng)用于面部識(shí)別、目標(biāo)識(shí)別等具體問題。本書介紹在樹莓派硬件上使用Python語言,借助OpenCV庫編程,來實(shí)現(xiàn)具有機(jī)器視覺功能(識(shí)別和抓取特定顏色物體、識(shí)別人臉、識(shí)別特定人臉、進(jìn)行面部跟蹤)的智能機(jī)器人。
《人工智能+機(jī)器人入門與實(shí)戰(zhàn)》力求通過一系列不同層次的軟硬件任務(wù),由淺入深地講解人工智能的概念,同時(shí)覆蓋Linux系統(tǒng)操作、Python編程、機(jī)器人系統(tǒng)搭建等多方面的綜合知識(shí)。在本書案例中使用的主要硬件載體是可在桌面上固定運(yùn)轉(zhuǎn)的雙軸云臺(tái)和三軸機(jī)械臂等,它們可以代表一類智能機(jī)器人的形態(tài)。本書遵循開源、分享的創(chuàng)客精神,所有的硬件材料和軟件內(nèi)容均可以從公共平臺(tái)獲取,讀者在充分理解的基礎(chǔ)上,不必局限于本書所列硬件,可自行獲取類似設(shè)備完成項(xiàng)目。
本書可以作為中小學(xué)STEAM人工智能教育的一本基礎(chǔ)讀物,也可以作為中高職院校相關(guān)專業(yè)學(xué)生的參考書。
本書介紹在樹莓派硬件上使用Python語言,借助OpenCV庫編程,來實(shí)現(xiàn)具有機(jī)器視覺功能(識(shí)別和抓取特定顏色物體、識(shí)別人臉、識(shí)別特定人臉、進(jìn)行面部跟蹤)的智能機(jī)器人。
陳宇航:浙江大學(xué)物理學(xué)博士。擅長程序算法設(shè)計(jì),了解人工智能前沿理念。主持開發(fā)過多種智能硬件套件及其配套課程。致力于青少年科技教育,幫助學(xué)生更好地迎接人工智能時(shí)代的挑戰(zhàn)。
侯俊萍:浙江大學(xué)教育學(xué)碩士。奇異思維創(chuàng)客課程設(shè)計(jì)師。專注于青少年STEAM教育,擅長將國際先進(jìn)教育理念與前沿科技結(jié)合,進(jìn)行創(chuàng)客課程研發(fā)與教學(xué)。
葉昶:浙江工業(yè)大學(xué)自動(dòng)化專業(yè)。奇異思維創(chuàng)客課程設(shè)計(jì)師。參與機(jī)器人、3D打印類創(chuàng)客課程內(nèi)容設(shè)計(jì),并負(fù)責(zé)青少年創(chuàng)客課程教學(xué),具有豐富的講課經(jīng)驗(yàn)。
第 1 章 走近人工智能 1
1.1 初識(shí)人工智能 2
1.1.1 人工智能是什么 2
1.1.2 人工智能的發(fā)展歷程 2
1.1.3 人工智能的應(yīng)用現(xiàn)狀 4
1.2 機(jī)器人世界 5
1.2.1 機(jī)器人的發(fā)展歷史 5
1.2.2 什么是智能機(jī)器人 6
1.2.3 常見的智能機(jī)器人控制核心 7
第 2章 認(rèn)識(shí)樹莓派 9
2.1 樹莓派是什么 10
2.2 樹莓派3B+主控板簡介 11
2.3 樹莓派的連接與開機(jī) 12
2.4 Linux操作系統(tǒng)簡介 13
第3章 Python 編程基礎(chǔ) 16
3.1 什么是編程語言 17
3.2 認(rèn)識(shí)Python語言 18
3.3 在樹莓派中使用Python編程 19
3.3.1 交互式編程 20
3.3.2 使用算術(shù)運(yùn)算符進(jìn)行運(yùn)算 20
3.3.3 用Geany 編輯器編寫Python程序 21
3.4 Python中的變量 23
3.4.1 變量的賦值 23
3.4.2 Python的數(shù)據(jù)類型 24
3.5 if條件結(jié)構(gòu) 25
3.5.1 條件的真與假 25
3.5.2 比較運(yùn)算符 26
3.5.3 if條件結(jié)構(gòu)的格式與縮進(jìn) 26
3.6 while循環(huán)結(jié)構(gòu) 28
3.7 Python中的函數(shù) 28
3.7.1 自定義一個(gè)函數(shù) 29
3.7.2 給Python程序加上注釋 30
第4章 Python 編程與樹莓派硬件控制 32
4.1 樹莓派的GPIO接口 33
4.2 LED 模塊與按鈕模塊的連接 33
4.3 點(diǎn)亮一盞小燈 35
4.3.1 導(dǎo)入Python擴(kuò)展包 35
4.3.2 LED 顯示彩色的原理 35
4.3.3 對(duì)輸入/ 輸出設(shè)備的設(shè)定 36
4.3.4 讓小燈閃爍起來 37
4.4 用按鈕控制燈的狀態(tài) 38
4.4.1 按鈕狀態(tài)的讀取與判斷 38
4.4.2 兩個(gè)按鈕的控制與邏輯運(yùn)算符 39
4.5 做一個(gè)搶答器吧 40
4.5.1 延時(shí)點(diǎn)亮小燈 40
4.5.2 判斷獲勝者與break 關(guān)鍵詞 41
4.5.3 Python中的隨機(jī)數(shù) 41
第5章 機(jī)器視覺入門 45
5.1 機(jī)器視覺與圖像識(shí)別 46
5.1.1 機(jī)器是怎樣“看”的 46
5.1.2 機(jī)器視覺技術(shù)的常見應(yīng)用 48
5.2 認(rèn)識(shí)OpenCV 49
5.2.1 OpenCV 簡介 49
5.2.2 視頻的幀與分辨率 50
5.2.3 用樹莓派攝像頭調(diào)取圖像 51
5.3 用OpenCV 識(shí)別顏色 53
5.3.1 HSV 顏色空間 53
5.3.2 圖像的二值化 54
5.3.3 找到輪廓的位置 55
5.4 做一個(gè)魔法棒吧 57
5.4.1 用OpenCV 繪制小圓點(diǎn) 57
5.4.2 Python中的列表與元組 58
5.4.3 for 循環(huán)遍歷結(jié)構(gòu) 59
5.4.4 按鍵值與鍵盤控制 60
第6章 機(jī)械臂智能分揀任務(wù) 64
6.1 認(rèn)識(shí)機(jī)械臂 65
6.1.1 應(yīng)用廣泛的機(jī)械臂 65
6.1.2 三軸機(jī)械臂結(jié)構(gòu)分析 65
6.2 程序控制機(jī)械臂的運(yùn)動(dòng) 68
6.2.1 認(rèn)識(shí)舵機(jī) 68
6.2.2 舵機(jī)的線路連接 69
6.2.3 舵機(jī)控制程序 70
6.2.4 機(jī)械臂頭部的執(zhí)行裝置——電控吸盤 71
6.2.5 用示教方式完成物料分揀 73
6.3 用樹莓派控制機(jī)械臂 74
6.3.1 硬件連接 74
6.3.2 程序編寫 76
6.4 用攝像頭找到木塊位置 77
6.4.1 安裝攝像頭 77
6.4.2 調(diào)用攝像頭的圖像并識(shí)別木塊位置 79
6.5 使吸盤位于物體正上方 80
6.5.1 當(dāng)物體位于吸盤正下方時(shí),它的坐標(biāo)是多少 80
6.5.2 控制1 號(hào)舵機(jī)左右運(yùn)動(dòng),使物體x 坐標(biāo)為320 81
6.5.3 控制機(jī)械臂等高運(yùn)動(dòng),使物體y 坐標(biāo)為150 84
6.6 抓取和放置物體 88
6.7 擴(kuò)展任務(wù) 89
第7章 制作人臉追蹤機(jī)器人 92
7.1 人臉識(shí)別知多少 93
7.2 使用膚色檢測(cè)找到人臉 94
7.3 使用哈爾特征檢測(cè)找到人臉 96
7.4 人臉追蹤機(jī)器人初制 99
7.5 什么是機(jī)器學(xué)習(xí) 106
7.5.1 計(jì)算機(jī)如何識(shí)別一只貓 106
7.5.2 機(jī)器學(xué)習(xí)的分類 108
7.6 認(rèn)識(shí)人工神經(jīng)網(wǎng)絡(luò) 109
7.7 識(shí)別特定的人臉 113
7.8 擴(kuò)展任務(wù)——屬于你的機(jī)器人 117
7.8.1 讓機(jī)器人認(rèn)識(shí)你 117
7.8.2 讓機(jī)器人發(fā)出聲音 118
附錄 “試一試”環(huán)節(jié)參考程序 123