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

一種基于FPGA的實時NPR系統*

2015-09-21 01:29:14卿粼波何小海
網絡安全與數據管理 2015年3期
關鍵詞:系統

孟 勇,卿粼波,何小海,呂 順

(四川大學 電子信息學院 圖像信息研究所,四川 成都 610064)

0 引言

非真實感渲染(NON-photorealistic rendering,NPR)是計算機圖形學的一類技術,主要模擬藝術形式的畫面風格,也用于發展新的繪制風格。與傳統的追求真實感的計算機圖形學不同,NPR受到油畫、素描、技術圖紙和動畫卡通的影響。它已經以卡通造影的形式出現在電影和電子游戲中。非真實感繪制技術從20世紀80年代開始興起,當時的研究進展緩慢。直到90年代中期,尤其是EUROGRAPHICS和SIGGRAPH上關于這方面的幾篇論文才確立了這一領域的雛形[1]。近年來,NPR越來越多地被應用到各個領域,例如視頻通信、視頻游戲、精密程度較高的醫學和科學插圖[2],由此可見高分辨率、實時的NPR系統越來越凸顯出重要的地位。

目前實現NPR處理主要有兩種途徑:一種是在PC機上進行處理[3-7];另一種是在嵌入式系統中進行處理[8]。參考文獻[3]和參考文獻[4]主要在PC上針對單幅圖片做了NPR處理,參考文獻[5]利用OpenCV API在計算機上對圖片和視頻實現了抽象處理,參考文獻[6]和[7]則在PC上用特征流法和光流法等特定算法對視頻做了抽象處理。在NPR系統中,圖像濾波、邊緣檢測、色彩變化等都需要大量復雜的運算。因此在PC上很難對分辨率稍大或者幀率稍高的視頻做到實時處理。又由于PC機體積較大,不方便系統的移動,所以在嵌入式系統上做NPR是必然的趨勢。參考文獻[8]則是在一個以Xilinx Virtex-2 FPGA為核心的平臺上對單一圖片做了油畫處理,但是由于其平臺的限制,并未實現對視頻的實時處理。

本文在以Xilinx Virtex-5 FPGA為核心的自行設計的高速圖像處理平臺上,實現了對Camera Link接口相機采集到的視頻做實時的NPR渲染,并輸出到顯示器上進行顯示。本文首先對NPR算法進行講解,然后對系統和NPR算法的硬件結構做出具體分析,最后給出實驗結果及結論。

1 算法描述

雖然NPR渲染的具體實現方法多種多樣,但是它們的處理流程大致相同。經過大量的文獻查閱,主流的NPR渲染流程都要經過邊緣增強、擴散濾波、量化光照信息三個步驟。本文也采用這種流程進行處理,每個步驟所采用的具體方法將在下面進行介紹。

1.1 邊緣增強

當檢測到邊緣點之后,把邊緣點的RGB分量全部置為0,即可達到邊緣增強的效果。目前主流的邊緣檢測方法有差分邊緣檢測、Roborts算子、Prewitt算子、Kirsh算子、Laplace算子、LOG算子和Canny算子,考慮到在FPGA上實現的復雜性及資源利用率,本文采用的是Prewitt算子。

通常情況下,邊緣檢測每次只對圖像中3×3的圖像塊進行處理,如圖1(a)所示。圖像塊的第一行和第三行的差近似x方向的導數,第三列與第一列之差近似于y方向的導數[9]。如下所示:

上面就是Prewitt算子,Prewitt算子只有簡單的加減法,非常適合于 FPGA實現。Prewitt算子模板如圖 1(b)和(c)所示。

圖1 一幅圖像的3×3區域和用于計算z5點的Prewitt模板

1.2 擴散濾波

NPR的另一個重要步驟是擴散濾波,它能模糊較小的不連續和突出的邊緣,并且達到圖像色彩擴散的效果。處理速度較快的經典圖像濾波算法有鄰域平均法和中值濾波法等。由于要實現擴散濾波的效果且要兼顧FPGA的運算特點,本文決定采用鄰域平均法。鄰域平均法是把相鄰像素的相應分量值的平均值作為中心點像素相應分量值。若輸入圖像中某點的各分量值為f(j,k),以其為中心,取N×N的窗口像素組成的點集用 A表示(其中 N=3,5,7…)。 經鄰域平均法濾波后,像素 f(j,k)對應的輸出為[10]:

