用于立體數據的深度感知增強的制作方法
【專利摘要】本文描述了用于增強圖像的系統、方法及裝置。在一些方面,裝置包括配置為存儲左圖像和右圖像的存儲器單元。所述左圖像和所述右圖像各自描繪來自不同視角的相同場景。所述裝置進一步包括配置為從所述存儲器單元中檢索所述左圖像和所述右圖像的譯碼器。所述譯碼器配置為基于所述左與右圖像之間的空間定向差確定深度圖。所述裝置進一步包括耦合到所述譯碼器的處理器。所述處理器配置為識別所述左或右圖像中由用戶選擇的一部分。所述處理器進一步配置為基于所述深度圖確定在由所述用戶選擇的所述部分周圍的增強區域。所述處理器進一步配置為增強所述增強區域。
【專利說明】
用于立體數據的深度感知増強
技術領域
[0001]本發明涉及基于深度的圖像增強的領域。更特別地,本發明涉及使用從立體圖像計算的深度的單目圖像的增強。
【背景技術】
[0002]可用相機或攝像機捕獲視覺媒體,例如圖像和視頻。通常,如果相機或攝像機包含充足特征并包含適當鏡頭,那么所捕獲的媒體反映終端用戶所需的色彩、對比度、銳度和/或類似者。然而,功能齊全的相機或攝像機和/或強大鏡頭可為昂貴的。此外,特征齊全的相機或攝像機和/或強大鏡頭可以是大體積的,并難以在某些情景下攜帶。
[0003]如今,便攜式裝置(例如,手機或平板計算機)包含內置相機。因為便攜式裝置包含除捕獲視覺媒體的能力之外的大量功能,許多人受惠于便攜式裝置而放棄攜帶大體積、昂貴的相機和鏡頭。然而,內置于便攜式裝置中的相機具有受限數目的特征。另外,內置式相機通常具有基礎鏡頭。因此,由內置式相機捕獲的視覺媒體通常具有較不好的質量并缺乏所需色彩、對比度、銳度和/或類似者。
[0004]便攜式裝置或另一裝置上可用的應用程序可用以處理并增強所捕獲的視覺媒體。舉例來說,終端用戶可使用應用程序來調整色彩,增強對比度,銳化邊緣和/或類似者。然而,許多應用程序可為處理器密集式的和/或需要額外硬件。這可在便攜式裝置上尤其成問題,因為應用程序可增加電池消耗和/或裝置的大小。
【發明內容】
[0005]本發明的系統、方法及裝置各自具有若干方面,其中無單一方面單獨地負責其所要屬性。在不限制如通過以下的權利要求書表達的本發明的范圍的情況下,現在將簡潔地論述一些特征。在考慮此論述之后,并且尤其在閱讀標題為“【具體實施方式】”的部分之后,將理解本發明的特征如何提供在無線網絡中包含接入點與站臺之間的經改進通信的優點。
[0006]本發明的一方面提供一種用于增強圖像的方法。所述方法包括檢索存儲于存儲器單元中的左圖像和右圖像。左圖像及右圖像可各自描繪來自不同視角的相同場景。所述方法進一步包括基于左圖像與右圖像之間的空間定向差確定深度圖。所述方法進一步包括識別左圖像或右圖像中由用戶選擇的一部分。所述方法進一步包括基于所確定的深度圖確定在由用戶選擇的部分周圍的增強區域。所述方法進一步包括增強所述增強區域。
[0007]本發明的另一方面提供用于增強圖像的設備。所述設備包括用于檢索存儲于存儲器單元中的左圖像和右圖像的裝置。左圖像及右圖像可各自描繪來自不同視角的相同場景。所述設備進一步包括用于基于左圖像與右圖像之間的空間定向差確定深度圖的裝置。所述設備進一步包括用于識別左圖像或右圖像中由用戶選擇的一部分的裝置。所述設備進一步包括用于基于所確定的深度圖確定在由用戶選擇的部分周圍的增強區域的裝置。所述設備進一步包含用于增強所述增強區域的裝置。
[0008]本發明的另一方面提供包括代碼的非暫時性計算機可讀媒體,所述代碼在執行時引起設備檢索存儲于存儲器單元中的左圖像和右圖像。左圖像及右圖像可各自描繪來自不同視角的相同場景。媒體進一步包括在執行時引起設備基于左圖像與右圖像之間的空間定向差確定深度圖的代碼。媒體進一步包括在執行時引起設備識別左圖像或右圖像中由用戶選擇的一部分的代碼。媒體進一步包括在執行時引起設備基于所確定的深度圖確定在由用戶選擇的部分周圍的增強區域的代碼。媒體進一步包括在執行時引起設備增強所述增強區域的代碼。
[0009]本發明的另一方面提供用于增強圖像的裝置。裝置包括配置為存儲左圖像和右圖像的存儲器單元。左圖像及右圖像可各自描繪來自不同視角的相同場景。裝置進一步包括配置為從存儲器單元中檢索左圖像和右圖像的譯碼器。譯碼器可進一步配置基于左圖像與右圖像之間的空間定向差確定深度圖。裝置進一步包括耦合到譯碼器的處理器。處理器可配置為識別左圖像或右圖像中由用戶選擇的一部分。處理器可進一步配置為基于所確定的深度圖確定在由用戶選擇的部分周圍的增強區域。處理器可進一步配置為增強所述增強區域。
【附圖說明】
[0010]圖1為示出其中源裝置增強立體圖像的例示性系統的框圖。
[0011]圖2為示出其中源裝置將增強型立體圖像發射到目的地裝置的例示性系統的框圖。
[0012]圖3為可實施本發明的技術的說明性編碼器的框圖。
[0013]圖4為可實施本發明的技術的說明性解碼器的框圖。
[0014]圖5示出幀的排序。
[0015]圖6示出深度計算流程。
[0016]圖7示出用于增強圖像的流程。
[0017]圖8示出用于增強圖像的另一流程。
[0018]圖9示出實例原始圖像。
[0019]圖1OA示出可由編碼器基于圖9中的原始圖像計算的深度圖。
[0020]圖1OB示出圖9的細化及放大后的深度圖。
[0021]圖11至13示出使用圖1OB的縮放深度圖增強的各種圖像。
[0022]圖14示出用于增強圖像的實例方法。
【具體實施方式】
[0023]如上文所描述,具有強大鏡頭和/或其它組件的特征齊全的相機或攝像機可能是昂貴的。裝置(例如,便攜式裝置)上可用的應用程序可用以處理并增強所捕獲的視覺媒體(例如,圖像、視頻等等),以模仿由強大的鏡頭和/或其它組件所產生的效果。例如,終端用戶可使用應用程序以調整色彩、增強對比度、銳化邊緣、改變幾何形狀和/或類似者。然而,許多應用程序是處理器密集式的和/或需要額外硬件來實施一些或所有增強特征。作為一實例,確定媒體的一部分增強的程序可以是處理器密集式的。另外,可能需要特殊硬件(例如,深度圖引擎)來確定媒體的部分增強和/或媒體的一部分不會增強。這些應用程序的處理器密集性質和/或包括額外硬件的必要性可在便攜式裝置上尤其成問題,因為應用程序可增加電池消耗和/或裝置的大小。
[0024]因此,本文中描述的系統和方法在裝置上使用現有硬件以使得應用程序能夠執行增強特征。另外,本文所描述的系統和方法允許裝置執行某些操作,例如,處理器密集式的操作,同時裝置是空閑的,正在充電,或另外處于電池消耗不是問題的狀態中。以此方式,本文所描述的系統和方法允許裝置提供各種增強特征,同時最小化電池消耗并維持或甚至減小裝置的大小。
[0025]當本文所描述的技術可應用于任何類型和任何數目的圖像或圖像序列(例如,視頻)時,相對于立體圖像和/或立體視頻來描述如本文所揭示的技術。立體圖像(或圖像的立體對)通常包含共同場景的第一圖像和第二圖像。貫穿本發明,第一圖像和第二圖像可被稱為左圖像和右圖像、左視圖和右視圖,或左(L)和右(R)幀。可同時或快速依次展示立體對中的第一圖像和第二圖像,以產生具有3D對象的場景。可使用兩個相機捕獲立體圖像和視頻,并將所述立體圖像和視頻作為一連串左幀和右幀發射。有時,雖然不常見,但立體圖像或視頻作為L幀發射并伴隨有用于所述幀的深度圖(D)。然而,在如本文所描述的其它情況下,發射立體圖像或視頻而沒有用于幀的深度圖。然而,深度圖可使用L幀和R幀計算。根據兩個視圖(L和R)計算深度圖通常是介入式及計算密集型的程序。實時實施通常需要硬件模塊僅用于計算視差的目的(例如,其可用以確定深度圖)。通常,最好的視差計算算法是如此復雜而使得其無法實時地實施或僅可由具有大量處理資源的裝置實時實施。因此,如果從頭開始,那么計算深度圖通常采用額外設計和實施努力。然而,如本文所描述,現有系統可再用于計算深度,從而節省所述努力。當視頻的深度圖可用時,深度感知增強可應用于立體圖像或視頻。
[0026]如本發明中所使用的術語“視差”通常描述一個圖像中的像素相對于另一圖像中的相對應像素的水平偏移(例如,兩個圖像之間的空間定向差)。如本發明中所使用的相對應像素通常是指當合成左圖像和右圖像以顯現2D或3D圖像時,與3D對象中的同一點相關聯的像素(一個在左圖像中且一個在右圖像中)。
[0027]用于圖像立體對的多個視差值可存儲于被稱作視差圖的數據結構中。與圖像立體對相關聯的視差圖表示二維(2D)函數d(x,y),其將第一圖像中的像素坐標(x,y)映射至視差值(d),以使得第一圖像中的位于任何給定(x,y)坐標的值d對應于X坐標中的位移,所述位移需要應用于第二圖像中的位于坐標(x,y)的像素以得到第二圖像中的相對應像素。例如,作為特定圖示,視差圖可針對第一圖像中的位于坐標(250,150)的像素存儲為6的d值。在此圖示中,給定d值為6,描述第一圖像中的像素(250,150)的數據(例如,色度值和亮度值)在第二圖像中的像素(256,150)處出現。
[0028]2D圖像中可用的基本信息是每一像素的色彩值。因此,一種用于識別相對應像素的技術是尋找第一圖像(也被稱為參考圖像)中的每一像素的色彩值在第二圖像(也稱為目標圖像)的像素之中的最佳匹配,其中目標圖像是指圖像立體對中的伴隨圖像。目標圖像可以是左圖像或右圖像中的一個,且參考圖像可以是左圖像或右圖像中的另一個。當考慮矯正的立體對時,目標圖像中的搜尋空間可受限于與參考圖像中相同的核線中的像素。然而,本技術假設與對象中的同一點相關聯的像素的色彩值是相同的,這并非始終是正確的假設。例如,對象表面通常不在所有方向上均一地反射光,且用以獲取立體集合的兩個圖像捕獲傳感器可具有不同的比色校準。另外,可沿線在若干像素中得到相同色彩值,從而提供若干潛在匹配。另外,特定像素或像素群可能在目標圖像中受到阻擋,意味著其在參考圖像中處于對象之后并因此在3D圖像中不可見。因此,視差值可不可用于像素,其中未識別相對應的像素。內插法或類似技術可用以在這些值另外不可用時確定視差值。
[0029]在實施例中,深度圖可基于視差圖形成。例如,視差圖可縮放以使得視差值的范圍為O至所設置的數目(例如,255)。縮放的視差圖在本文中被作為深度圖。通常,深度圖中的縮放值與灰度(例如,如果所設置的數目為255,則為8位灰度)相對應。因此,如下文所描述及說明,可經由灰度圖像以圖形方式表示深度圖。
[0030]大部分便攜式裝置包括用以將數據高效發射到其它裝置的編碼器和/或解碼器。確切地說,編碼器和/或解碼器可用以壓縮和/或解壓縮視覺媒體,以使得可跨越媒體更快速地發射視覺媒體。如本文所描述,可利用現有編碼器和/或解碼器以執行額外功能。例如,編碼器和/或解碼器可用以實時產生深度圖并確定圖像或圖像序列中的深度信息。這種深度信息可用于識別圖像中有關的部分(例如,在組合時包括對象的像素)和圖像中無關的部分(例如,為不同對象的一部分的相鄰像素)。終端用戶可選擇圖像的一部分,并基于深度信息,圖像中與所選部分有關的部分可由裝置的處理器增強和/或圖像中與所選部分無關的部分可由處理器劣化。關于圖1至14更詳細地描述如本文所揭示的系統和方法。
[0031]圖1為示出其中源裝置增強立體圖像的例示性系統的框圖。如圖1中所示,系統100可包含具有圖像源Il6的源裝置112、編碼器120、處理器122及圖像顯示器123。源裝置112可包括無線通信裝置,例如,無線手持機、所謂的蜂窩式或衛星無線電電話,或可在通信信道上傳達圖片和/或視頻信息的任何無線裝置,在這種情況下,通信信道可包括無線通信信道。
[0032]圖像源116將圖像的立體對(包含第一視圖150及第二視圖152)提供至編碼器120及處理器122。圖像源116可同時或在不同時間將第一視圖150及第二視圖152提供至編碼器120及處理器122。例如,緊接在將第一視圖150及第二視圖152存儲于圖像源116中之后或之后不久,可將第一視圖150及第二視圖152提供到編碼器120。當終端用戶表明增強第一視圖150和/或第二視圖152的希望時,接著可將第一視圖150及第二視圖152提供到處理器122。
[0033]圖像源116可包括圖像傳感器陣列(例如,數字靜止圖片相機或數字攝像機)、包括一或多個所存儲圖像的計算機可讀存儲媒體、用于從外部源接收數字圖像的接口、(例如)通過執行視頻游戲或其它交互式多媒體源而產生數字圖像的處理單元,或圖像數據的其它源。圖像源22可通常對應于所捕獲圖像、預捕獲圖像和/或計算機產生的圖像中的任一個或多個的源。在一些實例中,圖像源116可對應于蜂窩式(S卩,移動)電話的相機。一般來說,在本發明中提及圖像包括靜止圖片以及視頻數據幀兩者。因此,本發明的各方面可皆適用于靜止數字圖片以及所捕獲數字視頻數據幀或計算機產生的數字視頻數據。
[0034]例如,圖像源116可以不同視角捕獲場景的兩個視圖。在各種實例中,圖像源116可包括標準二維相機、提供場景的立體視圖的兩相機系統、捕獲場景的多個視圖的相機陣列、捕獲一個視圖加深度信息的相機,或一起提供場景的立體視圖的第一裝置上的第一相機和第二裝置上的第二相機。
[0035]編碼器120使用第一視圖150及第二視圖152產生深度圖154。編碼器120將深度圖154傳送至處理器122。處理器122使用第一視圖150、第二視圖152及深度圖154產生增強型第一視圖156,其為第一視圖150的增強型版本,和/或產生增強型第二視圖158,其為第二視圖152的增強型版本。處理器122將增強型第一視圖156和/或增強型第二視圖158發射至圖像顯示器123。
[0036]基于增強型第一視圖156和/或增強型第二視圖158,圖像顯示器123可顯現增強型二維或三維圖像。例如,圖像顯示器123可合成增強型第一視圖156與增強型第二視圖158以形成并顯示單個二維圖像。作為另一實例,圖像顯示器123可同時或交替地顯示增強型第一視圖156和增強型第二視圖158的二維版本(例如,以產生三維效果)。作為另一實例,圖像顯示器123可合成增強型第一視圖156與增強型第二視圖158以形成并顯示單個三維圖像。
[0037]一般來說,人類視覺系統(HVS)基于與對象的會聚角而感知深度。由于觀察者的眼睛以大于距觀察者相對更遠的對象的角度會聚于對象上,故將相對更靠近觀察者的對象感知為更接近觀察者。為了模擬多媒體(例如,圖片和和視頻)中的三個維度,圖像顯示器123向觀察者顯示兩個圖像,為觀察者的每一只眼睛顯示一個圖像(左及右)。位于圖像中的相同空間位置處的對象將通常被感知為處于與正顯示圖像的熒幕相同的深度。
[0038]為了產生深度錯覺,可在每一圖像中沿水平軸線在略不同的位置處展示對象。兩個圖像中的對象位置間的差被稱為視差。一般來說,為了使對象相對于熒幕看起來更接近觀察者,可使用負視差值,然而為了使對象相對于熒幕看起來距用戶更遠,可使用正視差值。具有正或負視差的像素在一些實例中可以或多或少的分辨率顯示,以增加或減少銳度或模糊讀,以進一步產生來自焦點的正或負深度的效果。
[0039]圖像顯示器123可包括戴眼鏡式立體顯示器或裸眼式立體顯示器。一般來說,在觀察者佩戴頭戴式單元(例如,護目鏡或眼鏡)時,所述護目鏡或眼鏡將一個圖像導向到一只眼睛中并將第二圖像導向到另一只眼睛中,戴眼鏡式立體顯示器通過顯示兩個圖像模擬三維。在一些實例中,同時顯示每一圖像(例如,借助于偏光眼鏡或濾色眼鏡)。在一些實例中,快速交替圖像,且眼鏡或護目鏡以與顯示器同步的方式快速交替關閉,以使正確圖像僅展示給相對應的眼睛。裸眼式立體顯示器并未使用眼鏡,但相反地可將正確圖像導向到檢查者的相對應眼睛中。例如,裸眼式立體顯示器可配備有用以確定檢查者的眼睛定位在何處的相機,及用于將圖像導向至檢查者的眼睛的機械和/或電子裝置。
[0040]圖2為示出其中源裝置將增強型立體圖像發射到目的地裝置的例示性系統的框圖。如圖2中所示,系統200可包含具有圖像源116的源裝置112、編碼器120、處理器122、輸出接口 224,且可進一步包含具有圖像顯示器232的目的地裝置214、解碼器230及輸入接口228。在圖2的實例中,目的地裝置214從源裝置112接收經編碼的圖像數據262。源裝置112和/或目的地裝置214可包括無線通信裝置,例如,無線手持機、所謂的蜂窩式或衛星無線電電話,或可在通信信道上傳達圖片和/或視頻信息的任何無線裝置,在這種情況下,通信信道可包括無線通信信道。目的地裝置214可被稱為三維(3D)顯示裝置或3D顯現裝置。
[0041]如上文關于圖1所描述,圖像源116將圖像的立體對(包含第一視圖150及第二視圖152)提供至編碼器120及處理器122。圖像源116可同時或在不同時間將第一視圖150及第二視圖152提供至編碼器120及處理器122。例如,緊接在將第一視圖150及第二視圖152存儲于圖像源116中之后或之后不久,可將第一視圖150及第二視圖152提供到編碼器120。當終端用戶表明增強第一視圖150和/或第二視圖152的希望時,接著可將第一視圖150及第二視圖152提供到處理器122。
[0042]編碼器120使用第一視圖150及第二視圖152產生深度圖154。編碼器120將深度圖154傳送至處理器122。處理器122使用第一視圖150、第二視圖152及深度圖154產生增強型第一視圖156,其為第一視圖150的增強型版本,和/或產生增強型第二視圖158,其為第二視圖152的增強型版本。處理器122將增強型第一視圖156和/或增強型第二視圖158發射至編碼器120。
[0043]編碼器120形成經編碼圖像數據262,其包含用于增強型第一視圖156和/或用于增強型第二視圖158的經編碼圖像數據。在一些實例中,編碼器120可應用各種無損或有損譯碼技術來減少將經編碼圖像數據262從源裝置112發射到目的地裝置214的位數。編碼器120將經編碼圖像數據262傳遞到輸出接口 224。
[0044]當增強型第一視圖156和/或增強型第二視圖158為數字靜止圖片時,編碼器120可配置為編碼增強型第一視圖156和/或增強型第二視圖158作為(例如)聯合圖片專家組(JPEG)圖像。當增強型第一視圖156和/或增強型第二視圖158為視頻數據幀時,編碼器120可配置為根據視頻譯碼標準來編碼增強型第一視圖156和/或增強型第二視圖158,所述視頻譯碼標準例如為運動圖片專家組(MPEG)、MPEG-2、國際電信聯盟(ITU)H.261、ISO/1ECMPEG-1Visual、ITU-T H.262或IS0/IEC MPEG_2Visual、ITU H.263、IS0/IEC MPEG_4Visual及ITU-T !1.264(也被稱為150/^0 MPEG-4高級視頻譯碼(AVC)),包含其SVC及多視圖視頻譯碼(MVC)擴展、ITU-T H.265或其它視頻編碼標準。ITU-T H.264/MPEG_4(AVC)標準是例如由ITU-T視頻譯碼專家組(VCEG)連同IS0/IEC移動圖片專家組(MPEG)—起制定為被稱為聯合視頻小組(JVT)的集體合作關系的產品。在一些方面中,本發明中描述的技術可應用于一般符合H.264標準的裝置。H.264標準描述于ITU-T研究組的日期為2005年3月的“ITU-T推薦
H.264,用于一般視聽服務的高級視頻譯碼(ITU-T Recommendat1n H.264 ,AdvancedVideo Coding for generic aud1visual services)” 中,其在本文中可被稱作H.264標準或H.264規范或H.264/AVC標準或規范。聯合視頻小組(JVT)繼續致力于對H.264/MPEG-4AVC的擴展。MVC的草案描述于2010年3月的“用于通用視聽服務的高級視頻譯碼”(ITU-1ItK
H.264)中。另外,高效率視頻譯碼(HEVC)目前正由ITU-T視頻譯碼專家組(VCEG)及ISO/1EC動畫專家組(MPEG)的視頻譯碼聯合合作小組(JCT-VC)進行開發。HEVC標準的草案(被稱作“HEVC工作草案7”)是布洛斯等人的文獻HCTVC-11003,“高效視頻譯碼(HEVC)文本規格草案rMTU-T SG16WP3和IS0/IEC JTC1/SC29/WG11的視頻譯碼聯合合作小組(JCT-VC),第九次會議,瑞士日內瓦,2012年4月27日到2012年5月7日。此文獻以全文引用的方式并入本文中。
[0045]在一些圖中未展示的實施例中,編碼器120配置為編碼深度圖154,所述深度圖154接著在位流中發射作為經編碼圖像數據262的一部分。此程序可針對一個所捕獲視圖產生一個深度圖或針對若干所發射視圖產生多個深度圖。編碼器120可接收一或多個視圖及深度圖,并用如可對多個視圖進行聯合譯碼的H.264/AVC、MVC的視頻譯碼標準或可對深度及紋理進行聯合譯碼的可伸縮視頻譯碼(SVC)對其進行譯碼。
[0046]當增強型第一視圖156和/或增強型第二視圖158對應于視頻數據幀時,編碼器120可以幀內預測模式或幀間預測模式編碼增強型第一視圖156和/或增強型第二視圖158。作為實例,ITU-T H.264標準支持各種塊大小的幀內預測(例如,用于明度分量的16 X 16、8 X 8或4 X4及用于色度分量的8 X8),以及各種塊大小的幀間預測,例如,用于明度分量的16 X
16、16X8、8X16、8X8、8X4、4X8及4X4及用于色度分量的對應縮放大小。在本發明中,“NX XN”及“N乘N”可互換地使用以指代塊在垂直及水平尺寸方面的像素尺寸(例如,16 X 16像素或16乘16像素)。一般來說,16 X 16塊在垂直方向上將具有16個像素,且在水平方向上具有16個像素。同樣,N X N塊一般在垂直方向上具有N個像素并在水平方向上具有N個像素,其中N表示可大于16的正整數值。塊中的像素可按行及列布置。塊也可以為NXM,其中N及M是不一定相等的整數。
[0047]小于16乘16的塊大小可被稱為16乘16宏塊的分區。同樣,對于NX N塊,小于N X N的塊大小可被稱為N XN塊的分區。視頻塊可包括像素域中的像素數據塊或變換域中的變換系數塊(例如,在將例如離散余弦變換(DCT)、整數變換、小波變換或在概念上類似的變換等變換應用到表示經譯碼視頻塊與預測性視頻塊之間的像素差的殘余視頻塊數據之后)。在一些情況下,視頻塊可包括變換域中的經量化變換系數塊。
[0048]較小視頻塊可提供更佳分辨率,且可用于視頻幀的包含高等級細節的位置。一般來說,宏塊及有時稱為子塊的各種分區可被視為視頻塊。另外,可將切片視為多個視頻塊,例如,宏塊和/或子塊。每一切片可為視頻幀的可獨立解碼的單元。或者,幀本身可為可解碼單元,或幀的其它部分可被定義為可解碼單元。術語“經譯碼單元”或“譯碼單元”可指代視頻幀的任何可獨立解碼單元,例如,整個幀、幀切片、還被稱為序列或超幀的一組圖片(GOP),或根據可適用的譯碼技術定義的另一可獨立解碼單元。
[0049]一般來說,宏塊及各種子塊或分區皆可被視為視頻塊。另外,切片可被視為多個視頻塊,例如,宏塊和/或子塊或分區。一般來說,宏塊可指代一組色度值和亮度值,其定義像素的16乘16區。明度塊可包括值的16乘16集合,但可進一步分割成較小視頻塊,例如8乘8塊、4乘4塊、8乘4塊、4乘8塊或其它大小。兩個不同的色度塊可定義宏塊的色彩,并可各自包括與像素的16乘16區相關聯的色彩值的8乘8次取樣塊。宏塊可包含定義應用于宏塊的譯碼模式和/或譯碼技術的語法信息。宏塊或其它視頻塊可分組為可解碼單元,例如切片、幀或其它獨立單元。每一切片可為視頻幀的可獨立解碼的單元。或者,幀本身可為可解碼單元,或幀的其它部分可被定義為可解碼單元。
[0050]輸出接口224將經編碼圖像數據262發射到目的地裝置214。輸入接口228接收來自輸出接口 224的經編碼圖像數據262。本發明的各方面未必限于無線應用或設置。舉例來說,本發明的各方面可應用于空中電視廣播、有線電視發射、衛星電視發射、因特網視頻發射、編碼到存儲媒體上的經編碼數字視頻,或其它情景。因此,通信信道可包括適用于經編碼視頻和/或圖片數據的無線或有線媒體的任何組合。
[0051 ]輸出接口 224可將包含經編碼圖像數據262的位流發送到目的地裝置214的輸入接口 228。舉例來說,輸出接口 224可使用輸送級封裝技術(例如,MPEG-2系統技術)封裝位流中的經編碼圖像數據262。輸出接口 224可包括(例如)網絡接口、無線網絡接口、射頻發射器、發射器/接收器(收發器)或其它發射單元。在其它實例中,源裝置112可配置為將包含經編碼圖像數據262的位流存儲到物理媒體,例如,光學儲存媒體(例如壓縮光盤、數字視頻光盤、Blu-Ray光盤)、快閃存儲器、磁性媒體或其它存儲媒體。在這些實例中,存儲媒體可在物理上輸送到目的地裝置214的位置并由用于檢索數據的適當接口單元讀取。在一些實例中,在由輸出接口 224發射之前,包含經編碼圖像數據262的位流可由調制器/解調器(調制解調器)調制。
[0052]雖然圖像源116可提供多個視圖(S卩,增強型第一視圖156和增強型第二視圖158),但源裝置112可僅發射增強型第一視圖156或增強型第二視圖158。舉例來說,圖像源116可包括八相機陣列,旨在產生待從不同角度觀察的場景的四對視圖。源裝置112可僅將每一對的一個圖像發射到目的地裝置214。在一些實施例中,源裝置112可發送額外信息以及單個圖像,例如深度圖154。因此,在此實例中,并非發射8個視圖,源裝置112可針對四個視圖中的每一個以包括經編碼圖像數據262的位流的形式發射四個視圖和/或加上深度/視差信息(例如,深度圖154)。在一些實例中,處理器122可從用戶或從另一外部裝置接收圖像(例如,視差圖154)的視差彳g息。
[0053]在接收具有經編碼圖像數據262的位流并解封數據之后,在一些實例中,輸入接口228可將經編碼圖像數據262提供到解碼器230(或在一些實例中,提供到解調位流的調制解調器)。
[0054]解碼器230接收來自輸入接口 228的經編碼圖像數據262。解碼器230解碼經編碼圖像數據262以提取增強型第一視圖156和/或增強型第二視圖158。基于增強型第一視圖156和/或增強型第二視圖158,與圖像顯示器123相同或類似的圖像顯示器232可顯現二維或三維圖像。雖然圖2中未展示,但增強型第一視圖156和/或增強型第二視圖158可在源裝置112或目的地裝置214處經歷額外處理。
[0055]圖3為示出可實施根據本發明中描述的方面的技術的編碼器的實例的框圖。編碼器120可配置為執行本發明的任何或所有技術。舉例來說,模式選擇單元340(例如,運動估計單元342)可配置為基于由編碼器120接收的圖像序列(例如,左圖像之后是右圖像)來確定深度圖。然而,本發明的方面不限于此。在一些實例中,本發明中描述的技術可在編碼器120的各種組件之間共享。在一些實例中,作為補充或替代,處理器(圖中未展示)可配置為執行本發明中描述的任何或所有技術。
[0056]編碼器120可執行視頻切片內的視頻塊的幀內和幀間譯碼。幀內譯碼依靠空間預測來減少或移除給定視頻幀或圖片內的視頻中的空間冗余。幀間譯碼依靠時間預測來減少或移除視頻序列的鄰近幀或圖片內的視頻中的時間冗余。幀內模式(I模式)可指代若干基于空間的譯碼模式中的任一者。例如單向預測(P模式)或雙向預測(B模式)等幀間模式可指代若干基于時間的譯碼模式中的任一者。編碼器120還可使用本文所描述的幀間譯碼技術產生視差圖和/或深度圖。
[0057]如圖3中所展示,編碼器120接收在待編碼的圖像或視頻幀內的當前圖像塊。在圖3的實例中,編碼器120包含模式選擇單元340、參考幀存儲器364、求和器350、變換處理單元352、量化單元354及熵編碼單元356。模式選擇單元340又包含運動估計單元342、運動補償單元344、幀內預測單元346和分割單元348。為了視頻塊重建,編碼器120還包含反量化單元358、反變換單元360和求和器362。還可包含解塊濾波器(圖3中未展示)以便對塊邊界進行濾波,以從經重建視頻移除成塊假影。在需要時,解塊濾波器通常將對求和器362的輸出進行濾波。除了解塊濾波器外,還可使用額外濾波器(回路中或回路后)。為簡潔起見未展示此類濾波器,但是在必要時,這些濾波器可以對求和器350的輸出進行濾波(作為環路內濾波器)。
[0058]在編碼程序期間,編碼器120接收待譯碼的圖像、視頻幀或切片。圖像、幀或切片可被劃分成多個塊。運動估計單元342及運動補償單元344相對于一或多個參考幀中的一或多個塊執行對所接收塊的幀間預測性譯碼以提供時間預測。幀內預測單元346可替代地相對于與待譯碼塊相同的幀或切片中的一或多個相鄰塊執行對所接收塊的幀內預測性譯碼以提供空間預測。編碼器120可執行多個譯碼遍次(例如,以針對每一視頻數據塊選擇適當的譯碼模式)。
[0059]此外,分割單元348可以基于先前譯碼遍次中的先前分割方案的評估將圖像或視頻數據的塊分割成子塊。例如,分割單元348最初可基于速率失真分析(例如,速率失真最佳化)將圖像、幀或圖片分割成最大譯碼單元(LCU),并將LCU中的每一個分割成次譯碼單元(CU)。模式選擇單元340(例如,分割單元348)可進一步產生指示將LCU分割成子CU的四叉樹數據結構。四分樹的葉⑶可包含一或多個HJ和一或多個TU。
[0060]模式選擇單元340可基于錯誤結果選擇譯碼模式(例如,幀內或幀間)中的一個,并將所得幀內或幀間譯碼塊提供到求和器350以產生殘余塊數據,并提供到求和器362以重建構經編碼塊以用作參考幀。模式選擇單元340還將語法元素(例如,運動向量、幀內模式指示符、分割信息和其它此類語法信息)提供到熵編碼單元356。
[0061]運動估計單元342與運動補償單元344可高度集成,但出于概念目的而單獨地加以說明。由運動估計單元342執行的運動估計或運動信息的預測是產生運動向量的程序,其估計視頻塊的運動。運動向量可(例如)指示當前視頻幀或圖片內的視頻塊的PU相對于參考幀(或其它經譯碼單元)內的預測性塊相對于當前幀(或其它經譯碼單元)內正被譯碼的當前塊的位移。預測性塊是被發現在像素差方面與待譯碼塊緊密匹配的塊,像素差可通過絕對差總和(SAD)、平方差總和(SSD)或其它差度量來確定。在一些實例中,編碼器120可計算存儲于參考幀存儲器64中的參考圖片的子整數像素位置的值。舉例來說,編碼器120可內插參考圖片的四分之一像素位置、八分之一像素位置或其它分數像素位置的值。因此,運動估計單元342可相對于整數像素位置和分數像素位置執行運動搜索且輸出具有分數像素精度的運動向量。
[0062]運動估計單元342通過比較PU的位置與參考圖片的預測性塊的位置而計算經幀間譯碼切片中的視頻塊的PU的運動向量。參考圖片可選自第一參考圖片列表(例如,列表O)、第二參考圖片列表(例如,列表I)或第三參考圖片列表(例如,列表C),其中的每一者識別存儲在參考幀存儲器364中的一或多個參考圖片。可基于在空間上和/或在時間上與PU相鄰的塊的運動信息來選擇參考圖片。所選參考圖片可由參考索引識別。運動估計單元342將所計算的運動向量和/或參考索引發送到熵編碼單元356和/或運動補償單元344。
[0063]另外,運動估計單元342通過比較按順序接收的兩個圖像(例如,左圖像和右圖像)及以本文所描述的方式確定所接收圖像中的每一部分(例如,每一像素、每一像素群等)的視差值而產生視差圖。舉例來說,可通過分析兩個圖像之間的運動來確定視差值。運動估計單元342可放大視差圖以產生深度圖。
[0064]由運動補償單元344執行的運動補償可以涉及基于由運動估計單元342確定的運動向量來獲取或產生預測性塊。在接收到當前視頻塊的PU的運動向量后,運動補償單元344可在參考圖片列表中的一者中定位所述運動向量指向的預測性塊。求和器350通過從正譯碼的當前視頻塊的像素值減去預測性塊的像素值從而形成像素差值來形成殘余視頻塊,如下文所論述。在一些實施例中,運動估計單元342可相對于明度分量執行運動估計,且運動補償單元344可針對色度分量和明度分量兩者使用基于明度分量計算的運動向量。模式選擇單元340可產生與視頻塊和視頻切片相關聯的語法元素以供解碼器230在解碼視頻切片的視頻塊中使用。
[0065]在一些實施例中,作為對由運動估計單元342及運動補償單元344執行的幀間預測的替代,幀內預測單346可以對當前塊進行幀內預測。明確地說,幀內預測單元346可以確定用以編碼當前塊的幀內預測模式。在一些實例中,幀內預測單元346可(例如在單獨編碼編次期間)使用各種幀內預測模式對當前塊進行編碼,且幀內預測單元346(或在一些實例中為模式選擇單元340)可從所測試模式中選擇適當的幀內預測模式來使用。
[0066]舉例來說,幀內預測單元346可使用速率失真分析計算針對各種經測試幀內預測模式的速率失真值,且從所測試模式當中選擇具有最佳速率失真特性的幀內預測模式。速率失真分析一般確定經編碼塊與經編碼以產生所述經編碼塊的原始的未經編碼塊之間的失真(或誤差)的量,以及用于產生經編碼塊的位速率(也就是說,位數目)。幀內預測單元346可以從用于各種經編碼塊的失真及速率計算比率,以確定哪種幀內預測模式針對所述塊展現最佳速率失真值。
[0067]在針對塊選擇幀內預測模式之后,幀內預測單元346可將指示用于所述塊之所選擇幀內預測模式的信息提供到熵編碼單元356。熵編碼單元356可以對指示所選幀內預測模式的信息進行編碼。編碼器120在所發射的位流中可包含配置數據,其可包含多個幀內預測模式索引表和多個經修改的幀內預測模式索引表(也稱為碼字映射表)、對各種塊的上下文進行編碼的定義,以及對最可能幀內預測模式、幀內預測模式索引表和經修改幀內預測模式索引表的指示,以用于所述上下文中的每一者。
[0068]如上文所描述,編碼器120通過從正譯碼的原始視頻塊減去由模式選擇單元340提供的預測數據來形成殘余視頻塊。求和器350表示執行此減法運算的一或多個組件。變換處理單元352將變換(例如,DCT或概念上類似的變換(例如,小波變換、整數變換、子帶變換等))應用于殘差塊,從而產生包括殘余變換系數值的視頻塊。所述變換可將殘余信息從像素值域轉換到變換域(例如,頻域)。變換處理單元352可將所得變換系數發送到量化單元354。量化單元354將所述變換系數量化以進一步減小位速率。量化程序可以減少與系數中的一些或全部相關聯的位深度。可通過調節量化參數來修改量化的程度。在一些實例中,量化單元54可以接著執行對包含經量化的變換系數的矩陣的掃描。或者,熵編碼單元356可執行所述掃描。
[0069I 在量化之后,熵編碼單元356對經量化的變換系數進行熵譯碼。舉例來說,熵編碼單元356可執行CAVLC、CABAC、SBAC、PIPE譯碼或另一熵譯碼技術。就基于上下文的熵譯碼而論,上下文可以基于相鄰塊。在由熵譯碼單元356進行熵譯碼之后,可以將經編碼位流發射到另一裝置(例如,解碼器230),或將所述經編碼位流存檔以用于稍后發射或檢索。
[0070]反量化單元358和反變換單元360分別應用反量化和反變換以在像素域中重建殘余塊(例如,以供稍后用作參考塊)。運動補償單元344可以通過將殘余塊添加到存儲于參考幀存儲器364中的幀中的一者的預測性塊中來計算參考塊。運動補償單元344還可將一或多個內插濾波器應用于經重建的殘余塊以計算子整數像素值,以便用于運動估計。求和器362將經重建的殘余塊添加到由運動補償單元344產生的經運動補償的預測塊,以產生經重建的視頻塊以用于存儲于參考幀存儲器364中。經重建的視頻塊可由運動估計單元342和運動補償單元344用作參考塊以對后續視頻幀中的塊進行幀間譯碼。
[0071]圖4為示出可實施根據本發明中描述的方面的技術的解碼器的實例的框圖。解碼器230可配置為執行本發明的任何或所有技術。舉例來說,運動補償單元472可配置為產生視差圖和/或深度圖。然而,本發明的方面不限于此。在一些實例中,本發明中描述的技術可在解碼器230的各種組件之間共享。在一些實例中,作為補充或替代,處理器(圖中未展示)可配置為執行本發明中描述的任何或所有技術。
[0072]在圖4的實例中,解碼器230包含熵解碼單元470、運動補償單元472、幀內預測單元474、反量化單元476、反變換單元478、參考幀存儲器482及求和器480。在一些實例中,解碼器230可執行總體上與關于編碼器120(圖3)描述的編碼遍次互逆的解碼遍次。運動補償單元472可基于從熵解碼單元470接收的運動向量產生預測數據,而幀內預測單元474可基于從熵解碼單元470接收的幀內預測模式指示符產生預測數據。
[0073]在解碼程序期間,解碼器230從編碼器120接收表示經編碼圖像或視頻切片的塊和相關聯語法元素的經編碼圖像位流。解碼器230的熵解碼單元470對位流進行熵解碼以產生經量化的系數、運動向量或幀內預測模式指示符和/或其它語法元素。熵解碼單元470將運動向量及其它語法元素轉發到運動補償單元472。解碼器230可以接收圖像、視頻切片層級和/或塊層級處的語法元素。
[0074]當圖像或視頻切片經譯碼為經幀內譯碼(I)切片時,幀內預測單元474可以基于用信號發出的幀內預測模式及來自當前幀或圖片的先前經解碼塊的數據產生用于當前圖像或視頻切片的塊的預測數據。在圖像或幀經譯碼為經幀間譯碼(例如,B、P或GPB)切片時,運動補償單元472基于運動向量及從熵解碼單元470接收的其它語法元素而產生用于當前視頻切片的視頻塊的預測性塊。可以從參考圖片列表中的一者內的參考圖片中的一者產生預測性塊。解碼器230(例如,運動補償單元472)可基于存儲于參考幀存儲器482中的參考圖片使用默認建構技術建構參考幀列表:列表0、列表I和/或列表C。運動補償單元472通過剖析運動向量和其它語法元素確定用于當前視頻切片的視頻塊的預測信息,并且使用所述預測信息產生用于正解碼的當前視頻塊的預測性塊。舉例來說,運動補償單元472使用一些接收到的語法元素確定用以對視頻切片的塊進行譯碼的預測模式(例如,幀內預測或幀間預測)、幀間預測切片類型(例如,B切片、P切片或GPB切片)、切片的參考圖片列表中的一個或多個的建構信息、圖像或切片的每一經幀間編碼塊的運動向量、圖像或切片的每一經幀間譯碼塊的幀間預測狀態,和/或用以對當前圖像或視頻切片中的塊進行解碼的其它信息。
[0075]另外,運動估計單元472通過比較按順序接收的兩個圖像(例如,左圖像和右圖像)及以本文所描述的方式確定所接收圖像中的每一部分(例如,每一像素、每一像素群等)的視差值而產生視差圖。舉例來說,可通過分析兩個圖像之間的運動來確定視差值。運動補償單元472可放大視差圖以產生深度圖。
[0076]運動補償單元472還可基于內插濾波器執行內插。運動補償單元472可使用由編碼器120在視頻塊的編碼期間使用的內插濾波器來計算參考塊的子整數像素的內插值。在此情況下,運動補償單元472可根據接收的語法元素確定由編碼器120使用的內插濾波器且使用所述內插濾波器來產生預測性塊。
[0077]反量化單元476對提供在位流中且由熵解碼單元70解碼的經量化變換系數進行反量化(例如,解量化)。反量化程序可包含使用由編碼器120針對視頻切片中的每一視頻塊所計算的量化參數QPy以確定應該應用的量化程度且同樣確定應該應用的反量化程度。
[0078]反變換單元478對變換系數應用反變換(例如反DCT)、反整數變換,或概念上類似的反變換程序,以便產生像素域中的殘余塊。
[0079]在一些情況下,反變換單元478可對系數應用二維(2-D)反變換(在水平及垂直方向上)。根據本發明的技術,反變換單元478可相反地對TU中的每一個中的殘余數據應用水平1-D反變換、垂直1-D反變換或未對其應用變換。可將在編碼器120處應用于殘余數據的變換的類型用信號發出到解碼器230以將適當類型的反變換應用于變換系數。
[0080]在運動補償單元472基于運動向量和其它語法元素產生當前塊的預測性塊后,解碼器230通過對來自反變換單元478的殘余塊與由運動補償單元472產生的對應預測性塊求和而形成經解碼的視頻塊。求和器480表示執行此求和運算的一或多個組件。在需要時,還可應用解塊濾波器以對經解碼塊進行濾波,以便移除成塊假影。還可使用其它環路濾波器(在譯碼環路中或在譯碼環路之后),以使像素轉變變平滑或者以其它方式改善視頻質量。接著將給定幀或圖片中的經解碼視頻塊存儲在參考圖片存儲器482中,參考圖片存儲器482存儲用于后續運動補償的參考圖片。參考幀存儲器482還存儲經解碼視頻以用于稍后在顯示裝置(例如,圖1的圖像裝置123或圖2的圖像顯示器232)上呈現。
[0081 ] 計算深度圖
[0082]關于編碼器(例如,編碼器120)描述本文所揭示的技術。然而,這并不意味著限制。解碼器(例如,解碼器230)可使用相同技術以實現類似結果。
[0083]編碼器(例如,編碼器120)將原始視頻幀轉換成標準壓縮格式。壓縮程序受助于針對經幀間譯碼幀計算像素類/塊類運動的運動檢測算法。如上文所論述,經幀間譯碼幀可為兩個類型:P幀及B幀。P幀含有關于前一個經幀內譯碼幀(I幀)的向前運動值。B幀含有關于前一個及下一個經幀內譯碼幀的雙向運動值。經幀內譯碼幀是經空間編碼的。經幀內譯碼幀與任何運動值或流中的任何其它幀無關聯。經幀間譯碼幀中的運動值是兩個視頻幀之間的視差或差異。在實施例中,如果用包含3D視頻流的交錯的左(L)視圖與右(R)視圖(例如,使用兩個相機捕獲的圖像)的視頻流來替換普通的2D視頻流(例如,使用單個相機捕獲的圖像),那么運動值表示每一對L及R幀之間的視差(例如,L幀與R幀之間的空間定向差)。
[0084]編碼器可配置為將交錯的立體視頻的替代幀編碼為I幀及P幀。圖5示出幀的排序。如圖5中所示,序列包含四個幀=L1 502,Ri 504,L2 506及R2 508。為簡單起見,僅示出四個幀;然而,本文所描述的技術適用于任何數目的幀。在實施例中,L1 502為由編碼器120接收的第一幀,且R2 508為由編碼器120接收的最后一個幀。L幀(例如,L1 502及1^ 506)經編碼為I幀且R幀(例如,Ri 504及他508)經編碼為P幀。因此,如由編碼器120接收的幀的序列在I幀與P幀之間交替。這有助于確保可計算視差值。
[0085]圖6示出深度計算流程。如圖6中所示,編碼器120接收幀L1 502,Ri 504,L2 506及R2 508的序列作為數據608。在實施例中,編碼器120經設置成高比特率設置,以使得P幀具有大部分經幀間譯碼的宏塊(MB)。作為實例,最低MB大小可為8 X 8。可能需要在R幀中具有盡可能多的經幀間譯碼的宏塊,因為經幀間譯碼的宏塊含有又關于相對應的L幀的運動向量信息O
[0086]編碼器120可從MB(由方框602表示)提取運動向量信息作為數據610,且經幀間譯碼及經幀內譯碼的塊可以圖形方式表示于減少取樣的深度圖620中。減少取樣的深度圖620中的黑色塊(圖中未展示)可表示經幀內譯碼塊。經幀內譯碼塊在受阻或顯露區域中可能是常見的,其中在L幀與R幀之間可沒有發現匹配。
[0087]在實施例中,X方向上的MB運動可大致表示兩個立體幀之間的塊類視差(其可轉換成深度圖KMB大小越小,深度圖分辨率就越高。可通過細化從經幀內譯碼的補丁和噪聲深度值中進一步清除MB幀,所述細化例如是中值濾波(例如,5 X 5中值濾波器)(由方框604表示)ο在實例中,因為最低MB大小為8 X 8像素,所以如與原始輸入幀相比,MB運動圖像經8倍減少取樣。為了應用增強算法,圖像可必須增加取樣達8倍(或另一類似值)。
[0088]放大由方框606表示。在實施例中,編碼器120通過偏素重復深度圖620來放大深度圖620。編碼器120可以使用濾波器核的大小、從核中心濾波的像素的空間距離(例如,Sd)、和/或在經濾波的像素處計算的視差梯度及在經濾波的像素處計算的圖像的色度分量的梯度來確定用于每一像素的深度濾波器。深度濾波器可為兩個高斯分量的乘積:空間分量(例如,-e-(sd*sd)As)和圖像色彩及深度值梯度分量(例如,e-(id*id)Ac),其中乙及\。可決定對應高斯函數(Gaussian Kernel)的傳播因數。編碼器120可對先前濾波的深度圖執行多個濾波迭代以改進深度圖。在另一個實施例中,編碼器120使用傳感器輸入放大深度圖620。舉例來說,編碼器120可使用簡單的雙線性放大來創建初始估計。編碼器120可識別初始估計中的深度轉變,使用外推填入轉變處的深度值,并使所填充的深度值平滑(例如,減小深度轉變處的深度值的差)。放大結果可由深度圖624以圖形方式表示,所述深度圖624可包含較少黑色塊并為減少取樣的深度圖620的增加取樣版本。
[0089]由方框606表示并由編碼器120執行的放大可具有若干好處。舉例來說,來自立體圖像的深度圖計算可以是計算密集型程序。使用本文所描述的程序,如果編碼器120處理較小圖像或產生稀疏的(例如,減少取樣的)深度圖,那么編碼器120可接著減少計算資源使用并提高處理速度。另外,如果不準確,那么放大的深度圖可能影響深度圖分段和最終增強質量。因此,使用本文所描述的程序,與使用通用放大程序的編碼器相比,編碼器120可改進深度圖分段和/或最終增強質量。
[0090]在實施例中,由編碼器120產生的深度圖相較于使用通用放大程序產生的深度圖具有較高的增強質量。雖然地面實況深度圖(例如,理想深度圖)相較于由編碼器120產生的深度圖可具有較高增強質量,但編碼器120可使用較少樣本(例如,樣本數目的1/256),如在產生地面實況深度圖時將使用的。
[0091]使用深度圖執行圖像增強
[0092]在實施例中,深度圖(例如,深度圖624)可用以增強立體圖像或視頻。舉例來說,深度圖624可用以證實場景的邊緣增強(例如,場景中的對象的銳化)。作為另一實例,深度圖624可用以調整場景中的對比度,改變場景中的色彩,改變場景中的幾何形狀和/或類似者。邊緣增強的強度可基于場景中的對象深度而變化。在實施例中,想法是使用光標選擇圖片中的對象。算法基于深度圖從剩余圖像中析出對象或區域,并基于深度應用不同的增強程度或不同的濾波器。
[0093]圖7示出用于增強圖像的流程。如圖7中所示,圖像702由處理器122增強為增強型圖像708。在點710處選擇圖像702的一部分。處理器122可在較早時間響應于選擇或響應于深度圖704的產生而從編碼器120檢索深度圖704。作為實例,點710處的圖像702的深度值為D。接近D的閾值土 Δ可由處理器122設置。閾值土 Δ也可替代地由處理器122基于最大深度區間計算。
[0094]使用大小為NXN的筆劃(或類似形狀),處理器122可通過從點710處開始識別圖像702中深度為0± Δ (例如,D加上或減去閾值)的連續部分來增長環繞點710的區域R。在實施例中,區域R可為任何形式或形狀。
[0095]在一些實施例中,一旦到達圖像702中具有除深度D±Δ之外的深度的一部分,處理器122即停止在一方向上增長區域R。在其它實施例中,一旦區域R達到預設邊界條件,處理器122即停止增長區域R。在其它實施例中,一旦區域R的邊界達到與點710相距一定距離,處理器122即在一方向上停止增長區域R。
[0096]一旦處理器122停止增長區域R,處理器122即可接著增強圖像702在區域R內的一部分。舉例來說,可通過使用高通濾波器來增強區域R內的部分。圖像在區域R外的部分可通過使用高斯模糊平滑(或模糊),所述高斯模糊與深度D與圖像702的相應區域的深度之間的差成正比。作為另一實例,可通過修改區域R內的像素的色彩來增強區域R內的部分。作為另一實例,區域R內的部分可經切割和/或移動到圖像702的另一部分。如圖7中所示,當選擇點710時,深度圖706的白色部分表示區域R的形狀和大小同樣,當選擇點710時,圖像708中的區域712大致表示區域R的形狀和大小。當選擇點710時,區域714大致表示在區域R外的圖像708的面積。
[0097]圖8示出用于增強圖像的另一流程。如圖8中所示,圖像702的不同的非相鄰部分可具有相同深度值(在閾值以內)。舉例來說,深度圖802的白色部分皆具有在閾值以內的相同深度值。然而,因為在深度圖802中的白色部分之間存在間隙,所以并非所有白色部分將由處理器122增強。如上文關于圖7所論述,在圖像702中選擇點710。因此,雖然圖像702的若干部分包含在閾值以內的相同深度值,但僅增強了圖像702中包含與點710鄰接的像素并在點710處具有在深度閾值以內的深度值的部分(例如,將圖像702中環繞點710的部分增強到在深度圖802中到達邊緣的點)。深度圖706示出圖像702中滿足此類準則的那些部分。因此,增強圖像708的區域712,且不干涉或劣化圖像708的其它部分。
[0098]實例使用情況
[0099]圖9示出實例原始圖像902。圖1OA示出可由編碼器120基于圖9中的原始圖像902計算的深度圖1002。圖1OB示出細化及放大(例如,到O至255刻度)后的深度圖1002。
[0100]圖11至13示出使用如本文所描述的縮放深度圖1002增強的各種圖像。如圖11中所示,選擇點1104,并增強與點1104鄰接并共享在閾值以內的深度值的像素。劣化點1106和圖像902的其它部分。
[0101]如圖12中所示,選擇點1106,并增強與點1106鄰接并共享在閾值以內的深度值的像素。劣化點1104和圖像902的其它部分。
[0102]如圖13中所示,選擇點1308,并增強與點1308鄰接并共享在閾值以內的深度值的像素。劣化點1104及1106和圖像902的其它部分。
[0103]圖14示出用于增強圖像的實例方法1400。方法1400可由便攜式電子裝置的由一或多個組件執行。舉例來說,方法1400可例如由編碼器120(例如,運動估計單元342)、解碼器230(例如,運動補償單元472)和/處理器122執行。在一些實施例中,可以使用其它組件來實施本文中所描述的步驟中的一或多個步驟。
[0104]在框1402處,檢索存儲于存儲器單元中的左圖像和右圖像。在實施例中,左圖像及右圖像各自描繪相同的場景。在框1404處,基于左圖像與右圖像之間的空間定向差確定深度圖。
[0105]在框1406處,識別左圖像或右圖像中由用戶選擇的一部分。在框1408處,基于所確定的深度圖確定在由用戶選擇的所述部分周圍的增強區域。在框1410處,增強所述增強區域。
[0106]應認識到,取決于實例,本文所描述的技術中的任一者的某些動作或事件可按不同序列執行、可添加、合并或全部省略(例如,實踐所述技術并不需要所有的所描述動作或事件)。此外,在某些實例中,可(例如)通過多線程處理、中斷處理或多個處理器同時而非依序地執行動作或事件。
[0107]在一或多個實例中,所描述的功能可以硬件、軟件、固件或其任何組合來實施。如果以軟件來實施,那么所述功能可作為一或多個指令或代碼存儲在計算機可讀媒體上或經由計算機可讀媒體予以傳輸,且由基于硬件的處理單元執行。計算機可讀媒體可包含計算機可讀存儲媒體,所述計算機可讀存儲媒體對應于有形媒體,例如,數據存儲媒體或包含(例如)根據通信協議促進計算機程序從一處傳送至另一處的任何媒體的通信媒體。以此方式,計算機可讀媒體通常可以對應于(I)有形計算機可讀存儲媒體,其是非暫時性的,或(2)通信媒體,例如信號或載波。數據存儲媒體可為可由一或多個計算機或一或多個處理器接入以檢索用于實施本發明中描述的技術的指令、代碼和/或數據結構的任何可用媒體。計算機程序產品可以包含計算機可讀媒體。
[0108]借助于實例而非限制,此類計算機可讀存儲媒體可包括RAM、R0M、EEPR0M、CD_R0M或其它光盤存儲裝置、磁盤存儲裝置或其它磁性存儲裝置、快閃存儲器或可以用來存儲呈指令或數據結構的形式的期望程序代碼并且可以由計算機接入的任何其它媒體。并且,任何連接被恰當地稱作計算機可讀媒體。舉例來說,如果使用同軸纜線、光纖纜線、雙絞線、數字訂戶線(DSL)或例如紅外線、無線電和微波等無線技術從網站、服務器或其它遠程源發射指令,那么同軸纜線、光纖纜線、雙絞線、DSL或例如紅外線、無線電和微波等無線技術包含在媒體的定義中。但是,應理解,計算機可讀存儲媒體和數據存儲媒體并不包含連接、載波、信號或其它暫時媒體,而是實際上針對于非暫時性有形存儲媒體。如本文中所使用,磁盤和光盤包含壓縮光盤(CD)、激光光盤、光學光盤、數字多功能光盤(DVD)、軟性磁盤和藍光光盤,其中磁盤通常以磁性方式再現數據,而光盤利用激光以光學方式再現數據。以上各項的組合也應包含在計算機可讀媒體的范圍內。
[0109]可由例如一或多個數字信號處理器(DSP)、通用微處理器、專用集成電路(ASIC)、現場可編程邏輯陣列(FPGA)或其它等效集成或離散邏輯電路等一或多個處理器來執行指令。因此,如本文中所使用的術語“處理器”可指前述結構或適合于實施本文中所描述的技術的任何其它結構中的任一者。另外,在一些方面中,本文所描述的功能性可以在經配置用于編碼和解碼的專用硬件和/或軟件模塊內提供,或者并入在組合編解碼器中。而且,所述技術可完全實施于一或多個電路或邏輯元件中。
[0110]本發明的技術可在廣泛多種裝置或設備中實施,所述裝置或設備包含無線手持機、集成電路(IC)或IC的集合(例如,芯片組)。本發明中描述各種組件、模塊或單元來強調經配置以執行所揭示的技術的裝置的功能方面,但未必需要通過不同硬件單元實現。實際上,如上文所描述,各種單元可以結合合適的軟件和/或固件組合在編碼解碼器硬件單元中,或者通過互操作硬件單元的集合來提供,所述硬件單元包含如上文所描述的一或多個處理器。描述了各種示例。這些及其它實例在所附權利要求書的范圍內。
【主權項】
1.一種用于增強圖像的方法,所述方法包括: 檢索存儲于存儲器單元中的左圖像和右圖像,所述左圖像和所述右圖像各自描繪來自不同視角的相同場景; 基于所述左圖像與所述右圖像之間的空間定向差異確定深度圖; 識別所述左圖像或所述右圖像中由用戶選擇的一部分; 基于所述所確定的深度圖確定在由所述用戶選擇的所述部分周圍的增強區域;及增強所述增強區域。2.根據權利要求1所述的方法,其進一步包括劣化所述左圖像或所述右圖像中未由所述用戶選擇的一部分。3.根據權利要求2所述的方法,其中劣化所述左圖像或所述右圖像中未由所述用戶選擇的一部分包括模糊所述左圖像或所述右圖像中未由所述用戶選擇的所述部分。4.根據權利要求1所述的方法,其中確定深度圖進一步包括: 基于所述左圖像與所述右圖像之間的所述空間定向差確定視差圖,其中所述左圖像的一部分與所述右圖像的一部分之間的較大空間定向差指示較高視差; 放大所述視差圖;及 基于所述經放大的視差圖確定所述深度圖。5.根據權利要求4所述的方法,其中確定視差圖包括確定所述左圖像中的塊與所述右圖像中的對應塊之間的距離,其中如果第一塊和第二塊在閾值以內是相同的,那么所述第一塊與所述第二塊相對應。6.根據權利要求1所述的方法,其中由所述用戶選擇的所述部分包括第一深度,且其中確定在所述部分周圍的增強區域進一步包括: 從所述左圖像或所述右圖像中由所述用戶選擇的具有在所述第一深度的閾值以內的深度的所述部分開始,識別所述左圖像或所述右圖像的連續部分;及 增加在由所述用戶選擇的所述部分周圍的所述增強區域的大小,直到識別到所述左圖像或所述右圖像的一部分,所述部分不具有在所述第一深度的閾值以內的深度,表示預設邊界,或為距由所述用戶選擇的所述部分的閾值距離。7.根據權利要求1所述的方法,其中增強包括以下中的至少一個:銳化所述增強區域; 將所述增強區域移動到所述左圖像或所述右圖像的不同部分,或調整所述增強區域的色彩。8.—種用于增強圖像的設備,所述設備包括: 用于檢索存儲于存儲器單元中的左圖像和右圖像的裝置,所述左圖像和所述右圖像各自描繪來自不同視角的相同場景; 用于基于所述左圖像與所述右圖像之間的空間定向差確定深度圖的裝置; 用于識別所述左圖像或所述右圖像中由用戶選擇的一部分的裝置; 用于基于所述所確定的深度圖確定在由所述用戶選擇的所述部分周圍的增強區域的裝置;及 用于增強所述增強區域的裝置。9.根據權利要求8所述的設備,其進一步包括用于劣化所述左圖像或所述右圖像中未由所述用戶選擇的一部分的裝置。10.根據權利要求9所述的設備,其中用于劣化所述左圖像或所述右圖像中未由所述用戶選擇的一部分的裝置包括用于模糊所述左圖像或所述右圖像中未由所述用戶選擇的所述部分的裝置。11.根據權利要求8所述的設備,其中用于確定深度圖的裝置進一步包括: 用于基于所述左圖像與所述右圖像之間的所述空間定向差確定視差圖的裝置,其中所述左圖像的一部分與所述右圖像的一部分之間的較大空間定向差指示較高視差; 用于放大所述視差圖的裝置;及 用于基于所述經放大的視差圖確定所述深度圖的裝置。12.根據權利要求11所述的設備,其中用于確定視差圖的裝置包括用于確定所述左圖像中的塊與所述右圖像中的對應塊之間的距離的裝置,其中如果第一塊和第二塊在閾值以內是相同的,那么所述第一塊與所述第二塊相對應。13.根據權利要求8所述的設備,其中由所述用戶選擇的所述部分包括第一深度,且其中用于確定在所述部分周圍的增強區域的裝置進一步包括: 用于從所述左圖像或所述右圖像中由所述用戶選擇的具有在所述第一深度的閾值以內的深度的所述部分開始識別所述左圖像或所述右圖像的連續部分的裝置;及 用于增加在由所述用戶選擇的所述部分周圍的所述增強區域的大小直到識別到所述左圖像或所述右圖像的一部分的裝置,所述部分不具有在所述第一深度的閾值以內的深度,表示預設邊界,或為距由所述用戶選擇的所述部分的閾值距離。14.根據權利要求8所述的設備,其中用于增強的裝置包括以下中的至少一個:用于銳化所述增強區域的裝置;用于將所述增強區域移動到所述左圖像或所述右圖像的不同部分的裝置,或用于調整所述增強區域的色彩的裝置。15.根據權利要求8所述的設備,其中所述用于檢索的裝置和所述用于確定深度圖的裝置包括編碼器,且其中所述用于識別的裝置、所述用于確定增強區域的裝置和所述用于增強的裝置包括處理器。16.—種非暫時計算機可讀媒體,其包括在經執行時引起設備進行以下操作的代碼: 檢索存儲于存儲器單元中的左圖像和右圖像,所述左圖像和所述右圖像各自描繪來自不同視角的相同場景; 基于所述左圖像與所述右圖像之間的空間定向差確定深度圖; 識別所述左圖像或所述右圖像中由用戶選擇的一部分; 基于所述所確定的深度圖確定在由所述用戶選擇的所述部分周圍的增強區域;及增強所述增強區域。17.根據權利要求16所述的媒體,其進一步包括在經執行時引起設備劣化所述左圖像或所述右圖像中未由所述用戶選擇的一部分。18.根據權利要求17所述的媒體,其進一步包括在經執行時引起設備模糊所述左圖像或所述右圖像中未由所述用戶選擇的所述部分。19.根據權利要求16所述的媒體,其進一步包括在經執行時引起設備進行以下操作的代碼: 基于所述左圖像與所述右圖像之間的所述空間定向差確定視差圖,其中所述左圖像的一部分與所述右圖像的一部分之間的較大空間定向差指示較高視差; 放大所述視差圖;及 基于所述經放大的視差圖確定所述深度圖。20.根據權利要求19所述的媒體,其進一步包括在經執行時引起設備確定所述左圖像中的塊與所述右圖像中的對應塊之間的距離的代碼,其中如果第一塊和第二塊在閾值以內是相同的,那么所述第一塊與所述第二塊相對應。21.根據權利要求16所述的媒體,其中由所述用戶選擇的所述部分包括第一深度。22.根據權利要求21所述的媒體,其進一步包括在經執行時引起設備進行以下操作的代碼: 從所述左圖像或所述右圖像中由所述用戶選擇的具有在所述第一深度的閾值以內的深度的所述部分開始,識別所述左圖像或所述右圖像的連續部分;及 增加在由所述用戶選擇的所述部分周圍的所述增強區域的大小,直到識別到所述左圖像或所述右圖像的一部分,所述部分不具有在所述第一深度的閾值以內的深度,表示預設邊界,或為距由所述用戶選擇的所述部分的閾值距離。23.根據權利要求16所述的媒體,其進一步包括在經執行時引起設備進行以下操作中的至少一者的代碼:銳化所述增強區域;將所述增強區域移動到所述左圖像或所述右圖像的不同部分,或調整所述增強區域的色彩。24.一種用于增強圖像的裝置,所述裝置包括: 存儲器單元,其配置為存儲左圖像和右圖像,所述左圖像和所述右圖像各自描繪來自不同視角的相同場景; 譯碼器,其配置為從所述存儲器單元中檢索所述左圖像和所述右圖像,其中所述譯碼器進一步配置為基于所述左圖像與所述右圖像之間的空間定向差確定深度圖; 及 耦合至所述譯碼器的處理器,所述處理器配置為識別所述左圖像或所述右圖像中由用戶選擇的一部分,其中所述處理器進一步配置為基于所述所確定的深度圖確定在由所述用戶選擇的所述部分周圍的增強區域,且其中所述處理器進一步配置為增強所述增強區域。25.根據權利要求24所述的裝置,其中所述處理器進一步配置為劣化所述左圖像或所述右圖像中未由所述用戶選擇的一部分。26.根據權利要求25所述的裝置,其中所述處理器進一步配置為模糊所述左圖像或所述右圖像中未由所述用戶選擇的所述部分。27.根據權利要求24所述的裝置,其中所述譯碼器進一步配置為: 基于所述左圖像與所述右圖像之間的所述空間定向差確定視差圖,其中所述左圖像的一部分與所述右圖像的一部分之間的較大空間定向差指示較高視差; 放大所述視差圖;及 基于所述經放大的視差圖確定所述深度圖。28.根據權利要求27所述的裝置,其中所述譯碼器配置為確定所述左圖像中的塊與所述右圖像中的對應塊之間的距離,且其中如果第一塊和第二塊在閾值以內是相同的,那么所述第一塊與所述第二塊相對應。29.根據權利要求24所述的裝置,其中由所述用戶選擇的所述部分包括第一深度,且其中所述處理器進一步配置為: 從所述左圖像或所述右圖像中由所述用戶選擇的具有在所述第一深度的閾值以內的深度的所述部分開始,識別所述左圖像或所述右圖像的連續部分;及 增加在由所述用戶選擇的所述部分周圍的所述增強區域的大小,直到識別到所述左圖像或所述右圖像的一部分,所述部分不具有在所述第一深度的閾值以內的深度,表示預設邊界,或為距由所述用戶選擇的所述部分的閾值距離。30.根據權利要求24所述的裝置,其中所述處理器進一步配置為以下中的至少一者:銳化所述增強區域,將所述增強區域移動到所述左圖像或所述右圖像的不同部分,或調整所述增強區域的色彩。
【文檔編號】G06T5/00GK106068527SQ201580011468
【公開日】2016年11月2日
【申請日】2015年2月23日 公開號201580011468.3, CN 106068527 A, CN 106068527A, CN 201580011468, CN-A-106068527, CN106068527 A, CN106068527A, CN201580011468, CN201580011468.3, PCT/2015/17104, PCT/US/15/017104, PCT/US/15/17104, PCT/US/2015/017104, PCT/US/2015/17104, PCT/US15/017104, PCT/US15/17104, PCT/US15017104, PCT/US1517104, PCT/US2015/017104, PCT/US2015/17104, PCT/US2015017104, PCT/US201517104
【發明人】S·薩胡, M·比斯瓦斯
【申請人】高通股份有限公司