視頻編碼裝置和方法、視頻解碼裝置和方法
【專利摘要】本發明公開了一種視頻編碼裝置和方法、視頻解碼裝置和方法。存儲單元對在編碼目標圖像之前被編碼的編碼圖像的解碼圖像進行存儲,該編碼目標圖像包括在應用靜態圖像編碼和視頻編碼的視頻中。視頻編碼單元通過幀間預測編碼對編碼目標圖像進行編碼,當靜態圖像編碼應用于在編碼目標圖像之前一個圖像的圖像以及視頻編碼應用于編碼目標圖像時,幀間預測編碼使用解碼圖像作為參考圖像。
【專利說明】
視頻編碼裝置和方法、視頻解碼裝置和方法
技術領域
[0001]本文中所討論的實施例涉及視頻編碼裝置、視頻編碼方法、視頻解碼裝置以及視頻解碼方法。
【背景技術】
[0002]在許多情況下,存在使用大量數據的視頻數據。因此,當視頻數據從發送裝置發送到接收裝置或者當視頻數據被存儲在存儲單元中時,該視頻數據接受壓縮編碼。
[0003]作為代表性的視頻編碼標準,運動圖像專家組階段2(MPEG-2)、MPEG_4和MPEG-4高級視頻編碼(MPEG-4AVC/H.264)是已知的。這些視頻編碼標準是由國際標準化組織/國際電工委員會(IS0/IEC)開發的。
[0004]此外,作為新的視頻編碼標準,高效率視頻編碼(HEVC,MPEG-H/H.265)正在被開發(例如,參見非專利文獻I)。
[0005]上述視頻編碼標準采用兩種編碼方法,S卩,幀間預測編碼和幀內預測編碼。幀間預測編碼是使用編碼圖像的信息以對編碼目標圖像進行編碼的編碼方法,而幀內預測編碼是僅使用包括在編碼目標圖像中的信息以對編碼目標圖像進行編碼的編碼方法。編碼目標圖像還被稱為幀或圖片。
[0006]作為這些視頻編碼標準的目標的視頻是自然圖像,主要通過使用各種類型的相機獲得。然而,隨著近年來信息技術的進步,除了將視頻編碼應用于自然圖像以外,出現了將視頻編碼應用于屏幕內容圖像如顯示在個人計算機(PC)桌面等上的那些圖像的趨勢。
[0007]作為屏幕內容圖像的視頻編碼的特定示例,存在將顯示在PC或游戲裝置上的圖像無線發送到平板顯示裝置的無線顯示。作為另一特定示例,存在使用因特網協議將虛擬操作系統的用戶窗口發送到移動裝置的虛擬顯示架構(VDI)。
[0008]屏幕內容圖像是通過使用計算機圖形等生成的人工圖像,并且具有不同于自然圖像的特征。屏幕內容圖像的第一個特征是像素的低相關性。在自然圖像中,目標像素的像素值與相鄰像素的像素值之間的相關性高。由所有視頻編碼標準所采用的離散余弦變換(DCT)利用該高相關性并且可以實現高壓縮效率。
[0009]相反地,屏幕內容圖像具有其中像素值的相關性為低的許多區域。這方面的示例包括文本編輯窗口中的字符的輪廓、計算機輔助設計(CAD)數據編輯窗口中的一個像素級窄線以及其他。當DCT應用于這些區域時,可以視覺感知并且特別是在具有低比特率的條件下可以明顯地視覺感知被稱為蚊式失真的高頻分量失真。
[0010]在HEVC的第一個版本(在2013年國際標準化)中,部分引入了在屏幕內容圖像上進行高效壓縮編碼的技術。其中特定示例是變換跳過(TS),該變換跳過(TS)跳過針對幀內預測編碼和幀間預測編碼中的預測誤差所應用的DCT。
[0011]另外,在HEVC的下一版本(正在被標準化)中,將引入進一步增大屏幕內容圖像的壓縮效率的技術(例如,參見非專利文獻2)。
[0012]能夠生成高質量靜態圖像同時抑制電路規模的增大的攝影裝置也是已知的(例如,參見專利文獻I)。該攝影裝置對視頻進行壓縮以輸出壓縮視頻、對壓縮視頻進行擴展以輸出擴展視頻、生成擴展視頻與對應于擴展視頻的視頻之間的差分視頻、對差分視頻進行壓縮以輸出壓縮差分視頻。在此之后,攝影裝置對壓縮差分視頻進行擴展以輸出擴展差分視頻、將擴展視頻和擴展差分視頻相加以生成相加視頻并且通過使用相加視頻生成靜態圖像。
[0013]專利文獻1:日本公開特許公報第2011-239240號
[0014]非專利文獻1:1TU-T H.265 | IS0/IEC 23008-2,“High efficiency videocoding”,2013
[0015]非專利文獻2: D.Flynn等人,“High Efficiency Video Coding(HEVC)RangeExtens1ns text specificat1n:Draft 6,,,JCTVC-P1005,16th JCT-VC Meeting,SanJos0,US,2014年I 月 9 日至17 日
【發明內容】
[0016]本發明的一個方面的目的是在使用靜態圖像編碼和視頻編碼兩者的編碼系統中抑制由從靜態圖像編碼切換到視頻編碼所引起的信息量的增加。
[0017]根據一個構思,視頻編碼裝置包括存儲單元和視頻編碼單元。
[0018]存儲單元對在編碼目標圖像之前被編碼的編碼圖像的解碼圖像進行存儲,該編碼目標圖像包括在應用靜態圖像編碼和視頻編碼的視頻中。視頻編碼單元通過幀間預測編碼對編碼目標圖像進行編碼,當靜態圖像編碼應用于在編碼目標圖像之前一個圖像的圖像以及視頻編碼應用于編碼目標圖像時,幀間預測編碼使用解碼圖像作為參考圖像。
【附圖說明】
[0019]圖1示出了圖像的劣化。
[0020]圖2示出了產生的信息量的變化的示例。
[0021 ]圖3示出了視頻編碼裝置的配置。
[0022]圖4示出了視頻解碼裝置的配置。
[0023]圖5示出了視頻編碼裝置的特定示例。
[0024]圖6示出了編碼電路的配置。
[0025]圖7示出了編碼視頻。
[0026]圖8是靜態視頻混合編碼處理的流程圖。
[0027]圖9示出了視頻解碼裝置的特定示例。
[0028]圖10示出了解碼電路的配置。
[0029]圖11是示出靜態視頻混合解碼處理的流程圖。
[0030]圖12示出了信息處理設備的配置。
【具體實施方式】
[0031 ]下文中,參照附圖對實施例進行詳細描述。
[0032]在屏幕內容圖像的編碼中,不僅編碼系統重要,而且在編碼之前對像素值的濾波也很重要。
[0033]在視頻編碼標準如MPEG等中,通常以RGB 4:4:4格式捕獲屏幕內容圖像,通常以YCbCr 4: 2:0格式對像素值進行編碼。當視頻編碼應用于RGB 4:4:4格式的屏幕內容圖像時,將RGB 4:4:4格式的圖像轉換為YCbCr 4:4:4格式的圖像。通過隨后對YCbCr 4:4:4格式的圖像應用下采樣濾波器,生成YCbCr 4:2:0格式的圖像。
[0034]與YCbCr4:4:4格式的圖像相比,在YCbCr 4:2:0格式的圖像中,兩個色差分量Cb和Cr在豎直方向和水平方向下采樣至1/2。在視頻編碼中使用YCbCr 4:2:0格式的目的是在編碼中減少信息量。
[0035]相較于人眼對于亮度分量Y的空間方向分辨率具有的感知特性,人眼對于色差分量Cb和Cr的空間方向分辨率具有較低的感知特性,而自然圖像幾乎沒有高空間頻率的色差分量,其通過下采樣丟失。因此,幾乎感知不到YCbCr 4:4:4格式與YCbCr 4:2:0格式之間的差異。
[0036]相反地,在屏幕內容圖像中,可以清楚地感知到YCbCr 4:4:4格式與YCbCr 4:2:0格式之間的差異。例如,一個像素級窄線如CAD圖像中的布線包括高空間頻率的色差分量,這導致這樣的窄線的劣化在常用于屏幕內容圖像的平坦的背景中是明顯的情況。
[0037]圖1示出了由下采樣所導致的圖像的劣化的示例。在轉換前的YCbCr4:4:4格式的圖像101中,中間部分周圍的豎直線111的像素值(¥,03,0)是(128,0,0),而作為除了豎直線111以外的區域的區域112的像素值是(O,128,128)。
[0038]當沿水平方向(和豎直方向)將2: I下采樣濾波器應用于色差分量Cb和Cr以將圖像轉換為4:2:0格式以及應用1:2上采樣濾波器以將圖像還原到原始格式4:4:4時,獲得圖像102。在圖像102中,豎直線113的像素值變為(124,64,64),以及與豎直線113相鄰的區域114的像素值變為(O,96,96)。
[0039]如上所述,通過應用下采樣濾波器和上采樣濾波器,豎直線和與豎直線相鄰的區域中的色差分量變化。當使用均勻背景時,通過人眼清楚地察覺到像素值的這種變化。
[0040]為了防止一個像素級窄線的劣化,理想的是將YCbCr4:4:4格式或RGB 4:4:4格式應用于視頻編碼。然而,與4:2:0格式的情況相比,這樣的應用導致色差分量的更多的像素被編碼并且增大編碼后信息量。
[0041]鑒于此,可以進行如下的靜態視頻混合編碼:采用以YCbCr 4:4:4格式進行編碼的靜態圖像編碼和以YCbCr 4:2:0格式或以YCbCr 4:2:2格式進行編碼的視頻編碼兩者。對于靜態圖像編碼,使用例如聯合圖像專家組(JPEG)系統,而MPEG系統例如用于視頻編碼。
[0042]根據靜態視頻混合編碼,編碼模式基于與屏幕中的全部或部分對應的圖像是靜態的還是運動的來進行動態切換。當圖像是靜態的時,特別是當兩個連續幀之間的差為零時,視頻編碼裝置在圖像變為靜態后將靜態圖像編碼應用于第一幀并且對后續幀不進行編碼。在對接受靜態圖像編碼的幀進行解碼之后,視頻解碼裝置重復顯示相同的解碼圖像直到視頻解碼裝置接收到下一編碼數據為止。當圖像是運動的時,視頻編碼裝置將視頻編碼應用于幀。
[0043]相較于人眼對于靜態區域的圖像劣化具有的感知特性,人眼對于涉及運動的區域的圖像劣化具有較低的感知特性。這使得可以減少產生的信息量,同時將由人類感知的圖像劣化最小化。
[0044]應注意,在自然圖像中,當獲得這樣的圖像時由于多種因素而出現噪聲,并且因此,即使當圖像是靜態的時,像素值是略微可變的,并且因此任何幀之間的差不為零。相反地,在屏幕內容圖像中,不會出現這樣的噪聲,以及當圖像是靜態的時,幀之間的差是零。
[0045]圖2示出了在上述靜態視頻混合編碼中產生的信息量的變化的示例。在靜態視頻混合編碼中,靜態圖像編碼數據和視頻編碼數據每個都是本身封閉的。
[0046]例如當靜態場景轉變到涉及運動的場景時,視頻編碼裝置首先將靜態圖像編碼應用于幀,并且從靜態圖像編碼切換到視頻編碼。在視頻編碼如MPEG等中,視頻編碼裝置使用幀內預測編碼以對緊接在切換到視頻編碼之后的第一幀進行編碼,并且通過使用幀間預測編碼對后續幀進行編碼。
[0047]在幀內預測編碼中,產生許多信息,這導致如峰201所描繪的當編碼模式從靜態圖像編碼切換到視頻編碼時信息產生爆炸造成通信網絡擁塞的可能性。
[0048]當涉及運動的場景轉變到靜態場景時,視頻編碼裝置將編碼模式從幀間預測編碼切換到靜態圖像編碼。在靜態圖像編碼如JPEG等中,如峰202如所描繪的,相較于由幀間預測編碼所引起的信息,由靜態圖像編碼引起更多的信息。
[0049]為了抑制由于從靜態圖像編碼切換到視頻編碼而產生過度信息,其中獲得接受靜態圖像編碼的編碼幀的解碼幀與切換后的第一幀之間的差以通過幀內預測編碼對這個差進行編碼的方法是可行的。然而,該方法可以減少在對第一幀進行編碼后的信息量,同時該方法不能減少后續幀的信息量。
[0050]其原因是,對于后續幀,以幀間預測編碼方式對過去被編碼的幀與編碼目標幀之間的差進行編碼。當切換后的第一幀的解碼幀不是正常幀而是兩個幀之間的差時,與作為下一編碼目標幀的正常幀的差變得過大,極大地減小了幀間預測的效率。
[0051]應注意,這個問題不僅出現在對包括屏幕內容圖像的視頻進行編碼的情況下,而且出現在對包括其中圖像劣化是明顯的其他類型圖像的視頻進行編碼的情況下。
[0052]鑒于上述情況,其中將接受靜態圖像編碼的編碼幀的解碼幀作為在切換后的第一幀之前被編碼的幀來處理,以及通過使用該幀作為參考幀將幀間預測編碼應用于切換后的第一幀的方法是可行的。在這種方法中,通過幀間預測編碼對切換后的第一幀進行編碼,因為切換后的第一幀是通過幀間預測編碼進行編碼的,所以編碼產生的信息量少于幀內預測編碼產生的信息量。
[0053]圖3示出了根據實施例的視頻編碼裝置的配置示例。圖3所示的視頻編碼裝置301包括存儲電路311和視頻編碼電路312。存儲電路311對在編碼目標圖像之前被編碼的圖像的解碼圖像進行存儲,編碼目標圖像包括在應用靜態圖像編碼和視頻編碼的視頻中。當靜態圖像編碼應用于在編碼目標圖像之前一個圖像的圖像以及視頻編碼應用于編碼目標圖像時,視頻編碼電路312通過使用采用解碼圖像作為參考圖像的幀間預測編碼對編碼目標圖像進行編碼。
[0054]圖4示出了根據實施例的視頻解碼裝置的配置示例。圖4所示的視頻解碼裝置401包括存儲電路411和視頻解碼電路412。存儲電路411對在解碼目標圖像之前被解碼的解碼圖像進行存儲,解碼目標圖像包括在應用靜態圖像解碼和視頻解碼的編碼視頻中。當靜態圖像解碼應用于在解碼目標圖像之前一個圖像的編碼圖像以及視頻解碼應用于解碼目標圖像時,視頻解碼電路412通過使用采用解碼圖像作為參考圖像的幀間預測解碼對解碼目標圖像進行解碼。
[0055]根據圖3所示的視頻編碼裝置301或圖4所示的視頻解碼裝置401,可以在使用靜態圖像編碼和視頻編碼兩者的編碼系統中抑制由從靜態圖像編碼切換到視頻編碼所引起的信息量的增加。
[0056]視頻編碼裝置301和視頻解碼裝置401用于各種目的。例如,視頻編碼裝置301或視頻解碼裝置401可以被安裝在視頻相機、視頻傳輸裝置、視頻接收裝置、視頻電話系統、計算機或移動電話裝置中。
[0057 ]圖5示出了圖3中所示的視頻編碼裝置301的特定示例。圖3所示的視頻編碼裝置301包括模式確定電路501、幀轉換電路502至幀轉換電路505、差計算電路506、加法器電路507、編碼電路508、靜態圖像編碼電路509、靜態圖像解碼電路510以及多路復用電路511。
[0058]例如,視頻編碼裝置301可以被實現為硬件電路。在這樣的情況下,視頻編碼裝置301可以包括相應構成部分作為單獨的電路或者可以是一個集成電路。
[0059]視頻編碼裝置301對輸入的編碼目標視頻進行編碼,并且輸出編碼視頻。編碼目標視頻包括多個幀。每個幀對應于編碼目標圖像(編碼目標幀)以及每個幀可以是彩色圖像或者可以是單色圖像。當幀是彩色圖像時,像素值可以是RGB信號或者可以是色差信號。下文中,將給出其中像素值是色差信號的情況的說明。
[0060]模式確定電路501包括幀緩存器并且對編碼目標幀的像素值與作為在編碼目標幀之前一個圖像的前一幀的像素值之間的差進行計算。然后,模式確定電路501基于兩個幀之間的差確定編碼目標幀是否是靜態的。
[0061]當編碼目標幀涉及運動時,模式確定電路501選擇視頻編碼作為編碼模式,以及當編碼目標幀是靜態的時,模式確定電路501選擇靜態圖像編碼作為編碼模式。然后,模式確定電路501向視頻編碼裝置301中的每個電路輸出表示所選擇的編碼模式的控制信號。
[0062]幀轉換電路502將編碼目標幀的色差格式轉換為靜態圖像編碼的色差格式,并且將經轉換的幀輸出到差計算電路506 ο幀轉換電路503將從編碼電路508輸出的解碼幀的色差格式(視頻編碼的色差格式)轉換為靜態圖像編碼的色差格式,將經轉換的解碼幀輸出到差計算電路506和加法器電路507。
[0063]編碼目標幀的色差格式可以是YCbCr4:4:4的格式,靜態圖像編碼的色差格式可以是YCbCr 4:2:2的格式,以及視頻編碼的色差格式可以是YCbCr 4:2:0的格式。
[0064]當前一幀的編碼模式是視頻編碼時,差計算電路506對從幀轉換電路502輸出的幀的像素值與從幀轉換電路503輸出的幀的像素值之間的差進行計算。然后,差計算電路506將兩個幀之間的差輸出到靜態圖像編碼電路509。當前一幀的編碼模式是靜態圖像編碼時,差計算電路506將從幀轉換電路502輸出的幀原樣輸出到靜態圖像編碼電路509。
[0065]靜態圖像編碼電路509對從差計算電路506輸出的幀或差進行靜態圖像編碼以生成靜態圖像編碼幀,并且將幀輸出到靜態圖像解碼電路510和多路復用電路511。靜態圖像解碼電路510對從靜態圖像編碼電路509輸出的靜態圖像編碼幀進行解碼,并且將兩個幀之間的差或解碼幀輸出到加法器電路507。
[0066]當從靜態圖像解碼電路510輸出差時,加法器電路507將差添加至從幀轉換電路503輸出的解碼幀,并且將作為相加結果的解碼幀輸出到幀轉換電路504。當從靜態圖像解碼電路510輸出解碼幀時,加法器電路507將解碼幀原樣輸出到幀轉換電路504。
[0067]幀轉換電路504將從加法器電路507輸出的解碼幀的色差格式轉換為視頻編碼的色差格式,并且將經轉換的解碼幀輸出到編碼電路508。幀轉換電路505將編碼目標幀的色差格式轉換為視頻編碼的色差格式,并且將經轉換的幀輸出到編碼電路508。
[0068]編碼電路508使用從幀轉換電路504輸出的解碼幀以進行視頻編碼來對從幀轉換電路505輸出的幀進行編碼,并且生成視頻編碼幀以將視頻編碼幀輸出到多路復用電路511。此外,編碼電路508對所生成的視頻編碼幀進行本地解碼以生成解碼幀,并且將解碼幀輸出到幀轉換電路503。
[0069]多路復用電路511對從靜態圖像編碼電路509輸出的靜態圖像編碼幀和從編碼電路508輸出的視頻編碼幀進行多路復用以輸出所得的幀作為編碼視頻。將每個編碼幀的編碼模式的信息、每個編碼模式中的色差格式的信息等添加至編碼視頻。視頻編碼裝置301可以經由通信網絡將編碼視頻傳輸至視頻解碼裝置401。
[ΟΟΤ?]圖6示出了圖5中所示的編碼電路508的配置示例。圖6所示的編碼電路508包括視頻編碼電路312、輸入幀緩存器601和參考幀緩存器602。輸入幀緩存器601和參考幀緩存器602對應于存儲電路311。視頻編碼電路312包括源編碼電路603和熵編碼電路604。
[0071 ]輸入幀緩存器601將從幀轉換電路505輸出的幀存儲為處理目標幀,并且將幀輸出到源編碼電路603。參考幀緩存器602將從幀轉換電路504輸出的解碼幀存儲為參考幀。當將幀間預測編碼應用于從靜態圖像編碼切換到視頻編碼之后的第一幀時,該參考幀被輸出到源編碼電路603。
[0072]源編碼電路603將源編碼應用于被存儲在輸入幀緩存器601中的處理目標幀,并且將編碼結果輸出到熵編碼電路604。源編碼對應于幀間預測編碼或幀內預測編碼,以及源編碼包括幀間預測或幀內預測、預測誤差的量化和頻率轉換、逆量化和逆頻率轉換的轉換結果與預測像素值相加以及使用環路內濾波器的濾波。
[0073]在幀間預測編碼中,源編碼電路603基于存儲在輸入幀緩存器601中的處理目標幀的像素值以及存儲在參考幀緩存器602中的參考幀的像素值來計算預測誤差。然后,源編碼電路603對頻率轉換預測誤差的結果進行量化以將量化結果輸出到熵編碼電路604。此外,源編碼電路603通過對量化結果進行本地解碼生成解碼幀并且將所生成的解碼幀存儲在參考幀緩存器602中作為參考幀。
[0074]熵編碼電路604進行熵編碼以與預測編碼參數等一起對從源編碼電路603輸出的量化結果進行編碼來生成視頻編碼幀,并且將視頻編碼幀輸出到多路復用電路511。例如,預測編碼參數包括量化步長的信息、運動矢量等。
[0075]圖7示出了從多路復用電路511輸出的編碼視頻的示例。圖7所示的編碼視頻包括根據傳輸序列輸出的多個編碼幀701。每個編碼幀701是靜態圖像編碼幀或視頻編碼幀以及包括頭部711和編碼數據712。
[0076]頭部711包括表示編碼幀701的編碼模式、編碼目標幀的色差格式和編碼幀701的色差格式的信息。編碼數據712對應于編碼目標幀的編碼結果。
[0077]圖8是說明由視頻編碼裝置301進行的靜態視頻混合編碼處理的示例的流程圖。首先,模式確定電路501對編碼目標幀與前一幀之間的差進行計算(步驟801)并且將差與閾值進行比較(步驟802)。
[0078]當差等于或大于閾值(步驟802的是)時,模式確定電路501選擇視頻編碼作為編碼模式(步驟803),同時幀轉換電路505將編碼目標幀的色差格式轉換為視頻編碼的色差格式。
[0079]接下來,幀轉換電路504檢查是否緊接在編碼模式切換到視頻編碼之后(步驟804)。當前一幀的編碼模式是靜態圖像編碼時,確定緊接在切換之后,以及當前一幀的編碼模式是視頻編碼時,確定未緊接在切換之后。
[0080]當緊接在切換到視頻編碼之后(步驟804的是)時,幀轉換電路504將接受靜態圖像編碼的前一幀的解碼幀的色差格式轉換為視頻編碼的色差格式(步驟805)。然后,編碼電路508將經轉換的解碼幀存儲在參考幀緩存器602的參考幀列表中(步驟806)。
[0081]接下來,編碼電路508使用經轉換的解碼幀作為參考幀以通過使用幀間預測編碼對編碼目標幀進行編碼來生成視頻編碼幀(步驟807)。然后,編碼電路508生成視頻編碼幀的解碼幀,并且將該解碼幀添加至參考幀緩存器602的參考幀列表中。幀轉換電路503將該解碼幀的色差格式轉換為靜態圖像編碼的色差格式。
[0082]如上所述,相比于幀內預測編碼的情況,通過使用幀間預測編碼對在從靜態圖像編碼切換到視頻編碼之后的第一編碼目標幀進行編碼可以抑制由切換所引起的編碼量的過度增加。
[0083]當未緊接在切換到視頻編碼之后(步驟804的否)時,編碼電路508使用參考幀列表中的參考幀之一并且通過使用幀間預測編碼對編碼目標幀進行編碼(步驟807)。
[0084]接下來,模式確定電路501檢查是否仍存在未被處理的幀(步驟815),以及當仍存在未被處理的幀(步驟815的是)時,將下一幀看作編碼目標幀來重復步驟801以及步驟801的后續處理。
[0085]當差小于閾值(步驟802的否)時,模式確定電路501選擇靜態圖像編碼作為編碼模式(步驟808),同時幀轉換電路502將編碼目標幀的色差格式轉換為靜態圖像編碼的色差格式。
[0086]接下來,幀轉換電路503檢查是否緊接在編碼模式切換到靜態圖像編碼之后(步驟809)。當前一幀的編碼模式是視頻編碼時,確定緊接在切換之后,以及當前一幀的編碼模式是靜態圖像編碼時,確定未緊接在切換之后。
[0087]當緊接在切換到靜態圖像編碼之后(步驟809的是)時,幀轉換電路503將接受視頻編碼的前一幀的解碼幀的色差格式轉換為靜態圖像編碼的色差格式(步驟810)。然后,差計算電路506計算經轉換的編碼目標幀與經轉換的解碼幀之間的差(步驟811)。
[0088]接下來,靜態圖像編碼電路509通過靜態圖像編碼對差進行編碼以生成靜態圖像編碼幀(步驟812)。在此之后,靜態圖像解碼電路510通過對靜態圖像編碼幀進行解碼生成差。
[0089]如上所述,通過使用與接受視頻編碼的前一幀的解碼幀的差來對從視頻編碼切換到靜態圖像編碼之后的第一編碼目標幀進行編碼。由此,相較于靜態圖像編碼如JPEG等的情況,可以抑制由切換所引起的編碼量的過度增加。
[0090]當未緊接在切換到靜態圖像編碼之后(步驟809的否)時,靜態圖像編碼電路509使用靜態圖像編碼對經轉換的編碼目標幀進行編碼以生成靜態圖像編碼幀(步驟812)。然后,靜態圖像解碼電路510通過對靜態圖像編碼幀進行解碼生成解碼幀。
[0091]接下來,加法器電路507檢查是否緊接在編碼模式切換到靜態圖像編碼之后(步驟813)。當緊接在切換到視頻編碼之后(步驟813的是)時,加法器電路507將由靜態圖像解碼電路510所生成的差添加至經轉換的解碼幀以生成作為相加結果的解碼幀(步驟814)。當未緊接在切換到靜態圖像編碼之后(步驟813的否)時,加法器電路507原樣輸出由靜態圖像解碼電路510所生成的解碼幀。
[0092]接下來,模式確定電路501執行步驟815和步驟815的后續處理。當所有幀被編碼(步驟815的否)時,模式確定電路501結束處理。
[0093]圖9示出了圖4中所示的視頻解碼裝置401的特定示例。圖9所示的視頻解碼裝置401包括解碼控制電路901、逆多路復用電路902、靜態圖像解碼電路903、解碼電路904、幀轉換電路905至幀轉換電路908、加法器電路909以及幀緩存器910。
[0094]例如,視頻解碼裝置401可以被實現為硬件電路。在這樣的情況下,視頻解碼裝置401可以包括相應構成部分作為單獨的電路或者可以是一個集成電路。
[0095]視頻解碼裝置401對輸入的編碼視頻進行解碼,并且輸出作為解碼結果的視頻。編碼視頻包括多個編碼幀,并且每個編碼幀對應于解碼目標圖像(解碼目標幀)。
[0096]逆多路復用電路902對編碼視頻進行逆多路復用以提取靜態圖像編碼幀、視頻編碼幀、每個編碼幀的編碼模式的信息、每個編碼模式下的色差格式的信息。然后,逆多路復用電路902將靜態圖像編碼幀輸出到靜態圖像解碼電路903、將視頻編碼幀輸出到解碼電路904以及將編碼模式的信息和色差格式的信息輸出到解碼控制電路901。
[0097]解碼控制電路901根據從逆多路復用電路902輸出的編碼模式的信息和色差格式的信息來獲得解碼目標幀的編碼模式、靜態圖像編碼的色差格式和視頻編碼的色差格式。然后,解碼控制電路901將指定編碼模式和色差格式的控制信號輸出到視頻解碼裝置401中的每個電路。
[0098]靜態圖像解碼電路903通過使用靜態圖像解碼對從逆多路復用電路902輸出的靜態圖像編碼幀進行解碼以生成解碼結果并且將解碼結果輸出到加法器電路909。當在作為解碼目標幀之前一個圖像的前一幀的編碼模式是視頻編碼時,解碼結果表示兩個幀之間的差,以及當前一幀的編碼模式是靜態圖像編碼時,解碼結果表示靜態圖像解碼幀。
[0099]當前一幀的編碼模式是視頻編碼時,加法器電路909將從靜態圖像解碼電路903輸出的差和從幀轉換電路90 7輸出的經轉換的解碼幀相加以生成作為相加結果的解碼幀。然后,加法器電路909將作為相加結果的解碼幀輸出到幀轉換電路905和幀轉換電路906。當前一幀的編碼模式是靜態圖像編碼時,加法器電路909將從靜態圖像解碼電路903輸出的靜態圖像解碼幀原樣輸出到幀轉換電路906。
[0100]幀轉換電路906將作為相加結果的解碼幀的色差格式或者從加法器電路909輸出的靜態圖像解碼幀的色差格式(靜態圖像編碼的色差格式)轉換為從視頻解碼裝置401輸出的視頻的色差格式。然后,幀轉換電路906將經轉換的解碼幀輸出到幀緩存器910。幀轉換電路905將從加法器電路909輸出的作為相加結果的解碼幀的色差格式轉換為視頻編碼的色差格式,并且將經轉換的解碼幀輸出到解碼電路904。
[0101]靜態圖像編碼的色差格式可以是YCbCr4:2:2的格式以及視頻編碼的色差格式可以是YCbCr 4:2:0的格式,同時從視頻解碼裝置401輸出的視頻的色差格式可以是YCbCr 4:4:4的格式。
[0102]解碼電路904使用從幀轉換電路905輸出的經轉換的解碼幀以通過使用視頻解碼對從逆多路復用電路902輸出的視頻編碼幀進行解碼,并且生成視頻解碼幀。然后,解碼電路904將視頻解碼幀輸出到幀轉換電路907和幀轉換電路908。
[0103]幀轉換電路908將從解碼電路904輸出的視頻解碼幀的色差格式(視頻編碼的色差格式)轉換為從視頻解碼裝置401輸出的視頻的色差格式,并且將經轉換的解碼幀輸出到幀緩存器910。幀轉換電路907將從解碼電路904輸出的視頻解碼幀的色差格式轉換為靜態圖像編碼的色差格式,并且將經轉換的解碼幀輸出到加法器電路909。
[0104]幀緩存器910對從幀轉換電路906和幀轉換電路908輸出的經轉換的解碼幀進行緩存,并且根據顯示時間將所述幀輸出到顯示裝置。從而,將視頻顯示在屏幕上。
[0105]圖10示出了圖9中所示的解碼電路904的配置示例。圖10所示的解碼電路904包括視頻解碼電路412和參考幀緩存器1001。參考幀緩存器1001對應于存儲電路411。視頻解碼電路412包括熵解碼電路1011和源解碼電路1012。
[0106]參考幀緩存器1001將從幀轉換電路905輸出的解碼幀存儲為參考幀。當將幀間預測解碼應用于從靜態圖像編碼切換到視頻編碼之后的第一視頻編碼幀時,將參考幀輸出到源解碼電路1012。
[0107]熵解碼電路1011使用熵解碼對從逆多路復用電路902輸出的視頻編碼幀進行解碼,并且將解碼結果輸出到源解碼電路1012。解碼結果包括預測編碼參數等。
[0108]源解碼電路1012將源解碼應用于從熵解碼電路1011輸出的解碼結果以生成視頻解碼幀,并且將所生成的視頻解碼幀作為參考幀存儲在參考幀緩存器1001中。源解碼對應于幀間預測解碼或幀內預測解碼,以及源解碼包括逆量化和逆頻率轉換、幀間預測或幀內預測、逆量化和逆頻率轉換的轉換結果與預測像素值相加以及使用內環路濾波器的濾波。
[0109]在幀間預測解碼中,源解碼電路1012對從熵解碼電路1011輸出的解碼結果進行逆量化、對逆量化的結果進行逆頻率轉換以及生成預測誤差。然后,源解碼電路1012根據所生成的預測誤差和存儲在參考幀緩存器1001中的參考幀的像素值生成視頻解碼幀,并且將視頻解碼幀存儲在參考幀緩存器1001中。
[0110]存儲在參考幀緩存器1001中的視頻解碼幀被輸出到幀轉換電路907和幀轉換電路908,并且被用作后續視頻編碼幀的參考幀。
[0111]圖11是說明由圖9中所示的視頻解碼裝置401進行的靜態視頻混合解碼處理的示例的流程圖。首先,解碼控制電路901從逆多路復用電路902獲得編碼模式的信息(步驟1101),并且檢查解碼目標幀的編碼模式是視頻編碼還是靜態圖像編碼(步驟1102)。
[0112]當解碼目標幀的編碼模式是視頻編碼(步驟1102的是)時,幀轉換電路905檢查是否緊接在編碼模式切換到視頻編碼之后(步驟1103)。當前一幀的編碼模式是靜態圖像編碼時,確定緊接在切換之后,以及當前一幀的編碼模式是視頻編碼時,確定未緊接在切換之后。
[0113]當緊接在切換到視頻編碼之后(步驟1103的是)時,幀轉換電路905將前一靜態圖像解碼幀的色差格式轉換為視頻編碼的色差格式(步驟1104)。然后,解碼電路904將經轉換的解碼幀存儲在參考幀緩存器1001的參考幀列表中(步驟1105)。
[0114]接下來,解碼電路904使用經轉換的解碼幀作為參考幀,并且通過幀間預測解碼對解碼目標幀進行解碼以生成視頻解碼幀(步驟1106)。然后,解碼電路904將所生成的視頻編碼幀添加到參考幀緩存器1001的參考幀列表中。
[0115]當未緊接在切換到視頻編碼之后(步驟1103的否)時,解碼電路904使用參考幀列表中的參考幀之一以通過幀間預測解碼對解碼目標幀進行解碼(步驟1106)。
[0116]接下來,幀轉換電路908將視頻解碼幀的色差格式轉換為從視頻解碼裝置401輸出的視頻的色差格式,同時幀緩存器910將經轉換的解碼幀輸出到顯示裝置(步驟1111)。
[0117]接下來,解碼控制電路901檢查是否仍存在未被處理的幀(步驟1112),以及當仍存在未被處理的幀(步驟1112的是)時,解碼控制電路901通過將下一幀看作解碼目標幀來重復步驟1101以及步驟1101的后續處理。
[0118]當解碼目標幀的編碼模式是靜態圖像編碼(步驟1102的否)時,靜態圖像解碼電路903通過靜態圖像解碼對解碼目標幀進行解碼以生成解碼結果(步驟1107)。
[0119]接下來,幀轉換電路907檢查是否緊接在編碼模式切換到靜態圖像編碼之后(步驟1108)。當前一幀的編碼模式是視頻編碼時,確定緊接在切換之后,以及當前一幀的編碼模式是靜態圖像編碼時,確定未緊接在切換之后。
[0120]當緊接在切換到靜態圖像編碼之后(步驟1108的是)時,幀轉換電路907將通過對前一視頻編碼幀進行解碼而獲得的視頻解碼幀的色差格式轉換為靜態圖像編碼的色差格式(步驟1109)。然后,加法器電路909將經轉換的解碼幀和由對解碼目標幀進行解碼的結果表示的兩個幀之間的差相加,以生成作為相加結果的解碼幀(步驟1110)。
[0121]當未緊接在切換到靜態圖像編碼之后(步驟1108的否)時,加法器電路909將由對解碼目標幀進行解碼而獲得的靜態圖像解碼幀輸出到幀轉換電路906。
[0122]接下來,幀轉換電路906將作為相加結果的解碼幀的色差格式或靜態圖像解碼幀的色差格式轉換為從視頻解碼裝置401輸出的視頻的色差格式(步驟111)。然后,幀緩存器910將經轉換的解碼幀輸出到顯示裝置。
[0123]接下來,解碼控制電路901進行步驟1112以及步驟1112的后續處理。當所有幀被解碼(步驟1112的否)時,解碼控制電路901結束處理。
[0124]圖3和圖5中所示的視頻編碼裝置301的配置以及圖6中所示的編碼電路508僅是示例性的,并且可以根據視頻編碼裝置301的目的或條件省略或改變一些構成部分。
[0125]例如,當編碼目標幀、靜態圖像編碼和視頻編碼采用相同的色差格式時,可以省略圖5中所示的幀轉換電路502至幀轉換電路505。當通過使用靜態圖像編碼如JPEG等對從視頻編碼切換到靜態圖像編碼之后的第一編碼目標幀進行編碼時,可以省略圖5中所示的差計算電路506和加法器電路507。當不進行熵編碼時,可以省略圖6中所示的熵編碼電路604。
[0126]圖4和圖9中所示的視頻解碼裝置401的配置和圖10中所示的解碼電路904僅是示例性的,并且可以根據視頻解碼裝置401的目的或條件省略或改變一些構成部分。
[0127]例如,當從視頻解碼裝置401輸出的視頻、靜態圖像編碼和視頻編碼采用相同的色差格式時,可以省略圖9中所示的幀轉換電路905至幀轉換電路908。當通過靜態圖像編碼如JPEG等對從視頻編碼切換到靜態圖像編碼之后的第一編碼目標幀進行編碼時,可以省略圖9中所示的加法器電路909。當不進行熵編碼時,可以省略圖10中所示的熵解碼電路1011。
[0128]圖8和圖11所示的流程圖僅是示例性的,并且可以根據視頻編碼裝置301和視頻解碼裝置401的配置或條件省略或改變流程圖中的一些處理。例如,當編碼目標幀、靜態圖像編碼和視頻編碼采用相同的色差格式時,可以省略圖8中所示的步驟805和步驟810的處理。在這樣的情況下,還可以省略步驟803和步驟808中的色差格式轉換處理。
[0129]當從視頻解碼裝置401輸出視頻時,靜態圖像編碼和視頻編碼采用相同的色差格式,可以省略圖11中所示的步驟1104和步驟1109的處理。在這樣的情況下,還可以省略步驟1111中的色差格式轉換處理。
[0130]當通過靜態圖像編碼如JPEG等對從視頻編碼切換到靜態圖像編碼之后的第一編碼目標幀進行編碼時,可以省略圖8中所示的步驟809至步驟811、步驟813和步驟814的處理。在這樣的情況下,還可以省略圖11中所示的步驟1108至步驟1110的處理。
[0131 ]在圖8所示的步驟807中,當緊接在切換到視頻編碼之后時,編碼電路508可以使用作為在編碼目標幀之前N(N是等于或大于2的整數)個幀的幀的解碼幀而不是作為在編碼目標幀之前一個圖像的前一幀的解碼幀作為參考幀。這導致參考幀的更多選擇候選。在這樣的情況下,在步驟805中,幀轉換電路504將作為在編碼目標幀之前N個幀的幀的解碼幀的色差格式轉換為視頻編碼的色差格式。
[0132]此外,在圖11所示的步驟1104中,幀轉換電路905將作為在解碼目標幀之前的N個幀的靜態圖像解碼幀的色差格式轉換為視頻編碼的色差格式。然后,在步驟1106中,解碼電路904使用與N個幀前的靜態圖像解碼幀對應的經轉換的解碼幀作為參考幀。
[0133]在圖8所示的步驟807中用作參考幀的N個幀前的幀可以是通過使用視頻編碼進行編碼的幀。
[0134]在圖8所示的步驟811中,當緊接在切換到靜態圖像編碼之后時,差計算電路506可以通過使用作為在編碼目標幀之前N個幀的幀的解碼幀而不是作為在編碼目標幀之前一個圖像的前一幀的解碼幀來計算差。這導致用于計算差的幀的更多選擇候選。在這樣的情況下,在步驟810中,幀轉換電路503將作為在編碼目標幀之前N個幀的幀的解碼幀的色差格式轉換為靜態圖像編碼的色差格式。
[0135]此外,在圖11所示的步驟1109中,幀轉換電路905將通過對作為在解碼目標幀之前N個幀的視頻編碼幀進行解碼而獲得的視頻解碼幀的色差格式轉換為靜態圖像編碼的色差格式。在步驟1110中,加法器電路909將與N個幀前的視頻解碼幀對應的經轉換的解碼幀和由對解碼目標幀進行解碼的結果所表示的兩個幀之間的差相加。
[0136]在圖8所示的步驟811中用于計算差的N個幀前的幀可以是由靜態圖像編碼進行編碼的幀。
[0137]編碼目標圖像不限于包括屏幕內容圖像的視頻,還可以是包括其中圖像劣化是明顯的不同類型的圖像的視頻。
[0138]圖3和圖5中所示的視頻編碼裝置301以及圖4和圖9中所示的視頻解碼裝置401可以由硬件電路來實現,或者可以通過使用如圖12所示的信息處理設備(計算機)來實現。
[0139]圖12所示的信息處理設備包括中央處理單元(CPU)1201、存儲器1202、輸入裝置1203、輸出裝置1204、輔助存儲裝置1205、介質驅動裝置1206和網絡連接裝置1207。這些構成部分經由總線1208彼此連接。
[0140]例如,存儲器1202是半導體存儲器如只讀存儲器(R0M)、隨機存取存儲器(RAM)、閃速存儲器等,并且存儲用于靜態視頻混合編碼處理或靜態視頻混合解碼處理的程序和數據。存儲器1202可以用作圖3中所示的存儲電路311、圖4中所示的存儲電路411、圖6中所示的輸入幀緩存器601和參考幀緩存器602、圖9中所示的幀緩存器910或圖10中所示的參考幀緩存器1001。
[0141]CPU 1201(處理器)通過例如使用存儲器1202執行程序以操作為圖3和圖6中所示的視頻編碼電路312或者圖4和圖1O中所示的視頻解碼電路412。
[0142]CPU 1201還操作為圖5中所示的模式確定電路501、幀轉換電路502至幀轉換電路505、差計算電路506、加法器電路507、編碼電路508、靜態圖像編碼電路509、靜態圖像解碼電路510和多路復用電路511XPU1201還操作為圖6中所示的源編碼電路603和熵編碼電路604。
[0143]CPU 1201還操作為圖9中所示的解碼控制電路901、逆多路復用電路902、靜態圖像解碼電路903、解碼電路904、幀轉換電路905至幀轉換電路908以及加法器電路909 XPU1201還操作為圖中10所示的熵解碼電路1011和源解碼電路1012。
[0144]例如,輸入裝置1203是鍵盤、指示裝置等,并且用于從用戶或操作者輸入指令或信息。例如,輸出裝置1204是顯示裝置、打印機、揚聲器等,并且用于向用戶或操作者輸出查詢或處理結果。處理結果可以是從圖9中所示的幀緩存器910輸出的視頻。
[0145]例如,輔助存儲裝置1205是磁盤裝置、光盤裝置、磁光盤裝置、磁帶裝置等。輔助存儲裝置1205可以是硬盤驅動器。信息處理設備可以預先將程序和數據存儲在輔助存儲裝置1205中以將程序和數據加載到存儲器1202上并且使用程序和數據。
[0146]介質驅動裝置1206驅動便攜式記錄介質1209訪問存儲在其中的信息。便攜式記錄介質1209是存儲器裝置、軟盤、光盤、磁光盤等。便攜式記錄介質1209可以是光盤只讀存儲器(CD-ROM)、數字多功能盤(DVD)、通用串行總線(USB)存儲器等。用戶或操作者可以將程序和數據存儲在便攜式記錄介質1209中以將程序和數據加載到存儲器1202上并且使用程序和數據。
[0147]如上所述,用于對用于處理的程序和數據進行存儲的計算機可讀記錄介質是物理(非暫時性)記錄介質如存儲器1202、輔助存儲裝置1205或便攜式記錄介質1209。
[0148]網絡連接裝置1207是連接到通信網絡如局域網(LAN)、因特網等以執行用于通信的數據的轉換的通信接口。網絡連接裝置1207向視頻解碼裝置401發送編碼視頻以及還可以從視頻編碼裝置301接收編碼視頻。信息處理設備可以經由網絡連接裝置1207從外部裝置接收程序和數據以將程序和數據加載到存儲器1202上并且使用程序和數據。
[0149]應注意,信息處理設備不需要包括圖12中所示的所有構成部分,以及根據目的或條件可以省略一些構成部分。例如,當與用戶或操作者的接口是沒有必要時,可以省略輸入裝置1203和輸出裝置1204。此外,當信息處理設備不訪問便攜式記錄介質1209時,可以省略介質驅動裝置1206。
【主權項】
1.一種視頻編碼裝置,包括: 存儲單元,所述存儲單元用于對在編碼目標圖像之前被編碼的編碼圖像的解碼圖像進行存儲,所述編碼目標圖像包括在應用靜態圖像編碼和視頻編碼的視頻中;以及 視頻編碼單元,所述視頻編碼單元用于通過幀間預測編碼對所述編碼目標圖像進行編碼,當所述靜態圖像編碼應用于在所述編碼目標圖像之前一個圖像的圖像以及所述視頻編碼應用于所述編碼目標圖像時,所述幀間預測編碼使用所述解碼圖像作為參考圖像。2.根據權利要求1所述的視頻編碼裝置,還包括: 靜態圖像編碼單元,所述靜態圖像編碼單元用于通過所述靜態圖像編碼對在所述編碼目標圖像之前一個圖像的圖像或在所述編碼目標圖像之前兩個或更多個圖像的圖像進行編碼來生成所述編碼圖像。3.根據權利要求1所述的視頻編碼裝置,還包括: 靜態圖像編碼單元,所述靜態圖像編碼單元用于當所述視頻編碼應用于第一圖像以及所述靜態圖像編碼應用于第二圖像時通過所述靜態圖像編碼對所述第一圖像的編碼圖像的解碼圖像與所述第二圖像的編碼圖像的解碼圖像之間的差進行編碼,所述第一圖像通過所述視頻編碼進行編碼并且在所述編碼目標圖像之后,以及所述第二圖像在所述第一圖像之后一個圖像。4.根據權利要求1至3中任一項所述的視頻編碼裝置,還包括: 確定單元,所述確定單元用于當所述編碼目標圖像與在所述編碼目標圖像之前一個圖像的圖像之間的差大于閾值時確定將所述視頻編碼應用于所述編碼目標圖像。5.—種視頻編碼方法,包括: 將在編碼目標圖像之前被編碼的編碼圖像的解碼圖像存儲在存儲單元中,所述編碼目標圖像包括在應用靜態圖像編碼和視頻編碼的視頻中;以及 通過幀間預測編碼對所述編碼目標圖像進行編碼,當所述靜態圖像編碼應用于在所述編碼目標圖像之前一個圖像的圖像以及所述視頻編碼應用于所述編碼目標圖像時,所述幀間預測編碼使用所述解碼圖像作為參考圖像。6.根據權利要求5所述的視頻編碼方法,還包括: 通過所述靜態圖像編碼對在所述編碼目標圖像之前一個圖像的圖像或在所述編碼目標圖像之前兩個或更多個圖像的圖像進行編碼來生成所述編碼圖像。7.根據權利要求5所述的視頻編碼方法,還包括: 當所述視頻編碼應用于第一圖像以及所述靜態圖像編碼應用于第二圖像時通過所述靜態圖像編碼對所述第一圖像的編碼圖像的解碼圖像與所述第二圖像的編碼圖像的解碼圖像之間的差進行編碼,所述第一圖像通過所述視頻編碼進行編碼并且在所述編碼目標圖像之后,以及所述第二圖像在所述第一圖像之后一個圖像。8.根據權利要求5至7中任一項所述的視頻編碼方法,還包括: 當所述編碼目標圖像與在所述編碼目標圖像之前一個圖像的圖像之間的差大于閾值時確定將所述視頻編碼應用于所述編碼目標圖像。9.一種視頻解碼裝置,包括: 存儲單元,所述存儲單元用于對在解碼目標圖像之前被解碼的解碼圖像進行存儲,所述解碼目標圖像包括在應用靜態圖像編碼和視頻編碼的編碼視頻中;以及 視頻解碼單元,所述視頻解碼單元用于通過幀間預測解碼對所述解碼目標圖像進行解碼,當所述靜態圖像解碼應用于在所述解碼目標圖像之前一個圖像的編碼圖像以及所述視頻解碼應用于所述解碼目標圖像時,所述幀間預測解碼使用所述解碼圖像作為參考圖像。10.一種視頻解碼方法,包括: 將在解碼目標圖像之前被解碼的解碼圖像存儲在存儲單元中,所述解碼目標圖像包括在應用靜態圖像解碼和視頻解碼的編碼視頻中;以及 通過幀間預測解碼對所述解碼目標圖像進行解碼,當所述靜態圖像解碼應用于在所述解碼目標圖像之前一個圖像的編碼圖像以及所述視頻解碼應用于所述解碼目標圖像時,所述幀間預測解碼使用所述解碼圖像作為參考圖像。
【文檔編號】H04N19/117GK106028031SQ201610154130
【公開日】2016年10月12日
【申請日】2016年3月17日
【發明人】數井君彥, 山田幸二
【申請人】富士通株式會社