亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于陣列處理器的SVDC算法并行設(shè)計(jì)與實(shí)現(xiàn)

        2023-11-02 12:36:56黎瑞金
        關(guān)鍵詞:深度圖視點(diǎn)處理器

        蔣 林 黎瑞金 曹 非

        1(西安科技大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 陜西 西安 710600)

        2(西安科技大學(xué)電氣與控制工程學(xué)院 陜西 西安 710600)

        0 引 言

        近年來3D視頻在各行各業(yè)中有著廣闊的應(yīng)用場景。在基于3D-HEVC的三維視頻編碼技術(shù)中,編碼模式的選擇采用了率失真優(yōu)化方法,深度圖的失真會(huì)導(dǎo)致合成視點(diǎn)的失真,所以我們可以通過測量合成視點(diǎn)的失真來替代深度圖的失真,保證虛擬合成視圖的質(zhì)量[1]。因此,Tech等[2-4]針對(duì)深度數(shù)據(jù)的失真度量提出了應(yīng)用3D-HEVC的視點(diǎn)合成失真變化算法。這種算法具有高級(jí)視圖算法的所有基本功能,例如像素變化、差值、空洞填充以及融合,使得編碼端可以在率失真優(yōu)化過程中直接計(jì)算合成視點(diǎn)失真。但是,這種方法需要在編碼過程中執(zhí)行基于像素級(jí)的視點(diǎn)合成與失真值計(jì)算操作,引起頻繁的訪存操作,導(dǎo)致過高的編碼復(fù)雜度以及較低的算法性能。為了解決SVDC這種數(shù)據(jù)密集型算法的計(jì)算復(fù)雜度過高的問題,Ma等[5]提出了一種通過設(shè)置三種合成視點(diǎn)零差異條件下提前終止SVDC計(jì)算過程的模型,但是傳統(tǒng)處理器串行化的計(jì)算方式仍使得SVDC算法的性能提升有限。

        針對(duì)上述問題,本文基于陣列處理器的SVDC并行算法,采用分布式共享存儲(chǔ)結(jié)構(gòu)(Unified addressing Distributed Shared Memory Structure,UaDSMS)[7]實(shí)現(xiàn)了多視點(diǎn)并行計(jì)算。充分利用了陣列處理器的并行特性進(jìn)行算法映射,并根據(jù)算法的訪存特性做出優(yōu)化,使得SVDC算法的性能得到較大提升。

        1 陣列處理器及分布式共享存儲(chǔ)結(jié)構(gòu)

        項(xiàng)目組前期開發(fā)的陣列處理器由多個(gè)處理單元(Processing Element,PE)構(gòu)成,該P(yáng)E的結(jié)構(gòu)如圖1所示[6]。每個(gè)PE分別由ALU單元、寄存器單元、左路數(shù)據(jù)選擇單元、右路數(shù)據(jù)選擇單元、fanout單元和配置單元組成。

        圖1 PE結(jié)構(gòu)

        此陣列處理器結(jié)構(gòu)由16個(gè)PE組成一個(gè)簇,采用了4×4的矩陣結(jié)構(gòu),單個(gè)PE的數(shù)據(jù)訪存位寬是16位。其中分布式共享存儲(chǔ)結(jié)構(gòu)如圖2所示[7],此存儲(chǔ)結(jié)構(gòu)下層為16個(gè)同樣排列結(jié)構(gòu)512 bit×16 bit大小組成的RAM,中間是采用了全交換結(jié)構(gòu)(Full Switching,FS)的高速訪問單元,上層為16個(gè)PE組成的簇,這種結(jié)構(gòu)是一種最直接且并行度最高的高速交換單元結(jié)構(gòu)。

        圖2 分布式共享存儲(chǔ)結(jié)構(gòu)

        分布式共享存儲(chǔ)結(jié)構(gòu)的主要優(yōu)勢如下:1) 從邏輯上分析,整個(gè)片上存儲(chǔ)采用相同的編址方式。2) 從物理上分析,采用多個(gè)分布式存儲(chǔ)塊,實(shí)現(xiàn)片上存儲(chǔ)的并行訪問,支持簇內(nèi)請(qǐng)求的無沖突并行訪問。

        根據(jù)以上分析,我們發(fā)現(xiàn)具有“邏輯共享、物理分布”特性的分布式共享存儲(chǔ)結(jié)構(gòu)所表現(xiàn)出的并行化設(shè)計(jì)優(yōu)勢,非常適合SVDC算法數(shù)據(jù)密集的特點(diǎn)。

        2 SVDC算法并行化設(shè)計(jì)

        2.1 SVDC算法并行性分析

        SVDC算法可以通過聯(lián)系合成視點(diǎn)失真與深度圖失真,計(jì)算當(dāng)前合成視點(diǎn)中由于深度值變化所產(chǎn)生的全部失真值,從而提升深度圖編碼的率失真優(yōu)化效果,并且可以同時(shí)考慮當(dāng)前深度圖編碼塊周圍像素的深度值變化情況。因此,SVDC算法被定義為計(jì)算兩個(gè)合成視點(diǎn)的失真值之差:

        (1)

        圖3 SVDC算法流程

        由圖3可以看出SVDC算法在計(jì)算過程中,每一次SVDC計(jì)算都要經(jīng)過三個(gè)合成視點(diǎn)進(jìn)行SSD計(jì)算,其中每一個(gè)合成視點(diǎn)都是由原始紋理圖幀、原始深度圖幀和重建紋理圖幀、重建深度圖幀分別求得,大量的SSD計(jì)算會(huì)出現(xiàn)頻繁的訪存操作。傳統(tǒng)處理器串行化的計(jì)算方式會(huì)使得算法的性能難以提升。針對(duì)以上的問題,本文將基于陣列處理器和分布式共享存儲(chǔ)結(jié)構(gòu),實(shí)現(xiàn)多視點(diǎn)SSD并行計(jì)算,通過簇內(nèi)PE陣列處理器的并行執(zhí)行,實(shí)現(xiàn)對(duì)SVDC算法的加速。

        2.2 SVDC算法并行化映射

        SVDC算法主要可分為虛擬視點(diǎn)合成以及失真值計(jì)算兩大部分。圖4是SVDC算法的陣列處理器映射結(jié)構(gòu)。共調(diào)用4個(gè)簇的資源,PE00簇負(fù)責(zé)預(yù)處理,PE01簇負(fù)責(zé)3D-warping,PE11簇負(fù)責(zé)空洞填充,PE10簇負(fù)責(zé)失真值計(jì)算,下面為各個(gè)簇的工作安排。

        圖4 SVDC算法映射結(jié)構(gòu)圖

        PE00號(hào)簇:00號(hào)簇從外部存儲(chǔ)設(shè)備加載相機(jī)參數(shù)并將數(shù)據(jù)暫時(shí)存入00號(hào)簇的RAM中。如圖5所示針對(duì)深度圖進(jìn)行中值濾波預(yù)處理,使用01、02、03、11、12、13、21、22、23號(hào)PE,分為三步進(jìn)行中值濾波。

        圖5 預(yù)處理中值濾波

        Step1:將從外部存儲(chǔ)設(shè)備加載的數(shù)據(jù)以3×3的像素塊為單位,每行從大到小排序,分別取得大、中、小三個(gè)值。

        Step2:對(duì)大值行即第一列進(jìn)行比較,對(duì)小值行即第三列進(jìn)行比較,取其中的大值與小值。

        Step3:把三行的中值與第二列相比較,再取一次中值。將小值、中值和大值進(jìn)行比較與排序,獲得的中值即為該像素塊的中值。

        PE01號(hào)簇:3D-warping是產(chǎn)生虛擬視點(diǎn)的核心技術(shù),它將先提取圖像幀的深度圖信息,再根據(jù)深度圖信息,把參考紋理圖的視點(diǎn)信息投射至3D空間坐標(biāo),最后投射到2D空間坐標(biāo)的目標(biāo)視點(diǎn)。這種方法需要攝像機(jī)參數(shù),其中內(nèi)部相機(jī)參數(shù)用A表示,外部相機(jī)參數(shù)用R與t表示。

        (2)

        式中:r代表參考視點(diǎn);Zr是參考視點(diǎn)在(ur,vr)位置的深度值,首先我們利用內(nèi)部相機(jī)參數(shù)A將3D相機(jī)的坐標(biāo)映射到2D空間的虛擬視點(diǎn)中去,再取一個(gè)參考視點(diǎn)的像素坐標(biāo)(ur,vr),最后利用深度圖信息將像素坐標(biāo)映射到世界坐標(biāo)中的(Xw,Yw,Zw)位置中。

        (3)

        (4)

        式中:v表示8比特的深度值,其中z、Znear和Zfar都被設(shè)定為正值或負(fù)值。如式(4)所示,其中(Xw,Yw,Zw)是式(2)映射到3D空間的坐標(biāo),3×3的旋轉(zhuǎn)矩陣R與3×1的平移矩陣是攝像機(jī)參數(shù)。

        PE11號(hào)簇:空洞填充作為虛擬視點(diǎn)合成中的難點(diǎn),長期以來影響著該領(lǐng)域的發(fā)展[9]。本文通過人工識(shí)別空洞點(diǎn)的方式,通過匯編指令向PE下發(fā)指令,針對(duì)空洞部分采集鄰近像素點(diǎn)的信息,再逐步進(jìn)行空洞點(diǎn)的像素填充。這里共調(diào)用10個(gè)PE,首先由00號(hào)PE將數(shù)據(jù)分發(fā)至02、03、12、13、20、21、30、31號(hào)PE,然后各PE采集鄰近像素點(diǎn)的信息,并將其填充進(jìn)空洞部分,最后各PE將結(jié)果傳送到33號(hào)PE,準(zhǔn)備送入10號(hào)簇進(jìn)行失真值計(jì)算。

        PE10號(hào)簇:失真值計(jì)算,由于失真值計(jì)算涉及大量合成視點(diǎn)的SSD計(jì)算,存在頻繁的訪存操作以及冗余的編碼復(fù)雜度,本文利用陣列處理器及分布式共享存儲(chǔ)的并行設(shè)計(jì)優(yōu)勢,實(shí)現(xiàn)了多視點(diǎn)SSD并行計(jì)算。

        2.3 失真值計(jì)算設(shè)計(jì)與優(yōu)化

        失真值計(jì)算作為SVDC算法的核心步驟,頻繁的訪存操作會(huì)使得算法出現(xiàn)大量的數(shù)據(jù)移動(dòng)。本節(jié)作者在使用單元級(jí)SSD計(jì)算映射方案實(shí)現(xiàn)后,通過優(yōu)化訪存時(shí)序,提出了像素級(jí)SSD計(jì)算設(shè)計(jì)。

        (1) 單元級(jí)SSD計(jì)算設(shè)計(jì)。以8×8像素點(diǎn)的圖像塊為例,具體操作如圖6所示。

        圖6 單元級(jí)SSD計(jì)算

        圖7 像素級(jí)SSD計(jì)算設(shè)計(jì)結(jié)構(gòu)圖

        這種不同于傳統(tǒng)處理器串行訪存特性的處理方式,完全依賴于本文所用到的陣列處理器與分布式共享存儲(chǔ)結(jié)構(gòu)。其中單個(gè)PE對(duì)本地RAM的無阻塞訪問以及簇內(nèi)無沖突的并行訪問極大地提高了運(yùn)算資源利用率。使用像素級(jí)SSD計(jì)算替代單元級(jí)SSD計(jì)算,可以使失真值計(jì)算提升39.3%的時(shí)間性能。

        3 實(shí)驗(yàn)分析

        3.1 驗(yàn)證方案

        為了評(píng)估本文所提出SVDC算法并行設(shè)計(jì)的性能,我們采用3D-HEVC參考軟件HTM-16.1[12]作為對(duì)比平臺(tái)。選用四個(gè)JCT-3V小組建議的標(biāo)準(zhǔn)序列作為測試用例,包括“Balloons”“Kendo”“GTFly”“PoznanStreet”進(jìn)行測試,量化參數(shù)(QP)為(25,34)。本文使用基于項(xiàng)目組提供的DPR-CODEC結(jié)構(gòu)精簡指令集經(jīng)過轉(zhuǎn)碼后的二進(jìn)制代碼在modelsim中進(jìn)行基本功能仿真驗(yàn)證。

        3.2 實(shí)驗(yàn)結(jié)果與性能分析

        將本文實(shí)現(xiàn)的SVDC算法計(jì)算性能分別與文獻(xiàn)[4]、文獻(xiàn)[5]與文獻(xiàn)[10]的計(jì)算性能進(jìn)行對(duì)比,如表1所示。其中ΔT表示本文在SVDC算法計(jì)算相比于HTM-16.1平臺(tái)中計(jì)算節(jié)省時(shí)間百分比,Δt表示并行編碼相比于串行編碼節(jié)省時(shí)間百分比,ΔS表示像素級(jí)SSD計(jì)算相比單元級(jí)SSD計(jì)算節(jié)省時(shí)間百分比。

        表1 不同方法的編碼時(shí)間對(duì)比(%)

        (5)

        (6)

        (7)

        其中文獻(xiàn)[4]所提出的RM渲染器在編碼端將SVDC算法分為初始化、部分重渲染以及SVDC計(jì)算共三部分,通過RM渲染器在初始化后存儲(chǔ)中間變量并進(jìn)行快速重渲染過程,大幅度降低編碼復(fù)雜度。針對(duì)深度圖編碼越復(fù)雜的測試序列,RM渲染器提升越大,與本文相比在視點(diǎn)合成部分有較大的編碼優(yōu)勢。文獻(xiàn)[5]提出的零合成視差模型考慮了深度-視差映射,紋理適應(yīng)和遮擋三種效果用于視點(diǎn)合成優(yōu)化。文獻(xiàn)[10]提出了的視點(diǎn)合成優(yōu)化方法,相比原方法增加了跳過零失真的較小模塊或像素行的過程。文獻(xiàn)[5]與文獻(xiàn)[10]仍著重于對(duì)視點(diǎn)合成部分進(jìn)行優(yōu)化,但是失真值計(jì)算卻依舊采用傳統(tǒng)的串行編碼方式。經(jīng)過實(shí)驗(yàn)得到如表1所示實(shí)驗(yàn)數(shù)據(jù),可以發(fā)現(xiàn)本文提出的SVDC算法并行化設(shè)計(jì)相比于文獻(xiàn)[5]與文獻(xiàn)[10]可以獲得更快的編碼時(shí)間,但是未能超過文獻(xiàn)[4]的RM渲染器模型。相較于HTM原始算法,本文的算法性能平均可以提升19.025%。

        為了證明并行編碼方式的有效性,如表2所示對(duì)四個(gè)不同測試序列測試四個(gè)8×8的像素塊,分別使用串行編碼方式(單PE)以及并行編碼方式(多PE)進(jìn)行失真值計(jì)算,并行編碼方式分為單元級(jí)SSD計(jì)算以及像素級(jí)SSD計(jì)算。實(shí)驗(yàn)結(jié)果可知,相比于串行編碼方式,本文提出的并行編碼方式可以提升57.6%的計(jì)算性能,串/并加速比平均可以達(dá)到2.36,相比于單元級(jí)SSD計(jì)算,本文提出的像素級(jí)SSD計(jì)算優(yōu)化設(shè)計(jì)可以提升39.3%的計(jì)算性能。從表2中可看出,當(dāng)像素塊越復(fù)雜,像素級(jí)SSD計(jì)算的Δt就越大,這得益于像素級(jí)SSD計(jì)算設(shè)計(jì)通過重新劃分計(jì)算與訪存時(shí)序,提高了計(jì)算訪存比,減少了PE單元的空閑時(shí)間。

        表2 串行編碼與并行編碼失真值計(jì)算性能分析

        由于整個(gè)SVDC算法中涉及大量的SSD計(jì)算,陣列處理器以及分布式共享存儲(chǔ)結(jié)構(gòu)可以在簇內(nèi)提供16個(gè)位寬為16位的數(shù)據(jù)讀寫訪問通道,支持單個(gè)像素點(diǎn)的數(shù)據(jù)存取,其中單個(gè)PE擁有對(duì)本地RAM的優(yōu)先訪問權(quán),讀操作與寫操作分別可以在1與2個(gè)時(shí)鐘周期內(nèi)完成,使得PE的數(shù)據(jù)訪存難度降低,可以大幅度提高SVDC計(jì)算的性能。

        如圖8所示,對(duì)8×8的像素塊使用不同處理器規(guī)模進(jìn)行失真值計(jì)算性能分析。實(shí)驗(yàn)結(jié)果表明,當(dāng)使用的PE核數(shù)增多時(shí),算法并行度的提升將導(dǎo)致性能逐步提升,但是由于核數(shù)的增多、數(shù)據(jù)訪存量的增大會(huì)造成算法并行化設(shè)計(jì)愈加復(fù)雜。后續(xù)的工作中將對(duì)于如何提高PE的資源利用率以及如何設(shè)計(jì)出更高并行度的算法映射方式展開研究。

        圖8 不同處理器規(guī)模下失真值計(jì)算分析

        4 結(jié) 語

        本文基于陣列處理器及分布式共享存儲(chǔ)結(jié)構(gòu),提出了一種針對(duì)SVDC算法的并行映射實(shí)現(xiàn)方法。首先通過加載相機(jī)參數(shù)并進(jìn)行中值濾波對(duì)圖像進(jìn)行預(yù)處理,其次進(jìn)行3D-warping與空洞填充合成虛擬視點(diǎn),最后進(jìn)行失真值計(jì)算。以8×8的像素塊為單位,進(jìn)行多視點(diǎn)SSD計(jì)算,利用一個(gè)簇的運(yùn)算資源得到4個(gè)塊共計(jì)256個(gè)像素點(diǎn)的SVDC失真值。同時(shí)根據(jù)算法訪存特性,使用像素級(jí)SSD計(jì)算設(shè)計(jì)替換單元級(jí)SSD計(jì)算設(shè)計(jì)以提高運(yùn)算資源利用率與算法性能。實(shí)驗(yàn)結(jié)果表明,相比于HTM平臺(tái),本文所采用的陣列處理器實(shí)現(xiàn)的SVDC算法,其時(shí)間性能平均可以提升19.025%,所設(shè)計(jì)的失真值計(jì)算并行方案的串/并加速比為2.36,相比于單元級(jí)SSD計(jì)算,像素級(jí)SSD計(jì)算優(yōu)化設(shè)計(jì)可以提升39.3%的計(jì)算性能。使用不同處理器規(guī)模對(duì)8×8的像素塊進(jìn)行失真值計(jì)算性能分析表明,隨著處理器核數(shù)的增多,算法計(jì)算性能會(huì)逐漸提升,但是數(shù)據(jù)訪存量的增大會(huì)造成算法并行化設(shè)計(jì)愈加復(fù)雜。后續(xù)的工作中將對(duì)于如何提高PE的資源利用率以及如何設(shè)計(jì)出更高并行度的算法映射方式展開研究。

        猜你喜歡
        深度圖視點(diǎn)處理器
        基于深度圖的3D-HEVC魯棒視頻水印算法
        一種基于局部直方圖匹配的深度編碼濾波算法
        疊加速度譜在鉆孔稀少地區(qū)資料解釋中的應(yīng)用
        科技視界(2016年2期)2016-03-30 11:17:03
        視點(diǎn)
        河南電力(2016年5期)2016-02-06 02:11:24
        讓你每天一元錢,物超所值——《今日視點(diǎn)—2014精萃》序
        新聞前哨(2015年2期)2015-03-11 19:29:22
        兩會(huì)視點(diǎn)
        中國水利(2015年5期)2015-02-28 15:12:40
        Imagination的ClearCallTM VoIP應(yīng)用現(xiàn)可支持Cavium的OCTEON? Ⅲ多核處理器
        ADI推出新一代SigmaDSP處理器
        汽車零部件(2014年1期)2014-09-21 11:41:11
        呼嚕處理器
        Kinect深度圖像快速修復(fù)算法
        伊人影院综合在线| 精品含羞草免费视频观看| 夜夜春亚洲嫩草影院| 无码少妇a片一区二区三区| 久久无码人妻一区=区三区| 中文字幕av人妻一区二区| 少妇又色又爽又高潮在线看| 亚洲婷婷五月综合狠狠爱| 天天躁日日躁狠狠躁人妻| 国产极品视觉盛宴在线观看| 蜜桃久久综合一区二区| 国产精品视频一区二区三区不卡| 国产在线观看免费观看| 久久精品国产88久久综合| 亚洲午夜精品第一区二区| 中国老太婆bb无套内射| 亚洲日韩欧美国产另类综合| 精品久久免费一区二区三区四区| 日本一区二区三区光视频 | 国产又a又黄又潮娇喘视频| 亚洲综合伊人制服丝袜美腿| 国产av一区二区三区国产福利| 白白白在线视频免费播放| 丰满熟妇乱子伦| 国产精品自产拍在线观看中文| 久久精品av在线视频| 午夜爽爽爽男女污污污网站| 一个人看的www免费视频中文| 夫妻一起自拍内射小视频| 亚洲一区二区三区四区地址| 97久久精品亚洲中文字幕无码 | 日子2020一区二区免费视频| 一区两区三区视频在线观看| 欧美xxxxx高潮喷水麻豆| 国产一区二区三区影院| 中国免费av网| 中文字幕免费人成在线网站| 少妇久久久久久被弄到高潮 | 亚洲福利二区三区四区| а天堂中文最新一区二区三区| 香蕉网站在线|