張?jiān)骑w, 賀麗君, 王子溪, 李凡
(西安交通大學(xué)電子與信息學(xué)部, 710049, 西安)
近年來,隨著深度神經(jīng)網(wǎng)絡(luò)(deep neural networks, DNN)的發(fā)展,龐大的計(jì)算量和顯存開銷等問題日益凸顯。當(dāng)前邊緣設(shè)備應(yīng)用DNN的常見算法是將數(shù)據(jù)傳輸?shù)皆贫藞?zhí)行視覺任務(wù),但純?cè)贫说臄?shù)據(jù)傳輸方式延時(shí)大,通信開銷高。Kang等[1]提出了協(xié)作智能(collaborative intelligence, CI)框架,將DNN的前半段放在邊緣端,傳輸中間特征到云端完成推理任務(wù),實(shí)現(xiàn)了邊緣設(shè)備和云端的負(fù)載均衡[2]。由于中間特征擴(kuò)展了圖像的維度,造成數(shù)據(jù)量較大,因此,特征的壓縮傳輸效率是影響CI框架性能的關(guān)鍵因素。機(jī)器視覺編碼(video coding for machine, VCM)[3]技術(shù)應(yīng)運(yùn)而生,該編碼技術(shù)致力于彌合視覺特征壓縮與經(jīng)典視頻編碼之間的鴻溝,將視覺特征作為橋梁,以可擴(kuò)展方式連接信號(hào)級(jí)和任務(wù)級(jí)的緊湊表示[4]。由于難點(diǎn)在于現(xiàn)有的編碼器主要面向圖像、視頻設(shè)計(jì),因此,將其應(yīng)用于中間特征編碼并不高效。此外,由于中間特征具有稀疏的數(shù)據(jù)分布,增強(qiáng)中間特征的緊湊性也是提高應(yīng)用效率的關(guān)鍵。
目前,已有的特征壓縮算法可分為編碼壓縮、空間壓縮、特征優(yōu)化和多尺度特征壓縮4類。編碼壓縮利用傳統(tǒng)或非傳統(tǒng)的編碼器將特征量化,消除統(tǒng)計(jì)冗余后編碼為二進(jìn)制碼流。元輝等[5]提出基于局部亮度補(bǔ)償?shù)囊曨l編碼算法,提高了視頻的編碼效率。類比可知,特征也能去除冗余信息,從而進(jìn)行壓縮傳輸。汪維等[6]對(duì)殘差網(wǎng)絡(luò)(ResNet)[7]各層輸出開展了有損編碼與無損編碼的對(duì)比實(shí)驗(yàn),證明無損壓縮效率較低。Choi等[8]研究了基于高效視頻編碼(HEVC)[9]的特征編解碼方案,對(duì)每個(gè)通道的特征圖進(jìn)行量化處理,使用HEVC編碼器將特征編碼進(jìn)行傳輸。Suzuki等[10]研究了中間特征各通道之間的偽時(shí)間關(guān)聯(lián)性,通過對(duì)特征進(jìn)行時(shí)空排列,使用視頻編碼器完成了編碼傳輸。然而,上述研究僅通過量化編碼去除統(tǒng)計(jì)冗余,并沒有考慮特征的空間冗余。
空間壓縮從特征本身的稀疏性出發(fā),通過調(diào)整特征的空間尺寸進(jìn)一步壓縮特征數(shù)據(jù)量。Eshratifar等[11]提出了一種名為瓶頸單元的可學(xué)習(xí)壓縮單元和有損壓縮感知訓(xùn)練算法,分別在ResNet-50和VGG-19[12]網(wǎng)絡(luò)上實(shí)現(xiàn)了特征壓縮。Ikusan等[13]考慮特征之間的相似性,設(shè)計(jì)了分層聚類特征選擇策略。由于上述算法依然采用傳統(tǒng)編碼器對(duì)緊湊特征編碼進(jìn)行傳輸,碼流中仍存在較多的統(tǒng)計(jì)冗余。
通過可訓(xùn)練的編碼模塊,特征優(yōu)化能夠?qū)⑻卣鲏嚎s與參考網(wǎng)絡(luò)聯(lián)合優(yōu)化。宋蓓蓓等[14]提出了結(jié)合碼率預(yù)測(cè)和率失真優(yōu)化的碼率控制算法,實(shí)現(xiàn)了對(duì)圖像碼率的高精度控制。Alvar等[15]設(shè)計(jì)了一個(gè)損失函數(shù)衡量特征的壓縮特性,用來約束模型的訓(xùn)練過程。Chamain等[16]利用壓縮模塊和任務(wù)算法組成鏈路,聯(lián)合微調(diào)編解碼器和任務(wù)網(wǎng)絡(luò)顯著提高了任務(wù)精度。然而,端到端的訓(xùn)練令壓縮傳輸?shù)奶卣髋c任務(wù)強(qiáng)相關(guān),限制了特征的泛化能力。
多尺度特征壓縮是適用于復(fù)雜網(wǎng)絡(luò)的特征壓縮算法。為了保證對(duì)多尺寸目標(biāo)的檢測(cè)效果,主流的檢測(cè)、分割網(wǎng)絡(luò)如Faster RCNN[17]、YOLO[18]、Mask RCNN[19]等,需要在主干網(wǎng)絡(luò)中引出多條支路分別完成推理任務(wù)。Liu等[20]提出將圖像轉(zhuǎn)換為多個(gè)子帶的金字塔,通過對(duì)變換模塊進(jìn)行訓(xùn)練,發(fā)現(xiàn)特征對(duì)多種機(jī)器視覺任務(wù)有用。Zhang等[21]提出了一種端到端的多尺度特征壓縮框架,將多尺度特征融合為單尺度特征進(jìn)行編碼傳輸。但是,以上這些算法既沒有探索不同尺度特征之間的關(guān)聯(lián),也沒有針對(duì)中間特征進(jìn)行編碼優(yōu)化。
為了實(shí)現(xiàn)多尺度特征的高效壓縮傳輸,本文對(duì)比了不同尺度特征的輪廓和細(xì)節(jié),發(fā)現(xiàn)多尺度特征之間存在著強(qiáng)相關(guān)性,可以通過殘差變換去除相關(guān)性,然后使用預(yù)測(cè)重建的方式恢復(fù)特征,消除傳輸過程的空間冗余,同時(shí)采用自編碼器消除傳輸過程的統(tǒng)計(jì)冗余。在此基礎(chǔ)上,提出了一種基于殘差變換模塊、自編碼器和預(yù)測(cè)重建模塊聯(lián)合優(yōu)化的多尺度特征壓縮算法。首先,設(shè)計(jì)了預(yù)測(cè)重建模塊,將多尺度特征逐層作差壓縮為緊湊特征;其次,采用面向特征的自編碼器,將緊湊特征編碼傳輸;然后,設(shè)計(jì)預(yù)測(cè)重建模塊,將預(yù)測(cè)特征和重建的殘差特征相結(jié)合,實(shí)現(xiàn)了多尺度特征的精確重建,并采用3個(gè)可訓(xùn)練的算法模塊,使用碼流與保真度構(gòu)建損失函數(shù)進(jìn)行聯(lián)合優(yōu)化;最后,通過仿真實(shí)驗(yàn)對(duì)比了多個(gè)特征壓縮算法碼率-精度的性能,證明了本文算法的優(yōu)越性。
本文以Faster RCNN作為骨干網(wǎng)絡(luò),提出了一種多尺度特征聯(lián)合壓縮算法,算法總覽如圖1所示。該算法由殘差變換模塊、面向特征的自編解碼器和預(yù)測(cè)重建模塊3部分組成,通過3個(gè)模塊的聯(lián)合優(yōu)化,不僅實(shí)現(xiàn)了多尺度特征的融合壓縮編碼,還降低了VCM算法的傳輸延時(shí)與能耗,提高了協(xié)作智能的應(yīng)用效率。
圖1 面向多尺度特征的聯(lián)合壓縮算法總覽
殘差變換模塊和自編碼器部署在邊緣設(shè)備,解碼器和預(yù)測(cè)重建模塊部署在云端。在邊緣端使用骨干網(wǎng)絡(luò)的前端提取多尺度特征,采用殘差變換模塊消除多尺度特征的相關(guān)性,并轉(zhuǎn)化為統(tǒng)一尺寸的規(guī)范特征,然后使用自編碼器編碼為比特流上傳到云服務(wù)器。解碼器對(duì)接收到的數(shù)據(jù)進(jìn)行解碼處理,經(jīng)過預(yù)測(cè)重建模塊完成多尺度特征的高質(zhì)量恢復(fù),最后通過骨干網(wǎng)絡(luò)的后端完成推理任務(wù)。
在設(shè)計(jì)多尺度特征壓縮模塊之前,先探索了不同尺度特征之間的關(guān)聯(lián)性。提取Faster RCNN網(wǎng)絡(luò)模型中特征金字塔(feature pyramid network, FPN)的不同尺寸特征p2、p3、p4、p5、p6,其中p6由p5通過池化操作獲得,由于不包含p5以外的信息,所以在進(jìn)行特征壓縮研究時(shí)不予考慮。圖2給出了經(jīng)過偽彩圖處理的p2、p3、p4、p5層特征的可視化結(jié)果。
圖2 Faster RCNN網(wǎng)絡(luò)模型中多尺度特征可視化結(jié)果
統(tǒng)一尺寸后發(fā)現(xiàn),不同層的特征具有相似的輪廓,即多尺度特征之間存在明顯的相關(guān)性。若將這種相關(guān)性應(yīng)用于特征壓縮中,可以極大地節(jié)省中間特征壓縮傳輸?shù)臄?shù)據(jù)量。但是,不同尺度特征之間的細(xì)節(jié)差異也不能忽略,因?yàn)檫@些細(xì)節(jié)信息賦予了DNN網(wǎng)絡(luò)對(duì)多尺度物體的辨識(shí)能力。因此,本文設(shè)計(jì)了針對(duì)多尺度特征的差異信息進(jìn)行壓縮編碼的殘差變換模塊,在保留不同特征差異信息的同時(shí),通過殘差處理高效壓縮多尺度特征。
多尺度特征在空間上呈現(xiàn)為金字塔結(jié)構(gòu),可通過逐層作差的方式消除層級(jí)相關(guān)性。文獻(xiàn) [21]的實(shí)驗(yàn)結(jié)果表明,p5層對(duì)凍結(jié)模型推理的影響程度最大。因此在進(jìn)行殘差計(jì)算時(shí),以p5層作為基本特征,后續(xù)處理只進(jìn)行數(shù)值變換。值得注意的是,不同特征的空間尺寸、數(shù)據(jù)分布都不相同,不能直接進(jìn)行殘差計(jì)算,而是需要加入反卷積層[22]充當(dāng)空間變換的橋梁,從而擴(kuò)展低級(jí)特征的尺寸。殘差變換模塊的具體網(wǎng)絡(luò)結(jié)構(gòu)見圖3,其中f2、f3、f4、f5分別表示被壓縮的p2、p3、p4、p5層的殘差特征,f表示殘差變換模塊輸出的統(tǒng)一格式的單尺度特征,k、s、c分別表示卷積層和反卷積層的尺寸、步長和輸出通道數(shù)。
圖3 殘差變換模塊的網(wǎng)絡(luò)結(jié)構(gòu)
該模塊由卷積層、殘差塊、反卷積層和通道拼接操作組成,根據(jù)多尺度特征的金字塔特性,逐層作差消除不同尺寸特征的相關(guān)信息,然后對(duì)殘差特征進(jìn)行空間變換,與p5的尺寸保持一致。與此同時(shí),對(duì)p5特征采用尺寸為3×3的卷積進(jìn)行數(shù)值變換,盡量消除與殘差特征數(shù)值分布上的差異。最后對(duì)所有特征按通道進(jìn)行拼接,經(jīng)過卷積層與殘差塊的處理,輸出具有統(tǒng)一格式的單尺度特征。壓縮過程可表示為
f5=trans(p5)
(1)
f4=trans(p4-sizeAlign(p5,p4))
(2)
f3=trans(p3-sizeAlign(p4,p3))
(3)
f2=trans(p2-sizeAlign(p3,p2))
(4)
f=trans(concat(f5,f4,f3,f2)
(5)
式中:trans(·)操作為對(duì)殘差特征進(jìn)行尺寸變換和數(shù)值變換;sizeAlign(a,b)操作為將張量a的空間尺寸變換到和張量b一致;concat(·)操作為將特征按照通道進(jìn)行拼接。
殘差塊是由主分支和快捷連接組成的雙分支結(jié)構(gòu),輸入輸出均為特征圖。主分支由兩個(gè)尺寸為3×3的卷積和廣義分裂歸一化(GDN)層[23]構(gòu)成,第一個(gè)卷積步長設(shè)置為2,在完成輸入特征空間尺寸的變換后,采用GDN層代替批歸一化(BN)層,以便后續(xù)多尺度特征的重建??旖葸B接限制輸入特征的內(nèi)容損失,使用尺寸為1×1的卷積實(shí)現(xiàn)兩條支路輸出特征空間尺寸的匹配。上述具體結(jié)構(gòu)見圖4,其中,C為輸入特征圖的通道數(shù)目,H為特征高度,W為特征寬度。
圖4 殘差塊的基本結(jié)構(gòu)
綜上所述,殘差變換模塊通過消除多尺度特征之間的空間冗余,實(shí)現(xiàn)了對(duì)多尺度特征的高效壓縮。將殘差塊與卷積層相組合進(jìn)行特征變換,在實(shí)現(xiàn)殘差特征壓縮的同時(shí),保留了中間特征的表達(dá)能力,讓壓縮后的特征在后期能夠得到高質(zhì)量的恢復(fù)。
近年來,深度圖像編碼算法得到深入發(fā)展。與HEVC算法相比,在相同的碼率下,最新的Cheng2020算法[24]獲得的圖片重建性能更高。此算法通過深度編碼器擴(kuò)展圖片特征空間,經(jīng)過量化編碼傳輸,采用對(duì)稱的孿生網(wǎng)絡(luò)重建圖片,其本質(zhì)為特征的壓縮傳輸。殘差變換模塊輸出的特征已經(jīng)過壓縮處理,能夠較方便地進(jìn)行編碼傳輸,之后再通過對(duì)稱的解碼結(jié)構(gòu)生成重建特征。自編碼器的網(wǎng)格結(jié)構(gòu)見圖5,其中,f表示殘差變換模塊輸出的壓縮特征,f′表示自編碼器的重建特征。
圖5 面向特征的自編碼器網(wǎng)絡(luò)結(jié)構(gòu)
由骨干網(wǎng)絡(luò)前端提取到的該模塊輸入的中間特征,經(jīng)過殘差變換模塊的壓縮已經(jīng)能滿足緊湊性的要求,不需要進(jìn)一步再壓縮。對(duì)于超先驗(yàn)編碼器,該模塊輸入的壓縮特征尺寸較小,最多能進(jìn)行兩次下采樣,否則包含的信息不足以指導(dǎo)算術(shù)編碼器。解碼器的目標(biāo)是最大程度地還原壓縮信息,所以采用對(duì)稱設(shè)計(jì)。此時(shí),使用逆函數(shù)iGDN層替代解碼器的GDN層,將下采樣的卷積層改為上采樣的反卷積層,并對(duì)稱設(shè)計(jì)輸入、輸出的通道數(shù)。
采用面向特征的自編碼器去除編碼冗余,可實(shí)現(xiàn)特征的高效編碼。該模塊是可訓(xùn)練的,與殘差變換模塊進(jìn)行聯(lián)合優(yōu)化,能夠?qū)崿F(xiàn)傳輸碼率與表現(xiàn)力的最佳權(quán)衡。
根據(jù)多尺度特征之間的相關(guān)性,該模塊采用逐層預(yù)測(cè)方式,精確重建多尺度中間特征p′2、p′3、p′4、p′5、p′6。殘差變換模塊底層特征p5壓縮程度最小,信息保存最為完整,因此首先完成恢復(fù)。通過split(·)操作將f′按通道分割為f′5、f′4、f′3、f′2,通過f′5精確重建p′5、p′6。與此同時(shí),p′5采用sizeAlign(·)函數(shù)預(yù)測(cè)p4的特征值,再與殘差特征結(jié)合,精確恢復(fù)p4的特征p′4。每層特征的重建可表示為
(f′5,f′4,f′3,f′2)=split(trans(f′))
(6)
p′5=trans(f′5)
(7)
p′6=pooling(p′5)
(8)
p′4=trans(f′4)+sizeAlign(p′5,p4)
(9)
p′3=trans(f′3)+sizeAlign(p′4,p3)
(10)
p′2=trans(f′2)+sizeAlign(p′3,p2)
(11)
式中:split(·)操作表示將特征按照原來的通道數(shù)進(jìn)行分割;pooling(·)操作表示對(duì)特征做池化處理以恢復(fù)最小層特征。
采用與殘差變換模塊對(duì)稱的設(shè)計(jì)方式進(jìn)行模塊搭建,首先,通過殘差層與卷積層的組合完成解碼特征數(shù)值變換,便于后續(xù)特征分割;然后,對(duì)f′5進(jìn)行數(shù)值變換,作為基本重建結(jié)果p′5開展逐級(jí)預(yù)測(cè);接著,對(duì)于分割出的殘差特征,使用殘差塊變換空間尺寸,卷積層擴(kuò)展特征通道;最后,將預(yù)測(cè)特征與殘差特征分別結(jié)合,以實(shí)現(xiàn)多尺度特征的高質(zhì)量重建。該模塊也使用了殘差塊實(shí)現(xiàn)中間特征空間尺寸的擴(kuò)展,將第一層卷積替換為反卷積層,同時(shí)用iGDN層替換GDN層,以增強(qiáng)特征的重建效果。
預(yù)測(cè)重建模塊是生成模型,經(jīng)過與殘差變換模塊的對(duì)稱設(shè)計(jì),可以實(shí)現(xiàn)極低碼率場(chǎng)景中對(duì)多尺度特征的恢復(fù)。下文將開展實(shí)驗(yàn)對(duì)此結(jié)論進(jìn)行驗(yàn)證。
完成殘差變換模塊、自編碼器和預(yù)測(cè)重建模塊的設(shè)計(jì)后,再通過聯(lián)合優(yōu)化的方式調(diào)整網(wǎng)絡(luò)參數(shù),旨在消除統(tǒng)計(jì)冗余。聯(lián)合優(yōu)化的損失函數(shù)L可以表示為
(12)
式中:MSE(pi,p′i)操作為計(jì)算pi和p′i的均方差,用于定量描述特征的壓縮重建效果;R為傳輸比特率;λ為引入的權(quán)重參數(shù)。
由于量化編碼過程不可微,不能用在訓(xùn)練流程中,但可進(jìn)行加性高斯噪聲模擬量化操作,再通過信息熵估計(jì)編碼比特率R。使用比特率R消除統(tǒng)計(jì)冗余,會(huì)讓多尺度特征變?yōu)楦o湊的表達(dá)形式,但也不可避免地導(dǎo)致特征表達(dá)能力的損失。此時(shí),在損失函數(shù)中引入權(quán)重參數(shù)λ,就能實(shí)現(xiàn)傳輸碼率和特征表現(xiàn)力的權(quán)衡。
本文在型號(hào)為NVIDIA GTX 3090 GPU、Intel(R) Xeon(R) Silver 4316 CPU 2.30 GHz的工作站上開展了仿真實(shí)驗(yàn),基于深度學(xué)習(xí)框架Pytorch構(gòu)建了算法模型,通過實(shí)驗(yàn)驗(yàn)證了算法的優(yōu)異性能,設(shè)計(jì)消融實(shí)驗(yàn)證明了模塊的有效性,最后將算法用于Mask RCNN網(wǎng)絡(luò)模型的特征編解碼,完成了泛用性驗(yàn)證。
采用Faster RCNN為骨干網(wǎng)絡(luò),基于COCO預(yù)訓(xùn)練模型,提取FPN輸出的中間特征作為壓縮算法的輸入,采用式(12)對(duì)殘差變換模塊、自編碼器和預(yù)測(cè)重建模塊進(jìn)行聯(lián)合優(yōu)化。訓(xùn)練過程使用2個(gè)Adam優(yōu)化器分別優(yōu)化熵編碼部分和壓縮模型的其他參數(shù),其中熵編碼器的學(xué)習(xí)率固定為1×10-3,另一優(yōu)化器的初始學(xué)習(xí)率設(shè)置為1×10-4,然后呈指數(shù)衰減,數(shù)據(jù)集每完整訓(xùn)練10次,學(xué)習(xí)率衰減為原來的1/2, 2個(gè)優(yōu)化器同步進(jìn)行優(yōu)化,訓(xùn)練批次設(shè)置為16。為了獲得不同壓縮比的模型,權(quán)重參數(shù)λ取不同的數(shù)值。
實(shí)驗(yàn)使用COCO數(shù)據(jù)集[25]訓(xùn)練,在OpenImage數(shù)據(jù)集[26]上進(jìn)行性能評(píng)估。COCO數(shù)據(jù)集是圖像檢測(cè)領(lǐng)域的經(jīng)典數(shù)據(jù)集,OpenImage數(shù)據(jù)集是可商用的、規(guī)模較大且標(biāo)注精確的圖像檢測(cè)分割數(shù)據(jù)集。
2.2.1 COCO數(shù)據(jù)集
此數(shù)據(jù)集主要從復(fù)雜場(chǎng)景中截取,圖像中的目標(biāo)通過精確分割進(jìn)行位置標(biāo)定。面向檢測(cè)任務(wù),訓(xùn)練集中有118 287張圖片,測(cè)試集中有5 000張圖片,各劃分為80個(gè)類別。實(shí)驗(yàn)中,將COCO數(shù)據(jù)集中的圖片輸入到凍結(jié)DNN網(wǎng)絡(luò)的前端以獲取多尺度特征,用于特征壓縮算法的訓(xùn)練優(yōu)化。
2.2.2 OpenImage數(shù)據(jù)集
此數(shù)據(jù)集包含900萬張訓(xùn)練圖片、41 620張驗(yàn)證圖片和125 456張測(cè)試圖片,能夠提供圖像層標(biāo)簽以及分割掩碼,可用于目標(biāo)檢測(cè)和語義分割任務(wù)的訓(xùn)練及測(cè)試。
通過Detection2中的檢測(cè)模型Faster RCNN和分割模型Mask RCNN,對(duì)OpenImage數(shù)據(jù)集的子集進(jìn)行測(cè)試。對(duì)于原始圖像,使用圖像編碼算法(VVC)進(jìn)行壓縮傳輸,重建圖像后轉(zhuǎn)換成特定格式送入神經(jīng)網(wǎng)絡(luò),得到不同機(jī)器視覺任務(wù)的推理結(jié)果。對(duì)于Faster RCNN網(wǎng)絡(luò)模型中FPN輸出的多尺度特征,采用VVC算法進(jìn)行壓縮傳輸,重建特征以完成后續(xù)機(jī)器視覺任務(wù),得到不同任務(wù)的推理結(jié)果。最終比較時(shí),以VVC算法壓縮傳輸?shù)脑紙D像和多尺度特征作為參考,通過碼率-精度曲線證明本文算法的優(yōu)越性。
對(duì)于目標(biāo)檢測(cè)和語義分割任務(wù),使用傳輸碼率和DNN網(wǎng)絡(luò)推理精度對(duì)提出的特征編碼算法進(jìn)行評(píng)估。對(duì)于圖像數(shù)據(jù)集,傳輸碼率R定義為壓縮碼流比特?cái)?shù)與原始圖片像素?cái)?shù)之比,以每個(gè)像素占用的比特?cái)?shù)(bit·像素-1)作為衡量單位。
對(duì)于目標(biāo)檢測(cè)和語義分割,采用平均精度(mean average precision, mAP)來衡量DNN網(wǎng)絡(luò)的性能。其中,給定閾值的召回率定義為該閾值對(duì)應(yīng)的所有真正樣本與假負(fù)樣本中所有真正樣本的比例,推理精度定義為來自所有正例與所有真正例的比例。實(shí)驗(yàn)中測(cè)試mAP時(shí),閾值設(shè)置為0.5。
2.4.1 特征融合與空間性能評(píng)估
對(duì)殘差變換模塊進(jìn)行特征融合,需要完成空間壓縮。因此,首先驗(yàn)證經(jīng)過空間壓縮的特征能否被精確恢復(fù)。為了進(jìn)行比較,分別采用MSFC算法、Cheng2020算法和本文算法測(cè)試了特征壓縮的推理精度。由于殘差變換模塊沒有編碼壓縮能力,因而僅計(jì)算原始碼率。
原始圖像的寬、高、通道數(shù)分別定義為w、h、c,由于圖像處于像素空間,c取3,因此原始圖像的空間信息可以表示為(3,h,w)。由于每個(gè)元素都是uint8的非負(fù)整數(shù),數(shù)值深度為8 bit,可知原始圖像的每像素比特為24,下面分別說明各算法的空間壓縮效率。對(duì)于Cheng2020算法,在骨干網(wǎng)絡(luò)前端對(duì)圖像提取特征的基礎(chǔ)上,將輸入張量的通道數(shù)與特征通道數(shù)保持一致,對(duì)特征逐個(gè)進(jìn)行壓縮編碼,其中p2空間尺寸過大,采用采樣算法將空間尺寸變?yōu)樵瓉淼囊话?p2、p3、p4、p5壓縮后的空間信息分別為(256,h/32,w/32)、(256,h/32,w/32)、(256,h/64,w/64)、(256,h/128,w/128)。
對(duì)于MSFC算法,多尺度特征進(jìn)行了融合壓縮,壓縮后的融合特征表示為(64,h/32,w/32)。對(duì)于本文算法,多尺度特征進(jìn)行殘差處理再經(jīng)過融合壓縮,可表示為(192,h/64,w/64)。特征圖元素均為Float32浮點(diǎn)數(shù),數(shù)值深度為32 bit,計(jì)算每種算法的碼率并測(cè)試DNN網(wǎng)絡(luò)的推理精度,結(jié)果見表1。其中,特征壓縮率定義為每種算法的碼流與多尺度特征碼率之比,用以說明各算法空間壓縮的效果。
表1 不同壓縮傳輸方法空間壓縮性能對(duì)比(未編碼)
從表1可以看出,DNN網(wǎng)絡(luò)對(duì)特征的提取擴(kuò)展了圖片的表達(dá)空間,多尺度特征的數(shù)據(jù)量最大。3種特征壓縮算法中,Cheng2020由于面向圖像編解碼設(shè)計(jì),特征信息損失最多。本文算法的特征壓縮比最大,但DNN網(wǎng)絡(luò)的推理效果最好,表明本文算法重建的多尺度特征表達(dá)能力最完整。
2.4.2 特征壓縮算法性能評(píng)估
本文通過計(jì)算碼率-精度(rate-accuracy, RA)性能評(píng)估特征的傳輸效率,分別測(cè)試了VVC傳輸圖片、VVC傳輸多尺度特征、Cheng2020編碼、MSFC編碼及本文算法編碼的傳輸特征。對(duì)于傳統(tǒng)編解碼算法,通過調(diào)整量化參數(shù)實(shí)現(xiàn)對(duì)碼率的控制;對(duì)于深度學(xué)習(xí)算法,可通過調(diào)整損失函數(shù)中的權(quán)重參數(shù)實(shí)現(xiàn)對(duì)碼率的約束;對(duì)于本文算法,通過設(shè)置不同的權(quán)重參數(shù)λ={15,25,50,100,1 000,5 000},得到不同的傳輸碼率。采用不同壓縮傳輸算法得到的RA曲線如圖6所示。
圖6 不同壓縮傳輸算法碼率-精度性能對(duì)比(已編碼)
由圖可見,本文算法的特征壓縮效果最優(yōu)。在傳輸碼率小于0.1 bit·像素-1的極低碼率環(huán)境下,各種壓縮傳輸算法均不能維持特征信息的完整性,導(dǎo)致推理精度急劇下降。然而,隨著傳輸碼率的降低,本文算法退化最慢,可以在極低碼率下獲得最優(yōu)的推理性能。在傳輸碼率約為0.02 bit·像素-1時(shí),DNN網(wǎng)絡(luò)的推理精度損失不超過2%,在碼率為0.004 bit·像素-1時(shí),本文算法依然能夠維持63.30%的推理精度。上述結(jié)果表明,本文算法的壓縮特征是有效的,能夠提高VCM框架的傳輸效率。
為了直觀地比較各種壓縮傳輸算法的差異,將壓縮特征重建并可視化。由于碼率為0.1 bit·像素-1時(shí),各算法重建特征差異最大,因而給出此碼率下可視化p2層的特征,如圖7所示??梢钥闯?VVC-圖片傳輸和本文算法更多地保留了原始特征的輪廓信息。但VVC算法在低碼率傳輸圖片時(shí),由于圖片信息丟失,導(dǎo)致中間特征的數(shù)值分布和原始圖像特征存在較大差異,推理效果并不理想。而本文算法在保留特征輪廓信息的同時(shí),以MSE函數(shù)作為約束,盡可能在細(xì)節(jié)上與原始特征保持一致,因此特征重建效果最好。
(a)原始特征
為了證明本文算法的有效性,將殘差變換模塊替換為直接下采樣開展對(duì)比實(shí)驗(yàn)。多尺度特征可以壓縮為單尺度特征進(jìn)行編碼傳輸,其中最簡(jiǎn)單的方式就是用雙線性插值下采樣將多尺度特征尺寸規(guī)范化,然后按通道拼接,再做編碼傳輸。
為了便于對(duì)比,將殘差變換模塊直接替換成雙線性插值下采樣,用雙線性插值上采樣代替對(duì)應(yīng)的預(yù)測(cè)重建模塊,算法的其他部分保持不變,計(jì)算得到的結(jié)果見表2??梢钥吹?在傳輸碼率基本一致時(shí),殘差變換模塊的加入令CI框架表現(xiàn)出更強(qiáng)的檢測(cè)能力。
表2 直接下采樣與殘差變換模塊特征壓縮效果對(duì)比
接著,開展消融實(shí)驗(yàn)進(jìn)行復(fù)雜度分析,分別測(cè)試了CI框架的推理時(shí)間和運(yùn)算量,結(jié)果見表3。雖然在CI框架中插入殘差變換模塊導(dǎo)致整體計(jì)算量有所增加,但在相似的碼率下,殘差變換模塊對(duì)協(xié)作推理性能的提升超過了3%。因此,相比于壓縮性能的提升,殘差變換模塊帶來的額外計(jì)算量可以接受。
表3 插入下采樣與殘差變換模塊CI框架復(fù)雜度對(duì)比
本文算法針對(duì)中間特征進(jìn)行編碼傳輸,可以移植到各種多任務(wù)網(wǎng)絡(luò),根據(jù)壓縮前后的多尺度特征差異進(jìn)行聯(lián)合優(yōu)化,具有泛用性。因此,將其應(yīng)用于廣泛使用的多任務(wù)網(wǎng)絡(luò)模型Mask RCNN,分別開展目標(biāo)檢測(cè)和語義分割性能測(cè)試,完成泛用性驗(yàn)證。
實(shí)驗(yàn)設(shè)置與Faster RCNN網(wǎng)絡(luò)模型相同,為了觀察多任務(wù)網(wǎng)絡(luò)經(jīng)過特征壓縮后推理能力的衰減情況,定義預(yù)測(cè)誤差為未壓縮預(yù)測(cè)結(jié)果和壓縮預(yù)測(cè)結(jié)果的平均精度之差,得到的結(jié)果如圖8所示。
(a)目標(biāo)檢測(cè)任務(wù)的預(yù)測(cè)誤差
以上實(shí)驗(yàn)結(jié)果表明,本文算法可以用于多任務(wù)網(wǎng)絡(luò),在多個(gè)任務(wù)上都具備良好的壓縮性能。在低碼率場(chǎng)景下,本文算法的信息損失更慢,表明其在多任務(wù)網(wǎng)絡(luò)中也可以進(jìn)行特征壓縮。
針對(duì)協(xié)作智能框架復(fù)雜網(wǎng)絡(luò)中間特征數(shù)據(jù)量大、難以高效傳輸?shù)膯栴},提出了一種面向機(jī)器視覺任務(wù)的多尺度圖像特征壓縮算法,將殘差變換模塊與自編碼器的聯(lián)合壓縮優(yōu)化,實(shí)現(xiàn)了對(duì)多尺度中間特征的高效壓縮。通過仿真實(shí)驗(yàn),得到以下結(jié)論。
(1)在相同的特征壓縮比下,本文算法重建的多尺度特征表達(dá)能力最完整。當(dāng)壓縮中間特征的數(shù)據(jù)量為原始特征數(shù)據(jù)量的0.91%時(shí),依然能夠正常完成DNN網(wǎng)絡(luò)的推理任務(wù)。
(2)相較于已有的傳統(tǒng)圖像編碼和深度特征編碼算法,當(dāng)傳輸碼率為0.02 bit·像素-1時(shí), 本文算法DNN網(wǎng)絡(luò)的推理精度損失不超過2%;當(dāng)碼率為0.1 bit·像素-1時(shí),不同壓縮算法下特征可視化重建的對(duì)比結(jié)果表明,本文算法在細(xì)節(jié)上能與原始特征保持一致,重建效果最好。
在云邊協(xié)作智能框架中,對(duì)中間特征的高效壓縮和傳輸是提高框架效率的核心問題,本文算法具有良好的特征壓縮和編碼傳輸性能,能夠提高云邊協(xié)作智能框架的應(yīng)用效率。此外,開展的泛化性實(shí)驗(yàn)表明,本文算法解碼特征具有一定的泛化能力。