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開源社區(qū) ? 作者:PYNQ開源社區(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

快速開始
環(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)注

    1625

    文章

    21624

    瀏覽量

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

    關(guān)注

    27

    文章

    1275

    瀏覽量

    56577
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    GPU加速計(jì)算平臺(tái)是什么

    GPU加速計(jì)算平臺(tái),簡(jiǎn)而言之,是利用圖形處理器(GPU)的強(qiáng)大并行計(jì)算能力來(lái)加速科學(xué)計(jì)算、數(shù)據(jù)分析、機(jī)器學(xué)習(xí)等復(fù)雜計(jì)算任務(wù)的軟硬件結(jié)合系統(tǒng)。
    的頭像 發(fā)表于 10-25 09:23 ?189次閱讀

    FPGA加速深度學(xué)習(xí)模型的案例

    計(jì)算機(jī)主板上,以高速PCIe總線進(jìn)行數(shù)據(jù)傳輸。 利用FPGA并行計(jì)算能力,快速處理大量的卷積計(jì)算。 可編程性
    的頭像 發(fā)表于 10-25 09:22 ?111次閱讀

    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 ?328次閱讀
    基于<b class='flag-5'>FPGA</b>+GPU異構(gòu)平臺(tái)的遙感<b class='flag-5'>圖像</b>切片解決方案

    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 ?1637次閱讀

    計(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 ?1088次閱讀

    基于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 ?969次閱讀

    FPGA圖像處理之CLAHE算法

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

    什么是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 ?2746次閱讀

    FPGA圖像處理方法

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

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

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