使用索貝爾濾波器添IP加到HDMI直通中,以實(shí)現(xiàn)實(shí)時(shí)圖像處理
這一次,我們將在Vitis HLS 2022.2和PYNQ-Z2 HDMI用法- 2:HDMI Passthrough中結(jié)合構(gòu)建和安裝OpenCV來執(zhí)行實(shí)時(shí)索貝爾濾波器圖像處理。
VitisHLS
基于在Vitis HLS 2022.2中構(gòu)建和安裝OpenCV,我們可以直接執(zhí)行Run Implementation。
然后,通過Vitis HLS生成的IP將位于solution1/impl/ IP文件夾中。
Vivado街區(qū)設(shè)計(jì)
我們可以首先將前面生成的HLS IP導(dǎo)入到Vivado中。
然后,按照PYNQ-Z2 HDMI用法- 2:HDMI直通中概述的塊設(shè)計(jì),將導(dǎo)入的IP作為額外組件添加。
最后,運(yùn)行Connection Automation來自動(dòng)連接這些塊。
接下來,遵循標(biāo)準(zhǔn)的Vivado設(shè)計(jì)流程:合成—>實(shí)現(xiàn)—>生成比特流,然后將XSA導(dǎo)出到Vitis。
Vitis
基于PYNQ-Z2 HDMI用法- 1:TPG輸出和PYNQ-Z2 HDMI用法- 2:HDMI直通,在Vitis中構(gòu)建平臺(tái)和應(yīng)用。
由于我們使用的是HLS IP,因此在構(gòu)建平臺(tái)之后,您將在目錄中找到文件xhls_sobel_axi_stream_top.h
該文件詳細(xì)說明了如何初始化HLS IP并描述了其功能。
因此,在應(yīng)用程序中,我們需要導(dǎo)入XHls_sobel_axi_stream_top .h并聲明XHls_sobel_axi_stream_top結(jié)構(gòu)。
在main函數(shù)中初始化Sobel過濾器并配置分辨率。
執(zhí)行Sobel filter IP命令。
接下來,在構(gòu)建完整的程序之后,將其閃現(xiàn)到PYNQ-Z2板上。
結(jié)果
本文編譯自hackster.io