chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>硬件加速人體姿態(tài)估計開源分享

硬件加速人體姿態(tài)估計開源分享

2023-06-25 | zip | 0.00 MB | 次下載 | 免費(fèi)

資料介紹

描述

抽象的

簡介最新深度學(xué)習(xí)模型與最先進(jìn)的硬件相結(jié)合,可以實時執(zhí)行人體姿態(tài)估計 (HPE)。HPE 是指根據(jù)圖像數(shù)據(jù)估計人體的運(yùn)動學(xué)模型。瑞士東部應(yīng)用科學(xué)大學(xué) ( OST )人工智能跨學(xué)科中心 ( ICAI ) 與瑞士 VRM合作,采用了著名的OpenPoseHPE 的網(wǎng)絡(luò),并使其計算效率更高。讓我們將此項目的網(wǎng)絡(luò)稱為 ICAIPose。當(dāng)前的原型使用具有一流和計算密集型深度學(xué)習(xí)模型的多攝像頭系統(tǒng),可在多個圖形處理單元(GPU)上運(yùn)行,具有足夠的性能。

為了在治療環(huán)境中廣泛采用 HPE,需要一個小型且具有成本效益的系統(tǒng)。因此,姿勢跟蹤系統(tǒng)應(yīng)該在邊緣設(shè)備上運(yùn)行。

目標(biāo):在這個項目中,ICAIPose 應(yīng)該在 AMD-Xilinx 的 FPGA 邊緣設(shè)備 Kria KV 260 上實現(xiàn)。由于 ICAIPose 是為 GPU 設(shè)計的,因此在 FPGA 上運(yùn)行這樣一個給定的網(wǎng)絡(luò)所需的努力和性能影響是主要關(guān)注點。

方法:該應(yīng)用程序需要一個攝像頭接口和一個深度學(xué)習(xí)處理單元。為了測試這些硬件部件,使用這些部件的給定示例項目首先在 Kria 板上運(yùn)行。然后,使用 AMD-Xilinx 的 Vitis AI 為 FPGA 上的深度學(xué)習(xí)處理器單元 (DPU) 編譯 ICAIPose 網(wǎng)絡(luò),并對網(wǎng)絡(luò)進(jìn)行微調(diào)。隨附的 Vitis AI 運(yùn)行時引擎及其 Python API 通過 FPGA 微處理器上的嵌入式 Linux 與 DPU 進(jìn)行通信。

結(jié)論:ICAIPose 是一個非常大的神經(jīng)網(wǎng)絡(luò),具有超過 100 個 GOps 來處理一幀。然而,在 KV260 上可以實現(xiàn)每秒 8 幀的吞吐量。基于 GPU 的 NVIDIA Jetson Xavier NX 的成本是 Kria 主板的兩倍多,它實現(xiàn)了相似的幀速率。

ICAIPose 在具有良好性能的邊緣設(shè)備上的成功實施為在治療環(huán)境中的廣泛應(yīng)用開辟了領(lǐng)域。

AMD-Xilinx 的 Vitis AI 框架已經(jīng)過廣泛測試并顯示出其優(yōu)勢,但也存在一些初期問題。對于在 FPGA 上運(yùn)行深度神經(jīng)網(wǎng)絡(luò),Vitis AI 是一個在開發(fā)時間和性能之間取得良好平衡的框架。在用 HDL 或 HLS 實現(xiàn)硬件加速算法之前應(yīng)該考慮這一點。

先決條件

  • 安裝了 Vitis AI 的 Linux 主機(jī) PC
  • 了解 Vitis AI 工作流程
  • KV260 上網(wǎng)

基礎(chǔ)知識

HPE 網(wǎng)絡(luò)的通常輸出是給定人體姿勢關(guān)鍵點的置信度圖。對于單個HPE的任務(wù),找到置信度圖的最大值并分配相應(yīng)的關(guān)鍵點。

?
?
?
pYYBAGNYkrKAUjs3AAAXB4hDCfY821.png
?
1 / 3 ?繪制姿勢的輸入圖像
?

相機(jī)接口

poYBAGNYkreAZiEXAAuO-dnQeV4989.jpg
帶攝像頭的 Kria KV260 Vision AI 入門套件
?

相機(jī)接口是設(shè)計的重要組成部分。Kria KV260 Basic Accessory Pack 包含一個小型相機(jī)。

AMD-Xilinx 為Kria? KV260 Vision AI Starter Kit Applications提供了一個示例應(yīng)用程序。

