技術(shù)鄰域
本發(fā)明涉及顯示技術(shù)領(lǐng)域,尤其涉及一種基于fpga的立體圖像視頻實時融合方法及系統(tǒng)
背景技術(shù):
隨著移動互聯(lián)網(wǎng)的發(fā)展,便攜式設(shè)備應(yīng)用越來越廣泛,而集裸眼3d技術(shù)和移動互聯(lián)網(wǎng)技術(shù)于一體的便攜式裸眼3d設(shè)備,具有廣闊的市場前景和重要的經(jīng)濟(jì)價值。便攜式設(shè)備搭載嵌入式系統(tǒng)擁有強(qiáng)大的數(shù)據(jù)處理能力移動互聯(lián)網(wǎng)功能,與裸眼3d技術(shù)相結(jié)合提供全新的視覺體驗。便攜式裸眼3d設(shè)備是裸眼3d技術(shù)的重要應(yīng)用,研究與便攜式裸眼3d設(shè)備相符合的硬件電路結(jié)構(gòu)和視頻信號轉(zhuǎn)換的邏輯具有重大意義。
fpga(fieldprogrammablegatearray)是一類高集成度的可編程邏輯器件,起源于美國的xilinx公司,該公司于1985年推出了世界上第一塊fpga芯片。fpga技術(shù)結(jié)合了微電子技術(shù)、電路技術(shù)、eda技術(shù),使設(shè)計者可以集中精力進(jìn)行所需邏輯功能的設(shè)計。與專用集成電路asci(applicationspecificintegratedcircuit)相比,fpga具有靈活性高、設(shè)計周期短、成本低、風(fēng)險小等優(yōu)勢,因而得到了廣泛應(yīng)用。隨著工藝的發(fā)展和市場需求的擴(kuò)大,超大規(guī)模、高速、低功耗的新型fpga不斷推陳出新。新一代的fpga甚至集成了中央處理器(cpu)或數(shù)字處理器(dsp)內(nèi)核,在一片fpga開發(fā)板上進(jìn)行軟硬件協(xié)同設(shè)計,為實現(xiàn)片上可編程系統(tǒng)提供了強(qiáng)大的硬件支持。
隨著數(shù)字多媒體技術(shù)的不斷發(fā)展,數(shù)字圖像處理技術(shù)被廣泛應(yīng)用于航空航天、通信、醫(yī)學(xué)及工業(yè)生產(chǎn)等領(lǐng)域中,新開發(fā)的產(chǎn)品在圖像存儲容量、圖像質(zhì)量、圖像處理速度等方面有了新的要求。數(shù)字圖像處理,一般是通過對像素的一些運(yùn)算提高圖像質(zhì)量,在圖像處理過程中,雖然處理算法簡單,但參與運(yùn)算的數(shù)據(jù)量大,數(shù)據(jù)需多次重復(fù)使用,因此,圖像處理往往是圖像處理系統(tǒng)中最為耗時的環(huán)節(jié),對整個系統(tǒng)速度影響較大。在當(dāng)前圖像處理算法研究已經(jīng)很成熟的背景下,提高圖像處理的時效性有很大的應(yīng)用前景。隨著微電子技術(shù)的高速發(fā)展,fpga為數(shù)字圖像信號處理在算法、系統(tǒng)結(jié)構(gòu)上帶來了新的方法和思路。由于圖像中的所有元素均可施以同樣的操作,存在固有的并行性,非常適合于映射到fpga架構(gòu)中由硬件算法實現(xiàn),使得圖像的處理速度大大加快。對于數(shù)字圖像處理,底層圖像處理的數(shù)據(jù)量很大,要求處理速度快,但運(yùn)算結(jié)果相對比較簡單,以fpga作為主要處理芯片的圖像處理系統(tǒng)非常適合于對圖像進(jìn)行處理。
本申請人和發(fā)明人的cn201510439414提出一種基于fpga的實時立體視頻融合轉(zhuǎn)換算法,基于串口通訊模塊,fpga主板的平臺作為轉(zhuǎn)換算法的基礎(chǔ);fpga主板包括串口通訊模塊,hdmi輸入寄存器配置模塊,hdmi輸出寄存器配置模塊,iic接口控制模塊,hdmi輸入子卡即hdmi輸入控制模塊,hdmi輸出控制模塊即輸出子卡,ddr3內(nèi)存控制模塊,時鐘生成模塊,hdmi1080p@60hz時序生成模塊;由pc(1)輸出未經(jīng)融合的左右格式的視頻源,左右格式分辨率為1920*1080,通過hdmi接口輸入左右格式圖像、hdmi接口輸出立體視頻,視頻源通過hdmi1.4接口輸入到fpga,利用fpga的并行高速融合算法實現(xiàn)左右格式到立體格式視頻的轉(zhuǎn)換;最后通過hdmi1.4的輸出接口接到顯示屏上顯示立體視頻,完成高清立體視頻的轉(zhuǎn)換與顯示,同時通過串口通訊模塊可以控制左右格式的融合順序;串口通訊模塊采用uart協(xié)議,接受pc發(fā)出的指令來調(diào)整左右格式圖像的融合順序;具體包括以下步驟:首先由pc(1)輸出左右格式的視頻源,左右格式的視頻源由分辨率為960*1080的單視圖從左到右依次排列組成,分辨率為1920*1080;pc(1)輸出的全視圖格式的視頻源流向hdmi輸入控制模塊的hdmi1.4輸入子卡(2),hdmi1.4輸入子卡(2)的視頻處理能力為1080p@60hz;經(jīng)過hdmi1.4輸入子卡(2)的視頻源進(jìn)入fpga主板(3),在fpga主板(3)內(nèi)完成左右視圖格式到立體格式視頻的轉(zhuǎn)換算法;
轉(zhuǎn)換后的立體格式的視頻源進(jìn)入hdmi1.4輸出子卡(4),最后通過hdmi1.4輸出子卡(4)的立體格式視頻源在3dlcd(5)上顯示,得到分辨率為1080p的立體圖像;
hdmi輸入寄存器配置模塊的作用是配置hdmi視頻解碼芯片,采用iic協(xié)議來配置;hdmi輸出寄存器配置模塊的作用是配置hdmi視頻編碼芯片,采用iic協(xié)議來配置;iic接口控制模塊用來產(chǎn)生符合iic協(xié)議的時序;
fpga主板內(nèi)部hdmi輸入控制模塊完成3項功能:1)采取乒乓切換的算法讀取輸入視頻流從而提高了視頻流吞吐量,避免了讀寫沖突;2)將左右格式圖像的對應(yīng)像素點(diǎn)融合成立體格式的像素點(diǎn);3)生成符合axi4總線的時序把有效像素寫入ddr3_sdram;
fpga主板內(nèi)部hdmi輸出控制模塊ddr3_2_hdmi主要完成3項功能1)以1080p@60hz時序輸出像素到hdmi輸出接口;2)生成符合axi4總線的時序從ddr3_sdram讀出融合后的有效像素;3)基于乒乓切換的算法從ddr3中讀取視頻流,從而避免了讀寫沖突;
fpga主板內(nèi)部ddr3內(nèi)存控制模塊mig主要完成輸入視頻流向ddrs_sdram的寫入控制,ddr3_sdaram向輸出視頻流的輸出控制;
fpga主板負(fù)責(zé)完成左右格式圖像到立體格式圖像的轉(zhuǎn)換算法,其中時鐘生成模塊clk_gen產(chǎn)生fpga內(nèi)部的時鐘信號以及復(fù)位信號;fpga主板內(nèi)部hdmi1080p@60hz時序生成模塊主要完成hdmi輸出接口的時序。
視頻編解碼芯片是需要使用的,因hdmi輸出寄存器配置模塊的作用是配置hdmi視頻編碼芯片,采用iic協(xié)議來配置;iic接口控制模塊用來產(chǎn)生符合iic協(xié)議的時序。
技術(shù)實現(xiàn)要素:
本發(fā)明的主要目的是,提供了一種具備圖像視頻實時處理、集成度高的基于fpga的立體圖像視頻實時融合方法及系統(tǒng),該立體圖像視頻實時融合方法及系統(tǒng)克服了傳統(tǒng)的立體圖像視頻處理硬件架構(gòu)規(guī)模大、集成度低的問題,實現(xiàn)了不采用視頻編解碼芯片和sdram的情況下基于fpga的圖像視頻信號解碼、立體圖像視頻實時處理和圖像視頻信號編碼。
為了實現(xiàn)上述目的,本發(fā)明提供的技術(shù)方案是,一種基于fpga的立體圖像視頻實時融合方法,該方法包括視頻圖像信號獲取、視頻圖像信號緩存和讀取、視頻圖像信號實時處理和視頻圖像信號發(fā)送;所述視頻圖像信號獲取用于完成圖像信號接入和采集;所述視頻圖像信號緩存和讀取采用fpga內(nèi)部多塊ram乒乓操作進(jìn)行數(shù)據(jù)和時序緩存和讀??;所述視頻圖像信號實時處理是根據(jù)立體融合模式配置需求進(jìn)行實時調(diào)整立體融合格式;所述視頻圖像信號發(fā)送是將處理過的視頻圖像信號進(jìn)行編碼并輸出;
所述視頻圖像信號獲取包括視頻圖像信號輸入和視頻圖像信號解碼;所述視頻圖像信號輸入用于連接外部信號源;視頻圖像信號源包括hdmi信號、vga信號、dvi信號、lvds信號、edp信號、dp信號和mipi信號等;所述視頻圖像信號解碼采用fpga的內(nèi)部邏輯實現(xiàn)。
所述視頻圖像信號緩存和讀取包括視頻圖像數(shù)據(jù)和時序信號緩存、fpga內(nèi)部ram乒乓操作、視頻圖像數(shù)據(jù)尋址讀取和視頻圖像時序順序讀??;所述視頻圖像數(shù)據(jù)和時序信號緩存是由fpga內(nèi)部多塊ram進(jìn)行數(shù)據(jù)和時序緩存;所述視頻圖像數(shù)據(jù)和時序信號緩存采用fpga內(nèi)部兩組ram對視頻圖像數(shù)據(jù)和視頻圖像時序分離存儲,同時fpga內(nèi)部每組ram包含多塊ram來實現(xiàn)乒乓操作進(jìn)行逐行存儲;其中視頻圖像數(shù)據(jù)即為視頻圖像的rgb灰度值,視頻圖像時序包括視頻圖像的場同步信號、行同步信號和數(shù)據(jù)有效信號;所述逐行存儲是為了方便后續(xù)視頻圖像數(shù)據(jù)逐行尋址讀取和處理;所述fpga內(nèi)部ram乒乓操作是通過輸入數(shù)據(jù)選擇單元和輸出數(shù)據(jù)選擇單元按節(jié)拍、相互配合的切換,將經(jīng)過緩沖的數(shù)據(jù)流沒有停頓地送到數(shù)據(jù)流運(yùn)算處理模塊進(jìn)行運(yùn)算與處理;
所述視頻圖像數(shù)據(jù)尋址讀取是針對不同立體格式圖像視頻要求選擇不同像素地址進(jìn)行讀?。?/p>
所述視頻圖像時序順序讀取是為了保證數(shù)據(jù)流輸入和輸出的動態(tài)平衡和時序的同步;所述視頻圖像時序順序讀取是利用輸入視頻圖像信號的場同步信號上升沿鎖定信號和行同步上升沿信號來觸發(fā)順序讀取起始地址,從而實現(xiàn)視頻圖像時序逐行同步順序讀?。?/p>
所述視頻圖像信號實時處理包括立體融合模式配置和實時立體格式融合;所述立體融合模式配置是通過fpga外設(shè)接口輸入控制信號實現(xiàn)不同立體融合模式實時變換;所述實時立體格式融合是將視頻圖像信號進(jìn)行實時尋址讀取后再按照需要的格式排列融合。
所述視頻圖像信號發(fā)送包括視頻圖像信號編碼和視頻圖像信號輸出;所述視頻圖像信號編碼采用fpga內(nèi)部邏輯實現(xiàn)不同格式視頻圖像信號的編碼;所述視頻圖像信號輸出采用不同格式的視頻圖像信號輸出接口。
所述視頻圖像信號輸入包括hdmi信號、vga信號、dvi信號、lvds信號、edp信號、dp信號和mipi信號。
所述視頻圖像時序順序讀取是利用輸入視頻圖像信號的場同步信號上升沿鎖定信號和行同步上升沿信號來觸發(fā)順序讀取起始地址,從而實現(xiàn)視頻圖像時序逐行同步順序讀??;
所述視頻圖像數(shù)據(jù)尋址讀取是采用視頻圖像時序順序讀取的數(shù)據(jù)有效信號上升沿來觸發(fā)fpga內(nèi)部ram中視頻圖像有效數(shù)據(jù)讀取,從而實現(xiàn)視頻圖像數(shù)據(jù)準(zhǔn)確逐行同步尋址讀取。
所述視頻圖像信號實時處理包括立體融合模式配置和實時立體格式融合。所述立體融合模式配置是通過fpga外設(shè)接口輸入控制信號實現(xiàn)不同立體融合模式實時變換;所述實時立體格式融合是將視頻圖像信號進(jìn)行實時尋址讀取后再按照需要的格式排列融合。
所述立體融合模式配置采用fpga外設(shè)接口輸入信號配置,其中包括上位機(jī)串口配置、spi接口配置、i2c接口配置等。所述實時立體格式融合是以左右格式兩視點(diǎn)的二維視頻圖像進(jìn)行實時左右視點(diǎn)像素讀取并按照需要的格式排列融合。
所述視頻圖像信號發(fā)送包括視頻圖像信號編碼和視頻圖像信號輸出。所述視頻圖像信號編碼采用fpga內(nèi)部邏輯實現(xiàn)不同格式視頻圖像信號的編碼;所述視頻圖像信號輸出采用不同格式的視頻圖像信號輸出接口。
所述不同格式視頻圖像信號編碼包括hdmi信號編碼、vga信號編碼、dvi信號編碼、lvds信號編碼、edp信號編碼、dp信號編碼和mipi信號編碼。
有益效果,本發(fā)明在針對超高分辨率的視頻圖像信號進(jìn)行實施時,能實時完成視頻圖像信號的解碼、采集、存儲、處理、編碼,并能保持很好的時序同步和fpga內(nèi)部數(shù)據(jù)的吞吐量均衡。本發(fā)明中所述視頻圖像信號解碼是基于fpga的內(nèi)部邏輯實現(xiàn),有效的解決了專業(yè)集成芯片解碼的需求,降低了系統(tǒng)開發(fā)成本。所述視頻圖像信號編碼也是如此。所述視頻圖像信號緩存和讀取采用fpga內(nèi)部兩組ram對視頻圖像信號逐行存儲,提高了后續(xù)的視頻圖像逐行處理的效率,同時又突破了傳統(tǒng)的sdram緩存,減小了硬件系統(tǒng)規(guī)模。
本發(fā)明所設(shè)計的視頻圖像數(shù)據(jù)和時序信號分離存儲方法,即采用fpga內(nèi)部兩組ram對視頻圖像數(shù)據(jù)和視頻圖像時序進(jìn)行分離存儲,保證了輸入視頻圖像信號的完整性,為視頻圖像信號實時處理提供了時序同步的保障。同時fpga內(nèi)部每組ram包含多塊ram來實現(xiàn)乒乓操作逐行存儲,提高了視頻圖像信號處理的效率和實時性。
附圖說明
圖1是說明本發(fā)明的基于fpga的立體圖像視頻實時融合方法及系統(tǒng)的架構(gòu)示意圖;
圖2是采用圖1實施例圖像視頻實時融合的程序流程圖。
具體實施方式
下面結(jié)合說明書附圖對本發(fā)明的具體實施方式進(jìn)行詳細(xì)說明。應(yīng)當(dāng)理解的是,此處所描述的具體實施方式僅用于說明和解釋本發(fā)明,并不用于限制本發(fā)明。
本發(fā)明提供一種基于fpga的立體圖像視頻實時融合方法及系統(tǒng),該方法及系統(tǒng)包括視頻圖像信號獲取、視頻圖像信號緩存和讀取、視頻圖像信號實時處理和視頻圖像信號發(fā)送。所述視頻圖像信號獲取用于完成圖像信號接入和采集;所述視頻圖像信號緩存和讀取采用fpga內(nèi)部多塊ram乒乓操作進(jìn)行數(shù)據(jù)和時序緩存和讀??;所述視頻圖像信號實時處理是根據(jù)立體融合模式配置需求進(jìn)行實時調(diào)整立體融合格式;所述視頻圖像信號發(fā)送是將處理過的視頻圖像信號進(jìn)行編碼并輸出。
通過上述實施方式,本發(fā)明所述視頻圖像信號獲取包括視頻圖像信號輸入和視頻圖像信號解碼。所述視頻圖像信號輸入用于連接外部信號源,包括hdmi信號、vga信號、dvi信號、lvds信號、edp信號、dp信號和mipi信號等;所述視頻圖像信號解碼采用fpga的內(nèi)部邏輯實現(xiàn),將各種格式信號解碼出rgb灰度分量值、場同步信號、行同步信號和數(shù)據(jù)有效信號。
參照圖1,所述視頻圖像數(shù)據(jù)和時序信號緩存,是將所述視頻圖像信號解碼出的rgb灰度分量值、場同步信號、行同步信號和數(shù)據(jù)有效信號采用fpga內(nèi)部兩組ram分離存儲,其中一組ram存儲視頻圖像rgb灰度分量值,另一組ram存儲視頻圖像場同步信號、行同步信號和數(shù)據(jù)有效信號;同時fpga內(nèi)部每組ram包含多塊ram來實現(xiàn)乒乓操作逐行存儲。這樣可以實現(xiàn)當(dāng)fpga內(nèi)部ram在存儲視頻圖像第二行像素時序信息時,同時fpga讀取ram中第一行像素時序信息并進(jìn)行實時的立體格式融合,這樣依次交替處理。其中視頻圖像數(shù)據(jù)即為視頻圖像信號的rgb灰度分量值,視頻圖像時序包括視頻圖像信號的場同步信號、行同步信號和數(shù)據(jù)有效信號。所述逐行存儲是為了方便后續(xù)視頻圖像數(shù)據(jù)逐行尋址讀取和處理;
參照圖1和圖2,所述視頻圖像時序順序讀取是利用輸入視頻圖像信號的場同步信號上升沿鎖定信號和行同步上升沿信號來觸發(fā)順序讀取起始地址,后面采用讀取地址和存儲地址同時遞增,實現(xiàn)fpga內(nèi)部ram存儲和ram讀取并行執(zhí)行,從而實現(xiàn)視頻圖像時序逐行同步順序讀取,其中場同步信號上升沿鎖定信號是由場同步信號上升沿到來后一直處于高電平鎖定;舉例說明,假設(shè)輸入視頻圖像信號為1024*768分辨率,刷新率60hz,單個像素時鐘為pclk,根據(jù)vesa標(biāo)準(zhǔn),那么行掃描總時間為
所述視頻圖像數(shù)據(jù)尋址讀取,不同于視頻圖像時序順序讀取的過程,視頻圖像數(shù)據(jù)尋址讀取是根據(jù)視頻圖像時序順序讀取地址來計算fpga內(nèi)部ram中視頻圖像有效數(shù)據(jù)區(qū)域地址,從而實現(xiàn)視頻圖像數(shù)據(jù)準(zhǔn)確逐行同步尋址讀取。舉例說明,假設(shè)輸入視頻圖像信號為1024*768分辨率,刷新率60hz。即在fpga內(nèi)部ram3中逐行存儲視頻圖像數(shù)據(jù)是從場同步信號上升沿鎖定信號有效和數(shù)據(jù)有效上升沿信號有效開始存儲到數(shù)據(jù)有效下降沿信號有效結(jié)束,接著另一塊ram4在ram3結(jié)束存儲后等待數(shù)據(jù)有效上升沿信號有效開始存儲下一行視頻圖像數(shù)據(jù)信息,同時fpga根據(jù)ram1或ram2中讀取的視頻圖像時序信息判斷數(shù)據(jù)有效信號上升沿有效時開始從ram3中讀取一行視頻圖像數(shù)據(jù)信息。存儲和讀取地址數(shù)量都為1024個,每個地址內(nèi)數(shù)據(jù)位為24bit,包括rgb灰度分量值各占8bit;
參照圖1,所述視頻圖像信號實時處理包括立體融合模式配置和實時立體格式融合。所述立體融合模式配置是通過fpga外設(shè)接口輸入控制信號實現(xiàn)不同立體融合模式實時變換;其中包括上位機(jī)串口配置、spi接口配置或i2c接口配置等。所述實時立體格式融合是以左右格式兩視點(diǎn)的二維視頻圖像進(jìn)行實時左右視點(diǎn)像素讀取并按照需要的格式排列融合。舉例說明,假設(shè)輸入視頻圖像信號為1024*768分辨率,刷新率60hz。如果按照左右格式圖像,即左視圖分辨率為512*768,右視圖分辨率也為512*768;一行1024個像素通過左右視圖跳躍尋址讀取單個像素值,通過流水線方式可以實現(xiàn)亞像素級的排列組合,假設(shè)通過尋址讀取左視圖亞像素為r1、g1、b1,右視圖亞像素為r2、g2、b2;通過不同排列最多可以實現(xiàn)六種組合方式。這六種組合排列方式可以通過立體融合模式配置來選擇。
所述視頻圖像信號發(fā)送包括視頻圖像信號編碼和視頻圖像信號輸出。所述視頻圖像信號編碼采用fpga內(nèi)部邏輯實現(xiàn)不同格式視頻圖像信號的編碼,其中包括hdmi信號編碼、vga信號編碼、dvi信號編碼、lvds信號編碼、edp信號編碼、dp信號編碼和mipi信號編碼;所述視頻圖像信號輸出采用不同格式的視頻圖像信號輸出接口。
以上結(jié)合附圖詳細(xì)描述了本發(fā)明的優(yōu)選實施方式,但是,本發(fā)明并不限于上述實施方式中的具體細(xì)節(jié),對于本技術(shù)鄰域的普通技術(shù)人員來說,在不脫離本發(fā)明所述方法的前提下,還可以作出若干改進(jìn),這些改進(jìn)也應(yīng)視為本發(fā)明的保護(hù)范圍。