哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

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

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

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

FPGA圖像處理平臺搭建方案

FPGA技術(shù)江湖 ? 來源:OpenFPGA ? 2026-04-22 09:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

以下文章來源于OpenFPGA,作者碎碎思

基于 MicroBlaze V 的 FPGA 視覺平臺:通過以太網(wǎng)實時捕獲、調(diào)試和傳輸 MIPI 相機數(shù)據(jù),支持全幀或高速 ROI 范圍。

09577bdc-3ac4-11f1-90a1-92fbcf53809c.png

介紹

圖像處理是FPGA的常見應用之一。其靈活的I/O接口使其能夠與各種攝像頭和傳感器進行交互,包括MIPI、Camera Link、并行接口以及DVI/HDMI接口。

編程邏輯的并行特性使得圖像處理流水線能夠直接并行實現(xiàn),從而提高確定性并降低延遲。

在開發(fā)圖像處理算法時,我們通??梢允褂酶呒墑e的框架,例如 Vitis HLS 或 MathWorks Simulink。

雖然看到算法在模擬環(huán)境中運行很棒,但最好還是看到它們在實際硬件上運行,才能確定自己設(shè)計的算法是否合理。

所以決定創(chuàng)建一個圖像處理系統(tǒng),方便隨時添加新的圖像處理核心。該系統(tǒng)能夠利用多個MIPI攝像頭。

圖像處理流程對圖像執(zhí)行簡單的處理階段,例如去馬賽克,然后通過以太網(wǎng)提供圖像,以便檢查算法性能。

由于目的是評估算法性能,因此通過以太網(wǎng)鏈路發(fā)送的圖像數(shù)據(jù)沒有進行壓縮。

為了能夠評估來自攝像機的實時視頻,該設(shè)計將能夠從整體圖像中抽取較小的窗口進行流式傳輸。

硬件選擇

在這個項目中,將使用 Artix UltraScale+ 15P FPGA,以及 2GB DDR4、10/100 以太網(wǎng)、SFP+ 插槽和 HDMI Rx 和 Tx。

在外部連接方面,還會利用 FMC LPC(https://camerafmc.com/)。

09c3003c-3ac4-11f1-90a1-92fbcf53809c.png

為了使 FPGA 板上最多可連接兩個 MIPI 攝像頭,我們使用了攝像頭 FMC模塊。該 FMC 模塊最多可連接四個 MIPI 攝像頭到 AMD 開發(fā)板上,具體數(shù)量取決于所用開發(fā)板,因為不同開發(fā)板的 I/O 引腳排列方式不同。

架構(gòu)

該解決方案的整體架構(gòu)如下所示。其中包括樹莓派攝像頭、Demosaic 和 AXI VDMA,后者將圖像存儲在 DDR4 幀緩沖區(qū)中。

0a21c7fc-3ac4-11f1-90a1-92fbcf53809c.png

然后,MicroBlaze V 處理器將使用 LWIP 從幀緩沖區(qū)讀取圖像,并通過 AXI Ethernet Lite 以以太網(wǎng)方式輸出。

MicroBlaze V 還將負責啟用和配置 樹莓派 攝像頭。為此,它使用了 AXI IIC 和 GPIO 模塊。

幀的抓取、顯示和控制流幀由運行在客戶端 PC 上的 Python 應用程序控制。

硬件設(shè)計

該項目以 MicroBlaze V 處理器為核心構(gòu)建,該處理器本身連接到以下 IP 核。

AXI UART Lite - 支持狀態(tài)報告

AXI Ethernet Lite - 以 100 Mbps 的速度連接到主機

AXI timer - 輕量級 IP 堆棧的必需組件

AXI GPIO - 控制樹莓派攝像頭的電源啟用

AXI IIC - 配置 RPI 攝像頭。

AXI Interrupt Controller - 處理來自IIC、以太網(wǎng)精簡版和定時器的中斷

完整的設(shè)計如下所示,也可在Github上找到(鏈接在最后)。

0a7b43f4-3ac4-11f1-90a1-92fbcf53809c.png

圖像處理流程包括:

MIPI CSI2 RX Subsystem - 該子系統(tǒng)配置為支持 RAW10 位像素和 2 條 MIPI 通道。該模塊在 PL 設(shè)計中也直接啟用。

Demosaic - 配置為將 RAW10 像素轉(zhuǎn)換為 30 位(RGB)顏色通道

AXIS Subset Convertor - 該轉(zhuǎn)換器接收 30 位像素,并提取綠色通道的 8 位最高有效位。綠色通道包含灰度圖像所需的大部分光照強度信息。

VDMA - 配置為寫入 DDR4 幀緩沖區(qū)。

時鐘頻率分配很簡單,MicroBlaze V 的時鐘頻率為 300 MHz,由 DDR MIG 輸出(圖中以綠色顯示)。DPHY 和視頻流水線使用 200 MHz(圖中以粉色顯示),100 MHz(圖中以藍色顯示)也需要使用。

下一步是設(shè)計運行在 MicroBlaze V 上的嵌入式軟件。

嵌入式軟件

該應用軟件其中最重要的包括配置 RPI 攝像頭和運行用于以太網(wǎng)通信的 LWIP 協(xié)議棧。

軟件應用程序的概覽如下所示,其結(jié)構(gòu)簡單明了:首先初始化 LWIP 和相機,然后再啟動圖像處理流程。流程初始化完成后,程序?qū)⒉杉瘓D像,并運行主 LWIP 處理器,等待 Python 應用程序的指令。

