Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Raspberry Pi AI Kit介紹

Raspberry Pi AI Kit介紹

這是我們在 樹莓派社群聚會 #43 的分享,介紹 Raspberry Pi AI Kit

購買 Raspberry Pi AI Kit
* https://piepie.com.tw/product/raspberry-pi-ai-kit

一定會用到的 樹莓派 Pi 5 主動式散熱器 | Active Cooler
* https://piepie.com.tw/product/active-cooler-for-raspberry-pi-5

Raspberry Pi 樹莓派社群聚會 #43
https://piepie.com.tw/55596/raspberrypi-meetup-43

台灣樹莓派

January 23, 2025
Tweet

More Decks by 台灣樹莓派

Other Decks in Technology

Transcript

  1. 姓名標示 — 非商業性 — 相同方式分享 CC (Creative Commons) 姓名標示 —

    你必須給予 適當表彰、提供指向本授權 條款的連結,以及 指出(本作品的原始版本)是否已 被變更。你可以任何合理方式為前述表彰,但不得以 任何方式暗示授權人為你或你的使用方式背書。 非商業性 — 你不得將本素材進行商業目的之使 用。 相同方式分享 — 若你重混、轉換本素材,或依本 素材建立新素材,你必須依本素材的授權條款來 散布你的貢獻物。
  2. • COSCUP , MakerConf, PyCon, HKOSCon 講者 • 投影片 •

    https://speakerdeck.com/piepie_tw • 程式碼 • https://github.com/piepie-tw • 台灣樹莓派網站 : • https://piepie.com.tw/ • Facebook: • https://www.facebook.com/RaspberryPi.Taiwan 分享 x 教學
  3. 6 • 什麼是 Raspberry Pi AI Kit? • Hailo 解決方案

    • 訓練自己的資料集 ( 實做 ) 大綱
  4. • 包含 M.2 HAT+ 和 Hailo-8L NPU 模組 ( 不分售

    ) • Hailo-8L 高達 13 TOPS 算力 • M.2 2242 樣式 Raspberry Pi AI Kit 規格 https://www.easydiy.com.tw/products_detail/43.htm
  5. • Hailo 在 2017 年由以色列國防單位成員創立 • 專注於人工智慧的晶片製造商 • 產品包含 AI

    accelerators 和 AI vision processors • Hailo-8L 是台灣製造 • Hailo-8 和 Hailo-8L 是不同產品 • Hailo-8 算力為 26 TOPS, 具有更高性能 • Hailo-8L 算力為 13 TOPS, 低功耗適合邊緣加速
  6. • 軟硬體環境 :Pi 5 + Bookworm 64-bit • $ sudo

    apt-get update • $ sudo apt-get full-upgrade • $ sudo apt-get install hailo-all 開始使用 AI Kit
  7. • $ cd ~ • $ git clone https://github.com/hailo-ai/hailo- rpi5-examples.git

    • $ cd hailo-rpi5-examples • $ source setup_env.sh • (venv)$ pip install -r requirements.txt • (venv)$ ./download_resources.sh 下載 Hailo 範例程式
  8. • 一個 Docker 包含四個 Hailo 核心軟體 • 1. Hailo Model

    Zoo • 2. Hailo Applications (TAPPAS High- Performance Application Toolkit) • 3. Hailo Runtime(Hailo RT) • 4. Dataflow Compiler(DFC) Hailo 一體式方案簡化 AI 開發流程 https://hailo.ai/blog/how-software-can-streamline-customer-experience-in-edge-ai/
  9. • 提供多種 pre-trained 模型 , 開箱即用 • 支援 TensorFlow 或是

    ONNX 格式 Hailo Model Zoo https://hailo.ai/blog/how-software-can-streamline-customer-experience-in-edge-ai/
  10. • GStreamer 是一個跨平台的多媒體框架 , 可串接 各種多媒體應用包括視訊和音訊 • GStreamer 使用管道 (Pipeline)

    方式對每一個 元素 (Element) 或插件 (Plugins) 進行串聯 GStreamer Framework https://github.com/hailo-ai/tappas/blob/master/docs/terminology.rst
  11. • 將客製化模型或是 Model Zoo 整合到視覺管道 利用 HailoRT 和 GStreamer 框架

    https://hailo.ai/blog/how-software-can-streamline-customer-experience-in-edge-ai/
  12. • gst-launch-1.0 filesrc location=resources/detection0.mp4 ! qtdemux ! avdec_h264 ! video/x-raw

    ! videoconvert ! video/x-raw ! videoconvert ! fpsdisplaysink GStreamer Framework
  13. • gst-launch-1.0 hailomuxer name=hmux filesrc location=resources/detection0.mp4 ! qtdemux ! avdec_h264

    ! video/x-raw ! videoconvert ! video/x-raw ! tee name=t ! queue ! hmux.sink_0 t. ! videoconvert ! hailonet hef-path=/home/pi/hailo-rpi5- examples/resources/yolov6n.hef ! hailofilter so-path=/usr/lib/aarch64-linux- gnu/hailo/tappas/post- process/libyolo_hailortpp_post.so ! hmux.sink_1 hmux. ! hailooverlay ! videoconvert ! fpsdisplaysink GStreamer Framework
  14. 27 • 1. 取得跌倒資料集 (Kaggle, roboflow…) • 2. Amazon EC2

    或是 Google Colab 重新訓練 • 3. 佈署模型在邊緣裝置 ( 例如 Pi5) • 4. 使用 AI Kit • 4.1 將原模型 export 成 ONNX 模型 • 4.2 建立環境 , 使用 SDK 重新編譯模型 • 5. 將模型重新佈署到邊緣裝置 訓練自己的 YOLO 資料集實際步驟
  15. 29 • $ docker run --name "hailo_yolov8" -it --gpus all

    --ipc=host -v /home/ubuntu/datasets:/workspace/datasets yolov8:v0 • # time yolo detect train data=/path/to/data.yaml model=yolov8s.pt name=retrain_yolov8s epochs=5 batch=16 (real 13m44.734s) 在 Amazon EC2 用 Docker 訓練 https://github.com/hailo-ai/hailo-rpi5-examples/blob/main/doc/retraining-example.md
  16. 31 • # cd /workspace/ultralytics • # yolo export model=/workspace/ultralytics/runs/detect/r

    etrain_yolov8n/weights/best.pt imgsz=640 format=onnx opset=11 匯出成 ONNX 格式 https://github.com/hailo-ai/hailo-rpi5-examples/blob/main/doc/retraining-example.md
  17. 33 • $ pip install hailo_dataflow_compiler-py3-none- linux_x86_64.whl • $ pip

    install hailo_model_zoo-py3-none-any.whl • $ time hailomz compile --hw-arch hailo8l --ckpt best.onnx --calib-path ~/path/to/images --yaml yolov8n.yaml --classes 1 (real 16m7.818s) 建立環境 , 使用 SDK 重新編譯模型 https://github.com/hailo-ai/hailo-rpi5-examples/blob/main/doc/retraining-example.md
  18. 36 • AMI: Deep Learning Base OSS Nvidia Driver GPU

    AMI (Ubuntu 22.04) (x64) • type: g4dn.2xlarge Amazon EC2 價格
  19. • Raspberry Pi AI Kit 官方文件 • https://reurl.cc/bV8ER6 • Hailo

    Raspberry Pi 5 Examples • https://github.com/hailo-ai/hailo-rpi5-examples • Hailo TAPPAS • https://github.com/hailo-ai/tappas • Hailo TAPPAS User Guide • https://reurl.cc/jWZG7L 更多說明
  20. • Hailo AI Software Suite User Guide • Hailo TAPPAS

    User Guide • HailoRT User Guide • Hailo Dataflow Compiler User Guide • Hailo Model Zoo User Guide • Hailo Integration Tool User Guide 更多 Hailo 文件
  21. • @Raspberry Pi 贊助 Raspberry Pi Beginner's Guide • @Raspberry

    Pi 贊助 Raspberry Pi 5 • @Raspberry Pi 贊助 Active Cooler for Raspberry Pi 5 • @RICELEE 提供一片 Zero 2 W 抽獎 • @Creative5 贊助 USB 小禮物 感謝乾爹們~