作者:CAVEDU 教育團隊
CAVEDU 團隊之前曾經使用樹莓派結合 NCS 實作自駕車,課程推出後受到大家的熱烈迴響,感謝大家的熱情參與,先前上課所使用的 NCS 為一代的版本,在本篇文章中,我們將使用第二代的 NCS, 搭配全新的函式庫 OpenVINO 來實作。
安裝 OpenVINO
1. 準備樹莓派,並灌好 Raspbian 作業系統。
您可以在樹莓派官網下載最新的映像檔,下載完後,可以用 Etcher 將映像檔燒錄到 SD 卡中來開機。如果您使用的是「RK—樹莓派神經網路自走車套件」,可以直接開啟終端機下載套件包。
2. 樹莓派開機,接上網路,打開終端機。
3. 數入以下指令下載 OpenVINO 套件包。請注意,隨著版本更新,套件包的版號也會變,本範例所使用的版本為「2018.5.445」。
4. 解壓縮套件包。
解壓縮完成後,您會看到有一個資料夾「inference_engine_vpu_arm」出現在加目錄當中。
5. 執行以下的指令來修改 setupvars.sh 中的參數,待會設定環境參數時會用到。
6. 環境參數設定
輸入以下的指令來啟動自動設定 OpenVINO 的環境參數:
第一次設定完,請重新登入一次shell或者是重新打開終端機才會生效。
成功啟動環境的話,您將會看到「[setupvars.sh] OpenVINO environment initialized」的字樣
7. 為了使樹莓派能夠認得 NCS,必須再額外設定 USB Rules
將現在的使用者加入 users 的群組。
加入完成後,並須登出再重新登入。
安裝 udev rules。
當終端機出現「[setupvars.sh] OpenVINO environment initialized」時,表示您已經在樹莓派上成功安裝 OpenVINO 了,此版本的 OpenVINO 只有 Inference Engine 而已,只能做辨識。為了要能夠將訓練完的模型編譯成 NCS 看得懂的格式,我們必須在電腦上安裝完整版的 OpenVINO Toolkit。
搭配 RK — 樹莓派神經網路自走車套件
如果您有「RK–樹莓派神經網路自走車套件」可以搭配範例(ai-car-openvino.zip)使用以下指令啟動;另請先將 RK-樹莓派神經網路自走車套件 提供的檔案下載至樹莓派,並解壓縮檔案。
將樹莓派接上 Movidius 2,接下來我們將使用預錄好的影片來測試訓練過的模型。
(小提醒:按下 ctrl+c 可以停掉程式)
以下是跑出來的測試結果,辨識一幀圖片大概需要花 0.014 秒左右。
如果讀者想要看到實際的畫面的話,可以在指令的尾端加上–gui。
同樣的範例,我們也可以用來跑在 NCS 一代上面,跑出來的結果如下:
可以看到 NCS 一代在表現上稍稍輸了 NCS 二代,在處理單張影像的時間花了 0.026 秒左右,差不多是快兩倍的時間呢!
解惑時間
- 可以用本範例來辨識攝影機的影像嗎?
可以的,一樣使用上面的指令,但是就不指定為使用影片檔。
- 那如果我有一台自走車,上面有馬達跟攝影機,該怎麼跑這個範例讓機器人動起來?
以我們之前上課的機器人套件為例,可以執行以下的指令來讓機器人根據攝影機的影像來判斷交通號誌,並且控制馬達做出對應的動作,例如轉彎、前進、停止等。
- 那如果我有自己的資料然後想要自己訓練模型呢?
這個問題比較複雜,首先樹莓派本身並沒有足夠的算力可以做深度學習的訓練,所以我們會建議找一台電腦來做訓練這件事情。關於訓練模型,首先我們必須在電腦上安裝好 python 及 tensorflow 的環境, 然後執行以下的指令來做訓練,其中,model-base-dir 代表訓練完的模型要放在哪裡,data-dir 則代表訓練用的資料集的位置。
因為我們在樹莓派上面安裝的 OpenVINO 只有 Inference Engine,只能做辨識;為了要能夠將訓練完的模型編譯成 NCS 看得懂的格式,我們必須在電腦上安裝完整版的 OpenVINO Toolkit。
詳細的安裝說明,請參考 Intel 官方的安裝教學:
相關文章
- [Movidius神經運算棒]在Intel® Movidius™ NCS上部署客製化Caffe模型來進行影像分類
- [Movidius神經運算棒] 認識與操作Neural Compute SDK:mvNCCheck
- [AI 人工智慧應用] MovidiusNCS在PC中設定Ubuntu虛擬機並執行NCSDK(上)
- [AI 人工智慧應用] MovidiusNCS在PC中設定Ubuntu虛擬機並執行NCSDK(下)
- [Movidius神經運算棒]五步驟打造Intel Movidius NCS影像分類器
- [Movidius神經運算棒]在Raspberry Pi 上執行 Intel® Movidius™ NCS應用程式
- 使用 Intel® Movidius™ Neural Compute Stick搭配Raspberry Pi 3執行MobileNets
(本文轉載自 CAVEDU 教育團隊、原文連結;責任編輯:謝長霖)
- 【CAVEDU講堂】NVIDIA Jetson AI Lab 大解密!範例與系統需求介紹 - 2024/10/08
- 【CAVEDU講堂】Google DeepMind使用大語言模型LLM提示詞來產生你的機器人操作程式碼 - 2024/07/30
- 【CAVEDU講堂】《Arduino首次接觸就上手》新手村教學:LED燈閃爍 - 2024/04/18
訂閱MakerPRO知識充電報
與40000位開發者一同掌握科技創新的技術資訊!