專利名稱:視頻序列的快速切換方法
技術領域:
本發明涉及一種圖像信息的傳輸和處理技術,具體說,涉及一種視頻序 列的快速切換方法。
背景技術:
隨著有線寬帶網絡和無線網絡的發展和用戶需求的驅動,多媒體技術和 相關的應用得到了越來越多的關注。特別是數字視頻技術得到了廣泛的應
用,例如IPTV、手機電視、數字電視、會議電視、激光視盤等。其中一個 常見的用戶操作是進行視頻切換,即用戶端從一個正在播放的視頻序列切換 到另外一個視頻序列。
對于數字視頻而言,由于現有的數字視頻編碼方法都采取了圖像幀編碼 的方式,視頻序列的切換無法快速完成。這些圖像幀含有幀內編碼幀(I幀) 和非幀內編碼幀,其中非幀內編碼幀有預測幀(P幀)和雙向預測幀(B幀)。 I幀是可以獨立解碼的幀,不需要其它圖像幀作為參考圖像。而P幀是前向 預測幀,需要用當前解碼的P幀圖像之前的圖像作為參考幀,B幀是雙向預 測幀,需要用當前解碼的B幀之前和之后的圖像作為參考圖像。
在傳統的視頻序列切換方法中,如果視頻切換位置的圖像幀是幀內編碼 模式(I幀),從切換位置開始可以立即進行標準的視頻解碼處理。解碼圖 像可以進行顯示,并作為后續編碼視頻碼流的參考圖像。
如圖l所示,如果視頻切換位置的圖像幀不是幀內編碼模式,例如P幀 或者B幀。由于P幀或者B幀需要使用前向或/和后向的重建圖像作為參考 幀,不能立即進行^L頻解碼處理。在z"'時刻進行視頻切換時,由于此時的 編碼圖像幀不是幀內編碼,需要參考前向或/和后向的重建圖像幀進行解碼。 在這種情況下,視頻解碼器必須暫停,等待至下一個幀內編碼圖像幀才能開 始進行視頻解碼,需要等待至/^w時刻,接收到幀內編碼圖像才能恢復解
碼。因此在傳統的^L頻切換方法中,-現頻切換的等待時延為W 1'。
由于視頻碼流中只有I幀能夠獨立解碼,因此一段視頻碼流必須以I幀 作為起始幀。在進行頻道切換時,需要等待視頻碼流的I幀正確接收后,才 能進行解碼和顯示。
因此為了實現視頻碼流的切換,需要在編碼的視頻碼流中插入I幀編碼
圖像。但是由于I幀的編碼效率遠低于P幀或者B幀的編碼效率,在編碼視 頻碼流中頻繁插入I幀會造成編碼效率降低,從而影響用戶觀看的圖像質量。
發明內容
本發明所解決的技術問題是提供一種視頻序列的快速切換方法,能夠對 不同的視頻序列進行快速切換,而且能夠保證用戶觀看圖像的質量。
技術方案如下
視頻序列的快速切換方法,步驟如下
(1) 對一見頻序列進行編碼時,在^L頻碼流中插入切換幀;
(2) 當收到視頻切換請求和切換幀時,進行切換幀的視頻解碼處理, 得到切換幀的解碼圖像;
(3) 對解碼圖像按照縮放系數進行恢復,得到切換參考圖像; (4 )將切換參考圖像作為后續視頻圖像解碼的參考幀。
進一步,步驟(l)中,得到切換幀的具體步驟如下
a、 在一見頻碼流中選取插入切換幀的時刻;
b、 提取對應的原始圖像幀或者重建圖像幀;
c、 將原始圖像幀或者重建圖像幀按照視頻編碼方法進行幀內編碼,得 到切換幀。
進一步,步驟(a)中相鄰切換幀之間的間隔小于相鄰I幀之間的間隔。
進一步于,步驟(c)具體為
(cl )選定縮放系數,對所述原始圖像幀或者重建圖像幀進行縮放處理;
(C2)對縮放處理后的原始圖像幀或者重建圖像幀進行幀內編碼,得到 切換幀。
進一步,步驟(2)具體為
當接收到視頻切換請求時,對接受的視頻碼流進行判斷;如果為非幀內 編碼模式的普通圖像幀,則不進行解碼處理;如果為幀內編碼模式的普通圖 像幀,則進行標準的解碼處理;如果為視頻切換幀,則進行切換幀的視頻解 碼處理,得到解碼圖像。
進一步,當進行圖像的縮放時,如果縮放系數小于l,表示對圖像進行 縮小;如果縮放系數大于l,表示對圖像進行放大;如果縮放系數等于l, 表示圖像保持原有大小。
進一步,對切換幀的視頻解碼處理通過采樣濾波器完成。 技術方案的技術效果如下
快速視頻切換,與原有的根據視頻序列的I幀進行視頻切換相比,切換時間 4皮縮短。
由于切換幀是對普通的視頻圖像幀進行了縮放后再進行幀內編碼,而且 在對切換幀進行編碼時,采取了提高壓縮比的方法,例如粗量化、更有效的 熵編碼方法、更有效的幀內預測方法等,切換幀的編碼后數據量遠小于普通 的I幀編碼。在這種情況下,當編碼視頻碼流的相鄰普通I幀之間相隔較遠 時,通過在相鄰的普通I幀之間插入多個切換幀,從而可以在解碼端實現快 速的視頻序列切換,而且插入的切換幀不會明顯增加編碼后的視頻碼流數據 量。
本發明在不需要視頻切換的情況下,插入的切換幀只是作為附加的無效 數據,不影響視頻解碼器正常解碼;在需要視頻切換的情況下,插入的切換 幀可以獨立解碼,無需參考其它解碼圖像,新的視頻序列可以從切換幀位置 開始進行視頻解碼,從而實現快速的視頻序列切換。
圖1是現有技術中的視頻切換方法示意圖2是本發明中使用切換幀的;f見頻切換方法示意圖3是本發明中插入切換幀后的^個視頻庠列^憙圉; 圖4是本發明中基于切換幀的視頻切換過程示意圖。
具體實施例方式
下面參考附圖,對本發明的優選實施例作詳細描述。
本發明所提出的視頻序列的快速切換方法整體上包括視頻編碼器的編 碼過程和視頻解碼器的解碼過程兩個部分。
1、;現頻編碼器的編碼過程。
第一步,對需要編碼的視頻序列按照標準的視頻編碼方法進行編碼。視 頻編碼可以采取H.261、 H.263、 H.264、 AVS、 MPEG4、 MPEG2等方法, 編碼的圖像幀類型可以是I幀、P幀或者B幀,為了提高編碼效率,相鄰的 I幀之間可以有任意大間隔。
第二步,在標準的編碼;f見頻碼流中插入切換幀。
參照圖2所示,在進行視頻編碼的過程中,除了標準的幀內編碼圖像幀, 在視頻碼流中插入了另外一種幀內編碼的圖像幀一切換幀。
切換幀的實現方法包括如下幾個步驟
(1) 選定插入切換幀的時刻。
例如,選定y時刻或者A:時刻,作為切換幀的插入時刻。切換幀的位置 可以根據實際需要確定,一般來說切換幀的頻率大于視頻碼流中的I幀頻率, 即相鄰切換幀之間的間隔小于相鄰I幀之間的間隔。
(2) 在切換幀時刻y或者/c處,提取出對應的原始圖像幀或者重建圖 〃泉幀,記為巧或者i^。
(3 )將巧或者i^按照預先給定的縮放系數(scfl/e),經過濾波器(F/teW ) 處理,得到一個縮放后的圖像,記為Sca&(巧或者&a/W—K。
在對F,.或者F;t進行縮放時,若縮放系數小于l,表示對圖像進行縮小;
若縮放系數大于l,表示對圖像進行放大;若縮放系數等于1,表示圖像保
持原有大小。
(4)對Sc"/e(巧或者Sc"/WJ^按照標準的視頻編碼方法進行幀內編 碼,得到切換幀,記為SvWfcA—巧或者Sw/to/ 一/^。
在對SmYcA一巧或者Sw/fcA一&進行幀內編碼時,為了降低切換幀的編碼 數據量,可以采取適當的提高壓縮比的策略,例如粗量化、更有效的熵編碼 方法、更有效的巾貞內預測方法等。
在_/時刻插入了切換幀后,原有的非幀內編碼圖像巧后增加了 一個切換 幀。若在/時刻進行視頻切換時,由于此時的編碼圖像幀不是幀內編碼,需 要參考前向或者后向的重建圖像幀進行解碼。在這種情況下,視頻解碼器必 須暫停,等待至下一個幀內編碼圖像幀或者切換幀才能開始進行視頻解碼。 由于在"時刻之前的j時刻有切換幀存在,因此,解碼器不需要等待至w時 刻,接收到幀內編碼圖像才能恢復解碼。而是在y時刻,接收到切換幀后就 開始進行解碼。因此在加入切換幀的視頻切換方法中,視頻切換的等待時延 為7'—〖,與原有的在w時刻進行切換比較,切換時延縮短了 《-乂。
由于切換幀的是對普通的視頻圖像幀進行了縮放后再進行幀內編碼,而 且在對切換幀進行編碼時,采取了提高壓縮比的方法,例如粗量化、更有效 的熵編碼方法、更有效的幀內預測方法等,切換幀的編碼后數據量遠小于普 通的I幀編碼。在這種情況下,當編碼視頻碼流的相鄰普通I幀之間相隔較 遠,在相鄰的普通I幀之間插入多個切換幀,從而可以在解碼端實現快速的 視頻序列切換,而且插入的切換幀不會明顯增加編碼后的視頻碼流數據量。
2、視頻解碼器的解碼過程。
(1 )檢測是否接收到視頻切換請求。
第一種情況,如果沒有接收到視頻切換請求,則進行下列步驟
a、 對接收的視頻碼流進行判斷。
如果接收的視頻碼流為普通圖像幀,例如I幀、P幀或者B幀,則按照 標準的視頻解碼處理;如果接收的視頻碼流為切換幀,則不進行解碼處理。
b、 解碼過程結束,將解碼圖像作為后續視頻圖像解碼的參考幀,并將
其發送至顯示終端。
C、進入下一時刻解碼處理。
第二種情況,如果接收到視頻切換請求,則進行下列歩驟。 I 、對接收的視頻碼流進行判斷。
如果接收的視頻碼流為普通圖像幀,且為非幀內編碼模式,例如P幀或
者B幀,則不進行解碼處理,視頻解碼器處于等待狀態;如果接收的視頻 碼流為普通圖像幀,且為幀內編碼才莫式,例如I幀,則進行標準的解碼處理; 如果接收的視頻碼流含有視頻切換幀,例如Sw/teA—巧,則進行切換幀的視 頻解碼處理,得到解碼圖像&a/W一巧,然后對&a/W—巧按照縮放系數sca/e 進行上采樣濾波處理得到恢復的圖像幀巧',上采樣濾波通過上采樣濾波器 F/ter2完成,得到切換參考圖像。
II、將切換參考圖像作為后續視頻圖像解碼的參考幀,并將其發送至顯 示終端。
in、進入下一時刻解碼處理。
參照圖3所示,序列1是正在播放的序列,序列2是準備切換的序列。
在兩個插入切換幀后的視頻編碼序列中,序列1和序列2都是CIF格式 (352象素x288象素),所以序列中的I幀和P幀都是CIF格式,分別記為 I (seq, t)和P (seq, t),其中seq表示序列編號,t表示時刻。在本實施 例中,切換幀的縮放系數取0.5,即切換幀的格式為SQCIF,大小為(176 象素xl44象素)。
對于序列1,選定在t + 2時刻插入切換幀,記為S(seql, t+2 ) 。 S(seql, t + 2)是通過P (seql, t + 2)縮小為QCIF格式后,再采取幀內編碼得到。
在t + 2時刻序列1插入切換幀的具體步驟如下 (1 )選定插入切換幀的時刻t + 2。
在t + 2時刻P幀是CIF格式,記為P(seql, t + 2)。 (2)在切換幀時刻t + 2處,提取出對應的原始圖像幀或者重建圖像幀。 (3 )將提取的原始圖像幀或者重建圖像幀按照預先給定的縮放系數 (sca/e=0.5)經過濾波器(M7teW)處理,得到一個縮;改后的圖像。
(4)對縮放后的圖像按照標準的視頻編碼方法進行幀內編碼,得到切 換幀,記為記為S(seql, t十2)。
對于序列2,選定在t + 4時刻插入切換幀,記為S (seq2, t + 4) 。 S (seq2, t + 4)是通過P (seq2, t + 4 )縮小為QCIF格式后,再采取幀內編 碼得到。
在t + 4時刻序列2插入切換幀的具體步驟如下 (1 )選定插入切換幀的時刻t + 4。
在t + 4時刻P幀是CIF格式,記為P (seq2, t + 4)。 (2 )在切換幀時刻t + 4處,提取出對應的原始圖像幀或者重建圖像幀。 (3 )將提取的原始圖像幀或者重建圖像幀按照預先給定的縮放系數 (織/e-0.5)經過濾波器(Fz7teW)處理,得到一個縮放后的圖像。
(4)對縮放后的圖像按照標準的視頻編碼方法進行幀內編碼,得到切 換幀,記為記為S (seq2, t + 4)。
參照圖4所示,在圖3所示情況下,當需要在t + 2時刻從視頻序列1 切換到視頻序列2時,此時視頻序列2的解碼端視頻切換處理過程如下。
t + 2時刻從t + 2時刻開始,終端開始接收序列2的視頻碼流,表示 為P, P, P, S, P, P, I, P, P,…。
t + 2時刻,非幀內編碼圖像P (t + 2)無法用前面的重建圖像作為參考 幀,P (t + 2 )不能進行解碼操作。
t + 3時刻幀內編碼圖像P(t + 3)無法用前面的重建圖像作為參考幀, P (t + 3)不能進行解碼操作。
t + 4時刻非幀內編碼圖像P (t + 4)無法用前面的重建圖像作為參考 幀,P(t + 4)不能進行解碼操作。但是在t + 4時刻,存在一個使用幀內編 碼方式編碼的切換幀S (t + 4)。因此,終端的解碼器對切換幀S (t + 4) 進行解碼,得到一個QCIF格式的解碼圖像。然后將這個QCIF格式圖像通 過上采樣濾波器處理,得到一個CIF格式的切換參考圖像F,(t + 4)。
在t + 4時刻浮見頻解碼器解碼的具體過程如下 (1 )視頻解碼器檢測是否接收到視頻切換請求。
如果沒有接收到視頻切換請求,則進行下列歩驟
a、 對接收的視頻碼流進行判斷。
如果接收的視頻碼流為普通圖像幀,例如I幀、P幀或者B幀,則按照 標準的視頻解碼處理;如果接收的視頻碼流為切換幀,則不進行解碼處理。
b、 解碼過程結束,將解碼圖像作為后續視頻圖像解碼的參考幀,并將 其發送至顯示終端。
c、 進入下一時刻解碼處理。
如果接收到視頻切換請求,則對接收的視頻碼流進行判斷,并進行下列 步驟
如果接收到的視頻碼流為普通圖像幀,且為非幀內編碼模式,例如P幀 或者B幀,則不進行解碼處理,視頻解碼器處于等待狀態;如果接收的視 頻碼流為普通圖像幀,且為幀內編碼模式,例如I幀,則進行標準的解碼處理。
如果接收的視頻碼流中含有視頻切換幀S (t + 4),則進行切換幀S (t + 4)的視頻解碼處理,得到解碼圖像,然后對解碼圖像按照縮放系數(sca/e =0.5)進行上采樣濾波處理,得到一個QCIF格式的解碼圖像。然后將這個 QCIF格式圖像通過上采樣濾波器處理,得到一個CIF格式的切換參考圖像 F, (t + 4),該切換參考圖像F, (t + 4)作為后續圖像解碼的參考幀。
t + 5時刻非幀內編碼圖像P (t + 5)利用從切換幀S (t + 4)得到的 切換參考圖像F, (t + 4)作為參考幀,進行標準的視頻解碼處理,得到t + 5 時刻的解碼圖像。
t + 6時刻非幀內編碼圖像P (t + 6)利用從P (t+5)的解碼圖像作 為參考幀,進行標準的視頻解碼處理,得到t + 6時刻的解碼圖像。
t + 7時刻幀內編碼圖像P (t + 7)不需要利用前面的參考幀,可以進 行標準的^L頻解碼,得到t + 7時刻的解碼圖像。t + 8時刻之后的視頻解碼過程與標準的3見頻序列解碼過程一樣。
在IPTV、手機電視、數字電^L等基于數字 視頻的應用中,視頻序列的切換是一種非常重要的客戶端操作。由于數字視 頻切換的過程中等待至幀內編碼圖像才能進行視頻解碼,因此在客戶端進行 視頻切換需要較長的等待時間。本發明提出了一種在編碼視頻碼流中插入可 以獨立解碼的切換幀方法。 一方面,在不進行視頻切換時,不會影響終端對
正常視頻碼流的解碼和播放;另一方面,在進行視頻切換時,終端可以從切 換幀位置實現快速視頻切換,從而縮短用戶在觀看視頻節目時的視頻切換時間。
權利要求
1、一種視頻序列的快速切換方法,步驟如下(1)對視頻序列進行編碼時,在視頻碼流中插入切換幀;(2)當收到視頻切換請求和切換幀時,進行切換幀的視頻解碼處理,得到切換幀的解碼圖像;(3)對解碼圖像按照縮放系數進行恢復,得到切換參考圖像;(4)將切換參考圖像作為后續視頻圖像解碼的參考幀。
2、 根據權利要求1所述的視頻序列的快速切換方法,其特征在于,步 驟(1)中,得到切換幀的具體步驟如下a 、 在視頻碼流中選取插入切換幀的時刻;b、 提取對應的原始圖像幀或者重建圖像幀;c、 將原始圖像幀或者重建圖像幀按照視頻編碼方法進行幀內編碼,得 到切換幀。
3、 根據權利要求2所述的視頻序列的快速切換方法,其特征在于,步 驟(a)中相鄰切換幀之間的間隔小于相鄰I幀之間的間隔。
4、 根據權利要求2所述的視頻序列的快速切換方法,其特征在于,步 驟(c)具體為(cl )選定縮放系數,對所述原始圖像幀或者重建圖像幀進行縮放處理;(c2)對縮放處理后的原始圖像幀或者重建圖像幀進行幀內編碼,得到 切換幀。
5、 根據權利要求1所述的視頻序列的快速切換方法,其特征在于,步 驟(2)具體為當接收到視頻切換請求時,對接受的視頻碼流進行判斷;如果為非幀內編碼模式的普通圖像幀,則不進行解碼處理;如果為幀內編碼模式的普通圖 像幀,則進行標準的解碼處理;如果為視頻切換幀,則進行切換幀的視頻解 碼處理,得到解碼圖像。
6、 根據權利要求4所迷的視頻序列的快速切換方法,其特征在于,當 進行圖像的縮放時,如果縮放系數小于l,表示對圖像進行縮小;如杲縮放 系數大于1,表示對圖像進行放大;如果縮放系數等于1,表示圖像保持原 有大小。
7、 根據權利要求1所述的視頻序列的快速切換方法,其特征在于,對 切換幀的視頻解碼處理通過采樣濾波器完成。
全文摘要
本發明公開了一種視頻序列的快速切換方法,步驟如下對視頻序列進行編碼時,在視頻碼流中插入切換幀;當收到視頻切換請求和切換幀時,進行切換幀的視頻解碼處理,得到切換幀的解碼圖像;對解碼圖像按照縮放系數進行恢復,得到切換參考圖像;將切換參考圖像作為后續視頻圖像解碼的參考幀。本發明方法可以在不明顯降低視頻編碼效率的條件下,實現解碼器端的快速視頻切換,縮短了切換時間。
文檔編號H04N7/26GK101184229SQ200610149789
公開日2008年5月21日 申請日期2006年11月27日 優先權日2006年11月13日
發明者于培松, 宋立鋒, 寧 王, 郭曉強, 睿 陳 申請人:中興通訊股份有限公司