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

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

3天內(nèi)不再提示

基于FPGA并行計(jì)算的圖像處理案例

454398 ? 來(lái)源:PYNQ開(kāi)源社區(qū) ? 作者:PYNQ開(kāi)源社區(qū) ? 2020-11-04 12:07 ? 次閱讀

圖像處理算法在各種場(chǎng)景中都有廣泛應(yīng)用,借助于FPGA并行計(jì)算的優(yōu)勢(shì)可以將算法性能有效提升,但為了提升系統(tǒng)整體性能,僅僅提升某一部分的性能是不夠的,一個(gè)好的方法是在FPGA內(nèi)實(shí)現(xiàn)全部視頻輸入輸出接口和圖像算法的完整通路。本Overlay的視頻輸入來(lái)自O(shè)V5640攝像頭,包含多個(gè)可任意切換的圖像處理算法,并包含了一個(gè)HDMI輸出接口顯示處理結(jié)果。

圖像處理算法在各種場(chǎng)景中都有廣泛應(yīng)用,借助于FPGA并行計(jì)算的優(yōu)勢(shì)可以將算法性能有效提升,但為了提升系統(tǒng)整體性能,僅僅提升某一部分的性能是不夠的,一個(gè)好的方法是在FPGA內(nèi)實(shí)現(xiàn)全部視頻輸入輸出接口和圖像算法的完整通路。本Overlay的視頻輸入來(lái)自O(shè)V5640攝像頭,包含多個(gè)可任意切換的圖像處理算法,并包含了一個(gè)HDMI輸出接口顯示處理結(jié)果。

設(shè)備清單
- PYNQ-Z2套件
- OV5640 Camera Board
(如Waveshare OV5640或者其它兼容版本)
- PMOD-Camera adapter
- HDMI monitor

系統(tǒng)架構(gòu)

算法列表
Overlay中實(shí)現(xiàn)了多個(gè)圖像處理算法,在HLS中實(shí)現(xiàn)并封裝為IP后在Block Design中被調(diào)用,讀者如有興趣可以在Github的/boards/src/ip/目錄獲取源代碼。

1) rgb2hsv
2) subsample
3) equalizehist
4) gaussianBlur
5) sobel
6) canny
7) dilation
8) erosion

快速開(kāi)始
環(huán)境需求PYNQ v2.4,在PYNQ-Z2板卡聯(lián)網(wǎng)并啟動(dòng)后在終端中運(yùn)行如下代碼安裝Overlay到本地:
# (on PYNQ v2.4 only)

sudo pip3 install --upgrade git+https://github.com/xupsh/Pynq-CV-OV5640.git

案例演示

Notebook名稱:pynq4cv.ipynb

在Overlay中例化了一個(gè)I2C接口來(lái)對(duì)OV5640進(jìn)行配置,我們可以在Jupyter Notebook上通過(guò)Python對(duì)攝像頭進(jìn)行初始化,也可以通過(guò)改動(dòng)ov5640_config.py文件的內(nèi)容來(lái)修改配置。

接下來(lái),我們對(duì)Overlay中實(shí)現(xiàn)的圖像處理算法進(jìn)行配置。

配置完成后,還需要選擇使能Overlay中的某一個(gè)算法來(lái)對(duì)從OV5640獲取的圖像進(jìn)行處理,默認(rèn)不經(jīng)過(guò)任何圖像處理算法,從OV攝像頭獲取的圖像直接在HDMI顯示器上顯示。

我們也可以抓取OV5640拍攝的圖片并在Jupyter Notebook上顯示。

接下來(lái),我們可以使能不同的圖像處理算法,通過(guò)觀察HDMI顯示器的輸出,觀察不同算法的處理結(jié)果。

在運(yùn)行完畢后,記得關(guān)閉VDMA,以防止運(yùn)行其它Overlay時(shí)報(bào)錯(cuò)。

