多年以來,人們設計出許多不同的算法來壓縮視頻。視頻壓縮雖然聽起來是一個很現代的詞,但其實它從模擬視頻開始,已經有很長的歷史了。在本篇文章中,我會向大家一一介紹視頻壓縮的里程碑事件,正是這些事件的發生才有了今天的視頻壓縮。從過去到現在,各類視頻壓縮方法由最初的概念最終演化成現今的標準。很多壓縮標準今天還在使用,人們也一直在繼續開發和完善新的標準。
1929:出現幀間壓縮
幀間壓縮是指僅保留一張關鍵圖像,以及后面幀與此圖像之間的差異,這張關鍵圖像被稱為關鍵幀(Keyframe)。令人驚訝的是,關于幀間壓縮的討論可以追溯到1929年。英國的R.D. Kell提出將幀間壓縮用于模擬視頻,這一概念隨后便延續下來并應用在今天的數字視頻上。
1952:差分脈沖編碼調制
下一個視頻壓縮的里程碑事件發生在1952年。貝爾實驗室的B.M. Oliver和 C.W. Harrison提出可以在視頻編碼中使用差分脈沖編碼調制(DPCM)。在此之前,DPCM一直被用于音頻(今天依然如此)。DPCM技術是指你可以從圖像中采樣,并據此推測未來的樣本值。因為可以通過推測準確地重建圖像,所以不需要存儲太多圖像數據。
1959:使用時間壓縮的幀間預測編碼
1959年,使用時間壓縮的預測性幀間視頻編碼次被提出。時間壓縮是指在一段視頻中選擇一組間隔的關鍵幀,只對這些關鍵幀的變化進行編碼。作為其他幀的參考點,關鍵幀是被記錄下來的幀。這一概念由日本廣播公司(NHK)的研究人員Y. Taki、M. Hatori和S. Tanaka提出。
1967:行程長度編碼
行程長度編碼(Run-length encoding,RLE)是指將連續出現的同一個數據值存儲為單一值和出現次數,如輸入數據流“AAABBCCCC”,輸出的是連續數據值的計數序列“3A2B4C”。之后你可以利用這些信息準確地重建同一張圖像!倫敦大學的研究人員A.H. Robinson和C. Cherry提出這一概念,最初用于降低模擬電視信號的傳輸帶寬。今天,行程長度編碼仍在數字視頻中使用。
20世紀70年代:早期數字視頻算法
數字視頻在70年代出現。發送視頻時使用了和電信相同的技術——PCM(脈沖編碼調制)。是不是有些眼熟?PCM就來自上文提到的DPCM。PCM以數字形式表示采樣的模擬信號。它最初是音頻標準,在70 年代被用來壓縮數字視頻。雖然可以傳輸視頻,但它需要大碼率且傳輸效率較低。
1972:數字視頻的壓縮
Nasir Ahmed,印裔美國電氣工程師、計算機科學家
1972年左右,堪薩斯州立大學的Nasir Ahmed提出使用DCT編碼壓縮圖像。DCT代表離散余弦變換(Discrete Cosine Transform),它將圖像分成由不同頻率組成的小塊。在量化過程中,舍棄高頻分量,剩下的低頻分量被保存下來并用于后面的圖像重建。由于舍棄了某些頻率的圖像,所以最終呈現出來的圖像不會*相同,但大多時候,這種差異不會被人們察覺。
1973:DCT技術成為一種圖像壓縮算法
DCT
Nasir Ahmed與德克薩斯大學的T. Natarajan和K.R. Rao合作,實現了DCT圖像壓縮算法。1974年,他們發表了自己的工作成果。
1974:混合編碼的發展過程
1974年,南加州大學的Ali Habibi將預測編碼和DCT編碼組合在一起使用。我們在上文提到過,預測編碼是指猜測當前圖像出現前后的數值。Habibi的算法只能應用于幀內圖像,無法預測幀間圖像。
1975:混合編碼的進一步發展
John A. Roesse 和Guner S. Robinson進一步發展了Habibi的算法,使它可以應用于幀間,為此,他們嘗試了各種方法,最終發現Ahmed的DCT技術和預測編碼結合起來使用是的。
1977:更快的DCT算法
陳文雄、C.H. Smith和S.C. Fralick一起優化了DCT算法,他們創立了Compression Labs公司,將DCT商業化。
1979~1981:運動補償DCT視頻壓縮
Anil K. Jain 和Jaswant R. Jain 繼續發展運動補償DCT視頻壓縮技術。陳文雄使用他們的成果創造出一種結合了所有研究的視頻壓縮算法。運動補償DCT上的持續研究工作使它最終成為了標準的壓縮技術,從20世紀80年代一直使用到現在。
1984:數字視頻壓縮標準——H.120
前期的所有研究最終取得成果——個視頻壓縮標準H.120問世。該標準對于單個圖像非常有用,但在維持幀間圖像質量方面效果不佳,于1988年被修訂。H.120是國際視頻壓縮標準,主要用于視頻會議。這是一次偉大的成就,但由于H.120多方面的低效,許多公司不得不試驗各種方法來完善這個標準。
1988:用H.261舉行視頻會議
H.261很可能是你見過或者使用過的一系列編中的個。它是個有效使用幀內和幀間壓縮技術的數字視頻壓縮標準。H.261 也是個在商業上成功的數字視頻編碼標準。它被用于的視頻會議,并引入混合的基于塊的視頻編碼,該編碼今天仍在許多視頻標準(MPEG-1 第 2 部分、H.262/MPEG-2 第 2 部分、H.263 MPEG-4 第 2 部分、H.264/MPEG-4 第 10 部分和 HEVC)中使用。創建H.261標準的方法今天依然被廣泛使用。它支持的分辨率是352x288。
雖然這個標準在國際上很受歡迎,但它在剛發布時并不完整。該標準分別在 1990 年和 1993 年進行了修訂。H.261不包括處理編碼的細節,僅用于解碼視頻。
1992:使用Motion JPEG(MJPEG)的PC多媒體應用
1992年,Motion JPEG被創建出來用于計算機上的多媒體應用。這種視頻壓縮技術將視頻每一幀都分別壓縮成JPEG圖像。
1993:使用MPEG-1的視頻CD