用于估計壓縮的動態視頻質量的技術的制作方法
【專利說明】用于估計壓縮的動態視頻質量的技術
【背景技術】
[0001] 經由基于分組的網絡(例如,互聯網)的動態視頻的傳輸變得日益普遍。在這樣 的傳輸中,通常使用各種形式的視頻壓縮中的任一種來壓縮動態視頻,所述各種形式的視 頻壓縮包括由瑞士日內瓦的國際標準化組織公布的動態圖像專家組(MPEG)規范和同樣由 瑞士日內瓦的國際電報聯盟(ITU)公布的H.26x系列規范。視頻壓縮的這樣的形式一般使 用有損技術,所述有損技術利用在動態視頻的很多片段中通常觀察到的各種特征和人類視 覺系統(HVS)的各種限制。
[0002] 雖然這樣的網絡繼續擴展它們的位速率容量,但是對它們在發送動態視頻中的使 用和動態視頻的分辨率的要求二者也在增長,使得在任何給定的時間用于發送任何一個動 態視頻的可用的位速率容量繼續受到限制。因此,盡管在這樣的網絡中有相當大的技術提 高,但是仍然必須選擇在視頻質量和發送每一個動態視頻所需的位速率之間的平衡。已經 設計了各種技術來估計動態視頻的壓縮版本的視頻質量以幫助選擇這樣的平衡,但這些技 術一般需要以原始未壓縮的形式來訪問動態視頻。不幸的是,由于諸如保護知識產權(例 如,動態視頻中的版權)的原因,網絡訪問提供者和動態視頻流服務提供者常常不能訪問 動態視頻的這樣的未壓縮版本。
【附圖說明】
[0003] 圖1示出了視頻處理系統的實施例。
[0004] 圖2示出了視頻處理系統的可選實施例。
[0005] 圖3示出了實施例的一部分。
[0006] 圖4示出了圖3的該部分的數據結構的實施例。
[0007] 圖5A和5B示出了另一實施例的部分。
[0008] 圖6A和6B示出了又一實施例的部分。
[0009] 圖7_圖9的每一個示出了根據實施例的邏輯流程。
[0010] 圖10示出了根據實施例的處理體系結構。
[0011] 圖11示出了圖形處理系統的另一可選實施例。
[0012] 圖12示出了設備的實施例。
【具體實施方式】
[0013] 各種實施例概括而言旨在用于估計動態視頻的一個或多個壓縮版本的視頻質量 作為輸入,以在不訪問以未壓縮形式的動態視頻的情況下選擇該動態視頻的壓縮幀以用于 傳輸的技術。基于時間復雜度的對動態視頻的圖像質量的度量和與在觀看動態視頻的選定 集合時觀看設備的選定的觀看特征相關聯的圖像質量的意見度量相組合。時間復雜度是基 于由于人類視覺系統(HVS)相對可能對物體的運動敏感而引起的在動態視頻的幀之間的 內容中的改變的。使用意見度量來解釋的觀看設備的選定觀看特征包括顯示尺寸、顯示分 辨率和相關聯的觀看距離中的一個或多個。對壓縮的幀的選擇可以是從來自動態視頻的壓 縮幀的不同集合當中的選擇,其中壓縮幀的每一個集合被壓縮到不同的程度。
[0014] 在訓練階段期間,動態視頻的訓練集合的很多動態視頻視覺地呈現在具有選定的 觀看特征的觀看設備的顯示器上,并且原始數據是收集的視覺呈現向其進行表現的人的意 見。在一些實施例中,原始數據可以由表示由那些人判斷的圖像質量的數值構成,并且數值 的范圍可以從1到5,以與廣泛已知和使用的平均意見分數(MOS)估計技術一致。可以針對 其時間復雜度來選擇訓練集合的動態視頻以提供具有期望范圍(例如,范圍寬到足以包括 各種各樣類型的視頻內容的時間復雜度,各種各樣類型的視頻內容例如計算機生成的、自 然室外景色、建筑室內景色、近距離面部特征等)和/或時間復雜度值的分布(例如,平均 分布、鐘曲線分布等)的訓練集合。然后使用非線性擬合技術來分析原始數據,以得到定義 在時間復雜度和來自原始數據的意見分數之間的關系的第一和第二數學模型。第一和第二 數學模型可以分別由第一和第二非線性系數來表示。
[0015] 對于每一個訓練集合的動態視頻,將其時間復雜度的度量與第一非線性系數一起 使用,以得到相對應的系數的第一集合,并且然后將那些時間復雜度和相對應的系數的第 一集合的對進行組合以形成第一矢量。相對應地,將訓練集合的動態視頻的每一個的時間 復雜度的度量與第二非線性系數一起使用,以得到相對應的系數的第二集合,并且然后將 那些時間復雜度和相對應的系數的第二集合的對進行組合以形成第二矢量。共同地,第一 和第二矢量將時間復雜度的范圍與指示意見度量的系數的集合相關,其中,所述意見度量 與具有選定的觀看特征的觀看設備相關聯。
[0016] 在稍后的傳輸階段期間,估計另一動態視頻的一個或多個壓縮版本的視頻質量。 當發送動態視頻或準備到具有類似的觀看特征的觀看設備的這樣的傳輸時,可以發生所述 估計。可以使用各種有損動態視頻壓縮算法中的任一種來生成動態視頻的壓縮版本。在一 些實施例中,壓縮算法可以是MPEG的各種版本中的一個。分析動態視頻的一個或多個壓 縮版本,以得到每一個幀的各種參數,包括在壓縮它時采用的量化參數、它的數據尺寸(例 如,以位或字節為單位的其尺寸)、它的幀類型、它的分辨率和它的位速率中的一個或多個。 然后采用每一個幀的所得到的參數來計算每一個幀的時間復雜度。然后每一個幀的所得到 的時間復雜度在分別從第一和第二矢量中選擇第一和第二線性系數中的一個中采用。
[0017] 在一些實施例中,然后采用用于每一個幀的系數的選定的第一和第二集合連同位 速率一起,以得到用于每一個幀的相對應的估計的MOS (有時被稱為"時間MOS分數")。用 于每一個幀的估計的MOS的值的范圍可能受到將用于每一個幀的估計的MOS維持在數值的 預定范圍內的限制。在這樣的實施例中,該范圍可以再次從1到5。在其它實施例中,然后 采用用于每一個幀的系數的選定的第一和第二集合連同期望的MOS -起,以得到相對應的 估計的位速率。用于每一個幀的估計的位速率的值的范圍可能受到限制,例如,能夠被支持 用于傳輸的位速率的上限,或與期望的目標位速率相關聯的可接受的位速率的范圍。
[0018] 不考慮是否基于給定的位速率將MOS估計為所達到的或將位速率估計為需要達 到期望的MOS,可以采用所得到的估計的MOS或位速率來選擇動態視頻的多于一個的可用 的壓縮版本的壓縮幀,以發送到觀看設備來實現在視頻質量和位速率之間的可接受的平 衡。可選地或此外,可以采用所得到的估計的MOS或估計的位速率來確定表示由觀看設備 呈現的動態視頻的壓縮視頻數據的緩沖的所需水平,以實現在視頻質量和位速率之間的可 接受的平衡。
[0019] 作為在傳輸幀中的每幀分析的可選方案,實施例是可能的,在實施例中在每個動 態視頻執行分析。因此,分析另一動態視頻的一個或多個壓縮版本以得到每一個幀的各種 參數。然而,聚集(例如,經由平均值、加權平均值等)并且采用每一個幀的所得到的參數, 以計算整個動態視頻的時間復雜度,并且然后分別在從第一和第二矢量中選擇第一和第二 線性系數中的一個中采用所得到的時間復雜度。
[0020] 然后采用系數的選定的第一和第二集合連同用于整個動態視頻的位速率一起,以 得到用于整個動態視頻的相對應的估計的MOS(有時被稱為"總MOS分數")。用于動態視 頻的估計的MOS的值的范圍可能受到將它維持在數值的預定范圍(例如,從1到5)內的限 制。在其它實施例中,然后采用系數的選定的第一和第二集合連同用于動態視頻的期望的 MOS-起,以得到用于整個動態視頻的相對應的估計的位速率。同樣,用于每一個幀的估計 的位速率的值的范圍可能受到限制。
[0021] 可以采用所得到的估計的MOS或估計的位速率來選擇動態視頻的壓縮版本中的 一個以發送到觀看設備,來實現在視頻質量和位速率之間的可接受的平衡。可選地或此外, 可以采用所得到的估計的MOS或估計的位速率來確定表示由觀看設備呈現的動態視頻的 壓縮視頻數據的緩沖的所需水平,以實現在視頻質量和位速率之間的可接受的平衡。
[0022] 一般參考本文使用的概念和術語,可以按照在計算機或計算機的網絡上執行的程 序過程來呈現接下來的【具體實施方式】的部分。這些過程描述和表示由本領域中的技術人員 使用來將他們的工作的實質最有效地傳達給本領域中的其他技術人員。過程在這里并且通 常被設想為引起期望結果的操作的前后一致的序列。這些操作是需要對物理量的物理操縱 的那些操作。通常,雖然不是必須,這些量采取能夠被存儲、傳送、組合、比較和另外操縱的 電、磁或光信號的形式。主要出于公共使用的原因,將這些信號稱為位、值、元件、符號、字 符、項目、數字等有時被證明是方便的。然而應注意,這些和類似項目的全部應與適當的物 理量相關聯,并且僅是應用于那些量的方便標簽。
[0023] 此外,這些操縱常常以例如添加或比較的形式被提到,其通常與由操作人員執行 的智力操作相關聯。然而,在大部分情況中、在形成一個或多個實施例的部分的本文描述的 任何操作中,操作人員的這樣的能力并不是必須的或合乎需要的。更確切地,這些操作是機 器操作。用于執行各種實施例的操作的有用的機器包括通用數字計算機,所述通用數字計 算機如由在其內存儲根據本文的教導編寫的計算機程序選擇性地啟動或配置,和/或包括 為了所需目的而特別構造的裝置。各種實施例還涉及用于執行這些操作的裝置或系統。這 些裝置可以為了所需目的而特別構造或可以包括通用計算機。用于各種所述機器的所需結 構將從給出的描述中變得顯而易見。
[0024] 現在參考附圖,其中,在全文中相似的附圖標記用于始終表示相似的元件。在下面 的描述中,出于解釋的目的,闡述了很多具體的細節,以便提供對下面的描述的徹底理解。 然而顯然的是,新穎的實施例可以在沒有這些特定細節的情況下被實施。在其它示例中,公 知的結構和設備以框圖的形式示出,以便有助于其描述。本發明涵蓋在權利要求的范圍內 的所有修改、等效形式和可選形式。
[0025] 圖1示出了包括訓練設備100、源設備300、計算設備500和觀看設備700中的一個 或多個的視頻處理系統1000的實施例的框圖。在視頻處理系統1000中的訓練階段期間, 訓練設備100生成使動態視頻的時間復雜度的范圍與指示具有選定的觀看特征的觀看設 備的意見度量的系數的集合相關的設備矢量數據134。訓練設備100然后向計算設備500 提供設備矢量數據134,用于以后在選擇用于使用具有類似的選定特征的觀看設備來觀看 的動態視頻的壓縮幀時使用。在稍后的傳輸階段期間,計算設備500基于哪些壓縮幀實現 了在視頻質量和傳輸位速率之間的可接受的平衡來選擇動態視頻830的壓縮幀以發送到 觀看設備700。計算設備500可以從源設備300至少接收壓縮視頻數據330a和330b,其中 每一個壓縮視頻數據以壓縮的形式表示動態視頻830,但每一個壓縮視頻數據被壓縮到不 同的程度。觀看設備700具有類似于與設備矢量數據134相關聯的觀看特征的觀看特征。 計算設備500采用基于以壓縮形式的動態視頻中的物體的運動的視頻質量的度量和與矢 量數據134相關聯的意見度量的組合來選擇至少壓縮數據330a和330b中的一個或多個的 壓縮幀以發送到觀看設備700。因此,觀看設備700接收以壓縮形式的動態視頻830,動態 視頻830由被選擇以考慮與觀看設備700的觀看特征類似的觀看特征的壓縮幀構成。這些 計算設備中的每一個可以是各種類型的計算設備中的任一種,包括但不限于桌上型計算機 系統、數據輸入終端、膝上型計算機、上網本計算機、平板計算機、手持個人數字助理、智能 電話、智能眼鏡、智能腕表、數字照相機、合并到衣服中的身體佩戴的計算設備、集成到車輛 (例如,汽車、自行車、輪椅等)中的計算設備、服務器、服務器的群集、服務器農場等。
[0026] 如所描繪的,這些計算設備100、300、500和700通過網絡999交換在表示動態視 頻的壓縮數據和/或與動態視頻壓縮的視頻質量有關的數據處傳送的信號。然而,這些計 算設備中的一個或多個可以經由網絡999與彼此和/或與又一些其它計算設備(未示出) 交換完全與動態視頻或視頻質量無關的其它數據。在各種實施例中,網絡可以是可能被限 制到在單個建筑物或其它相對有限的區域內延伸的單個網絡、可能延伸到相當大的距離的 所連接的網絡的組合,和/或可以包括互聯網。因此,網絡999可以基于各種通信技術中的 任一種,其中通過這些通信技術可以交換信號,所述各種通信技術包括但不限于,使用電和 /或光傳導電纜的有線技術,和使用紅外線、射頻或其它形式的無線傳輸的無線技術。
[0027] 在各種實施例中,訓練設備100包括處理器部件150、存儲裝置160、控件120、顯 示器180和將訓練設備100耦合到網絡999的接口 190中的一個或多個。存儲裝置160存 儲控制例程140、訓練視頻數據131、原始訓練數據132、擬合訓練數據133和設備矢量數據 134中的一個或多個。訓練視頻數據131由表示在一起形成動態視頻的訓練集合的多個動 態視頻的數據段構成。在一些實施例中,訓練視頻數據131可以表示動態視頻的數據庫的 至少一部分。訓練集合的動態視頻可以針對其時間復雜度進行選擇,以使訓練集合覆蓋時 間復雜度的選定范圍和/或將時間復雜度的選定分布告知訓練集合(例如,平均分布、鐘曲 線分布等)。
[0028] 控制例程140包括在處理器部件150上操作的指令的序列,處理器部件150起到 訓練設備100的主處理部件的作用以實現執行各種功能的邏輯。在訓練階段期間執行控制 例程140,處理器部件150可以將來自訓練視頻數據131的動態視頻發送或另外提供到具有 選定觀看特征的觀看設備,以由該觀看設備視覺地呈現。處理器部件150然后接收并且存 儲與那些視覺呈現相關聯的意見分數的指示作為原始訓練數據132,處理器部件150隨后 從原始訓練數據132得到處理器部件150提供到計算設備500的設備矢量數據134。
[0029] 圖3更詳細地描繪了在訓練階段中的訓練設備100的這樣的操作的實施例,而圖 4更詳細地描繪了在訓練階段中在這樣的操作期間在部件和/或該實施例的其它部分之間 交換的數據的方面。如所描繪的,控制例程140可以包括訓練部件141和通信部件149中 的一個或多個。此外,訓練部件141可以包括收集部件1412、非線性擬合部件1413和線性 擬合部件1414中的一個或多個。在執行控制例程140時,處理部件150可以執行訓練部件 141的部件1412、1413和1414中的一個或多個,以及通信部件149。
[0030]收集部件1412可以向觀看設備70提供訓練視頻數據131的動態視頻,以用于通 過觀看設備的顯示器視覺地呈現給一個或多個人10。如在圖4中所描繪的,訓練視頻數據 131還可以包括訓練集合的動態視頻中的每一個的時間復雜度的指示。可選地,收集部件 1412可以得到這些動態視頻中的每一個的時間復雜度。在一些實施例中,存儲在用于訓練 集合的動態視頻中的一個的訓練視頻數據131中的時間復雜度的每一個指示可以是表示 在動態視頻的所有幀當中的平均時間復雜度的數值。
[0031] 收集部件1412還可以操作控件120和/或顯示器180,以提供用戶界面以用于由 觀看訓練視頻數據131的動態視頻的人使用,以提供如由觀看設備70視覺地呈現的每一個 動態視頻的圖像質量的意見分數。控件120可以是各種類型的輸入設備中的任一種,包括 但不限于鍵盤、定點設備等。顯示器180可以基于各種顯示技術中的任一種,包括但不限于 液晶顯示器(IXD)技術、電致發光(EL)技術等。可選地或此外,控件120和顯示器180可 以被組合到單個用戶界面設備(例如,觸摸屏)中。不管如何從那些人處