對話大咖 | 人工智慧+影片編解碼能帶來新的變革嗎

ITPUB社群發表於2023-01-11

對話大咖 | 人工智慧+影片編解碼能帶來新的變革嗎

在如今的影片編碼技術的迭代發展中,無論是變換量化、預測、熵編碼、或是環路濾波,我們都在以複雜的技術換取壓縮效能的提升。未來影片產業的應用前景依然很值得期待,因此我們需要去探究更高效、更智慧的編碼方法,來促進編碼效能發生根本性的改變。

深度學習能顛覆影片編解碼嗎?在此前的“REDtech 來了”系列技術分享直播中,我們邀請到了2020年度國家技術發明一等獎獲得者、北京大學副研究員王苫社老師。小紅書音影片架構團隊負責人陳靖作為主持人,與王老師就音影片編解碼技術的挑戰、創新實踐與發展探索展開了探討。

王苫社老師是數字影片編解碼技術國家工程實驗室工作室成員,曾主持“面向8K超高畫質影片應用的高效編碼標準及編解碼器”等多個國家重點研發計劃。

陳靖曾擔任 51Talk 首席音影片科學家、Google Chrome Media 影片組工程師、Mindspeed 影片部高階 DSP 工程師、華為中央研發部影片組工程師,曾出版著作《深入理解影片編解碼技術》及翻譯著作《計算機視覺演算法:基於 OpenCV 的計算機應用開發》。

在這場直播後,我們也收到了不少觀眾反饋,希望能回顧直播中嘉賓的技術觀點。秉承開放分享的精神,我們特此整理了直播中二位嘉賓的對談討論。


想要做變革性的影片編碼框架有沒有可能

人工智慧技術日益成熟

音影片技術的未來將如何發展?

......

問答細節都在這裡!






Q&A


1

傳統的編碼都是基於經典的率失真理論,基於深度學習的智慧編碼是否存在類似的理論基礎?

王苫社是的,傳統編碼都是基於機率的方式,但深度學習的理論基礎目前在任何一個領域當中都是難題。深度學習或者神經網路在不同應用領域中,解釋起來總是要增加很多的約束,很難統一表達。就我目前在學術範圍裡面所看到的一些成果,大家還沒有找到特別完整的理論基礎,大多情況下,都是在一定約束下給出一些近似解,在一些特定場景裡取得一定的效果。這就需要一些數學基礎特別好的人,比如韋神,如果他們能夠沉下心來研究這個問題,或許可以提供一些類似於經典的夏農資訊理論這樣的模型,如果有了這樣的模型作為指導,我們有可能在諸多深度學習的任務裡獲取到非常好的效果。如果真正發展到人工智慧比較高階的階段,它的理論特性和傳統特性有一些方向是趨同的,但它目前是一個非常開放性的問題,還不存在特別確定性的理論基礎。


2

在學術界對於智慧編碼的研究現狀如何?數學界有沒有關注這個理論基礎?

王苫社:數學界還是有不少人在做對於神經網路,尤其是人工智慧層面上的理論研究,但大多都是在某些約束條件下找到近似解,且僅限於特定任務當中。


從編碼的角度來講,深度學習最開始在機器視覺領域產生很好的效果,比如人臉識別或者其他目標追蹤的時候,影片編碼似乎在學術界已經引起了一些躁動。大概三四年前,有幾十篇學術論文在某些編碼框架的模組裡做了深度試驗,也得到了一些效能提升,甚至有時可以達到驚人的 10% 以上。但因為網路結構太複雜,且不方便硬體實現,這種情況下應用空間就受到了極大的限制。所以,目前學術界並沒有一種易於硬體實現的影片智慧編碼方案,同時對產業界來說是革命性的學術成果。但是我們能夠透過對蒐集到的數百篇學術論文中做一些深度研讀,看看是否能夠找到一些通用的解決方式,現狀大概如此。


3

