999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于ZYNQ的視頻采集處理系統

2022-11-25 02:56:02魏洪健徐琦琳孫科學
計算機技術與發展 2022年11期
關鍵詞:系統

魏洪健,徐琦琳,張 瑛,孫科學,2*

(1.南京郵電大學 電子與光學工程學院,江蘇 南京 210023;2.射頻集成與微組裝技術國家地方聯合工程實驗室,江蘇 南京 210023)

0 引 言

實時視頻處理技術在工業生產、缺陷檢測、自動駕駛等領域有不可替代的作用,同時各個領域也對圖像處理帶寬、實時性及清晰度有了更高的要求。以往的基于ARM(Advanced RISC Machine)數字圖像處理系統[1-2]雖然能滿足復雜的圖像處理需求,但因為其處理器取樣率低,難以得到帶寬及實時性的保障。而基于DSP(Digital Signal Processing)的處理框架[3]能滿足高實時性的需求,但在開發高復雜度的集成系統時周期長,且系統并行度低。在目標識別、機器驗布、流水線產品缺陷檢測等領域[4-6],圖像處理系統需要采集產品實時的高清畫面,并且同步處理視頻特征信息,圖像的有效信息通常只會存在1~2幀,這就要求系統要具有極高的實時性。此外對不同產品檢測時算法的選擇也不同,這便要求處理系統不僅需要具有高實時性的特點,也要具有一定的靈活性。而ARM+FPGA(Field Programmable Gate Array)的異構處理框架可以很好地兼顧兩者。FPGA在處理高帶寬視頻數據時能充分展現其強大的并行計算能力[7],對已經相對成熟的圖像預處理算法可以用Verilog HDL硬件描述語言來實現硬件的加速。因此以FPGA來實現數字圖像處理算法,用ARM進行控制的系統框架可以滿足對視頻處理有較高實時性需求的領域。

該文設計了一種基于Xilinx公司推出的ZYNQ系列ARM+FPGA異構結構作為處理核心的視頻數據實時采集、處理、控制、輸出的框架,可支持高清1 280×720分辨率下60幀的實時處理。結合了雙核ARMCortex-A9處理器強大的驅動能力、高靈活性、可配置性與FPGA并行、高速、再編程的特點,實現了軟硬均可重復編程的結構。基于Verilog HDL硬件描述語言實現了圖像的均值模糊,中值濾波,高斯模糊、邊緣特征銳化、二值化、色彩空間轉化、sobel邊緣檢測、形態學腐蝕與膨脹等經典圖像預處理算法,均采用流水處理的形式最大化處理速度來保障系統的實時性[8],并且可以通過上位機來實現不同預處理算法的組合與實時切換,所有算法均封裝為IP核來增加算法的靈活性與可移植性。主要由軟件處理系統PS(Processing System)端與硬件可編程邏輯PL(Programmable Logic)端的軟硬協同方式進行工作。

1 系統整體框架

系統采用ZYNQ系列的XC7Z020-CLG400芯片作為主控,OV5640攝像頭作為視頻數據源,另外還包括一臺支持HDMI高清接口的顯示器。搭建了視頻數據的輸入、輸出通路以及硬件算法模塊,整體結構框圖如圖1所示。PL硬件部分負責完成視頻輸入、硬件算法設計、視頻輸出等部分。PS處理器部分實現對整個系統的控制,包括硬件初始化流程,本地網絡初始化以及UDP網絡數據的接收與判斷,并且通過AXI4總線對圖像處理算法模塊進行控制。PL與PS通過AXI(Advanced eXtensible Interface)協議進行數據互通,實現軟硬件的協同工作。

從視頻數據采集并在系統中的傳輸處理直至顯示角度,可將系統按功能劃分為如下主要模塊:

(1)視頻數據采集模塊:系統通過500萬像素CMOS攝像頭采集外界視頻數據,輸入至PL硬件部分完成數據采集。攝像頭初始化由PL部分IIC時序控制器完成,在上電后2秒內即可完成初始化,正常輸出視頻流數據。

(2)視頻輸入模塊:攝像頭RAW數據傳入后,通過Video in to AXI4StreamIP將數據格式轉化為 AXI-stream格式進入demosaic模塊,對視頻色彩進行插值還原,同時將單個像素數據由RAW轉化為RGB888格式,最后再經VDMA(Video Direct Memory Access)緩存至DDR3中,完成視頻輸入通路搭建。