總結(jié)與展望
本案例在PL內(nèi)實(shí)現(xiàn)了一個(gè)完整的視頻通路,對(duì)圖像數(shù)據(jù)直接進(jìn)行硬件加速處理。相比于USB攝像頭減少了圖像數(shù)據(jù)從PS到PL拷貝和回傳的負(fù)載,提高了系統(tǒng)的性能同時(shí)極大降低了圖像處理的延時(shí)
編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1624

    文章

    21538

    瀏覽量

    600474
  • 圖像處理
    +關(guān)注

    關(guān)注

    27

    文章

    1272

    瀏覽量

    56500
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    FPGA圖像處理領(lǐng)域的優(yōu)勢(shì)有哪些?

    單元和可編程互聯(lián)線,可以實(shí)現(xiàn)高度并行的數(shù)據(jù)處理。在圖像處理任務(wù)中,如圖像預(yù)處理、特征提取和
    發(fā)表于 10-09 14:36

    基于FPGA+GPU異構(gòu)平臺(tái)的遙感圖像切片解決方案

    大型遙感圖像分割成圖像切片信息,以便更有效地處理和分析圖像數(shù)據(jù)。中科億海微自主研制的AI目標(biāo)識(shí)別加速卡,基于FPGA+GPU異構(gòu)
    的頭像 發(fā)表于 09-20 08:05 ?286次閱讀
    基于<b class='flag-5'>FPGA</b>+GPU異構(gòu)平臺(tái)的遙感<b class='flag-5'>圖像</b>切片解決方案

    淺談國(guó)產(chǎn)異構(gòu)雙核RISC-V+FPGA處理器AG32VF407的優(yōu)勢(shì)和應(yīng)用場(chǎng)景

    處理器和FPGA的配置。 高性能與低功耗 : RISC-V架構(gòu)以其低功耗和高效能著稱,而FPGA并行處理和高性能
    發(fā)表于 08-31 08:32

    FPGA在人工智能中的應(yīng)用有哪些?

    和安全的云計(jì)算和網(wǎng)絡(luò)服務(wù)。 三、具體應(yīng)用場(chǎng)景 圖像分類:在圖像分類任務(wù)中,FPGA可以承擔(dān)前置處理、圖像
    發(fā)表于 07-29 17:05

    基于FPGA圖像采集與顯示系統(tǒng)設(shè)計(jì)

    源和固有的并行處理能力,在數(shù)字信號(hào)處理、硬件加速、汽車電子等領(lǐng)域得到了廣泛應(yīng)用。在圖像采集與顯示系統(tǒng)中,FPGA能夠?qū)崿F(xiàn)高速、
    的頭像 發(fā)表于 07-17 10:58 ?1496次閱讀

    計(jì)算機(jī)視覺(jué)和圖像處理的區(qū)別和聯(lián)系

    計(jì)算機(jī)視覺(jué)和圖像處理是兩個(gè)密切相關(guān)但又有明顯區(qū)別的領(lǐng)域。 1. 基本概念 1.1 計(jì)算機(jī)視覺(jué) 計(jì)算機(jī)視覺(jué)是一門研究如何使
    的頭像 發(fā)表于 07-09 09:16 ?947次閱讀

    基于FPGA的類腦計(jì)算平臺(tái) —PYNQ 集群的無(wú)監(jiān)督圖像識(shí)別類腦計(jì)算系統(tǒng)

    FPGA 集群的硬件加速器,通過(guò)并行流水線結(jié)構(gòu)實(shí)現(xiàn) 8 個(gè)神經(jīng)元同時(shí)計(jì)算并采用分時(shí)復(fù)用 8 個(gè)神經(jīng)元實(shí)現(xiàn)任意規(guī)模的脈沖神經(jīng)網(wǎng)絡(luò)的加速,并 使用 FPGA 實(shí)現(xiàn) STDP 學(xué)習(xí)算法使
    發(fā)表于 06-25 18:35

    FPGA設(shè)計(jì)經(jīng)驗(yàn)之圖像處理

    NxN的算子中的N不能特別大。當(dāng)然FPGA也可以接DDR把圖像緩存到其中再讀出來(lái)進(jìn)行處理,但這種處理模式就和CPU差不多了,達(dá)不到最高的實(shí)時(shí)性。其實(shí)有些我們認(rèn)為需要隨機(jī)讀取數(shù)據(jù)的
    發(fā)表于 06-12 16:26

    基于FPGA的實(shí)時(shí)邊緣檢測(cè)系統(tǒng)設(shè)計(jì),Sobel圖像邊緣檢測(cè),FPGA圖像處理

    計(jì)算機(jī)軟件實(shí)現(xiàn)方式有更快的處理速度。 經(jīng)驗(yàn)證,系統(tǒng)工作穩(wěn)定,滿足實(shí)時(shí)性要求 。 MATLAB 與 FPGA無(wú)線通信、圖像處理、數(shù)字信號(hào)
    發(fā)表于 05-24 07:45

    fpga芯片的主要特點(diǎn)包括 fpga芯片上市公司

    FPGA芯片的主要特點(diǎn)包括以下幾個(gè)方面: 高性能和實(shí)時(shí)性:FPGA芯片由數(shù)百萬(wàn)個(gè)邏輯單元組成,因此具有并行處理能力,其運(yùn)行速度遠(yuǎn)超單片機(jī)和DSP。這種
    的頭像 發(fā)表于 03-14 16:46 ?886次閱讀

    FPGA圖像處理之CLAHE算法

    FPGA圖像處理--CLAHE算法(一)中介紹了為啥要用CLAHE算法來(lái)做圖像增強(qiáng)。
    的頭像 發(fā)表于 01-04 12:23 ?2224次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>圖像</b><b class='flag-5'>處理</b>之CLAHE算法

    OpenCL多Kernel并行計(jì)算結(jié)果討論分析

    · GitHub 想要完成板卡上多核并行計(jì)算任務(wù),需要包含多個(gè)例化單元的xclbin,對(duì)于要例化為多個(gè)計(jì)算單元的同一內(nèi)核,可以使用nk標(biāo)志指定 conn_u200.cfg 配置文件中的計(jì)算單元數(shù)量。同時(shí)
    發(fā)表于 12-31 21:31

    什么是SIMT和SIMD?SIMT和SMID在硬件實(shí)現(xiàn)上主要的區(qū)別有哪些

    計(jì)算機(jī)處理器可以同時(shí)對(duì)多個(gè)數(shù)據(jù)元素執(zhí)行相同的操作,從而能夠在單個(gè)時(shí)鐘周期內(nèi)完成多個(gè)計(jì)算操作。這種并行計(jì)算方式在處理向量、圖形
    的頭像 發(fā)表于 12-07 14:31 ?2508次閱讀

    FPGA圖像處理方法

    圖像細(xì)節(jié)。 FPGA 圖像處理方法 1、圖像增強(qiáng) 兩大方法:空間域方法和時(shí)間域方法(以后再詳述) 2、
    的頭像 發(fā)表于 12-02 13:15 ?962次閱讀

    如何處理cache miss問(wèn)題以提高加速器效率呢?

    帶寬是影響FPGA加速器的重要因素,因?yàn)榇罅康?b class='flag-5'>并行計(jì)算對(duì)數(shù)據(jù)量要求很大。
    的頭像 發(fā)表于 11-16 16:36 ?1289次閱讀
    如何<b class='flag-5'>處理</b>cache miss問(wèn)題以提高加速器效率呢?