衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于Vitis AI的ADAS目標識別

發燒電子愛好者 ? 來源:發燒電子愛好者 ? 作者:發燒電子愛好者 ? 2023-09-28 00:05 ? 次閱讀

一、基礎知識

(一)Vitis? AI開發環境

Vitis? AI開發環境可在賽靈思硬件平臺上加速 AI 推斷,包括邊緣器件和 Alveo? 加速器卡。此環境由經過最優化的 IP 核、工具、庫、模型和設計示例組成。其設計以高效和易用為核心,旨在通過賽靈思 SoC 和自適應計算加速平臺 (ACAP) 來充分發掘 AI 加速的全部潛能。Vitis AI 開發環境將底層可編程邏輯的繁復細節加以抽象化,從而幫助不具備 FPGA 知識的用戶輕松開發深度學習推斷應用。

AI.png

(二)Vitis AI Model Zoo

Vitis AI 有個很有重要的工具:Vitis AI Model Zoo,類似于Vitis AI的模型商城

MZOO.png

Vitis AI Model Zoo 包含經過最優化的深度學習模型,可在賽靈思平臺上加速部署深度學習推斷。這些模型涵蓋了不同的應用,包括 ADAS/AD、視頻監控機器人學和數據中心等。用戶可從這些經過預訓練的模型開始著手,享受深度學習加速所帶來的諸多利益。

(三)ADAS

高級駕駛輔助系統(Advanced Driving Assistance System)是利用安裝在車上的各式各樣傳感器毫米波雷達、激光雷達、單雙目攝像頭以及衛星導航),在汽車行駛過程中隨時來感應周圍的環境,收集數據,進行靜態、動態物體的辨識、偵測與追蹤,并結合導航地圖數據,進行系統的運算與分析,從而預先讓駕駛者察覺到可能發生的危險,有效增加汽車駕駛的舒適性和安全性。 近年來ADAS市場增長迅速,原來這類系統局限于高端市場,而現在正在進入中端市場,與此同時,許多低技術應用在入門級乘用車領域更加常見,經過改進的新型傳感器技術也在為系統布署創造新的機會與策略。

二、環境搭建

Vitis AI 庫有兩種安裝方法。一種是通過配置 PetaLinux 來重構系統,另一種則是在線安裝 Vitis AI 庫,安裝 Vitis-AI 庫后,再安裝 Vitis-AI 從屬庫。

(一)系統下載&安裝