(3)視頻輸出模塊:首先通過AXI4Stream to Video out將圖像數據按行從DDR存儲器中讀出,再經過硬件算法處理模塊,對視頻數據進行流水線式處理,實時輸出處理后的視頻數據,在經過HDMI編碼器,將標準VGA時序協議視頻編碼為HDMI差分信號進行輸出。

2 系統關鍵部分實現

2.1 攝像頭初始化

系統的圖像源由OmniVision公司的OV5640攝像頭進行采集,其擁有2 592×1 944(500萬像素)的感光陣列,最大輸出能達到QSXVGA(2 592×1 944)下的15幀輸出,支持SCCB(Serial Camera Control Bus)協議控制。SCCB協議是一種向上兼容IIC協議的攝像頭寄存器配置協議,在主機以單字節發送數據至從機時完全兼容IIC協議。系統選擇了1 280×720(92萬像素)下60 FPS格式的視頻流輸出。由硬件PL端完成IIC時序控制器對攝像頭內部控制寄存器以單字節寫的格式進行初始化設置,表1列出了部分關鍵寄存器地址、功能及配置值。系統總共對OV5640內部寄存器進行253次SCCB讀寫配置。

表1 OV5640部分關鍵寄存器配置

輸出圖像的水平寬度為0x0500為1 280,豎直高度為0x02d0為720,即設定為1 280×720的輸出分辨率。此時可計算出輸出像素的時鐘為1 650×750×60=74.25 MHz。

2.2 攝像頭數據Demosaic

CMOS攝像頭是由覆蓋在硅襯底上的濾色片測量不同波長的光強度來采集圖像數據,且每種濾色片只能對應一種顏色,即每個像素原始數據只包含一種顏色信息,要通過臨近像素的可用信息來還原出原像素的三種顏色分量,而人眼對綠色的敏感度最高,因此往往CFA(Color Filter Array)陣列由1/2的綠色分量與1/4的紅色與藍色分量組成,bayer陣列共有四種排列模式,如圖2所示。

從CMOS攝像頭輸出的RAW格式的數據,通過Video in to AXI4Steam轉化為AXI-stream格式的數據進入Sensor Demosaic電路,利用5×5矩陣通過色度方差來抑制在還原像素時產生的顏色混疊效應,提升傳感器輸出圖像色彩質量。同時由于CMOS攝像頭OV5640數據輸出引腳只有10位,實際上攝像頭的輸出為每2個pix clock輸出一個RGB565格式的像素數據,Sensor Demosaic同時也對按字節接收到的RAW數據進行格式重構,轉換RAW格式為24 bit的RGB888格式。Sensor Demosaic偏移地址0x28寄存器[1:0]的值對應了全部四種bayer陣列格式??梢栽赑S端通過AXI總線來設定像素的陣列模式,色彩還原后仍然以AXI4-Stream格式輸出到DDR中進行視頻緩存。

2.3 圖像處理IP封裝

圖像卷積運算作為圖像預處理中應用最廣泛的方式,由FPGA實現流水線運算時,能達到最高的實時性[9],這是因為FPGA在處理圖像進行運算時以行為單位,而CPU、GPU、DSP在處理時是以幀為單位。如圖3(左)所示,圖像的傳輸是從左上角的第一個像素開始,向右輸出1整行1 280個像素點后,向下移動一行開始傳輸第二行的像素數據,直至720行掃描結束后完成整幀的輸出。通過ShiftRegister緩存圖像的前兩行數據,同時接受當前數據作為第三行,就實現了三行數據的同時緩存。每個時鐘的上升沿到來時,ShiftRegister中每個數據會向后移動一位,移位寄存器將最后一個數據作為當前的輸出。圖3(右)結構中ROW1~3即為當前的三行像素數據輸出,通過對三行數據的一個緩存打拍處理,就可得到圖3(左)中原圖像左上角像素的3×3矩陣窗口,此時每經過一個時鐘周期,就相當于該3×3矩陣窗口在像素陣列中向右移動一格,即實現步長為1的圖像卷積運算。

得到圖像的3×3像素矩陣后,通過與不同的卷積模板進行運算后再替換原像素點數據,如此遍歷整幅圖像之后即可實現圖像的濾波操作。常見的處理有用9個數據平均值代替原像素點值的均值濾波;用9個值中的中值來代替原像素點的中值濾波。

以sobel邊緣檢測[10]為例,其原理是根據像素灰度值與其周圍的離散差值來近似計算出該點不同方向上的梯度。根據式(1)求出原像素矩陣I與兩個3×3核的卷積結果水平積分因子Gx與豎直積分因子Gy,再通過式(2)求出近似梯度G,判斷G與邊界閾值S大小即可判斷出該點是否為邊緣點。

