GB2557430A - Methods and apparatuses of costrained multi-type-tree block partition for video coding - Google Patents

Methods and apparatuses of costrained multi-type-tree block partition for video coding Download PDF

Info

Publication number
GB2557430A
GB2557430A GB1716705.7A GB201716705A GB2557430A GB 2557430 A GB2557430 A GB 2557430A GB 201716705 A GB201716705 A GB 201716705A GB 2557430 A GB2557430 A GB 2557430A
Authority
GB
United Kingdom
Prior art keywords
block
partitioning
current
split
parent
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
GB1716705.7A
Other versions
GB201716705D0 (en
GB2557430B (en
Inventor
Huang Han
Liu Shan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MediaTek Inc
Original Assignee
MediaTek Inc
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
Priority claimed from US15/729,831 external-priority patent/US10779004B2/en
Application filed by MediaTek Inc filed Critical MediaTek Inc
Publication of GB201716705D0 publication Critical patent/GB201716705D0/en
Publication of GB2557430A publication Critical patent/GB2557430A/en
Application granted granted Critical
Publication of GB2557430B publication Critical patent/GB2557430B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • 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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

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

Abstract

Determining whether a current block is the middle sub-block of a triple-tree (TT) partitioned parent block. This is followed by determining the partition type and partition direction for splitting the current block by prohibiting a particular directional partitioning based on the direction of the partition of the parent block. Preferably the prohibited partitioning type is a horizontal binary tree (BT) partition in the case of the current block being the middle block of a horizontally TT partitioned parent block and a vertical BT partition in the case of the current block being the middle block of a vertical TT partitioned parent block. Preferably the prohibited partitioning type is a horizontal TT in the case of the current block not being the middle block of a horizontally TT partitioned parent block and a vertical TT in the case of the current block not being the middle block of a vertical TT partitioned parent block.. A further disclosed invention comprises determining the partition direction and partition type of a parent block followed by determining if a first set of the parents sub blocks are further split by a partition direction and partition type which are both different from the parent.

Description

(54) Title of the Invention: Methods and apparatuses of costrained multi-type-tree block partition for video coding Abstract Title: Determining multi-type tree partitioning (57) Determining whether a current block is the middle sub-block of a triple-tree (TT) partitioned parent block. This is followed by determining the partition type and partition direction for splitting the current block by prohibiting a particular directional partitioning based on the direction of the partition of the parent block. Preferably the prohibited partitioning type is a horizontal binary tree (BT) partition in the case of the current block being the middle block of a horizontally TT partitioned parent block and a vertical BT partition in the case of the current block being the middle block of a vertical TT partitioned parent block. Preferably the prohibited partitioning type is a horizontal TT in the case of the current block not being the middle block of a horizontally TT partitioned parent block and a vertical TT in the case of the current block not being the middle block of a vertical TT partitioned parent block.. A further disclosed invention comprises determining the partition direction and partition type of a parent block followed by determining if a first set of the parents sub blocks are further split by a partition direction and partition type which are both different from the parent.
Fig. 6A
Fig. 7A
Sheet 1 of 14
110 input
132
Intra
Prediction
Inter
Prediction
Ref. Piet.
114
116
118
112
1 + ► T
r 1 r
REC ◄- IT
V
IQ
120 video bitstream
Figure GB2557430A_D0001
134
A SAO y— 130 i L A
100
Fig. 1
Sheet 2 of 14
200
Figure GB2557430A_D0002
Fig. 2
Sheet 3 of 14
Fig. 3A
Fig. 3B
Fig. 3D
Fig. 3C
Fig. 3C
Sheet 4 of 14
Figure GB2557430A_D0003
Fig. 4A
Figure GB2557430A_D0004
Figure GB2557430A_D0005
Fig. 4B
Sheet 5 of 14
RT split
RT split (quadtree partitioning) (leaf node)
PT split
BTorTT (BT) (HOR)
HOR/VER split
Fig. 5 (TT)
BTorTT (VER) (BT) (TT)
Sheet 6 of 14
X
Fig. 6A
w H
Fig. 6B
Fig. 7A
Fig. 7B
X
Sheet 7 of 14
v
λ v
λ
) < ) <
Fig. 8A
Fig. 8B
) <
v
Λ
Fig. 9A
Fig. 9B
Sheet 8 of 14
pridieSsti/eei xPt, yFi bg2FtW®4 kig^RReight ptType, ρ0?*α, xK yO, fegSCbWidffi, | iog2C'b Height ) (
i.................................................................................................................................................................................................
1 si<PLsp&,Sag) i
| pt spMt dir | i${ pVspMj&f — HOR) (
j sf( BpfType — $ ί — H0R.&<fexG — xPtXt. ( pt split ΐγρ«
| jfi'pfyspljijype — ST) (
ptedfctwsa tiee( xOr yO. feigSCbWkit, bgiiCbHeigM BT, HO'R, x8, yO, teg2CbWichC feg2CbHei$&-i }
predbiiar, Jjeei x& yG, iop2CbWidtk bg2CbHesghk ET, HOR. s6, γ&ί-ζΚ^ί, fog2C%Hej^t-!)X bgSCbWtdth, bgiCbHdght'i )
} eke PLsp&LW^ 5858 TT) (
ptecbcm trsef ssQ’, yG, te§2CbWtk togSCbHeigbt. TT HQ& χβ, yO, kgXfeWidth, feg2CbBeigfc-2 )
ptesfedioo trse( xG, yS, bgSCbWidth, Icg2CbH&fgS TT, HOR, ><y{Kl««0og2CbHei$it2)i fegSCbWidih, te^CbHei^T )
ptechcwijrs;e( sd3,. yG, Isg2CfeWidth, tog^CbHeigfat, TT, HOT χβ, y^(l<<0ag2CbHej^-2)>(i<<(bg2CbHej.^-l)), bg2CbWtdth, bg2CbHei^t-2 )
}
} eke iff ptjsp&jfer — VER) (
si( sfyiTyye:::::-· IT <&.<£. ptLV ::::: TERX&. xG:-:::: xPt4,(b’'if(s.i3g2pt1^fi.iibb-2;} <£.·& yO —yPi) ;
FOS$Utjyp«
iff pt^htjype BT) (
predtcnont tree{ xO) yG, foglCbWidth, ieg2CbHejght, ΒΪ, VER,
predktm tree( sG, yO, bgGCWWt, fog2CbHesghfc ST, VEK xGXKXbgzCbWXh-I}), y0jog2CbWid&-l bg2CbK«gfo )
j eke iff PO0tJype' tt) {
pre<to®Jree( xG, yff b§2CbWidtfe, iogSCbHeighi; TT VBR, xii yff bg2CbWidth-2, logZCh Height )
predbtmjreiff xO. yG, kg2CeWidth, bgSCbHeight; TT, VBR, KG*(K<(feg2CbWMlth’2}), yff bg2CWbth< bg2CbHejgh- )
predbtbn ΐτείι :<Gt yO, b^cKWidth, bg2CbHmhf, TT VER, xiXK<<feg2Cbw5th ά)>Π«( bg2CbWiifeh4)}. y8, b§2CfeWidffi-2s iogSCbHeigH )
........../..,...)/..................................... ............... ....................................................................................... .........................................
j
} else
e;/i< wfsstk'.R yff bg2CbWidth, bgZC'bHiighi
Fig. 10A
Sheet 9 of 14
1 preteimjree< kR, yFt. ptType,' ptDa; xO, yO, kgSGbWW | teg2Gh Height );.(
I.......pyapOm.........................................................................................................................................................................................\
iti. pt.£pSt.feg) (..
ί fUlfiyfc
J if( pt ws£>irt~ chx ™ HOR1 {
if! hpfiype ™ TT && ptlbir — H0R. YYx8 — sPt &<& i yOt-yPt* (l<<(bg2BtHcighi:G)j ) )
J pt^spUtJypg 1
j iff pt~ splitJype — BT) (
prediction tree( xR yd, bgYYtWidth, YgSCfcHeight, BT, HGR, I 80, y 0, Yg2CbWid£ l§g3ClTUighH )
predsctbn^treeC M yO, tog2CWMtfa* teg2€feHeigfa£ BT, HGR, j xO, yQ+O =:<( log2CbHeigfaM)\ !eg2CbWit&li, to giYb Height-! )
) else st( pusplit^typc ™ YF) (
| predicSon tree( t<U, y0, log^ChWsA, fegdChHeight, TT HOR ’ 1 80, yO, l6g2CbHeight-2 )
predsciK-n tr$e( sG, vS. bg2C& Width, lo§2CbHeight TT, HOE, | :< bgXWidtR kg2CbHetghU }
I prediction tresf xG, yO.logSChWidSi, iog2Chfteigbf TT, HGR, j^pO*(l«<aeg2CbHeig|at-2)>(i<«0&g2CbH«i#itU), Rg2CbWkR logSCbHbigt^aj.
i 1
1 fWe< J tSft >pVt th‘ “···· VER) ( f.................................. jCsssssyPfc) )
1.........................PL?^L».......................................................................................................................................................................,
1 pt... split ...type — BT) {
... Λ:feg^GhHei^G.M/WR; j xO, yU, hg2Cb Width- f log2Cb Height. )
j prediction tree( xQ, vO, io^lCb Width, iog2f’hHeigh£ BY VER, | UNO <Yj·''' '
} else 1 <pt„spRjy?e — TTn
J predtetson.Jree( xS, yO, L'g2CVW;dth, Rg2ChHeightJ TT, VER, WgiBGhBeiOil :
| predieS'n R'ec( iC yS, bg2Ch Width, Tt, V'ER, | 80+(1 <<teg2CbWsah <2)>(i«(bg2ChWi^l)X yO, bg2CWktM, fegSCbHsbght)
1 1
) ......
} elss
J coding^utyRKO, yO, log2CbWidtb, RgzC'bKsnghi) ·........................................................................................................<
Fig. 10B
Sheet 10 of 14
pre&chaojw( xPt, ypfc, IsgiiPtWtdih, k>g2PtH?ight. pfFype, ptOir, xfi, yd, logzCbWidth, logX'hH eight ) (
POWjag
i.F pusgtethg) (
splfedir
pt split dir ~ HOE) (
................................................................................................................................................................................................
ri( pfysp&Jype === BT) i.
prediction tree( zd, yd, liifylCbWidfh, tag^ChWei^it. F-X HOR, std, yd, bg2CfeWid&, IsgicbHe^J )
prediction trsef zd, yd, lcg2CbWs4tk ksgXbHeigM BT, HOE, < yO+<OH fog2dHe^-i)> fogkbWi&fc. bg2CbH«ght· 1 3
) felse ifi si spat type — ΓΤ) f
predkiuss iree( xd, yd, ieg2CbWi$h, ksg2CW«ghf IT, HOP, κΰ, yd, Sog2CbWid< teg2CXHeaghtT )
pre&Uoa tre«( xd, yd, TegdCdWiM, iog2CbHssgM, TF, HOR, xO,yO+(^<^CbHe^2)X log2CbWiM. teg2Cbhfesghtl )
pretkiioft tree/ zd, yd, io&XhW&h, k'g2ObHei?M TT, HOE. <yatO<<n&gycbHet3EiT)ri(l<<fl6g2CbHeight-l3k lo^CbWisHk feg2Cbbtoght-2 )
. . ) ............................................................................................................................................................................
} eke tf( pt split dir = YER) {
------------------------ sit ?tpttype ~ss s j. Λ:',®.pto-srsss vwq i
pt
iog2CbHei$a, BT. VER prefe&otsjree( yd, k>g2CiWidi <y0, logaCbHeight ) pred&c&08jree( zd, yd, hg2CWidth, laggCfeHeigK 8T, VE<
zd*-(l«( feg20bWtdth-l?k yS, Iog2CbWidth-I ) t else.
_$ i__ ____ _____________ pm£cfioiijxee( x9, yd, k^ChV^Sh., (ogSCbOeigEb TT, VER >:ΰ, yO, tog2CbWUth-2 togXbHetght ) prstOefcoE tree/ sid yd. iegSCbWis&h, kg2CbHei$hi, TT, VER.
yd, kg2CW«feiv1, lo§2CbHei$fc ) pred&4iontire^ zO, yd, Ieg2Ch Width, kigSCbHeight TF, VEE, feg2ChWiSth -2)>(1«(lagaCbWhfeU», yd, kggCbWidtfoX fogSCWeight )
2.
} else
Fig. IOC
Sheet 11 of 14
j^dictK>»Jree( xFt yPt, Rg2FtWsM;;TigOH«i^h yiTypRytDR/hh^yRjfegSGhWO,:: h§2CbHeight) {
ptsplit flag
R< ptspKJ*£} i
Pt-sqfeyp*
..............^..^^^...^...^)...1......................................................................................................................................................
pt split? :<r
iff pfc spS &··«» ΗΘΒ }. f
pretfeeno&Jreei Mf yO, iegSCfeWtdtk iog2CbHeighf ET HOR, xff yO, logZChWidJh, RgSChHeighM ?
prpf&rffiR tri'#· yh'hylVbWbdth, FTHGR xO, yQ-H i «I, ks^iCbHei’ght'i }), fog2ChW>&h hg2ChH«ghb I )
t-e.bs if( pt„splitjfc VER) (
pre«fetojxee( >< yd Rg2Ch Width bg^CbHei^a. BT, VER. i xO, yO, fe §2CbWiM· R IspGbll^Si^iVj
jiheWIOk Wfef :?R W Rg2Cb Width, dbyiGbHhi^- BT. VER. xO+0«(iog2CW5th-l)X yOJogaeWiife-L bg2CfeHei$fc )
)
} ©h$ ............<gLri;HLTB..=.TDl_ pTspUtydh'
:-:0, y 0. Wg^SbWiSBii^^&^GOe&hRE/i
.....lopChHei^R......Τΐ/ΉΟίΤ..........................................................................
x0,yU+{l«^icgJCS?H6$!fe'^X ieg2VfeWt$&, b§2CbHetghM 1 pre&LonJreV sO, yii, IsgSCMMdB., bg2CbHh®hh TT, HOR, >;0> y(Ki«W»Heigfc-2£*a <^l©§2CbHei^l>), M&W, RgECbHeigMT ) | ©te hi PMpMy^·Ξ.·Υ^).1 predscfccas_treev xk yO, Seg2CbWidtk 1;·ξ2ι>Ή««ίι1, TT. VER, xS, y(j. br2'hV\dth Λ VgdCbKeight t _____ _______ p3.i>&etkfnjy©s( :df γ8, ieg2CbWidth. bg2CbHeighL IT VER
KOf(U<.0ast2Cl> Widths)), yQ, Ifl^CbWitt-l, ies^CfeHets# )
--------------------------------------------------------yO, WaCWRfeh-R Rg3CbH©sght ) yfc cedm^ursiCd).. y8, bg2CbWidth, ki^2CbH«i^t.!
Fig. 11A
Sheet 12 of 14
TFr, ’’Ft, nfiYptt xf\ f Sr§4CbWtdth.
......Si....................................................................................................................................................................................
!.% pt spht Sag) l
............ΡίτΛΤΡ®..............................................................................................................................................................................
ti( pfospbjyp? ~~ &T)
i£( s(ptTyp« ™ ΤΓ <&.<& stDsr ™ HOR ™ 3£ptA&yO ™ y?yKl«<(k^2F£Hes$n'2)) ) <&&KptTwpfc — IT&&ptDsr — V'ER &&χδ — xfv 0 < <0^g2PtWsdth’2)} &&γδ — y?t)}
pi -spit dir
5$ -:-W: H©R; ) (
predkiieajyee{ j& yO, feg3CVWife> logXfeHetghi 8T, HOE, xG, yO> fog2CWjd?K bg2CbH«tghi-i .)
pre^c&oajreet xS, yC fegiCbWsdth, iog2CbHeigbf BT, HOR,
} eke if( prj>pl3t~da' “ VER) (
prerKcfc«5&_fcree( tit·, yS, iog^CbWsdai, tog^CfeHetght ET, VE-R, kS, yX lag2CbWidih* i, feg3ChHstght)
psedicim teeef^X yO, feg2CWsdtht LgSCbHeigU ΒΤ,-VER, MML<(bi0£WtAM)X < b^CWid&T, log2CfeHes^t)
...................)............................................................................................................................................................................................................
} «be if? pt...spilt.type — TT) {
pt split dir
— HOR) {
predictm tr««( yb fog2CWSdth. bgSCbHeighf TT, HOK MyOJegaCWidth, bgiCb Height-2 )
predictionJreef s$, yO, ie§2CbWsdtii, iogSCbHbght, TT, HOR, sO, yO-*(’'i'i0og2GbHeighS'2;x fogSChWtdth, fog2CbHeighbl )
prediction tree( κθ? 3$, iogSC^Width. lo^2CbHe^it. ΓΚ HOR, ^yO^Cl<<(bg2CbHei^t2)>(K^feg2ChH^^l)X icg2CWidtU Sog2CbHei^2 )
...................:<· V'................................................................................................................................................................................................. ) i.6( PL^L^ “ VER) {
ptisdtdien tree( χδ, yX fog2ChW^ih. fog2CSHM& TT, VER. χδ. yO, ieg2CbWid^ 2, leg2CbHeight)
prediction inset’ :< y< ieg2ChWsM, BgSCbHeight, TT, VER, jd>0 <<OogOWi^2))9 yO. bgSCWtdth-1, fog2CfeHe^ft )
sredtctinn treef xit, yO, icpiCbWidth. log2CbHei?X 7T, VER, xOt<i«aog2CbWidth-2}>fl<<{l?>g2CbW^nk να bgkfeWidth-2, bgSChKesghf )
...................).......................................................................................................................................................................................................
.......... J..................................................................................................................................................................................................................
),.8«:
cedjogji&it(j$, H, legiCfeWiA, bgSCbHetghij
Fig. 11B
Sheet 13 of 14
............................................................................................................................................................................................ sf( i4 SpR Siig} t
............................................................................................................................................................................................... 5.1.( pVp&jype ™ 3T) (
pt split dir
lit pt..tpkt..dir 8252 HOR.) t
pre&ett&njmf xO. yi!, iegzCbWidfch. legSCbHeight 8T, HOR, xO. ?T. kg.rCbWn&h, KigiCbHeightB )
pitdKhon..d'ee( x-0, yO, kgSCTWidth, iftg2ChHeigkt ST, BOR, .?:(}., Height!)),: Rg2C%Tift, W2ChHeight 4 )
j ehe if( ρ1„ερ&άί — VEP,) (
peedk'tt&n Jreef xl yO, legSCbWidth, HgiChHeight, ST. YE,S, xtl yίλ log2CbWidth- 1, log?CbHeight )
pre&ctKMRjreeC χθ, yil feg2CbWldtk logSCbHerghf ST, VER, xSHl IsgSCbWHthB)), νδ, logSCbWidib' i, log2CbHesght )
...................}.................................................................................................................................................................................''^
•else t£( pt_split_ty»e — TT) (
ib: kp$Typ<?— TT^&ptDa’ -·— HOR^.&xO“iis xFt<O./0 fyPtRB^Ue^PtKeig& Zl) 1 && KTiType 888> TT »t£^r 888; YER s™ xPiRZ<<M2PrWiM)) i&yG^ySr})
pi split dir
ΐΓΓϊΤΤρΕΓΊίίΤ^^ΗΟΗΤΤ
piedsetienjieei xT yR l®g2CbWidth, log2CbHei§ht; TT, BQR, χβ, yft. LgzC’bWidtK bgZCbHeight- j )
predictsjree( rtf, yfj, tog2CV^dth. bg2CbHeigk TT, BOR, Kb, Ug2Cb Width, k>g2CbHei§hM )
pre^ctm^treeC xH, yS, bg2CbWfeh, iogSCbHeight TT, HOR, xO, yb*( 1 < <ibglC'bHejght- 2).H( 1 <<i HglCbBe;ghi-1)), logiCbWsdth, log2€bWeight-2 I
] else IS' pt split dir — YER.) (
prefcm bree{ χϋ, yO, tegSChWidth, iog2Cb Height IT VgR < yft. bg2CbWxbh-2, log2CbHe$it )
predktai iree( xti yO, fegSCbWidth, l^gSCAlhiighi, TT, VE-R, xtH(t«(bg2CWidth-2)), yR feg2CfeWM. lo§2CbHei^t)
predklien hteC xi), yO, legdCbWidrh, leg2CbHei§hr, TT, YER, xS*Ci«^§2CfeW5Sb^>(li«(lQg2CWidthd)X yO, feg2CbWi&b-2, k-g2CfeHe^t )
t ·. ...................../..........................................................................................................................................................................................................
j
} else I
&οάπ^ί«ώ(5ί6. yb, ieg2CbW<k, log2€bHei§ht)
Fig. 11C
Sheet 14 of 14
χΡζ yPiJogSFtWMfe^ IssgSPtHeight, plType, pfDsr; A leg2Cb Width,, s a^2C'h H sssjht :}: (
ifi ptyspis Sag) l
pt split type
if!' JyP« ” BT) (
sit ’ fpiType ™ TT &.& ptBu — HOR sb ™ >:Pt &<& yS — yPt*(l<<'(lo^PrHej^t-23) ) «&& TptType — 77 &&ptDtr — VE& &>&.κ(Τ— xFf+ii =; <iK>?2PiWii8h-2J) &<& ?G — νΡΗ ':>
ptspik jiir
i£( pt spbt„& — HOP.) i
pmcm tr«eC :< vU W2ObW;dth, b^CbHeight, BT„ HOR <Α bgiCWiM, !og2Cb>WtT )
predieSon tree{ A Ά io g,2Cb Width, Sog2CbHei§hk BT, HOR, 3ίδ, yS+(U<( logSCbHesg^tH)), fegSCbWidth, lesh'Cb Height-1 )
Jesfe: iff pt split dir = VEE) (
prgdicfcsn treei sib A &>§2€bWd&, log2Ch Height BT, VER, A A feg5CbWidt£ h fegSCfeHsigbf)
predi&hea tpje( s0> yO, fogSCbWidth. feg2ChB$igbt> BT YBR, x8+(l«Cl6S2ChW^0), v8> fcg2CbW«&T tog2CbHei^t )
....................}............................................................................................................................................................................................................
) tbs Fpt^spRtVype “ΤΓ) (
if( ipftype — TT <&& ptDif — HGR <&& Nj — iPt <O y6 i« yPt+(Bc(b§2FtHe^-2)5 ϊ <&<& TptType — IT <&&»<>»' — YER. i~ Xpn(l <<<Ug2FiWm-2)) && A — yPt))
pU $pM :dfc
? phbs&ttihWb(: sil y0;. fogBGbWidth, b sUChHeighh:' 77, HO R,: xOji Ibg^ObAMfev ).....
predjetam iree( A yO, fcgSChWi&L fegSCfeHesgfe, TT, HOR, sO.y^iiL^ObHetght.jB. bg2CTWhbf AgicbHrtgh* 1 ?
prAetm tw( sib ?ϊ fcg2CbWi«ith, fogBTbHetght, TT. HOR, < y8+(l«^CbH«t^21)+(i^<asg2aHeight-n). fcg2CbW«Jtk leg2ChHesght-2 )
sB; pU sp&j&r?—YBR ) (
jaedi&fesn te«e( A y8. log2C Width, hg2Cb Height. TT, VER, < A ieg2CfcVWM'-2, bg2CfeBe$sK)
preKtton ite e(A yib fcg2CiWM? bg2C^HsighC W? YBK xG+O<<(ag2ChWth--2)), A R^CWidth-l, bgSCbHeighi)
j.iedyfeo:. kee{ L. Ά Ug2TW”:dth, bg2CbH«/ht, i i, YER. 250+(1 OX A bg2CbWWh-2, tegiCbbkigfet )
.....................).................................................................................................................................................................................................
i else
eoTsg. eiKt(sb?/ A iag2ChWis&, bg^ObSbight)
Fig. 11D
TITLE: Methods and Apparatuses of Constrained Multi-type-tree Block Partition for Video Coding
CROSS REFERENCE TO RELATED APPLICATIONS [0001] The present invention claims priority to U.S. Provisional Patent Application, SerialNo. 62/407,074, filed October 12, 2016, entitled “Methods and apparatus of constrained multi-type-tree block partition for video coding” and U.S. Provisional Patent Application, Serial No. 62/521,568, filed June 19, 2017, entitled “Methods and apparatus of constrained multi-type-tree block partition for video coding”. The U.S. Provisional Patent Applications are hereby incorporated by reference in their entireties.
FIELD OF THE INVENTION [0002] The present invention relates to constrained block partitioning in video coding systems. In particular, the present invention relates to determine a partition type and partition direction for splitting a current block by conditionally prohibiting a partition type and partition direction.
BACKGROUND AND RELATED ART [0003] High Efficiency Video Coding (HEVC) is the latest international video coding standard developed by the Joint Collaborative Team on Video Coding (JCT-VC) group of video coding experts from ITU-T Study Group. The HEVC standard relies on a block-based coding structure which divides a picture into multiple non-overlapped square Coding Tree Units (CTUs). Each CTU consists of multiple Coding Tree Blocks (CTBs) and each CTB is for one color component. The CTUs in a slice are processed according to a raster scan order; and each CTU is further recursively divided into Coding Units (CUs) according to a quadtree partitioning method to adapt to various local characteristics. Fig. 1 illustrates an exemplary system block diagram of a
Video Encoder 100 based on the HEVC standard. Intra Prediction 110 provides intra predictors based on reconstructed blocks of a current picture, and Inter Prediction 112 performs motion estimation (ME) and motion compensation (MC) to provide inter predictors based on video data from other picture or pictures. Switch 114 selects an intra predictor from Intra Prediction 110 or an inter predictor from Inter Prediction 112 for each block in the current picture. The selected predictor is supplied to Adder 116 to be subtracted from the input video data in order to form prediction errors, also called residues. The prediction errors are then processed by Transformation (T) 118 followed by Quantization (Q) 120. The transformed and quantized residues are then coded by Entropy Encoder 134 to form a video bitstream corresponding to the compressed video data. The video bitstream associated with the transform coefficients is then packed with side information. The side information may also be subject to entropy coding to reduce required bandwidth, and the data associated with the side information are provided to Entropy Encoder 134 as shown in Fig. 1. When an inter prediction mode is selected, a reference picture or pictures have to be reconstructed at the encoder end as well. Consequently, the transformed and quantized residues are processed by Inverse Quantization (IQ) 122 and Inverse Transformation (IT) 124 to recover the residues. The residues are then added back to the selected predictors at Reconstruction (REC) 126 to produce reconstructed blocks. The reconstructed blocks may be stored in Reference Picture Buffer 132 and used for prediction of other pictures.
[0004] As shown in Fig. 1, incoming video data undergoes a series of video processing in the video encoding system. The reconstructed blocks generated from REC 126 may be subject to various impairments due to a series of encoding processing. Accordingly, various in-loop processing is applied to the reconstructed blocks before the reconstructed blocks are stored in the Reference Picture Buffer 132 in order to improve video quality. In the HEVC standard, Deblocking Filter (DF) 128 and Sample Adaptive Offset (SAO) 130 are applied to the reconstructed blocks before storing in the Reference Picture Buffer 132 to enhance picture quality. The in-loop filter information may have to be incorporated in the video bitstream so that a decoder can properly recover the required information.
[0005] Fig. 2 illustrates a system block diagram of an exemplary HEVC-based Video Decoder 200. Entropy Decoder 210 is used to parse and recover the coded syntax elements related to residues, motion information and other control data. Switch 216 selects Intra Prediction 212 or Inter Prediction 214 according to decoded mode information, and the selected predictors are supplied to reconstruction (REC) 218 to be combined with the recovered residues. Besides performing entropy decoding on compressed video data, Entropy Decoder 210 is also responsible for entropy decoding of side information and provides the side information to respective blocks. For example, intra mode information is provided to Intra Prediction 212, inter mode information is provided to Inter Prediction 214, sample adaptive offset information is provided to SAO 226 and residues are provided to Inverse Quantization (IQ) 220. The residues are processed by IQ 220, Inverse Transformation (IT) 222 and subsequent reconstruction process to produce reconstructed blocks. The reconstructed blocks are further processed by DF 224 and SAO 226 to generate final decoded video. If the currently decoded picture is a reference picture, the final decoded video of the currently decoded picture is also stored in Ref. Piet. Buffer 228 for later pictures in decoding order.
[0006] Fig. 3A illustrates an example of the quadree (QT) partitioning method applied in the HEVC standard to split a block into four smaller sub-blocks. Alternative partitioning methods called binary tree (BT) block partitioning and triple tree (TT) block partitioning split a block into two smaller sub-blocks and three smaller sub-blocks respectively. Figs. 3B and 3C illustrate symmetrical vertical splitting and symmetrical horizontal splitting according to binary tree block partitioning. For a given block of size MxN, the size of the two smaller sub-blocks is M/2xN if symmetrical vertical splitting is used; otherwise the size is MxN/2 if symmetrical horizontal splitting is used. Triple tree partitioning method is designed to capture objects which locate in the block center while quadtree and binary tree partitioning methods always split along the block center. Fig. 3D illustrates vertical center-side triple tree partitioning, and Fig. 3E illustrates horizontal center-side triple tree partitioning. The triple tree partitioning method may provide capability to faster localize small object along block boundaries, by allowing one-quarter partitioning vertically or horizontally.
[0007] Although the binary tree and triple tree partitioning methods supports more partition shapes and thus is more flexible than the quadtree partitioning method, the coding complexity and signaling overhead increase for selecting the best partition shape among all possible partition shapes. A combined partitioning method called Quad-Tree-Binary-Tree (QTBT) structure combines a quadtree partitioning method with a binary tree partitioning method, which balances the coding efficiency and the coding complexity of the two partitioning methods. An exemplary QTBT structure is shown in Fig. 4A, where a given block such as a CTU is first partitioned by a quadtree partitioning method then a binary tree partitioning method. Fig. 4A illustrates an example of block partitioning structure according to the QTBT partitioning method and Fig. 4B illustrates a coding tree diagram for the QTBT block partitioning structure shown in Fig. 4A. The solid lines in Fig. 4A and 4B indicate quadtree partitioning while the dotted lines indicate binary tree partitioning. In each non-leaf splitting node of the binary tree structure, one flag indicates which splitting type is used, 0 indicate symmetrical horizontal splitting and 1 indicates symmetrical vertical splitting. The QTBT partitioning method may be used to split a CTU into CUs, where the CUs are called binary tree leaf nodes and are used for prediction and transform without any further partitioning.
[0008] Multi-Type-Tree (MTT) block partitioning extends the concept of the two-level tree structure in QTBT by allowing both the binary tree and triple tree partitioning methods in the second level of MTT. The two levels of trees in MTT are called region tree (RT) and prediction tree (PT) respectively. The first level RT is always quadtree (QT) partitioning, and the second level PT may be either binary tree (BT) partitioning or triple tree (TT) partitioning. For example, a CTU is firstly partitioned by RT, which is QT partitioning, and each RT leaf node may be further split by PT, which is either BT or TT partitioning. A block partitioned by PT may be further split with PT until a maximum PT depth is reached, for example, a block may be first partitioned by vertical BT partitioning to generate a left sub-block and a right sub-block, and the left sub-block is further split by horizontal TT partitioning while the right sub-block is further split by horizontal BT partitioning. A PT leaf node is the basic Coding Unit (CU) for prediction and transform and will not be further split.
[0009] Fig. 5 illustrates an example of tree-type signaling for block partitioning according to MTT block partitioning. RT signaling may be similar to the quadtree signaling in QTBT block partitioning. For signaling a PT node, one additional bin is signaled to indicate whether it is a binary tree partitioning or triple tree partitioning. For a block split by RT, a first bin is signaled to indicate whether there is another RT split, if the block is not further split by RT (i.e. the first bin is 0), a second bin is signaled to indicate whether there is a PT split. If the block is also not further split by PT (i.e. the second bin is 0), then this block is a leaf node. If the block is then split by PT (i.e. the second bin is 1), a third bin is sent to indicate horizontal or vertical partitioning followed by a fourth bin for distinguishing binary tree (BT) or triple tree (TT) partitioning.
[0010] While the proposed MTT is able to improve performance by adaptively partitioning blocks for prediction and transform, it is desirable to further improve the performance whenever possible in order to achieve an overall efficiency target.
BRIEF SUMMARY OF THE INVENTION [0011 ] Methods and apparatuses of video processing for a video coding system with constrained block partitioning are disclosed. Embodiments of the video coding system according to a first or second method receive input data associated with a current block in a current picture, where the current block is split from a parent block. The video coding system determines if the parent block is split by horizontal triple tree (TT) partitioning or vertical TT partitioning, and determines whether the current block is a middle sub-block in the parent block. A partition type selecting from BT and TT partitioning and a partition direction selecting from horizontal and vertical partitioning are determined for splitting the current block by prohibiting a horizontal partition type if the parent block is split by horizontal TT partitioning and prohibiting a vertical partition type if the parent block is split by vertical TT partitioning. The prohibited horizontal partition type and the prohibited vertical partition type depend on whether the current block is the middle sub-block of the parent block. The video coding system processes the current block according to the partition type and the partition direction, for example the current block is split according to the partition type and the partition direction for prediction and transform in video encoding process or video decoding process.
[0012] In some embodiments of the first method, the prohibited horizontal partitioning type is horizontal binary tree (BT) partitioning and the prohibited vertical partitioning type is vertical BT partitioning when the current block is the middle sub-block of the parent block. In cases when the syntax of partition direction is signaled before the syntax of partition type, the partition type for splitting the current block is not signaled and is inferred to be TT partitioning if the parent block is split by horizontal TT partitioning, the current block is the middle sub-block of the parent block, and the partition direction is horizontal partitioning. Similarly, the partition type for splitting the current block is not signaled and is inferred to be TT partitioning if the parent block is split by vertical TT partitioning, the current block is the middle sub-block of the parent block, and the partition direction is vertical partitioning. In cases when the syntax of partition type is signaled before the syntax of partition direction, the partition direction for splitting the current block may not be signaled and may be inferred to be vertical partitioning if the parent block is split by horizontal TT partitioning, the current block is the middle sub-block of the parent block, and the partition type is BT partitioning. The partition direction for splitting the current block may not be signaled and may be inferred to be horizontal partitioning if the parent block is split by vertical TT partitioning, the current block is the middle sub-block of the parent block, and the partition type is BT partitioning [0013] In some embodiments of the second method, the prohibited horizontal partitioning type is horizontal TT partitioning and the prohibited vertical partitioning type is vertical TT partitioning when the current block is not the middle sub-block of the parent block. For example, the current block is a top or bottom sub-block generated from horizontal TT partitioning or the current block is a left or right sub-block generated from vertical TT partitioning. In cases when the syntax of partition direction is signaled before the syntax of partition type, the partition type for splitting the current block may not be signaled and may be inferred to be BT partitioning if the parent block is split by horizontal TT partitioning, the current block is not the middle sub-block of the parent block, and the partition direction is horizontal partitioning. The partition type for splitting the current block may not be signaled and may be inferred to be BT partitioning if the parent block is split by vertical TT partitioning, the current block is not the middle sub-block of the parent block, and the partition direction is vertical partitioning. In cases when the syntax of partition type is signaled before the syntax of partition direction, the partition direction for splitting the current block may not be signaled and may be inferred to be vertical partitioning if the parent block is split by horizontal TT partitioning, the current block is not the middle sub-block of the parent block, and the partition type is TT partitioning. Similarly, the partition direction for splitting the current block may not signaled and may be inferred to be horizontal partitioning if the parent block is split by vertical TT partitioning, the current block is not the middle sub-block of the parent block, and the partition type is TT partitioning.
[0014] Some other embodiments of the video coding system according to a third or fourth method receive input data associated with a current block in a current picture, where the current block is a second sub-block split from a parent block by binary tree (BT) partitioning or the current block is a third sub-block split from a parent block by triple tree (TT) partitioning. The video coding system determines a parent partition type and a parent partition direction for splitting the parent block, where the partition type is selecting from BT partitioning and TT partitioning, and the partition direction is selecting from horizontal partitioning and vertical partitioning, and also determines if a first sub-block split from the parent block by BT partitioning or both first and second sub-blocks split from the parent block by TT partitioning is/are further split by a first partition type different from the parent partition type and a first partition direction different from the parent partition direction. For example, the first partition type is TT partitioning if the parent partition type is BT partitioning and the first partition direction is vertical partitioning if the parent partition direction is horizontal partitioning. A current partition type and a current partition direction for splitting the current block are determined by prohibiting splitting the current block by the first partition type and the first partition direction. The video coding system processes the current block according to the current partition type and the current partition direction. For example, prediction and transform in video encoding or decoding process are applied to sub-block split from the current block by the current partition type and the current partition direction.
[0015] In some embodiments of the third method, the first sub-block and second sub-block split from the parent block are top and bottom sub-blocks respectively if the parent block is split by horizontal BT partitioning, and the first sub-block and second sub-block split from the parent block are left and right sub-blocks respectively if the parent block is split by vertical BT partitioning. The first partition type and the first partition direction for splitting the first sub-block are TT partitioning and vertical partitioning if the parent block is split by horizontal BT partitioning, and the first partition type and the first partition direction for splitting the first sub-block are TT partitioning and horizontal partitioning if the parent block is split by vertical BT partitioning. In cases when the syntax of the current partition direction is signaled before the syntax of the current partition type, the current partition type may not be signaled and may be inferred to be BT partitioning if the current partition direction is vertical partitioning, the parent block is split by horizontal BT partitioning and the first sub-block is further split by vertical TT partitioning. Similarly, the current partition type may not be signaled and may be inferred to be BT partitioning if the current partition direction is horizontal partitioning, the parent block is split by vertical BT partitioning and the first sub-block is further split by horizontal TT partitioning.
[0016] In cases when the syntax of the current partition type is signaled before the syntax of the current partition direction, an embodiment of the modified third method may not signal the current partition type as the current partition type may be inferred to be horizontal partitioning if the current partition type is TT partitioning, the parent block is split by horizontal BT partitioning and the first sub-block is further split by vertical TT partitioning. The current partition direction may not be signaled and may be inferred to be vertical partitioning if the current partition type TT partitioning, the parent block is split by vertical BT partitioning, and the first sub-block is further split by horizontal TT partitioning.
[0017] In some embodiments of the fourth method, the first sub-block, second sub-block, and third sub-block split from the parent block are top, middle, and bottom sub-blocks respectively if the parent block is split by horizontal TT partitioning, and the first sub-block, second sub-block, and third sub-block split from the parent block are left, middle, and right sub-blocks respectively if the parent block is split by vertical TT partitioning. The first partition type and the first partition direction for splitting the first and second sub-blocks are BT partitioning and vertical partitioning if the parent block is split by horizontal TT partitioning, and the first partition type and the first partition direction for splitting the first and second sub-blocks are BT partitioning and horizontal partitioning if the parent block is split by vertical TT partitioning. In cases when the syntax of the current partition direction is signaled before the syntax of the current partition type, the current partition type may not be signaled and may be inferred to be TT partitioning if the current partition direction is horizontal partitioning, the parent block is split by vertical TT partitioning and the first and second sub-blocks are further split by horizontal BT partitioning. Similarly, the current partition type may not be signaled and may be inferred to be TT partitioning if the current partition direction is vertical partitioning, the parent block is split by horizontal TT partitioning and the first and second sub-blocks are further split by vertical BT partitioning.
[0018] In cases when the syntax of the current partition type is signaled before the syntax of the current partition direction, an embodiment of the modified fourth method may not signal the current partition direction and infer the current partition direction as horizontal partitioning if the current partition type is BT partitioning, the parent block is split by horizontal TT partitioning and the first and second sub-blocks are further split by vertical BT partitioning. An embodiment of the modified fourth method may not signal the current partition direction and infer the current partition direction as vertical partitioning if the current partition type is BT partitioning, the parent block is split by vertical TT partitioning, and the first sub-block is further split by horizontal BT partitioning.
[0019] The above embodiments of the first and second methods may be combined, and one or both of the first and second methods may be combined with one of the third and fourth methods.
BRIEF DESCRIPTION OF THE DRAWINGS [0020] Fig. 1 illustrates a block diagram of an exemplary video encoding system based on the High Efficiency Video Coding (HEVC) standard.
[0021] Fig. 2 illustrates a block diagram of an exemplary video decoding system based on the High Efficiency Video Coding (HEVC) standard.
[0022] Figs. 3A-3E illustrate examples of block split by quadtree partitioning, binary tree partitioning, and triple tree partitioning.
[0023] Fig. 4A illustrates an exemplary block partitioning structure of a
Quad-Tree-Binary-Tree (QTBT) partitioning method.
[0024] Fig. 4B illustrates a coding tree structure corresponding to the block partitioning structure of Fig. 4 A.
[0025] Fig. 5 illustrates an example of partition signaling for Multi-Type-Tree (MTT) block partitioning.
[0026] Figs. 6A-6B illustrate prohibited binary tree partitioning for splitting the middle sub-blocks generated by triple tree partitioning according to the first method of the present invention.
[0027] Fig. 7A illustrates prohibited vertical triple tree partitioning for splitting the left or right sub-block generated by vertical triple tree partitioning according to the second method of the present invention.
[0028] Fig. 7B illustrates prohibited horizontal triple tree partitioning for splitting the top or bottom sub-block generated by horizontal triple tree partitioning according to the second method of the present invention.
[0029] Fig. 8A illustrates prohibited horizontal triple tree partitioning for splitting the second sub-block generated by vertical binary tree partitioning when the first sub-block is further split by horizontal triple tree partitioning.
[0030] Fig. 8B illustrates prohibited vertical triple tree partitioning for splitting the second sub-block generated by horizontal binary tree partitioning when the first sub-block is further split by vertical triple tree partitioning.
[0031 ] Fig. 9A illustrates prohibited vertical binary tree partitioning for splitting the third sub-block generated by horizontal triple tree partitioning when the first and second sub-blocks are further split by vertical binary tree partitioning.
[0032] Fig. 9B illustrates prohibited horizontal binary tree partitioning for splitting the third sub-block generated by vertical triple tree partitioning when the first and second sub-blocks are further split by horizontal binary tree partitioning.
[0033] Figs. 10A-10C are tables illustrating examples of parsing of prediction tree for the first method, the second method, and both the first and second methods respectively.
[0034] Fig. 11A is a table illustrating an alternative parsing method which signals the partition type before the partition direction.
[0035] Figs. 1 IB-1 ID are tables illustrating examples of parsing of prediction tree for the modified first method, the modified second method, and both the modified first and second methods respectively when applying the alternative parsing method.
DETAILED DESCRIPTION OF THE INVENTION [0036] In order to reduce signaling overhead and improve the performance of
Multi-Type-Tree (MTT) partitioning method, embodiments of constrained block partitioning methods are disclosed. Some embodiments of the constrained block partitioning methods involve modified encoding or decoding processing by prohibiting a certain partition type and partition direction for splitting a current sub-block according to the partition type and partition direction of a previous partition level and a position of the current sub-block. Some embodiments of the constrained block partitioning method involve modified encoding or decoding process which infer the partition type or partition direction for splitting a current sub-block according to the partition type and partition direction of a previous partition level and a position of the current sub-block.
[0037] First Method of Constrained Block Partitioning In one embodiment according to the first method of the present invention, vertical binary tree (BT) partitioning is disabled for further splitting a middle sub-block split by vertical triple tree (TT) partitioning as shown in Fig. 6A. The sparse dash lines in Fig. 6A indicate vertical TT partitioning at a previous partition level (e.g. level i) and the dotted line indicates vertical BT partitioning at a current partition level (e.g. level i+1) that is prohibited for splitting the middle sub-block. BT partitioning is prohibited to further split the middle sub-block resulted from TT partitioning because the resulting sub-blocks will be exactly the same as applying BT partitioning at both the previous partition level and the current partition level. Similarly, in another embodiment according to the first method of the present invention, horizontal BT partitioning is disabled for further splitting a middle sub-block split by horizontal TT partitioning as shown in Fig. 6B. The sparse dash lines in Fig. 6B indicate horizontal TT partitioning at a previous partition level (e.g. level i) and the dotted line indicates horizontal BT partitioning at a current partition level (e.g. level i+1) that is not allowed.
[0038] An embodiment of a video encoder or video decoder checks if a current middle sub-block generated by vertical TT partitioning is further split by vertical partitioning, for example by checking the partition direction for splitting the current middle sub-block, and the video encoder or video decoder infers the partition type as TT partitioning if the current middle sub-block is further split by vertical partitioning. It is because vertical BT partitioning is prohibited to split the current middle sub-block as shown in Fig. 6A. One bin for indicating the partition type between BT and TT partitioning is no longer needed to be signaled for this case.
[0039] An embodiment of the video encoder or video decoder checks if a current middle sub-block generated by horizontal TT partitioning is further split by horizontal partitioning, and if the current middle sub-block is further split by horizontal partitioning, the video encoder or video decoder infers the partition type as TT partitioning because horizontal BT partitioning is prohibited as shown in Fig. 6B. There is no need to signal a bin to indicate whether it is BT or TT partitioning.
[0040] Second Method of Constrain Block Partitioning An embodiment of the second method prohibits vertical TT partitioning applied to a left or right sub-block split from vertical TT partitioning as shown in Fig. 7A. Another embodiment of the second method prohibits horizontal TT partitioning applied to a top or bottom sub-block split from horizontal TT partitioning as shown in Fig. 7B. The sparse dash lines in Figs. 7A and 7B indicate TT partitioning at a previous partition level (e g. level i) and the dotted lines in Figs. 7A and 7B indicate TT partitioning at a current partition level (e.g. level i+1) that are not allowed.
[0041 ] To process a current block that is a left or right sub-block generated by vertical TT partitioning, an exemplary video encoder or video decoder checks if the left or right sub-block is further split by vertical partitioning, and the video encoder or video decoder infers a current partition type for splitting the current block as BT partitioning when the current block is further split by vertical partitioning. The left or right sub-block generated by vertical TT partitioning cannot be further split by vertical TT partitioning according to the second method. Similarly, the video encoder or video decoder checks if a top or bottom sub-block generated by horizontal TT partitioning is further split by horizontal partitioning, and the video encoder or video decoder infers the current partition type as BT partitioning when the top or bottom sub-block is further split by horizontal partitioning. The top or bottom sub-block generated by horizontal TT partitioning cannot be further split by horizontal TT partitioning according to the second method.
[0042] Some embodiments combine the first and second methods, for example, if a current block is a sub-block generated by horizontal TT partitioning and is decided to be further split by horizontal partitioning, the partition type of the current block is inferred without signaling a bin to indicate whether it is BT or TT partitioning. The inferred partition type depends on the position of the current block, for example, if the current block is a top or bottom sub-block and is further split by horizontal partitioning, the inferred partition type is BT partitioning; else if the current block is a middle sub-block and is further split by horizontal partitioning, the inferred partition type is TT partitioning.
[0043] Similarly, if a sub-block generated by vertical TT partitioning is decided to be further split by vertical partitioning, the partition type of the sub-block is inferred without signaling a bin to indicate whether it is BT or TT partitioning. The inferred partition type depends on the position of the sub-block, for example, if the left or right sub-block is further split by vertical partitioning, the inferred partition type is BT partitioning; else if the middle sub-block is further split by vertical partitioning, the inferred partition type is TT partitioning.
[0044] Third Method of Constrained Block Partitioning Figs. 8A and 8B illustrate examples of prohibited triple tree partitioning for splitting a second sub-block generated by binary tree partitioning according to the third method of the present invention. A vertical BT partitioning is first applied at a previous partition level (e.g. level i), and a first sub-block, which is the left sub-block, is determined to be further split by horizontal TT partitioning at a current partition level (e.g. level i+1) as shown in Fig. 8A. Embodiments of the third method prohibit horizontal TT partitioning to be applied to the second sub-block, which is the right sub-block, at the current partition level. The sparse dash lines in Figs. 8A and 8B indicate BT partitioning at level i and the dotted lines indicate prohibited TT partitioning at level i+1. If the second sub-block generated by the BT partitioning is determined to be further horizontal partitioned at the current partition level, there is no need to signal a flag for the partition type to indicate whether it is TT or BT partitioning. Embodiments of the video encoder or the video decoder infer the partition type for the second sub-block at the current partition level to be BT partitioning if the second sub-block is determined to be horizontal partitioned. Fig. 8B illustrates a current block is first split by horizontal BT partitioning at a previous partition level (e.g. level i), and a first sub-block, which is the top sub-block, is determined to be further split by vertical TT partitioning at a current partition level (e.g. level i+1). Vertical TT partitioning applied on a second sub-block, which is the bottom sub-block, is prohibited according to an embodiment of the third method. Embodiments of the video encoder or video decoder infers the partition type to be BT partitioning if the second sub-block is determined to be further split by vertical partitioning at the current partition level, thus there is no need to signal a flag for the partition type to control whether it is BT or TT partitioning.
[0045] According to the third method, it is allowed to split a current block by horizontal TT partitioning at a previous partition level and further split each sub-block by vertical BT partitioning at a current partition level, and similarly, it is allowed to split the current block by vertical TT partitioning at a previous partition level and further split each sub-block by horizontal BT partitioning at a current partition level. The two examples of prohibited triple tree partitioning shown in Figs. 8A and 8B therefore prevent redundant partitioning.
[0046] Embodiments of the third method may be combined with the first method, or combined with the second method, or even combined with both the first and second methods.
[0047] Fourth Method of Constrained Block Partitioning On the contrary, a fourth method is an alternation to the third method. The fourth method allows a current block to be split by vertical BT partitioning at a previous partition level then each sub-block is split by horizontal TT partitioning at a current partition level, and the fourth method also allows the current block to be split by horizontal BT partitioning at a previous partition level then each sub-block is split by vertical TT partitioning at a current partition level. The opposite order of partitioning is thus prohibited to avoid redundancy. Figs. 9A and 9B illustrate two examples of prohibited binary tree partitioning for a third sub-block generated by triple tree partitioning according to the fourth method of the present invention. In Fig. 9A, horizontal TT partitioning is first applied at a previous partition level (e g. level i), the first and second sub-blocks, which are the top and middle sub-blocks, are determined to be further partitioned by vertical BT partitioning at a current partition level (e g. level i+1). An embodiment of the fourth method prohibits vertical BT partitioning of the third sub-block (i.e. the bottom sub-block) at the current partition level.
Embodiment of the fourth method infers the partition type to be TT partitioning if the third sub-block generated by horizontal TT partitioning is further split by vertical partitioning and the first and second sub-blocks are already split by vertical BT partitioning. There is no need to signal a flag for the partition type to control whether it is TT or BT partitioning when the third sub-block generated by horizontal TT partitioning is to be split by vertical partitioning.
[0048] Fig. 9B illustrates a case when applying vertical TT partitioning to a parent block at a previous partition level (i.e. level i) followed by applying horizontal BT partitioning to the first and second sub-blocks (i.e. the left and middle sub-blocks) at a current partition level (i.e. level i+1), horizontal BT partitioning is not allowed to be applied to the third sub-block (i.e. the right sub-block) at the current partition level. Embodiment of the fourth method infers the partition type to be TT partitioning if the third sub-block generated by vertical TT partitioning is further split by horizontal partitioning and the first and second sub-blocks are already split by horizontal BT partitioning. There is no need to signal a flag for the partition type to control whether it is TT or BT partitioning when the third sub-block generated by vertical TT partitioning is to be split by horizontal partitioning.
[0049] The fourth method may be combined with the first method, or combined with the second method, or combined with both the first and second methods.
[0050] Parsing An example of parsing of prediction tree according to the first method is shown in Fig. 10A, an example of parsing of prediction tree according to the second method is shown in Fig. 10B, and an example of parsing of prediction tree according to both the first and second methods is shown in Fig. 10C. In Figs. 10A-10C, a coordinate (xPt, yPt) is used to indicate the location of a top-left sample of a parent block. Variables log2PtWidth and log2PtHeight are the log 2 value of the width and height of the parent block, a variable ptType indicates prediction tree (PT) partition type of the parent block, which can be either binary tree (BT) or triple tree (TT). A variable ptDir indicates the partition direction of the parent block, which can be either horizontal partitioning (HOR) or vertical partitioning (VER). A coordinate (xO, yO) is used to indicate the location of a top-left sample of a current block split from the parent block. Variables log2CbWidth and log2CbHeight are the log 2 value of the width and height of the current block, pt split flag is the syntax element of the PT split flag, which indicates whether a block is further split, ptsplitdir is the syntax element of the PT partition direction, which indicates whether the block is horizontal partitioning or vertical partitioning. Ptsplittype is the syntax element of the PT partition type, which indicates whether the block is BT partitioning or TT partitioning. In Figs. 10A-10C, a syntax element in bold typeface means parsing of the syntax element, else it means determining the value of the syntax element. The function coding_unit(...) is for the parsing process for a block that is not further split. In Fig. 10A, if pt split type is not parsed, the partition type is inferred as TT partitioning (i.e. pt split type is set as TT). In Fig. 10B, if ptsplit type is not parsed, the partition type is inferred as BT partitioning (i.e. pt split type is set as BT). In Fig. IOC, if ptsplittype is not parsed, the partition type is inferred according to the partition direction of the parent block and the location of the current block. An exemplary code for determining the inferred partition type is shown in the following.
if ptDir == HOR pt split type = xO == xPt && yO == yPt + (1« (log2PtHeight-2))? TT:BT;
else if ptDir ==VER pt split type = xO ==xPt + (l«(log2PtWidth-2)) && yO == yPt? TT:BT.
[0051] Modified First and Second Methods based on Alternative Parsing Method The partition signaling for Multi-Type-Tree (MTT) block partitioning as shown in Fig. 5 transmits the syntax for partition direction (HOR or VER) before the syntax for partition type (BT or TT). An alternative parsing method for the original design of the MTT is also proposed, in which, the syntax for the partition type is signaled before the syntax for the partition direction. An example of parsing prediction tree is shown in Fig 11 A.
[0052] The first method may be modified accordingly if the alternative parsing method is applied. According to the first method, the middle sub-block generated by horizontal TT partitioning cannot be further split by horizontal BT partitioning, so the partition direction is inferred to be vertical partitioning if the middle sub-block generated by horizontal TT partitioning is further split by BT partitioning. There is no need to signal a bin for indicating the partition direction to be horizontal or vertical. Similarly, since the middle sub-block generated by vertical TT partitioning cannot be further split by vertical BT partitioning, the partition direction is inferred to be horizontal partitioning if the middle sub-block generated by vertical TT partitioning is further split by BT partitioning. There is no need to signal a bin to indicate the partition direction to be horizontal or vertical. An example of parsing prediction tree according to the modified first method is shown in Fig. 1 IB. If the partition type of the parent block ptType is TT partitioning, the partition type of the current block pt split type is BT, and the current block is a middle sub-block, then the partition direction for the current block is not parsed and can be inferred based on the partition direction of the parent block (i.e. pt split dir = ptDir == HOR? VER: HOR).
[0053] The second method is also modified to infer the partition direction according to the partition type if the alternative parsing method is applied. According to the second method, a top or bottom sub-block generated by horizontal TT partitioning cannot be further split by horizontal TT partitioning. The modified second method infers the partition direction to be vertical partitioning if the top or bottom sub-block generated by horizontal TT partitioning is further split by TT partitioning. There is no need to signal a bin to indicate whether the partition direction is horizontal or vertical partitioning. Similarly, the second method prohibits a left or right sub-block generated by vertical TT partitioning to be further split by vertical TT partitioning. The modified second method infers the partition direction to be horizontal partitioning if the left or right sub-block generated by vertical TT partitioning is further split by TT partitioning. There is no need to signal a bin to indicate whether the partition direction is horizontal or vertical. An example of parsing prediction tree according to the modified second method is shown in Fig. 11C. If the partition type of a parent block ptType is TT, the partition type for the current block pt split type is also TT, and the current block is not a middle sub-block, the partition direction for the current block ptsplitdir is not parsed and may be inferred according to the partition direction of the parent block (i.e. ptsplitdir = ptDir == HOR?VER:HOR).
[0054] The modified first and second methods may be both applied in an embodiment of the video encoder or video decoder, and an example of parsing prediction tree is shown in Fig. 1 ID. In this embodiment, when the partition type of the parent block ptType is TT, the partition type for the current block pt split type is BT, and the current block is a middle sub-block, then the partition direction for the current block pt split dir is not parsed and is inferred according to the partition direction of the parent block (i.e. pt split dir = ptDir == H0R?VER:H0R). When the partition type of the parent block ptType is TT, the partition type for the current block pt split type is TT, and the current block is not a middle sub-block, then the partition direction for the current block pt split dir is not parsed and is inferred according to the partition direction of the parent block (i.e. pt split dir = ptDir == H0R?VER:H0R).
[0055] Similarly, the third and fourth methods are also modified to infer the partition direction according to the partition type if the alternative parsing method is applied. According to the third method, a bottom sub-block generated by horizontal BT partitioning cannot be further split by vertical TT partitioning if a top sub-block is already split by vertical TT partitioning, and a right sub-block generated by vertical BT partitioning cannot be further split by horizontal TT partitioning if a left sub-block is already split by horizontal TT partitioning. In the modified third method, the partition direction for splitting the second sub-block, that is the bottom sub-block or the right sub-block, may be inferred according to the partition type for splitting the second sub-block. For example, the partition direction for splitting the bottom sub-block generated by horizontal BT partitioning does not need to be signaled and may be inferred to be horizontal partitioning if the partition type is TT partitioning and the top sub-block is already split by vertical
TT partitioning. The modified third method does not need to signal the partition direction for splitting the right sub-block generated by vertical BT partitioning if the partition type is TT partitioning and the left sub-block is already split by horizontal TT partitioning. The partition direction is inferred to be vertical partitioning.
[0056] According to the fourth method, a bottom sub-block generated by horizontal TT partitioning cannot be further split by vertical BT partitioning if both the top and middle sub-blocks split from the same parent block are further split by vertical BT partitioning; and a right sub-block generated by vertical TT partitioning cannot be further split by horizontal BT partitioning if both the left and middle sub-blocks split from the same parent block are further split by horizontal BT partitioning. In the modified fourth method, the partition direction for splitting the third sub-block, that is either the bottom sub-block or the right sub-block, may be inferred according to the partition type. For example, the partition direction for splitting the bottom sub-block generated by horizontal TT partitioning does not need to be signaled and may be inferred to be horizontal partitioning if the partition type is BT partitioning and both the top and middle sub-blocks generated from the same parent block are further split by vertical BT partitioning. The partition direction for splitting the right sub-block generated by vertical TT partitioning does not need to be signaled and may be inferred to be vertical partitioning if the partition type is BT partitioning and both the left and middle sub-block generated from the same parent block are further split by horizontal BT partitioning.
[0057] Implementation Examples Various embodiments of constrained block partitioning in video processing described in the present invention may be implemented in Intra Prediction 110 or Inter Prediction 112 of the Video Encoder 100 or Entropy Decoder 210 of the Video Decoder 200. Intra Prediction 110, Inter Prediction 112, and Entropy Decoder 210 may be implemented by hardware components, one or more processors configured to execute program instructions stored in a memory, or a combination of hardware and processor. The software codes or firmware codes may be developed in different programming languages and different formats or styles. The software codes may also be compiled for different target platforms. However, different code formats, styles and languages of software codes and other means of configuring codes to perform the tasks in accordance with the invention will not depart from the spirit and scope of the invention. For example, a processor executes program instructions to control receiving of input data associated with a current picture. The processor is equipped with a single or multiple processing cores. For example, the processor executes program instructions to perform functions of one or a combination of the first, second, third, and fourth methods, and the memory electrically coupled with the processor is used to store the program instructions, information corresponding to the reconstructed images of blocks, and/or intermediate data during the encoding or decoding process. The memory in some embodiments includes a non-transitory computer readable medium, such as a semiconductor or solid-state memory, a random access memory (RAM), a read-only memory (ROM), a hard disk, an optical disk, or other suitable storage medium. The memory may also be a combination of two or more of the non-transitory computer readable medium listed above. The Video Encoder 100 and Video Decoder 200 may be implemented in the same electronic device, so various functional components of the Video Encoder 100 and Video Decoder 200 may be shared or reused if implemented in the same electronic device.
[0058] The above description is presented to enable a person of ordinary skill in the art to practice the present invention as provided in the context of a particular application and its requirement. Various modifications to the described embodiments will be apparent to those with skill in the art, and the general principles defined herein may be applied to other embodiments. Therefore, the present invention is not intended to be limited to the particular embodiments shown and described, but is to be accorded the widest scope consistent with the principles and novel features herein disclosed. In the above detailed description, various specific details are illustrated in order to provide a thorough understanding of the present invention. Nevertheless, it will be understood by those skilled in the art that the present invention may be practiced.
[0059] The invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described examples are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.

Claims (20)

1. A method of video processing for a video coding system, the method comprising:
receiving input data associated with a current block in a current picture, wherein the current block is split from a parent block;
determining if the parent block is split by horizontal triple tree (TT) partitioning or vertical TT partitioning;
determining whether the current block is a middle sub-block in the parent block; determining a partition type and a partition direction for splitting the current block by prohibiting a horizontal partitioning type according to whether the current block is the middle sub-block of the parent block if the parent block is split by horizontal TT partitioning, and prohibiting a vertical partitioning type according to whether the current block is the middle sub-block of the parent block if the parent block is split by vertical TT partitioning; and processing the current block according to the partition type and partition direction.
2. The method of Claim 1, wherein the prohibited horizontal partitioning type is horizontal binary tree (BT) partitioning and the prohibited vertical partitioning type is vertical BT partitioning when the current block is the middle sub-block of the parent block.
3. The method of Claim 1, wherein the prohibited horizontal partitioning type is horizontal TT partitioning and the prohibited vertical partitioning type is vertical TT partitioning when the current block is not the middle sub-block of the parent block.
4. The method of Claim 1, wherein the partition type for splitting the current block is not signaled and is inferred to be TT partitioning if the parent block is split by horizontal TT partitioning, the current block is the middle sub-block of the parent block, and the partition direction is horizontal partitioning; or the partition type for splitting the current block is not signaled and is inferred to be TT partitioning if the parent block is split by vertical TT partitioning, the current block is the middle sub-block of the parent block, and the partition direction is vertical partitioning.
5. The method of Claim 1, wherein the partition direction for splitting the current block is not signaled and is inferred to be vertical partitioning if the parent block is split by horizontal TT partitioning, the current block is the middle sub-block of the parent block, and the partition type is
BT partitioning; or the partition direction for splitting the current block is not signaled and is inferred to be horizontal partitioning if the parent block is split by vertical TT partitioning, the current block is the middle sub-block of the parent block, and the partition type is BT partitioning.
6. The method of Claim 1, wherein the partition type for splitting the current block is not signaled and is inferred to be BT partitioning if the parent block is split by horizontal TT partitioning, the current block is not the middle sub-block of the parent block, and the partition direction is horizontal partitioning; or the partition type for splitting the current block is not signaled and is inferred to be BT partitioning if the parent block is split by vertical TT partitioning, the current block is not the middle sub-block of the parent block, and the partition direction is vertical partitioning.
7. The method of Claim 1, wherein the partition direction for splitting the current block is not signaled and is inferred to be vertical partitioning if the parent block is split by horizontal TT partitioning, the current block is not the middle sub-block of the parent block, and the partition type is TT partitioning; or the partition direction for splitting the current block is not signaled and is inferred to be horizontal partitioning if the parent block is split by vertical TT partitioning, the current block is not the middle sub-block of the parent block, and the partition type is TT partitioning.
8. A method of video processing for a video coding system, the method comprising:
receiving input data associated with a current block in a current picture, wherein the current block is a second sub-block split from a parent block by binary tree (BT) partitioning or the current block is a third sub-block split from a parent block by triple tree (TT) partitioning;
determining a parent partition type and a parent partition direction for splitting the parent block, wherein the partition type is selecting from BT partitioning and TT partitioning, and the partition direction is selecting from horizontal partitioning and vertical partitioning;
determining if a first sub-block split from the parent block by BT partitioning or both first and second sub-blocks split from the parent block by TT partitioning is/are further split by a first partition type different from the parent partition type and a first partition direction different from the parent partition direction;
determining a current partition type and a current partition direction for splitting the current block by prohibiting splitting the current block by the first partition type and the first partition direction; and processing the current block according to the current partition type and the current partition direction.
9. The method of Claim 8, wherein the first sub-block and second sub-block split from the parent block are top and bottom sub-blocks respectively if the parent block is split by horizontal BT partitioning, and the first sub-block and second sub-block split from the parent block are left and right sub-blocks respectively if the parent block is split by vertical BT partitioning.
10. The method of Claim 8, wherein the first partition type and the first partition direction for splitting the first sub-block are TT partitioning and vertical partitioning if the parent block is split by horizontal BT partitioning, and the first partition type and the first partition direction for splitting the first sub-block are TT partitioning and horizontal partitioning if the parent block is split by vertical BT partitioning.
11. The method of Claim 8, wherein the first sub-block, second sub-block, and third sub-block split from the parent block are top, middle, and bottom sub-blocks respectively if the parent block is split by horizontal TT partitioning, and the first sub-block, second sub-block, and third sub-block split from the parent block are left, middle, and right sub-blocks respectively if the parent block is split by vertical TT partitioning.
12. The method of Claim 8, wherein the first partition type and the first partition direction for splitting the first and second sub-blocks are BT partitioning and vertical partitioning if the parent block is split by horizontal TT partitioning, and the first partition type and the first partition direction for splitting the first and second sub-blocks are BT partitioning and horizontal partitioning if the parent block is split by vertical TT partitioning.
13. The method of Claim 8, wherein the current partition type is not signaled and is inferred to be BT partitioning if the current partition direction is vertical partitioning, the parent block is split by horizontal BT partitioning and the first sub-block is further split by vertical TT partitioning, and the current partition type is not signaled and is inferred to be BT partitioning if the current partition direction is horizontal partitioning, the parent block is split by vertical BT partitioning and the first sub-block is further split by horizontal TT partitioning.
14. The method of Claim 8, wherein the current partition type is not signaled and is inferred to be TT partitioning if the current partition direction is horizontal partitioning, the parent block is split by vertical TT partitioning and the first and second sub-blocks are further split by horizontal
BT partitioning, and the current partition type is not signaled and is inferred to be TT partitioning if the current partition direction is vertical partitioning, the parent block is split by horizontal TT partitioning and the first and second sub-blocks are further split by vertical BT partitioning.
15. The method of Claim 8, wherein the current partition direction is not signaled and is inferred to be horizontal partitioning if the current partition type is TT partitioning, the parent block is split by horizontal BT partitioning and the first sub-block is further split by vertical TT partitioning, and the current partition direction is not signaled and is inferred to be vertical partitioning if the current partition type TT partitioning, the parent block is split by vertical BT partitioning, and the first sub-block is further split by horizontal TT partitioning.
16. The method of Claim 8, wherein the current partition direction is not signaled and is inferred to be horizontal partitioning if the current partition type is BT partitioning, the parent block is split by horizontal TT partitioning and the first and second sub-blocks are further split by vertical BT partitioning, and the current partition direction is not signaled and is inferred to be vertical partitioning if the current partition type BT partitioning, the parent block is split by vertical TT partitioning, and the first sub-block is further split by horizontal BT partitioning.
17. An apparatus of processing video data in a video coding system, the apparatus comprising one or more electronic circuits configured for:
receiving input data associated with a current block in a current picture, wherein the current block is split from a parent block;
determining if the parent block is split by horizontal triple tree (TT) partitioning or vertical TT partitioning;
determining whether the current block is a middle sub-block in the parent block; determining a partition type and a partition direction for splitting the current block by prohibiting a horizontal partitioning type according to whether the current block is the middle sub-block of the parent block if the parent block is split by horizontal TT partitioning, and prohibiting a vertical partitioning type according to whether the current block is the middle sub-block of the parent block if the parent block is split by vertical TT partitioning; and processing the current block according to the partition type and partition direction.
18. A non-transitory computer readable medium storing program instruction causing a processing circuit of an apparatus to perform video processing method, and the method comprising:
receiving input data associated with a current block in a current picture, wherein the current block is split from a parent block;
determining if the parent block is split by horizontal triple tree (TT) partitioning or vertical TT partitioning;
determining whether the current block is a middle sub-block in the parent block; determining a partition type and a partition direction for splitting the current block by prohibiting a horizontal partitioning type according to whether the current block is the middle sub-block of the parent block if the parent block is split by horizontal TT partitioning, and prohibiting a vertical partitioning type according to whether the current block is the middle sub-block of the parent block if the parent block is split by vertical TT partitioning; and processing the current block according to the partition type and partition direction.
19. An apparatus of processing video data in a video coding system, the apparatus comprising one or more electronic circuits configured for:
receiving input data associated with a current block in a current picture, wherein the current block is a second sub-block split from a parent block by binary tree (BT) partitioning or the current block is a third sub-block split from a parent block by triple tree (TT) partitioning;
determining a parent partition type and a parent partition direction for splitting the parent block, wherein the partition type is selecting from BT partitioning and TT partitioning, and the partition direction is selecting from horizontal partitioning and vertical partitioning;
determining if a first sub-block split from the parent block by BT partitioning or both first and second sub-blocks split from the parent block by TT partitioning is/are further split by a first partition type different from the parent partition type and a first partition direction different from the parent partition direction;
determining a current partition type and a current partition direction for splitting the current block by prohibiting splitting the current block by the first partition type and the first partition direction; and processing the current block according to the current partition type and the current partition direction.
20. A non-transitory computer readable medium storing program instruction causing a processing circuit of an apparatus to perform video processing method, and the method comprising:
receiving input data associated with a current block in a current picture, wherein the current block is a second sub-block split from a parent block by binary tree (BT) partitioning or the current block is a third sub-block split from a parent block by triple tree (TT) partitioning;
determining a parent partition type and a parent partition direction for splitting the parent block, wherein the partition type is selecting from BT partitioning and TT partitioning, and the partition direction is selecting from horizontal partitioning and vertical partitioning;
determining if a first sub-block split from the parent block by BT partitioning or both first and second sub-blocks split from the parent block by TT partitioning is/are further split by a first partition type different from the parent partition type and a first partition direction different from the parent partition direction;
determining a current partition type and a current partition direction for splitting the current block by prohibiting splitting the current block by the first partition type and the first partition direction; and processing the current block according to the current partition type and the current partition direction.
Intellectual
Property
Office
Application No: GB1716705.7 Examiner: Mr Rhys Miles
GB1716705.7A 2016-10-12 2017-10-12 Methods and apparatuses of constrained multi-type-tree block partition for video coding Active GB2557430B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662407074P 2016-10-12 2016-10-12
US201762521568P 2017-06-19 2017-06-19
US15/729,831 US10779004B2 (en) 2016-10-12 2017-10-11 Methods and apparatuses of constrained multi-type-tree block partition for video coding

Publications (3)

Publication Number Publication Date
GB201716705D0 GB201716705D0 (en) 2017-11-29
GB2557430A true GB2557430A (en) 2018-06-20
GB2557430B GB2557430B (en) 2020-01-15

Family

ID=60419349

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1716705.7A Active GB2557430B (en) 2016-10-12 2017-10-12 Methods and apparatuses of constrained multi-type-tree block partition for video coding

Country Status (1)

Country Link
GB (1) GB2557430B (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019243539A1 (en) * 2018-06-21 2019-12-26 Telefonaktiebolaget Lm Ericsson (Publ) Tile partitions with sub-tiles in video coding
WO2020044253A1 (en) * 2018-08-28 2020-03-05 Beijing Bytedance Network Technology Co., Ltd. Redundancy removal of partitioning methods
WO2021162907A1 (en) * 2020-02-12 2021-08-19 Tencent America LLC Flexible picture partitioning
US20210352286A1 (en) * 2016-12-16 2021-11-11 Sharp Kabushiki Kaisha Image decoding method
WO2021230930A1 (en) * 2020-05-11 2021-11-18 Tencent America LLC Semi-decoupled partitioning for video coding
US11477470B2 (en) 2018-10-02 2022-10-18 Telefonaktiebolaget Lm Ericsson (Publ) Encoding and decoding pictures based on tile group ID
US11711530B2 (en) 2018-06-21 2023-07-25 Telefonaktiebolaget Lm Ericsson (Publ) Tile shuffling for 360 degree video decoding
US12034926B2 (en) 2018-06-21 2024-07-09 Telefonaktiebolaget Lm Ericsson (Publ) Flexible tile partitions

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112020016755A2 (en) * 2018-03-05 2020-12-15 Panasonic Intellectual Property Corporation Of America ENCODER, DECODER, ENCODING METHOD AND DECODING METHOD
WO2019174594A1 (en) * 2018-03-14 2019-09-19 Mediatek Inc. Method and apparatus of optimized splitting structure for video coding

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017206826A1 (en) * 2016-05-28 2017-12-07 Mediatek Inc. Methods and apparatuses of video data processing with conditionally quantization parameter information signaling
WO2018013706A1 (en) * 2016-07-15 2018-01-18 Qualcomm Incorporated Signaling of quantization information in non-quadtree-only partitioned video coding
WO2018049020A1 (en) * 2016-09-07 2018-03-15 Qualcomm Incorporated Tree-type coding for video coding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017206826A1 (en) * 2016-05-28 2017-12-07 Mediatek Inc. Methods and apparatuses of video data processing with conditionally quantization parameter information signaling
WO2018013706A1 (en) * 2016-07-15 2018-01-18 Qualcomm Incorporated Signaling of quantization information in non-quadtree-only partitioned video coding
WO2018049020A1 (en) * 2016-09-07 2018-03-15 Qualcomm Incorporated Tree-type coding for video coding

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11722664B2 (en) * 2016-12-16 2023-08-08 Sharp Kabushiki Kaisha Image decoding method and apparatus
US20210352286A1 (en) * 2016-12-16 2021-11-11 Sharp Kabushiki Kaisha Image decoding method
US12101482B2 (en) 2018-06-21 2024-09-24 Telefonaktiebolaget Lm Ericsson (Publ) Tile partitions with sub-tiles in video coding
US12034926B2 (en) 2018-06-21 2024-07-09 Telefonaktiebolaget Lm Ericsson (Publ) Flexible tile partitions
WO2019243539A1 (en) * 2018-06-21 2019-12-26 Telefonaktiebolaget Lm Ericsson (Publ) Tile partitions with sub-tiles in video coding
US11553180B2 (en) 2018-06-21 2023-01-10 Telefonaktiebolaget Lm Ericsson (Publ) Tile partitions with sub-tiles in video coding
US11711530B2 (en) 2018-06-21 2023-07-25 Telefonaktiebolaget Lm Ericsson (Publ) Tile shuffling for 360 degree video decoding
WO2020044253A1 (en) * 2018-08-28 2020-03-05 Beijing Bytedance Network Technology Co., Ltd. Redundancy removal of partitioning methods
TWI820195B (en) * 2018-08-28 2023-11-01 大陸商北京字節跳動網絡技術有限公司 Redundancy removal of partitioning methods
US11632575B2 (en) 2018-08-28 2023-04-18 Beijing Bytedance Network Technology Co., Ltd. Binarization of partitioning related to extended quadtree
US11477470B2 (en) 2018-10-02 2022-10-18 Telefonaktiebolaget Lm Ericsson (Publ) Encoding and decoding pictures based on tile group ID
US11800106B2 (en) 2020-02-12 2023-10-24 Tencent America LLC Flexible picture partitioning
US11412222B2 (en) * 2020-02-12 2022-08-09 Tencent America LLC Flexible picture partitioning
WO2021162907A1 (en) * 2020-02-12 2021-08-19 Tencent America LLC Flexible picture partitioning
US11432018B2 (en) 2020-05-11 2022-08-30 Tencent America LLC Semi-decoupled partitioning for video coding
WO2021230930A1 (en) * 2020-05-11 2021-11-18 Tencent America LLC Semi-decoupled partitioning for video coding

Also Published As

Publication number Publication date
GB201716705D0 (en) 2017-11-29
GB2557430B (en) 2020-01-15

Similar Documents

Publication Publication Date Title
GB2557430A (en) Methods and apparatuses of costrained multi-type-tree block partition for video coding
US10779004B2 (en) Methods and apparatuses of constrained multi-type-tree block partition for video coding
US10681351B2 (en) Methods and apparatuses of reference quantization parameter derivation in video processing system
US11064220B2 (en) Method and apparatus of video data processing with restricted block size in video coding
US11438590B2 (en) Methods and apparatuses of chroma quantization parameter derivation in video processing system
JP6708716B2 (en) Method for decoding video, method for encoding video, decoder, encoder, computer-readable recording medium recording decoding program, and computer-readable recording medium recording encoding program
TWI666927B (en) Methods and apparatuses of candidate set determination for quad-tree plus binary-tree splitting blocks
US20200351521A1 (en) Method of deblocking for intra block copy in video coding
US11070805B2 (en) Cross-component coding order derivation
EP3298777B1 (en) Method of conditional binary tree block partitioning structure for video and image coding
US10432966B2 (en) Methods of constrained intra block copy for reducing worst case bandwidth in video coding
US10567806B2 (en) Method of block-based adaptive loop filtering
US10194133B2 (en) Device and method for eliminating redundancy of view synthesis prediction candidate in motion merge mode
US11792388B2 (en) Methods and apparatuses for transform skip mode information signaling
KR20200028860A (en) Method and apparatus for encoding/decoding an image using intra prediction
CA3037411A1 (en) Methods and apparatuses of sample adaptive offset processing for video coding
CA3229435A1 (en) Image decoding method and device and image encoding method and device in image coding system
KR20150034636A (en) Video encoding/decoding methods, corresponding computer programs and video encoding/decoding devices
EP3598750A1 (en) Image decoding method and device in accordance with block split structure in image coding system
US11490080B2 (en) Deblocking of implicit transform unit boundaries
KR102009634B1 (en) Method and apparatus for coding image compensation information and decoding using the same
WO2023197832A1 (en) Method and apparatus of using separate splitting trees for colour components in video coding system
WO2024099024A1 (en) Methods and apparatus of arbitrary block partition in video coding

Legal Events

Date Code Title Description
732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)

Free format text: REGISTERED BETWEEN 20220303 AND 20220309