此算法的優點在于算法簡單,適于在FPGA上實現,而且能達到色彩擴散的目的。

1.3 量化光照信息

抽象效果的特點是原始輸入圖像中的很多細節信息被忽略,大塊區域的顏色比較接近或均勻[3]。因此,對圖像進行亮度信息量化操作是必要的步驟,以此來實現分塊化效果。式(4)是量化的計算公式:

由于此計算公式需要進行正切計算,對FPGA來說復雜度較高,所以本文只是將RGB各顏色分量的低位置 1,只保留高 3~4位的有效信息,這樣也能達到忽略細節信息的目的,讓以前顏色基本相同的區域都保持一致。

2 硬件設計

2.1 系統結構

系統的前端采用的是一個Camera Link接口的工業相機,用于視頻采集。相機分辨率為767×576,幀率為60 f/s,相機時鐘為 36.15 MHz。視頻數據通過 Camera Link線纜傳到圖像處理平臺上,然后由一個接收芯片DS90CR288將收到的差分信號轉換成24位RGB圖像數據,再將數據傳到FPGA中。系統使用的處理器是Xilinx公司V5系列的一款FPGA芯片xc5vlx110t。FPGA利用兩片DDR2內存對圖像進行緩存、處理,最后控制DVI芯片CH7301C進行實時顯示。系統的整體架構如圖2所示。

圖2 系統整體架構

FPGA內部首先由圖像采集模塊將圖像傳到圖像采集FIFO中,然后由乒乓操作模塊將圖像采集FIFO中的數據進行乒乓操作暫存到DDR2里面,實現前后速度的匹配,再將數據輸出到圖像處理FIFO。NPR模塊讀取圖像處理FIFO中的數據進行處理后輸出到圖像顯示FIFO,最后DVI顯示模塊讀取圖像顯示FIFO中的數據進行顯示,FPGA內部模塊及其數據流向如圖3所示。

圖3 FPGA內部模塊及其數據流向

2.2 NPR 模塊

經過DDR2乒乓緩存過后的24位RGB圖像數據輸出后會通過NPR模塊。在NPR模塊中,圖像數據分成兩路:一路數據進行邊緣檢測,首先通過亮度提取模塊進行亮度提取,然后進入一個行緩沖模塊,進行三行完整圖像的緩存,最后進入邊緣檢測模塊,進行水平和垂直方向的邊緣檢測。另一路數據主要進行色彩濾波和光照強度量化,以及為了達到時序匹配而做的延時。最后由選擇器進行選擇輸出,若是邊緣則輸出黑色,否則輸出另一路處理過后的圖像數據。NPR模塊整體結構如圖4所示。

圖4 NPR模塊內部結構框圖

2.2.1 亮度分量提取

通常情況下,邊緣檢測是對灰度圖像進行的,由于相機采集到的圖像是RGB圖像,所以必須進行彩色圖像到灰度圖像的變換,即提取亮度分量。亮度分量Y和RGB的轉換公式是:

考慮到FPGA中更適合于做加減及移位運算,所以將式(5)做如下的近似變形,這樣用簡單的移位運算就可以輕松地實現亮度分量的提取:

這樣既能獲得較好的提取效果,又能將浮點運算和乘法運算轉化為簡單的移位運算。最后的硬件結構如圖5所示。

圖5 亮度分量提取的硬件結構圖

2.2.2 邊緣檢測

用Prewitt方法進行邊緣檢測,本質上就是將上面介紹的Prewitt算子分別與灰度圖像做卷積,然后用梯度計算公式計算該點的梯度值。要實現圖像與模板的卷積,必須同時獲得三行圖像的數據,為了達到這個目的,本系統使用一個三行移位寄存器組,用來存儲前一步得到的亮度信息,效果如圖6所示。

圖6 三行移位寄存器組

每次將這三行的前三個點組成的一個3×3矩陣分別與模板作卷積,就能分別得到垂直與水平方向的梯度。為了避免開方運算,直接將垂直與水平方向的梯度與門限做比較,只要任一方向的梯度高于門限值,就認定這個點是邊緣點,上述操作雖然要求得到梯度值的絕對值,但與典型開方近似運算JPL算法相比,減少了3個時鐘周期并且降低了算法復雜度。經過多次實驗對比驗證,本系統最后選定了一個固定的門限值30。其垂直與水平方向的邊緣檢測硬件結構圖分別如圖7(a)和(b)所示。