智能相機(jī)應(yīng)用程序的模塊設(shè)計表明,硬件平臺包含了我們這個項目所需的一切,包括相機(jī)的硬件接口和 DPU。此示例應(yīng)用程序可用作基礎(chǔ)設(shè)計,以使用相機(jī)運(yùn)行自定義 Vitis AI 模型。

pYYBAGNYkruAOy5RAAD7qc7BnK8412.png
smartcamera應(yīng)用程序提供的系統(tǒng)模塊設(shè)計
?

對基礎(chǔ)設(shè)計的修改

首先,仔細(xì)檢查所有版本以確保它們匹配:

  • 對于 Vitis AI 1.4 和以前的版本,KV260 的板映像為 2020.2
  • 這需要使用 Smartcamera 應(yīng)用程序,該應(yīng)用程序也使用 2020.2 板映像(不是最新版本)。
  • 2020.2智能相機(jī)平臺的Vitis AI版本為Vitis AI 1.3.0

按照此說明在 KV260 上安裝 smartcamera 應(yīng)用程序(直到第 5 節(jié))。

使用以太網(wǎng)端口將 KV260 板連接到本地網(wǎng)絡(luò)。

通過 UART/JTAG 連接時,檢查以太網(wǎng) (eth0) 端口的分配 IP 地址。

ifconfig

該命令的輸出類似于:

eth0      Link encap:Ethernet  HWaddr 00:0a:35:00:22:01  
          inet addr:152.96.212.163  Bcast:152.96.212.255  Mask:255.255.255
          inet6 addr: fe80::20a:35ff:fe00:2201/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:67 errors:0 dropped:0 overruns:0 frame:0
          TX packets:51 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:9478 (9.2 KiB)  TX bytes:5806 (5.6 KiB)
          Interrupt:44

在這種情況下,IP 地址是152.96.212.163.

使用此地址從主機(jī) PC(連接到與 KV260 相同的網(wǎng)絡(luò))通過網(wǎng)絡(luò)連接ssh到 KV260。

ssh petalinux@

要運(yùn)行所有 Vitis AI 示例,必須在 KV260 上進(jìn)行一些進(jìn)一步的安裝。確保設(shè)備已連接到互聯(lián)網(wǎng)。

X11-轉(zhuǎn)發(fā)

sudo dnf install packagegroup-petalinux-x11

設(shè)置顯示環(huán)境

export DISPLAY=:0.0

葡萄籽油

sudo dnf install packagegroup-petalinux-vitisai

開放式CV

sudo dnf install packagegroup-petalinux-opencv

柏油

sudo dnf install xz

Vitis AI 運(yùn)行時

sudo wget https://www.xilinx.com/bin/public/openDownload?filename=vitis-ai-runtime-1.3.0.tar.gz

sudo tar -xzvf openDownload\?filename\=vitis-ai-runtime-1.3.0.tar.gz

cd vitis-ai-runtime-1.3.0/aarch64/centos/

sudo bash setup.sh

Vitis AI 運(yùn)行時 (VART) 需要DPU.xclbin文件中vart.conf文件的位置。但相應(yīng)的xclbin文件是來自 smartcam 應(yīng)用程序的文件。

使用以下命令更改和 xclbin 文件。vart.conf

echo "firmware: /lib/firmware/xilinx/kv260-smartcam/kv260-smartcam.xclbin" | sudo tee /etc/vart.conf

sudo cp /lib/firmware/xilinx/kv260-smartcam/kv260-smartcam.xclbin /usr/lib/

sudo mv /usr/lib/kv260-smartcam.xclbin /usr/lib/dpu.xclbin

在運(yùn)行 Vitis AI 示例之前,必須加載相應(yīng)的 smartcam 應(yīng)用程序(每次啟動后)。

sudo xmutil unloadapp
sudo xmutil loadapp kv260-smartcam

加載 KV260-smartcam 應(yīng)用程序后,可以使用以下 GStreamer 命令使用 X11-forwarding 測試相機(jī):

gst-launch-1.0 mediasrcbin media-device=/dev/media0 v4l2src0::io-mode=dmabuf v4l2src0::stride-align=256  ! video/x-raw, width=256, height=256, format=NV12, framerate=30/1 ! videoconvert! ximagesink

如果通過 HDMI(本例中為 1920x1200)連接顯示器,則也可以測試相機(jī)。請根據(jù)您連接的顯示器更改寬度和高度參數(shù)

gst-launch-1.0 mediasrcbin media-device=/dev/media0 v4l2src0::io-mode=dmabuf v4l2src0::stride-align=256 ! video/x-raw, width=1920, height=1200, format=NV12, framerate=30/1  ! kmssink driver-name=xlnx plane-id=39 sync=false fullscreen-overlay=true