深度學習和傳統壓縮框架結合的方法與端到端的方法相比各有什麼利弊?

王苫社:從實現的方式來講,他們的區別非常大。深度學習和傳統壓縮框架結合的方法僅從硬體實現的角度來說,需要消耗的資源包括硬體的設計架構等,都要完全推翻,需要付出的代價是非常大的。這裡面需要出現兩種不同編碼模式的資料傳輸,這在硬體設計裡面是特別具有挑戰的,需要去評估兩種計算方式、平衡計算時間、以及設計流水等等。


但全神經網路的結構有一點好處就是,網路結構確定以後,無非就是去定義這裡面有關引數之間的計算方法。我們做過一點評估,希望把深度學習的濾波放在 FPGA 上做。在 CPU 上做深度學習的東西,速度顯然是很差的,放在 GPU 效率也不怎麼高,而用 FPGA 是一個可能的方案。但我們發現倒騰資料很費勁,因為需要來回做資料的傳輸,導致整個框架實現時無法做到實時處理。也有可能我們設計的框架不夠好,所以效率不是很高。


在做完了全神經網路的編碼方案以後,我們也做了 FPGA 上的實現,這應該是我們能看到的第一個基於 FPGA 實現的全神經網路編碼。這個網路結構設計,尤其硬體實現,相比前者更容易一些,我們還可以把它做成實時的(目前能夠做到 4K 實時的編碼系統)。往晶片這個角度去做,興許可以找得到,目前從 AI 的角度來說,應該已經找到了較多方便深度學習的網路硬體實踐的方式。


但是傳統加上深度學習的方式,最早是在學術論文中使用的,業界對此興趣並不太大。最近,我發現 AVS 和 H.266 這兩個標準組織中有很多人熱衷於用這個方式去做,如果不同算力之間的架構能夠實現高效通用,這也可能會是一個比較合適的方案。總之,我自己在這個方向不是很看好,我更看好全神經網路的結構。


4

智慧編碼標準未來有沒有可能制定?國內外是否有正在進行當中的標準制定工作?

王苫社:這是一個非常開放的問題。傳統編碼標準非常明確,每個語法元素需要用什麼樣的方式進行表達,傳輸過程中怎樣正確的解析,這些規則都是非常清楚的。但是在智慧編碼方向,我們不知道標準化什麼,比如網路結構要標準化還是編碼引數需要標準化。這件事起初引起過一些爭議,但是標準化的工作還是有人在做的。目前國內有一個組織在做關於神經網路模型的壓縮,這也給大家提供了一個方向,假如我們真的要做一個確定性的網路結構,它已經學會了非常高效的影片壓縮,這種情況下,我們當然可以透過對神經網路模型進行標準化,使整個產業都適用。但這件事情我覺得變數是比較大的,關於要標準化的東西究竟是什麼,大家可以做更開放的討論。


關於標準制定,還有很長一段路要走,我相信最終也能夠找到一些比較好的標準化的方式,使得編碼本身有歸屬。但這確實需要一個強大的網路結構來覆蓋所有可能的情況,並在保持高壓縮效率的同時達到硬體的實現。


5

深度學習是機率模型,它會引起模糊或者不穩定嗎?

王苫社:這要看網路結構對應的訓練資料。我們現在所用的編碼工具再複雜都是有限的,比如說劃分,無論怎麼著都是一個大塊分來分去,但是如果放到神經網路裡面,我們要解決的第一個問題就是訓練資料能否覆蓋所有不同的型別。


當影片來自不同品牌的相機,不同的拍攝方式,且拍攝出的素材並不是直接應用而是需要再製作,製作的方式和手段也不一樣時,給到神經網路去學習的東西,實際上是不能確定涵蓋全集的。想讓一個神經網路能夠學習到其中所有的特點,需要訓練資料足夠大,大到可以把全世界的影片全部拿過來學習。就像 AlphaGo,在學習過所有的棋譜後,它自然會有一些自己的處理技巧,因為這裡面所有組合的可能都被它學習到了。如果網路足夠大,資料量足夠多,結果就會足夠誘人,但是誰又能夠把幾十億條影片送給一個神經網路或者幾十億層的神經網路去學習呢?這是我的一些基本看法。