圖7 邊緣檢測硬件結構圖

2.2.3 擴散濾波

視頻中的圖像幀通常帶有時域和空域的噪聲,因此,首先需要對其進行平滑去噪處理。通常情況下使用的是雙邊濾波,雙邊濾波是結合圖像的空間臨近度和像素值相似度的一種折中方法,離得較遠的點不會對邊緣上的像素值造成太大影響,具有簡單、非迭代、局部的特點,可以實現邊緣保存,而維納濾波和高斯濾波都會有明顯的模糊邊緣。本文采用一種和雙邊濾波的局部特點相似的方法,將圖像分成2×2的小塊,同時進行時域和空域的均值濾波。

首先進行時間域濾波。這個模塊會把當前像素點的值與過去該點的值做平均計算,其中過去的值存儲在一個FPGA上的block ram模塊里面,因為系統最后會把低位全部置為1,所以低位并沒有必要做處理,因此每個像素點只存RGB的高4位。本文決定使用4幀圖像來做平均值計算,因為這樣系統只需要將當前值的1/4與過去值的3/4相加即可,而過去值的3/4可以表示為1減去1/4,這有利于FPGA實現,將除法運算變成了簡單的移位運算。公式如下所示:

硬件實現如圖8所示。

圖8 時域濾波硬件結構圖

然后進行空間域的均值濾波。本文將圖像劃分為2×2的小塊,每次濾波都以這種小塊為基礎,這個特點類似于雙邊濾波器的局部特性,有利于做到邊緣保持。具體做法是:先設計兩個計數器,用來模擬圖像的行計數Y與列計數X,然后將X與Y方向坐標的最低位移除以產生block ram模塊的地址,這樣就使相鄰的4個點都參考block ram模塊的同一個點。使用此方法可以減少FPGA上實現block ram模塊的資源大小,節約資源。由于block ram模塊的讀和寫各需要一個時鐘周期,如果要做濾波,每個時鐘周期都需要從block ram模塊里面讀出一個舊值,同時還要存入前一個時鐘變化后的值,這就導致了一定的時序問題,但是由于系統是以2×2的塊進行濾波,相鄰的四個點參考同一個點,因此系統就可以用一個時鐘讀出block ram模塊里的數據并做處理,處理后的數據暫存在寄存器中,第二個時鐘周期到來的時候就可以將剛才寄存器中的數據拿來參加計算而不必重新從block ram模塊中讀出數據。與此同時,利用列計數X的最低位來控制將變化后的數據存進block ram模塊,以達到時序的匹配。至此,濾波結束。整個流程的硬件結構如圖9所示。

圖9 擴散濾波硬件結構圖

2.2.4 量化光照信息

由于量化光照信息算法復雜度較高,不利于在FPGA上實現,本文只簡單地將紅綠藍通道低位全部置1。而人眼對綠色分量變化敏感,所以對綠色通道保留高4位的有效信息,紅和藍通道只保留高3位的信息,這樣做可以忽略色彩變化不明顯的區域,達到量化光照信息的目的。

3 實驗結果

由于相機分辨率限制,本文只對分辨率為640×480、幀率為60 f/s的視頻進行驗證。由于NPR模塊需要緩存三行數據,處理時鐘為64.8 MHz,所以總延時t可由式(8)計算得 30 μs,達到了實時處理的效果。由前面的算法分析知本系統采用流水線結構,時延小,完全可以對分辨率更高、幀率更高的視頻做實時NPR渲染。本系統在ISE下綜合之后的資源利用率如表1所示,系統僅消耗了整個FPGA slice資源的5%。但是由于要在FPGA上暫存1/4幀的圖像以及三行完整的圖像數據,所以消耗了39%的Block RAM資源。如果圖像更大,可以考慮在FPGA外圍加上SRAM芯片,這樣可以避免占用太多FPGA片上的Block RAM資源。

表1 綜合過后的資源使用情況

4 結論

非真實感渲染技術越來越多地被應用到各個領域中。本文使用VHDL語言設計了基于FPGA的實時NPR系統,該系統在自行研發的以Virtex-5 FPGA為核心的高速圖像處理平臺上得到了實現,并且具體分析了NPR算法的硬件實現流程及方法。由實驗結果可知,該系統實時性好、體積小、便于攜帶,具有較強的工程應用價值。

