一. 關于 AMD Vitis Vision Library
Vitis Vision 庫是一組 90 多個內核,基于 OpenCV 計算機視覺庫,針對 AMD FPGA、AMD AI Engine 和 AMD SoC 進行了優化。 Vitis Vision 庫中的內核在 Vitis 工具套件中進行了優化和支持。
二.硬件和軟件要求
Vitis Vision 庫設計用于與 AMD Zynq、AMD Zynq Ultrascale+、AMD VCK190和 AMD Alveo FPGA 配合使用。 該庫已在 zcu102、zcu104、vck190、U50 和 U200 板上經過驗證。
必要條件:
有效安裝Vitis 2022.2或更高版本以及相應的許可證。
必須安裝Xilinx Runtime (XRT)。 XRT 為 AMD FPGA 提供軟件接口。
安裝 OpenCV-4.4.0 x86 庫(兼容libjpeg.so)。 x86 庫必須用于:
a.L1 flow irrespective of target FPGA device being PCIe or embedded.
b.L2/L3 flow when the target device is PCIe based
c.L2/L3 flow when performing software emulation for an embedded platform.
對于針對嵌入式平臺的 L2/L3 Flow(針對hardware emulation and hardware build),應使用 sysroot 中附帶的 aarch32/aarch64 版本 OpenCV。
如果libOpenCL.so不存在,則必須安裝。
安裝 Vitis 2022.2 或更高版本支持該平臺的卡。
如果針對嵌入式平臺,請安裝它并設置評估板。
三.OpenCV 安裝指導
建議全新安裝 OpenCV 4.4.0,不要使用系統的現有庫,因為它們可能適用于 Vitis 環境,也可能不適用于。
請確保更新和升級系統的軟件包和操作系統庫,并安裝 cmake 版本>3.5,然后再繼續。不然可能遇到如下的錯誤:
#CMake Error: The source directory "/home/***/Desktop/source/source/build/WITH_V4L=ON" does not exist.
以下步驟可幫助安裝編譯和鏈接 Vitis Vision 主機代碼中的 OpenCV 調用所需的基本庫。
下面是一個完整的示例,基于 Ubuntu 22.04/bash,在 /home/ycw/Desktop 路徑下操作。
以下為可能會遇到的問題:
Q1: 遇到下面的這個錯誤,可能 cmake 的版本沒有大于3.5。
CMake Error: The source directory "/home/ycw/Desktop/source/source/build/WITH_V4L=ON" does not exist.
Q2:FATAL: In-source builds are not allowed.
需要安裝上面的步驟 mkdir build文件夾,注意如果已經創建了 build 目錄,還是出現這個 FATAL ERROR 注意 cd 回 source 目錄內,嘗試使用如下命令清理一下 cache:rm -rf CMakeCache.txt CMakeFiles
Q3:CMAKE_CXX_COMPILER=< path-to-Vitis-installation-directory>.
這里的 path-to-Vitis-installation-directory應該設置成 Vitis_HLS 的路徑。
見上面的完整示例。
五. 兩種platform 的master/vision/L3/examples/isppipeline 的流程
Level 3: Pipeline Applications:
https://github.com/Xilinx/Vitis_Libraries/tree/master/vision/L3#level-3-pipeline-applications
不同設備和行為流程如下:
實例:
1. Pcie設備示例(U50):
xilinx_u50_gen3x16_xdma_5_202210_1.xpfm的編譯 make 流程:
a. OPENCV_INCLUDE、OPENCV_LIB 指向的是步驟3(OpenCV安裝指導)CMAKE_INSTALL_PREFIX 設置的目錄內。
b. U50 的platform
(xilinx_u50_gen3x16_xdma_5_202210_1.xpfm)
該示例 xilinx_u50_gen3x16_xdma_5_202210_1.xpfm 默認部署在下圖的路徑。
c. 示例代碼:
2. Embedded 設備示例(ZCU102):
xilinx_zcu102_base_202220_1.xpfm 的編譯 make 流程:
注意點:
a.OPENCV_INCLUDE、OPENCV_LIB指向的是步驟3(OpenCV安裝指導)CMAKE_INSTALL_PREFIX 設置的目錄內。
b. SYSROOT 可以通過如下的方式獲?。?/p>
2.1 在下面的鏈接下載 zynqmp 的 common image :
https://www.xilinx.com/member/forms/download/xef.html?filename=xilinx-zynqmp-common-v2022.2_10141622.tar.gz
2.2 解壓之后,cd 到 common-image 目錄內,使用命令(./sdk.sh-y -d ./ -p)安裝 sysroot。該示例安裝完成之后,安裝在下圖顯示的目錄:/home/ycw/Desktop/xilinx-zynqmp-common-v2022.2/sysroots/
c.示例代碼:
六. 板上運行
U50 的 HW 運行示例:
1. 使用 make run TARGET=hw 運行的示例代碼:
注:運行之后可以看到在
/home/ycw/Desktop/Vitis_Libraries-2022.2/vision/L3/examples/isppipeline/目錄下生成了 hls_output.png 文件。
2. Build HW 之后生成的 App 運行示例:
注:
1. 當前在
/home/ycw/Desktop/Vitis_Libraries-2022.2/vision/L3/examples/isppipeline/build_dir.hw.xilinx_u50_gen3x16_xdma_5_202210_1/
路徑內,isppipeline 需要帶入輸入圖片的絕對路徑參數,這里輸入圖片的路徑是:
/home/ycw/Desktop/Vitis_Libraries-2022.2/vision/L3/examples/isppipeline/input.png
2. 生成的圖片默認也在
/home/ycw/Desktop/Vitis_Libraries-2022.2/vision/L3/examples/isppipeline/build_dir.hw.xilinx_u50_gen3x16_xdma_5_202210_1/
路徑內。
審核編輯:劉清
-
FPGA
+關注
關注
1604文章
21341瀏覽量
594123 -
soc
+關注
關注
38文章
3769瀏覽量
215902 -
計算機視覺
+關注
關注
8文章
1605瀏覽量
45673 -
OpenCV
+關注
關注
29文章
612瀏覽量
40841 -
Ubuntu系統
+關注
關注
0文章
84瀏覽量
3806
原文標題:開發者分享|AMD Vitis? Libraries Vision L3 Isppipeline U50/ZCU102 流程示例
文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發者社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論