IT之家學院:文件格式系列科普之視頻編碼基本原理
在前兩期的文件格式系列科普中,IT之家已經以JPG為典型,為大家講解了圖片格式,又以MP3為典型,為大家講解了音頻格式,今天,IT之家將為大家講解視頻的編碼原理。
視覺暫留現象
人的眼睛是一個非常巧妙的成像系統,來自自然界的光經由晶狀體,投射到感光細胞上,感光細胞將光轉化為神經電流,通過視神經傳到大腦,引起人體視覺。受制於視覺神經的反應速度,當光停止作用後,在一段時間內,圖像仍將短暫地停留,稱為「後像「,這便是視覺暫留現象。
正因為人的視覺系統有著這樣的特性,當我們將一組動作連續的靜態圖片放在眼前快速切換時,人眼會感覺它「動起來了「。事實上,我們看到的視頻,就是由一張又一張的靜態圖像組成的。
有損圖像壓縮
前面我們已經提到,視頻是由一張又一張的靜態圖片組成的,要壓縮視頻,首先就要壓縮這些組成視頻的靜態圖像,在關於JPEG圖片格式的科普中,我們已經講解了JPEG的壓縮原理,事實上,視頻中的靜態圖片,它的壓縮原理和JPEG頗為相似。
首先,就是將色彩空間由RGB轉化為YCbCr,和RGB色彩空間通過紅綠藍三種顏色來組成大千世界不同,YCbCr將畫面分解成明度(亮度信息)和色度(色彩信息),在YCbCr的色彩空間下,把Cb(藍)和Cr(紅)去掉,只留Y(亮度),那麼圖像依然可以正常顯示,只是此時顯示的圖像是黑白的,把亮度信息和色彩信息分離所帶來的好處,就是解決了彩色顯示器和黑白顯示器的兼容問題。
色彩空間轉換完成後,就要對圖像進行離散餘弦變換(DCT)了,在DCT時,圖像將被分割成一個個8*8的像素塊,每個8*8的像素塊都將通過複雜的公式轉換為數字編碼,隨後,這些數字編碼將通過一系列的處理進一步丟掉對人眼來講並不重要的數據(人眼對高頻區的辨識能力較差,這部分的數據可以酌情丟掉),經過這番折騰,原始的8*8像素塊將被轉化為結尾有很多連續的0的一串數字編碼。這串編碼經過冗餘數據精簡後,再進行一些處理,將生成一張經過壓縮的圖片。這張圖片就是視頻中的I幀。
運動預測
I幀,又稱幀內編碼幀,這是個獨立幀,自帶全部信息;P幀,又稱幀間預測編碼幀,它裡面包含的是當前幀與前一幀之間的差別,在解碼時,需要以之前的畫面為基礎,疊加上兩幅畫面之間的差異部分,才能生成最終的畫面。B幀,又稱雙向預測編碼幀,它不僅記錄了當前幀與前一幀之間的差別,還記錄了當前幀與下一幀之間的差別,B幀的壓縮率通常更高,不過對解碼性能的要求也更高。
P幀的生成過程,實際上就是運動預測的過程,在這個過程中,圖像將被分割成一個個16*16的像素塊,然後,我們將計算當前幀的這個16*16像素塊的信息與下一幀中哪個16*16像素塊中的信息最為相似,然後記錄下它們之間的位置差別(運動預測矢量),簡單地說,運動預測的過程,就是使用當前幀位於不同起始位置的16*16像素塊,拼湊出下一幀的圖像來。B幀的生成原理和P幀大致相同,只不過B幀是同時結合前後兩幀來實現運動預測的。
圖像組和視頻文件
所謂的圖像組,就是由I幀打頭,後面跟了一系列的P幀或者B幀的圖像的編組,看起來差不多是這個樣子的:I,P,P,P,P,P,P,P,P,P,P,如果有B幀,則是這個樣子的:I,P,B,B,P,B,B,P,B,B,P。
視頻文件是由一個接著一個的圖像組構成的。在播放視頻時,每個圖像組的第一幀必須是I幀,若第一幀不是I幀,後面的P幀或者B幀將無法被還原成正常的圖像,視頻也就無法正常播放了。
如果一個P幀是由某幀通過運動預測來生成的,那麼這裡的「某幀」就是該P幀的參考幀,關於參考幀的選擇,也是有講究的。
這裡有一個圖像組,I1,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,我們參考I1生成了P1,又參考了P1生成了P2,緊接著參考P2生成了P3,以此類推,最後生成了P10,由於運動預測本身就是有誤差的,如果我們每一幀都參考前一幀進行運動預測,那麼從P1到P10,誤差會越來越大,最後生成的P10可能就面目全非了。為了避免這個問題,在選擇參考幀時,我們可以這樣做,P1~P10,全部參考I1來生成,或者P1~P5參考I1來生成,然後P6~P10參考P5來生成,步子邁得小一點,扯到蛋的風險自然就會降低。
到這裡,視頻編碼基本原理的介紹就告一段落了,不同的編碼標準,它具體的編碼方式也不盡相同,這個需要具體標準具體分析。常見的視頻編碼標準有MPEG-1、MPEG-2、MPEG-3、MPEG-4、H.264等。
視頻容器
如果說視頻是個圖書館,那麼一幀一幀的圖像就是書的一頁一頁,一個一個的圖像組,就是一本又一本的書,我們還缺少什麼東西啊?書架。圖書館裡沒有書架怎麼行?
所謂視頻容器,就是將圖像組,聲音以及視頻的附屬信息(比如字幕、解析度、作者、加密信息等)封裝在一起的標準,這就正是我們要找的書架。
視頻容器,又叫封裝格式,提到封裝格式(對應相應的文件擴展名),相信大家一定非常眼熟,舉幾個例子,大家感受一下:avi、rmvb、mp4、flv、mkv……
封裝格式對視頻質量的影響不大,決定視頻質量的還是它的編碼數據,就像前面舉的圖書館的例子,書架不管是豪華還是簡陋,只要它上面擺放的書是好書,那這個圖書館就是個好圖書館。
IT之家的用戶是多層次的,這篇文章的受眾是零基礎的讀者,本著淺顯易懂的原則,在一些方面我們並沒有深入討論和展開討論。如果你是相關行業的工作者,或者你是相關專業的高校學生,那麼這篇文章可能不適合你。
好的,今天關於視頻壓縮原理的文章就到這裡,文件格式系列科普至此完結,想了解更多的常識科普和實用教程,請關注IT之家學院。
想看到更多這類內容?去APP商店搜IT之家,天天都有小歡喜。
![](https://pic.pimg.tw/zzuyanan/1488615166-1259157397.png)
![](https://pic.pimg.tw/zzuyanan/1482887990-2595557020.jpg)
※IT之家網友分享:淺談中文輸入法
※1499元,小米5X雙攝手機8月1日上午首賣:驍龍625+4GB內存
※2017年《財富》中國500強出爐:中國移動排第6,騰訊43,阿里49
※IT之家網友分享:AMD銳龍Ryzen 7 1700X 8核處理器開蓋簡單評測
※HBO遭黑客入侵,《權力的遊戲》腳本據稱被盜
TAG:IT之家 |
※卡內基·梅隆大學的嵌入式系統課程視頻已發布,帶你學習安全關鍵系統的設計和高質量代碼編寫
※GPDR條例和視頻檢索論文閱讀
※英文原版系列繪本全套PDF+MP3+視頻動畫
※基於FPGA的實時視頻圖像採集處理系統設計
※手機視頻處理APP-樂秀視頻編輯器
※處理視頻序列
※中文字幕 C4D《Arnold阿諾德真實材質渲染寶典》高端視頻教程
※OpenMAX編程-音視頻等組件介紹
※DBN更新《影之詩》新版本宣傳視頻曝光上線
※創歷史!FIFA官方宣布俄羅斯世界盃使用視頻助理裁判
※《學習PPT製作:從入門到精通》視頻+圖文教程
※融合之路—視頻結構化:AI與視頻大數據的美妙結合
※全新蘇聯風格FPS遊戲《原子之心》截圖視頻展示
※「專業級」美容短視頻APP:微視新版本上線實時美妝、五官重塑等原創功能
※美圖聯合中科院提出無監督類腦智能方法:可實現視頻語義理解
※愛奇藝獲Film Nation大陸地區獨家線上版權,視頻網站主動清理問題節目廣發傳媒 I 曠實團隊
※諾基亞8 Sirocco 視頻體驗,蔡司鏡頭+雙曲面旗艦丨科技美學直播
※ARM劉永康:淺談Android數字版權管理之視頻保護
※IBM專利:為AR-VR系統研發實時視頻審查系統,實時打碼
※《網易戲精》為「哈利·波特」慶生,AI+IP開啟獨特短視頻玩法