使用頻域差對圖像集合進行重新編碼的制作方法
【專利說明】使用頻域差對圖像集合進行重新編碼
[000。 背景
[0002] 隨著對數字相機(尤其是智能電話或其他設備內包括的那些相機)使用的增加,數 字相片的存儲向個人設備并向可通過因特網獲得的"云"存儲服務提出了重大的挑戰。具體 地,智能電話和其他移動計算設備中的數字相機已顯著地增加了所捕捉、共享和存儲的數 字圖像的數目,因為運樣的設備被大量用戶在其日常活動中攜帶。同時,較新的數字相機使 用產生更高分辨率圖像的傳感器。更高分辨率的圖像具有每圖像更多的樣本值,并且往往 具有每圖像更高的存儲成本。
[0003] 工程師使用壓縮(也被稱為源編碼(source coding、sou;rce encoding)或被簡單 地稱為編碼(coding或encoding))來降低數字圖像的比特率。壓縮通過將圖像信息轉換成 較低比特率的形式來降低存儲和傳送該信息的成本。壓縮可W是無損或有損的。無損壓縮 通常降低比特率,并且不會破壞圖像質量。在另一方面,在有損壓縮時,比特率降低往往更 顯著,W圖像質量的降低為代價。解壓(也被稱為解碼)從壓縮的形式中重構一種版本的原 始信息。"編解碼器"是編碼器/解碼器系統。
[0004] 自20世紀90年代早期W來,已采用了各種圖像編解碼器標準,包括肝EG標準(ITU-T T.81 或IS0/IEC 10918-1)、JPEG 2000標準(IS0/IEC 15444)和JPEG XR標準(ITU-T T.832或IS0/IEC 29199-2)。數字圖像也可W使用視頻編解碼器標準的圖片內編碼和解碼 來處理,視頻編解碼器標準諸如為H.264/AVC標準(ITU-T H.264、MPEG-4 AVC或IS0/IEC 14496-10)或者H. 265/皿VC標準(ITU-T H. 265或IS0/IEC 23008-2)。編解碼器標準通常定 義針對經編碼的數據比特流的句法的選項,從而詳述當在編碼和解碼時使用特定特征時該 比特流中的參數。在許多情況下,編解碼器標準還提供關于解碼器應當執行W在解碼時取 得一致的結果的解碼操作的細節。除了編解碼器標準外,各種專用編解碼器格式(諸如VP8 和VP9)定義針對經編碼的數據比特流的句法的其他選項W及相應的解碼操作。
[0005] 由此,圖像壓縮可降低數字相片的存儲成本,但大多數常規圖像編碼方法并不利 用不同圖像之間存在的相關性。例如,考慮使用連拍模式捕捉來捕捉的一系列數字相片或 相冊中的數字相片集合。運些系列或相冊中的圖像可能高度相關,然而大多數圖像編碼方 法在壓縮期間僅考慮每一圖像本身。
[0006] -些現有的"圖像集合"壓縮方法利用各圖像之間的圖像間冗余來降低比特率。運 些編碼方法中的幾個甚至允許無損壓縮。運樣的方法通常壓縮"原始"輸入數字圖像,而非 先前編碼的數字圖像,W便實現存儲成本的顯著降低。在將現有的有損圖像集合壓縮方法 應用于先前編碼的數字圖像的經重構版本時,運些方法幾乎不降低比特率,除非圖像質量 也受損。將現有的無損圖像集合壓縮方法應用于先前編碼的數字圖像的經重構版本(嘗試 降低存儲成本,而不進一步降低圖像質量)通常增加比特率,而非降低比特率。由此,在一些 場景中,現有的圖像集合壓縮方法在對先前編碼的數字圖像進行重新編碼時無法提供高效 性能。
[0007] 概述
[000引總而言之,詳細描述提出使用頻域差對圖像集合進行重新編碼的方法W及反轉對 圖像集合的重新編碼的相應方法。在一些示例實現中,重新編碼方法可顯著地降低針對先 前編碼的數字圖像的集合的存儲成本,而不會破壞圖像質量。換言之,在運些示例實現中, 重新編碼方法可提供對先前編碼的數字圖像的無損壓縮。
[0009] 根據本文中描述的創新的第一方面,重新編碼工具對多個圖像的集合的處于第一 格式的第一經編碼數據進行解碼。重新編碼工具對多個圖像的集合中的至少一個圖像進行 重新編碼,從而產生此多個圖像的處于第二格式的第二經編碼數據。作為重新編碼的一部 分,重新編碼工具確定頻域差。
[0010] 例如,作為重新編碼的一部分,重新編碼工具相對于一個或多個參考圖像確定預 。重新編碼工具可使用空間域視差補償(例如,運動補償)來相對于一個或多個參考圖像 確定針對多個圖像中的給定圖像的給定塊的預測。對于空間域視差補償,多個圖像可根據 預測結構來被組織,該預測結構取決于對多個圖像的特征的分析。同樣,作為空間域視差補 償的一部分,參考圖像可根據變形變換(諸如,全局仿射變換)和/或光度變換(諸如全局亮 度補償)來被調整。
[0011] 重新編碼工具還計算預測的經量化的系數。例如,為了計算針對給定塊的預測的 經量化的系數,重新編碼工具對針對該塊的預測的樣本值執行頻率變換W產生該預測的系 數,并使用量化參數("QP")值來量化該預測的系數。第二格式重新編碼可在若干方面鏡像 (mirror)第一格式解碼。例如,解碼可包括作為重新編碼期間使用的頻率變換的逆的逆頻 率變換。同樣,解碼可包括使用與重新編碼相同的QP值(例如,給定塊使用的QP值)的逆量 化,其促成針對重新編碼過程的無損壓縮。
[0012] 隨后,重新編碼工具計算(例如,針對給定塊的)預測的經量化的系數和第一經編 碼數據中表示的(例如針對該塊的)相應的經量化的系數之間的頻域差。由于它們是使用經 量化的系數來計算的,因此運些差是頻域差。重新編碼工具對運些頻域差進行賭編碼。
[0013] 在重新編碼期間,對于給定塊,重新編碼工具可在使用頻域差和使用(來自第一經 編碼的數據的)相應的經量化的系數之間進行選擇,W供包括在第二經編碼的數據中。例 如,該選擇至少部分地取決于頻域差的成本度量和相應的經量化的系數的成本度量。通過 運種方式,在重新編碼工具改善了壓縮性能時,該重新編碼工具可使用空間域視差補償,但 否則使用根據第一格式的壓縮。
[0014] 重新編碼工具可在逐塊的基礎上對多個圖像中的給定圖像的多個塊重復該過程。
[0015] 根據本文中描述的創新的另一方面,計算系統包括基礎解碼器和預測重新編碼 器。基礎解碼器被適配成對圖像的(例如,處于第一格式的)第一經編碼數據進行解碼。預測 重新編碼器被適配成對圖像中的至少一個圖像進行重新編碼,并由此產生運些圖像的(例 如,處于第二格式的)第二經編碼的數據。預測重新編碼器包括(a)空間域視差補償模塊,該 空間域視差補償模塊被適配成相對于一個或多個參考圖像確定預測,(b)頻率變換器,該頻 率變換器被適配成產生針對該預測的變換系數,(C)量化器,該量化器被適配成量化該預測 的變換系數,(d)差值模塊,該差值模塊被適配成計算預測的經量化的變換系數和第一經編 碼數據中表示的相應的經量化的變換系數之間的頻域差,W及(e)賭編碼器,該賭編碼器被 適配成對頻域差進行賭編碼。預測重新編碼器還可包括(f)選擇器模塊,該選擇器模塊被適 配成選擇頻域差或相應的經量化的變換系數W供包括在第二經編碼的數據中。
[0016] 根據本文中描述的創新的第=方面,代碼轉換工具或解碼工具反轉對圖像集合的 重新編碼。該工具接收并處理多個圖像的集合的經編碼的數據。作為該處理的一部分,該工 具(例如,使用空間域視差補償)相對于一個或多個參考圖像計算預測,并計算該預測的經 量化的系數。該工具還對頻域差進行賭解碼,并將頻域差和該預測的經量化的系數組合W 重構相應的經量化的系數。對于解碼,該工具對相應的經量化的系數進行逆量化,隨后對經 逆量化的系數執行逆頻率變換W重構圖像。在另一方面,對于代碼轉換(例如,代碼轉換成 第一格式),該工具對相應的經量化的系數進行賭編碼。該工具可在逐塊的基礎上對給定圖 像的多個塊重復該過程。
[0017] 使用頻域差對圖像集合進行重新編碼W及相應的代碼轉換和解碼操作的創新可 W被實現為方法的一部分、被適配成執行該方法的計算系統的一部分或存儲用于使計算系 統執行該方法的計算機可執行指令的有形計算機可讀介質的一部分。各創新可W結合地或 分開地使用。
[0018] 參考附圖閱讀W下詳細描述,將更清楚本發明的前述和其他目標、特征和優點。 [0019] 附圖簡述
[0020] 圖1是其中可實現所描述的一些實施例的示例計算系統的示圖。
[0021] 圖2是其中可實現所描述的一些實施例的示例云計算環境的示圖。
[0022] 圖3是基本圖像編碼器和基本圖像解碼器的示圖。
[0023] 圖4是結合其可實現所描述的一些實施例的通用圖像重新編碼工具的示圖。
[0024] 圖5是在圖4的圖像重新編碼工具中的示例預測圖像重新編碼器模塊的示圖。
[0025] 圖6是結合其可實現所描述的一些實施例的示例圖像重新編碼工具的示圖。
[0026] 圖7是用于使用頻域差來對圖像進行重新編碼的通用技術的流程圖。
[0027] 圖8是用于使用頻域差來對圖像集合中的圖像的塊進行重新編碼的示例技術的流 程圖。
[0028] 圖9是結合其可實現所描述的一些實施例的通用圖像代碼轉換(或解碼)工具的示 圖。
[0029] 圖10是在圖9的圖像代碼轉換(或解碼)工具中的示例預測圖像解碼器模塊的示 圖。
[0030] 圖11是結合其可實現所描述的一些實施例的示例圖像代碼轉換(或解碼)工具的 示圖。
[0031] 圖12是用于使用頻域差來對圖像進行代碼轉換(或解碼)的通用技術的流程圖。
[0032] 圖13是用于使用頻域差來對圖像集合中的圖像的塊進行代碼轉換(或解碼)的示 例技術的流程圖。
[0033] 詳細描述
[0034] 詳細描述呈現了在對經壓縮的圖像的集合進行重新編碼W及反轉運樣的重新編 碼的領域中的創新。例如,重新編碼工具計算(a)來自處于第一格式的經編碼的數據的塊的 經量化的系數和(b)該塊的預測的經量化的系數之間的頻域差,隨后對運些頻域差進行賭 編碼,從而產生針對經壓縮的圖像的處于第二格式的經編碼的數據。在一些示例實現中,重 新編碼可顯著地降低針對先前壓縮的圖像的存儲成本,而不會破壞圖像質量。在許多情況 下,重新編碼提供使比特率降低5%、10%或更多的無損壓縮(與針對處于第一格式的先前 壓縮的圖像的存儲成本相比)。
[0035] 隨后,可從處于第二格式的經編碼的數據中恢復處于第一格式的先前壓縮的圖 像。或者,處于第二格式的經編碼的數據可被解碼W重構運些圖像。
[0036] 雖然本文中描述的操作在各處被描述為由圖像編碼器、圖像代碼轉換器或圖像解 碼器來執行,但在許多情況中,運些操作可由另一類型的媒體處理工具(例如視頻編碼器、 視頻代碼轉換器或視頻解碼器)來執行。可針對諸如靜止圖像編碼或解碼、醫療掃描內容編 碼或解碼、多譜圖像內容編碼或解碼等之類的應用執行運些操作。
[0037] 本文中描述的一些創新是參考專用于肝EG標準的句法元素和操作來示出的。本文 中描述的創新還可被實現成針對其他標準或格式,諸如肝EG XR標準、肝EG 2000標準、針對 H. 264/AVC標準的帖內編碼/解碼、針對H. 265/皿VC標準的帖內編碼/解碼、針對VP8格式的 帖內編碼/解碼、針對VP9格式W及WebP格式的帖內編碼/解碼。
[0038] 如本文中所使用的,術語"塊"一般指用于頻率變換(或逆頻率變換)和量化(或逆 量化)的目的的值布置。即,"塊"是變換塊。用于運動補償或其他空間域視差補償的目的的 值布置被稱為運動分區或分區,但是術語"塊"也可被用來指示分區。對于給定塊(變換塊), 針對該塊的預測可使用相同大小的分區(分區大小=變換塊大小)來確定。或者,針對該塊 的預測可使用較大的分區來確定,在該情況下,分區為針對多個塊(變換塊)的預測提供經 預測的樣本值。或者,針對塊的預測可使用多個較小的分區來確定。
[0039] 在本文中描述的示例中,不同附圖中相同的參考標記指示相同的組件或模塊。取 決于上下文,給定組件或模塊可接受不同類型的信息作為輸入和/或產生不同類型的信息 作為輸出。
[0040] 更一般地,本文中描述的各示例的各種替代是可能的。例如,本文中描述的一些方 法可W通過改變描述的方法動作的順序、通過拆分、重復或忽略某些方法動作等來更改。所 公開的技術的各方面能夠被組合地或分開地使用。不同的實施例使用所描述的創新中的一 個或多個。本文中描述的一些創新解決了背景中指出的