智慧型硬體與機器視覺

智慧型硬體與機器視覺

《智慧型硬體與機器視覺》是2020年機械工業出版社出版的圖書。作者是陳佳林。本書是一部講解如何利用樹莓派、OpenCV、Python等軟硬體構建智慧型硬體並在其上實現圖像分析、文字識別、人臉識別與追蹤、視頻監控等機器視覺功能的實用性著作。

基本介紹

  • 中文名:智慧型硬體與機器視覺
  • 作者:陳佳林
  • 出版社: 機械工業出版社
  • ISBN:9787111667698
內容簡介,圖書目錄,作者簡介,

內容簡介

這是一部講解如何利用樹莓派、OpenCV、Python等軟硬體構建智慧型硬體並在其上實現圖像分析、文字識別、人臉識別與追蹤、視頻監控等機器視覺功能的實用性著作。全書一共11章:第1~4章首先講解了機器視覺在智慧型硬體領域的套用場景以及智慧型硬體上4種常見的機器視覺技術方案;然後講解了樹莓派和OpenCV的安裝、配置以及其他準備工作;*後通過一些簡單的案例和代碼手把手教讀者如何使用OpenCV。第5~11章是本書的核心內容,通過幾個具體的綜合案例講解了如何使用樹莓派低成本玩轉如下機器視覺場景:拍攝照片和視頻、處理相機的原始數據、道路和商場的人流統計、道路信息的文字識別、人臉識別與追蹤、中央AI視頻監控等。以上案例循序漸進,環環相扣,所有代碼均可在樹莓派上運行,可輕鬆移植到任何ARM開發板上。

圖書目錄