Vitis AI 模型動物園

在下一個項目步驟中,將結(jié)合 Vitis AI 對攝像頭系統(tǒng)進(jìn)行測試。借助來自Vitis AI Model Zoo的大量預(yù)訓(xùn)練神經(jīng)網(wǎng)絡(luò),可以選擇一個示例。

Hourglass 是一個 HPE 網(wǎng)絡(luò),具有以下屬性:

cf_hourglass_mpii_256_256_10.2G_2.0

  • 描述:帶有沙漏的姿勢估計模型
  • 輸入尺寸:256x256
  • 浮動操作:10.2G
  • 任務(wù):姿態(tài)估計
  • 框架:咖啡
  • 修剪:'不'
  • 最新版本:Vitis AI 2.0

KV260 模型的預(yù)編譯版本已使用 Vitis AI 2.0 和 DPU 配置進(jìn)行編譯B4096

我們使用 DPU 配置B3136caffe因此,必須使用相應(yīng) DPU 和正確的 Vitis AI 版本 1.3.0(Docker 映像:)的工作流重新編譯沙漏模型xilinx/vitis-ai-cpu:1.3.411。

DPU 指紋和相應(yīng)的arch.json文件可以在smartcam 文檔中找到。

{
    "fingerprint":"0x1000020F6014406"
}

新編譯的文件模型可以保存在 KV260 上。

Vitis AI 庫提供的測試應(yīng)用程序 ( test_video_hourglass) 用于運(yùn)行模型。為此,請使用此項目中提供的預(yù)構(gòu)建文件或使用 KV260 主機(jī) PC 上的交叉編譯系統(tǒng)環(huán)境編譯測試應(yīng)用程序(遵循 Vitis AI說明)

下載并解壓 KV260 上的預(yù)構(gòu)建文件。

wget https://github.com/Nunigan/HardwareAcceleratedPoseTracking/raw/main/prebuilt.tar.xz

tar -xf prebuilt.tar.xz

轉(zhuǎn)到沙漏文件夾

cd prebuilt/hourglass/

來自相機(jī)接口的 GStreamer 字符串用作輸入設(shè)備。使用以下命令,程序以兩個線程運(yùn)行。

./test_video_hourglass hourglass_kv.xmodel "mediasrcbin media-device=/dev/media0 v4l2src0::io-mode=dmabuf v4l2src0::stride-align=256  ! video/x-raw, width=256, height=256, format=NV12, framerate=30/1 ! videoconvert ! appsink" -t 2
使用 Vitis AI 在 KV260 上運(yùn)行沙漏
?

沙漏以 30 fps 運(yùn)行。請注意,限制因素是相機(jī)而不是神經(jīng)網(wǎng)絡(luò)。

葡萄籽油

該項目的主要部分是使用為傳統(tǒng) GPU 實現(xiàn)和 Tensorflow 設(shè)計的神經(jīng)網(wǎng)絡(luò),并嘗試在 FPGA 上運(yùn)行它。

ICAIPose 是一個相當(dāng)大的網(wǎng)絡(luò),具有大約 1100 萬個可學(xué)習(xí)參數(shù)并103 GOps用于處理圖像。

原始網(wǎng)絡(luò)由以下層組成:

  • Conv2D
  • PReLU activation function
  • Concatenate
  • UpSampling2D
  • DepthwiseConv2D
  • MaxPooling2D

對于 Vitis AI 的使用,必須檢查 Vitis AI 是否支持神經(jīng)網(wǎng)絡(luò)的所有層(請參閱相應(yīng)的用戶指南)。

PReLU支持除激活函數(shù)之外的所有層。“Parametric ReLU”與函數(shù)非常相似Leaky ReLU(見下圖),只是泄漏項是一個可學(xué)習(xí)的參數(shù)。Vitis AI 支持Leaky ReLU0.1 的固定泄漏項。

pYYBAGNYkr6AIuYuAADWlYTmJrI156.png
Leaky ReLU 激活函數(shù),Vitis AI 定義的泄漏項為 0.1
?

引入Leaky ReLU激活功能帶來了一些挑戰(zhàn)。

結(jié)果

ICAIPose 在 Kria KV260 上
?

了解網(wǎng)絡(luò)在 FPGA 上運(yùn)行的速度很有趣,但重要的是了解是否由于量化而損失了一些 HPE 性能。

吞吐量性能

  • ICAIPose (256x256, 103 GOps): 8 fps

B3136DPU 和時鐘頻率為 的情況下300 MHz,給出了理論吞吐量940 GOps/s。

因此,結(jié)果在預(yù)期范圍內(nèi)(回想一下:103 GOps對于一張圖像)。