(1)

(2)

(3)

為驗證硬件算法的實時性,通過Vivado與Modelsim進行聯合仿真,編寫測試文件模擬VGA時序驅動,每幀讀取不同的圖片,經過硬件處理后再保存為新的圖片,共進行三幀的仿真即處理三張不同的圖片,第四幀開始時結束仿真。結果表明,所述設計能滿足視頻處理實時性的要求。

2.4 硬件算法模塊實現

現代數字圖像處理的模型一般分為多級的形式,由視頻采集前端、圖像預處理以及圖像信息提取三個部分構成。其中視頻采集前端往往是由采集端對原生圖像數據進行最基本的處理,不會對原始圖像數據的信息特征產生較大影響。本系統中OV5640攝像頭內部已集成了ISP圖像信號處理單元,其中包括AEC(自動曝光控制)、AWB(自動白平衡)、gamma矯正、BLC(黑電平矯正)等圖像補償功能。

該系統針對圖像預處理以及圖像信息提取給出了不同的方案,讀者可根據實際情況選擇或者增刪圖像處理模塊。系統硬件算法內部結構如圖4所示,其中圖像處理算法包括三種預處理濾波、邊緣檢測以及基于拉普拉斯算子的圖像邊緣增強、圖像形態學腐蝕與膨脹。均采用PL端硬件流水的形式完成圖像處理,封裝為通用視頻接口的IP核,保證了系統的可擴展性與靈活性。視頻選擇器為封裝了AXI接口的數據接收自訂IP核,接收PS端的控制,可從輸入的視頻數據中選擇一路輸出。PS端通過對視頻選擇器的控制即可實時調整系統硬件算法的組合。

2.5 PS端實現

PS軟件部分[11]主要實現的內容包括開啟DDR視頻緩存通道[12],初始化硬件算法模塊,設置開發板IP地址以及對UDP網絡數據的處理。SDK中處理的流程框圖如圖5所示。系統上電后,首先PS端將通過AXI總線對硬件算法模塊中的3個視頻選擇器進行初始化配置,設置其默認輸出原始視頻數據。隨后通過AXI總線向PL端的IIC時序控制器發送啟動信號,開始對OV5640攝像頭內部寄存器進行配置,共發送253個SCCB協議數據。PL端寄存器配置數據完成后,硬件端通過ZYNQ中IRQ_F2P接口發送硬件的中斷信號。IRQ_F2P為ZYNQ提供的硬件中斷接口,硬件中斷號ID有[91:84],[68:61]共16個,可以設置邊沿觸發或電平觸發,本系統中使用上升邊沿觸發模式進入中斷處理函數。通過硬件中斷功能軟件端可以在硬件信號觸發后最快地做出響應,即最優先處理中斷處理函數中的程序部分。中斷處理函數中包括PS端對PL端VDMA進行初始化配置。 視頻數據的DDR讀寫地址為0x01100000,緩存三張圖像。則從0x01100000開始的1 280×720×3個地址內會按BGR順序存放第一幀的圖像數據,從地址0x013A3000(0x01100000+1 280×720×3)開始會存放第二幀數據,以此類推。

物聯網技術已被廣泛應用在SOC領域,本系統基于RTL8211E千兆路由芯片[13-14],PS端部署lwip(light weight IP)輕量化IP協議實現網絡通信。通過UDP協議完成與上位機的數據交互,實現對系統的遠程控制。PS端不斷讀取上位機發送的UDP網絡數據包,根據網絡指令通過AXI總線協議對圖4中的3個視頻選擇器的輸出進行切換,也可以改變二值化閾值與sobel邊緣檢測閾值。

3 測試結果與分析

在vivado平臺與modelsim仿真器完成系統的設計與仿真后,進行工程的綜合、實現、生成比特流文件,導出hardware進入SDK環境進行ps端程序開發。完成后創建FSBL(First Stage Boot Loader)工程對SDK中C程序進行固化。

開啟系統等待初始化流程結束后顯示器通過HDMI線接收來自系統的1 280×720分辨率下60幀視頻數據,圖6為在正光源照射下的書本文字顯示結果,其中左上至右下依次為原圖(a)、高斯濾波(b)、圖像銳化(c)、sobel邊緣檢測(d)、中值濾波+sobel邊緣檢測(e)、中值濾波+sobel邊緣檢測+圖像腐蝕(f)的處理效果圖。