6

H.266 和 AV1 哪一個前景更好?

王苫社:二者都有各自的問題和優勢。H.266 受限於其智慧財產權政策並不清晰,產業界雖然對它的壓縮效能比較滿意,但使用時面臨的商業風險也越來越大。尤其在移動終端應用上,我們目前還是喜歡用穩定且比較成熟的版本,我猜 H.266 還需要三到五年去做市場的培養,至於是不是能夠打得過 AV1,要看生態組織的負責人怎麼推廣這件事情。至於最終誰會贏,這裡我不發表對某一個標準的看法,如果非要讓我說的話,可以推廣一下 AVS。


7

面向人眼的編碼和麵向機器的編碼都有什麼區別呢?

王苫社:二者區別非常大,我們把人眼理解為是被動接收影片訊號,像看電視一樣,電視放什麼,我們就看什麼。而機器是有目的性的,這和人眼被動接收資訊不同,機器可能最開始在接收影片訊號時就被賦予了某一個任務目標,所以它會忽略其他的事情,它對於影片的理解也很簡單,就是要追蹤目標對應的特徵,這更多的是一種計算。而人眼更多是接受內容本身帶來的視覺響應——所看到的內容到底美不美,是不是能夠引起感官上的享受。這是很不一樣的,如果要從真正編碼的需求上去說,那差異就更大了。


8

未來的影片編碼會不會考慮相容三維特性?

王苫社:這是一個不爭的事實。如果元宇宙這個概念不會死掉,這件事可能很快就會到來,一定會相容。實際上在比較早的時候,這件事已經在標準裡有所體現,只不過當時沒有找到特別好的應用場景。我相信接下來隨著元宇宙概念不斷深入,這件事會很快被提上日程。


9

影片編碼當中的衡量指標是不是就能反映你的編碼質量?新的質量評估技術能否促進編解碼壓縮標準的發展?

王苫社:在傳統標準制定過程中總是用 PSNR這樣的客觀指標做評估,有時也會用SSIM,最常見的還是PSNR,因為這是最直觀且最容易使大家產生一個好壞比較的方式。目前也會有一些基於AI的方式去做質量評價,並且把它嵌在傳統的框架中做效能提升,但在大多數場景下,人眼主觀才是最終的評價標準。比如我們現在衡量一代影片編碼標準的效能提升是否達到要求,所看的並不是客觀效能 BD-rate 的資料是否超過 50%,而是看同等主觀質量下的位元速率節省是否達到 50%。例如,H.265 相比 H.264 以 PSNR 作為失真指標時客觀效能 BD-rate 只提升了 38%,但是經過人眼的主觀測試以後,你會發現同等主觀質量下平均位元速率節省已經超過了 50%,所以我們認為它已經完成了一代標準的指標。


目前,終極評價方式還是人眼。類似 PSNR 的客觀指標計算總是有其侷限性,假如誰要是哪天提出一個和人眼完全契合的主觀質量評價方式,一定會極大程度改善我們編碼標準的效能,但遺憾的是目前我們還沒有找到這種評價方式。雖然有一些指標確實在特定應用場景裡面發揮了比較重要的作用,但還不能夠達到通用,而這也是很多學術工作者將影片質量評價作為自己畢生研究方向的原因。    


10

傳統影片編碼的位元速率控制可以用 QP,在深度學習編碼壓縮框架下,怎麼做位元速率控制?

