TWI815854B - 具低複雜度框率升頻轉換 - Google Patents

具低複雜度框率升頻轉換 Download PDF

Info

Publication number
TWI815854B
TWI815854B TW108103219A TW108103219A TWI815854B TW I815854 B TWI815854 B TW I815854B TW 108103219 A TW108103219 A TW 108103219A TW 108103219 A TW108103219 A TW 108103219A TW I815854 B TWI815854 B TW I815854B
Authority
TW
Taiwan
Prior art keywords
search
motion
block
sub
motion vector
Prior art date
Application number
TW108103219A
Other languages
English (en)
Other versions
TW201943277A (zh
Inventor
修曉宇
何玉文
言 葉
Original Assignee
美商Vid衡器股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商Vid衡器股份有限公司 filed Critical 美商Vid衡器股份有限公司
Publication of TW201943277A publication Critical patent/TW201943277A/zh
Application granted granted Critical
Publication of TWI815854B publication Critical patent/TWI815854B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/57Motion estimation characterised by a search window with variable size or shape
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

所描述的是用於選擇在視訊塊的框率升頻轉換(FRUC)碼化中使用的運動向量(MV)的系統及方法。在一個實施例中,第一運動向量候選集合被識別用於該塊的FRUC預測。搜尋中心是基於該第一運動向量候選集合而被定義,並且確定搜尋視窗,該搜尋視窗具有選定的寬度並以該搜尋中心為中心。在該搜尋視窗內執行針對選定的MV的搜尋。在一些實施例中,使用聚類演算法來處理初始MV集合,以產生用作第一集合的數量較少的MV。所選擇的MV可以經受運動精化搜尋,該運動精化搜尋也可以在受約束的搜尋範圍上執行。在附加實施例中,搜尋疊代會受到約束,以限制複雜度。

Description

具低複雜度框率升頻轉換
相關申請案的交叉引用
本申請案是2018年1月29日申請的名稱為“低複雜度的框率升頻轉換”的美國臨時專利申請案序號62/623,143的非臨時申請案,並且主張依照35 U.S.C. §119(e)享有優先權,該申請案在這裡被全部引入以作為參考。
視訊碼化系統被廣泛用於壓縮數位視訊信號,以減少此類信號的儲存需求及/或傳輸頻寬。在不同類型的視訊碼化系統(例如基於塊、基於小波以及基於物件的系統)中,現今最廣泛使用以及部署的是基於塊的混合視訊碼化系統。基於塊的視訊碼化系統的範例包括國際視訊碼化標準,例如MPEG1/2/4第2部分、H.264/MPEG-4 第10部分AVC、VC-1、以及由ITU-T/SG16/Q.6/VCEG以及ISO/IEC/MPEG的JCT-VC(視訊碼化聯合協作組)開發的稱為高效視訊碼化(HEVC)的最新視訊碼化標準。
於2013年10月完成的HEVC標準的第一個版本,與前一代視訊碼化標準H.264/MPEG AVC相較,其節省了大約50%的位元速率或是提供了等效的感知品質。與其前身相較,雖然HEVC標準提供了顯著的碼化改進,但是有證據表明,使用附加的碼化工具可以實現超越HEVC的更高的碼化效率。據此,VCEG以及MPEG全都啟動了有關新的碼化技術的探索性工作,以用於未來視訊碼化標準化。在2015年10月,ITU-T VECG以及ISO/IEC MPEG成立了聯合視訊探索小組(JVET),以開始對相較於HEVC能夠大幅增強碼化效率的先進技術進行重要研究。同月,針對未來的視訊碼化探索工作,建立了稱為聯合探索模型(JEM)的軟體代碼庫。JEM參考軟體以JCT-VC為HEVC開發的HEVC測試模型(HM)為基礎。較佳地,所提議的任何附加碼化工具都可以被集成在JEM軟體中、並且可以用JVET通用測試條件(CTC)而被測試。
範例性實施例包括在視訊編碼(encoding)以及解碼(decoding)(統稱為“碼化(coding)”)中使用的方法。在一個範例中,提供了一種用於對視訊進行碼化的方法,該視訊包含了包括目前圖像的多個圖像。針對目前圖像中的至少一個目前塊(例如其可以是碼化單元或子碼化單元塊),第一運動向量候選集合被識別用於該塊的框率升頻轉換(FRUC)預測。該第一運動向量候選集合可以是主運動向量,其中每一個主運動向量與一個或多個初始運動向量的叢集(cluster)相關聯。基於第一運動向量候選集合來定義搜尋中心。該搜尋中心可以位於由該第一集合中的一個或多個運動向量候選的平均確定的位置。
確定搜尋視窗,該搜尋視窗具有選定的寬度且以搜尋中心為中心。第一運動向量候選集合是藉由截割該第一集合中落在搜尋視窗之外的任何運動向量而被處理,以落入搜尋視窗以內。可以執行對選定的運動向量的搜尋,該搜尋會從經處理的第一運動向量候選集合中選擇運動向量。
在一些範例性實施例中,該搜尋視窗的寬度被選擇,以允許使用記憶體快取來執行搜尋,同時限制對外部記憶體的存取次數。
運動精化搜尋可以用選定的運動向量為開始來執行。在一些實施例中,精化搜尋的搜尋範圍是受到約束的,以允許使用記憶體快取來執行精化搜尋並且限制主記憶體被存取的次數。在一些實施例中,搜尋疊代次數會受到約束,以限制碼化複雜性。
在一些實施例中,第一運動向量候選集合是使用高級運動向量預測或別的技術識別的初始候選集合。在一些實施例中,聚類演算法被執行以聚類該初始運動向量候選集合,並且每一個叢集的典型運動向量(例如質心)被貢獻給第一集合。在一些實施例中,叢集的數量會受到約束,以限制碼化複雜度。
所選擇的(並且在一些情況下是精化的)運動向量可被用於預測目前塊。在一種由編碼器執行的方法中,關於目前塊的預測會與輸入塊相比較,確定殘差,並且該殘差會被編碼在位元流中。在一種由解碼器執行的方法中,殘差從位元流被解碼、並且被添加到預測中,以產生可被顯示的(有可能在濾波之後)的重建塊。
所揭露的實施例進一步包括編碼器以及解碼器,其具有處理器以及儲存了可通過操作來執行這裡描述方法的指令的非暫態電腦可讀儲存媒體。所揭露的實施例進一步包括用於儲存使用這裡描述的任何方法產生的位元流的非暫態電腦可讀儲存媒體。
基於塊 的視訊碼化
HEVC測試模型(HM)以及聯合探索模型(JEM)軟體都是被建構在基於塊的混合視訊碼化框架上。第1圖是基於塊的混合視訊編碼系統的方塊圖。輸入視訊訊號102以逐塊的方式被處理。在HEVC中,擴展塊大小(其被稱為“碼化單元”或CU)被用於有效壓縮高解析度(1080p及以上)視訊訊號。在HEVC中,CU可以高達64x64個像素。CU可被進一步分割為預測單元(PU),其中為該預測單元而應用單獨的預測方法。針對每一個輸入視訊塊(MB或CU),空間預測(160)及/或時間預測(162)可以被執行。空間預測(或“訊框內預測”)使用來自相同視訊圖像/切片中的已碼化的相鄰塊的樣本(其被稱為參考樣本)的像素以預測目前視訊塊。空間預測減小了視訊訊號中固有的空間冗餘度。時間預測(也被稱為“訊框間預測”或“運動補償預測”)使用來自已碼化的視訊圖像的重建像素來預測目前視訊塊。時間預測減小了視訊訊號中固有的時間冗餘度。用於給定視訊塊的時間預測信號通常是由表明目前塊與其參考塊之間的運動量以及運動方向的一個或多個運動向量傳訊的。此外,如果支援多個參考圖像(如同最近的視訊碼化標準(例如H.264/AVC或HEVC)那樣),那麼會為每一個視訊塊附加地發送其參考圖像索引;並且該參考索引被用於識別時間預測信號來自參考圖像儲存器(164)中的哪一個參考圖像。在空間及/或時間預測之後,編碼器中的模式決定塊(180)選擇最佳的預測模式(例如基於速率失真最佳化方法)。然後,從目前視訊塊(116)中減去預測塊(116);並且使用變換(104)以及量化來去相關預測殘差。經量化的殘差係數被反量化(110)以及反變換(112),以形成重建殘差,然後,該重建殘差會被加回到預測塊(126)中,以形成重建視訊塊。在重建視訊塊被放入參考圖像儲存器(164)並被用於碼化將來的視訊塊之前,在該重建視訊塊上還可以進一步應用(166)迴路內濾波(in-loop filtering),例如去塊濾波器以及適應性迴路濾波器。為了形成輸出視訊位元流120,碼化模式(訊框間或訊框內)、預測模式資訊、運動資訊以及量化殘差係數全部會被發送到熵碼化單元(108),以被進一步的壓縮以及封裝以形成位元流。
第2圖是基於塊的視訊解碼器的方塊圖。首先,在熵解碼單元208對視訊位元流202執行解封裝以及熵解碼。碼化模式以及預測資訊被發送至空間預測單元260(如果被訊框內碼化)或時間預測單元262(如果被訊框間碼化),以形成預測塊。殘差變換係數則被發送到反量化單元210以及反變換單元212,以重建殘差塊。然後,在226,預測塊與殘差塊被加在一起。在被儲存至參考圖像儲存器264之前,重建塊可以進一步經歷迴路內濾波。然後,參考圖像儲存器中的重建視訊被發送出以驅動顯示裝置,以及用於預測未來的視訊塊。
在HEVC中,運動資訊(包括MV以及參考圖像索引)由編碼器確定並被顯性地發送到解碼器。因此,對於訊框間碼化塊,在碼化運動參數上將會花費大量開銷。為了節省傳訊運動資訊開銷,稱為框率升頻轉換(FRUC)的碼化模式被支援以用於目前JEM中的訊框間碼化。在為CU賦能此模式時,MV以及參考圖像索引不會被傳訊;取而代之的是,在解碼器端會藉由模板匹配或雙邊匹配技術來推導該資訊。第3A圖至第3B圖示出了在FRUC中使用的MV推導過程。在第3A圖的範例中,使用模板匹配以藉由尋找目前圖像306中的目前CU 304的模板302(頂部及/或左側相鄰樣本)與參考圖像310中的參考塊的模板308之間的最佳匹配來推導目前CU的MV。最佳匹配可被選為是在目前模板與參考模板之間實現最低匹配成本(例如最低絕對差值和(SAD))的MV。在第3B圖中,使用雙邊匹配以藉由尋找沿著兩個不同參考圖像中的目前塊352的運動軌跡上的兩個塊354、356之間的最佳匹配來推導該目前塊352的運動資訊。雙邊匹配的運動搜尋處理是以運動軌跡為基礎,使得分別指向該兩個參考塊354、354的運動向量MV0 以及MV1 應該與該目前圖像以及該兩個參考圖像(T0 以及T1 )中的每一個參考圖像之間的時間距離成比例。為了決定在雙邊FRUC模式中使用的運動向量配對MV0 以及MV1 ,運動向量候選會被檢查。針對每一個候選,會單獨使用列表-0運動向量以及列表-1運動向量來執行運動搜尋,並且選擇具有最低匹配成本(例如SAD)的運動向量配對。關於使用模板匹配模式還是雙邊匹配模式的決定是以速率-失真(R-D)成本最佳化為基礎。產生最小速率-失真成本的模式將被選擇作為目前CU的FRUC模式。
模板匹配模式以及雙邊匹配模式兩者的運動推導處理包括四個步驟:CU級運動搜尋、CU級運動精化、子CU級運動搜尋、以及子CU級運動精化。在CU級運動搜尋,基於模板匹配或雙邊匹配來推導出關於整個CU的初始運動(包括MV以及參考圖像索引)。特別地,首先產生MV候選列表,並且選擇產生最小匹配成本的候選作為CU的起始MV。然後,在CU級運動精化階段,則圍繞該起始點執行基於模板匹配或雙邊匹配的局部搜尋,並且將具有最小匹配成本的MV當作是整個CU的MV。隨後,在子CU級運動搜尋階段以及子CU級運動精化階段,藉由將目前CU分割成多個子CU以及以從CU級推導的MV作為起始搜尋點來推導每一個子CU的運動資訊,運動資訊的粒度以及精確度會被進一步精化。第4圖是目前JEM中的FRUC模式的運動推導處理的流程圖。框率升頻轉換 CU 級運動搜尋
在CU級運動搜尋中會應用一種基於候選的搜尋方法來推導目前CU的初始MV。該方法藉由選擇一組唯一的MV候選來工作,針對該MV候選,模板匹配或雙邊匹配(取決於被應用至該目前CU的FRUC模式)的成本量度會被計算;將成本最小化的MV候選會被選擇作為整個CU的初始MV。特別地,在CU級運動搜尋中會評估如下所述的MV候選: 1)在應用FRUC以預測採用高級運動向量預測(AMVP)模式的目前CU的一個或多個MV時,從JEM中的AVMP推導的MV預測器; 2)常規的合併候選的MV,其包括五個空間候選A1、B1、B0、A0以及B2(如第5圖中所述)、以及藉由時間運動向量預測(TMVP)從時間相鄰圖像的並置塊的MV中推導的時間候選; 3)藉由如在“圖像級MV欄位內插”章節中描述的圖像級MV欄位內插處理產生的處於位置(0, 0) (W/2, 0) (0, H/2) 以及(W/2, H/2) 的四個內插MV,其中W 以及H 是目前CU的寬度以及高度;以及 4)目前CU的頂部以及左側鄰居的MV。
此外,當在CU級產生MV候選列表時,會執行修剪操作,使得若MV候選是冗餘的(也就是在MV候選具有與MV候選列表中的現有MV候選相同運動下),該MV候選將不會被添加到MV候選列表中。這種用於產生候選列表的技術可以在如下所述的步驟904、1204以及1304中使用。
此外,在應用雙邊匹配模式時,每一個有效候選的MV都會被用作輸入,以基於下列假設來產生MV配對,即兩個MV處於目前CU的相同運動軌跡上。例如,一個有效MV是位於參考列表a a=0,1 的(MVa ,refa )。那麼,在另一個參考列表b 中會發現與之配對的雙邊MV的參考圖像refb ,使得refa 以及refb 在時間上對稱於目前圖像。如果參考列表B 中沒有與refa 對稱的這種參考圖像refb ,那麼refb 是藉由選擇與refa 不同的參考圖像而被確定,並且該refb 在列表B 中與目前圖像的時間距離被最小化。在確定了refb 之後,藉由以如下方式按比例縮放目前圖像與refa 以及refb 之間的每時間距離的MVa 以推導出MVb 其中以及MVa 以及MVb 的水準以及垂直運動分量;τa 以及τb 是參考圖像refa 以及refb 與目前圖像的時間距離。基於現有設計,在CU級運動搜尋階段,可以包含多達15個MV。 CU 級運動搜尋
在CU級運動搜尋中,對應的MV是在CU級被推導出(所推導的MV用於代表整個CU的運動)。然而,考慮到目前CU可能會覆蓋與關聯於不同運動的不同物件對應的區域,這種粒度有可能還不夠好。因此,為了提高所推導的MV的精確度,使用FRUC模式(模板匹配或雙邊匹配)碼化的每一個CU會被進一步分割為M×M 個子CU,並且用於每一個子CU的單一MV是單獨推導的。M 值是以等式2中的方式計算的,其中D 是預先定義的分割深度約束,其在JEM中被設定為3。
此外,與CU級運動搜尋類似,每一個子CU的MV是藉由先產生MV候選列表以及選擇將匹配成本最小化的MV候選作為子CU的MV而被推導。在一些實施例中,子CU級的MV候選列表包括: 1) 在CU級運動搜尋中確定的MV; 2) 來自頂部、左側、左上以及右上的空間相鄰的CU的MV; 3) 來自時間參考圖像的並置MV的縮放版本; 4) 從藉由高級時間運動向量預測(ATMVP)推導出的候選中獲得的多達4個MV;以及 5) 從藉由空間-時間運動向量預測(STMVP)推導出的候選中獲得的多達4個MV。
此外,在子CU運動搜尋期間,只有在特定的MV候選指向起始CU級MV表明的相同參考圖像時,才可以將該MV候選包括在MV候選列表中;否則,該MV候選將被排除在匹配成本計算之外。由於CU內的所有子CU的MV全都指向相同的參考圖像(與起始CU級MV相關聯的參考圖像),因此,當在硬體中實施FRUC時,這樣做將可以減少記憶體頻寬消耗。因此,只有這些參考圖像會被存取,以在子CU級發現最佳的MV。基於現有設計,在子CU級運動搜尋階段可以包括多達17個MV。用於產生子CU級MV候選列表的這種技術可以在以下論述的步驟918、1218以及1318中使用。圖像級 MV 場內插
在FRUC被賦能時,在每一個訊框間圖像被碼化之前,會基於單邊MV投影來為該圖像中的所有的4×4塊產生內插運動欄位。然後,在CU級運動搜尋中,內插MV將被使用以搜尋最佳的MV。第6圖示出了在目前圖像中產生內插MV的處理。特別地,目前圖像(curPic )的所有的兩個參考圖像列表中的每一個參考圖像(curRefPic )的運動欄位會在4×4塊的等級上被檢查。針對參考圖像中的每一個4×4塊,如果其MV通過目前塊中的4×4塊並且該4×4的塊尚未被指配內插MV,那麼該4×4參考塊的MV將會根據目前圖像與參考圖像之間的時間距離(TD0 )以及參考圖像與其自己的參考圖像之間的時間距離(TD1 )的比值而被縮放到目前圖像。並且,經縮放的MV將被指配給目前圖像中的4×4塊。如果沒有被指配給4×4塊的經縮放的MV,那麼在內插運動欄位中會將該塊的運動標記為不可用。CU 級以及子 CU 級運動精化
由於搜尋候選數量有限,從CU級運動搜尋以及子CU級運動搜尋中推導的MV並不是始終都精確到足以代表目前CU的真實運動,因此可能會降低運動補償預測的效率。為了進一步提高所推導的MV的精確度,在CU級運動搜尋以及子CU級運動搜尋之後會進一步應用MV精化處理。MV精化是一種藉由將模板匹配或雙邊匹配的成本量度最小化的基於樣式的局部MV搜尋處理。特別地,在目前JEM中支援兩種樣式:分別是處於CU級運動精化的菱形搜尋模式以及處於子CU級運動精化的十字形搜尋模式。對於CU級運動精化以及子CU級運動精化,首先以四分之一樣本精確度來執行MV搜尋,然後以八分之一樣本精確度來執行附加的局部運動精化(圍繞最佳的四分之一樣本的MV)。此外,當MV指向分數樣本位置時,取代在HEVC中使用8分接頭內插濾波器,為模板匹配以及雙邊匹配模式兩者使用雙線性內插濾波器,以降低編碼/解碼複雜度。此外,應該提到的是,在CU級運動精化以及子CU級運動精化兩者中,從精化搜尋將被重複直至在預先定義的搜尋範圍(在目前JEM中,其被設定為等於8個整數亮度樣本)中搜尋中心不被更新的意義上講,搜尋處理是不受限制的。基於 MV 聚類的 FRUC CU/ CU 運動搜尋
如上所述,在現有FRUC中的CU級運動搜尋以及子CU級運動搜尋兩者中,最佳的MV是從一組唯一的MV候選中選擇的。例如,在CU級運動搜尋以及子CU級運動搜尋中,分別需要檢查多達15以及17個MV候選。由於多次執行運動補償預測以為每一個MV候選產生預測信號,因此,這樣做會導致編碼器以及解碼器兩者的複雜度顯著增加。此外,由於要從時間參考圖像中取回參考樣本以計算成本量度,因此,這種基於候選的搜尋處理大大地增加了硬體實施的記憶體頻寬。對於MV候選有可能來自不同參考圖像的CU級運動搜尋,此類記憶體頻寬問題有可能變得尤為關鍵。因此,編碼器/解碼器會頻繁地將記憶體存取切換到不同的參考圖像。這樣做可能會增大快取記憶體讀取未中的可能性,並且由此會導致顯著增加外部記憶體存取。
為了降低複雜度以及改善記憶體頻寬使用,針對CU級以及子CU級的運動搜尋處理,已提出了一種MV聚類方法。特別地,所提出的方法包括三個步驟:1)參考圖像選擇,2)MV縮放以及修剪,以及3)MV聚類。參考圖像選擇
為了避免頻繁地將記憶體存取切換到多個參考圖像,在基於MV聚類的運動搜尋中,會為處於CU級以及子CU級運動搜尋的指定參考圖像列表選擇單一參考圖像。為了選擇參考圖像,多數規則被應用以選擇候選列表中的MV候選最常使用的給定參考圖像列表的參考圖像索引。特別地,假設有K 個MV候選並且在參考圖像列表LX X=0,1 中有 個參考圖像。此外,假設這K 個MV候選與LX 中具有索引r0 , r1 , …, rK-1 的參考圖像選集相關聯,其中ri ∈ [0,M − 1],那麼所選擇的參考圖像索引被確定為是: 其中是如下定義的指示符函數:
此外,由於使用了上述參考圖像選擇方法來確定給定參考圖像列表(即L0或L1)的最佳參考圖像索引,因此,這些方法可被直接應用於基於單邊的運動推導(例如模板匹配模式),其中L0以及L1中的MV是以獨立地被推導的。在應用雙邊匹配模式時,MV是基於兩個MV處於目前塊的相同運動軌跡的假設而被成對推導的。因此,在將所提出的參考圖像選擇方法應用於雙邊匹配模式時,附加約束也可以被應用以確保L0以及L1中的所選擇的參考圖像滿足賦能雙邊匹配的條件(兩個參考圖像在時間上是對稱於目前圖像、或者與目前圖像的時間距離在參考圖像列表中被最小化)。這種參考圖像選擇方法可以在如下所述的步驟906、1206以及1306中使用。MV 縮放以及修剪
在確定了參考圖像索引之後,MV候選列表是藉由將初始MV候選縮放至所選擇的參考圖像索引表明的相同參考圖像而被更新。在不喪失一般性下,參考圖像列表L0將被用作範例來示出MV縮放處理。舉例來說,考慮到第i 個MV候選MVi ,如果其原始L0參考圖像索引(即)等於所選擇的L0參考圖像索引,那麼經更新的MV候選MVi ' 被直接設定為MVi ;否則(不等於),MVi ' 被設定為是以如下方式計算的MVi 的縮放版本: 其中τi 表示的參考圖像與目前圖像之間的時間距離;表示的參考圖像與目前圖像之間的時間距離。此外,由於不同MV候選的值在MV縮放操作之後有可能會變成完全相同的值(例如因為精確度損失),因此會執行修剪來移除任何重複的條目,使得在最終的列表中只保持唯一的MV候選。MV 聚類
為了進一步降低初始運動搜尋的複雜度,可以使用MV聚類方法來減少在CU級運動搜尋以及子CU級運動搜尋兩者中被計算成本量度的MV候選的總數。通常,該MV聚類方法的目的是將候選列表中的MV分為L 個群組,使得落入相同群組的所有MV候選的平均距離被最小化,其中L 是最終候選列表中的MV元素的數量。在參考圖像選擇以及MV縮放/修剪之後,MV候選列表中的MV被表示為{MV0 ’, MV1 ’, …, MVN-1 },其中N 是MV候選列表中的元素的總數。所提出的MV聚類方法的目的是將N個MV劃分為L L≤N 個群組S = {S0 , S1 , ..., SL-1 },以使以如下方式公式化的叢集內部的距離最小化: 其中Si 的質心。為了解決等式6中的聚類最佳化問題,典型的k均值精化演算法(也被稱為Lloyd演算法)可被適配以將MV聚類在初始候選列表中。特別地,該演算法會藉由在經歷所有MV候選時以交替的方式重複以下的兩個步驟來進行。
1)指配步驟 :計算MV候選與每一個MV叢集的質心的距離、並且找出產生最小距離的叢集。如果最佳距離小於預先定義的距離臨界值,則將該MV候選添加到叢集中;否則,則創建新的叢集並將該MV候選添加到該新的叢集中。
2)更新步驟 :在將新的MV候選添加到叢集中時,以如下表示的方式將新的平均值更新為該叢集中的所有MV候選(包括新添加的候選)的質心: 其中代表在第t 次聚類疊代的MV群組Si 中的元素的數量; 是經更新的Si 的質心。
考慮到所推導的MV叢集,所得的叢集的質心MV可被用作最終MV候選,以用於比較成本量度來推導在CU級以及子CU級的初始MV。在一些實施例中,可以為每一個初始MV候選執行一次指配步驟以及更新步驟。在一個這樣的實施例中,第一運動向量候選初始被設定為第一叢集的質心。如果第二運動向量候選小於與第一質心的臨界值距離,則將第二運動向量候選添加到第一叢集中,並且重新計算第一叢集的質心;否則,則產生第二叢集,並且用第二運動向量作為其質心。該處理會繼續進行,其中每一個後續的候選運動向量被指配給具有最接近的質心的現有叢集(隨後更新質心)、或者被用於產生新的叢集。候選MV可以依照預定順序來處理,以確保該處理在編碼器以及解碼器端給出相同的聚類結果。該聚類方法可以在如下所述的步驟908、920、1208、1220、1308以及1320中使用。
如在2017年12月15日提交的名稱為“低複雜度的框率升頻轉換”的美國臨時專利申請序號62/599,238中描述的那樣,附加的細節以及替代的聚類方法也是可以實施的。在一些實施例中解決的問題
如上所述,基於聚類的運動搜尋會將初始MV候選分組到若干個集合中、並且僅僅為每一個MV群組確定一個主MV(例如MV質心)。如此一來,可以減少針對成本量度所要測試的MV候選的總數。雖然MV聚類方法可以有效降低FRUC運動推導(CU級以及子CU級)的複雜度,但在實際的編碼器/解碼器硬體中,仍舊難以實施現有FRUC設計中的若干個方面。特別地,在本揭露中識別出了目前FRUC中的下列複雜度問題。
一個問題是,在基於聚類的運動搜尋開始,應用參考圖像選擇處理,以基於初始候選列表(CU級或子CU級)中的MV的參考圖像索引來確定每一個參考圖像列表的最佳參考圖像。不同於要求頻繁地將記憶體存取切換到不同參考圖像的MV搜尋方法,參考圖像選擇會將所有MV候選縮放到所選擇的參考圖像(在L0以及L1兩者中)。因此,被轉發到MV聚類處理的所有MV候選都與相同的參考圖像相關聯。然而,MV聚類方法是藉由最小化叢集內距離以將MV分組在初始候選列表中。因此,如果初始候選列表包含了具有顯著特性的MV,那麼將會產生很多叢集,並且這些叢集的質心彼此有可能相距甚遠。在這種情況下,編碼器/解碼器會頻繁地將記憶體存取切換到所選擇的參考圖像中的不同區域。這樣做有可能會增加快取記憶體讀取未中的可能性、並且由此可能導致顯著增加外部記憶體存取。第7圖顯示了用於說明在將MV聚類被應用於FRUC CU/子CU級運動初始搜尋之後出現的記憶體存取頻寬問題的實例。在第7圖的範例中,在MV聚類之後總共有5個不同的主MV候選(MV群集的質心)。由於這些MV候選的不同特性,針對所選擇的參考圖像將會執行5次單獨的記憶體存取,以推導出目前CU/子CU的初始MV。在實際的編碼器/解碼器實施中,這樣做有可能需要大量的記憶體頻寬。
另一個問題源於這樣一個事實:對於每一個FRUC CU(模板匹配或雙邊匹配),其可以進一步被分成多個子CU,每一個子CU都可以推導其自己的運動,以提高MV精確度。此外,藉由使用在子CU級初始搜尋中確定的MV作為起始點,為每一個子CU執行以下的MV精化。雖然每一個子CU的MV精化被限制於圍繞對應起始點的預先定義的搜尋視窗(例如8個整數亮度樣本),但整個子CU級運動搜尋的搜尋範圍則不受限制,因為在CU內的子CU的初始MV是無界的。第8圖顯示了用於說明在子CU級運動搜尋階段執行的記憶體存取處理的範例,其中目前CU被分為4個子CU,並且虛線方塊圍繞了每一個子CU的對應的本地搜尋視窗(例如來自起始MV的8個整數亮度樣本)。從第8圖中可以看出,在設定每一個子CU的各自的搜尋起點之後,其會頻繁地切換(第8圖中的四個不同的記憶體存取)存取參考圖像中的不同區域。在實踐中,對於編碼器/解碼器硬體,這種設計有可能需要使用大量的記憶體頻寬。
另一個問題涉及FRUC運動精化(CU級運動精化或子CU級運動精化),該精化是是藉由從初始MV開始疊代地重複基於樣式的運動搜尋(例如菱形搜尋以及十字形搜尋)來提升所推導的MV的精確度的本地MV搜尋處理。然而,在現有設計中並未規定用於FRUC運動精化的疊代的最大次數。換句話說,除非搜尋中心在兩個連續的搜尋疊代中保持不變,否則該精化處理將持續進行。基於對已解碼位元流的分析,統計結果顯示出搜尋疊代次數可能會多達約100次。由於沒有對每一個FRUC CU的計算複雜度進行限制,因此,這種設計對於實際的硬體實施方式而言並不友好。考慮到FRUC會使用相鄰的重建樣本來導出目前塊的運動資訊,這種無約束的運動搜尋過程將會降低平行處理能力、並且會使針對實際的編碼器/解碼器硬體實施方式的管線設計複雜化。
為了解決這些問題,本揭露中提出的各種方法進行操作以降低FRUC的平均複雜度以及最差情況下的複雜度。這裡描述的不同實施例包括以下方面。在一些實施例中,提供用於約束在不同的FRUC運動搜尋階段推導最佳MV的搜尋範圍的方法。範例性方法可以在統一的搜尋範圍中執行與FRUC相關的運動搜尋處理,使得外部記憶體存取總數可被最小化。在一些實施例中,提出了限制條件以限制在FRUC運動精化處理中執行的最大搜尋疊代、以及限制MV聚類產生的主MV候選的總數。這些實施例目的是降低FRUC最差情況的複雜度。具有受約束的搜尋範圍的 FRUC 運動搜尋
如上所述,在不同的FRUC運動搜尋處理中可以產生多個初始MV候選,例如在MV聚類之後的主MV候選以及初始的子CU級運動搜尋之後的每一個子CU的初始MV。由於這些初始MV有可能以較大的距離分離,因此有可能需要對對應的參考圖像的多次外部記憶體存取,以推導出目前CU/子CU的最佳MV。對於硬體編解碼器的實施方式,這可能會導致大幅增加記憶體頻寬。為了解決這個記憶體頻寬問題,在下文中提出了在不同FRUC運動搜尋階段的受約束的搜尋範圍,使得可以藉由單次存取外部記憶體來獲得指定FRUC運動搜尋所需要的所有參考樣本。CU 級初始 運動搜尋的約束搜尋範圍
在一些實施例中,供CU/子CU級初始運動搜尋使用以減少主MV候選的記憶體頻寬使用的受限搜尋空間是在MV聚類之後產生的。第9圖示出了在將所提出的受約束的搜尋範圍應用於CU/子CU級初始運動搜尋處理之後的經修改的FRUC運動搜尋過程。
在第9圖中,在CU級初始運動搜尋(902)中,產生初始CU級MV候選列表(904)並且選擇參考圖像(906)。該MV候選列表中的MV將被聚類(908),主MV表示每一個叢集。叢集的主MV可以是該叢集中的MV候選的質心。搜尋中心以及搜尋範圍是基於該主MV而被確定(910)。這些主MV可以藉由適當地截割該主MV而被處理(911),使得其落入搜尋範圍以內,並且執行搜尋以選擇經處理的最佳主MV(912)。CU級運動精化是在所選擇的MV上被執行(914)。在CU級運動精化之後,執行子CU級初始運動搜尋(916)。針對CU中的每一個子CU,都會產生初始子CU級MV候選列表(918),並且子CU級MV被聚類(920),主MV表示了每一個叢集。用於子CU級初始運動搜尋的搜尋中心以及搜尋範圍被確定(922),並且主MV是藉由截割而被處理(923),以落入子CU級搜尋範圍以內。經處理的最佳主MV是在該搜尋範圍內被選擇(924),並且子CU級運動精化被執行(926)。
更詳細地說,如第9圖所示,在藉由MV聚類(908)產生主MV候選(例如MV叢集的質心)之後,搜尋中心被確定(910),以選擇初始CU/子CU級MV。為了選擇搜尋中心,在一些實施例中,多數規則被應用以選擇包含了CU/子CU級運動候選列表中的大多數初始MV候選的MV叢集的質心。特別地,假設從初始MV候選列表的M 個MV候選(MV0 , MV1 , …, MVM-1 )中產生了K 個MV叢集(C0 , C1 , …, CK‑1 ),所選擇的搜尋中心被確定為是: 其中 是如下的指示符函數:
第10A圖顯示了用於說明以上的搜尋中心選擇方法的一個範例。在第10A圖中,初始MV候選列表中總共有29個MV候選(即M =29),並且其被分類為3個MV叢集(即K =3):叢集1002、1004、1006。此外,在此範例中,每一個MV叢集覆蓋的初始MV候選的數量在頂部叢集中是20、在左下的叢集中是6、以及在右下的叢集中是3。叢集1002、1004以及1006的質心分別在1003、1005以及1007表示。基於等式8中的基於大多數的選擇方法,所選擇的搜尋中心被設定為是具有20個初始MV候選的MV叢集的質心1003(用五邊形表示)。當初始MV候選被稀疏分佈時,不同MV叢集中包括的初始MV候選的數量有可能會較為類似。在這種情況下,不同的MV叢集可以發揮相同作用以推導目前CU/子CU的最佳運動。
在本揭露的另一個實施例中,當所產生的叢集在初始MV候選列表中顯示出類似的MV候選覆蓋時(例如在其他MV叢集之上沒有支配的MV叢集),這時建議對所有MV叢集的質心的進行平均、以及使用該平均作為後續的CU/子CU級初始運動搜尋的搜尋中心。第10B圖顯示了用於說明基於平均的搜尋中心選擇方法的一個範例,其中三個MV叢集1010、1012、1014包含相同數量的初始MV候選。該 MV叢集各自的質心由三角形1016、1018、1020示出。可以應用不同的方法來確定所產生的叢集是否具有類似的初始MV候選覆蓋。在一個範例中,可以使用(i)具有最大覆蓋範圍的MV叢集中包括的MV候選的數量與(ii)具有最小覆蓋範圍的MV叢集中包括的MV候選的數量之間的差值。如果該差值小於預先定義的臨界值,則所產生的叢集可以被視為具有類似的覆蓋範圍(也就是說,基於平均的搜尋中心確定應該被應用);否則,不同叢集各自的覆蓋範圍被認為是不平衡的,使得基於大多數的搜尋中心確定應該被應用。在第10B圖的範例中,回應於確定叢集1010、1012、1014具有類似的初始MV候選覆蓋,所選擇的搜尋中心是質心1016、1018、1020的平均。所選擇的搜尋中心由1022處的五角形示出。
應該指出的是,第10A圖以及第10B圖示出了所選擇的搜尋中心是一個或多個主MV候選的平均的實施例。特別地,在第10A圖的實施例中,所選擇的搜尋中心是僅僅一個主MV候選的平均,並且因此等於該候選本身,而在第10B圖的實施例中,所選擇的搜尋中心是一個以上的MV候選的平均。
再次參考第9圖,在計算了搜尋中心之後,會確定搜尋視窗(910),其中該搜尋視窗的中心被設定為所選擇的搜尋中心,並且其寬度被設定為所選擇的範圍(例如預先定義或是傳訊的範圍)。此後,藉由將每一個主MV截割到搜尋視窗中來更新主MV(例如MV叢集的質心)(911)。基於第7圖中的相同範例,第11圖示出了在將所提出的搜尋約束應用於CU/子CU級初始運動搜尋之後的外部記憶體存取。基於第7圖與第11圖之間的比較可以看出,與無約束的運動搜尋(其在此範例中使用了對參考圖像的五次單一記憶體存取)相較下,受約束的運動搜尋只使用了對對應區域(如搜尋視窗1102所示)的一次單一外部記憶體存取就提取決定用於初始CU/子CU級運動搜尋的最佳MV(912)所需要的所有參考樣本。這可有效地減小了供FRUC使用的編碼器/解碼器硬體的記憶體頻寬。
在以上描述中,相同搜尋範圍被應用於CU級初始運動搜尋以及子CU級初始運動搜尋兩者。然而,考慮到子CU級運動搜尋是以從CU級運動搜尋中推導的MV為基礎的,為每一個子CU產生的初始MV候選與在CU級產生的初始MV候選相較下通常更具相關性。因此,為子CU級運動搜尋使用的搜尋範圍小於為CU級運動搜尋使用的搜尋範圍是合理的。這可以進一步減小將要從參考圖像存取的區域的尺寸。
在上文中,所提出的受約束的CU/子CU級初始運動搜尋是在應用了MV聚類的情況下描述的。然而,在實踐中,受約束的運動搜尋可以被獨立使用。也就是說,受約束的運動搜尋可以在使用或未使用MV聚類下被應用。在沒有應用MV聚類時,該受約束的運動搜尋可以進一步考慮初始MV候選來自的參考圖像、並且可以被單獨應用於來自相同參考圖像的MV候選的集合。用於 CU 級運動精化、子 CU 級初始 運動搜尋以及子 CU 級運動精化的受約束的搜尋範圍
如上所述,考慮到目前CU內部的每一個子CU都可以推導出其自己的初始CU,這些CU彼此是相互遠離的,子CU級運動搜尋的搜尋區域通常是受到約束的。對於實際的硬體實施,這種設計也可以要求使用大量的記憶體頻寬。為了解決此類問題,在一些實施例中,提出了為CU級初始運動搜尋之後的所有FRUC相關運動搜尋處理添加搜尋範圍約束條件,包括CU級運動精化、子CU級初始運動搜尋以及子CU級運動精化。
第12圖示出了在將所提出的搜尋範圍應用於CU級運動精化、子CU級初始運動搜尋以及子CU級運動精化之後的經修改的FRUC運動搜尋處理。特別地,在第12圖中,搜尋視窗是在CU級初始運動搜尋之後藉由將CU級初始MV設定為搜尋中心而被確定(1212);接著,後續的CU級運動精化僅僅是在該搜尋視窗內被執行。在子CU級,為每一個子CU獲得的所有MV候選都被截割(1221)到搜尋視窗區域,並且每一個子CU的運動精化也僅僅在該搜尋視窗內才被允許。如此一來,其在獲得CU級初始MV之後可以使用對外部參考圖像的單次記憶體存取。相較之下,其他FRUC設計可能需要用於每一個子CU的運動搜尋的外部記憶體存取,並且在CU內可存在多達64個子CU。因此,在CU級初始MV被確定之後,其他FRUC方法可以使用多達64個單獨的記憶體存取來產生CU的運動資訊。從這個意義上講,範例性實施例可以減少FRUC的記憶體頻寬使用。
在根據第12圖的方法中,在CU級初始運動搜尋(1202)中,產生初始CU級MV候選列表(1204),並且選擇參考圖像(1206)。MV候選列表中的MV將被聚類(1208),主MV表示了每一個叢集。叢集的主MV可以是叢集中的MV候選的質心,並且執行搜尋以選出最佳的主MV(1210)。對於CU級運動精化,搜尋範圍被確定(1212),並且CU級運動精化在該搜尋範圍內被執行(1214)。在CU級運動精化之後,執行子CU級初始運動搜尋(1216)。對於CU中的每一個子CU,產生初始子CU級MV候選列表(1218),並且子CU級MV被聚類(1220),每一個叢集是由主MV表示的。這些主MV會根據需要以藉由截割而被處理(1221),使得該主MV落入搜尋視窗以內。最佳的MV是從所定義的搜尋範圍內的經處理的主MV中選擇的(1222)。在子CU級運動搜尋(1216)之後,子CU級運動精化在所定義的搜尋範圍內被執行(1224)。處於一個統一的搜尋範圍中的 FRUC 運動搜尋
雖然如上所述的受約束的運動搜尋方法與其他FRUC方法相較下可以提供顯著的記憶體頻寬減少,但有一些這樣的實施例仍舊會使用至少兩次對參考圖像的外部緩衝器的單獨的記憶體存取:一次存取是供CU級初始運動搜尋產生CU級初始MV,另一次存取則是供其他FRUC運動搜尋處理產生在目前CU內部的子CU的MV。為了進一步減小FRUC記憶體頻寬,提出一種用於所有FRUC相關運動搜尋處理的統一的搜尋範圍,使得僅僅為整個FRUC處理使用對外部參考圖像的單次記憶體存取。第13圖描述了在將統一的搜尋範圍應用於整個FRUC運動搜尋處理之後的經修改的FRUC運動推導。更具體地,在MV聚類之後(1308),基於等式8以及9而從主MV候選中確定搜尋中心,並且確定搜尋視窗(1310),該搜尋視窗的中心被設定為所選擇的搜尋中心,並且其寬度被設定為所選擇的範圍。
後續的CU級運動精化(1314)以及子CU級運動搜尋——包括子CU級初始運動搜尋(1316)以及子CU級運動精化(1324)——只被允許在所定義的搜尋視窗內部搜尋MV候選。在第13圖的範例中,利用所提出的統一的搜尋範圍,僅僅會對所選擇的參考圖像的單次外部記憶體存取被使用以提取回在搜尋視窗尺寸中的參考樣本,以產生整個CU的運動資訊。此外,由於如上所述的統一搜尋方法減少了外部記憶體存取的次數,因此,合理的是相較於如上所述的實施例中的受約束的搜尋方法所使用的搜尋範圍而使用更大的搜尋範圍,以更好地在碼化性能與記憶體頻寬使用之間進行權衡。
如第13圖所示,在CU級初始運動搜尋中(1302),產生初始CU級MV候選列表(1304),並且選擇參考圖像(1306)。MV候選列表中的MV將被聚類(1308),主MV表示了每一個叢集。叢集的主MV可以是該叢集中的MV候選的質心。搜尋中心以及搜尋範圍是基於主MV而被確定(1310)。藉由適當地截割主MV以對該主MV進行處理(1311),使得其落入搜尋範圍以內,並且執行搜尋以選擇經處理的最佳的主MV(1312)。CU級運動精化是針對所選擇的MV而被執行(1314)。在CU級運動精化之後,執行子CU級初始運動搜尋(1316)。對於CU中的每一個子CU,產生初始子CU級MV候選列表(1318)並且該子CU級MV會被聚類(1320),主MV表示了每一叢集。該主MV藉由適當地截割(1321)而被處理,以落入搜尋範圍以內。在該搜尋範圍內,經處理的最佳的主MV(1322)被選擇,並且子CU級運動精化被執行(1324)。用於 FRUC 運動搜尋的適應性搜尋範圍
在如上所述的受約束的FRUC運動搜尋方法的一些實施例中,相同搜尋範圍被應用於一個視訊序列中的所有圖像。然而,在替代實施例中,該搜尋範圍可以在不同的等級(例如序列級,圖像級以及塊級)被適應性地調整;並且每一個適配等級都可以提供不同的性能/複雜度權衡。此外,在適應性搜尋範圍被應用時,可以應用不同的方法來確定最佳搜尋範圍。舉例來說,當在圖像級適配搜尋範圍時,取決於目前圖像與其參考圖像之間的相關性,一些圖像中的視訊塊可以顯示穩定運動(例如在隨機存取配置的高時間層的圖像),而一些圖像中的視訊塊的運動則相對不穩定(例如處於隨機存取配置的低時間層的圖像)。在這種情況下,較為有益的是,相較於具有不穩定運動的圖像所使用的搜尋範圍,為具有穩定運動的圖像使用相對較小的搜尋範圍,以在維持碼化性能的同時實現較大的記憶體存取減少。在另一個範例中,當在塊級適配搜尋範圍時,塊的最佳搜尋範圍可以基於目前塊的空間鄰居的MV的相關性來確定。為了測量運動相關性,一種方法是計算目前塊的相鄰MV的方差。如果運動方差小於預先定義的臨界值,那麼可以合理認為目前塊的運動與其鄰居的運動高度相關,並且小搜尋範圍可以安全地被應用;否則,目前塊的運動被視為與其鄰居的相關性較低,並且大搜尋範圍應該被應用以確保可以在搜尋視窗內識別出目前塊的最佳MV。在另一個方法中,提出基於塊尺寸來適應性地調整搜尋範圍。這種方法背後的考慮是在目前塊的尺寸較大時,該目前塊更可能包含更複雜的內容(例如豐富的紋理及/或定向邊緣);因此,可以應用很大的搜尋範圍,這可助於目前塊從參考圖像中找到好的匹配。否則,如果目前塊的尺寸相對較小,那麼可以合理假設目前塊可能包含較少的紋理資訊;相應地,在這種情況下,小搜尋視窗就已經足夠好了。在本揭露的另一個實施例中,提出了基於目前圖像及其參考圖像之間的POC距離以適應性地調整搜尋範圍。特別地,藉由該方法,如果目前圖像與其最接近的參考圖像之間的POC距離小於預先定義的臨界值,那麼目前圖像中的塊可以顯示出穩定的運動,並且可以應用較小的搜尋範圍;否則(如果目前圖像與其最接近的參考圖像之間的POC距離大於以及等於預先定義的臨界值),那麼在目前圖像內部的塊的運動有可能是不穩定的,在這種情況下應該應用大的搜尋範圍。
在將適應性搜尋範圍應用於FRUC時,對應的搜尋範圍可以在位元流(例如在視訊參數集合(VPS)、序列參數集合(SPS)、圖像參數集合(PPS)以及切片分段標頭)中被傳訊、或者在沒有傳訊下在編碼器以及解碼器處被導出。用於 FRUC 的複雜度受限的運動搜尋 FRUC 運動精化的搜尋疊代次數 的限制
在已知的FRUC設計中,除非在兩個連續的搜尋迴路之間更新搜尋中心,否則精化搜尋將會持續進行,從這個意義上講,CU級運動精化以及子CU級運動精化在計算方面都是不受約束的。對於實際的編碼器/解碼器硬體實施的管線設計,由於FRUC塊的編碼/解碼複雜度是無界的,因此,這種設計是不切實際的。因此,為了使FRUC設計對硬體實施更加友好,提出了對在CU/子CU級運動精化階段執行的搜尋疊代的最大次數加以限制。與如上所述的CU級初始運動搜尋的受約束的搜尋範圍類似,搜尋疊代的最大次數可以在不同的碼化級(例如序列級、圖像級以及塊級)被適配或是被傳訊。此外,相同的最大搜尋疊代次數可以被應用於CU級運動精化以及子CU級運動精化。但是,由於子CU級運動候選與CU級運動候選相較下通常會顯示出更強的相關性,因此,在至少一些實施例中還提出:相較於子CU級運動精化,為CU級運動精化設定更大的最大搜尋疊代值。對用於 MV 聚類的 MV 的數量所做的限制
雖然如上所述的MV聚類方法可以顯著降低初始MV推導(在CU級以及子CU級)的平均計算複雜度,但其不必改變需要測試的MV候選的最大值。例如,在最差的情況下,在CU級運動搜尋以及子CU級運動搜尋中仍舊分別要檢查多達15以及17個MV候選。在實踐中,最差情況的場景是實際的編碼器/解碼器實施的重要考慮因素,其直接確定了硬體設計所要滿足的處理能力/條件。由此,在一些實施例中提出對從MV聚類產生的主MV的數量施加約束,以減小被測試的MV候選的平均以及最大值。考慮到主MV的最大數量(例如L ),可以使用不同的標準來確定應該為FRUC運動搜尋選擇哪些主MV。
在一些實施例中使用的一個標準是基於MV候選覆蓋來選擇主MV。在使用了此類標準的一些實施例中,編碼器/解碼器會計數每一個MV叢集(CU級或子CU級)中包含的初始MV候選列表(MV候選覆蓋)中的初始MV的數量;然後,編碼器/解碼器藉由將具有更多覆蓋的主MV置於列表開端以根據MV候選覆蓋來對所產生的主MV進行排序,並且只維持前L 個主MV作為進一步被用於後續的CU/子CU級運動搜尋處理的輸出。
在一些實施例中使用的另一個標準是基於MV候選方差來選擇MV。在使用了此類標準的一些實施例中,編碼器/解碼器會在MV聚類期間計算每一個MV叢集中包含的初始MV的方差;然後,編碼器/解碼器按MV候選方差上升的順序來對所產生的主MV進行排序、並且只維持具有最小MV候選方差的第一主MV,以此作為後續的CU級或子CU級運動搜尋處理的輸出。
主MV的最大數量可以在不同碼化等級(例如序列等級、圖像等級以及塊等級)被適配或是被傳訊。另外,不同的最大值可以被用於在CU級運動搜尋以及子CU級運動搜尋中應用的MV聚類處理。將受約束的搜尋範圍用於 CU 級初始 運動搜尋的方法
在一些實施例中,提供一種用於碼化視訊的方法,該視訊包含了包括目前圖像的多個圖像。該方法包括:對於目前圖像中的至少一個目前塊:識別用於該塊的框率升頻轉換(FRUC)預測的第一運動向量候選集合;基於該第一運動向量候選集合來定義搜尋中心;確定搜尋視窗,該搜尋視窗具有選定的寬度並以該搜尋中心為中心;藉由截割落在搜尋視窗以外的第一運動向量候選集合中的任何運動向量來處理該第一集合,以使其落入搜尋視窗以內;以及從經處理的第一運動向量候選集合中對選定的運動向量執行搜尋。例如,該搜尋中心可以是第一運動向量候選集合的平均。
一些這樣的實施例進一步包括:基於選定的運動向量候選來執行運動精化搜尋,以產生精化的運動向量;以及使用該經過精化的運動向量來預測該塊。
例如,目前塊可以是碼化單元或子碼化單元塊。
選定的運動向量可被選定以實現最低的匹配成本或是最低的絕對差值和(SAD)。
在一些實施例中,第一運動向量候選集合是藉由一種包含以下步驟的方法產生的:將初始運動向量候選集合聚類為多個叢集;並且針對每一個叢集,計算各自的叢集的質心、並且將代表各自的叢集的質心的質心運動向量貢獻給第一運動向量候選集合。在這樣的實施例中,搜尋中心可以是具有最多運動向量候選的叢集的中心。
例如,選定的寬度可以在VPS、SPS、PPS、切片分段標頭中或者在塊級被傳訊。在一些實施例中,目前圖像的所選寬度是至少部分地基於目前圖像中的運動穩定性等級來確定。在一些實施例中,目前塊的所選寬度是至少部分地基於目前塊的空間鄰居的運動向量的相關性等級來確定。在一些實施例中,目前塊的所選寬度是至少部分地基於目前塊的大小來確定。在一些實施例中,為目前圖像選擇的寬度是至少部分基於目前圖像與其參考圖像之間的POC距離而被確定。 CU 級運動精化、子 CU 級初始 運動搜尋以及子 CU 級運動精化使用受約束的搜尋範圍的方法
在一些實施例中,提供一種用於碼化視訊的方法,該視訊包含了包括目前圖像的多個圖像。該方法包括:針對目前圖像中的至少一個目前碼化單元(CU):識別用於該碼化單元的框率升頻轉換(FRUC)預測的第一運動向量候選集合;為從該第一運動向量候選集合中的選定的CU級運動向量執行搜尋;確定搜尋視窗,該搜尋視窗具有選定的寬度並且以所選擇的CU級運動向量為中心;以及在該搜尋視窗內執行運動精化搜尋,以產生精化的CU級運動向量。該碼化單元可以使用該精化的CU級運動向量來預測。
在一些實施例中,該方法進一步包括:識別子CU初始運動向量集合,並且針對碼化單元內的每一個子CU:藉由截割該子CU初始運動向量集合中落入搜尋視窗之外的任何運動向量來處理該集合,以使其落入搜尋視窗以內;為從經處理的子CU初始運動向量集合中選擇的子CU運動向量執行搜尋;以及在搜尋視窗內執行運動精化搜尋,以產生精化的子CU運動向量。該子CU可以用精化的子CU級運動向量來預測。
所選擇的寬度可以在視訊參數集合(VPS)、序列參數集合(SPS)、圖像參數集合(PPS)、切片分段標頭中或是在塊級被傳訊。為目前圖像選擇的寬度可以至少部分基於目前圖像中的運動穩定性等級來確定。為目前塊選擇的寬度可以至少部分基於目前塊的空間鄰居的運動向量的相關性等級來確定。為目前塊選擇的寬度可以至少部分基於目前塊的尺寸來確定。為目前塊選擇的寬度可以至少部分基於目前圖像與其參考圖像之間的POC距離來確定。在統一的搜尋範圍中使用 FRUC 運動搜尋的方法
在一些實施例中,提供一種用於碼化視訊的方法,該視訊包含了包括目前圖像的多個圖像。該方法包括:針對目前圖像中的至少一個碼化單元(CU):識別用於該碼化單元的框率升頻轉換(FRUC)預測的第一CU級運動向量候選集合;基於該第一CU級運動向量候選集合來定義搜尋中心(例如將其作為第一CU級運動向量候選集合的平均);確定搜尋視窗,該搜尋視窗具有選定的寬度並以該搜尋中心為中心;藉由截割落在該搜尋視窗之外的第一CU級運動向量候選集合中的任何運動向量來處理該第一集合,以使其落入該搜尋視窗以內;為從經處理的第一運動向量候選集合中選擇的CU級運動向量執行搜尋;在該搜尋視窗內執行運動精化搜尋,以產生精化的CU級運動向量;識別子CU初始運動向量集合;並且針對碼化單元內的每一個子CU:藉由截割該子CU初始運動向量集合中落在搜尋視窗之外的任何運動向量來處理該集合,以使其落入搜尋視窗以內;為從經處理的子CU初始運動向量集合中選擇的子CU運動向量執行搜尋;以及藉由在搜尋視窗內執行運動精化搜尋來產生精化的子CU運動向量。
在一些這樣的實施例中,第一CU級運動向量候選集合是藉由將初始CU級運動向量候選集合聚類為多個叢集而產生;並且針對每一個叢集,計算各自的叢集的質心,以及將代表各自的叢集的質心的質心運動向量貢獻給第一運動向量候選集合。該搜尋中心可以是具有最多的CU級運動向量候選的叢集的中心。
所選擇的寬度可以在視訊參數集合(VPS)、序列參數集合(SPS)、圖像參數集合(PPS)、切片分段標頭中或者在塊級被傳訊。為目前圖像選擇的寬度可以至少部分基於目前圖像中的運動穩定性等級來確定。為目前塊選擇的寬度可以至少部分基於目前塊的空間鄰居的運動向量的相關性等級來確定。為目前塊選擇的寬度可以至少部分基於目前塊的尺寸來確定。為目前圖像選擇的寬度可以至少部分基於目前圖像與其參考圖像之間的POC距離來確定。 FRUC 運動精化使用搜尋疊代次數 約束的方法
在一些實施例中,提供一種用於碼化視訊的方法,該視訊包含了包括目前圖像的多個圖像。該方法包括:針對目前圖像中的至少一個塊:識別用於該塊的框率升頻轉換(FRUC)預測的第一運動向量候選集合;從該第一運動向量候選集合中執行對選定的運動向量的搜尋;基於選定的運動向量候選來執行運動精化搜尋,以產生精化的運動向量,其中該運動精化搜尋限於所選擇的最大疊代次數。該塊可以是碼化單元或子碼化單元塊。
所選擇的最大疊代次數可以至少部分取決於該塊是碼化單元塊還是子碼化單元塊。所選擇的最大疊代次數可以在序列級、圖像級、塊級或是在切片分段標頭中被傳訊。 MV 聚類使用 數量受約束的主 MV 的方法
在一些實施例中,提供一種用於碼化視訊的方法,該視訊包含了包括目前圖像的多個圖像。該方法包括:針對目前圖像中的至少一個塊(例如碼化單元或子碼化單元塊):將初始運動向量候選集合聚類為多個叢集;並且針對每一個叢集,計算各自的叢集的質心,並且將代表各自的叢集的質心的質心運動向量貢獻給主運動向量集合;從主運動向量集合中選擇不多於所選擇的最大數量的運動向量,以產生受約束的運動向量集合;以及為從該受約束的運動向量候選集合中的選定的運動向量執行搜尋。
在一些實施例中,所述選擇不多於所選擇的最大數量的運動向量包括從該主運動向量集合中選擇代表了具有最大數量的初始運動向量候選的叢集的主運動向量。在一些實施例中,所述選擇不多於所選擇的最大數量的運動向量包括從主運動向量集合中選擇代表了具有運動向量候選之間的最小方差的叢集的主運動向量。
所選擇的最大運動向量數量可以至少部分取決於該塊是碼化單元塊還是子碼化單元塊。所選擇的最大運動向量數量可以在序列級、圖像級、塊級或者在切片分段標頭中被傳訊。碼化位元流結構
第14圖是示出了碼化位元流結構的範例的圖示。碼化位元流1300由多個NAL(網路抽象層)單元1301組成。NAL單元可以包含碼化樣本資料(例如碼化切片1306)或高階語法元資料(例如參數集合資料、切片標頭資料1305或補充增強資訊資料1307(其可稱為SEI訊息))。參數集合是包含了基本語法元素的高級語法結構,該基本語法元素可以應用於多個位元流層(例如視訊參數集合1302(VPS)、或者可以應用於在一個層內的碼化視訊序列(例如序列參數集合1303(SPS))、或是可以應用於一個碼化視訊序列內的多個碼化圖像(例如圖像參數集合1304(PPS))。參數集合可以與該視訊位元流的該碼化圖像一起被發送、或者可以經由其他方式被發送(包括使用了可靠通道的帶外傳輸、硬碼化等等)。切片標頭1305也是高階語法結構,該結構可以包含相對小或只與某些切片或圖像類型相關的一些圖像相關資訊。SEI訊息1307攜帶有可能不為解碼處理所需要、但可以用於其他各種目的(例如圖像輸出時序或顯示以及丟失偵測以及隱藏)的資訊。通信裝置以及系統
第15圖是示出了通信系統範例的示意圖。通信系統1400可以包括編碼器1402、通信網路1404以及解碼器1406。編碼器1402可以經由連接1408而與網路1404通信,該連接1408可以是有線連接或無線連接。編碼器1402可以與第1圖的基於塊的視訊編碼器類似。編碼器1402可以包括單層編解碼器(例如第1圖)或多層編解碼器。解碼器1406可以經由連接1410而與網路1404通信,該連接1410可以是有線連接或無線連接。解碼器1406可以與第2圖的基於塊的視訊解碼器類似。解碼器1406可以包括單層編解碼器(例如第2圖)或多層編解碼器。
編碼器1402及/或解碼器1406可被併入到各種有線通信裝置及/或無線傳輸/接收單元(WTRU)中,例如、但不限於數位電視、無線廣播系統、網路元件/終端、伺服器(例如內容或網站伺服器(例如超文件傳送協定(HTTP)伺服器))、個人數位助理(PDA)、膝上型電腦或桌上型電腦、平板電腦、數位相機、數位記錄裝置、視訊遊戲裝置、視訊遊戲控制台、蜂巢或衛星無線電電話、及/或數位媒體播放器等等。
通信網路1404可以是適當類型的通信網路。例如,通信網路1404可以是向多個無線使用者提供內容(例如語音、資料、視訊、訊息、廣播等等)的多重存取系統。通信網路1404能使多個無線使用者共用包括無線頻寬的系統資源來存取此類內容。例如,通信網路1404可以使用一種或多種通道存取方法,例如分碼多重存取(CDMA)、分時多重存取(TDMA)、分頻多重存取(FDMA)、正交FDMA(OFDMA)、及/或單載波FDMA(SC-FDMA)等等。通信網路1404可以包括多個相連的通信網路。該通信網路1404可以包括網際網路及/或一個或多個私人商業網絡,例如蜂巢網路、WiFi熱點及/或網際網路服務提供者(ISP)網路等等。
第16圖是範例性WTRU的系統圖。如所示,範例性WTRU 1500可以包括處理器1518、收發器1520、傳輸/接收元件1522、揚聲器/麥克風1524、小鍵盤或鍵盤1526、顯示器/觸控板1528、非可移記憶體1530、可移記憶體1532、電源1534、全球定位系統(GPS)晶片組1536以及其他週邊設備1538。應該瞭解的是,在保持與實施例相符的同時,WTRU 1500還可以包括前述元件的任何子組合。另外,於其中併入了編碼器(例如編碼器100)及/或解碼器(例如解碼器200)的終端可以包括第16圖的WTRU 1500中描繪、以及在這裡參考第16圖的WTRU 1500描述的一些或所有元件。
處理器1518可以是通用處理器、專用處理器、常規處理器、數位訊號處理器(DSP)、圖形處理單元(DPU)、多個微處理器、與DSP核心關聯的一或多個微處理器、控制器、微控制器、專用積體電路(ASIC)、現場可程式閘陣列(FPGA)電路、其他任何類型的積體電路(IC)、狀態機等等。處理器1518可以執行信號編碼、資料處理、功率控制、輸入/輸出處理及/或能使WTRU 1500在無線環境中操作的其他任何功能。處理器1518可以耦合至收發器1520,該收發器1520則可以耦合至傳輸/接收元件1522。雖然第16圖將處理器1518以及收發器1520描述為獨立元件,然而應該瞭解,處理器118以及收發器1520也可以一起集成在電子元件或晶片中。
傳輸/接收元件1522可被配置為經由空中介面1515以傳輸信號至另一個終端、及/或從另一個終端接收信號。例如,在一個或多個實施例中,傳輸/接收元件1522可以是被配置為傳輸及/或接收RF信號的天線。例如,在一個或多個實施例中,傳輸/接收元件1522可以是被配置為傳輸及/或接收IR、UV或可見光信號的放射器/偵測器。在一個或多個實施例中,傳輸/接收元件1522可被配置為傳輸及/或接收RF以及光信號。應該瞭解的是,該傳輸/接收元件1522可以被配置為傳輸及/或接收無線信號的任何組合。
此外,雖然在第16圖中將傳輸/接收元件1522描述為單一元件,但是WTRU 1500可以包括任何數量的傳輸/接收元件1522。更具體地,WTRU 1500可以使用MIMO技術。因此,在一個實施例中,WTRU 1500可以包括經由空中介面1516以傳輸以及接收無線電信號的兩個或多個傳輸/接收元件1522(例如多個天線)。
收發器1520可被配置為對傳輸/接收元件1522所要傳輸的信號進行調變、以及對傳輸/接收元件1522接收的信號進行解調。如上所述,WTRU 1500可以具有多模能力。因此,收發器1520可以包括使WTRU 1500能經由多種RAT(例如UTRA以及IEEE 802.11)來進行通信的多個收發器。
WTRU 1500的處理器1518可以耦合到揚聲器/麥克風1524、小鍵盤1526及/或顯示器/觸控板1528(例如液晶顯示器(LCD)顯示單元或有機發光二極體(OLED)顯示單元)、並且可以接收來自這些元件的使用者輸入資料。處理器1518還可以向揚聲器/麥克風1524、小鍵盤1526及/或顯示器/觸控板1528輸出使用者資料。此外,處理器1518可以從任何適當的記憶體(例如非可移記憶體1530及/或可移記憶體1532)中存取資訊、以及將資料儲存至這些記憶體。非可移記憶體1530可以包括隨機存取記憶體(RAM)、唯讀記憶體(ROM)、硬碟或是其他任何類型的記憶體儲存裝置。可移記憶體1532可以包括用戶身份模組(SIM)卡、記憶條、安全數位(SD)記憶卡等等。在一個或多個實施例中,處理器1518可以從那些並非實際位於WTRU 1500的記憶體存取資訊、以及將資料儲存至這些記憶體,例如,此類記憶體可以位於伺服器或家用電腦(未顯示)。
處理器1518可以接收來自電源1534的電力、並且可被配置分發及/或控制用於WTRU 1500中的其他元件的電力。電源1534可以是為WTRU 1500供電的任何適當裝置。例如,電源1534可以包括一個或多個乾電池組(例如鎳鎘(NiCd)、鎳鋅(NiZn)、鎳氫(NiMH)、鋰離子(Li-ion)等等)、太陽能電池以及燃料電池等等。
處理器1518還可以與GPS晶片組1536耦合,該GPS晶片組1536可被配置為提供與WTRU 1500的目前位置相關的位置資訊(例如經度以及緯度)。作為來自GPS晶片組1536的資訊的補充或替代,WTRU 1500可以經由空中介面1515以從終端(例如基地台)接收位置資訊、及/或基於從兩個或多個附近基地台接收的信號時序來確定其位置。應該瞭解的是,在保持與實施例相符的同時,WTRU 1500可以用任何適當的定位方法來獲取位置資訊。
處理器1518可以進一步耦合到其他週邊設備1538,這些設備可以包括提供附加特徵、功能及/或有線或無線連接的一個或多個軟體及/或硬體模組。例如,週邊設備1538可以包括加速度計、方位感測器、運動感測器、接近感測器、電子指南針、衛星收發器、數位相機及/或錄影機(用於照片以及視訊)、通用序列匯流排(USB)埠、振動裝置、電視收發器、免持耳機、藍牙®模組、調頻(FM)無線電單元、以及軟體模組(例如數位音樂播放器、媒體播放器、視訊遊戲機模組以及網際網路瀏覽器等等)。
作為範例,WTRU 1500可被配置為傳輸及/或接收無線信號、並且可以包括使用者設備(UE)、行動站、固定或行動用戶單元、呼叫器、行動電話、個人數位助理(PDA)、智慧型電話、膝上型電腦、小筆電、平板電腦、個人電腦、無線感測器、消費類電子產品或是能夠接收及處理壓縮視訊通信的其他任何終端。
WTRU 1500及/或通信網路(例如通信網路804)可以實施諸如通用行動電信系統(UMTS)地面無線電存取(UTRA)之類的無線電技術,該無線電技術可以使用寬頻CDMA(WCDMA)來建立空中介面1515。WCDMA可以包括例如高速封包存取(HSPA)及/或演進性HSPA(HSPA+)之類的通信協定。HSPA可以包括高速下鏈封包存取(HSDPA)及/或高速上鏈封包存取(HSUPA)。WTRU 1500及/或通信網路(例如通信網路804)可以實施例如演進UMTS陸地無線電存取(E-UTRA)之類的無線電技術,該無線電技術可以使用長期演進(LTE)及/或先進LTE(LTE-A)來建立空中介面1515。
WTRU 1500及/或通信網路(例如通信網路804)可以實施例如IEEE 802.16(例如全球互通微波存取(WiMAX))、CDMA2000、CDMA2000 1X、CDMA2000 EV-DO、臨時標準2000(IS-2000)、臨時標準95(IS-95)、臨時標準856(IS-856)、全球行動通信系統(GSM)、GSM演進增強資料速率(EDGE)以及GSME DGE(GERAN)等等的無線電技術。WTRU 1500及/或通信網路(例如通信網路804)可以實施IEEE 802.11或IEEE 802.15等的無線電技術。
應該指出的是,所描述的實施例中的一個或多個的不同硬體元件被稱為“模組”,該模組執行在這裡結合各自的模組描述的不同功能。這裡使用的模組包括了被相關領域中具有通常知識者認為適合用於給定的實施方式的硬體(例如一個或多個處理器、一個或多個微處理器、一個或多個微控制器、一個或多個微晶片、一個或多個專用積體電路(ASIC)、一個或多個現場可程式閘陣列(FPGA)、一個或多個記憶體裝置)。所描述的每一個模組還可以包括可執行以實施被描述為由各自的模組執行的一個或多個功能的指令,並且應該指出的是,這些指令可以採用硬體(即硬連線)指令、韌體指令及/或軟體指令等等的形式、或者包括硬體(即硬連線)指令、韌體指令及/或軟體指令,並且可被儲存在任何適當的非暫態暫態電腦可讀媒介或媒體中,例如通常被稱為RAM、ROM等等的媒介或媒體。
雖然在上文中描述了採用特定組合的特徵以及要素,但是本領域中具有通常知識者將會認識到,每一個特徵既可以單獨使用,也可以與其他特徵以及要素進行任何組合。此外,這裡描述的方法可以在引入電腦可讀媒體中以供電腦或處理器運行的電腦程式、軟體或韌體中實施。關於電腦可讀儲存媒體的範例包括但不限於唯讀記憶體(ROM)、隨機存取記憶體(RAM)、暫存器、快取記憶體、半導體儲存裝置、內部硬碟盒可拆卸磁片之類的磁性媒體、磁光媒體、以及CD-ROM碟片以及數位多功能光碟(DVD)之類的光學媒體。與軟體關聯的處理器可以用於實施在WTRU、UE、終端、基地台、RNC或任何電腦主機中使用的射頻收發器。
100、1402‧‧‧編碼器 102‧‧‧輸入視訊訊號 104‧‧‧變換 108‧‧‧熵碼化單元 110‧‧‧反量化 112‧‧‧反變換 120、202‧‧‧位元流 126‧‧‧預測塊 160‧‧‧空間預測 162‧‧‧時間預測 164、264‧‧‧參考圖像儲存器 166‧‧‧迴路濾波器 180‧‧‧模式決定塊 200、1406‧‧‧解碼器 208‧‧‧熵解碼單元 210‧‧‧反量化單元 212‧‧‧反變換單元 260‧‧‧空間預測單元 262‧‧‧時間預測單元 302、308‧‧‧模板 304‧‧‧CU 306‧‧‧目前圖像 310‧‧‧參考圖像 352、354、356‧‧‧塊 1002、1004、1006、1010、1012、1014‧‧‧叢集 1016、1018、1020‧‧‧三角形 1300‧‧‧碼化位元流 1301‧‧‧NAL(網路抽象層)單元 1302‧‧‧視訊參數集合(VPS) 1303‧‧‧序列參數集合(SPS) 1304‧‧‧圖像參數集合(PPS) 1305‧‧‧切片標頭資料 1306‧‧‧參考圖像 1307‧‧‧補充增強資訊資料(SEI) 1400‧‧‧通信系統 1404‧‧‧通信網路 1408、1410‧‧‧連接 1500‧‧‧無線傳輸/接收單元 1518‧‧‧處理器 1520‧‧‧收發器 1522‧‧‧傳輸/接收元件 1524‧‧‧揚聲器/麥克風 1526‧‧‧鍵盤或小鍵盤 1528‧‧‧顯示器/觸控板 1530‧‧‧非可移記憶體 1532‧‧‧可移記憶體 1534‧‧‧電源 1536‧‧‧全球定位系統(GPS)晶片組 1538‧‧‧週邊設備 CU‧‧‧碼化單元 MV‧‧‧運動向量
第1圖是基於塊的視訊編碼器的功能方塊圖。 第2圖是視訊解碼器的功能方塊圖。 第3A圖至第3B圖示出了使用模板匹配(第3A圖)以及雙邊匹配(第3B圖)的框率升頻轉換(FRUC)。 第4圖是用於JEM實施方式中的FRUC的運動推導過程的流程圖。 第5圖是關於合併模式中的空間運動向量候選的位置的圖式。 第6圖是在FRUC中使用的運動場內插的圖式。 第7圖示出了在為FRUC應用了MV聚類之後的參考樣本存取的範例。 第8圖是用於子CU級運動搜尋的記憶體存取的圖式。 第9圖是根據一些實施例的使用了用於CU級/子CU級初始運動搜尋的受約束的搜尋範圍的FRUC運動搜尋處理的流程圖。 第10A圖至第10B圖示出了一些實施例中的搜尋中心選擇方法的範例。第10A圖示出的是基於多數的選擇,並且第10B圖示出的是基於平均的選擇。 第11圖示出了在將受約束的搜尋範圍應用於初始CU級/子CU級運動搜尋之後的範例性實施例中的記憶體存取。 第12圖是在將受約束的搜尋範圍應用於CU級運動精化、子CU級初始運動搜尋以及子CU級運動精化之後的範例性實施例中的FRUC運動搜尋處理的流程圖。 第13圖是在將統一的搜尋範圍應用於整個FRUC處理之後的範例性FRUC運動搜尋處理的流程圖。 第14圖是示出了碼化位元流結構的範例的圖式。 第15圖是示出了範例性通信系統的圖式。 第16圖是示出了範例性無線傳輸/接收單元(WTRU)的圖式。
CU‧‧‧碼化單元
MV‧‧‧運動向量

Claims (17)

  1. 一種由一視訊解碼器來預測一子塊的方法,該方法包括:獲取一目前塊的一塊級初始運動向量;確定以該塊級初始運動向量為中心的一搜尋視窗;僅在該搜尋視窗內執行一子塊運動精化搜尋以產生一第一精化運動向量;以及至少使用該第一精化運動向量來預測該子塊。
  2. 如請求項1所述的方法,其中執行該子塊運動精化搜尋包括在兩個不同的參考圖像中找到兩個參考塊之間的一最佳匹配,該第一精化運動向量以及一第二精化運動向量分別指向該兩個參考塊。
  3. 如請求項2所述的方法,其中在兩個不同的參考圖像中找到兩個參考塊之間的該最佳匹配包括最小化該兩個參考塊之間的一絕對差值和。
  4. 如請求項1至3任一項所述的方法,其中該運動精化搜尋限於一選擇的最大疊代次數。
  5. 一種由一視訊編碼器來預測一子塊的方法,該方法包括:獲取一目前塊的一塊級初始運動向量;確定以該塊級初始運動向量為中心的一搜尋視窗;僅在該搜尋視窗內執行一子塊運動精化搜尋以產生一第一精化運動向量;以及至少使用該第一精化運動向量來預測該子塊。
  6. 如請求項5所述的方法,其中執行該子塊運動精化搜尋包括在兩個不同的參考圖像中找到兩個參考塊之間的一最佳匹配,該兩個參考塊被該第一精化運動向量以及一第二精化運動向量分別指向。
  7. 如請求項6所述的方法,其中在兩個不同的參考圖像中找到兩個參考塊之間的該最佳匹配包括最小化該兩個參考塊之間的一絕對差值和。
  8. 如請求項5至7任一項所述的方法,其中該運動精化搜尋限於一選擇的最大疊代次數。
  9. 一種視訊解碼器裝置,被配置以至少執行:獲取一目前塊的一塊級初始運動向量;確定以該塊級初始運動向量為中心的一搜尋視窗;僅在該搜尋視窗內執行一子塊運動精化搜尋以產生一第一精化運動向量;以及至少使用該第一精化運動向量來預測該子塊。
  10. 如請求項9所述的裝置,其中執行該子塊運動精化搜尋包括在兩個不同的參考圖像中找到兩個參考塊之間的一最佳匹配,該第一精化運動向量以及一第二精化運動向量分別指向該兩個參考塊。
  11. 如請求項10所述的裝置,其中在兩個不同的參考圖像中找到兩個參考塊之間的該最佳匹配包括最小化該兩個參考塊之間的一絕對差值和。
  12. 如請求項9至11任一項所述的裝置,其中該運動精化搜尋限於一選擇的最大疊代次數。
  13. 一種視訊編碼器裝置,被配置以至少執行:獲取一目前塊的一塊級初始運動向量;確定以該塊級初始運動向量為中心的一搜尋視窗;僅在該搜尋視窗內執行一子塊運動精化搜尋以產生一第一精化運動向量;以及至少使用該第一精化運動向量來預測該子塊。
  14. 如請求項13所述的裝置,其中執行該子塊運動精化搜尋包括在兩個不同的參考圖像中找到兩個參考塊之間的一最佳匹配,該兩個參考塊被該第一精化運動向量以及一第二精化運動向量分別指向。
  15. 如請求項14所述的裝置,其中在兩個不同的參考圖像中找到兩個參考塊之間的該最佳匹配包括最小化該兩個參考塊之間的一絕對差值和。
  16. 如請求項13至15任一項所述的裝置,其中該運動精化搜尋限於一選擇的最大疊代次數。
  17. 一種電腦可讀媒體,包括用以使一個或多個處理器執行如請求項1-8中任一項所述方法的指令。
TW108103219A 2018-01-29 2019-01-29 具低複雜度框率升頻轉換 TWI815854B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201862623143P 2018-01-29 2018-01-29
US62/623143 2018-01-29

Publications (2)

Publication Number Publication Date
TW201943277A TW201943277A (zh) 2019-11-01
TWI815854B true TWI815854B (zh) 2023-09-21

Family

ID=65409567

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108103219A TWI815854B (zh) 2018-01-29 2019-01-29 具低複雜度框率升頻轉換

Country Status (9)

Country Link
US (1) US11470344B2 (zh)
EP (1) EP3747194A1 (zh)
JP (2) JP7260562B2 (zh)
KR (1) KR102656965B1 (zh)
CN (2) CN111656788B (zh)
AU (1) AU2019212951B2 (zh)
MX (2) MX2020007969A (zh)
TW (1) TWI815854B (zh)
WO (1) WO2019148117A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7102663B2 (ja) * 2018-03-26 2022-07-20 ホアウェイ・テクノロジーズ・カンパニー・リミテッド ビデオコーディングのためのインター予測装置及び方法
JP2021526325A (ja) * 2018-05-28 2021-09-30 インターデジタル ヴイシー ホールディングス, インコーポレイテッド 符号化/復号化におけるデータ依存関係
CN117956183A (zh) * 2018-06-04 2024-04-30 华为技术有限公司 获取运动矢量的方法和装置
CN112514392A (zh) * 2020-02-18 2021-03-16 深圳市大疆创新科技有限公司 视频编码的方法与装置
CN113038142B (zh) * 2021-03-25 2022-11-01 北京金山云网络技术有限公司 视频数据的筛选方法、装置及电子设备
CN113804470B (zh) * 2021-04-14 2023-12-01 山东省计算中心(国家超级计算济南中心) 一种穴盘育苗流水线的故障检测反馈方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090168884A1 (en) * 2006-02-06 2009-07-02 Xiaoan Lu Method and Apparatus For Reusing Available Motion Information as a Motion Estimation Predictor For Video Encoding
US20120128071A1 (en) * 2010-11-24 2012-05-24 Stmicroelectronics S.R.L. Apparatus and method for performing error concealment of inter-coded video frames
US20130251040A1 (en) * 2007-12-30 2013-09-26 Ning Lu Motion Estimation Compatible with Multiple Standards
JP2015076766A (ja) * 2013-10-09 2015-04-20 日本電信電話株式会社 映像符号化装置、映像符号化方法及び映像符号化プログラム
US20170208341A1 (en) * 2014-08-12 2017-07-20 Intel Corporation System and method of motion estimation for video coding
US20170347117A1 (en) * 2011-11-04 2017-11-30 Nokia Technologies Oy Method for coding and an apparatus

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2914448B2 (ja) * 1997-06-25 1999-06-28 日本電信電話株式会社 動きベクトル予測符号化方法および動きベクトル復号方法、予測符号化装置および復号装置、並びに、動きベクトルの予測符号化プログラムおよび復号プログラムを記録した記録媒体
JP2003299040A (ja) * 2002-04-03 2003-10-17 Sony Corp 動きベクトル検出装置及び方法
US9532069B2 (en) * 2004-07-30 2016-12-27 Euclid Discoveries, Llc Video compression repository and model reuse
US8902971B2 (en) * 2004-07-30 2014-12-02 Euclid Discoveries, Llc Video compression repository and model reuse
US8879635B2 (en) * 2005-09-27 2014-11-04 Qualcomm Incorporated Methods and device for data alignment with time domain boundary
US8462852B2 (en) * 2009-10-20 2013-06-11 Intel Corporation Methods and apparatus for adaptively choosing a search range for motion estimation
EP3529984A1 (en) * 2016-10-19 2019-08-28 Huawei Technologies Co., Ltd. Apparatuses and methods for encoding and decoding a video coding block of a video signal
TWI782974B (zh) * 2017-04-13 2022-11-11 美商松下電器(美國)知識產權公司 解碼裝置、解碼方法及非暫時性電腦可讀取媒體
CN117478884A (zh) 2017-07-03 2024-01-30 Vid拓展公司 用于视频编解码的设备、方法
WO2019032765A1 (en) 2017-08-09 2019-02-14 Vid Scale, Inc. CONVERSION-ELEVATION OF FRAME FREQUENCY WITH REDUCED COMPLEXITY
WO2019072371A1 (en) * 2017-10-09 2019-04-18 Huawei Technologies Co., Ltd. MEMORY ACCESS WINDOW FOR PREDICTION SUB-BLOCK MOTION VECTOR CALCULATION
US20190164296A1 (en) * 2017-11-27 2019-05-30 Qualcomm Incorporated Systems and methods for determining a confidence measure for a motion vector
US10798399B1 (en) * 2017-12-11 2020-10-06 Amazon Technologies, Inc. Adaptive video compression

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090168884A1 (en) * 2006-02-06 2009-07-02 Xiaoan Lu Method and Apparatus For Reusing Available Motion Information as a Motion Estimation Predictor For Video Encoding
US20130251040A1 (en) * 2007-12-30 2013-09-26 Ning Lu Motion Estimation Compatible with Multiple Standards
US20120128071A1 (en) * 2010-11-24 2012-05-24 Stmicroelectronics S.R.L. Apparatus and method for performing error concealment of inter-coded video frames
US20170347117A1 (en) * 2011-11-04 2017-11-30 Nokia Technologies Oy Method for coding and an apparatus
JP2015076766A (ja) * 2013-10-09 2015-04-20 日本電信電話株式会社 映像符号化装置、映像符号化方法及び映像符号化プログラム
US20170208341A1 (en) * 2014-08-12 2017-07-20 Intel Corporation System and method of motion estimation for video coding

Also Published As

Publication number Publication date
TW201943277A (zh) 2019-11-01
CN111656788A (zh) 2020-09-11
WO2019148117A1 (en) 2019-08-01
JP2021512568A (ja) 2021-05-13
CN118509603A (zh) 2024-08-16
AU2019212951B2 (en) 2023-01-19
KR102656965B1 (ko) 2024-04-11
JP2023098965A (ja) 2023-07-11
MX2020007969A (es) 2020-10-28
MX2024004798A (es) 2024-06-24
EP3747194A1 (en) 2020-12-09
US11470344B2 (en) 2022-10-11
JP7260562B2 (ja) 2023-04-18
KR20200127992A (ko) 2020-11-11
US20210051340A1 (en) 2021-02-18
AU2019212951A1 (en) 2020-08-20
CN111656788B (zh) 2024-06-07

Similar Documents

Publication Publication Date Title
TWI815854B (zh) 具低複雜度框率升頻轉換
US20230319289A1 (en) Method and system for decoder-side intra mode derivation for block-based video coding
CN109417625B (zh) 编码或解码视频的装置及方法
US11036459B2 (en) Two-dimensional palette coding for screen content coding
CN109121465B (zh) 用于运动补偿残差预测的系统和方法
CN107409220B (zh) 块内拷贝搜索
TWI716353B (zh) 區塊內複製檢索增強方法及系統
CN111432220B (zh) 采用块向量导出的帧内块复制编码的方法和系统
TW202015412A (zh) 降低解碼器側運動精化的寫碼潛時的方法及裝置
JP2017532885A (ja) 時間ブロックベクトル予測を用いたイントラブロックコピー符号化
CN114666582A (zh) 用于利用光流的帧间预测细化的系统、装置和方法
CN111801946A (zh) 用于具有降低的译码复杂性的视频译码的广义双预测
WO2019032765A1 (en) CONVERSION-ELEVATION OF FRAME FREQUENCY WITH REDUCED COMPLEXITY
WO2023118309A1 (en) Gdr interaction with template based tools in inter slice