編解碼基礎(chǔ)-_第1頁
已閱讀1頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、1,你做的是幀內(nèi)預(yù)測,幀間預(yù)測。對于預(yù)測的話并不一定就說非得是某個塊,任何一個你做的是幀內(nèi)預(yù)測,幀間預(yù)測。對于預(yù)測的話并不一定就說非得是某個塊,任何一個塊都行,最多可能是預(yù)測的準(zhǔn)些,和被編碼的塊更相似,殘差小些,壓縮率高些。預(yù)塊都行,最多可能是預(yù)測的準(zhǔn)些,和被編碼的塊更相似,殘差小些,壓縮率高些。預(yù)測的不準(zhǔn)的話可以是任何一值,只是殘差會大些,壓縮率低些罷了,不影響圖象的質(zhì)測的不準(zhǔn)的話可以是任何一值,只是殘差會大些,壓縮率低些罷了,不影響

2、圖象的質(zhì)量,或者說圖象仍然能夠看,質(zhì)量會低一些,但仍然可以看。量,或者說圖象仍然能夠看,質(zhì)量會低一些,但仍然可以看。要傳輸要傳輸P,預(yù)測成(參考)任何,預(yù)測成(參考)任何P1,p2,,,,都行,反正發(fā)送的是殘差,最后都能,,,,都行,反正發(fā)送的是殘差,最后都能重構(gòu)出原來的圖象,只是碼流大小不同。重構(gòu)出原來的圖象,只是碼流大小不同。幀內(nèi)的預(yù)測是要計算(幀內(nèi)預(yù)測就是實際意義的預(yù)測,預(yù)測得到的幀內(nèi)的預(yù)測是要計算(幀內(nèi)預(yù)測就是實際意義的預(yù)測,預(yù)

3、測得到的新塊新塊原先原先不存在,輸入不存在,輸入為相鄰的塊通過一個算法為相鄰的塊通過一個算法f計算出來的計算出來的)。幀間的預(yù)測只是搜索從參考幀得到搜索塊()。幀間的預(yù)測只是搜索從參考幀得到搜索塊(原先是存在的,只是去找到它先是存在的,只是去找到它),然后把這些塊構(gòu)造成一個預(yù)測的宏塊(幀間預(yù)測實際是搜),然后把這些塊構(gòu)造成一個預(yù)測的宏塊(幀間預(yù)測實際是搜索得到搜索塊,再組合成一個宏塊)。索得到搜索塊,再組合成一個宏塊)。幀內(nèi)預(yù)測模式:幀

4、內(nèi)預(yù)測主要是通過利用空間相關(guān)性,只有8x8塊。各個8x8塊的模式mode主要是預(yù)測模式。相當(dāng)于利用已經(jīng)編碼的8x8塊有很多個pred=f1,f2,f3,f4。。。函數(shù)(自變量就是已經(jīng)編碼的塊coded_8x8_block),哪一個函數(shù)得到的預(yù)測塊pred跟當(dāng)前編碼的cur_8x8塊最相似,就是那個塊模式,比如f1。幀間預(yù)測模式:幀間預(yù)測主要是利用時間相關(guān)性,模式主要是塊模式16x16。16x8,8x16,8x8,參考那一幀。塊模式主要是

5、模擬物體的形狀。2,GOP是一組圖象序列。一個是一組圖象序列。一個GOP有一個有一個I。GOPstructure:參數(shù)可以自己設(shè)定的。15LengthofoneGOPmustbeamultipleof(Bframenumber1)2Numberofreferenceframes(12)2NumberofBframes(012)那么格式是IBBPBBPBBPBBPBBIBBPBBPBBPBBPBBIBBPBBPBBPBBPBB編碼的順序為

6、IPBBPBBPBBPBBIBB,碼流也是以這個順序的,解碼也要以這個順序。判斷那一個幀為I幀,那一個為B幀,那一個為P幀,是根據(jù)幀的順序號NO,和上面的GOPstructure完全確定的。如果是B幀就先不編碼,把整個B幀放到緩沖里面存器來,所以要存兩個B幀。B幀參考前后兩幀可能是前面的I后面的P(GOP開頭),可能是前面的P后面的P,(GOP中間)可能是前面的P后面的I(在GOP尾部)第一個GOP序列的第一個P幀只參考前面的一個I。之