PetaLinux 以前沒玩過,那就體驗一把。先從官網下載PetaLinux系統鏡像(https://china.xilinx.com/member/forms/download/design-license-xef.html?filename=xilinx-kv260-dpu-v2022.2-v3.0.0.img.gz),注意先注冊AMD賬號,然后填寫一些信息才能注冊成功,壓縮文件有3.3G,解壓后的文件8.8G。

注意文件命名,Vitis AI 版本為V3.0.0,此處有個坑,后續遇到再說。IMG文件燒錄TF卡后上電,PetaLinux 就這樣:

root@xilinx-kv260-starterkit-20222:~/Vitis-AI# uname -a
Linux xilinx-kv260-starterkit-20222 5.15.36-xilinx-v2022.2 #1 SMP Mon Oct 3 07:50:07 UTC 2022 aarch64 aarch64 aarch64 GNU/
root@xilinx-kv260-starterkit-20222:~/Vitis-AI#

映入眼簾的就是2個文件夾,包括鼎鼎大名的Vitis-AI :

AD1.png


接下來將在這個文件夾中玩的不亦樂乎。

(二)準備圖像包

在官方鏈接(https://china.xilinx.com/bin/public/openDownload?filename=vitis_ai_runtime_r3.0.0_image_video.tar.gz)下載`vitis_ai_runtime_r3.0.0_image_video.tar.gz,其中包括demo需要的圖像和視頻文件,下載后解壓備用。

三、ADAS目標識別

Vitis AI 提供L了許多實例,其中包括一個ADAS目標識別的demo,在Vitis-AI/examples/vai_runtime/adas_detection中,可執行CPP程序已經編譯好,可以直接執行。

AD3.png


在執行demo之前,先看看readme。

Before running the program, please download the corresponding model and install it.
The model required by this sample is: yolov3_adas_pruned_0_9
You can find the detailed informantion of this model under
   Vitis-AI/models/AI-Model-Zoo/model-list/dk_yolov3_cityscapes_256_512_0.9_5.46G_1.3/model.yaml

In the model.yaml, you will find the model's download links for different platforms.
Please choose the corresponding model and download it.

Take ZCU102/ZCU104 as an example, execute the following commands to download and install the model.
        wget https://www.xilinx.com/bin/public/openDownload?filename=yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r2.5.0.tar.gz -O yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r2.5.0.tar.gz
        mkdir -p /usr/share/vitis_ai_library/models
        tar -xzvf yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r2.5.0.tar.gz
        cp yolov3_adas_pruned_0_9 /usr/share/vitis_ai_library/models -r

把非KV260的內容截掉了,readme基本上就是告訴用戶,去Vitis AI Model Zoo下載相應的model并安裝。

那就照著guideline開動,將之前圖形包中的adas.webm文件拷貝至當前目錄,然后執行./adas_detection adas.webm /usr/share/vitis_ai_library/models/yolov3_adas_pruned_0_9/yolov3_adas_pruned_0_9.xmodel,嗯,出錯了:

AD2.png

**注意,坑來了!**系統提示Please re-compile xmodel是不是?要不去重編xmodel?仔細看看問題,原來是系統是Vitis AI V3.0,xmodel卻是V2.5,導致CHECK fingerprint fail,直接去Vitis AI Model Zoo下載個V3.0的xmodel就好了,說干就干!

root@xilinx-kv260-starterkit-20222:~/Vitis-AI/examples/vai_runtime/adas_detection# wget https://www.xilinx.com/bin/public/openDownload?filename=yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz -O yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz
--2023-09-27 06:52:41--  https://www.xilinx.com/bin/public/openDownload?filename=yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz
Resolving www.xilinx.com... 223.119.248.58, 223.119.248.90
Connecting to www.xilinx.com|223.119.248.58|:443... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: https://xilinx-ax-dl.entitlenow.com/dl/ul/2023/01/06/R210771244/yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz?hash=PJrrJ06TWqMoH_m1gKVgXw&expires=1695855161&filename=yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz [following]
--2023-09-27 06:52:41--  https://xilinx-ax-dl.entitlenow.com/dl/ul/2023/01/06/R210771244/yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz?hash=PJrrJ06TWqMoH_m1gKVgXw&expires=1695855161&filename=yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz
Resolving xilinx-ax-dl.entitlenow.com... 223.119.244.25
Connecting to xilinx-ax-dl.entitlenow.com|223.119.244.25|:443... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: https://amd-ax-dlf.entitlenow.com/dl/ul/2023/01/06/R210771244/yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz?hash=PJrrJ06TWqMoH_m1gKVgXw&expires=1695855161&filename=yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz [following]
--2023-09-27 06:52:45--  https://amd-ax-dlf.entitlenow.com/dl/ul/2023/01/06/R210771244/yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz?hash=PJrrJ06TWqMoH_m1gKVgXw&expires=1695855161&filename=yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz
Resolving amd-ax-dlf.entitlenow.com... 223.119.248.34, 223.119.248.40, 2402:4f00:4002:400::df77:f828, ...
Connecting to amd-ax-dlf.entitlenow.com|223.119.248.34|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1875420 (1.8M) [application/octet-stream]
Saving to: 'yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz'

yolov3_adas_pruned_0_9-zcu102_ 100%[==================================================>]   1.79M  1.54MB/s    in 1.2s

2023-09-27 06:52:50 (1.54 MB/s) - 'yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz' saved [1875420/1875420]

root@xilinx-kv260-starterkit-20222:~/Vitis-AI/examples/vai_runtime/adas_detection#

再次執行以下命令:

root@xilinx-kv260-starterkit-20222:~/Vitis-AI/examples/vai_runtime/adas_detection# tar -xzvf yolov3_adas_pruned_0_9-zcu102_zcu104_kv260-r3.0.0.tar.gz
yolov3_adas_pruned_0_9/
yolov3_adas_pruned_0_9/meta.json
yolov3_adas_pruned_0_9/yolov3_adas_pruned_0_9.xmodel
yolov3_adas_pruned_0_9/md5sum.txt
yolov3_adas_pruned_0_9/yolov3_adas_pruned_0_9.prototxt
yolov3_adas_pruned_0_9_acc/
yolov3_adas_pruned_0_9_acc/yolov3_adas_pruned_0_9_acc.prototxt
yolov3_adas_pruned_0_9_acc/yolov3_adas_pruned_0_9_acc.xmodel
root@xilinx-kv260-starterkit-20222:~/Vitis-AI/examples/vai_runtime/adas_detection# cp yolov3_adas_pruned_0_9 /usr/share/vitis_ai_library/models -r

四、ADAS目標識別體驗

(一)目標識別

接上HDMI顯示器、鍵盤&鼠標,在KV260上執行(如果在SSH或串口上執行會提示cv::Exception):

`./adas_detection video/adas.webm /usr/share/vitis_ai_library/models/yolov3_adas_pruned_0_9/yolov3_adas_pruned_0_9.xmodel`
DA4.jpg

視頻在最后,可以看出識別的準確性和實時性都不錯,FPS保持在40左右。

(二)dashboard監測

KV260在PetaLinux上提供了一個Hardware Platform Statistics頁面,挺有意思的,用于展示系統硬件資源實時消耗情況。監控的內容包括CPU消耗、內存空閑和消耗、電壓、溫度…

DSB.png

下面是一張執行ADAS目標識別后CPU使用情況,可以看出CPU使用率一下子拉升了,A53的資源還是緊張了點,要是A72就好了。

bokeh_plot (1).png

最后

馬上中秋&國慶來了,終于在節前把第三篇作業完成,祝各位節日快樂!


審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • AI
    AI
    +關注

    關注

    87

    文章

    31513

    瀏覽量

    270326
  • adas
    +關注

    關注

    309

    文章

    2193

    瀏覽量

    208853
  • 開發環境
    +關注

    關注

    1

    文章

    230

    瀏覽量

    16697
  • Vitis
    +關注

    關注

    0

    文章

    147

    瀏覽量

    7497
收藏 人收藏

    評論

    相關推薦

    Vitis AI Library體驗之OCR識別

    Vitis AI Library是一組高層次庫和 API,專為利用 DPU 高效執行 AI 推斷而構建。它是基于 Vitis AI運行時利用
    的頭像 發表于 10-17 08:23 ?1163次閱讀
    <b class='flag-5'>Vitis</b> <b class='flag-5'>AI</b> Library體驗之OCR<b class='flag-5'>識別</b>

    開發者手機 AI - 目標識別 demo

    功能簡介 該應用是在Openharmony 4.0系統上開發的一個目標識別AI應用,旨在從上到下打通Openharmony AI子系統,展示Openharmony系統的AI能力,并為
    發表于 04-11 16:14

    RCS目標識別

    各位好!我是一名學生,先階段在準備競賽,需要RCS目標識別技術,實現海上油污檢測。請問有沒有地方采購現成產品,或是自己制作是如何制作,謝謝!或是有其他什么方法可以實現海上油污檢測?
    發表于 01-27 15:50

    目標識別之YOLO學習筆記

    目標識別 YOLO 學習筆記(一)
    發表于 05-12 15:05

    【HarmonyOS HiSpark AI Camera】智能目標識別

    項目名稱:智能目標識別試用計劃:通過攝像頭采集視頻,利用海思芯片進行處理和目標識別。計劃年內完成。
    發表于 11-19 20:46

    【KV260視覺入門套件試用體驗】部署vitis-ai環境以及測試demo

    /ug1354-xilinx-ai-sdk/%E4%B8%8B%E8%BD%BD-Vitis-AI-Library 在安裝->設置目標->步驟1:安裝開發板鏡像 開始下載鏡像 進入到
    發表于 08-27 23:35

    【KV260視覺入門套件試用體驗】五、VITis AI (人臉檢測和人體檢測)

    都已編譯到預構建的 Vitis AI 開發板鏡像中。您可直接運行示例。如有新程序,請在主機側對其進行編譯并將可執行程序復制到目標。 1. 使用 scp 命令將
    發表于 09-26 16:22

    【KV260視覺入門套件試用體驗】六、VITis AI車牌檢測&amp;車牌識別

    。下圖顯示了車牌檢測的結果。 將圖片中的車牌進行了框選,同事標準位置。 4.2、車牌識別 cd ~/Vitis-AI/examples/vai_library/samples/platenum
    發表于 09-26 16:28

    【KV260視覺入門套件試用體驗】基于Vitis AIADAS目標識別

    。 三、ADAS目標識別 Vitis AI 提供L了許多實例,其中包括一個ADAS目標識別的de
    發表于 09-27 23:21

    【KV260視覺入門套件試用體驗】Vitis-AI加速的YOLOX視頻目標檢測示例體驗和原理解析

    本文將介紹如何使用Vitis-AI加速YOLOX模型實現視頻中的目標檢測,并對相關源碼進行解讀。由于演示的示例程序源碼是Vitis-AI開源項目提供的,本文演示之前會介紹所需要的準備工作。演示之后
    發表于 10-06 23:32

    【KV260視覺入門套件試用體驗】KV260開發板之ADAS嘗試以及出現問題

    yolov3_adas_pruned_0_9 /usr/share/vitis_ai_library/models -r 最后執行ADAS目標識別程序 ./
    發表于 10-16 04:53

    【KV260視覺入門套件試用體驗】Vitis AI Library體驗之OCR識別

    Vitis AI Runtime,Vitis AI Library 有很多已經封裝好的神經網絡接口,直接拿來用即可。 OCR識別基于
    發表于 10-16 23:25

    運動目標識別與跟蹤系統的研究

    提出了一種運動目標識別與跟蹤系統的方案,給出了系統的原理圖和結構框圖。重點論述了圖像處理的過程和算法,包括顏色模型的選擇,圖像的預處理,圖像分割,目標識別
    發表于 07-20 16:14 ?29次下載

    基于SIFT視覺詞匯的目標識別算法

    算法的目標識別算法。結合在無遮擋與被局部遮擋的交通工具全方位姿態模型庫上進行的目標識別試驗,得出結果:算法對無遮擋目標的平均識別率能到達83%以上,具有良好的
    發表于 11-14 11:04 ?5次下載
    基于SIFT視覺詞匯的<b class='flag-5'>目標識別</b>算法

    使用Vitis-AI進行車牌識別

    電子發燒友網站提供《使用Vitis-AI進行車牌識別.zip》資料免費下載
    發表于 06-27 09:49 ?2次下載
    使用<b class='flag-5'>Vitis-AI</b>進行車牌<b class='flag-5'>識別</b>
    大发888充值100元| 百家乐在线直播| 百家乐官网科学| 百家乐官网庄闲赢负表| 澳门百家乐官网怎么| 赌博百家乐官网技巧| 百家乐官网桌布| 百家乐官网保证赢| 加州百家乐官网的玩法技巧和规则| 捷豹百家乐官网的玩法技巧和规则| 伟博百家乐官网娱乐城| 百家乐官网游戏新| 做生意摆什么好招财| 百家乐游戏真钱游戏| 百家乐永利娱乐场| 威尼斯人娱乐城安全吗| 沈阳盛京棋牌官网| 百家乐官网职业赌徒的解密| 百家乐官网英皇娱乐场| 博天堂百家乐官网的玩法技巧和规则| 百家乐官网是娱乐场最不公平的游戏 | 全讯网找a3322.com| 德州扑克初级教程| 杂多县| 浩博百家乐官网娱乐城| 红宝石百家乐官网娱乐城 | 利来博彩通| 德惠市| 玩百家乐官网去哪个平台好| 百家乐官网板路| 皇冠百家乐代理网| 百家乐送现金200| 大发888 大发888游戏平台| 久胜线上娱乐| 娱乐城注册| 真人百家乐官网怎么对冲| 百家乐官网技巧方法| 百家乐视频游戏金币| 太阳城菲律宾官方网| 百家乐官网视频世界| 棋牌百家乐官网有稳赚的方法吗|