[1]吳友.基于圖像的彩色鉛筆畫快速生成算法研究[D].長沙:長沙理工大學,2012.

[2]李倩影,陳鍛生.人臉圖像風格化綜述[J].微型機與應用,2014,33(9):4-6.

[3]陳喬,錢文華,徐丹,等.基于非真實感繪制的抽象藝術效果實現[J].計算機應用,2010(12):189-191.

[4]Yang Ming,Lin Shu,Luo Ping,et al.Semantics-driven portrait cartoon stylization[C].Image Processing (ICIP),2010 17th IEEE International Conference on.IEEE,2010:1805-1808.

[5]宋杰,徐丹,時永杰.視覺感知的圖像和視頻抽象[J].中國圖象圖形學報,2013,18(4):450-908.

[6]CHE D,MIAO Z.Real-time cartoon style video generation[C].Image Analysis and Signal Processing (IASP),2010 International Conference on.IEEE,2010:640-643.

[7]Zhang Songhai,Li Xianying,Hu Shimin,et al.Online video stream abstraction and stylization[J].Multimedia,IEEE Transactions on,2011,13(6):1286-1294.

[8]蔡小波,張學杰.一種油畫生成方法及其在FPGA上的實現[J].云南大學學報(自然科學版),2007(S2):133-137.

[9]GONZALEZ R C,WOODS R E.數字圖像處理(第二版)[M].阮秋琦,阮宇智,譯.北京:電子工業出版社,2007:467-469.

[10]曹振華.嵌入式實時系統圖像濾波算法研究[J].蘇州大學學報:工科版,2010,30(1):37-41.

猜你喜歡
系統
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九色在线播放| 40岁成熟女人牲交片免费| 国产97视频在线观看| 国产成人综合欧美精品久久| 国产成人精品日本亚洲77美色| 免费人成在线观看视频色| 国产精品.com| 99久久精品国产精品亚洲 | 欧美伊人色综合久久天天| 人人91人人澡人人妻人人爽| 一本大道东京热无码av| 国产丰满成熟女性性满足视频| 亚洲综合亚洲国产尤物| 狠狠色综合网| 国产免费怡红院视频| 青草精品视频| 18黑白丝水手服自慰喷水网站| 99手机在线视频| 国产精品久线在线观看| 亚洲狼网站狼狼鲁亚洲下载| 女人18毛片一级毛片在线| 亚洲一区二区三区国产精品| 久久久久夜色精品波多野结衣| 久久久久中文字幕精品视频| 好吊妞欧美视频免费| 日韩免费毛片视频| 久久99国产视频| 2024av在线无码中文最新| 在线观看国产精品日本不卡网| 久久免费视频6| 国产精品成| 亚洲AV人人澡人人双人| 日本影院一区| 国产精品性| 精品视频在线观看你懂的一区| 久久香蕉国产线| 丝袜国产一区| 久草视频精品| 欧美一级大片在线观看| 91啦中文字幕| 国产日本一线在线观看免费| 亚洲性视频网站| 污网站免费在线观看| 91精品国产一区| 麻豆精品在线| 欧美精品亚洲精品日韩专区| 国产成人精品一区二区三区| 亚洲Aⅴ无码专区在线观看q| 久久香蕉国产线看观| 国产在线一二三区| 亚洲日本中文字幕天堂网| 无码高潮喷水在线观看| 精品无码国产自产野外拍在线| 亚洲精品麻豆| 99ri精品视频在线观看播放| 国产福利微拍精品一区二区| 素人激情视频福利| 波多野结衣在线一区二区| 91在线无码精品秘九色APP| 欧美国产在线精品17p| 色综合久久综合网| 国产成人毛片| 欧美色香蕉| 欧美日本在线一区二区三区| 欧美在线三级| 曰韩免费无码AV一区二区| 国产成人91精品免费网址在线| 人妻21p大胆| 亚洲成综合人影院在院播放| 99精品久久精品| 极品国产一区二区三区| 97人人做人人爽香蕉精品| 国产偷国产偷在线高清| 亚洲天堂区| 国产一区二区三区免费| 国产欧美日韩91| 亚洲天堂成人| 午夜一级做a爰片久久毛片| 亚洲欧美另类中文字幕|