07 常見AI鏡頭介紹
(2021/07/16)
之前原禎老師跟我說他有一個關於AI的整天研習,但從實體研習改為線上研習,他知道我有玩過多款的AI鏡頭(像HUSKYLENS-哈士奇、Smart AI Lens及Web:AI),要我幫他撐一個小時,說實在,我都只是做入門的測試,有很多都還不是很了解...但又不好意思拒絕原禎老師,只好硬著頭皮上了...
講師:黃文玉老師
高雄市新上國小電腦老師
高雄市SCRATCH推廣教師
教育部中小學教師運算思維增能研習種子教師
Facebook S4A社團管理員之一
致力Scratch、Arduino、Micro:bit等創客教育的推廣
一、市面上常見幾款AI鏡頭介紹 (以下是目前我手上有的,按字母排列)
HUSKYLENS-哈士奇AI辨識鏡頭:
宇宙機器人系列教學影片:https://www.youtube.com/watch?v=fdvhY3GhbEc&list=PLE5yPMAmsqFVTC5ey7jl1rBjnNqzKXIP9
ICShop:登月小車大升級!結合 HuskyLens 實現 AI 影像辨識功能 (上篇) http://www.circuspi.com/index.php/2021/05/10/mooncar-huskylens-part-1/
MU:
Pixetto:
我的測試文章:剛拿到,未測試
ICShop:運用Pixetto 視覺感測器製作辨色LED燈(Arduino UNO) http://www.circuspi.com/index.php/2021/06/10/pixetto-led-arduino/
Smart AI Lens:
Web:AI:
二、市面上常見幾款AI鏡頭比較
硬體資料:
您要認識的這家公司:嘉楠科技(杭州)
嘉楠科技官網:https://canaan-creative.com/
生產【勘智K210 (kendryte K210)】芯片 https://canaan-creative.com/product/kendryteai
勘智K210的介紹:
K210是基於RISC-V精簡指令集的一款MCU,在眾多特色中,晶片架構包含了一個自研的神經網路硬體加速器KPU屬於最大特色,可以高性能地進行卷積神經網路運算。在MCU的AI計算方面,K210晶片的算力非常給力,根據嘉楠官網的描述,K210的KPU算力能夠達到0.8TFLOPS,這相當於什麼水準呢?舉個例子,最新樹莓派4B的算力不到0.1TFLOPS,而以神經網路處理為賣點的Jetson Nano擁有128個CUDA單元,算力也僅僅是0.47TFLOPS。(註:在深度學習中,卷積神經網路(CNN或ConvNet)是一類深度神經網路,最常用於分析視覺圖像)。
K210晶片內部是雙核CPU,指令集為RISC-V 64位元,每個核心內置獨立FPU,可以單獨進行浮點運算。
為了更好地在機器視覺和聽覺上發揮作用,K210晶片自帶計算卷積人工神經網路加速器KPU,以及處理麥克風陣列的APU,能夠進行高性能機器視覺和聽覺處理。
再來看看MCU方面的屬性,K210晶片具有豐富的外設單元,分別是DVP、JTAG、OTP、FPIOA、GPIO、UART、SPI、RTC、I2S、I2C、WDT、TIMER、PWM,這些外設在實際使用中發揮巨大的作用,基本滿足大部分MCU外設的需求。
K210還擁有高性能、低功耗的SRAM,總共8M,2M專用於AI計算,6M用於程式;專用外置FLASH介面,增加自身的儲存空間;資料傳輸可使用功能強大的DMA,在資料吞吐能力方面性能優異。芯片自帶SRAM和離線數據庫,可在設備本地完成完成數據的處理在儲存。(註:邊緣運算是一種分佈式運算概念,它將智能集成到邊緣設備(也稱為邊緣節點),允許在數據收集源附近實時處理和分析數據。在邊緣運算中,數據不需要直接上傳到雲或集中數據處理系統。)
以下是K210晶片架構圖,僅供參考,具體參考資訊可查閱K210晶片的技術手冊文檔。
功能及支援
其他
台中市數位教學平台:
課程: AI視覺感測器 http://elesson.tc.edu.tw/md221/course/view.php?id=309
內有很多AI鏡頭相關資料
其他鏡頭:
M5StickV K210 AI Camera
KOI 錦鋰魔塊 (處理器:K210)
Yahboom亞博智能
K210開發板套件AI人工智能視覺人臉識別RISC-V攝像頭IOT
SiPEED (矽速科技,深圳)
開發板:設計多種K210的開發板
各式開發板 https://wiki.sipeed.com/soft/maixpy/zh/develop_kit_board/get_hardware.html
Maixduino (AI人工智能 k210開發板 RISC-V AI+lOT ESP32 Sipeed)
MAIX Bit (AI人工智能K210開發板 M12鏡頭 Sipeed 深度學習) 我後來發現Web:AI 開發板是屬於此板
Sipeed M1w DOCK (AI人工智能核心板開發板 K210 深度學習荔枝丹)
....
MaxiHub 模型平台
網址:https://www.maixhub.com/ (要先登入)
可進行模型訓練,應該類似類似Google的Teachable Machine
MaxiPy:https://wiki.sipeed.com/soft/maixpy/zh/index.html
MaixPy 是將 Micropython 移植到 K210(一款 64 位元雙核帶硬體 FPU、卷積加速器、FFT、Sha256 的 RISC-V CPU ) 的一個專案, 支持 MCU 常規操作, 更集成了硬體加速的 AI 機器視覺和麥克風陣列,1TOPS 算力核心模組卻不到¥50, 以快速開發具有極低成本和體積實用的 AIOT 領域智慧應用。
MaixPy 讓我們在 K210 上程式設計更加簡單快捷, 我們也將原始程式碼開源在 github 上,使用 MaixPy 可以做很多有趣的事情
MaxiPy IDE下載及安裝
台灣Webduino的 Web:Ai 可使用MaxiPy IDE來撰寫Python程式
這文件寫得非常清楚,可當作學習MaxiPy IDE的入門文章
測試一下:
使用 kflash_gui 燒錄
下載 Web:AI 韌體檔案 韌體檔案。
下載 kflash_gui,點擊執行,開啟 webai.kfpkg 韌體檔,等待下載完畢後就燒錄完成了。
點擊 MaixPy IDE 下載,安裝後開啟 MaixPy IDE 應用程式,進入開發環境畫面。
選擇板子與終端機
利用範例程式進行測試,測試成功
其他鏡頭(非K210)
ESP32
樂鑫信息科技(上海) https://www.espressif.com/zh-hans (生產ESP8266、ESP32...系列芯片)
https://www.espressif.com/zh-hans/products/socs/esp32
最常見ESP32-CAM
採用低功耗雙核32位CPU,內置 520 KB SRAM,外部 4MPSRAM
樹莓派
NVIDIA
三、簡易測試
這些AI鏡頭的使用很簡單,有些需要事先【學習】,有些不用【學習】
HuskyLens、Pixetto、Web:AI:使用前要先學習,所以可以用比較複雜的應用,如做到【人臉識別】(可以辨別出川普或拜登,而不是只有人體檢測)
MU、Smart AI Lens:使用前不用學習,因為已內部幫您學習好,像顏色識別(顏色比較固定)、圖卡或卡片識別(只能用廠商提供的圖卡)
除了前三者外, Smart AI Lens也有【一鍵學習】的能力,當它與micro:bit連接後,利用攝影鏡頭進行【物體分類】,進而進行辨識
【物體分類】:本功能就是學習不同物體的多張相片進行訓練,目前最常見的應用為
有戴口罩、沒有戴口罩
剪刀、石頭、布的手勢訓練
手寫阿拉伯數字(0~9)的訓練
垃圾分類訓練
...
相似功能的網站:
Google的Teachable Machine
Webduino的影像訓練
使用這些硬體前,最好都先把韌體更新到最新
簡單觀看這幾款鏡頭的功能
HuskyLens
介紹自身的學習功能
也可以跟micro:bit結合
Smart AI Lens
只能與micro:bit結合
擴展積木網址:https://github.com/elecfreaks/pxt-PlanetX-AI
Web:AI
程式平台
安裝版:可使用USB來連線
簡易程式範例