0ad4c46a-3ac4-11f1-90a1-92fbcf53809c.png

應用程序軟件已上傳至GitHub(鏈接在最后) ,其中包含四個主要文件:app.c、app.h、imx_219_cam.c 和 imx219_cam.h。

imx219_cam.c 和 imx219_cam.h

通過 AXI IIC 處理 IMX219 相機傳感器的啟動。

初始化序列通過 AXI GPIO 對攝像頭進行斷電重啟,并初始化 AXI IIC 內(nèi)核。然后,它通過讀取型號 ID (0x0219) 來驗證傳感器是否響應 IIC 命令。

app.c和app.h

該主要應用程序包含五個主要要素:

平臺初始化程序會設(shè)置 AXI 中斷控制器并將其連接到 MicroBlaze-V 異常處理系統(tǒng)。該程序未使用定時器,lwIP 以純輪詢模式運行,這足以滿足 UDP 的需求。

網(wǎng)絡(luò)初始化函數(shù)在啟動序列的早期被調(diào)用,因為在 PHY 自動協(xié)商期間 xemac_add 會阻塞。通過先執(zhí)行此操作,可以在相機上電和配置期間建立以太網(wǎng)鏈路。lwIP RAW API 與綁定到端口 5001 的 UDP PCB 一起使用。

Camera Init調(diào)用 IMX219_Init,該 IMX219_Init 處理完整的電源循環(huán)和 I2C 配置序列。

捕獲數(shù)據(jù)流初始化首先啟動去馬賽克(以便在 VDMA 讀取視頻流之前正確格式化視頻流),等待 100 ms使其同步,然后配置并啟動 VDMA S2MM 通道,該通道使用 DDR4 內(nèi)存和三幀緩沖區(qū)。如果 VDMA 報告 IntErr(由于捕獲到部分首幀),它會自動重置并重新啟動 VDMA 以進行恢復。

主循環(huán)輪詢 xemacif_input 以獲取傳入的 UDP 數(shù)據(jù)包。

UDP幀協(xié)議使用帶有每個數(shù)據(jù)包序列號和字節(jié)偏移量的格式,以便即使數(shù)據(jù)包丟失,接收方也能正確放置數(shù)據(jù)。

每個數(shù)據(jù)包包含一個 12 字節(jié)的頭部,后跟最多 1460 字節(jié)的像素數(shù)據(jù)。幀頭部包含數(shù)據(jù)包總數(shù)和幀大小,以便接收器了解預期接收的數(shù)據(jù)。由于 AXI Ethernet Lite 只有一個發(fā)送緩沖區(qū),因此數(shù)據(jù)包以 2 毫秒的間隔發(fā)送。

0b306af4-3ac4-11f1-90a1-92fbcf53809c.png

這種方法可以實現(xiàn)更強大的應用程序,并防止除丟包之外的圖像損壞(在這種配置下,丟包的情況很少見)。

0b8be938-3ac4-11f1-90a1-92fbcf53809c.png

Python應用程序

Python 應用程序旨在抓取幀并將其存儲為 PNG 或流式傳輸可選擇感興趣區(qū)域的圖像。

在流式傳輸過程中,Python 應用程序?qū)⒚?10 秒抓取一次全幀圖像,并進行更新,以便隨著場景的變化更新感興趣的區(qū)域。

Python客戶端是一個單文件程序,它通過UDP協(xié)議與MicroBlaze-V通信,并使用OpenCV將接收到的像素數(shù)據(jù)重新組裝成可查看的圖像。它有三種運行模式,這些模式的設(shè)計都考慮到了100Mbps鏈路和單緩沖區(qū)以太網(wǎng)MAC的限制。