作為比較,NVIDIA Jetson Xavier NX 比 KV260 更昂貴,并且具有顯著更高的理論吞吐量(21 TOps),達(dá)到了 8 fps 的相同吞吐量。

人體姿勢估計性能

數(shù)據(jù)集提供了 2000 多張圖像和相應(yīng)的理想置信度圖,用于測試 HPE 性能。

歸一化置信度圖的均方誤差 (MSE) 是通過對每個像素之間的差異求平方和求和來計算的。下圖顯示了一個示例。左側(cè)圖像的均值是給定輸入的 MSE。

poYBAGNYksKAIi4oAACRZ1cdLHk558.png
數(shù)據(jù)集中的示例輸入圖像的均方誤差示例
?

我們現(xiàn)在可以比較量化網(wǎng)絡(luò)和浮點網(wǎng)絡(luò)之間的 MSE。作為附加信息,顯示了具有PReLU激活功能的原始網(wǎng)絡(luò)的 MSE。

所有圖像的 MSE:

  • Float: 0.8109
  • Quantized INT8: 0.9332
  • PReLU: 0.9348

PReluLeaky ReLU激活函數(shù)的變化甚至提高了網(wǎng)絡(luò)性能。量化對 有影響MSE,但影響很小。量化的網(wǎng)絡(luò)執(zhí)行以及未量化的PReLU網(wǎng)絡(luò)

結(jié)論

AMD-Xilinx 的 Vitis AI 框架經(jīng)過廣泛測試,顯示出其優(yōu)勢和一些初期問題。即使 FPGA 板更便宜,也可以將目標(biāo)設(shè)備從 GPU 更改為 FPGA,而不會損失顯著的性能。Vitis AI 允許在沒有 HDL 或 HLS 知識的情況下為 FPGA 設(shè)計高效的深度神經(jīng)網(wǎng)絡(luò)。

Kria KV260 Vision AI Starter Kit 是從 Vitis AI 開始的絕佳選擇。提供的攝像頭可以在 petalinux 環(huán)境中輕松使用。

參考

致謝

特別感謝ICAI瑞士 VRM提供了經(jīng)過培訓(xùn)的 ICAIpose 版本。

感謝電子嵌入式系統(tǒng)研究所作為學(xué)生項目的一部分支持這一挑戰(zhàn)。

修訂記錄

  • 2022 年 3 月 14 日 - 初始版本

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1DD3118電路圖紙資料
  2. 0.08 MB   |  1次下載  |  免費(fèi)
  3. 2AD庫封裝庫安裝教程
  4. 0.49 MB   |  1次下載  |  免費(fèi)
  5. 3PC6206 300mA低功耗低壓差線性穩(wěn)壓器中文資料
  6. 1.12 MB   |  1次下載  |  免費(fèi)
  7. 4網(wǎng)絡(luò)安全從業(yè)者入門指南
  8. 2.91 MB   |  1次下載  |  免費(fèi)
  9. 5DS-CS3A P00-CN-V3
  10. 618.05 KB  |  1次下載  |  免費(fèi)
  11. 6海川SM5701規(guī)格書
  12. 1.48 MB  |  次下載  |  免費(fèi)
  13. 7H20PR5電磁爐IGBT功率管規(guī)格書
  14. 1.68 MB   |  次下載  |  1 積分
  15. 8IP防護(hù)等級說明
  16. 0.08 MB   |  次下載  |  免費(fèi)

本月

  1. 1貼片三極管上的印字與真實名稱的對照表詳細(xì)說明
  2. 0.50 MB   |  103次下載  |  1 積分
  3. 2涂鴉各WiFi模塊原理圖加PCB封裝
  4. 11.75 MB   |  89次下載  |  1 積分
  5. 3錦銳科技CA51F2 SDK開發(fā)包
  6. 24.06 MB   |  43次下載  |  1 積分
  7. 4錦銳CA51F005 SDK開發(fā)包
  8. 19.47 MB   |  19次下載  |  1 積分
  9. 5PCB的EMC設(shè)計指南
  10. 2.47 MB   |  16次下載  |  1 積分
  11. 6HC05藍(lán)牙原理圖加PCB
  12. 15.76 MB   |  13次下載  |  1 積分
  13. 7802.11_Wireless_Networks
  14. 4.17 MB   |  12次下載  |  免費(fèi)
  15. 8蘋果iphone 11電路原理圖
  16. 4.98 MB   |  6次下載  |  2 積分

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935127次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191390次下載  |  10 積分
  9. 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  10. 158M  |  183342次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81588次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73815次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65989次下載  |  10 積分