前言
第1章 智慧型硬體與機器視覺1
1.1 機器視覺在智慧型硬體領域的套用1
1.1.1 機器視覺在智慧城市的套用2
1.1.2 機器視覺與5G的協同效應4
1.2 智慧型硬體上的機器視覺技術方案選型5
1.2.1 方案A:樹莓派5
1.2.2 方案B:BeagleBoard7
1.2.3 方案C:NVIDIA Jetson8
1.2.4 方案D:Google Coral Dev Board + Edge TPU9
1.3 本章小結10
第2章 樹莓派軟硬體準備11
2.1 刷寫系統11
2.2 硬體連線14
2.3 Linux系統的基本操作17
2.3.1 Linux常用命令17
2.3.2 Vim編輯器的使用19
2.4 遠程連線樹莓派20
2.4.1 使用SSH連線樹莓派21
2.4.2 使用VNC連線樹莓派24
2.5 使用相機模組拍攝一張照片28
2.6 本章小結31
第3章 安裝OpenCV32
3.1 使用pip安裝OpenCV32
3.1.1 在Ubuntu上使用pip安裝OpenCV33
3.1.2 在macOS上使用pip安裝OpenCV35
3.1.3 在樹莓派上使用pip安裝OpenCV36
3.1.4 注意事項38
3.2 樹莓派源碼編譯安裝OpenCV 439
3.2.1 擴展TF卡並安裝依賴39
3.2.2 下載OpenCV 442
3.2.3 為OpenCV 4搭建基於Python 3的虛擬環境42
3.2.4 構建和編譯OpenCV 444
3.2.5 測試OpenCV 447
3.2.6 可能遇到的問題47
3.3 本章小結49
第4章 通過案例手把手入門OpenCV50
4.1 開始前的準備50
4.1.1 環境準備50
4.1.2 項目代碼準備51
4.2 OpenCV圖像簡單處理51
4.2.1 載入和顯示圖像51
4.2.2 訪問單個像素53
4.2.3 數組切片和裁剪54
4.2.4 調整圖像大小55
4.2.5 旋轉圖像57
4.2.6 平滑圖像60
4.2.7 在圖像上繪圖60
4.2.8 運行第一個OpenCV教程的Python腳本64
4.3 OpenCV圖像對象計數64
4.3.1 目標對象計數64
4.3.2 將圖像轉換為灰階65
4.3.3 邊緣檢測67
4.3.4 閾值處理68
4.3.5 檢測和繪製輪廓68
4.3.6 腐蝕和膨脹70
4.3.7 蒙版和按位操作71
4.3.8 運行第二個OpenCV教程的Python腳本72
4.4 本章小結72
第5章 使用Python拍攝照片、視頻73
5.1 安裝picamera環境73
5.1.1 安裝Raspbian系統73
5.1.2 安裝其他系統74
5.1.3 升級相機固件74
5.1.4 安裝樹莓派攝像頭模組75
5.1.5 控制V1版的LED燈78
5.2 使用攝像頭拍攝照片78
5.2.1 捕獲照片並存為檔案79
5.2.2 捕獲照片並存為流79
5.2.3 捕獲照片並存為PIL圖像80
5.2.4 捕獲調整了大小的圖像80
5.2.5 快拍和連拍的技巧81
5.2.6 捕獲延時攝影序列82
5.2.7 弱光下拍照82
5.2.8 網路直播83
5.3 使用攝像頭拍攝視頻85
5.3.1 錄製視頻檔案85
5.3.2 錄製視頻流86
5.3.3 錄製拆分為多個檔案86
5.3.4 錄製循環視頻流87
5.3.5 錄製網路視頻流88
5.3.6 視頻預覽疊加圖像加水印90
5.3.7 視頻輸出疊加文本、時間戳92
5.4 本章小結93
第6章 使用Python處理相機原始數據94
6.1 捕獲並直接編碼94
6.1.1 捕獲並編碼為numpy數組94
6.1.2 捕獲並編碼為opencv對象95
6.1.3 捕獲未編碼圖像(YUV)96
6.1.4 捕獲編碼圖像(RGB)99
6.1.5 自定義編碼器100
6.2 多種捕獲方法102
6.2.1 錄像時截屏102
6.2.2 多種解析度下錄製103
6.2.3 特殊檔案輸出103
6.2.4 Bayer-Raw數據獲取104
6.3 樹莓派相機的實際套用109
6.3.1 自定義輸出:運動檢測相機的代碼實現109
6.3.2 循環視頻流切割:行車記錄儀碰撞預警功能111
6.3.3 快速捕獲和處理:連拍算法實現112
6.3.4 錄製未經編碼的視頻:顏色檢測116
6.3.5 快速捕獲和流傳輸:網路流直播117
6.3.6 網路流媒體:結合網頁技術直播119
6.3.7 錄製運動矢量數據:檢測視頻中的手勢121
6.4 常見錯誤集錦125
6.5 本章小結128
第7章 道路、商場人流統計129
7.1 原理解析130
7.1.1 目標檢測與目標追蹤130
7.1.2 形心追蹤算法原理131
7.1.3 人群計數器原理133
7.2 軟體環境準備134
7.3 使用Python實現人群計數器135
7.3.1 目錄結構135
7.3.2 形心追蹤器類CentroidTracker的實現135
7.3.3 追蹤目標類TrackableObject的實現141
7.3.4 人群計數器的實現141
7.3.5 樹莓派人群計數器測試149
7.4 本章小結149
第8章 道路信息文字識別150
8.1 EAST深度學習模型151
8.1.1 EAST模型簡介151
8.1.2 相關軟體包的安裝152
8.1.3 項目工程結構153
8.2 檢測圖片中的文字153
8.2.1 代碼編寫和解讀153
8.2.2 效果測試157
8.3 檢測視頻中的文字159
8.3.1 代碼編寫和解讀159
8.3.2 效果測試163
8.4 對文字內容進行識別164
8.4.1 Tesseract介紹和安裝164
8.4.2 使用Tesseract實現文字識別的原理166
8.4.3 代碼編寫和解讀168
8.4.4 效果測試173
8.5 本章小結175
第9章 簡單人臉追蹤176
9.1 核心原理和效果簡介176
9.2 環境準備和代碼編寫177
9.2.1 使用Python實現形心追蹤算法177
9.2.2 人臉追蹤的實現182
9.3 測試人臉跟蹤效果186
9.3.1 測試效果186
9.3.2 缺陷與不足187
9.4 本章小結187
第10章 人臉追蹤安防攝像頭188
10.1 總體設計思路188
10.1.1 硬體組裝清單188
10.1.2 PID控制反饋算法189
1

作者簡介

技術極客,“骨灰級”樹莓派愛好者,在機器人、智慧型硬體、軟硬體協同開發等方面有較深入的研究。安全技術專家,看雪科技高級研究員,在移動安全領域經驗豐富,多次主持召開銀行、電信、政府及等行業的培訓並參與安全項目的研究。作為團隊成員參與GeekPwn2018挑戰賽並獲得亞軍,多次在“看雪安全開發者峰會”“補天白帽大會”等會議上發表主題演講。著有《樹莓派創客:手把手教你搭建機器人》《樹莓派創客:手把手教你玩轉人工智慧》。

相關詞條

熱門詞條

聯絡我們