圖7為拍攝帶有浮雕表面二維碼圖像的處理結果,其中左上至右下依次為原圖(a)、圖像銳化(b)、sobel邊緣檢測(c)、高斯濾波+sobel邊緣檢測(d)、高斯濾波+sobel邊緣檢測+圖像腐蝕(e)、二值化顯示(f)的處理結果。

上述兩種不同物體的實時圖像采集結果很好地證明了所述系統功能完備性以及算法有效性,通過不同的算法組合最終均可獲得較好的圖像特征信息,并且能直觀地觀察到每個中間級算法處理的結果。

以硬件流水線實現圖像處理算法時,其延時是可以計算出的[15]。該文所述設計中,處理算法使用的3×3緩存矩陣會使圖像同步時鐘延遲一行來進行數據同步,1 280 p分辨率下則會延遲1 560個延時,后續則在進行不同流水線算法時處理所用的延時不同。表2中給出了該系統中通過硬件算法與在ZYNQ芯片中ARM端調用OpenCV庫[16]處理一幀圖像的延時對比。

表2 不同算法處理延遲時間

對比軟硬件在圖像處理速度上的差異,該系統在進行各種圖像的處理時均有更快的速度,且實現的算法復雜度越高,則硬件流水處理的提升越大。

4 結束語

該文提出并實現了一種基于ZYNQ-7020芯片的視頻實時采集、處理、顯示平臺,充分結合了ARM的靈活性與FPGA在圖像處理領域的高實時性。平臺集成了多種經典的圖像預處理算法,延時低、易于替換與擴展,為復雜圖像處理算法實現提供良好的基礎平臺。經測試所述系統實時性高、性能穩定,可應用于動態捕捉、缺陷檢測、視頻前端處理等領域。

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 91成人免费观看| AV不卡在线永久免费观看| AV在线天堂进入| 亚洲成人网在线观看| www.国产福利| 在线视频亚洲色图| 一级毛片在线播放免费观看| 亚洲最大情网站在线观看| 亚洲午夜福利在线| 久996视频精品免费观看| 亚洲欧洲一区二区三区| 99久久亚洲综合精品TS| 国产chinese男男gay视频网| 亚洲无码37.| 91久久国产热精品免费| 國產尤物AV尤物在線觀看| 婷婷六月综合| 理论片一区| 亚洲性网站| 青青草国产一区二区三区| 福利一区在线| 中文字幕无码电影| 亚洲天堂网在线视频| 欧美精品影院| 一本大道无码日韩精品影视| 亚洲天堂区| 青草视频网站在线观看| a毛片在线| 嫩草国产在线| 国产亚洲精久久久久久无码AV | 日韩国产黄色网站| 中文字幕不卡免费高清视频| 在线观看热码亚洲av每日更新| 亚洲成人黄色在线| 久久亚洲美女精品国产精品| 伊人中文网| 91福利国产成人精品导航| 国产精品成人AⅤ在线一二三四| 亚洲欧美日本国产综合在线 | 在线观看国产黄色| 国内精自线i品一区202| a级高清毛片| 国产丝袜丝视频在线观看| 亚洲精品国产日韩无码AV永久免费网| 人妻丰满熟妇αv无码| 亚洲综合第一页| 欧美在线国产| 国产无码制服丝袜| 91福利免费| 久热99这里只有精品视频6| 人人91人人澡人人妻人人爽| 国产女人18毛片水真多1| 国产精品毛片在线直播完整版| 亚洲另类国产欧美一区二区| 国产亚洲欧美日韩在线一区二区三区| 欧美成人a∨视频免费观看| 欧美色视频日本| 91精品免费久久久| 欧美成在线视频| 久久久成年黄色视频| 丁香五月亚洲综合在线 | 刘亦菲一区二区在线观看| 亚洲欧美日韩天堂| 国产精品蜜臀| 日韩欧美色综合| 亚洲女同欧美在线| 日韩精品成人网页视频在线| 国产自无码视频在线观看| 日本亚洲国产一区二区三区| 欧美色综合久久| 久久毛片免费基地| av一区二区三区在线观看| 波多野结衣视频网站| 性激烈欧美三级在线播放| 国产精品亚洲а∨天堂免下载| 国产国语一级毛片| 欧美日韩亚洲综合在线观看| 91成人在线免费观看| 亚洲国产欧美国产综合久久 | 欧美视频在线不卡| a级免费视频| 婷婷久久综合九色综合88|