王苫社:早先在 H.266 的制定過程中,專家組是專門做基於 Deep Learning 的編碼工具。大家在做效能最佳化的時候,往往是一個 QP 對應一個網路,最後發現這件事實際上意義不太大,因為你需要對應特定 QP 去訓練網路模型。後來有人說既然 QP 本來就是一個輸入,乾脆做一個輸入,把 QP 的 Map 作為其中的 import 就可以了,後來變成了這個形態。


其中依然有一個特別有挑戰性的問題:假如給定一個位元速率 R,我們知道在傳統影片編碼裡這個位元速率跟 QP 之間會有 R-QP 模型,雖然不同標準裡這個模型可能有一些變化,但它們總歸有關係,你可以根據量化引數 QP 去調整位元速率的大小,但神經網路就沒辦法這樣做。另外,前段時間我們把整個位元速率資料當成是輸入引數,同時在網路結構裡設定了一個名叫 lambda 的引數,從測試資料結果來看,的確能夠在一定程度上起到控制位元速率的作用。


11

什麼時候影片網站可以解鎖 60fps,幀率達到 60fps 以上對於我們現在的影片網站真的這麼重要嗎?

王苫社:高幀率在傳統大屏上是挺重要的。北京冬奧會的時候,我們做了一大批高幀率的素材,最高到了 60fps,發現觀看 60fps 的體育賽事和原先看 25fps 的體育賽事,它的連續性以及視覺上的感受還是有差距的。記得之前李安導演嘗試過一個高幀率的電影《雙子煞星》,這部電影號稱有 120fps,並且是 3D 的,從視覺效果方面看,它確實要比我們以往看到的很多電影在視覺衝擊上確實有很大的改觀,如果能把《流浪地球》做成 120fps 3D 版,那一定很震撼。


12

假如智慧編碼要在小紅書這個場景裡面落地應用,小紅書團隊會用它嗎?

陳靖:從我的角度講,我很關注它落地後對解碼複雜度的影響。對於編碼複雜度的提升,我們有一定的容忍度,比如編碼端複雜度高十倍,如果它帶來的編碼壓縮率提升很大,同時解碼端帶來的額外複雜度很小,那這個方案在服務端落地是沒有問題的。


13

未來智慧編碼的應用,在晶片這一塊有很大的投入的話,是不是就能解決落地問題?

王苫社:現在我們移動終端也好,某一些已經發行的晶片也好,都已經有了很強的 AI 算力,這部分 AI 算力如果應用的比較好,對於整個編解碼會有兩個方面的促進:第一,我們可以把智慧編碼全部放到計算模組裡面,興許能跑得動,但這個希望不是很大。第二,我們可以用一些基於 AI 預分析的手段指導傳統編碼框架,比如透過 AI 的簡單網路結構,識別一些感興趣的區域,或者是有噪聲的區域,識別出來以後,經過一些比較簡單的處理,來支撐影片編碼的效能提升,這是沒有什麼問題的。


14

小紅書的編碼有沒有硬體加速?

陳靖:我理解的這個硬體加速是指專用 VPU,小紅書在服務端做壓縮的時候,在 CPU 或者 GPU 上會有一些最佳化工作。但是專門的硬體加速現在還沒有,而且現在的 VPU 方案和軟體編碼方案相比,壓縮效能要差不少。


王苫社:硬體加速這件事,早先我聽說過誰家開發了一款硬體的加速法,基於 FPGA 做了一些事情,這件事情在內容生產端是可以的,但是沒有辦法放在移動終端。從小紅書的業務需求來講,當然可以考慮用手機終端 AI 的計算資源做一件事情,但是各家的晶片不一樣,需要適配的型別太多,這是個問題。我猜這個方案沒有被大家廣泛使用的原因在於,我不用它,我依然可以有那麼多使用者,我用它其實提升也不多,假如我用它可以節省大量的資金,同時可以吸引大量的使用者,我肯定願意做這件事情,但目前評估下來不是這樣的。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70024420/viewspace-2931753/,如需轉載,請註明出處,否則將追究法律責任。

相關文章