用于視頻編碼和解碼的自適應傳遞函數的制作方法
【專利摘要】本發明提供了一種視頻編碼和解碼系統,該視頻編碼和解碼系統在編解碼器內實施自適應傳遞函數方法以用于信號表示。可針對輸入視頻的每個場景、序列、幀、或區域來動態確定用于表示人類視覺系統的有效動態范圍的聚焦動態范圍。可根據用于在編解碼器內進行編碼的傳遞函數來將視頻數據裁剪并量化到編解碼器的位深度中。該傳遞函數可與輸入視頻數據的傳遞函數相同,或者可以是編解碼器內部的傳遞函數。該經編碼的視頻數據可被解碼并擴展到一個或多個顯示器的動態范圍中。該自適應傳遞函數方法可使得編解碼器能夠針對信號的內部表示而使用更少的位,而在輸出中仍表示信號的整個動態范圍。
【專利說明】
用于視頻編碼和解碼的自適應傳遞函數
技術領域
[0001 ]本公開整體涉及數字視頻或圖像處理和顯示。
【背景技術】
[0002] 包括但不限于個人計算機系統、臺式計算機系統、膝上型電腦和筆記本式計算機、 平板電腦或平板設備、數碼相機、數字視頻錄像機、和移動電話或智能電話的各種設備可包 括可實施一種或多種視頻處理方法的軟件和/或硬件。例如,設備可包括可根據一個或多個 視頻處理方法接收和處理來自一個或多個源的數字視頻輸入并輸出經處理的視頻幀的裝 置(例如集成電路(1C),諸如片上系統(S0C)、或1C的子系統)。又如,可在設備上實施可根據 一個或多個視頻處理方法接收和處理來自一個或多個源的數字視頻輸入并將經處理的視 頻幀輸出至一個或多個目的地的軟件程序。
[0003] 例如,視頻編碼器可被實施為其中數字視頻輸入根據視頻編碼方法被編碼或轉換 為另一種格式例如壓縮視頻格式(諸如H. 264/高級視頻編碼(AVC)格式或H. 265高效視頻編 碼(HEVC)格式)的裝置或另選的軟件程序。又如,視頻解碼器可被實施為其中壓縮視頻格式 (諸如AVC或HEVC)的視頻被接收并根據視頻解碼方法被解碼或轉換為另一(解壓縮)格式例 如顯示設備所使用的顯示格式的裝置或另選的軟件程序。H.264/AVC標準被ITU-T公布于標 題為"ITU-T Recommendation Η.264:Advanced video coding for generic audiovisual services" 的文檔中。H. 265/HEVC標準由 ITU-T公布于標題為 "ITU-T Recommendation H.265:High Efficiency Video Coding"的文檔中。
[0004] 在許多系統中,裝置或軟件程序可實現視頻編碼器部件和視頻解碼器部件兩者; 諸如裝置或程序通常被稱為編解碼器。需注意,編解碼器可對視頻流中的視覺/圖像數據和 音頻/聲音數據兩者進行編碼/解碼。
[0005] 通常定義的動態范圍為信號諸如像聲音和光中的可改變量的最大可能值和最小 可能值之間的比率。在數字圖像和視頻處理中,擴展動態范圍或高動態范圍(HDR)成像是指 在電子圖像(例如,如在顯示屏或顯示設備上所顯示的)中產生比使用標準數字成像技術 (被稱為標準動態范圍或SDR成像)時獲得的亮度范圍更寬的亮度范圍的技術。
[0006] 電光傳遞函數(E0TF)可將數字代碼值映射到光值,例如映射到亮度值。通常被稱 為光電傳遞函數(0ETF)的逆向過程將光值映射到電子/數字值。E0TF和0ETF可被統稱為傳 遞函數。亮度的SI單位為坎每平方米(cd/m 2)。該單位的非SI術語為"NIT"。在標準動態范圍 (SDR)成像系統中,為了簡化編碼/解碼系統或編解碼器中的編碼過程和解碼過程,通常將 固定的傳遞函數例如固定的冪律伽馬傳遞函數用于視頻圖像內容的內部表示。隨著高動態 范圍(HDR)成像技術、系統和顯示器的出現,對于更加靈活的傳遞函數的需求也隨之產生。
【發明內容】
[0007] 本發明描述了視頻編碼和解碼系統和方法的實施方案,這些實施方案實施自適應 傳遞函數以用于視頻編碼和解碼系統或編解碼器內的視頻圖像內容內部表示。這些實施方 案可基于圖像數據的一個或多個特征(例如亮度、紋理等)在輸入視頻中動態地確定當前場 景、序列、幀或幀的區域的聚焦動態范圍,將輸入視頻動態范圍裁剪成聚焦范圍,然后根據 用于在編解碼器中表示視頻數據的傳遞函數來將裁剪范圍內的值從輸入視頻的位深度適 當地映射(例如,量化)到編解碼器的位深度。
[0008] 在實施方案中,可使用各種傳遞函數來表示編解碼器中的輸入視頻數據和聚焦范 圍視頻數據。在一些實施方案中,用于表示編解碼器中的視頻數據的傳遞函數可與用于表 示輸入視頻數據的傳遞函數相同。在一些實施方案中,可使用與用于表示輸入視頻數據的 傳遞函數(被稱為一級傳遞函數)不同的傳遞函數(被稱為內部傳遞函數或二級傳遞函數) 來表示編解碼器中的視頻數據。
[0009] 在實施方案中,由編碼器使用以用于場景、序列、幀、
[0010]或區域的聚焦范圍、傳遞函數、量化參數和其他格式的信息可例如由嵌入在輸出 位流中的元數據來發信號通知解碼器部件。在解碼器中,可根據場景、序列、幀、或視頻區域 的一個或多個被發信號通知的聚焦范圍來對編碼位流進行解碼并將其動態地擴展到目標 設備(例如,支持高動態范圍(HDR)的顯示器)的全動態范圍。
[0011] 通過使傳遞函數動態地適應輸入視頻數據,實施方案可允許利用比用于表示輸入 視頻數據時更少的位數在編解碼器中表示視頻數據,同時還允許編解碼器輸出視頻數據, 以使其擴展并填充HDR設備諸如支持HDR的顯示器的動態范圍。自適應傳遞函數方法的實施 方案可例如使得視頻編碼和解碼系統針對編解碼器內的視頻數據的內部表示和處理使用 10位或更少的位,而當將視頻輸出到HDR設備諸如支持HDR的顯示器時,例如使用12位或更 多位來表示視頻數據的擴展動態范圍或高動態范圍。因而,視頻編碼和解碼系統的自適應 傳遞函數方法的實施方案可簡化HDR技術的具體實施,并因此簡化其采用,在消費空間中尤 其如此。
【附圖說明】
[0012] 圖1示出了實施自適應傳遞函數的實施方案的示例性編解碼器或視頻編碼和解碼 系統。
[0013] 圖2示出了根據一些實施方案的將自適應傳遞函數方法應用于視頻輸入數據并生 成經編碼的視頻數據的示例性編碼器。
[0014] 圖3示出了根據一些實施方案的根據自適應傳遞函數方法來對經編碼的視頻數據 進行解碼并擴展京解碼的視頻數據以生成顯示格式視頻數據的示例性解碼器。
[0015] 圖4示出了根據一些實施方案的輸入視頻數據的示例性全范圍,并示出了視頻數 據的示例性聚焦范圍。
[0016] 圖5示出了根據一些實施方案的在聚焦范圍內映射N位輸入視頻數據以生成C位視 頻數據的示例。
[0017] 圖6以圖形方式示出了根據一些實施方案的將C位經解碼的視頻擴展到支持HDR的 設備的全動態范圍內以生成該設備的D位視頻數據的示例。
[0018] 圖7A至圖7C以圖形方式示出了根據自適應傳遞函數方法的實施方案的將不同的 聚焦范圍應用于視頻序列或視頻幀的不同部分。
[0019] 圖8為根據一些實施方案的將自適應傳遞函數方法應用于視頻輸入數據并生成經 編碼的視頻數據的視頻編碼方法的流程圖。
[0020] 圖9為根據一些實施方案的視頻解碼方法的流程圖,該方法根據自適應傳遞函數 方法對經編碼的視頻數據進行解碼并擴展經解碼的視頻數據以生成顯示格式視頻數據。
[0021] 圖10是片上系統(S0C)的一個實施方案的框圖,該S0C可被配置為實現本文所述的 系統和方法的各個方面。
[0022]圖11為可包括一個或多個S0C的系統的一個實施方案的框圖。
[0023] 圖12示出了根據一些實施方案的示例性計算機系統,該計算機系統可被配置為實 現本文所述的系統和方法的各個方面。
[0024] 圖13示出了根據一些實施方案的便攜式多功能設備的框圖。
[0025] 圖14描繪了根據一些實施方案的便攜式多功能設備。
[0026] 盡管本發明易受各種修改形式和替代形式的影響,但其具體實施方案在附圖中以 舉例方式示出并將在本文中詳細描述。然而,應當理解,附圖及其詳細描述并非旨在將本發 明限制為所公開的具體形式,恰恰相反,本發明旨在涵蓋落入本發明的實質和范圍的所有 修改形式、等同形式和替代形式。如在本申請中通篇所使用的那樣,以允許的意義(即,意味 著具有可能性)而非強制的意義(即,意味著必須)使用字詞"可能"。類似地,字詞"包括" ("include" "including" he "includes")意味著"包括但不限于"。
[0027] 各種單元、電路或其他部件可被描述為"被配置為"執行一項或多項任務。在此類 上下文中,"被配置為"是通常意味著"具有"在操作期間執行一項或多項任務的"電路"的結 構的寬泛表述。如此,即使在單元/電路/部件當前未接通時,單元/電路/部件也可被配置為 執行該任務。通常,形成與"被配置為"對應的結構的電路可包括硬件電路。類似地,為了方 便描述,可將各種單元/電路/部件描述為執行一項或多項任務。此類描述應當被解釋成包 括短語"被配置為"。詳述被配置為執行一項或多項任務的單元/電路/部件意在明確地不援 弓丨351].5.(:.§112,第六段對該單元/電路/部件的解釋。
【具體實施方式】
[0028] 本發明描述了視頻編碼和解碼系統和方法的實施方案,這些實施方案實施自適應 傳遞函數,以用于視頻編碼和解碼系統或編解碼器內的視頻圖像內容內部表示。這些實施 方案可允許在編碼與解碼處理過程期間使輸入視頻數據的動態范圍適應于編解碼器。在實 施方案中,傳遞函數可動態地適應于至編解碼器的各個場景、序列或輸入視頻的幀。在一些 實施方案中,可在幀的區域內使傳遞函數被動態地適應。這些實施方案可使傳遞函數動態 地適應于輸入視頻數據,僅保留在動態確定的人類視覺系統有效動態范圍(在本文中被稱 為聚焦動態范圍或僅被稱為聚焦范圍)內的信息,并且根據用于在編解碼器內進行處理的 傳遞函數來將聚焦范圍內的數據從輸入視頻的位深度映射到編解碼器的位深度。可擴展編 解碼器的輸出以填充輸出設備或目標設備的動態范圍,該輸出設備或目標設備包括但不限 于擴展動態范圍設備或高動態范圍(HDR)設備,諸如支持HDR的顯示器。圖1至圖3示出了在 其中可實施自適應傳遞函數方法的實施方案的示例性視頻編碼和解碼系統或編解碼器。 [0029]人類視覺系統整體上覆蓋明顯的動態范圍。然而,人類視覺系統趨于基于當前場 景或正在觀看的圖像適應并限制動態范圍,例如根據場景或圖像的亮度(照度)和紋理特 征。因此,盡管人類視覺系統的總動態范圍相當大,但視頻的給定場景、序列、幀或區域的有 效動態范圍可根據圖像特征而相當小,該圖像特征包括但不限于亮度和紋理。本文所述的 視頻編碼和解碼系統和方法的實施方案可利用人類視覺的這一特征,以根據當前場景、序 列、幀或區域的特征采用相似的策略,以用于動態地限制編解碼器內的范圍。在實施方案 中,根據當前正在處理的場景、序列、幀或區域的一個或多個特征(例如,亮度、紋理等),編 碼器部件或過程可將輸入視頻場景、序列、幀或區域的范圍(例如,亮度)動態地限制在人類 視覺系統有效動態范圍內和編解碼器的要求范圍(例如,位深度)內。這可例如通過依據樣 本值動態地確定輸入視頻中的當前場景、序列、幀或區域內的面積并將編解碼器的位深度 (例如,10位)聚焦到該范圍中來完成。在一些實施方案中,可在編碼器中通過將輸入視頻動 態范圍裁剪成該面積來執行聚焦,并且然后根據用于在編解碼器中表示視頻數據的傳遞函 數來將裁剪范圍(被稱為聚焦動態范圍或聚焦范圍)中的值從輸入視頻的位深度適當地映 射(例如,量化)到編解碼器的位深度。圖4和圖5以圖形方式示出了根據一些實施方案的針 對輸入視頻數據所確定的示例性聚焦范圍并且根據傳遞函數來將N位輸入視頻數據映射到 編解碼器的位深度。如本文所用,N位是指輸入視頻的位深度,C位是指用于表示編解碼器內 的視頻數據的位深度,并且D位是指解碼視頻的目標設備(例如,顯示設備)的位深度。
[0030] 在實施方案中,可使用各種傳遞函數來表示編解碼器中的輸入視頻數據和聚焦范 圍視頻數據。可用于在實施方案中表示視頻數據的傳遞函數的示例可包括但不限于:基于 伽馬的冪律傳遞函數、基于對數的傳遞函數、以及基于人類視覺感知的傳遞函數,諸如由 Dolby Laboratories, Inc提出的感知量化器(PQ)傳遞函數。在一些實施方案中,用于在編 解碼器中表示視頻數據的傳遞函數可與用于表示輸入視頻數據的傳遞函數相同。然而,在 其他實施方案中,可使用與用于表示輸入視頻數據的傳遞函數(被稱為一級傳遞函數)不同 的傳遞函數(被稱為內部或二級傳遞函數)來表示編解碼器中的視頻數據。相較于可使用一 級傳遞函數來完成,這樣可例如允許在編解碼器內以更高的精度來表示視頻數據(也可被 稱為視頻信號)。
[0031] 在實施方案中,編碼器用于場景、序列、幀或區域的聚焦范圍、傳遞函數、量化參數 和其他格式的信息可例如由嵌入在輸出位流中的元數據來發信號通知解碼器部件。在解碼 器處,可根據場景、序列、幀、或視頻區域的一個或多個被發信號通知的聚焦范圍來對編碼 位流進行解碼并將其動態地擴展到目標設備諸如HDR設備(例如,支持HDR的顯示器)的全動 態范圍。圖6以圖形方式示出了根據一些實施方案將經解碼的視頻數據擴展到HDR設備的全 動態范圍中。
[0032] 通過使傳遞函數動態地適應輸入視頻數據,實施方案可允許利用比用于表示輸入 視頻數據時更少的位數在編解碼器中表示視頻數據,同時還允許編解碼器輸出視頻數據, 以使其擴展并填充HDR設備諸如支持HDR的顯示器的動態范圍。自適應傳遞函數方法的實施 方案可例如使得視頻編碼和解碼系統針對編解碼器內的視頻數據的內部表示和處理使用 10位或更少的位,而當將視頻輸出到HDR設備諸如支持HDR的顯示器時,例如使用12位或更 多位來表示視頻數據的擴展動態范圍或高動態范圍。因而,視頻編碼和解碼系統的自適應 傳遞函數方法的實施方案可簡化HDR技術的具體實施,并因此簡化其采用,在消費空間中尤 其如此。
[0033] 本文所述的自適應傳遞函數方法可被應用于視頻信號的所有顏色分量,或者另選 地可分別被應用于視頻信號的亮度分量和色度分量中的一者或兩者。
[0034] 圖1示出了實施自適應傳遞函數的實施方案的示例性視頻編碼和解碼系統或編解 碼器100。在實施方案中,根據自適應傳遞函數方法,編解碼器100的自適應傳遞函數110分 量或模塊可將N位(例如,12位、14位、16位等)視頻輸入數據102轉換成C位(例如,10位或更 少位)視頻輸入數據112,并轉換到編解碼器100的編碼器120部件或模塊。在一些實施方案 中,為了將N位視頻輸入數據102轉換成C位視頻輸入數據112,自適應傳遞函數110可在N位 視頻輸入數據102中的當前場景、序列、幀或區域內依據樣本值來動態地確定面積并將C位 聚焦到該面積中。在一些實施方案中,可在自適應傳遞函數110中通過將N位視頻輸入數據 102裁剪成確定的聚焦范圍來進行該聚焦,然后根據用于在編碼器120中表示視頻數據從而 為編碼器120生成C位視頻輸入數據112的傳遞函數來將聚焦范圍中的N位值適當地映射(例 如,量化)到編解碼器的位深度。
[0035] 在一些實施方案中,自適應傳遞函數110也可生成格式元數據114作為到編碼器 120的輸出。格式元數據114可將自適應傳遞函數方法描述為被應用于輸入視頻數據102。例 如,格式元數據114可指示確定的聚焦范圍、用于將視頻數據映射到編碼器位深度的參數, 并且還可包含有關被應用于聚焦范圍的傳遞函數的信息。
[0036]在一些實施方案中,編碼器120然后可對C位視頻輸入數據112進行編碼,以生成編 碼流122作為輸出。在一些實施方案中,編碼器120可根據壓縮視頻格式諸如H. 264/高級視 頻編碼(AVC)格式或Η. 265/高效視頻編碼(HEVC)格式來對C位視頻輸入數據112進行編碼。 然而,也可使用其他編碼格式。在一些實施方案中,編碼器120可例如將格式元數據114嵌入 到輸出流122中,使得可將格式元數據114提供給解碼器130部件。輸出編碼流122可被存儲 到存儲器,或者另選地可直接被發送到編解碼器100的解碼器130部件或模塊。圖2更詳細地 示出了視頻編碼和解碼系統或編解碼器100的示例性編碼器部件。
[0037] 解碼器130可讀取或接收編碼流122并對該編碼流122進行解碼,以生成C位解碼流 132作為到編解碼器100的逆向自適應傳遞函數140部件或模塊的輸出。在一些實施方案中, 將自適應傳遞函數方法描述為被自適應傳遞函數110應用于輸入視頻數據102的格式元數 據134可從輸入流122中被提取并被傳遞到逆向自適應傳遞函數140。該逆向自適應傳遞函 數140可根據格式元數據134和顯示信息144來轉換C位解碼流132,以向一個或多個顯示器 190或其他設備生成D位(例如,12位、14位、16位等)HDR輸出142。圖3更詳細地示出了視頻編 碼和解碼系統或編解碼器1〇〇的示例性解碼器部件。
[0038] 如本文所述的實施自適應傳遞函數方法的視頻編碼和解碼系統或編解碼器100的 實施方案可例如在包括一個或多個圖像捕獲設備和/或一個或多個顯示設備的設備或系統 中實現。圖像捕獲設備可以是包括能夠捕獲數字圖像或視頻的光學傳感器或光傳感器的任 何設備。圖像捕獲設備可包括但不限于視頻攝像機和靜態圖像相機、以及可捕獲視頻和單 幅圖像兩者的圖像捕獲設備。圖像捕獲設備可以是獨立的設備或可以是被集成到其他設備 中的相機,該其他設備包括但不限于智能電話、移動電話、PDA、平板電腦或平板設備、多功 能設備、計算設備、膝上型計算機、筆記本式計算機、上網本計算機、臺式計算機等等。需注 意,圖像捕獲設備可包括適用于小型設備諸如移動電話、PDA和平板設備的小外形相機。顯 示器或顯示設備可包括被集成到其他設備中的顯示屏或面板,所述其他設備包括但不限于 智能電話、移動電話、PDA、平板電腦或平板設備、多功能設備、計算設備、膝上型計算機、筆 記本式計算機、上網本計算機、臺式計算機等等。顯示設備還可包括視頻監視器、投影儀、或 者一般來講可顯示或投映數字圖像和/或數字視頻的任何設備。顯示器或顯示設備可使用 IXD(液晶顯示器)技術、Lro(發光聚合物顯示器)技術或LED(發光二極管)技術,盡管也可使 用其他顯示技術。
[0039] 圖10至圖14示出了可在其中實現實施方案的設備的非限制性示例。包括圖像捕獲 設備和/或顯示設備的設備或系統可包括用于實現如本文所述的用于處理視頻數據的功能 中的至少一些功能的硬件和/或軟件。在一些實施方案中,如本文所述的功能的一部分可在 一個設備上實現,而另一部分可在另一個設備上實現。例如,在一些實施方案中,包括圖像 捕獲設備的設備可實現傳感器流水線,該傳感器流水線處理并壓縮(即,編碼)經由光傳感 器捕獲的圖像或視頻,而包括顯示面板或顯示屏的另一個設備可實現顯示器流水線,該顯 示器流水線接收并處理經壓縮的圖像(即,解碼),以用于對顯示或屏幕的顯示。在一些實施 方案中,如本文所述的功能中的至少一些功能可由可用于設備的片上系統(S0C)的一個或 多個部件或模塊實現,該設備包括但不限于多功能設備、智能電話、平板電腦或平板設備、 以及其他便攜式計算設備,諸如膝上型計算機、筆記本式計算機和上網本計算機。圖10示出 了示例性S0C,并且圖11示出了實現S0C的示例性設備。圖12示出了可實現本文所述的方法 和裝置的示例性計算機系統。圖13和圖14示出了可實現本文所述的方法和裝置的示例性多 功能設備。
[0040] 實施方案現在本文中通常被描述作為處理視頻。然而,作為處理視頻幀或視頻序 列的替代或補充,實施方案還可被應用于處理單幅圖像或靜態圖像。因此,應當理解,在本 文中使用"視頻"、"視頻幀"、"幀"等時,這些術語一般可指捕獲的數字圖像。
[0041] 圖2示出了根據一些實施方案將自適應傳遞函數方法應用于視頻輸入數據202并 生成經編碼的視頻數據232作為輸出的示例性編碼器200。如圖1所示,編碼器200可例如為 編解碼器100的部件或模塊。在實施方案中,編碼器200的自適應傳遞函數部件或模塊210可 根據傳遞函數方法來將N位(例如,12位、14位、16位等)視頻輸入數據202轉換成C位(例如, 10位或更少位)數據212,并將C位數據212輸出到編碼器200的處理流水線220部件。在一些 實施方案中,為了將N位視頻輸入數據202轉換為C位視頻數據212,自適應傳遞函數模塊210 可在N位視頻輸入數據202中的當前場景、序列、幀或區域內依據樣本值來動態地確定面積 并將C位聚焦到該面積中。在一些實施方案中,可在自適應傳遞函數模塊210中通過將N位視 頻輸入數據202的動態范圍裁剪成確定的聚焦范圍來進行該聚焦,然后根據用于在編碼器 200中表示視頻數據的傳遞函數來將聚焦范圍中的N位值適當地映射(例如,量化)到C位。在 一些實施方案中,自適應傳遞函數模塊210也可生成格式元數據214作為到編碼器220的輸 出。格式元數據214可將自適應傳遞函數方法描述為被應用于輸入視頻數據202。例如,格式 元數據214可指示用于將視頻數據映射到編碼器位深度的所確定的聚焦范圍參數,并且還 可包含有關被應用于聚焦范圍的傳遞函數的信息。
[0042]在一些實施方案中,編碼器200然后可對由自適應傳遞函數模塊210生成的C位視 頻輸入數據212進行編碼,以生成編碼流232作為輸出。在一些實施方案中,編碼器120可根 據壓縮視頻格式諸如H. 264/高級視頻編碼(AVC)格式或H. 265/高效視頻編碼(HEVC)格式來 對C位視頻輸入數據112進行編碼。然而,也可使用其他編碼格式。
[0043]在一些實施方案中,根據圖片元素塊(稱為像素或圖元)來將輸入視頻幀細分到編 碼器200中并在其中進行處理。例如,被稱為宏塊的16 X 16像素塊可被用于Η. 264編碼。HEVC 編碼使用可在16X16像素到64X64像素塊的范圍內變化的被稱為編碼樹單元(CTU)的塊。 CTU可被劃分成編碼單元(CU),并且可被進一步細分為可在從64X64像素降低到4X4像素 塊的尺寸內變化的預測單元(PU)。在一些實施方案中,視頻輸入數據212可被分為亮度和色 度分量,并且所述亮度與色度分量可在編碼器的一個或多個部件或階段分別進行處理。 [0044] 在圖2所示的示例性編碼器200中,該編碼器200包括處理流水線220部件和熵編碼 230部件。該處理流水線220可包括處理視頻輸入數據212的多個部件或階段。該處理流水線 220可例如實施幀內和幀間估計222、模式決定224、運動補償和重建226操作作為一個或多 個階段或部件。
[0045] 下文描述了示例性處理流水線220在高水平下的操作,而并非旨在進行限制。在一 些實施方案中,幀內和幀間估計222可確定要在對輸入到流水線的塊進行編碼的過程中使 用的先前編碼的像素塊。在一些視頻編碼技術諸如H. 264編碼中,每個輸入塊可使用當前幀 內已編碼的像素塊來進行編碼。確定這些塊的過程可被稱為幀內估計或被簡稱為內估計。 在一些視頻編碼技術諸如H. 264和H. 265編碼中,也可使用來自一個或多個先前重建的幀 (被稱為參考幀,在圖2中被示出為參考數據240)的像素塊來對塊進行編碼。在一些實施方 案中,由編碼器流水線輸出的經重建和編碼的幀可被解碼并存儲到參考數據240以用作參 考幀。在一些實施方案中,被存儲在用于重建當前幀的參考數據240中的參考幀可包括在正 被處理的視頻中在時間上先于當前幀發生的一個或多個重建幀、和/或在正被處理的視頻 中在時間上晚于當前幀發生的一個或多個重建幀。尋找參考幀中的匹配像素塊的過程可被 稱為幀間估計,或更一般地被稱為運動估計。在一些實施方案中,模式決定224可接收來自 幀間和幀內估計222的針對給定塊的輸出,并確定最佳預測模式(例如,幀間預測模式或幀 內預測模式)和塊的對應運動矢量。該信息被傳遞到運動補償和重建226。
[0046] 運動補償和重建226的操作可取決于從模式決定224接收的最佳模式。如果最佳模 式是幀間預測,則運動補償部件獲得與運動矢量對應的參考幀塊,并將這些塊組合成預測 塊。然后,運動補償部件向預測塊應用加權預測,以生成將被傳遞至重建部件的最終塊預 測。在加權預測中,可根據一個或多個加權參數對來自參考數據的值進行加權,并以偏移值 移位以生成將用于對當前塊進行編碼的預測數據。如果最佳模式是幀內預測,則使用一個 或多個相鄰塊進行幀內預測,以生成在流水線的該階段處正被處理的當前塊的預測塊。
[0047] 重建部件根據運動補償輸出來執行當前塊的塊(例如,宏塊)重建操作。該重建操 作可例如包括正向變換和量化(FTQ)操作。運動補償與重建226可將經變換和量化的數據輸 出至編碼器200的熵編碼230部件。
[0048]熵編碼230部件可例如應用熵編碼技術來壓縮由流水線220輸出的經變換和量化 的數據,從而生成經編碼的輸出流232。可被使用的示例性熵編碼技術可包括但不限于霍夫 曼編碼技術、CAVLC(上下文自適應可變長編碼)和CABAC(上下文自適應二進制算術編碼)。 在一些實施方案中,編碼器200可將格式元數據214嵌入到經編碼的輸出流232中,使得可將 格式元數據214提供給解碼器。該輸出編碼流232可被存儲到存儲器,或者另選地可直接被 發送到解碼器部件。
[0049]參考數據240也可由流水線220輸出并被存儲到存儲器。參考數據240可包括但不 限于可例如在流水線220的運動估計以及運動補償和重建操作中進行訪問的一個或多個先 前編碼的幀(被稱為參考幀)。
[0050]在一些實施方案中,編碼器200可包括可被配置為在處理當前幀時將從參考數據 240獲得的參考幀數據重新格式化以由流水線220部件使用的重新格式化250部件。重新格 式化250可例如涉及將參考幀數據從用于編碼參考幀的聚焦范圍/傳遞函數轉換到將用于 對當前幀進行編碼的聚焦范圍/傳遞函數。例如,參考幀亮度的聚焦范圍/傳遞函數映射可 從以c(例如,10)位表示的0.05cd/m 2到1000cd/m2。對于當前幀,聚焦范圍可由于較亮的圖像 內容而被擴展;例如,聚焦范圍可被擴展或增大至2000cd/m 2。因此,當前幀亮度的聚焦范 圍/傳遞函數映射可為〇.〇5cd/m2至2000cd/m 2。為了在流水線220中(例如,在運動估計操作 中)使用參考幀數據,可根據由重新格式化250部件用于編碼當前幀的聚焦范圍/傳遞函數 來將參考幀數據重新格式化。
[0051 ] 在給定示例中,重新格式化250部件可將參考幀數據從0.05cd/m2轉換至1000cd/m2 范圍,在該范圍內將其從0.05cd/m2范圍重建至用于當前幀的2000cd/m2范圍。在該示例中, 由于參考幀僅包含從〇.〇5cd/m 2到lOOOcd/m2的數據,因此在重新格式化的參考幀數據的C位 表示中的一些代碼字詞(例如,表示大于l〇〇〇 cd/m2的值的代碼字詞)可能不會用于重新格 式化的參考數據中。然而,多個值被映射到當前聚焦范圍以用于預測或其他操作。
[0052]如從參考數據240返回到自適應傳遞函數模塊210的箭頭所示的,在一些實施方案 中,自適應傳遞函數模塊210可使用來自一個或多個先前處理的幀的自適應傳遞函數信息 來確定在流水線220中將要處理的當前幀的聚焦范圍/傳遞函數。
[0053]圖3示出了根據一些實施方案的根據自適應傳遞函數方法來對經編碼的視頻數據 302進行解碼并擴展經解碼的視頻數據322以生成顯示格式視頻數據332的示例性解碼器 300。如圖1所示,解碼器300可例如為編解碼器100的部件或模塊。在圖3所示的示例性解碼 器300中,解碼器300包括熵解碼310部件、逆向量化和變換320部件、以及逆向自適應傳遞函 數模塊330。熵解碼310部件可例如應用熵解碼技術來解壓由編碼器(例如,圖2所示的編碼 器200)輸出的編碼流302。逆向量化和變換320部件對由熵解碼310輸出的數據進行逆向量 化和變換操作,以生成C位解碼流322作為到解碼器300的逆向自適應傳遞函數模塊330的輸 出。在一些實施方案中,將自適應傳遞函數方法描述為應用于當前場景、序列、幀或區域的 格式元數據324可從輸入流302中被提取并被傳遞到逆向自適應傳遞函數模塊330。逆向自 適應傳遞函數模塊330可根據格式元數據324和顯示信息392來擴展C位解碼流322,以向一 個或多個顯示器390或其他設備生成D位(例如,12位、14位、16位等)HDR輸出332。
[0054]圖4至圖6以圖形方式示出了根據一些實施方案的確定N位輸入視頻數據的示例性 聚焦范圍,根據傳遞函數來將輸入視頻數據映射到在編解碼器內可用的C位,并且將經解碼 的視頻擴展到HDR設備的全動態范圍以生成該設備的D位視頻數據。
[0055]圖4示出了根據一些實施方案的N位輸入視頻數據的示例性全動態范圍,并示出了 針對輸入視頻數據確定的示例性聚焦范圍。在圖4中,縱軸表示輸入視頻數據中的N位(例 如,12位、14位、16位等)代碼值。橫軸表示輸入視頻數據中的亮度的動態范圍,在該示例中 為0cd/m 2-10000cd/m2,其中cd/m2(坎每平方米)為亮度的SI單位。該單位的非SI術語為 "祖1'"。該曲線表示輸入視頻數據的示例性傳遞函數。聚焦范圍(在該示例中為2000(:(1/ 1112-4000cd/m2)表示根據相應視頻數據的一個或多個特征(例如,亮度、紋理等)而確定的當前 場景、序列、幀或區域的人類視覺系統有效動態范圍。正如可看出的那樣,在該示例中,聚焦 范圍由N位代碼值的比率(約1/8)來表示。需注意,針對視頻流內的不同場景、序列、幀或區 域可確定不同的聚焦范圍,如圖7A至圖7C所示的。
[0056]圖5示出了根據一些實施方案的在所確定的聚焦范圍內映射N位輸入視頻數據以 在編解碼器內生成C位視頻數據的示例。在圖5中,縱軸表示在編解碼器中可用的C位(例如, 12位、10位、8位等)代碼值。橫軸示出了將要被映射到C位代碼值的亮度值的聚焦范圍(在該 示例中為2000Cd/m 2-4000cd/m2)。曲線表示用于表示編碼內的聚焦范圍數據的示例性傳遞 函數。在一些實施方案中,用于表示編解碼器中的視頻數據的傳遞函數可與用于表示輸入 視頻數據的傳遞函數相同。然而,在其他實施方案中,可使用與用于表示輸入視頻數據的傳 遞函數(被稱為一級傳遞函數)不同的傳遞函數(被稱為內部或二級傳遞函數)來表示編解 碼器中的視頻數據。相較于使用一級傳遞函數,這樣可例如允許在編解碼器內以更高的精 度來表示視頻信號的聚焦范圍。
[0057]圖6示出了根據一些實施方案的將C位解碼視頻擴展到支持HDR的設備的動態范圍 中以生成該設備的D位視頻數據的示例。在圖6中,縱軸表示從解碼器(例如,圖3所示的解碼 器300)輸出的視頻數據中的D位(例如,12位、14位、16位等)代碼值。橫軸表示由解碼器向其 輸出D位視頻數據的顯示設備所支持的亮度的動態范圍;在該示例中,所示出的動態范圍為 0Cd/m2-10000cd/m2。曲線表示顯示設備的示例性傳遞函數。編碼視頻信號被解碼器解碼之 后,用于編解碼器中的信號內部表示的聚焦范圍從C位表示重新映射到更寬的動態范圍以 及顯示設備的D位表示。需注意,針對視頻流內的不同的場景、序列、幀或區域可編碼不同的 聚焦范圍,如圖7A至圖7C所示。在一些實施方案中,可將格式元數據提供給編碼視頻流中的 或與該編碼視頻流一起的解碼器,該編碼視頻流指示用于對每個場景、序列、幀或區域進行 編碼的聚焦范圍。在一些實施方案中,該元數據還可包括用于將視頻數據映射到編解碼器 的位深度的一個或多個參數。在一些實施方案中,該元數據還可包括有關用于在編解碼器 中表示聚焦范圍數據的內部傳遞函數的信息。該元數據可被解碼器用于將聚焦范圍數據從 C位表示重新映射到更寬的動態范圍以及顯示設備的D位表示。
[0058] 圖7A至圖7C以圖形方式示出了根據自適應傳遞函數方法的實施方案的將不同的 聚焦范圍應用于視頻序列或視頻幀的不同部分。
[0059] 圖7A以圖形方式示出了根據自適應傳遞函數方法的一些實施方案來將不同的聚 焦范圍應用于輸入視頻的不同場景或序列。在該示例中,動態地確定聚焦范圍710A并將其 用于編碼幀700A-700E,并且動態地確定聚焦范圍710B并將其用于編碼幀700F-700G。幀 700A-700E和幀700F-700H可例如表示視頻內的不同場景,或者可表示視頻中的多個場景內 的或跨多個場景的幀的不同序列。
[0060] 圖7B以圖形方式示出了根據自適應傳遞函數方法的一些實施方案來將不同的聚 焦范圍應用于輸入視頻的每個幀。在該示例中,動態地確定聚焦范圍710C并將其用于編碼 幀7001,動態地確定聚焦范圍710D并將其用于編碼幀700J,并且動態地確定聚焦范圍710E 并將其用于編碼幀700K。
[0061] 圖7C以圖形方式示出了根據自適應傳遞函數方法的一些實施方案來將不同的聚 焦范圍應用于視頻幀的不同區域。如圖7A和圖7B所示,在一些實施方案中,可將自適應傳遞 函數方法應用于幀、場景或序列。然而,在一些實施方案中,除此之外或作為替代,自適應傳 遞函數方法可被應用于幀內的兩個或更多個區域702,如圖7C所示。在該示例中,動態地確 定聚焦范圍710F并將其用于對幀700L的區域702A進行編碼,動態地確定聚焦范圍710G并將 其用于對幀700L的區域702B進行編碼,并且動態地確定聚焦范圍710H并將其用于對幀700L 的區域702C進行編碼。在各種實施方案中,將要根據自適應傳遞函數方法進行編碼的區域 702可為矩形或者可具有其他形狀,包括但不限于隨意確定的不規則形狀。在一些實施方案 中,每個幀中可存在將要根據自適應傳遞函數方法進行編碼的固定數量的區域702。在一些 實施方案中,可針對每個幀、場景或序列來確定將要根據自適應傳遞函數方法進行編碼的 區域702的數量和/或區域702的形狀。在一些實施方案中,由編碼器生成并被傳遞到解碼器 的格式元數據可指示聚焦范圍、量化參數、以及用于對一個或多個幀700中的每個區域702 進行編碼的其他信息。在其中在編解碼器內使用二級傳遞函數或內部傳遞函數的實施方案 中,該格式元數據可包含用于從二級傳遞函數轉換到一級傳遞函數的信息。在區域702的數 量可變化的實施方案中,對區域702的實際數量的指示可被包含在被傳遞到解碼器的元數 據中。在一些實施方案中,區域702的坐標和形狀信息還可被包含在被傳遞到解碼器的元數 據中。
[0062]在視頻內容中,在正被處理的輸入視頻中從一個區域或幀到下一個區域或幀時, 在自適應傳遞函數方法中所使用的各種參數(例如,聚焦范圍、量化參數等)可以是相似的, 在場景內尤其如此。因此,在一些實施方案中,自適應傳遞函數方法可例如通過利用編解碼 器諸如AVC編解碼器和HEVC編解碼器中的加權預測過程來在編碼器中提供對這些自適應傳 遞函數參數中的一個或多個自適應傳遞函數參數的幀內(空間)預測和/或幀間(時間)預 測。在幀間(時間)預測中,來自一個或多個在時間上過去的或未來的幀的先前處理的參考 數據可用于針對當前幀中的內容來預測一個或多個參數。在幀內(空間)預測中,來自幀內 的一個或多個相鄰塊或區域的數據可用于針對當前塊或區域中的內容來預測一個或多個 參數。
[0063] 圖8為根據一些實施方案將自適應傳遞函數方法應用于視頻輸入數據并生成經編 碼的視頻數據的視頻編碼方法的高水平流程圖。如圖8的800處所指出的那樣,可接收N位 (例如,12位、14位、16位等)視頻數據以用于編碼。在一些實施方案中,視頻流的幀由編碼器 順序處理。在一些實施方案中,根據像素塊(例如宏塊、CU、PU或CTU)來將輸入視頻幀細分到 編碼器中并由其進行處理。
[0064] 如圖8的802處所指出的那樣,可確定輸入視頻數據的聚焦范圍。在一些實施方案 中,可動態地確定被輸入到編碼器的視頻的每個場景、序列或幀的聚焦范圍。在一些實施方 案中,可動態地確定幀內兩個或更多個區域中的每個區域的聚焦范圍。在一些實施方案中, 可根據正被處理的當前場景、序列、幀或區域的一個或多個特征(例如,亮度、紋理等)來確 定聚焦范圍。聚焦范圍表示針對當前場景、序列、幀或區域中的圖像數據(例如,亮度)的人 類視覺系統的有效動態范圍。例如,如果輸入視頻數據中的亮度動態范圍為Ocd/m 2-10000cd/m2,則基于各種場景、序列、幀或區域的特定特征的示例性聚焦范圍可為2000cd/ m2-4000cd/m2、0cd/m2-1000cd/m2、1000cd/m 2_2500cd/m2 等等。圖 4以圖形方式不出 了根據一 些實施方案的針對N位輸入視頻數據所確定的示例性聚焦范圍。
[0065] 如圖8的804處所指出的那樣,可根據傳遞函數來將聚焦范圍內的N位視頻數據映 射到C位視頻數據。在一些實施方案中,可根據所確定的聚焦范圍來對輸入視頻數據進行裁 剪,然后可根據用于在編碼器中表示視頻數據的傳遞函數來將裁剪的數據值適當地映射 (例如,量化)到編碼器中可用的C位。圖5根據一些實施方案以圖形方式示出了根據傳遞函 數的示例性聚焦范圍內的N位輸入視頻數據到編碼器中可用的C位的示例性映射。在實施方 案中,可使用各種傳遞函數來表示編碼器中的N位輸入視頻數據和C位視頻數據。可用于在 實施方案中表示視頻數據的傳遞函數的示例可包括但不限于基于伽馬的冪律傳遞函數、基 于對數的傳遞函數、基于人類視覺感知的傳遞函數諸如PQ傳遞函數。在一些實施方案中,用 于表示編碼器中的C位視頻數據的傳遞函數可與用于表示N位輸入視頻數據的傳遞函數相 同。然而,在其他實施方案中,可根據一級傳遞函數來表示輸入視頻數據,并且可使用不同 的(二級)傳遞函數來表示編碼器中的視頻數據。相較于使用一級傳遞函數時可能具有的精 度,該二級傳遞函數可例如在編碼器內以更高的精度來表示視頻信號。
[0066]如圖8的元素806所示,只要還有待處理的N位輸入視頻數據(例如,場景、序列、幀 或區域),在元素800至元素804處執行的自適應傳遞函數處理便將迭代進行。如圖8的810處 所指出的那樣,在元素800至元素804處通過自適應傳遞函數方法輸出的每單位C位視頻數 據(例如,場景、序列、幀或區域)被輸入到編碼器并由其進行處理。如先前所提及,在一些實 施方案中,N位輸入視頻數據可細分到自適應傳遞函數模塊或部件中并由其進行處理,然后 根據像素塊(例如,宏塊、CU、PU或CTU)作為C位視頻數據傳遞給編碼器。
[0067] 如圖8的810處所指出的那樣,編碼器的一個或多個部件可處理C位視頻數據,以生 成經編碼的(和經壓縮的)視頻數據輸出(例如,CAVLC輸出或CABAC輸出)。在一些實施方案 中,該編碼器可根據壓縮視頻格式諸如H. 264/AVC格式或H. 265/HEVC格式來對C位視頻輸入 數據進行編碼。然而,也可使用其他編碼格式。在一些實施方案中,用于對每個場景、序列、 幀或區域進行編碼的聚焦范圍、傳遞函數、量化參數和其他格式信息可作為元數據嵌入編 碼的輸出流,或可通過其他方式發信號通知一個或多個解碼器。圖2的編碼器200示出了用 于處理C位視頻數據以生成經編碼的輸出流的示例性編碼器。在一些具體實施中,包括元數 據的經編碼的輸出流可例如經由直接存儲器訪問(DMA)被寫入存儲器。在一些具體實施中, 作為將輸出流和元數據寫入存儲器的替代或補充,可將經編碼的輸出流和元數據直接發送 到至少一個解碼器。可在與實施編碼器的設備和裝置相同的或不同的設備和裝置上實施解 碼器。
[0068] 圖9為根據一些實施方案的視頻解碼方法的高水平流程圖,該方法根據自適應傳 遞函數方法來對經編碼的視頻數據進行解碼并擴展該經解碼的視頻數據,以生成顯示格式 視頻數據。如圖9的900處所指出的那樣,解碼器可獲得經編碼的數據(例如,經CAVLC或 CABAC編碼并壓縮的數據)。可例如從存儲器讀取、從編碼器接收、或以其他方式來獲取經編 碼的數據。如圖9的902處所指出的那樣,解碼器可對經編碼的數據進行解碼以生成經解碼 的C位視頻數據和格式元數據。在一些實施方案中,解碼器可根據壓縮視頻格式諸如Η. 264/ AVC格式或H. 265/HEVC格式來對經編碼的數據進行解碼。然而,也可使用其他編碼/解碼格 式。從經編碼的數據中提取的格式元數據可例如包括聚焦范圍、傳遞函數、量化參數和用于 對每個場景、序列、幀或區域進行編碼的其他格式信息。
[0069] 如圖9的元素904所示,只要存在經編碼的數據,則在900和902處執行的解碼便可 繼續進行。如圖9的910處所指出的那樣,可根據逆向自適應傳遞函數方法輸出并處理由解 碼器解碼的每個單位解碼數據(例如,每個場景、序列、幀或區域)。從經編碼的數據中提取 的格式元數據的至少一部分還可被輸出至逆向自適應傳遞函數方法。
[0070] 如圖9的910處所指出的那樣,逆向自適應傳遞函數方法可從聚焦范圍動態地擴展 經解碼的C位視頻數據,以生成全動態范圍的D位視頻數據,以用于輸出到目標設備諸如支 持HDR的顯示設備。對于給定的場景、序列、幀或區域,可根據由解碼器從經編碼的數據中提 取的相應格式元數據來動態地進行擴展。圖6以圖形方式示出了根據一些實施方案將經解 碼的視頻數據擴展到HDR設備的全動態范圍中
[0071] 一級傳遞函數和二級傳遞函數
[0072] 可用于在如本文所述的自適應傳遞函數方法的實施方案中表示視頻數據的傳遞 函數的示例可包括但不限于基于伽馬的冪律傳遞函數、對數(基于對數的)傳遞函數、以及 基于人類視覺感知的傳遞函數,諸如由Dolby Laboratories, Inc提出的感知量化器(PQ)傳 遞函數。
[0073] 在一些實施方案中,用于表示編解碼器中的視頻數據的傳遞函數可與用于表示輸 入視頻數據的傳遞函數(稱為一級傳遞函數)相同。在這些實施方案中,可根據針對場景、序 列、幀或區域確定的聚焦范圍來對輸入視頻數據進行裁剪,然后根據一級傳遞函數來將其 映射(例如,量化)到編解碼器的可用位中。可向解碼器發信號通知聚焦范圍、裁剪和映射 (例如,量化)參數例如作為輸出編碼流中的元數據,使得在解碼器上可執行逆向自適應傳 遞函數方法,以生成設備(例如,支持HDR的顯示器)的全范圍視頻數據。
[0074] 然而,在一些實施方案中,可使用不同于一級傳遞函數的傳遞函數(被稱為內部傳 遞函數或二級傳遞函數)來表示編解碼器內的視頻數據。在這些實施方案中,可將輸入視頻 數據裁剪為針對場景、序列、幀或區域所確定的聚焦范圍,然后根據二級傳遞函數來將其映 射、縮放或量化到編解碼器的可用位中。相較于使用一級傳遞函數時可能具有的精度,二級 傳遞函數可例如允許在編解碼器內以更高的精度來表示視頻信號。在這些實施方案中,除 了聚焦范圍、裁剪和映射(例如,量化)參數,還可向解碼器發信號通知有關如何將視頻數據 從二級傳遞函數轉換到一級傳遞函數的信息,例如作為輸出流中的元數據。該信息可包含 但不限于二級傳遞函數的類型(例如,冪律伽馬傳遞函數、對數傳遞函數、PQ傳遞函數等)和 傳遞函數的一個或多個控制參數。在一些實施方案中,也可發信號通知用于描述一級傳遞 函數的信息。
[0075] 在自適應傳遞函數方法的一些實施方案中,在編解碼器內使用的內部傳遞函數或 二級傳遞函數可為不連續傳遞函數表示,其中可保留內部表示的原傳遞函數或一級傳遞函 數的一個或多個部分,而內部表示的其余部分采用不同的傳遞函數。在這些實施方案中,可 例如使用表格表示在輸出流中精確描述并發信號通知所保留的一級傳遞函數的一個或多 個區域。也可發信號通知有關不同傳遞函數的信息。
[0076] 如圖7A至圖7C所示,可在幀內在幀水平或區域水平上執行自適應傳遞函數方法的 實施方案。因此,幀內相鄰或鄰近的編碼和解碼的視頻幀或區域可具有明顯不同的傳遞函 數表示,其可例如對編碼具有負面影響(例如,運動估計、運動補償和重建),因為正在進行 編碼的當前幀或區域的傳遞函數表示可與可用于編碼過程的相鄰幀或區域的傳遞函數表 示明顯不同。然而,在一些實施方案中,可在使用編碼格式諸如高級視頻編碼(AVC)和高效 率視頻編(HEVC)格式的編解碼器中提供的加權預測可用于大幅提高編碼效率。在這些實施 方案中,可為可用于加權預測過程以調整傳遞函數表示中的差異的幀或區域提供加權參 數。該加權參數可被發信號通知,例如通過在幀或塊元數據中包含該參數。例如,在AVC或 HEVC編碼器中,可在切片標頭元數據中發信號通知加權參數,并可通過改變AVC中宏塊內的 參考索引或HEVC中預測單元(PU)內的參考索引來選擇該加權參數。在一些實施方案中,加 權信息可根據塊明確地發信號通知,這與切片標頭部分相關或不相關。例如,在一些實施方 案中,可在切片標頭中發信號通知一級權重或主權重,并具有可用于調整在塊水平下發信 號通知的一級權重的δ或差異。在一些實施方案中,加權參數還可包含顏色加權信息。在一 些實施方案中,這些加權參數可用于幀內預測以及幀間預測。例如,在幀內預測中,作為原 樣使用先前處理的相鄰或鄰近數據(例如,像素或像素塊)的替代或補充,可提供可用于根 據相鄰或鄰近樣本的可能不同的傳遞函數特征來調整預測的附加加權參數和偏移參數。
[0077] 在內部傳遞函數或二級傳遞函數被用于表示編解碼器內的數據的一些實施方案 中,除了加權參數,在編解碼器中還可發信號通知有關二級傳遞函數的信息以用于傳遞函 數預測。在一些實施方案中,例如可在使用傳遞函數表的切片標頭中發信號通知二級傳遞 函數信息,使得每個參考數據索引與一個或多個傳遞函數調整參數相關聯。在一些實施方 案中,作為替代或補充,可在塊水平上發信號通知二級傳遞函數信息。在使用不連續傳遞函 數表示的實施方案中,可在切片標頭中和/或在塊水平上發信號通知多個加權參數(例如, 對不同的亮度值或水平具有不同影響的參數)。
[0078] 在使用內部或二級傳遞函數并對其進行調整以表示編解碼器內的數據的一些實 施方案中,可動態地確定用于場景、序列、幀或區域的內部傳遞函數和調整。在一些實施方 案中,可基于當前視頻幀或幀的一個或多個區域的一個或多個特征來確定內部傳遞函數。 該特征可包括但不限于最低亮度和峰值亮度、運動、紋理、顏色、直方圖模式、百分比濃度 等。在一些實施方案中,確定當前幀的內部傳遞函數還可利用在時間上過去的和/或未來的 幀作為參考幀。在一些實施方案中,例如確定內部傳遞函數可利用在視頻或視頻序列中在 當前幀之前和/或之后出現的一個、兩個或更多個參考幀的窗口。使用基于窗口的信息來確 定內部傳遞函數可導致每個幀的特征改變,并可幫助避免或平滑內部傳遞函數調整中過于 明顯的跳躍或不連續性,否則可對編碼產生不利影響。平滑的、基于窗口的自適應傳遞函數 方法可提供更好的傳遞函數選擇,以用于編碼目的并且用于在全傳遞函數范圍/所需傳遞 函數范圍處的最終信號重建。在一些實施方案中,基于窗口的自適應傳遞函數方法可包括 估計窗口內幀的峰值亮度和最低亮度,以確定內部傳遞函數。在一些實施方案中,可通過用 于確定內部傳遞函數的基于窗口的方法來估計亮度直方圖、直方圖模式、值的集中度以及 如何對其進行調整、和窗口內面積或區域的劃分。在一些實施方案中,可在該選擇中利用有 關人類視覺系統的信息來實現改善的性能。
[0079] 在一些實施方案中,在基于窗口的自適應傳遞函數方法中使用的決定窗口可不重 疊,并且對每個幀或區域單獨進行決定。在一些實施方案中,在窗口邊界處可能存在重疊, 同時在估計中考慮當前窗口之外的邊界幀,但對其自身不進行調節。在一些實施方案中,多 個窗口可通過自適應過程例如基于窗口距離的內部傳遞函數信息的加權平均來影響邊界 幀,這可有助于確保相鄰窗口之間的平滑過渡。在一些實施方案中,內部傳遞函數的基于窗 口的決定過程可基于"運行窗口"方法,其中根據幀本身的特征和一個或多個在時間上過去 的和/或未來的幀和/或窗口的特征來確定每個幀的內部傳遞函數。在一些實施方案中,還 可利用咱過去的和/或未來的幀和/或窗口的內部傳遞函數來確定當前幀的內部傳遞函數。 在一些實施方案中,可實施多通道方法,其中考慮了在先前的通道中預先選擇的內部傳遞 函數的行為和性能,以調諧后續的內部傳遞函數,從而實現更高的編碼效率和給定最終傳 遞函數目標的更好呈現。
[0080] 在一些實施方案中,可基于正在進行編碼的視頻數據的特征來確定并調整內部傳 遞函數(例如,范圍、類型、位深度等)。在一些實施方案中,在選擇和/或調整內部傳遞函數 時還可考慮所關注的信號的特定傳遞函數的壓縮能力或特征。在一些實施方案中,除此之 外或作為替代,可基于一個或多個目標顯示器和它們的特征或限制來確定并調整內部傳遞 函數。例如,如果已知當前的目標顯示器與由一級傳遞函數支持的動態范圍相比具有有限 的動態范圍,則在編碼的壓縮信號中包含除目標顯示器范圍之外的值可能毫無意義。相反, 可確定可將信號提供到顯示器的動態范圍的最佳擬合的內部傳遞函數表示,這可允許針對 該特定顯示器能力來實現信號的更好的壓縮表示。在一些實施方案中,如果將由編解碼器 支持多個顯示器,則可為顯示器選擇動態范圍,并且可確定提供對選定動態范圍的最佳擬 合的內部傳遞函數表不。例如,可選擇能力最佳的顯不器(例如,具有最尚動態范圍),并且 可將其動態范圍用于調整內部傳遞函數來為所有顯示器生成視頻輸出。又如,可基于定價 模式來選擇動態范圍,在該定價模式中可對顯示器的一個或多個特征(例如,動態范圍)進 行加權(例如,基于顯示器的根據重要性或其他因素而確定的或指示的排序)。
[0081] 如本文所述的用于視頻編碼和解碼系統或編解碼器的自適應傳遞函數方法的實 施方案可提供發信號通知(從編碼器)和支持(從編碼器和解碼器)擴展動態范圍或高動態 范圍的功能,同時將編解碼器的復雜性(例如,位深度)保持在合理范圍內。這可通過在區 域、幀、場景或序列水平上動態地確定聚焦范圍、將輸入數據裁剪到聚焦范圍、并將經剪裁 的數據從輸入視頻的位深度映射到編解碼器的位深度來實現,同時在區域、幀、場景或序列 水平上從編碼器向解碼器發信號通知適當的參數(例如,聚焦范圍、量化參數等),使得動態 范圍可被擴展到支持HDR的顯示器的全范圍。另外,在一些實施方案中,當使用不同的傳遞 函數表示來對不同幀進行編碼時,可發信號通知用于執行加權參數的適當參數(例如,權重 等)。
[0082] 示例性設備和裝置
[0083]圖10至圖14示出了設備和裝置的非限制性示例,在這些設備和裝置中或利用這些 設備和裝置,可實現如本文所述的各種數字視頻或圖像處理和顯示方法及裝置的實施方案 或部件。圖10示出了示例性S0C,并且圖11示出了實現S0C的示例性設備。圖12示出了可實現 本文所述的方法和裝置的示例性計算機系統。圖13和圖14示出了可實現本文所述的方法和 裝置的示例性多功能設備。
[0084] 示例性片上系統(S0C)
[0085]現在參見圖10,其示出了可在實施方案中使用的片上系統(S0C)8000的一個實施 方案的框圖。S0C 8000被圖示為耦接到存儲器8800。正如其名稱所暗示的,S0C 8000的部件 可被集成到單個半導體基板上作為集成電路"芯片"。在一些實施方案中,這些部件可在系 統中的兩個或更多個分立芯片上實現。然而,S0C 8000在本文中將用作示例。在例示的實施 方案中,S0C 8000的部件包括中央處理單元(CPU)復合體8020、片上外圍部件8040A-8040C (更簡潔地稱為"外圍設備")、存儲器控制器(MC)8030和通信結構8010。部件8020,8030, 8040A-8040C可全部耦接到通信結構8010。存儲器控制器8030可在使用期間耦接到存儲器 8800,并且外圍設備8040B可在使用期間耦接到外部接口 8900。在例示的實施方案中,CPU復 合體8020包括一個或多個處理器(P)8024和二級(L2)高速緩存8022。
[0086]外圍設備8040A-8040B可以是被包括在SOC 8000中的附加硬件功能的任何集合。 例如,該外圍設備8040A-8040B可包括視頻外圍設備,諸如被配置為處理來自相機或其他圖 像傳感器的圖像捕捉數據的圖像信號處理器、被配置為在一個或多個顯示設備上顯示視頻 數據的顯示控制器、圖形處理單元(GPU)、視頻編碼器/解碼器或編解碼器、縮放器、旋轉器、 混合器等。該外圍設備可包括音頻外圍設備,諸如麥克風、揚聲器、至麥克風和揚聲器的接 口、音頻處理器、數字信號處理器、混合器等。該外圍設備可包括用于S0C 8000外部的各種 接口 8900的外圍設備接口控制器(例如外圍設備8040B ),這些接口包括接口諸如通用串行 總線(USB)端口、外圍部件互連(PCI)端口(包括PCI高速(PCIe)端口)、串行端口、并行端口 等。該外圍設備可包括聯網外圍設備諸如媒體訪問控制器(MAC)。可包括硬件的任何集合。 [0087] CPU復合體8020可包括用作S0C 8000的CPU的一個或多個CPU處理器8024。該系統 的CPU包括執行系統主要控制軟件諸如操作系統的一個或多個處理器。通常,由CPU在使用 期間執行的軟件可控制系統的其他部件,以實現系統的所期望的功能。該處理器8024還可 執行其他軟件諸如應用程序。該應用程序可為用戶提供功能,并且可依賴于操作系統以用 于更低級的設備控制。因此,該處理器8024也可被稱為應用處理器。CPU復合體8020可進一 步包括其他硬件,諸如L2高速緩存8022和/或至系統的其他部件的接口(例如至通信結構 8010的接口)。通常,處理器可包括被配置為執行在由處理器實施的指令集架構中定義的指 令的任何電路和/或微碼。響應于執行指令而由處理器操作的指令和數據通常可被存儲在 存儲器8800中,盡管某些指令可被定義為也對外圍設備進行直接處理器訪問。處理器可涵 蓋在具有作為片上系統(S0C 8000)或其他集成水平的集成電路的其他部件上實施的處理 器內核。處理器可進一步包括分立的微處理器、處理器內核和/或集成到多芯片模塊具體實 施中的微處理器、被實施為多個集成電路的處理器等。
[0088]該存儲器控制器8030通常可包括用于接收來自S0C 8000的其他部件的存儲器操 作并用于訪問存儲器8800以完成存儲器操作的電路。該存儲器控制器8030可被配置為訪問 任何類型的存儲器8800。例如,該存儲器8800可以是靜態隨機存取存儲器(SRAM)、動態RAM (DRAM),諸如包括雙倍數據速率(DDR、DDR2、DDR3等)DRAM的同步DRAM(SDRAM)。可支持DDR DRAM的低功率/移動版本(例如,LPDDR、mDDR等)。該存儲器控制器8030可包括存儲器操作隊 列,以用于對這些操作進行排序(并且可能重新排序),并將這些操作呈現至存儲器8800。該 存儲器控制器8030還可包括用于存儲等待寫到存儲器的寫數據和等待返回至存儲器操作 的源的讀數據的數據緩沖器。在一些實施方案中,該存儲器控制器8030可包括用于存儲最 近訪問的存儲器數據的存儲器高速緩存。例如,在S0C具體實施中,該存儲器高速緩存可通 過在預期很快要再次訪問的情況下避免從存儲器8800重新訪問數據來降低S0C中的功率消 耗。在一些情況下,該存儲器高速緩存也可被稱為系統高速緩存,其與私有高速緩存(諸如 L2高速緩存8022或處理器8024中的高速緩存)不同,該私有高速緩存僅服務于某些部件。此 外,在一些實施方案中,系統高速緩存不需要位于存儲器控制器8030內。
[0089]在一個實施方案中,該存儲器8800可以芯片上芯片配置或封裝上封裝配置來與 S0C 8000-起被封裝。也可使用S0C 8000和存儲器8800的多芯片模塊配置。此類配置可比 向系統中其他部件(例如向端點16A-16B)的傳輸相對更安全(在數據可觀測性方面)。因此, 受保護的數據可未經加密地駐留在存儲器8800中,而受保護的數據可被加密以在S0C 8000 與外部端點之間進行交換。
[0090] 通信結構8010可以是用于在SOC 8000的部件間進行通信的任何通信互連器和協 議。該通信結構8010可為基于總線的,包括共享總線配置、交叉開關配置、和具有橋的分層 總線。該通信結構8010也可為基于分組的,并且可以是具有橋的分層、交叉開關、點到點、或 其他互連器。
[0091] 需注意,S0C 8000的部件的數量(以及圖10所示(諸如CPU復合體8020內)的那些部 件的子部件的數量)在不同實施方案中可能是不同的。可存在比圖10所示的數量更多或更 少的每種部件/子部件。
[0092] 圖11是系統9000的一個實施方案的框圖,該系統包括耦接到外部存儲器8800和一 個或多個外部外圍設備9020的S0C 8000的至少一個實例。提供向S0C 8000供應供電電壓以 及向存儲器8800和/或外圍設備9020供應一個或多個供電電壓的功率管理單元(PMU)9010。 在一些實施方案中,可包括S0C 8000的多于一個實例(也可包括多于一個存儲器8800)。 [0093]根據系統9000的類型,該外圍設備9020可包括任何期望的電路。例如,在一個實施 方案中,該系統9000可以是移動設備(例如個人數字助理(PDA)、智能電話等),并且該外圍 設備9020可包括用于各種類型的無線通信的設備,諸如wifi、藍牙、蜂窩、全球定位系統等。 該外圍設備9020還可包括附加存儲裝置,該附加存儲裝置包括RAM存儲裝置、固態存儲裝置 或磁盤存儲裝置。該外圍設備9020可包括用戶界面設備(諸如包括觸摸顯示屏或多點觸摸 顯示屏的顯示屏)、鍵盤或其他輸入設備、麥克風、揚聲器等。在其他實施方案中,該系統 9000可以是任何類型的計算系統(例如臺式個人計算機、膝上型電腦、工作站、網絡機頂盒 等)。
[0094] 該外部儲存器8800可包括任何類型的存儲器。例如,該外部存儲器8800可以是 SRAM、動態RAM (DRAM)(諸如同步DRAM (SDRAM ))、雙倍數據速率(DDR、DDR2、DDR3等)SDRAM、 RAMBUS DRAM、低功率版本的DDR DRAM(例如LPDDR、mDDR等)等等。該外部存儲器8800可包括 存儲器設備可被安裝到的一個或多個存儲器模塊,諸如單列存儲器模塊(SMM)、雙列存儲 器模塊(DMM)等。另選地,該外部存儲器8800可包括以芯片上芯片配置或封裝上封裝具體 實施被安裝在S0C 8000上的一個或多個存儲器設備。
[0095] 多功能設備示例
[0096]圖13示出了根據一些實施方案的便攜式多功能設備的框圖。在一些實施方案中, 該設備是還包含其他功能諸如PDA、相機、視頻捕獲和/或回放、以及/或者音樂播放器功能 的便攜式通信設備諸如移動電話。該便攜式多功能設備的示例性實施方案包括但不限于來 自 Apple Inc · (Cupertino,Cal if ornia)的 iPhone?設備、iPodTouch?設備和iPad?設備。 也可使用其他便攜式電子設備,諸如具有觸敏表面(例如,觸摸屏顯示器和/或觸摸板)的膝 上型電腦、移動電話、智能電話、平板電腦或平板計算機。還應當理解,在一些實施方案中, 該設備并非便攜式通信設備,而是具有觸敏表面(例如,觸摸屏顯示器和/或觸摸板)的臺式 計算機。在一些實施方案中,設備是具有取向傳感器(例如游戲控制器中的取向傳感器)的 游戲計算機。在其他實施方案中,該設備不是便攜式通信設備,而是相機和/或攝像機。 [0097] 在下面的討論中,描述了一種包括顯示器和觸敏表面的電子設備。然而應當理解, 該電子設備可包括一個或多個其他物理用戶接口設備,諸如物理鍵盤、鼠標和/或操作桿。
[0098]該設備通常支持各種應用程序,諸如以下各項中的一者或多者:繪圖應用程序、呈 現應用程序、文字處理應用程序、網站創建應用程序、盤編輯應用程序、電子表格應用程序、 游戲應用程序、電話應用程序、視頻會議應用程序、電子郵件應用程序、即時消息應用程序、 健身支持應用程序、照片管理應用程序、數字相機應用程序、數字視頻攝像機應用程序、web 瀏覽應用程序、數字音樂播放器應用程序和/或數字視頻播放器應用程序。
[0099]可在該設備上執行的各種應用程序可使用至少一個共用的物理用戶界面設備諸 如觸敏表面。觸敏表面的一種或多種功能以及被顯示在設備上的對應信息可從一個應用程 序被調節和/或改變到下一個應用程序,和/或在相應應用程序內可被調節和/或改變。這 樣,設備的共用物理架構(諸如觸敏表面)可利用對于用戶直觀且透明的用戶界面來支持各 種應用程序。
[0100]設備2100可包括存儲器2102(其可包括一個或多個計算機可讀存儲介質)、存儲器 控制器2122、一個或多個處理單元(CPU)2120、外圍設備接口 2118、RF電路2108、音頻電路 2110、揚聲器2111、觸敏顯示系統2112、麥克風2113、輸入/輸出(I/O)子系統2106、其他輸入 控制設備2116和外部端口 2124。設備2100可包括一個或多個光學傳感器或相機2164。這些 部件可通過一條或多條通信總線或信號線2103進行通信。
[0101] 應當理解,設備2100只是便攜式多功能設備的一個示例,并且設備2100可具有比 所示出的更多或更少的部件,可組合兩個或更多個部件,或者可具有這些部件的不同配置 或布置。圖13所示的各種部件可在硬件、軟件或硬件和軟件兩者的組合中實現,其包括一個 或多個信號處理電路和/或專用集成電路。
[0102] 存儲器2102可包括高速隨機存取存儲器并且還可包括非易失性存儲器,諸如一個 或多個磁盤存儲設備、閃存存儲器設備或其他非易失性固態存儲器設備。設備2100的其他 部件(例如,CPU 2120和外圍設備接口 2118)對存儲器2102的訪問可由存儲器控制器2122來 控制。
[0103] 外圍設備接口 2118可被用于將設備的輸入外圍設備和輸出外圍設備耦接到CPU 2120和存儲器2102。該一個或多個處理器2120運行或執行被存儲在存儲器2102中的各種軟 件程序和/或指令集,以執行設備2100的各種功能并處理數據。
[0104] 在一些實施方案中,外圍設備接口2118、CPU 2120和存儲器控制器2122可在單個 芯片諸如芯片2104上實現。在一些其他實施方案中,它們可在單獨的芯片上實現。
[0105] RF(射頻)電路2108接收和發送也被叫做電磁信號的RF信號。RF電路2108將電信號 轉換為電磁信號/將電磁信號轉換為電信號,并且經由電磁信號來與通信網絡以及其他通 信設備進行通信。RF電路2108可包括用于執行這些功能的熟知的電路,包括但不限于天線 系統、RF收發器、一個或多個放大器、調諧器、一個或多個振蕩器、數字信號處理器、編碼器/ 解碼器(編解碼器)芯片組、用戶身份模塊(SIM)卡、存儲器等等。RF電路2108可通過無線通 信與網絡以及其他設備進行通信,其中該網絡諸如互聯網(也稱萬維網(WWW))、內聯網和/ 或無線網絡(諸如蜂窩電話網絡、無線局域網(LAN)和/或城域網(MAN))。該無線通信可使用 多種通信標準、通信協議和通信技術中的任一者,包括但不限于全球移動通信系統(GSM)、 增強數據GSM環境(EDGE)、高速下行鏈路分組接入(HSDPA)、高速上行鏈路分組接入 (HSUPA)、寬帶碼分多址(W-CDMA)、碼分多址(CDMA)、時分多址(TDMA)、藍牙、無線保真(Wi-Fi)(例如,IEEE 802.11a、IEEE 802.11b、IEEE 802.11g和/或IEEE 802·11η)、互聯網語音 協議(Vo IΡ)、W i -MAX、電子郵件協議(例如,互聯網消息訪問協議(I MAP)和/或郵局協議 (Ρ0Ρ))、即時消息(例如,可擴展消息處理現場協議(XMPP)、用于即時消息和現場利用擴展 的會話發起協議(SMPLE)、即時消息和到場服務(MPS)),以及/或者短消息服務(SMS),或 包括在本文獻提交日尚未開發出的通信協議的其他任何適當的通信協議。
[0106] 音頻電路2110、揚聲器2111和麥克風2113提供用戶和設備2100之間的音頻接口。 音頻電路2110從外圍設備接口 2118接收音頻數據,將音頻數據轉換為電信號,并將電信號 傳輸到揚聲器2111。揚聲器2111將電信號轉換為人耳可聽見的聲波。音頻電路2110還接收 由麥克風2113根據聲波轉換的電信號。音頻電路2110將電信號轉換為音頻數據,并將音頻 數據傳輸到外圍設備接口 2118以進行處理。音頻數據可由外圍設備接口 2118從存儲器2102 和/或RF電路2108進行檢索和/或被傳輸至存儲器和/或RF電路。在一些實施方案中,音頻電 路2110還包括耳麥插孔。該耳麥插孔提供音頻電路2110與可移除的音頻輸入/輸出外圍設 備之間的接口,該外圍設備諸如僅輸出的耳機或者具有輸出(例如,單耳耳機或雙耳耳機) 和輸入(例如,麥克風)兩者的耳麥。
[0107] I/O子系統2106將設備2100上的輸入/輸出外圍設備諸如觸摸屏2112和其他輸入 控制設備2116耦接到外圍設備接口 2118。1/0子系統2106可包括顯示控制器2156和用于其 他輸入控制設備2116的一個或多個輸入控制器2160。該一個或多個輸入控制器2160從其他 輸入控制設備2116接收電信號/將電信號發送到其他輸入控制設備。其他輸入控制設備 2116可包括物理按鈕(例如,下壓按鈕、搖臂按鈕等)、撥號盤、滑塊開關、操縱桿、點擊輪等。 在一些另選的實施方案中,一個或多個輸入控制器2160可耦接到(或不耦接到)以下各項中 的任一者:鍵盤、紅外端口、USB端口、和指向設備諸如鼠標。該一個或多個按鈕可包括用于 控制揚聲器2111和/或麥克風2113的音量的增大/減小按鈕。該一個或多個按鈕可包括下壓 按鈕。
[0108] 觸敏顯示器2112提供設備與用戶之間的輸入接口和輸出接口。顯示控制器2156從 觸摸屏2112接收電信號和/或將電信號發送至觸摸屏。觸摸屏2112向用戶顯示視覺輸出。該 視覺輸出可包括圖形、文本、圖標、視頻及它們的任何組合(被統稱為"圖形")。在一些實施 方案中,一些視覺輸出或全部的視覺輸出可對應于用戶界面對象。
[0109] 觸摸屏2112具有基于觸覺和/或觸感接觸來接受來自用戶的輸入的觸敏表面、傳 感器或傳感器組。觸摸屏2112和顯示控制器2156(與存儲器2102中的任何相關聯的模塊和/ 或指令集一起)檢測觸摸屏2112上的接觸(和該接觸的任何移動或中斷),并且將所檢測到 的接觸轉換為與被顯示在觸摸屏2112上的用戶界面對象(例如,一個或多個軟鍵、圖標、網 頁或圖像)的交互。在一個示例性實施方案中,觸摸屏2112與用戶之間的接觸點對應于用戶 的手指。
[0110] 觸摸屏2112可使用IXD(液晶顯示器)技術、LPD(發光聚合物顯示器)技術或LED(發 光二極管)技術,但在其他實施方案中可使用其他顯示技術。觸摸屏2112和顯示控制器2156 可使用現在已知的或以后將開發出的多種觸摸感測技術中的任一種觸摸感測技術以及其 他接近傳感器陣列或用于確定與觸摸屏2112的一個或多個接觸點的其他元件來檢測接觸 及其任何移動或中斷,該多種觸摸感測技術包括但不限于電容性技術、電阻性技術、紅外技 術和表面聲波技術。在一個不例性實施方案中,使用投射式互電容感測技術,諸如從Apple Inc. (Cupertino,California)的iPhone' JPodTouch",和iPadK 中發現的技術。
[0111]觸摸屏2112可具有超過100dpi的視頻分辨率。在一些實施方案中,該觸摸屏具有 約160dpi的視頻分辨率。用戶可使用任何合適的物體或附加物諸如觸筆、手指等等來與觸 摸屏2112接觸。在一些實施方案中,用戶界面被設計用于主要與基于手指的接觸和手勢工 作,由于手指在觸摸屏上的接觸區域較大,因此這可能不如基于觸筆的輸入精確。在一些實 施方案中,設備將基于手指的粗略輸入翻譯為精確的指針/光標位置或命令,以用于執行用 戶所期望的動作。
[0112] 在一些實施方案中,除了觸摸屏2112之外,設備2100可包括用于激活或去激活特 定功能的觸摸板(未示出)。在一些實施方案中,觸摸板是設備的觸敏區域,該觸敏區域與觸 摸屏不同,其不顯示視覺輸出。該觸摸板可以是與觸摸屏2112分開的觸敏表面,或者是由觸 摸屏形成的觸敏表面的延伸部分。
[0113] 設備2100還包括用于為各種部件供電的電力系統2162。電力系統2162可包括電力 管理系統、一個或多個電源(例如,電池、交流電(AC))、再充電系統、電力故障檢測電路、功 率轉換器或逆變器、電源狀態指示器(例如,發光二極管(LED)),以及與便攜式設備中的電 力的生成、管理和分配相關聯的任何其他部件。
[0114] 設備2100還可包括一個或多個光學傳感器或相機2164。圖13示出了耦接到I/O子 系統2106中的光學傳感器控制器2158的光學傳感器。光學傳感器2164可例如包括電荷親合 器件(CXD)、或者互補金屬氧化物半導體(CMOS)光電晶體管或光傳感器。光學傳感器2164從 環境接收通過一個或多個透鏡而投射的光,并且將該光轉換為表示圖像的數據。與成像模 塊2143(也稱相機模塊)相結合,光學傳感器2164可捕獲靜態圖像和/或視頻序列。在一些實 施方案中,至少一個光學傳感器可位于設備2100的與該設備的前部的觸摸屏顯示器2112相 背對的后部。在一些實施方案中,觸摸屏顯示器可用作取景器,以用于采集靜態圖像和/或 視頻圖像。在一些實施方案中,作為替代或補充,至少一個光學傳感器可位于設備的前部。
[0115] 設備2100還可包括一個或多個接近傳感器2166。圖13示出了耦接到外圍設備接口 2118的接近傳感器2166。作為另外一種選擇,接近傳感器2166可耦接到I/O子系統2106中的 輸入控制器2160。在一些實施方案中,當多功能設備被置于用戶耳朵附近時(例如,用戶正 在打電話時),接近傳感器關閉并禁用觸摸屏2112。
[0116] 設備2100還可包括一個或多個取向傳感器2168。在一些實施方案中,該一個或多 個取向傳感器包括一個或多個加速度計(例如,一個或多個線性加速度計和/或一個或多個 旋轉加速度計)。在一些實施方案中,該一個或多個取向傳感器包括一個或多個陀螺儀。在 一些實施方案中,該一個或多個取向傳感器包括一個或多個磁力儀。在一些實施方案中,該 一個或多個取向傳感器包括全球定位系統(GPS)、全球導航衛星系統(GL0NASS)、和/或其他 全球導航系統接收器中的一個或多個。GPS、GL0NASS和/或其他全球導航系統接收器可用于 獲得關于設備2100的位置和取向(例如縱向或橫向)的信息。在一些實施方案中,該一個或 多個取向傳感器包括取向傳感器/旋轉傳感器的任何組合。圖13示出了耦接到外圍設備接 口 2118的一個或多個取向傳感器2168。作為另外一種選擇,該一個或多個取向傳感器2168 可耦接到I/O子系統2106中的輸入控制器2160。在一些實施方案中,信息基于對從一個或多 個取向傳感器接收的數據的分析而在觸摸屏顯示器上以縱向視圖或橫向視圖被顯示。
[0117] 在一些實施方案中,設備2100還可包括一個或多個其他傳感器(未示出),包括但 不限于環境光線傳感器和運動檢測器。這些傳感器可耦接到外圍設備接口 2118,或者可耦 接到I/O子系統2106中的輸入控制器2160。例如,在一些實施方案中,設備2100可包括至少 一個前向(遠離使用者)光傳感器和至少一個后向(朝向使用者)光傳感器,這些光傳感器可 用于從設備2100所處的環境收集環境光線量度,以用于視頻與圖像采集、處理和顯示應用 程序使用。
[0118] 在一些實施方案中,被存儲在存儲器2102中的軟件部件包括操作系統2126、通信 模塊2128、接觸/運動模塊(或指令集)2130、圖形模塊2132、文本輸入模塊2134、全球定位系 統(GPS)模塊2135和應用程序2136。此外,在一些實施方案中,存儲器2102存儲設備/全局內 部狀態2157。設備/全局內部狀態2157包括以下各項中的一者或多者:活動應用程序狀態, 該活動應用程序狀態用于指示哪些應用程序(如果有的話)當前是活動的;顯示狀態,該顯 示狀態用于指示什么應用程序、視圖或其他信息占據觸摸屏顯示器2112的各個區域;傳感 器狀態,該傳感器狀態包括從設備的各個傳感器和輸入控制設備2116獲得的信息;和關于 設備位置和/或姿態的位置信息。
[0119] 操作系統2126(例如,〇3^丨11、1^^(:、1^祖^、1^1乂、03乂、11冊013、或嵌入式操作系 統諸如VxWorks)包括用于控制和管理一般系統任務(例如,存儲器管理、存儲設備控制、功 率管理等)的各種軟件部件和/或驅動器,并且有利于各種硬件部件和軟件部件之間的通 {目。
[0120] 通信模塊2128有利于通過一個或多個外部端口 2124來與其他設備進行通信,并且 還包括用于處理由RF電路2108和/或外部端口 2124所接收的數據的各種軟件部件。外部端 口2124(例如通用串行總線(USB)、火線等)適于直接耦接到其他設備,或間接地通過網絡 (例如互聯網、無線LAN等)親接。在一些實施方案中,外部端口是與iPod(Apple Inc .的商 標)設備上所使用的30針連接器相同的或類似的和/或與其兼容的多針(例如,30針)連接 器。
[0121] 接觸/運動模塊2130可檢測與觸摸屏2112(結合顯示控制器2156)和其他觸敏設備 (例如,觸摸板或物理點擊輪)的接觸。接觸/運動模塊2130包括多個軟件部件以用于執行與 接觸的檢測相關的各種操作,諸如確定是否已發生接觸(例如,檢測手指按下事件)、確定是 否存在接觸的移動并在觸敏表面上跟蹤該移動(例如,檢測一個或多個手指拖動事件)、以 及確定接觸是否已終止(例如,檢測手指抬起事件或者接觸中斷)。接觸/運動模塊2130從觸 敏表面接收接觸數據。確定接觸點的移動可包括確定接觸點的速率(量值)、速度(量值和方 向)、和/或加速度(量值和/或方向的改變),接觸點的移動由一系列接觸數據來表示。這些 操作可被施加于單個觸點(例如,一個指狀觸點)或多個同時的觸點(例如,"多點觸摸" /多 個指狀觸點)。在一些實施方案中,接觸/運動模塊2130和顯示控制器2156檢測觸摸板上的 接觸。
[0122] 接觸/運動模塊2130可檢測用戶的手勢輸入。觸敏表面上的不同手勢具有不同的 接觸圖案。因此,可通過檢測具體接觸圖案來檢測手勢。例如,檢測單指輕擊手勢包括檢測 手指按下事件,然后在與手指按下事件相同的位置(或基本上相同的位置)處(例如,在圖標 位置處)檢測手指抬起(抬離)事件。又如,檢測觸敏表面上的手指輕掃手勢包括檢測手指按 下事件,然后檢測一個或多個手指拖動事件,并且隨后檢測手指抬起(抬離)事件。
[0123] 圖形模塊2132包括用于在觸摸屏2112或其他顯示器上渲染和顯示圖形的各種軟 件部件,包括用于改變被顯示圖形的強度的部件。如本文所用,術語"圖形"包括可被顯示給 用戶的任何對象,包括但不限于文本、網頁、圖標(諸如包括軟鍵的用戶界面對象)、數字圖 像、視頻、動畫等。
[0124] 在一些實施方案中,圖形模塊2132存儲將要用于表示圖形的數據。每個圖形可被 分配有對應的代碼。圖形模塊2132從應用程序等接收指定待顯示的圖形的一個或多個代 碼,在必要的情況下還一起接收坐標數據和其他圖形屬性數據,然后生成屏幕圖像數據以 輸出至顯示控制器2156。
[0125] 可作為圖形模塊2132的部件的文本輸入模塊2134提供用于在需要文本輸入的多 種應用程序中輸入文本的軟鍵盤。
[0126] GPS模塊2135確定設備的位置,并向各種應用程序提供這種信息供其使用(例如, 提供給電話模塊2138,供其在基于位置撥號的過程中使用;提供給相機模塊2143,作為圖 片/視頻元數據;提供給用于提供基于位置的服務的應用程序諸如地圖/導航應用程序)。
[0127] 應用程序2136可包括但不限于下列一種或多種模塊(或指令集),或它們的子集或 超集:
[0128] ?電話模塊2138;
[0129] ?視頻會議模塊2139;
[0130] ?用于靜態成像和/或視頻成像的相機模塊2143;
[0131] ?圖像管理模塊2144;
[0132] ?瀏覽器模塊2147;
[0133] ?搜索模塊2151;
[0134] ?視頻和音樂播放器模塊2152,其可由視頻播放器模塊和音樂播放器模塊構成; 和/或
[0135] ?在線視頻模塊2155。
[0136] 可被存儲在存儲器2102中的其他應用程序2136的示例包括但不限于其他文字處 理應用程序、其他圖像編輯應用程序、繪圖應用程序、呈現應用程序、通信/社交媒體應用程 序、地圖應用程序、支持JAVA的應用程序、加密應用程序、數字權益管理應用程序、語音識別 應用程序和語音復制應用程序。
[0137] 結合RF電路2108、音頻電路2110、揚聲器2111、麥克風2113、觸摸屏2112、顯示控制 器2156、接觸模塊2130、圖形模塊2132和文本輸入模塊2134,電話模塊2138可用于輸入與電 話號碼對應的字符序列、訪問地址簿中的一個或多個電話號碼、修改已輸入的電話號碼、撥 打相應的電話號碼、進行會話,以及在會話完成時斷開或掛斷。如上所述,該無線通信可使 用多種通信標準、協議和技術中的任一者。
[0138] 結合RF電路2108、音頻電路2110、揚聲器2111、麥克風2113、觸摸屏2112、顯示控制 器2156、光學傳感器2164、光學傳感器控制器2158、接觸/運動模塊2130、圖形模塊2132、文 本輸入模塊2134和電話模塊2138,視頻會議模塊2139包括根據用戶指令發起、進行和終止 用戶與一個或多個其他參與者之間的視頻會議的可執行指令。
[0139] 結合觸摸屏2112、顯示控制器2156、一個或多個光學傳感器2164、光學傳感器控制 器2158、接觸/運動模塊2130、圖形模塊2132和圖像管理模塊2144,相機模塊2143包括用于 以下操作的可執行指令:捕獲靜態圖像或視頻(包括視頻流)并且將它們存儲到存儲器2102 中、修改靜態圖像或視頻的特征、或從存儲器2102刪除靜態圖像或視頻。
[0140] 結合觸摸屏2112、顯示控制器2156、接觸/運動模塊2130、圖形模塊2132、文本輸入 模塊2134、和相機模塊2143,圖像管理模塊2144包括用于排列、修改(例如,編輯)、或以其他 方式操控、加標簽、刪除、呈現(例如,在數字幻燈片或相冊中)、以及存儲靜態圖像和/或視 頻圖像的可執行指令。
[0141] 結合RF電路2108、觸摸屏2112、顯示系統控制器2156、接觸/運動模塊2130、圖形模 塊2132和文本輸入模塊2134,瀏覽器模塊2147包括用于根據用戶指令來瀏覽互聯網(包括 搜索、鏈接至、接收和顯示網頁或其部分,以及鏈接至網頁的附件和其他文件)的可執行指 令。
[0142] 結合觸摸屏2112、顯示系統控制器2156、接觸/運動模塊2130、圖形模塊2132和文 本輸入模塊2134,搜索模塊2151包括用于根據用戶指令來搜索存儲器2102中的匹配一個或 多個搜索條件(例如,用戶指定的一個或多個檢索詞)的文本、音樂、聲音、圖像、視頻和/或 其他文件的可執行指令。
[0143] 結合觸摸屏2112、顯示系統控制器2156、接觸/運動模塊2130、圖形模塊2132、音頻 電路2110、揚聲器2111、RF電路2108和瀏覽器模塊2147,視頻和音樂播放器模塊2152包括允 許用戶下載和回放以一種或多種文件格式(諸如MP3或AAC文件)存儲的所記錄的音樂和其 他聲音文件的可執行指令,以及用于顯示、呈現或以其他方式回放視頻(例如,在觸摸屏 2112上或在經由外部端口 2124連接的外部顯示器上)的可執行指令。在一些實施方案中,設 備2100可包括MP3播放器諸如iPod(Apple Inc.的商標)的功能。
[0144] 結合觸摸屏2112、顯示系統控制器2156、接觸/運動模塊2130、圖形模塊2132、音頻 電路2110、揚聲器2111、RF電路2108、文本輸入模塊2134和瀏覽器模塊2147,在線視頻模塊 2155包括指令,所述指令允許用戶訪問、瀏覽、接收(例如,通過流式傳輸和/或下載)、回放 (例如,在觸摸屏上或在經由外部端口 2124連接的外部顯示器上)以及通過其他方式管理一 種或多種視頻格式諸如H. 264/AVC格式或H. 265/HEVC格式的在線視頻。
[0145] 上述所識別的每個模塊和應用對應于用于執行上述一種或多種功能以及在本申 請中所描述的方法(例如,本文中所描述的計算機實現的方法和其他信息處理方法)的一組 可執行指令。這些模塊(即指令集)不必被實現為獨立的軟件程序、過程或模塊,因此這些模 塊的各種子集可在各種實施方案中加以組合或以其他方式重新布置。在一些實施方案中, 存儲器2102可存儲上文識別的模塊和數據結構的子集。此外,存儲器2102可存儲上文沒有 描述的附加模塊和數據結構。
[0146] 在一些實施方案中,設備2100是唯一地通過觸摸屏和/或觸摸板來執行設備上的 一組預定義功能的操作的設備。通過使用觸摸屏和/或觸摸板作為用于設備2100的操作的 主要輸入控制設備可減少設備2100上的物理輸入控制設備(諸如下壓按鈕、撥號盤等等)的 數量。
[0147] 可唯一地通過觸摸屏和/或觸摸板執行的該組預定義功能包括用戶界面之間的導 航。在一些實施方案中,觸摸板在被用戶觸摸時將設備2100從可顯示在設備2100上的任何 用戶界面導航到主菜單、home菜單或根菜單。在此類實施方案中,觸摸板可被稱為"菜單按 鈕"。在一些其他實施方案中,菜單按鈕可以是物理下壓按鈕或者其他物理輸入控制設備, 而不是觸摸板。
[0148] 圖14示出了根據一些實施方案的具有觸摸屏2112的便攜式多功能設備2100。觸摸 屏可在用戶界面(UI)2200內顯示一個或多個圖形。在設備2100的至少一些實施方案中,用 戶可例如利用一個或多個手指2202(在附圖中未必按比例繪制)或者利用一個或多個觸筆 2203(在附圖中未必按比例繪制)在圖形上作出手勢來選擇這些圖形中的一個或多個圖形。
[0149] 設備2100還可包括一個或多個物理按鈕,諸如"home"按鈕或菜單按鈕2204。如前 所述,菜單按鈕2204可用于導航到可在設備2100上執行的一組應用程序中的任何應用程序 2136。作為另外一種選擇,在一些實施方案中,菜單按鈕可被實現為被顯示在觸摸屏2112上 的GUI中的軟鍵。
[0150] 在一個實施方案中,設備2100包括觸摸屏2112、home按鈕或菜單按鈕2204、用于為 設備開關機和鎖定設備供電的下壓按鈕2206、一個或多個音量調節按鈕2208、用戶身份模 塊(SIM)卡槽2210、耳麥插孔2212和對接/充電外部端口 2124。下壓按鈕2206可用于通過按 下該按鈕并在預定時間間隔內使該按鈕保持在按下狀態來開啟/關閉設備上的電源、用于 通過按下該按鈕并在經過預定時間間隔之前釋放該按鈕來鎖定設備、和/或用于將設備解 鎖或發起解鎖過程。在另選的實施方案中,設備2100還可通過麥克風2113來接受用于激活 或去激活一些功能的語音輸入。
[0151] 設備2100還可包括一個或多個相機2164。相機2164可例如包括電荷耦合器件 (CCD)、或者互補金屬氧化物半導體(CMOS)光電晶體管或光傳感器。相機2164從環境接收通 過一個或多個透鏡而投射的光,并將光轉換為表示圖像或視頻幀的數據。在一些實施方案 中,至少一個相機2164可位于設備2100的與該設備前部的觸摸屏顯示器2112相背對的后 部。在一些實施方案中,作為替代或補充,至少一個相機2164可位于具有觸摸屏顯示器2112 的設備的前部,例如使得用戶在觸摸屏顯示器2112上觀看其他視頻會議參與者的同時可獲 得該用戶的圖像以用于視頻會議。在一些實施方案中,至少一個相機2164可位于設備2100 的前部,并且至少一個相機2164可位于設備2100的后部。在一些實施方案中,觸摸屏顯示器 2112可用作靜態圖像和/或視頻序列采集應用程序的取景器和/或用戶界面。
[0152] 設備2100可包括視頻與圖像處理硬件和/或軟件,包括但不限于可用于捕捉、處 理、轉換、壓縮、解壓縮、存儲、修改、傳輸、顯示、以其他方式管理和操縱經由相機2164捕獲 或以其他方式采集(例如,經由網絡接口)的靜態圖像和/或視頻幀或視頻序列的視頻編碼 和/或解碼部件、編解碼器、模塊或流水線。在一些實施方案中,設備2100還可包括一個或多 個光傳感器或其他傳感器,這些傳感器可用于從設備2100所處的環境收集環境光線量度或 其他量度,以用于視頻與圖像采集、處理和顯示使用。
[0153] 示例性計算機系統
[0154] 圖12示出了可被配置為執行上文所述的任意或全部實施方案的示例性計算機系 統2900。在不同的實施方案中,計算機系統2900可以是各種類型的設備中的任一種設備,包 括但不限于:個人計算機系統、臺式計算機、膝上型電腦、筆記本電腦、平板電腦、一體電腦 或上網本計算機、大型計算機系統、手持式計算機、工作站、網絡計算機、相機、機頂盒、移動 設備、消費者設備、應用服務器、存儲設備、視頻記錄設備、外圍設備(諸如交換機、調制解調 器、路由器),或一般性的任何類型的計算設備或電子設備。
[0155] 可在一個或多個可與各種其他設備交互的計算機系統2900內執行如本文所述的 各種實施方案。需注意,根據各種實施方案,上文結合圖1至圖11描述的任何部件、動作或功 能都可在被配置為圖12所示計算機系統2900的一種或多種計算機上實現。在例示的實施方 案中,計算機系統2900包括經由輸入/輸出(I/O)接口2930耦接到系統存儲器2920的一個或 多個處理器2910。計算機系統2900還包括耦接到I/O接口2930的網絡接口 2940,以及一個或 多個輸入/輸出設備或部件2950,諸如光標控件2960、鍵盤2970、一個或多個顯示器2980、一 個或多個相機2990和一個或多個傳感器2992,包括但不限于光傳感器和運動檢測器。在一 些情況下,可設想到實施方案可使用計算機系統2900的單個實例來實現,而在其他實施方 案中,多個此類系統或者構成計算機系統2900的多個節點可被配置為托管實施方案的不同 部分或實例。例如,在一個實施方案中,一些元素可經由計算機系統2900的與實現其他元素 的那些節點不同的一個或多個節點來實現。
[0156] 在各種實施方案中,計算機系統2900可以是包括一個處理器2910的單處理器系 統、或者包括若干個處理器2910(例如兩個、四個、八個或其他合適數量)的多處理器系統。 處理器2910可以是能夠執行指令的任何合適的處理器。例如,在各種實施方案中,處理器 2910可以是實現多種指令集架構(ISA)(諸如x829、PowerPC、SPARC或MIPS ISA,或任何其他 合適的ISA)中的任一指令集架構的通用處理器或嵌入式處理器。在多處理器系統中,每個 處理器2910通常可以但并非必須實現相同的ISA。
[0157] 系統存儲器2920可被配置為存儲可被處理器2910訪問的程序指令2922和/或數 據。在各種實施方案中,系統存儲器2920可使用任何適當的存儲器技術來實現,諸如靜態隨 機存取存儲器(SRAM)、同步動態RAM(SDRAM)、非易失性/閃存存儲器,或任何其他類型的存 儲器。在例示的實施方案中,程序指令2922可被配置為實現本文所述的功能中的任一種功 能。此外,存儲器2920可包括本文所述的信息結構或數據結構中的任一者。在一些實施方案 中,程序指令和/或數據可被接收、發送或存儲在獨立于系統存儲器2920或計算機系統2900 的不同類型的計算機可訪問介質上或類似介質上。盡管將計算機系統2900描述為實施前面 各圖的功能框的功能,但可經由此類計算機系統來實現本文所述的功能中的任一種功能。
[0158] 在一個實施方案中,I/O接口 2930可被配置為協調設備中的處理器2910、系統存儲 器2920和任何外圍設備(包括網絡接口 2940或其他外圍設備接口,諸如輸入/輸出設備 2950)之間的I/O通信。在一些實施方案中,I/O接口 2930可執行任何必要的協議、定時或其 他數據轉換,以將來自一個部件(例如,系統存儲器2920)的數據信號轉換成適于由另一個 部件(例如,處理器2910)使用的格式。在一些實施方案中,I/O接口 2930可包括對例如通過 各種類型的外圍設備總線諸如外圍部件互連(PCI)總線標準或通用串行總線(USB)標準的 變型所附接的設備的支持。在一些實施方案中,I/O接口2930的功能例如可被劃分到兩個或 更多個單獨部件中,諸如北橋和南橋。此外,在一些實施方案中,I/O接口 2930(諸如到系統 存儲器2920的接口)的一些或所有功能可被直接并入到處理器2910中。
[0159] 網絡接口 2940可被配置為允許在計算機系統2900和附接到網絡2985的其他設備 (例如承載器或代理設備)之間、或者在計算機系統2900的節點之間交換數據。在各種實施 方案中,網絡2985可包括一種或多種網絡,包括但不限于:局域網(LAN)(例如以太網或企業 網)、廣域網(WAN)(例如互聯網)、無線數據網、某種其他電子數據網絡、或它們的某種組合。 在各種實施方案中,網絡接口2940可支持經由有線或無線通用數據網絡進行通信,諸如任 何合適類型的以太網;經由電信/電話網絡進行通信,諸如模擬語音網絡或數字光纖通信網 絡;經由存儲區域網絡進行通信,諸如光纖通道SAN,或經由任何其他合適類型的網絡和/或 協議進行通信。
[0160] 輸入/輸出設備2950在一些實施方案中可包括一個或多個顯示終端、鍵盤、小鍵 盤、觸摸板、掃描設備、語音或光學識別設備,或適于由一個或多個計算機系統2900輸入或 訪問數據的任何其他設備。多個輸入/輸出設備2950可存在于計算機系統2900中,或者可被 分布在計算機系統2900的各個節點上。在一些實施方案中,類似的輸入/輸出設備可與計算 機系統2900分開,并且可通過有線或無線連接諸如通過網絡接口 2940與計算機系統2900的 一個或多個節點進行交互。
[0161] 如圖12所示,存儲器2920可包含程序指令2922,該程序指令可能可由處理器執行, 以實現上文所述的任何元素或動作。在一個實施方案中,該程序指令可實現上文所述的方 法。在其他實施方案中,可包括不同的元件和數據。需注意,數據可包括上文所述的任何數 據或信息。
[0162] 本領域的技術人員應當理解,計算機系統2900僅僅是例示性的,而并非旨在限制 實施方案的范圍。特別地,計算機系統和設備可包括可執行所指出的功能的硬件或軟件的 任意組合,包括計算機、網絡設備、互聯網設備、個人數字助理、無線電話、尋呼機等等。計算 機系統2900還可被連接到未示出的其他設備或者反之作為獨立的系統進行操作。此外,由 所示出的部件提供的功能在一些實施方案中可被組合在更少的部件中,或可被分布在附加 部件中。類似地,在一些實施方案中,一些所示出的部件的功能可不被提供,和/或可提供其 他附加功能。
[0163] 本領域的技術人員還將認識到,雖然各種項目被示出為在使用期間被存儲在存儲 器中或存儲裝置上,但是為了存儲器管理和數據完整性的目的,這些項目或其部分可在存 儲器和其他存儲設備之間進行傳輸。或者,在其他實施方案中,軟件部件中的一些或全部軟 件部件可在另一設備上的存儲器中執行,并且經由計算機間通信與所示出的計算機系統進 行通信。系統部件或數據結構中的一些或全部系統部件或數據結構也可(例如作為指令或 結構化數據)被存儲在計算機可訪問介質或便攜式制品上,以便由合適的驅動器讀取,其多 種示例在上文中進行了描述。在一些實施方案中,被存儲在與計算機系統2900分開的計算 機可訪問介質上的指令可經由傳輸介質或信號(諸如電信號、電磁信號、或數字信號)被傳 輸到計算機系統2900,所示傳輸介質或信號經由通信介質(諸如網絡和/或無線鏈路)來傳 送。各種實施方案可進一步包括在計算機可訪問介質上接收、發送或存儲根據以上描述所 實現的指令和/或數據。一般來講,計算機可訪問介質可包括非暫態計算機可讀存儲介質或 存儲器介質,諸如磁或光介質,例如盤或DVD/CD-R0M、易失性或非易失性介質,諸如RAM(例 如SDRAM、DDR、RDRAM、SRAM等)、ROM等。在一些實施方案中,計算機可訪問介質可包括傳輸介 質或信號,諸如經由通信介質諸如網絡和/或無線鏈路來傳輸的電氣信號、電磁信號或數字 信號。
[0164] 在不同的實施方案中,本文所述的方法可在軟件、硬件或它們的組合中實現。此 外,可改變方法的方框次序,可對各種要素進行添加、重新排序、組合、省略、修改等。對于受 益于本公開的本領域的技術人員而言,顯然可作出各種修改和改變。本文所述的各種實施 方案旨在為示例性的而非限制性的。許多變型、修改、添加和改進是可能的。因此,可為本文 中描述為單個實例的部件提供多個實例。各種部件、操作和數據存儲裝置之間的界限在一 定程度上是任意性的,并且在具體例示性配置的上下文中例示了特定操作。設想了功能的 其他分配,它們可落在所附權利要求的范圍內。最后,被呈現為示例性配置中的分立部件的 結構和功能可被實現為組合結構或部件。這些和其他變型、修改、添加和改進可落在所附權 利要求所限定的實施方案的范圍內。
【主權項】
1. 一種系統,包括: 編碼器模塊,所述編碼器模塊被配置為根據編碼格式來處理視頻數據以生成經編碼的 視頻數據,其中所述視頻數據在所述編碼器模塊內以C位的位深度來表示;和 自適應傳遞函數模塊,所述自適應傳遞函數模塊被配置為: 接收輸入視頻數據,其中根據傳遞函數以N位的位深度來表示所述輸入視頻數據的動 態范圍; 至少部分地根據所述輸入視頻數據的一個或多個特征來確定所述輸入視頻數據的聚 焦動態范圍; 將所述聚焦動態范圍內的所述輸入視頻數據從所述輸入視頻數據的位深度映射到所 述編碼器模塊的位深度,以生成C位視頻數據;并且 將所述C位視頻數據輸出到所述編碼器模塊以用于處理。2. 根據權利要求1所述的系統,其中所述自適應傳遞函數模塊被配置為針對一個或多 個視頻幀中的每個視頻幀或針對兩個或更多個視頻幀的一個或多個序列中的每個序列來 執行所述接收、所述確定、所述映射、以及所述輸出。3. 根據權利要求1所述的系統,其中所述自適應傳遞函數模塊被配置為針對一個或多 個視頻幀中的每個視頻幀內的兩個或更多個區域來執行所述接收、所述確定、所述映射、以 及所述輸出。4. 根據權利要求1所述的系統,其中所述編碼器模塊被進一步配置為包括所述經編碼 的視頻數據中的格式元數據,所述格式元數據指示在所述映射中使用的一個或多個參數。5. 根據權利要求4所述的系統,還包括: 解碼器模塊,所述解碼器模塊被配置為處理由所述編碼器模塊生成的所述經編碼的視 頻數據,以生成經解碼的C位視頻數據和經提取的格式元數據;和 逆向自適應傳遞函數模塊,所述逆向自適應傳遞函數模塊被配置為根據所述經提取的 格式元數據來擴展所述經解碼的C位視頻數據,以生成覆蓋目標設備的全動態范圍的D位視 頻數據。6. 根據權利要求5所述的系統,其中所述目標設備為支持高動態范圍(HDR)的設備。7. 根據權利要求1所述的系統,其中根據內部傳遞函數在所述編碼器模塊內以C位的位 深度來表示所述視頻數據。8. 根據權利要求7所述的系統,其中所述內部傳遞函數與用于表示所述輸入視頻數據 的傳遞函數相同。9. 根據權利要求7所述的系統,其中所述內部傳遞函數與用于表示所述輸入視頻數據 的傳遞函數不同。10. 根據權利要求7所述的系統,其中所述內部傳遞函數為不連續傳遞函數表示,所述 不連續傳遞函數表示包括用于表示所述輸入視頻數據的所述傳遞函數的一個或多個部分, 并且針對所述傳遞函數表示的其余部分使用不同的傳遞函數。11. 根據權利要求1所述的系統,其中為了確定所述輸入視頻數據的所述聚焦動態范 圍,所述自適應傳遞函數模塊被配置為至少部分地根據參考視頻數據的一個或多個特征來 確定所述輸入視頻數據的所述聚焦動態范圍,所述參考視頻數據來自由所述編碼器模塊先 前處理的一個或多個視頻幀或來自正由所述編碼器模塊處理的當前視頻幀的一個或多個 先前處理的部分。12. 根據權利要求1所述的系統,其中用于確定所述輸入視頻數據的所述聚焦動態范圍 的所述一個或多個特征包括所述輸入視頻數據的亮度、運動、紋理、或顏色特征中的一者或 多者。13. 根據權利要求1所述的系統,其中所述聚焦動態范圍表示針對當前場景、序列、幀、 或幀的區域的人類視覺系統的有效動態范圍。14. 根據權利要求1所述的系統,其中為了根據傳遞函數來將所述聚焦動態范圍內的所 述輸入視頻數據從所述輸入視頻數據的位深度映射到所述編碼器模塊的位深度以生成C位 視頻數據,所述自適應傳遞函數模塊被配置為將所述輸入視頻數據裁剪到所述聚焦動態范 圍, 以生成經裁剪的視頻數據并量化經裁剪的N位視頻數據值,從而生成C位視頻數據值。15. 根據權利要求1所述的系統,其中為了根據編碼格式來處理當前視頻幀以生成經編 碼的視頻數據,所述編碼器模塊被配置為訪問來自一個或多個先前處理的視頻幀的參考數 據,其中所述系統進一步包括重新格式化模塊,所述重新格式化模塊被配置為將所述參考 數據從用于處理相應視頻幀的聚焦動態范圍轉換到針對當前幀所確定的聚焦動態范圍。16. 根據權利要求1所述的系統,其中所述編碼格式為H. 264/高級視頻編碼(AVC)格式 或Η. 265高效視頻編碼(HEVC)格式中的一者。17. -種方法,包括: 由自適應傳遞函數模塊來執行: 根據輸入視頻數據的一個或多個特征來確定所述輸入視頻數據的聚焦動態范圍,其中 根據傳遞函數以Ν位的位深度來表示所述輸入視頻數據的動態范圍; 將所述輸入視頻數據裁剪到所述聚焦動態范圍中,以生成經裁剪的Ν位視頻數據;以及 量化所述經裁剪的Ν位視頻數據,以生成C位視頻數據; 由編碼器模塊根據編碼格式對所述C位視頻數據進行處理,以生成經編碼的視頻數據 作為輸出。18. 根據權利要求17所述的方法,還包括: 由解碼器模塊來執行: 對輸入的經編碼的視頻數據進行解碼,以生成經解碼的C位視頻數據;并且 根據格式元數據來擴展所述經解碼的C位視頻數據,以生成覆蓋支持高動態范圍(HDR) 的設備的全動態范圍的D位視頻數據,其中所述格式元數據指示用于所述裁剪和所述量化 的一個或多個參數。19. 根據權利要求17所述的方法,其中所述聚焦動態范圍表示針對當前場景、序列、幀、 或幀的區域的人類視覺系統的有效動態范圍。20. -種裝置,包括: 自適應傳遞函數模塊,所述自適應傳遞函數模塊被配置為: 根據輸入視頻數據的一個或多個特征來確定所述輸入視頻數據的聚焦動態范圍,其中 根據傳遞函數以Ν位的位深度來表示所述輸入視頻數據的動態范圍; 將所述輸入視頻數據裁剪到所述聚焦動態范圍中,以生成經裁剪的Ν位視頻數據; 根據編碼器模塊的傳遞函數來量化所述經裁剪的Ν位視頻數據,以生成C位視頻數據; 以及 將所述聚焦動態范圍內的所述輸入視頻數據從所述輸入視頻數據的位深度映射到由 所述編碼器模塊所使用的C位的位深度,以生成C位視頻數據; 編碼器模塊,所述編碼器模塊被配置為根據編碼格式來對所述C位視頻數據進行處理, 以生成經編碼的視頻數據作為輸出。
【文檔編號】H04N19/98GK106031172SQ201580010095
【公開日】2016年10月12日
【申請日】2015年2月25日
【發明人】A·托拉皮斯, D·辛格
【申請人】蘋果公司