0be444ac-3ac4-11f1-90a1-92fbcf53809c.png

首先要進行的是Socket建立。客戶端創(chuàng)建一個具有 8 MB 接收緩沖區(qū)的 UDP Socket。

接收引擎 是客戶端的核心。它等待 FRMB 頭部數(shù)據(jù)包,提取幀尺寸、數(shù)據(jù)包總數(shù)和快照大小,然后預先分配一個大小恰好為該值的零字節(jié)數(shù)組。當數(shù)據(jù)包到達時,每個數(shù)據(jù)包都會被放置在其聲明的字節(jié)偏移量處。這使得整個系統(tǒng)具有容錯能力。

每種模式的關(guān)鍵設(shè)計選擇都歸結(jié)于相同的限制,AXI Ethernet Lite 的單個 TX 緩沖區(qū)在 100 Mbps 時無法處理連續(xù)的密集傳輸。

GRAB 模式通過重試機制解決這個問題,最多嘗試三次,并保留完成度最高的嘗試。

窗口模式通過減小傳輸幀的大小來解決這個問題,是速度最快的傳輸方式。一個 128×128 的窗口只有 16 KB,大約相當于 12 個數(shù)據(jù)包。

流模式通過不斷地從圖像中傳輸完整幀來解決這個問題,但是幀速率受到限制。

0c3dd454-3ac4-11f1-90a1-92fbcf53809c.png

測試

在硬件上運行 pythn 應用程序,結(jié)果顯示應用程序運行正常,符合預期。

窗口模式下運行時幀率約為 20-30 FPS,對于 100 MBps 的以太網(wǎng)連接來說還不錯。

0c9bdef0-3ac4-11f1-90a1-92fbcf53809c.png

總結(jié)

該項目演示了如何創(chuàng)建一個簡單的幀捕獲解決方案,使我們能夠在硬件上測試圖像處理算法,并將處理后的幀存儲起來以進行進一步分析。

本項目采用了純FPGA方案。還可以添加一些擴展功能,例如使用PCIe進行幀采集。

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

    關(guān)注

    1664

    文章

    22500

    瀏覽量

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

    關(guān)注

    29

    文章

    1346

    瀏覽量

    59692
  • MIPI
    +關(guān)注

    關(guān)注

    11

    文章

    364

    瀏覽量

    51086

原文標題:FPGA圖像處理平臺搭建:MIPI + VDMA + Ethernet全流程