7、后的GOP的第一個P幀可以只參考本GOP的I,只參考一個。或者可以參考上個GOP尾部的P和本GOP的I,共兩個參考幀。這個看標(biāo)準(zhǔn)怎么說明。每個GOP的第二個P參考前面的I和第一個P。,后面的P參考前面的兩個P(200-1,300-2,300-3,200-5,200-6,200-3),參考v1,額外發(fā)送1(代表參考v1)(1,0,0,0,0,0)參考v3,額外發(fā)送3(代表參考v3)(0,0,0,1,0,1)參考v3,額外發(fā)送3(代表參考v

8、3)所以傳送的數(shù)據(jù)少了很多。但是傳送v3仍然需要很多bit,這是難免的情況。另外,這樣除了發(fā)送殘差,還要額外的發(fā)送參考那一個(也就是運動矢量MV),上面的序列要額外的發(fā)送的運動矢量MV為0,1,1,3,3,這個MV序列仍然可以上面的預(yù)測方法來減少要發(fā)送數(shù)據(jù)值,這個方法就是MVP,假設(shè)簡單的MVP函數(shù)就是直接使用上一個矢量的MV的話,要發(fā)送的MVD為0,1,0,2,0。所以數(shù)值又減少了很多,代表發(fā)送的bit流更少了。對于一般的情況,就利用

9、搜索算法不斷的計算不斷的計算得到一個最小的殘差(這個過程很費時間,以sad象素殘差代價+MVD矢量殘差代價,兩個代價作為選擇的依據(jù),因為MVD也要傳送的,雖然sad_1小于sad_2,但是如果(sad_1+MVD_1)(sad_2+MVD_2),可能可能第一種情況發(fā)送的bit會更多,說可能是因為只是初步估計。其實最精確的表示發(fā)送的bit數(shù)是采用RDO決策,把sad殘差和MVD最終需要的bit數(shù)全部計算出來選擇,bit最少的,那樣計算量很

10、大。)。另一個問題是怎么發(fā)送殘差呢???也即怎么表示下面的殘差雖然數(shù)值很小,但是分布很雜,很不規(guī)則,不好直接表示這個殘差信息??梢杂肈CT變換把能量集中起來。(1,0,0,0,0,0)DCT作用(1,0,0,0,0,0)(0,0,0,1,0,1)DCT作用(1,1,0,0,0,0)注意:這并不是精確的DCT變換,只是為了說明DCT集中能量的作用。Dct另一個作用也是減少圖象的空間相關(guān)性,圖象往往有空間相關(guān)(高頻分量少,低頻分量多),變換

11、到頻域后。值也變少了。(1,1,1,1,1,1)變成(4,2,0,0,0,0)比如低頻值往往在左上角。高頻值往往在后面??梢酝ㄟ^DCT變換來把分散的值(能量)集中到一起。比如在二維的88的DCT變換就可以把能量集中到左上角,數(shù)據(jù)從左上角往右下角逐漸變?。ㄋp)。然后zigzag掃描把88的64個DCT系數(shù)得到從大到小(可能不是精確的絕對從大到小,但是也差不多)順序排列的一串?dāng)?shù)(64個),64個由大到小的數(shù)后面的很多值就是0了。然后采用r

12、un-level(run表示個數(shù),level表示值)編碼表示這些數(shù)。比如zigzag掃描的64個DCT系數(shù)4,4,3,3,3,3,3,3,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,0,0,0,。。。。。也即為2個4,6個3,5個2,11個1,36個0就可以表示為(2,4)(6,3)(5,2)(11,1)(36,0)這樣一來以前的很大的64個原始象素值,變成很小的幾個數(shù)而已(2,4)(6,3)(5,2)(11,1)(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論