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