文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術(shù)江湖】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

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

    搭建圖像處理硬件平臺成為圖像處理的發(fā)展趨勢。FPGA
    發(fā)表于 05-24 07:45

    基于DSP和FPGA的通用圖像處理平臺設(shè)計

    設(shè)計一種基于DSP和FPGA架構(gòu)的通用圖像處理平臺,運用FPGA實現(xiàn)微處理器接口設(shè)計,并對
    發(fā)表于 12-25 17:06 ?62次下載

    基于DSP和FPGA的通用圖像處理平臺設(shè)計

    基于DSP和FPGA的通用圖像處理平臺設(shè)計 摘要:設(shè)計一種基于DSP和FPGA架構(gòu)的通用圖像
    發(fā)表于 02-01 11:10 ?1750次閱讀
    基于DSP和<b class='flag-5'>FPGA</b>的通用<b class='flag-5'>圖像</b><b class='flag-5'>處理</b><b class='flag-5'>平臺</b>設(shè)計

    基于FPGA的LCoS驅(qū)動和圖像處理系統(tǒng)設(shè)計

    本文設(shè)計了基于FPGA的LCoS驅(qū)動代碼及圖像的FFT變換系統(tǒng),為計算全息三維顯示圖像處理和顯示提供了硬件平臺
    發(fā)表于 06-28 09:36 ?2521次閱讀
    基于<b class='flag-5'>FPGA</b>的LCoS驅(qū)動和<b class='flag-5'>圖像</b><b class='flag-5'>處理</b>系統(tǒng)設(shè)計

    實時圖像邊緣檢測的設(shè)計及FPGA實現(xiàn)

    文中將FPGA應用于實時圖像邊緣檢測系統(tǒng),從而實現(xiàn)動態(tài)實時圖像的邊緣檢測。通過搭建實驗平臺仿真驗證表明,檢測精度和數(shù)據(jù)
    發(fā)表于 12-22 17:06 ?39次下載
    實時<b class='flag-5'>圖像</b>邊緣檢測的設(shè)計及<b class='flag-5'>FPGA</b>實現(xiàn)

    基于FPGA的高分辨率全景圖像處理平臺

    基于FPGA的高分辨率全景圖像處理平臺基于FPGA的高分辨率全景圖像
    發(fā)表于 11-04 16:30 ?2次下載

    基于FPGA的紅外圖像處理系統(tǒng)及算法設(shè)計

    本文在研究紅外焦平面陣列非均勻性的特點和成因后,首先設(shè)計了紅外圖像實時處理的硬件平臺。本硬件平臺FPGA為核心
    發(fā)表于 05-17 14:29 ?5次下載

    FPGA圖像處理

    FPGA圖像處理
    發(fā)表于 12-14 22:29 ?19次下載

    數(shù)字圖像處理平臺系統(tǒng)方案詳解

    數(shù)字圖像處理自從出現(xiàn)以來,就一直是前沿的研究學科,經(jīng)久不衰,同時隨著數(shù)字化時代的到來,市場對于數(shù)字圖像處理的需求也越來越大。因此,本項目------基于
    發(fā)表于 05-30 11:39 ?5270次閱讀
    數(shù)字<b class='flag-5'>圖像</b><b class='flag-5'>處理</b><b class='flag-5'>平臺</b>系統(tǒng)<b class='flag-5'>方案</b>詳解

    略談FPGA圖像處理

    FPGA圖像處理之路,從此開始,接下來,讓我們把時間交給“圖像處理”。一休哥在動筆之前,一直在猶豫,反復思考著一個問題,這個問題一直困擾著我
    發(fā)表于 05-09 17:05 ?4683次閱讀

    基于FPGA的HEIF圖像處理加速方案

    近日,元腦生態(tài)伙伴深維科技與浪潮聯(lián)合發(fā)布業(yè)內(nèi)首個基于FPGA的HEIF圖像處理加速方案。
    的頭像 發(fā)表于 10-23 11:16 ?3406次閱讀
    基于<b class='flag-5'>FPGA</b>的HEIF<b class='flag-5'>圖像</b><b class='flag-5'>處理</b>加速<b class='flag-5'>方案</b>

    基于ARM與FPGA的嵌入式實時圖像處理平臺

    基于ARM與FPGA的嵌入式實時圖像處理平臺(嵌入式開發(fā)流程包含哪些步驟和內(nèi)容)-該文檔為基于ARM與FPGA的嵌入式實時
    發(fā)表于 07-30 11:41 ?6次下載
    基于ARM與<b class='flag-5'>FPGA</b>的嵌入式實時<b class='flag-5'>圖像</b><b class='flag-5'>處理</b><b class='flag-5'>平臺</b>

    Vitis HLS圖像處理平臺搭建

    在 2019.2 以上的版本中AMD-Xilinx去除了對 OpenCV 的庫函數(shù)的直接支持,需要我們手動搭建一個OpenCV的環(huán)境(主要是仿真環(huán)境),這一步雖然對綜合不影響,但是對于算法的功能驗證還是不方便,所以這一步對于使用OpenCV進行圖像
    的頭像 發(fā)表于 11-21 09:10 ?2226次閱讀

    基于FPGA搭建一個通用的圖像處理平臺

    本文介紹如何搭建一個通用的圖像處理平臺,采用HDMI接口進行輸入、輸出,可用于測試基于HLS的FPGA
    的頭像 發(fā)表于 09-04 18:20 ?3741次閱讀
    基于<b class='flag-5'>FPGA</b><b class='flag-5'>搭建</b>一個通用的<b class='flag-5'>圖像</b><b class='flag-5'>處理</b><b class='flag-5'>平臺</b>

    FPGA 實時信號處理應用 FPGA圖像處理中的優(yōu)勢

    現(xiàn)場可編程門陣列(FPGA)是一種高度靈活的硬件平臺,它允許開發(fā)者根據(jù)特定應用需求定制硬件邏輯。在實時信號處理圖像處理領(lǐng)域,
    的頭像 發(fā)表于 12-02 10:01 ?2871次閱讀
    宿州市| 许昌县| 商南县| 乌拉特后旗| 裕民县| 唐山市| 育儿| 内丘县| 隆尧县| 阿克陶县| 新绛县| 唐山市| 宁夏| 闵行区| 肇东市| 卢湾区| 黔南| 左权县| 图木舒克市| 隆子县| 揭阳市| 砀山县| 武乡县| 白朗县| 金寨县| 托克逊县| 海丰县| 玉环县| 阳原县| 梁河县| 甘南县| 阿勒泰市| 怀集县| 新民市| 惠来县| 阜城县| 龙门县| 鸡西市| 花垣县| 布尔津县| 钟祥市|