Abstract: The present disclosure relates to an image encoding apparatus and method and an image decoding apparatus and method whereby the encoding efficiency can be improved in Intra Block Copy (IntraBC). In the present technique an example in which a picture is divided into four slices (Slice 0 to Slice 3) is shown. In a case where a reference to a different slice was inhibited an available reference range from a current Coding Tree Unit (CTU) in the Slice 2 was only a part that had been decoded in the Slice 2; for example the blocks of the Slice 1 could not be referred to. In contrast in a case of the present technique the available reference range also includes different slices as decoded (Slice 0 and Slice 1); for example it is possible to refer from the current CTU in the Slice 2 to any block of the Slice 1 as shown in FIG. 5. The present disclosure can be applied to for example an image processing apparatus.
DESCRIPTION
IMAGE ENCODING DEVTCE AND METHOD, AND IMAGE DECOD1NG
DFVJCE AND METHOD
5 TECHNICAL FIELD
[OOOl]
The present disclosure relates to image cncoding
devices and methods, and image decoding devices and
methods. More particularly, t h e present disclosure
10 relates to an image encoding device and a method, and an
image decoding device and a method t h a t can improve
encoding e f f i c i e n c y i n I n t r a B C .
BACKGROUND ART
15 [OOOZ]
In recent years, apparatuses that compress images
by implementing an encoding method Por compressing image
information through orthogonal t r a n s f o r m such as discrete
cosine transform and motion compensation by u s i n g
20 redundancy inherent to image information, have been
spreading so as to handle image information as digital
information and achieve high-efficiency information
transmission and accumulation i n doing do. This encoding
method may be Moving P i c t u r e Experts Group (MPEG), H.264,
25 MPEG-4 Part10 (Advanced Video Coding, which will be
h e r e i n a f t e r referred to as AVC), or the l i k e .
[0003]
A t prcsent, to achieve h i g h e r encoding e f f i c i e n c y
than t h a t of H.264/AVCr a coding method called High
30 Efficiency Video Coding (IIEVC) is being developed as a
standard by JCTVC { J o i n t Collabosati-on Team - Video
Cot3j.iny), which is a j o i n t . standards orqanizatior-1 O F ITIJ-'l'
and ISO/IEC.
[OOU4]
A3 so, i n HEVC, range cxtensions (HEVC Range
S Extensions) are being considered so as t:u support highend
formats, such as h a g e s i n chcorni.nance signal formats
l i k e 4:2:2 and 4:4:4, and profiles for screen content
(sec Non-Pat~nt Document 1, for example).
[ 0 0 0 5 ]
10 Meanwhile, SntraBlockCopy (IntraBC) is an encoding
tool for performing motion compensation i n a screen.
LntraBC i s known as a tool that conLrlibu,Les to
improvement of efficiency i n encoding an artificial image,
such as a computer screen or a CG image.
IS [OOOS]
H o w e v e r , IntraBC is not used as a technology for
the above described I-IEVC Range Exten-sions, and is being
considered as a standardized technology for screen
c o n t e n t coding (SCC) extensions.
20
CITATION LSST
NON-PATENT DOCUMENT
[0007]
Non-Patent Document 1: David E'lynn, Joel Sole, and
25 Teruhiko Suzuki, 'High E f f i c i e n c y Video Coding (HEVC) ,
Range Extension t e x t specificat<-on: Draft 4", JCTVCN1005
- vl, 2013.8.8
SUMMARY OF THE INVENTION
30 PROBLEMS TO BE SOLVED BY THE INVENTION
{ O O O S j
Her:e, low delays are t h e key in SCC applicati or~s.
Thcrcforc, in an IIEVC sckerne, i t i s necessary to use
slice dividing.
[0009j
However, i n cases where a screen i.s divided into
slices, the improvement of encoding efficiency In I n t r a B C
heconles dramatically smaller. This is because IntraRC
cannot rcfcr to any data other than t h e c u r r e n t s l i c e .
[ o o l o ]
10 The present disclosure is made in view of those
circumstances, and is to improve encoding efficiency in
I n t r a B C .
SOLUTIONS TO PROl3T.,EMS
15 [ O O l l ]
An image encoding device of one aspect of the
present disclosure i n c l u d e s : a s e t t i - n g u n i t that sets
control information for controlling in-screen motion
predicti.on across slices; an encoding unit that encodes
20 an image to generate a bitstrearr~ in accordance with the
control information set by the s e t t i n g u n i t ; and a
transmission u n i t that transmits the control information
set by t h e s e t t i n g unit and ,the bitstream generated by
the encoding unit.
25 [0012j
The setting unit may set a rcfcrence pesmj.ssion
flag as tihe control information, the reference permission
flag i r ~ d i c a t i n g a permission for reference to a result of
decoding of t h e c u r r e n t slice and the slice before the
30 current slice i n t h e raster scan order.
[0013]
Thc scttinq u n i t may sct thc wcference pez-rnission
I l a g in a picture parameter set (PPS) .
{ O O l 4 ]
The setting unit may set a parameter as the control
5 j-nformat ion, the pararnel:er lindical:ling the number of
previous sbj.ces having referable decoding results.
[0015]
The setting unit may set an on/off flag as t h e
control information, the on/off flag indicating whether
10 the in-screen motion prediction across t h e slices can be
performed.
[ 0 0 I. 6 ]
The s e t t i n g unit may set the on/off f l a g in a
sequence parameter set (SPS) or a video parameter set
15 ( V P S ) .
[0017j
When wavefront parallel processing (WPP) is "on",
the setting u n i t may limit a range of the reference, and
set the reference permission flag.
20 lo0181
When tile d i v i d i n g is "on", the s e t t i n g unit may
set the reference permission f l a g .
[ O O l 9 j
When temporal motion constrained tile set S E I
25 (MCTS-SET) is "on", the setting u n i t [nay set t h c
reference permission flag to "off".
[OOZO]
An image encoding method of one aspect of t h e
present disclosure is implernen,Led by an image encoding
30 device, and includes: s e t t i n g control information f o r
controlling in-screen motion prediction across slices;
encod,i nq an image to generat-e a hi t.st r-earn in accordance
with the set control information; and transmitting the
sel: c o n t r o l in1orma Lion and the generated b i t stream.
[00'2lj
An image decoding device of a n o t h e r aspect. of the
presenk disclosure includes: a reception unit that
receives a bitstream generated by encoding an image; an
extraction unit that extracts control information from
the bitstream received by the reception unit, the control
10 information being designed for controlling in-screen
motion prediction across slices; and a decodi.ng unit t h a t
decodes the bitstream received by t h e reception unit to
generate an image, using t h e control inforrnation
extracted by the extraction unit.
15 [0022J
The extraction unit may extract a reference
permission f l a g as the control infomation, the reference
permission f l a g i n d i c a t j . n y a permission for reference ta
a r e s u l t of decoding of the , c u r r e n t slice and the slice
20 before ,the current slice in the raster scan order.
[0023j
The extraction u n i t may extract the reference
permission flag from a picture parameter set ( P P S ) .
[0024]
2 5 The e x t r a c t j . o n u n i t may extract a parameter as the
control information, the parameter indicating the number
of previous slices having referable decoding results.
LO0251
The extractj-on 1rrni.L may extract an on/off f l a g as
30 the control information, the on/off flag indicating
whether the in-scrccn motion prediction across the sli,ces
car] be perf orrned .
[0026]
The e x t r a ~ t ~ i ounn i t may extract the on/off flaq
from a scgucnce parameter set (SPS) or a video parameter
5 set (VPS) .
[0027]
When wavef ront paral.l.,el. proc:essling (WPP) is "on",
the e x t r a c t i o n u n i t may l i m i t a range of t h e reference,
and extract the reference permission f l a g .
10 [0028]
When tile d i v i d i n g is 'on", t h e e x t r a c t i o n u n i t may
extract , t h e reference permission flag.
COO291
When temporal motion constrained tile set SET
15 (MCTS-SE,T) j.s "on", the extraction u n i t may extract t h e
reference permission flag set to "off".
C0'3303
An image decoding method of another aspect of the
present disclosure is implemented by an image decoding
20 device, and i n c l u d e s : r e c e i v i n g a b i t s t r e a m generated by
encoding an image; e x t r a c t i n g control information from
the received bitstrcam, the control information being
designed for controlling in-screen motion prediction
across slices; and decoding t h e received bitstream to
25 g e n e r a t e an .i.mage, u s i n g the extracted control
information.
COO311
In one aspect of the present disclosure, c o n t r o l
information for c o n t r r ) l l i n g in-screcn motion prediction
30 across sli.ces j.s set, and an image is encoded i n
accordance w i t h thc set control information, to generate
a bitsl.ream. The set control informat-ion and t h e
gencratcd bitstrcarn a re t h e n 1;ransmit- Led.
[0032]
I n another aspect of the prcscnt disclosure, a
5 bitstream gencratcd by encoding an image lis recelived, and
control information for controlling i n - s c r e e n motion
prediction across slices is e x t r a c t e d f r o m the received
b j . t s t r c a m . The rcccived bitstream is then decoded with
the use of the extracted control information, and an
10 image is generated.
[ 0 0 3 3 ]
It should be noted that the above described image
encoding device and image decoding device may be
independent image processing devices, or may be i n t e r n a l
15 blocks forming an image encoding device and an image
decoding device.
EFFECTS OF THE INVENTION
[ 0 0 3 1 j
20 According to one aspect of Lhe present disclosure,
images can be encoded. P a r t i c u l a r l y , encoding efl-icliency
i n IntraEC can be improved.
to0351
According t o another aspect of the present
25 disclosure, images can be decoded. Parti.cular3.y,
encoding ef f i c i erlcy in I n t r a B C can be improved.
[ 0 0 3 6 J
It should bc noted that the effects of the present
technology are not limited to the effects descrjbed
30 herein, and may include any of the effects described i n
the present disclusure. "
BRIEF DESCRIP'I'LON Ok' DRAWINGS
[0037 j
k'ig. 1 is a diagram for explalinj.ny example
5 sLrucl-ures 01 coding u n i t s .
Fig. 2 is a Lable showing example syntaxes of an
SPS and a PPS.
Fig. 3 is a table showing an example of sernanLics
accordjng t o the present technology.
10 Fig. 4 is a t a b l e showing an example syntax of a
VPS.
Fig. 5 is a diagram showinq an example where a
screen i s divided i n t o f o u r slices according to the
present technology.
1.5 Fig. 6 is a diagram showing a case where
i n t r a B C - ref - prev - slice .- num is 1.
Fig. 7 is a diagram for explaining a combination of
the present techno1.ogy and WPP.
Fig. 8 is a diagram for explaining a combinatian of
20 the present technology and WPP.
Fig. 9 is a diagram for explaining a combination of
the present technology and tile dividing.
Fig. 10 is a table for e x p l a j n i n g advantageous
ef fec.ts.
25 Fig. 11 is a diagram for explaining a combi.naCion
of t h e present technology and MCTS-SEX.
E'ig. 12 is a table showing an example of NOTE to be
added to the semantics of an MCTS-SKI message.
F6g. 13 is a block diagram showing an example
30 configurati.on of a lirst embodiment of an encoding device
to which the present technology is applied.
1 . 14 is .a bioclc diaqram showinq an example
conf i q u r a t j on of I.ht3 encoding u n i t shown i n Fig. 13.
Fig. 15 is a flowchart for exp3aininy a sLrearn
generalion process.
Fig. 16 i s a flowchart for explaining a parameter
set setting process.
Fig. 17 is a flowchart for cxplaining t h e encoding
process shown i n Fig. 15.
Fig. 18 is a flowchar,L for explaining t h e encoding
10 process shown i n Fig. 15.
Fig. 19 i s a flowchart for specifying t h e i n t r a
prediction process shown in Fig. 1 7 ,
Fig. 20 is a block diagram showing an example
configuration of a first embodiment of a decoding device
15 t o which the present d i s c l o s u r e lis applied.
Fig. 21 is a block diagram showing an example
configuration of the decoding u n i t shown in E'ig. 20.
Fig. 22 is a flowchart for exp1,aining an image
generation process to be performed by the decoding device
20 shown i n Fig. 20.
Fig. 23 is a flowchart for explaining a parameter
set extraction process.
Fig. 24 is a flowchart for e x p l a i n i n g a decoding
process i n d e t a i l .
25 Fig. 25 is a flowchart for explaining a s l i c e
decoding process i n detail.
Fig. 26 is a block dj.agram showing an example
c o n f i g u r a t i o n of the hardware of a computer.
Fig. 27 i s a diagram showing an example of a multi-
30 vi.ew image encodj.ny method,
Fig. 28 is a diagram showing an example
c o n I i g ~ ~ r a t i oonf a multi-view image encoding dcvicc to
which the p r e s e n t di sc:] (>sure i s appl i ed.
Fig. 29 is a diagram showinq an cxamplc
c o n I i g u r a l i o n of a multi-view image decoding device to
5 which t h e present di scl o s u r e j s app3 i ed.
Fig. 30 is a diagram showing an example o f a
hierarchical image encoding method.
Fig. 31 i s a diagram for explaining an example of
spatial scalable encoding.
10 Fig. 32 is a diagram for explaining an example of
temporal scalable encoding.
Fig. 33 is a diagram f u r e x p l a i n i n g an example of
signal-to-noise r a t i o scalable encoding.
Fig. 34 is a diagram showjng an example
15 configuration of a hierarchical image encoding device to
whi ch the present disclosure is applied.
Fig. 35 is a diagram showing ah example
configuration of a hierarchical image decoding device to
which t h e present disclosure is applied.
20 Fig. 36 is a diagram schernatjcally showing an
example configuration of a television apparatus to which
the present disclosure is applied.
Fig. 37 is a diagram schematically showing an
example configuration of a portable telephone apparatus
25 to which the present disclosure is app7.jed.
Fig. 38 is a diagram schematically showing an
example configuration of a recording/reproducing
apparatus t o which the present disclosure is applied.
Fig. 39 is a diagram schematjca3l.y showing an
30 cxamplc configuration of an imaging apparatus to which
the present d i s c l o s u r e is applied.
Fig. 40 is a block diagram showing an example of
use of scalabl e encodi nq.
Fig. 41 is a block diagram showinq a n o t h e r example
u s e of scalable encoding.
Fig. 42 is a block diagram showing y e t another
cxample of use of scalable encoding.
Fig. 43 schematically shows an example
confj.guration of a video sct to whjch the present
disclosure is applied.
10 Fig. 44 schematically shows an example
configuration of a video processor to which the present
disclosure is applied.
Fig, 45 schematically shows another example
configuration of a video processor to which the present
15 disclosure is applied.
MODES FOR CARRYING OUT THE INVENTION
[0030]
The fo~.~.owinj.gs a description of modes for
20 carrying out the present disclosure ( h e r e i n a f t e r referred
to as the embodiments) . Tt should bc noted t h a t
explanation will be made i n the following order.
0 . Outline
1. First Embodiment (Encoding Device and Decoding
25 Device)
2 , Second Embodiment (Computer)
3 , T h i r d Embodiment (Multi-View Image Encoding
Devjce and Multi-View Image Decodjny Device)
4. Fourth Embodiment (Hierarchical Image Encoding
30 Devicc and Hierarchical Image Decoding Device)
5 . F i f t h EmbodirnenL (Television Apparatus)
6. Sixth Embodiment (Portabic Telephone Apparat-us)
7 . Seventh Krnbn(li ment (Recording/Keproduciny
Apparatus)
8 . E i g h t h Embodiment (Imaging Apparatus)
9. F,xarnple Applications of Scalable Encoding
10. Othcr Examples of Embodj.ments
[0039]
(Encoding Method)
The present technology is described below j.n
c o n j u n c t i o n with an examp1.e case where High Efficiency
Video Coding (HEVC) is applied to image encoding and
decoding.
[OOL30j
Fig. 1 is a diagram for explaining coding u n i t s
( C U s ) t h a t are encoding u n i t s in HEVC.
C0041j
In HZVC, images w i L h large image frames, such a.s
20 4000 x 2000 pixels u l t r a high d e f i n l i t i o n (UHD) images,
arc to be processed, and therefore, f i x i n g ,the erlcoding
unit size to 16 x 16 pixels is not an optimal manner. In
view of this, CUs are defined as encoding units i n HEVC.
[0042]
25 A CU p l a y s a role similar to t h a t of a macroblock
in AVC. Specifi.cally, a CU is divided i n t o Pus, or .is
divided into TUs.
roo431
It should be noted that the size of a CU is equal
30 to a square represented by power-of-l-wo pixels t h a t vary
with sequences. S p e c i f i c a l l y , a CU i s set by d i v i d j r ~ y an
LCU as a C:IJ oL the largest s i z e in half in the horizontal
d i r e c t i o n and the vertjcal d i r e c t i o n an appropriai-e
number ot times so t h a t t h c CU w i l l n o t become smaller
lhan a smallest coding unit (SCU) as a CU of the srnallcst
5 size. That is, the size of a CU is the s i z e a t a
hierarchical level when an LCU i s hierarchized untjl SCUs
are obtaj-ned so t h a t t h e size at an upper hierarchical
level is 1/4 of the size of a CU at one l e v e l lower than
t h e upper hierarchical level.
10 [ 0 0 4 4 ]
For example, in Fig. I, the size of an LCU is 128,
and the size of an SCU is 8. Accocdj.ngly, the
hierarchical depth (Dep,Lh) of an LCU is 0 through 4, and
t h e number of hierarchical depth levels is 5 . That is,
15 the number of divisions corresponding to CUs is one of 0
through 4.
[0045]
It should be noted that information designating the
sizes of an LCU and an SCU is included in an SPS. Also,
20 the number of divisions correspondirlg t o CUs is
designated w i L h " s p l i t - flag" i n d i c a t i n g whether tu
f u r t h e r divide the CU at each hierarchical level. CUs
are specifically described i n Non-Patent Document 1.
COO461
25 The size of a TU can be designated w i t h
" s p l i t - transform - fI.ag", as with "split .- flag" for a C U s .
The rnaxjmurn numbers of dlivisions of TUs i n an i n t e r
prediction and an intra prediction are designated as
"max transform - h i e r a r c h y - depth - i n t e r " and
30 "max , -. transform - hierarchy - depth - i n t r a " , r e ~ p e c t i v e 1 . yi~n
the SPS,
[0047]
In addit-ion, i n this specification, a coding tree
unrit (CTU) i s a unil. t h a t includes the coding Lree block
(CTB) of an LCU and t h e pa~>arneterfso r processing on the
5 LCU basis ( l e v e l ) , Further, the CUs constituting the CTU
are u n i - t s i.ncS.uding coding blocks ( C B s ) and the
parameters for proccssir~g on t h e CU basj s (l.evel) .
COO481
(Mode Sel ection)
10 Meanwhile, to achieve higher encodj ny ef f i c l e n c y
w i t h AVC and HEVC coding methods, it is critical to
select an appropriate prediction mode.
{0049]
Methods implemented i n reference software of
15 H.264/MPEG-4 AVC, called J o i n t Model (JM) (available at
http://ipkome.hhi.de/suehring/trnl/index.htm, can be used
as examples o f such selection methods.
[0050]
ln JM, the two mode determination methods described
20 below, I1j.gh Compl.exity Mode and Low Complexity Mode, can
be selected. ny either of the methods, a cost fullction
value as to each prediction mode Mode is cal.culal:ed, and
the prediction mode that minimizes the cost f u n c t i o n
value is selected as the optimum mode for the block or
25 macroblock.
[ O O S l j
A cost f u n c t i o n j.n High Complexity Mode is
expressed as in Lhe following expression (1).
[00521
30 Cost(Mode EQ) - U + X * R ... (1)
[ 0 0 5 3 ]
Irere, Q represents t h c universal sct of candidat-e
modes f o r cncodixlg t:he block or macroI)l.o(:k, and D
represents the difference energy between a decoded image
and an j.nput image when encoding is perforked in the
5 c u r r e n t prediction mode. h represents t h e 1,agrange's
undetermined r n u l t i p 1 j . e ~p rovi,ded as a q u a n t i z a t i o n
parameter function. 1< represents t h e total b i t rate i.n a
case where encoding is performed in t:he current mode,
including the orthogonal transform coefficient.
10 COO541
'I'hat is, to perform encoding In High Complexity
Mode, a provisional encoding process needs t o be
performed i n all t h e candidate modes to calculate the
above parameters D and R, and therefore, a larger amount
15 of c a l c u l a t i o n is required.
COO551
A cost function j.n Low Compl.ex'j.ty Mode i s expressed
as i n t h e following expression (2) .
[ 0 0 5 6
20 C o s t (Mode E Q) = D + QP2Quant (QP) * HeaderBit . . .
(2)
LOO571
Here, D differs f r o m that in High Complexity Mode,
and represents t h e dipference energy between a predicted
25 image and an input image. QP2Quant (QP) represents a
f u n c t i o n of a quantization parameter QP, and HeaderBit
represents the b i t rate related to information t h a t
excludes the orthogonal transform coefficient and bcl.ongs
to Header, such as mot? on vectors and the mode.
30 [0058]
That is, in Low complexity Modc, a prediction
16
.SF: achieve low-
5 delay transmission.
[0064]
In view of t h e above, t h e present technology
suggests transmission of i n t r a -, BC ,.. ref - . prev - slice - f l a g ,
which is a reference permission f l a g for making i , L clear
10 t h a t I n t r a B C refers to a r e s u l t of decoding of a prevj.ous
slice. When the value of intra -.. , BC - ref - psev - sllice - f l a g is
0 (default value), I n t r a B C can refer only to the c u r r e n t
slice. When the value of i.nt.ra- B C- r ef- p rev- s lice- f lag i.s
1, IntraBC can refer not only to the current slice b u t
1.5 also to a block i n a previous slice. It should be noted
t h a t this flag indicates the relatj.onship between slices,
and therefore, is appropriately set 'in a picture
parameter set (PPS) .
100651
20 A l s o , i n Derivation 1 of the present technology,
how many previous slices can be referred to when
intraBC -- ref - prev - slice - f l a g is 1 is made clear by a
parameter called i n t r a B C . - ref - prev - slice - num in the PPS,
for example.
25 [0066]
For example, when intraBC - ref - prev - slice num is 5 ,
and the current slice number is 10, it is possible to
refer to the images with slicc numbers 5 through 10. For
example, if the c u r r e n t slice number is smaller than 5 ,
30 il: is possible to refer to the images of slice 0 through
t h e c u r r e n t slice. FurLher, t o save the bit rate,
"intraBC - ref - prev - slice rlurn -: 0" can indicatc all the -
previous s l i ces .
E'urther, i n D e r i v a L i o n 2 of the present technology,
5 sps - crossslice intraBC ., . enable - fl.ag, which is an on/oPf
fl.ag for c o n t r o l l i n g switching on and off o f t h e tool for
I n t r a B C to refer to a result of decoding of a previous
slice, i s added to t h e sequence parameter set ( S P S ) .
Only when sps - crossslice . ,., i n t r a B C - enable - f l a g is t r u e , is
10 parsing performed on intraBC - ref - prev - slice --- f l a g . It
should be noted that t h j - s fl,ag for c o n t r o l l i n g t h e
switching on and off of the tool may not be added to the
SPS, but may be added Lo a video parameter set (VPS).
[ 0 0 6 8 ]
(Example Syntaxes of the SPS and the PPS)
F i g , 2 is a tab3.e showing example syntaxes of the
SPS and the PPS. In t h e examples i n - Fig. 2, t h e syntax
of t h e PPS is shown below the syntax o f the SPS.
[0069j
20 In t h e SPS, i n t r a - ,- block - copy - enabled - f l a g , which is
the f l a g indicating that I n t r a B C is to be performed, is
w r i t t e n , and sps - crossslice - i n t r a B C - enable -- flag, which is
t h e on/off flag described above as Derivation 2 of the
present technology, is added under
25 intra -- block - copy - enabled f l a g . Only when
sps - crossslice - i n,kra%C- e nable- f l a g i s truc, is parsing
performed on sps - crossslice - i n t r a B C - enable -" flag.
[ 0 0 7 0 ]
In t h e PPS, intra- .B C ref -.p- rev- s lice- f l a g , which is
30 t h e reference permission f l a g described above as t h e
present technology, is added. Only when
sps-crossslice - i n l . r a B C - enable - $lag, which is the on/off
f l a g added to thc SPS, is true, i s parsing perIormed on
t h c intra - HC - ref - prev -- slice f l a g . Tn addi ti or^, under
intra - BC - ref - prev - slice - flag, i n t r a B C - ref prev s l i c e num, - - -
5 which is the parameter described above as Derivation I of
the present technology, is added. 0nl.y when
intra - BC - ref - prev - slice - f l a g is t r u e , is parsing
performed on i n t r a B C - , ref - prev - slice - num,
10 I L should be noted t h a t t h e information f o r
controlling IntraBC (in-screen mo'Lion prediction across
s l i c e s ) , such as the f l a g s and the parameter described
above, will. be h e r e i n a f t e r referred to collectively as
I n t r a B C control information. A l s o , the intra predliction
15 mode using the I n t r a B C control i.nformation will. be
h e r e i n a f t e r referred t o as Lhe LntraBC mode.
[0072]
(Example of Semantics)
Fig. 3 is a t a b l e show,ing an example of semantics
20 according to the present technology, In the example i n
Fig. 3 , sps - c ~ossslic-ei ntraBC- e nable- f l a g ,
intraBC - ref - prev - slice - f l a g , and
i n t r a B C - ref - prev -. slice - num are defined as follows.
sps - crossslice - intraBC - enabl.e - flag equal to 1
indicalles that i.ntraBC - rev - prev - slice - flag may have the
value e q u a l to 3, in the CVS.
i n t r a B C - ref - prev -. slice - f l a g equal to 1. indicates
30 t h a t a prediction u n i t which coding mode is IntraBC
(=predModeTntranc i s equal to 1) in the current slicc may
ref cr the previously decoded sl i c:e datd wh i c:h pr oceed Ltle
c:urrenl- sl i c:e in {.he decoding ordcr in the current
picture. i r l t r a B C - ref - prev - slice - flag equal to O
indicates that a prcdictioxl unj t which coding mode is
5 InLraBC shall. noL refer the previously decoded slice data.
When not present, the value of
intraBC - ref - prev - slice -- flag is inferred to 0 .
i n t r a B C - ref - prev - slice - num indicates onc or more
slice segment t h a t may be referred by a prediction u n i t
10 which coding mode i s I n t r a B C j.n the current slice. The
set of s1.i ce segment is derived as follows.
L e t C be t h e order of the slice i n the c u r r e n t
picture ( e . g . 0 for the lst sli..ce ) . And A j.s c a l c u l a t e d
15 A = (C - j.ntsaBC - ref - prev - slice - num) < 0 . 0 : (C --
intraBC - ref - prev - slice num) -
Then, the X - t h slice segment, where X is i n the
range of A to C, is the target slice segment indicated by
the syntax,
20 100741
(Examplc Syntax of the VPS)
Fig. 4 is a t a b l e showing an example syntax of t h e
VPS. I n the VPS shown in Fig. 4,
sps - crossslice - i n t r a B C - enable mu flag i n the SPS shown i n
25 Fig. 2 is written as vps - crossslice - intraBC - enable ". f l . a y .
[ 007 5 1
(Detailed Descriptj-on)
F i g . 5 is a diagram showing an examplc where a
screen js divided i n t o four slices (Slices #O through # 3 )
30 accordj-ng to the present: technology.
[0076]
In a casc where reference to a di$?crcnt slice is
prohibited, the range that can be reIerrecl 1-0 f r t m the
c u r r e n t CTU i n Slice #2 i s o n l y I h e decoded portion in
Slicc #2, and thcrcfore, any block in Slice #1 cannot bc
5 referred Lo, for example.
{ 0 0 7 7 ]
In the casc of the present technology, on the other
hand, decoded different slices (Slice #O and Slice #1)
are included in the referable range, and accordingly, a
10 block in Slicc H1 can be referred to from the current CTU
i n Slice #2, f o r example, as shown in Fig. 5 ,
[ 0 0 7 8 ]
Fig. 6 is a diagram showing a casc where
intra3C - ref - prev slice num is 1 i n the example shown in - -
15 Fig. 5 .
COO791
S i xlce i n t r a B C - ref - prev - slice - num is 1, Slice tfl,
which is one slice before the c u r r e n t slice, can be
referred to from the c u r r e n t CTU i n Slice H2, as shown i n
20 Fig. 6. It ris not possible to refer to Slice #O. Thus,
any block i n Slice #1 can be referred t o from t h e current
CTU in Slicc H2 in t h e example case shown in Fig. 6.
[0080]
(Combination with WPP)
25 F j y s . 7 and 8 are diagrams for explaining a
combination of the present technoloyy and wavefront
p a r a l l e l processing (WPP) .
100813
WPP is the processing that is perlormed when
30 entropy - coding - sync - enabled - flag in Lhe PPS is 1. There
are t w o methods for perilorrning WPP. The f i r s t one j s 2
method olt mlt i - s i j ce er1c:odj ng, wi. th one sl.j.c:e bei rly one
CTU column. The second one is an encoding method using
c n t r y . . poit - uf f s e t , with one slice h e i n y o n e picture.
Since t h e above described present technology can be
5 applied jri (.he case of the second method, the first
method is described below.
[00S2]
When t h e WPP function is on, one slice is one CTU
column. Therefore, if reference to a d i f f e r e n t slice i s
10 prohibited, only the adjacent CTU on the ] . e f t slide is the
referable range f r o m the current CTU, and only the
adjacent CTU on the l e f t side can be referred to.
I00831
According 1:o the present technology, on t h e o t h e r
15 hand, when the WPP f u n c t i o n is on, the reference range is
limited not to e n t i r e Slicc #O but to CTUs up to the CTU
located on the upper right side of the c u r r e n t CTU. T h i s
i s because there is a decoding Lime lag equivalent to 2
CTUs between CTU columns, due to the design of WPP. .
20 {0084]
That is, when the leftmost CTU i n Slice #1 is the
current CTU, as shown i n Fj-g. 7 r the CTU that is located
i n Slice #O and immediately above the current CTU, and
the CTU that i s located i n Slice #O and on the upper
25 right sj.de of t h e current CTU form the referable range.
[OOSS]
A l s o , when the second CTU from ].eft i.n Slice #1 is
the c u r r e n t CTU, the CTU that is located in Slice 80 and
on the upper l e f t side of the current CTU, the CTU thai:
30 is I-ocated i n Sl-ice #O and immediately above the current
CTU, thc CTU t h a t j.s lohated i n Sl.ice #O and on the upper
r i g h t side ot t h e current CTU, and t h c a d j a c x r ~ t C:TU on
t h e lcft side of {.he c u r r e n t C:TU in Slice #1 form t h e
rcferablc range, as shown j n Fig. 8 .
roo861
In t h i s manner, t h e presen.!: Ilechnology and WPP car1
be combined.
[0087]
(Comb< n a t i o n wi t:h T l i l e Dividing)
Fig. 9 is a diagram for explaining a combination of
3.0 the present technology and tile dividing.
[0088]
T i l e dividing is t h e processing to be performed
when tiles - enabled - frag i n the PPS is 1. Tiles are
specified as tools for parallel processing i n HEVC. A
15 t i l e is a dividing u n i t of a p i c t u r e . The row s i z e and
t h e column size of each , t i l e are designated on t h e LCU
basis i n the SPS or the PPS i n the h a g e compression
information.
[0089]
20 The LCUs included j.n each tile are processed in the
raster scan order, and the t i l e s included i n each p i c t u r e
are processed in the raster scan order. A slice may also
include tiJ.es, and a slice boundary may exist i n a tile.
[0090]
25 In a case where a sc-reen j.s vertically divided i , n t o
Lwo portions, or is tile-divided i n t o Slice #O and Slice
#1, for example, if reference to a different slice is
prohibited, the range that can be referred t o from t h e
c u r r e n t CTU is on1.y the ti les i.n Slice #l .
30 [0091]
According to t h c present technology, on t h e other
hand, intra - BC - re1 - prev - slice - flag as thc rcfercnce
permi ssi on f l a g is set to 3 , so t h a t decoded difference
slices can bc rcf~rrcd to. Accorclinqly, i n a case where
the tile dividing I u n c t i o n is on, reference to Slice # 0 ,
5 which includes d i f f e r e n t t i l e s and i s a d i f f e r e n t slice
from t h e c u r r e n t CTU i n Slice Hl, is perrni,t:,l:ed, as shown
in Fig. 9.
[0092]
(Advantageous E f f e c t s )
1.0 Fig. 10 is a table for explaining advantageous
effects.
COO931
I n a case where reference to a different slice i s
prohibited, independent decoding between slices can be
15 performed. In t h e case of the present technology, on the
other hand, IntraBC cannot be performed unless a
designated slice is complctcly decoded. Therefore,
independent decoding between slices is not possible.
[0094]
20 I n a case where reference to a different slice is
prohibited, In t r a B C cannot refer to the previous : l I ) O U - V2) o f SIIVC. Wj.th t h e tlse of MCTS-SE1, only the
data i n desiqnatcd t.il.es can be ex,t,racted f r o m a
bitstream, so that the designated tiles can be
5 independently decoded. It should be noted that, without
t h i . s SEI, it is not possible to independently decode only
some of the tiles in a screen.
COO971
In the cxamplc shown j.n Fig. 11, a p i c t u r e is
10 divided into 10 x 6 tiles. The tiles mcts - j.d[Oj i n the
region indicated by a t h i . c k Frame are part of the picture,
but only these t i l e s can be extracted and decoded (such
decoding will be hereinafter referred to as independent
decoding) .
15 [0098]
L i k e w i s e , the tiles m c t s - id[l] in the frame drawn
w i t h a dashed l i n e can also be indep,endently decoded.
MCTS-SEI can designate tile sets i n complicated regions
l i k e m c t s - id[O] and mcts - i d [ l ] shown i n Fig. 11.
20 COO991
Therefore, in a slice i n a t i l e set designaked by
MCTS-SET, in,LraBC - ref - prev - slice - flag needs to be s e t to
0.
T h i s is because reference to a t i l e / s l i c e other
25 than the current one is prohibited.
[ O l O O ]
Fig. 12 i.s a table showing an exarnp1.e of NOTE to be
added to the semantics of an MCTS-SEI message.
[ O I O I ]
30 To combine the present technology and MCTS-SEI,
NOTE shorn i n Fig. 12 is added to the sernantics of an
MCTS-SEI message accordinq to JCTVC-01008 - V2.
[0107]
NOTE -When intra.R C- r eL- p rev- s lice- f lag is e q u a l to
1, intra block copy process may need the decoding
5 dependency among t h e tiles, It is encouraged for
encoders to set intranC - ref - prev - slice - f l a g equal to 0 in
the t i l e s which is selected by a temporal motionconstrained
tile set.
[ 0 10 3 1
10 Next, example applications of t h e above described
present technology t o specific devices are described.
[0104]
< F i r s t Embodiment>
(Example Configuration of an Embodiment of an
15 Encoding Device)
Fig. 13 is a block diagram showing an example
configuration of an embodiment of an- encoding device t o
which the present disclosure is applied.
[OlOS]
20 The encoding device 10 shown i n Fig; 13 includes a
setting unit 11, an encodi.ng unit 12, and a t r a n s n ~ i s s i o n
u n i t 13, and encodes images by a method cornpl.ian1: with
HEVC.
[0106]
25 Specifically, t h e s e t t i n g unit 11 of the encoding
device 10 seLs a VPS, an SPS, a PPS, VUT, SEI, and the
l i k e . Partic:ul.arly, t h e setting u n i t 13. sets I n t r a B C
con'trol information in an SPS and a PPS. The setting
u n i t 11 supplies the encoding unit 12 w i t h parameter sets,
30 such as the VPS, the SPS, t h e PPS, t h e V U I , and the SEI,
which have keen s e t .
~ o l o - / A frame-based image i s i n p u t to the encoding u n i t
12. By r e f e r r i n g to the parameter seLs supplied from the
sel.l.ing unit 11, the cncodj ng unj.t 1.2 encodes the j nput
5 image by a method compliant with HEVC. P a r t i c u l a r l y , i n
accordance with the IntraBC control information i n the
SPS and the PPS supplied from t h e s e t t i n g u n j t 11, t h e
encoding unit 12 performs a prediction process in the
IntraBC mode to which the present technology is applied,
10 and makes an intra predictj.on. The encodj-ng unli,L-. 12
generates an encoded stream f r o m the encoded data
obtained as a r e s u l t of the encoding and from the
parameter sets, and supplies the encoded stream 'Lo the
transmission unit 1.3.
15 [0108]
The transmission unit 13 transmits the encoded
s t r e a m supplied from t h e encoding urxit 12 to a decoding
device that will be described l a t e r .
[Ol09]
20 (Example Configuration of the Encoding Unit)
Fig. 14 is a block diagram showing an example
configuraLion of the encoding unit 12 shown in F i g . 13.
[ 01.1.0I
The encoding u n i t 12 shown i n Fig. 1 4 includes an
25 A/D converter 31, a screen rearrangement b u f f e r 32, an
a r i t h m e t i c operation u n i t 33, an orthogonal transform
u n i t 34, a quantization u n j t 3 5 , a lossless encoding u n i t
3 6 , an accumul.ation buffer 37, an inverse quantj-zation
u n i t 38, an inverse orthogonal transform u n i t 39, and an
30 addition u n i t 40. The encoding u n i t 12 also includes a
deblocking filter 4 1 , ah adaptive offset Iilter 42, an
adapt:ive loop filter 43, a frame memory 44, a switch 45,
an i n t r a predri.ctj.on u n i t 46, a rnot:i.ori
prediction/compensat i 011 u n i t 4 7 , a predicted image
seJ.ecti.oxl u n l i t 48, and a rate control u n i t 49.
5 [ O l l l j
The A/D converter 31 of t h e encoding u n i t 3.2
perIorrns A/D conversion on a frame-based image that is
input. as the c u r r e n t object: l-o be encoded. The A/D
convcrter 31 outputs an image that i.s a converted d i g i t a l
10 signal t o t h e screen rearrangement buffer 32, and stores
the image i n t o the screen rearrangement buffer 32.
[0112]
The screen rearrangement b u f f e r 32 rearranges the
frames of t h e irnage stored in displaying order, so that
15 t h e frames of the image are arranged j.n encoding order in
accordance w i t h the GOP structure. The screen
rearrangement buffer 32 suppl.ies the, rearranged image to
the arithmetic operation unit 33, the i n t r a prediction
u n i t 46, and the motion prediction/cornpensation u n i t . 4 7 .
20 C O 1 1 3 j
The arithmetic operation unj-t 33 performs encoding
by subtracting a predicted image supplied from the
predicted image selection unit 48 from the image supplj-ed
from the screen rearrangement buffer 32. The arithmetic
25 operation u n i t 33 outputs the s e s u l . t a n t image as residual
error information (a difference) to the orthogonal
transform u n i t 34. It should be noted that when any
predicted image is not supplied f r o m the predicted image
selection u n i t 48, t h e a r i t h m e t i c operatj.orl u n i t 33
30 o u t p u t s the imagc read from the screen rearrangement
b u f f e r 32 as residual error information to the orthogonal
Lranslorm unit 34.
[0114]
The orthogonal transform u n i t 34 performs an
orthogox~al transform process on t h e r e s i d u a l error
5 information supplied f r o m the arithmetic opcration u n j t
33 for each TU. The orthogonal transform unit 34
supp1i.e~a n orthogonal transform r e s u l t t;o ,the
q u a n t i z a t i o n u n i t 35 after t-he orthogonal transform
process.
3.0 [0115]
The quantization u n i t 35 quantizes t h e orthogonal
transform result supplied from the orthogonal transform
u n i . t 34. The quantization u n i t 35 supplries the quantized
value obtained as a result of the quantization to t h e
15 lossless encoding unit 36.
[0116]
The lossless encoding unit 36 acquires, from the
intra prediction unit 46, information indicating the
opti.rnurn i n t r a prediction mode ( t h e information will be
20 hereinafter referred to as t h e i n t r a prediction mode
information). The lossless encoding unit 36 also
acquires, from t h e motion predic~Lrion/cornpensation u n i t 47,
information indicating the optimum i n t e r p r e d i c t i o n mode
(the information will be hereinafter referred to as the
25 inter prediction mode information), a motion vector,
tnformation for identifying a reference image, and t h e
l i k e .
[0117j
The lossless encoding unit 36 also acquires offset
30 filter information about ;In offset filter from the
adap,Live offset filter 42, and acquires a filter
S P3.5 8 3.5 'I WOO 0
coefficient f r o m t h e adaptive loop f i l t e r 4 3 .
[ O l 181
The lossless encoding unit 36 perIorms lossless
encoding, such as variable-length encoding (context-
5 adaptive variable l e n g t h codj.ng (CAVLC), for example) or
arithmetic encoding (context-adaptj-ve binary arithmetic
coding (CABAC), for example), on the quantized value
supplied from the q u a n t i z a t i o n u n i t 3 5 .
[ O 1191
1.0 The lossless encoding u n i t 36 also performs
lossless encoding on encoding inFormation related to
encoding, which is the intra prediction mode information
and an I n t r a B C vector only in t h e case of t h e IntraBC
mode, or the i n t e r predi.ctj.on m o d e information, t h e
15 motion vector, the inforrnati.on for i d e n t i f y i n g the
reference image, the offset f i l t e r information, and the
filter coefficient. The lossless encoding unit 36
supplies the accumulation buffer 37 with I;he encoding
information and the quantized value subjected to the
20 lossless encoding as encoded data to be stored.
[0120j
It should be noted that the encoding information
subjected to the lossless encoding may be header
information (a slice header, for example) about the
25 quantized value subjected to the .l.ossless encoding.
COl213
The accumulation buffer 37 t e m p 0 r a r i . l ~s tores the
encoded data supplied from the lossless encoding unit 36.
The accumulation buffer 37 also supplies t h e stored
30 encoded data, together with the parameter sets supplied
from the setting unit li shown i n Fig. 13, a s an encoded
The quantized value that is output. from tlie
c~uantj.7.ation u n j t 35 i s a l s o inpuL to t h e inverse
5 quantization unit 38. The inverse q u a n t j zatioxi u n i t 38
inversely quantizes the quantized value. The inverse
quantizatj.011 u n i t 38 supplies the orthogonal transform
result obtained as a result of the inverse quan1:izaLion
to the inverse orthogonal transform u n i t 39.
l o [0123]
The inverse orthogonal transform u n i t 39 performs
an inverse orthogonal transform process on t h e orthogonal
transform r e s u l t supplied from the inverse quantization
unit 38 for each TU. The inverse orthogonal transform is
15 performed by inverse discrete cosine transform (JDCT) o r
inverse discrete sine transform ( T D S T ) , for example. The
inverse orthogonal transform unit 39- supp1i.e~t he
residual error i.nforrnation obtained as a result of the
inverse orthogonal transform process to the addition u n i t
20 40.
t0124j
The a d d i t i o n u n i t 40 adds the residual error
information supplied from the i,nverse orthogonal
transform u n i t 39 to the predicted image supplied from
25 the predict-ed image selection unit 48, to perform
decoding. The addition u n i C 40 supplies t h e decodcd
image to thc deblocking f i l t e r 4 1 and t h e frame memory 44.
[ 0 12 5 ]
The deblocking filter 41 performs an adaptive
30 deblocking filLering process on thc decoded image
supplied f r o m the a d d i t j on unit 40, to remove block
distortion. Thc resultant jmage i s suppl ied to t-he
adaptive oILse1. lil Ler 42.
1012 61
The adaptive o f f s e t f i l t e r 42 performs an adaptive
5 offset Liltering (sample adaptive off set (SAO) ) proccss
on the image subjected to t h e adaptive deblocking
f i l t e r i n g process by the deblocking f i l t e r 4 1 , mainly to
remove ringing,
~ 0 1 2 7 1
10 Specifically, the adaptive offse't f i l t e r 42
determines a b-ype of an adaptive offset filtering process
Tor each largest coding unit (LCU) as the largest unit of
encoding, and calculates the offset to be used i n T-he
adaptive o f f s e t f i l t e r i n g process. Using the calculated
15 offset, the adaptive offset filter 42 performs the
adaptive offset filtering process of the determi-ned type
on the image subjected t o the adaptive deblocking
filtering proccss.
[0128]
20 The adaptive offset f i l t e r 42 supplies the adaptive
loop filter 43 with t h e image subjected to t h e adaptive
o f f s e t f i l t e r i n g process. The adaptive ofcset f i l t e r 42
also supplies ,[:he lossless encoding u n i t 36 with t h e
o f f s e t filter information, which is information
25 indicating t h e type of t h e performed adaptive o f f s e t
filtering process and the offset.
1032 91
The adaptlive loop f i l t e r 43 is formed with a twodimensional
Wiener f j lter, for example. For each LCU,
30 for example, t h c adaptive loop f i l t e r 43 performs an
adaptive loop filtering (AT,F) process on t h e image t h a t
i s supplried Irom the adaptive o f f s e t f i l t e r 42 and h a s
been subjected to t h e adaptive offset f i l t e r i n g process.
[0130]
Speci.fi.cally, for each LCU, thc adaptivc loop
5 filter 43 -calculates t h e filter coefficient: to be used in
the adaptive loop f i l t e r j . n g process, so as L.o minimize
,!:he resj.dual error between thc o r i g i n a l image that is the
image output from the screen rearrangement buffer 32 and
the image subjected to t h e adaptive loop filtering
1.0 process. Then, using the calculated f i l t e r coef f i.cient,
the adaptive loop filter 43 performs, for each LCU, the
adaptive loop filtering process on the i m a g e subjected t o
t h e adaptive o t f s e t filtering process.
[0131]
The adaptive loop fil'ter 43 supplies ,the frame
memory 44 w i t h the image subjectcd to t h e adaptive loop
filtering process. The adaptive loop filter 43 also
supplies t h e lossless encoding unit 36 w i t h the f i l t e r
coefficient used i n the adaptive loop filtering process.
20 [0132]
It should be noted that, although the adaptive loop
filtering process is performed for each I,CU i.n this
example, the u n i t of processing i n the adaptivc loop
filtering process is not limited to LCU. However,
25 processing can be e f f i c j . e n t l y performed where the
adaptive o f f s e t filter 42 and t h e adaptive loop f i l t e r 43
use t h e same uni,L of processing.
101331
The frame memory 44 stores t h e image supplied from
30 the adaptive loop filter 43 and the image supplied from
t h e addition u n i t 40. An j..mage adjacent to a prediction
uniL (PIJ) amonq t h e jrnayes that. a r e st.ored in 1-he f ramc
memory 44 arid have not bccn subjcctcd t o any filtering
process is supplied as a peripheral image t o the intra
predic-l-ion u n i t 46 via t h e s w i t c h 15. Meariwl-1.; le, an
5 image t h a t j.s stored i n the frarnc memory 44 and has been
subjcctcd to a filtering process is output as a reference
image to the motion prediction/compensatic~n unit 47 via
t h e switch 45.
[0134]
10 The Intra3C control information in the SPS and the
PPS is suppl.ied f r o m the s e t t i n g u n i t 11 to the intra
prediction u n i t 46. Using the peripheral image that has
been read from t h e frame memory 44 via Lhe switch 45, the
intra prediction unit 46 performs an i n t r a p r e d i c t i o n
15 process in a11 candidate intra p r e d i c t i o n modes for each
PU. At the same time, t h e i.ntra gredi.cti.on unit: 46 also
performs i n t r a prediction in the Int-raBC mode in
accordance with the IntraBC control information.
[0135]
20 Also, i n accordance with an image read from t h e
screen rearrangement b u f f e r 32 and the predicted :i.mage
generated as a result of the intra prediction process,
the intca prediction unit 46 calcu1,ates cost f u n c t i o n
values (described later in detail) of a l l t h e calldidate
25 i n t r a prediction modes. The intra prediction unit 46
then determines t h e optimum intra prediction mode that is
the i n t r a prediction mode w i 1 . h the smallest cost function
val-ue.
[ 0 13 6 j
30 Thc i n t r a prediction unit 46 supplies t h e predicted
image generated in t h e optimum intra prediction mode and
t.hc correspondinq cost function v a l u e I..o [.he psedlicted
i r n a y e selecl-ion unit- 4 8 . When nntificd of the sc1ect.j or]
of t h e predicted i.maye generated in the optimum intra
prediction mode by the predicLed i r n a g e selec-l.ion u n i t 48,
5 the iritra pr:ediction u n i t 46 supplies the intra
prediction mode i-nformation to the lossless encoding u n i - t
3 6 . It should be noted that an lintra predicl;ion mode is
a mode j.ndj.ca,l:ing t h e sj.ze of each PU and a direction of
predj.ction. If the optimum intra prediction mode is the
10 IntraBC mode, the I n t r a B C vector is also supplied to the
lossless encoding u n i t 36 at this s t a g e .
[0137]
The motion prediction/compensa.I:ion unil: 47 performs
a motion prediction/compensation process i n a l l candidate
15 i n t e r prediction modes for each PU. Specifically, the
motion prediction/compensation u n i t 47 detects, for each
PU, motion vectors of a l l the candidate i n t e r prediction
modes in accordance with the image supplied from the
screen rearrangement buffer 32 and Y+he reference image
20 read from the frame memory 44 via the s w i t c h 45. The
motion prediclion/compensation u n i t 47 then performs, for
each PU, a compensation process on the reference image i n
accordance with t h e motion vectors, and generates
predicted images.
25 [0138]
At this point, the motion prediction/compensation
unit 47 calculates cost function values of a l l t h e
candidate i n t e r prediction modes 2.n accordance with the
jmage supplied from the scrccn rearrangement buffer 32
30 and the predicted images, and determines the optimum
i n t e r prediction mode t h a t is the inter prediction mode
w i l . l i ILlle smal lest cast f u n c t i o n value. Thc mot i.oxl
prcdiction/compensation unit 47 l:hen supplies the cost
function value of the opLimum i.nt:er predictlion m o d e and
the corresponding predictcd irnagc to the predicted image
5 selection unit 48. I n addition, when notified of the
selection of the predicLed i-mage generated i n the optimum
i n t e r predj-ction mode by the predicted image s e l e c t i o n
unit 48, t h e motion prediction/cornpensation u n i t 47
outputs the inter prediction mode informa Lion, the
1.0 correspondj.ng motion vector, the information for
identifying the reference image, and the like to the
lossless encoding u n i t 36. It should be noted that an
j,nter prediction mode is a mode indicating t h e s i z e of
each PU and the l i k e .
15 101391
In accordance with the cost function values
supplied from the i n t r a prediction u n i t 46 and the motion
prediction/compensation u n i . t 47, the predicted image
selection u n i t 48 determines the optimum p r e d i c t i o n mode
20 that is the optfrnum i n t r a prediction mode or the optimum
inter predickion mode, whichever has the smaller cost
functi.on value. The predicted image selection u n i t 48
t h e n supplies the predicted image in the optimum
prediction mode to the arithmetic operation unit 33 and
25 the addition u n i t 40. The predicted image selection unit
48 a l s o n 0 t i f j . e ~th e intra prediction u n i t 46 or the
motion prediction/cornpensation unit 47 of the selection
of thc predicted image in the optimum prediction mode.
10140j
30 In accordance w i t h the encoded data stored i n the
accumul.atjon b u f f e r 37,'the rate control u n i t . 49 conkrols
t h e quarlt.. i z a t i or] opera t. i on rate of t-he quantiza-Lion unit
35 so as not to cause an overflow or underflow.
101411
(Description of Processing to be P e r f o r m e d by the
5 Encoding Device)
Fig. 15 is a flowchart for explaining a stream
generation process to be performed by Lhe encoding device
10 shown in F i g . 13.
[0142]
10 In step S11 i n Fi.g. 15, t h e setting unit 11 of t h e
encoding device 10 sets parameter sets such as a VPS and
an SPS. The s e t t i n g uni,L 11 supplies the set parameter
sets to the encoding u n i t 12. Thi.s set,Ling process will
be described later in detail with reference to Fig. 16.
15 lo1431
In step S12, the encoding unit 12 performs an
encoding process to encode a frame-based image input from
the outside by a method compliant w i t h HEVC. This
encoding process will be described later in d e t a i l , with
20 reference to Figs. 17 and 18.
r01441
In step 513, the accumulation buffer 37 (Fig. 14)
of t h e encoding u n i t 12 generates an encoded stream from
the parameter sets supplied from t h e s e t t i n g u n i t 1.1 and
25 stored encoded data, and supplies the encoded stream to
the transmission u n i t 13.
[0145]
In step S14, the transmission unit 13 t r a n s m i t s the
encoded stream suppl-ied f r o m the setting unit 11 to a
30 decoding devi.ce 13.0 that w i l l be described l a t e r , and the
process then comcs t.o an end.
101461
R e f e r r i n g now 1-0 the f l o w c h a r t in Fig. 16, t h e
parameter set s e t t i n y process of stcp S11 in Fiq. 15 j.s
described i n detail. In the example shown in F i g . 16,
5 Lhe IntraBC control information is sct in an SPS and a
PPS.
LO1471
I n st-ep 531, the setting unit 11 shown in F i g , 13
sets sps - crossslice - inLraBC - enable - flag. I n st-ep S 3 2 ,
10 the setting unit 11 determines whether
sps - crossslice - i n t r a B C - enable - flag is I . If
sps - crossslice - j.ntraBC - enable - f l a g is determined to be 1
i n step S 3 2 , the process moves on to step 533.
[0148]
15 In step 533, the setting unit 11 sets
intraBC - ref - prev - slice - flag. In step 534, the s e L t i n g
u n i t 1.l determi-nes whether i n t r a B C -- ref --p. rev -. slice- f lag is
1.
[0149]
20 If i n t r a B C - ref - prev - slice - flag is determined to be
1 i n step S34, the process moves on to step S35. I n step
S35, the s e t t i n g unit 11 sets intra3C - ref - prev - slice .- num.
EOl5Oj
If sps - crossslice - intraBC - enable - flag is determined
25 to be 0 i n step S 3 2 , steps 233 through S 3 5 are skipped,
and the parameter set s e t t i n g process is ended. The
process then r e t u r n s to step S l l in Fig. 15.
LOlSl]
If intraBC - ref - prev - slice - flag is determined t o be
30 0 in step S34, step S35 is skipped, and the parameter set
s e t t i n g process is ended. The process then r e t u r n s to
sl-ep S11 i r ~F ig. 1.5.
[0152]
Nexl:, Figs. 1'1 and 1.8 are a flowchart far
explaininq i n d e t a i l the encoding process of step 512 i n
5 Fig. 15. A frame-based image j.s i n p u t f r o m t h e set-Ling
uniL 11 ,Lo the A/D converter 31, and t h e IntraRC: coni:rol
information is supplied to the i n t r a p r e d i c t i o n unit 46.
[0153j
I n step S61 in Fig. 17, the A/D cc~nverter 31 (E'ig.
10 3.4) of the encoding u n i t 12 performs A/D conversion on
the frame-based image that has been input as the current
object to be encoded. The A/D converter 33. outputs an
image that is a converted digital s i g n a l to the screen
rearrangement buffer 3 2 , and stores t h e image inLo the
15 screen rearrangement buffer 3 2 .
[0154]
I n step 562, the screen rearrangement buffer 32
rearranges the frames of the image stored i n dj.spl.aying
order, so t h a t the frames of the image are arranged i n
20 encoding order i n accordance w i t h the GOP s t r u c t u r e . The
screen rearrangement buffer 32 supplies the rearrdnged
frame-based image to the arithmetic operation u n i t 33,
t h e intra prediction u n i t 46, and the motion
prediction/compensation u n i t 47. A l s o , the SntraBC
25 control information is supp1i.ed f r o m the s e t t i n y unit 11
to the 3 , n t r a predi.ction u n i t 46.
[Ol.55]
In step 563, t h e intra prediction u n i t 46 performs
an intra prediction process in a l l candidate irltra
30 prediction modes for each PU. Thris irltra prediction
process wj.13 be described latcr h.n detail with reference
SP:3.r:# :3!-14 WOO 0
to F i q . 1 9 . That. is, accordarlce wi ti) arl j trmye read
Irom t-he screen rearranqcmcnt buffer 32 and the predicted
jmage generated as a result of the intra prediction
process, the int-ra predi-(:ti on u~1i.t 4 6 c a l . c u l ates cost
5 f u n c t i o n values of all t h e candidate i n t r a p r e d i c t i o n
modes (j.ncJ.uding the I n t r a B C prediction m o d e ) . The i n t c a
p r c d i c t i o n unit 46 then determines t h e opti.murn lin,Lra
prediction mode t h a t is the i n t r a p r e d i c t i o n mode w i t h
the smal.l.est cost function value. The i n t r a prcdictj.on
10 u n i t 46 supplies the predicted limage generated i n the
optimum i n t r a p r e d i c t i o n mode and the corresponding cost
f u n c t i o n value to t h e predicted image s e l e c t i o n unit 48.
LO1561
Meanwhile, i n step 564, t h e motion
1.5 predi.ction/compensation u n i t 47 performs a motion
prediction/cornpensation process i n a l l candidate i n t e r
predj.ction modes for each PU. The motion
prediction/compensation unit 47 also calculates c o s t
function values of a l l the candidate inter prediction
20 modes j.n accordance w i t h the image supplied from the
screen rearrangement buffer 32 and the p r e d i c t e d images,
and determines the optimum i n t e r predic,Lion mode that is
the in,Ler prediction mode with the smallest cost function
v a l u e . The motion prediction/compensatjon unit 47 then
25 supplj-es the cost function value of t h e optimum i n t e r
p r c d i c t i o n mode and the corresponding predicted image to
the predicted image sel-ection unit 48.
I 0 1 5 7 j
Tn step S 6 5 , i n accordance with t h e cost f u n c t i o n
30 values suppl.i.ed from the i n t r a prediction u n i t 46 and the
motion predict.ion/compensatton u n i t 47, the predicted
irnage selection unit 48 determines the optimum p r e d i c t - i o n
mode t-hat is t h e optj.mum i n tr:a predj ctj on mode or the
optimum i n t c r predj.ctj.on mode, whichever has t h e smaller
c:ost func-Lion value. The predicted image selection unj.t
5 48 then supplies the predlicted jmage j.n the opl:j.mum
prediction mode to t h e a r j thmetic operation unri.t 33 and
the addition unit 40.
[0158j
I n step S65, t h e predi.cted image s e l . e c t i c ~ nu nit 48
10 determlines whether the optimum prediction mode is the
optimum inter prediction mode. If t h e o p t i m u m prediction
mode is determined to be the opti-mum inter prediction
mode in step S65, the predicted image selection u n i t 48
notifies the rnotj.on prediction/comgensation unit 47 of
15 s e l e c t i o n of the predicted image generated i n the optj-mum
j,ntes prediction mode.
[OlS9]
Then in step S66, the motion
predi.ctj.on/compensation u n i t 47 supplies the lossless
20 encoding unit 36 with the i n t e r prediction mode
information, the motion vector, and the information for
identifying the reference image, and the process moves on
to step S 6 8 .
101 601
25 If the optimum prediction mode is determi.ned not to
be t h e optimum inter prediction mode in step 265, or if
1-he optimum prediction mode is the optimum intra
prredicti.on mode, on ,!:he other hand, the predicted image
s e l e c t i o n unit 48 noti.fi.es t h e i n t r a prediction u n i t 46
30 of selection of t h e predicted i.mage generated i.n the
optimum intra prediction mode. Then in step S67, the
ink-ra prediction unit 4 6 suppl i es t.he in{.r a prediction
modc information to the lossless cncoding u n i t 36, and
t h e process moves on to step S69. If the optimum intra
p r e d i c t i o n mode is t.he I n t r a R C mode, t h e JntraBC vector
5 is also supplied to t-he lossless encoding unit 36 at this
s t a g e .
[OS.61]
In step S69, the arithmetic operation u n i t 33
performs encoding by s u b t r a c t i n g t h e predicted image
1.0 supplied from the predlicted image selection unit 48 from
the image supplied from t h e screen rearrangement buffer
32. The arithmetic operation unit 33 outputs the
r e s u l t a n t image as residual error information to the
orthogonal transform u n i t 34.
15 [0162]
In step 570, the orthogonal transform u n i t 34
performs an orthogonal transform pro-cess on the sesi.dual
error information for each TU, 'Yhe orthogonal transform
unit 34 supplies an orthogonal transform r e s u l t to t h e
20 quantization u n i t 35 after the orthogonal transform
process.
[03.63]
In step S71, t h e q u a n t i z a t i o n unit 35 quantizes the
orthogonal transform r e s u l t supplied from t h e orthogonal
25 transform u n i t 34. 'l'he quantization u n i t 35 supp1.j.e~ the
q u a n t i z e d value obtained as a r e s u l t of the quantization
to t h e 1,ossI.ess encoding u n i t 36 and the i n v e r s e
quantization u n i t 3 8 .
LO1641
30 In step 2'72, the inverse quantization unit 38
inversely quantizes t h e quantized value supplied from t h e
quanti zation uni t. 35. The invcrsc quanti ztlt..! on un.i l. 38
supplies the orthogonal transform res~rlt obtained as a
r e s u l l ; of [:he inverse quant:izati.orl 1-0 [;he i n v e r s e
orthogonal transform unit 39.
-5 [0165]
I n step 573, t h e inverse orthogonal transform unit
39 performs an inverse orthogonal t r a n s f o r m process on
the or,thogonal t r a n s f o r m resu1.l: supplied f - r o m the invcrsc
quantizatj.on unit 38 for each TU. The inverse orthogonal
10 transform u n i t 39 supplies the residual error informa1:ion
obtained as a r e s u l t of the inverse orthogonal transform
process to t h e addition u n i t 40.
[0166]
In step 574, the addition unit 40 adds the residual
15 error j.nforrnation suppl.j.ed from the inverse orthogonal
transform unit 39 t o the predicted i m a g e supplied from
the predicted image sel.ecti.on unit 4'8, to perform
decoding. The addition unit 40 suppl.ies the decoded
image to the deblocking f i l t e r 4 1 and t h e frame memory 44.
20 [OlQ7]
I n step S75, the deblocking f i l t e r 41 performs a
deblocking f i l t e r i n g process on the decoded image
supplied from the addition unit 40. The deblocking
filter 4 1 supplies t h e resultant image to the adaptive
25 o f f s e t f i l t e r 42.
[0168]
In step S 7 6 , the adaptive o f f s e t filter 42 performs,
for each LCU, an adaptive o f f s e t filtering process on the
image suppSi.ed from the deblocki.ng filter 41. The
30 adaphive offset filter 42 suppl.jes the r e s u l t a n t image to
the adaptive loop f i l t e r 43. Thc adaptive offsct filter
42 also supplies l:he o f f s e t filtcr n is also subjected to t h c lossless
encoding.
[0172]
In step S 8 0 , the lossless encoding unit 36 performs
5 lossless encoding on t h e quantized value supp7ietJ. Lrom
the quantization unlit 3 5 . Thc lossless encoding u n i t 36
thcn generates encoded data from t h e encoding information
subjected to t h e lossless encoding i n the procedure i n
step S78 and the quantized value subjected t o t h e
10 lossless encoding, and supplies the encoded data to t h e
accumulati.on buffer 37.
[01.73]
In step S81, the accumulation b u f f e r 37 temporarily
stores the encoded data supplied from the lossless
15 encoding unit 36.
[ 0 17 4 ]
In step 582, i n accordance w i t h the encoded data
stored in the accumulation buffer 37, t h e rate control
u n i t 49 controls the quantigation operation rate of the
20 quantization u n i t 35 so as not to cause an overlllow or
underflow. The process then r e t u r n s to step S1.2 ,111 Fig.
15, and moves on to step S13.
Referring now to the flowchart i n Fig. 19, the
25 i n t r a prediction process of step 563 i n Fig. 17 is
described in d e t a i l . The I n t r a B C control inforrnati.on,
such as sps - crossslice - intraBC - enable - f l a g ,
i n t r a - BC - ref - prev - slice - f l a g , and
in,l.raBC - ref: - prev - slice - num, is suppl.j.ed from the setting
30 u n i t 11 to the i n t r a prediction unit 46.
In sl-ep S91, the i n t r a prcdiction unlt 46 divides a
p i c t u r e i n t o slices. Tri sl-ep S92, the i nt.rd predic:t.ion
unit 46 performs i n t r a predj cti.on in predj-cti on modes
other t h a n Lhe 1 n l : r a B C mode, to calculate cost function
5 valucs.
[0177]
In step 593, the intra prediction unit 46
determines whether sps - crossslice - in1:raBC - enable - f l a g is
1. If sps - crossslice -- i n t r a R C - enable - f l a g is determined
10 to be 1 in step 593, the process moves on to step S94.
[0178]
In step S94, the i n t r a prediction u n i t 4 6 searches
for a rnoti.on vector of L n t r a B C . I n step S95, the i n t r a
prediction unit 46 determines whether the search in the
15 search range has been completed. If it is determined in
step S95 that the search in t h e search range has not been
completed, the process moves on to step S96.
[0179]
I n step S96, the intra prediction unit 46 changes
20 search points. In step 597, the l i n t r a p r e d i c t i o r ~ unit 4 6
determines wheLher the search point changed from Lhe
former one i n step S96 is located within the c u r r e n t
sl ice.
[0180j
25 If the search point j.s determined not to be located
i n t h e slice in step S9'1, the process moves on to step
S98. I n step 598, the i n t r a p r e d i c t i o n u n i t 46
determines whcthcr i n t r a - BC - ref - prev - slice - flag i s 1. If
intra - BC - ref - prev - slice - f l a g is determined t o be 1 in
30 step S98, the process moves on t-o step S99.
S P 3 5 8 3 5 4 WOO 0
In stel) S99, the iril:r;i prediction unjt 46
determines whether thc position of the search point is
wli.tll.i.ri {.he range designated by inLraE3C: - ref - prev - slice - num.
{01023
5 If the position of the search point is determined
not to be within the range designated by
intraBC rcf prev slj-ce nurn i.n step S99, the process
- , -
r e t u r n s to s t e p S96, and the procedures t h e r e a f t e r are
repeated. If i n , t r a- B C- r ef -p rev- s lice- f lag is determined
10 not to bc 1 i n step S98, t h e process al.so r e t u r n s I,o step
S96, and the procedures thereafter are repeated.
[0183]
If t h e position o f the search poi.nt is determined
to be wiLhin the range designated by
15 i n t r a R C - ref - prev - slice - num i n step S99, the process moves
on to step S100. If the search point is determined to be
located in t h e slice i n step S97, the process also moves
on to step S l 0 0 .
lo1841
20 I n step 5100, the intra prediction unit 46
ca3,culates a cost function value in t h e I n t r a B C rr~ode.
Thc I n t r a B C vector corresponding to t h e small.est cost in
the I n t r a B C mode is stored i n a memory (not shown). In
step S101, the i n t r a prediction unit 46 determines
25 whether t h e cost f u n c t i o n value calculated in step SlOO
is srnallcr than the smallest cost.
CLAIMS
1. (amended) An image enc(>diriy device comprising :
a setting unit configured to set control
5 in1ormal:ion for controllri.x~y in-screen motion prediction
in a referable range, the referable range including at
least a CTU located immediately above a current CTU, and
a CTU located on an upper riykl; side of the current CTU;
an encoding u n i t configured to encode an image to
10 generate a bitstream i n accordance with the con,Lrol
i.nforrnatj.on set by the s e t t i n g unit; and
a transmission u n i t confj.gured to transmit the
control inForrnation set by the s e t t i n g u n i t and t h e
bitstream generated by the encoding u n i t .
15
2. The image encoding device according to claim I,
wherein the setting u n i t sets a reference permission f l a g
as the control information, the reference permission flag
i n d i c a t i n g a germissi.on for reference to a result o f , .
20 decoding of a current slice and a slice before the
current slice i n a raster scan ocder.
3. The image encoding device according t o claim 2,
wherein the setting u n i t sets the reference permission
25 flag i n a p i c t u r e parameter set ( P P S ) .
4 . The image encoding device according to claim 2 ,
wherein t h e setting u n i t sets a parameter as the control
information, the parameter indicating the number of
30 previous slices having a referable decoding r e s u l t .
5. Thc imaqc encoding device accordinq to claim 2,
wherein I-he sel.l.ing unit sets an on/off flag as Lhe
conLrol i nforma t: j 011, the on/of f f l a y j-r1dlicat.i ng whether
thc in-scrccn motion predi.ction across the slices can be
5 performed,
6. The image encoding device according to claim 5,
wherein the s e t t i n g unit sets the on/off flag i n one of a
sequence parameter set (SPS) and a video parameter set
10 (VPS) .
7 . The image encoding devicc according to claim 2,
wherein, when wavefront parallel processing (WPP) i s "on",
the setting u n i t I j . m i t s a range of the reference, and
15 sets t h e reference permission flag.
8 . The image encoding device according to claim 2,
wherein, when t i l e divi.ding is 'on", the setting uni'l:
sets the reference permission f l a g .
20
9. The image encoding device according to clajrn 2,
wherein, when temporal motion constrained t i l e set SEI
(MCTS-SEI) is "on", t h e setting unit sets the reference
permission f l a g to "off".
25
10, (amended) The image encoding dcvicc according to
claim 2 , wherejn, when wavefront parallel processing
(WPP) is "on", the s e t l - i n g u n i t sets control information
for controlling in-screen motion predictjon in a
30 referable range, t h e referable range bejng t h e CTU
located immediately abovc t h e c u r r e n t CTU and the CTU
1 oc:ate(i or] t h e upper r i g h t side o f t h e cur r er-lt CTII.
11. (amended) The i m a g e encoding device according to
claim 2, wherein the referable range exists in slices.
12. (amended) An image encoding method implemented by
an image encoding device,
the image encoding method comprising:
s e t t i n g control information for controlling in-
10 screen motion prediction i n a referable ranye, t h e
referable range including a t least a CTU located
immediate3y above a c u r r e n t CTU, and a CTU located on an
upper r i g h t side of the current CTU;
encoding an image t o generate a bitstream in
15 accordance w j . t h the set control information; and
transmitting t h e sell control information and the
generated bitstream,
13. (amended) An image decoding device comprising-:
20 arl extraction u n i t configured to extrac't control
informati.on from a bitstream generated by encoding an
image, the control i n f o r m a t i o n being desjgned for
controlltng in-screen motion prediction in a referable
range, ,the referable range including at least a CTU
25 located i.mediate1.y' above a c u r r e n t CTU, and a CTU
located on an upper r i g h t side of the current CTU; and
a decoding u n i t configured to decode the bj.ts,Lrearn
to generate an image, usjng the control information
extracted by t h e extraction u n i t .
30
1 4 . (amended) The iniage decoding device according to
r : l ~ i m 13, wherein the extrdcl ion u n i t e x t r a c t s a
ref crence per mi ssion *lag as t h e control iri1orma Lion, t h e
rctcrcnce perrnissi on f l a g indicatinq a permj s s i on for
rererence to a r e s u l t o f decoding of a current slicc and
5 a s l i c e before t h e current slice i n a r a s t e r scan order.
1.5. (amended) The image decoding device according t o
claim 14, wherej-n the e x t r a c t i o n unj t extracLs the
reference permission flag f r o m a p i c t u r e parameter set
l o ( P P S ) .
16. (amended) The image decoding device according to
claim lAQ, wherein the e x t r a c t i o n unit e x t r a c t s a
parameter as the control information, the parameter
15 indicating the number of previous s l i c e s havi.ng a
rcfcrable decoding r e s u l t .
17. (amended) The image decoding device according to
claim 1 4 , wherein the e x t r a c t i o n u n i t extracts an on/off
20 flag as the control information, the on/off f l a g
indicating whether the in-screen motion p r e d i c t i o n across
t h e s1,ices can be performed.
18. (amended) The image decoding device according to
25 c l a i m 17, wherein the e x t r a c t i o n u n i t e x t r a c t s the on/off
f l a g from one of a sequence parameter set (SPS) and a
video paraneter set (VPS) .
1 9 . (amended) The image decoding device according to
30 claim 14, wherein, when wavefront parallel processing
(WPP) is "on", the e x t r a c t i o n u n i t limits a range of the
rcfercnce, and extcacLs the reIerence perrnisslon f l a q .
2 0, (amended) The image decodinq device according to
claim 14, wherein, when t i l e dividing is "on", the
5 exLraction unit extracts thc reference permission f l a g .
21. (added) The i.mage decoding device according to c1ali.m
1 4 , wherein, when temporal motion constrained tile s ~ t
SEI (MCTS-SET) is "on", the extraction unit extracts t h e
10 reference permission flag sell to "off".
22. {added) The image decoding device accordj.ng to claim
14, wherein, when wavefront p a r a l l e l processing (WPR) is
"on", t h e e x t r a c t i o n unit extracts control information
15 for contro3.ling in-screen motion predj.cti.on j.n a
referable range, t h e referable range being the CTU
located j.mmediately above the current CTU and the CTU
located on the upper right side of t h e c u r r e n t CTU.
20 23. (added) The image decoding device according to clairn
1 4 , wherein tile referable range exists in slices.
24. (added) An image decoding method implemented by an
image decoding device,
the image decoding method comprising :
e x t r a c t i n g control information from a bitstream
generated by encoding an image, Lhe control information
being designed for controlling in-screen motion
prediction i n a referable range, the referable range
30 including at l e a s t a CTU located immedjately above a
current CTU, and a CTU located on an upper r i g h t s i d e of
t h e c u r r e n t CTU; and
decodi.ng the bitstream to g e n e r a t e an image, using
the extracted control information.
| # | Name | Date |
|---|---|---|
| 1 | Priority Document [12-12-2016(online)].pdf | 2016-12-12 |
| 2 | Power of Attorney [12-12-2016(online)].pdf | 2016-12-12 |
| 3 | Form 5 [12-12-2016(online)].pdf | 2016-12-12 |
| 4 | Form 3 [12-12-2016(online)].pdf | 2016-12-12 |
| 5 | Form 1 [12-12-2016(online)].pdf | 2016-12-12 |
| 6 | Drawing [12-12-2016(online)].pdf | 2016-12-12 |
| 7 | Description(Complete) [12-12-2016(online)].pdf_472.pdf | 2016-12-12 |
| 8 | Description(Complete) [12-12-2016(online)].pdf | 2016-12-12 |
| 10 | abstract.jpg | 2017-01-21 |
| 11 | Other Patent Document [28-01-2017(online)].pdf | 2017-01-28 |
| 12 | 201617042342-OTHERS-300117.pdf | 2017-02-01 |
| 13 | 201617042342-Correspondence-300117.pdf | 2017-02-01 |
| 14 | Form 3 [03-05-2017(online)].pdf | 2017-05-03 |
| 15 | 201617042342-FORM18 [30-04-2018(online)].pdf | 2018-04-30 |
| 16 | 201617042342-OTHERS [08-01-2021(online)].pdf | 2021-01-08 |
| 17 | 201617042342-FER_SER_REPLY [08-01-2021(online)].pdf | 2021-01-08 |
| 18 | 201617042342-DRAWING [08-01-2021(online)].pdf | 2021-01-08 |
| 19 | 201617042342-CORRESPONDENCE [08-01-2021(online)].pdf | 2021-01-08 |
| 20 | 201617042342-COMPLETE SPECIFICATION [08-01-2021(online)].pdf | 2021-01-08 |
| 21 | 201617042342-CLAIMS [08-01-2021(online)].pdf | 2021-01-08 |
| 22 | 201617042342-ABSTRACT [08-01-2021(online)].pdf | 2021-01-08 |
| 23 | 201617042342-FER.pdf | 2021-10-17 |
| 24 | 201617042342-US(14)-HearingNotice-(HearingDate-25-01-2024).pdf | 2023-12-28 |
| 25 | 201617042342-FORM-26 [19-01-2024(online)].pdf | 2024-01-19 |
| 26 | 201617042342-Correspondence to notify the Controller [19-01-2024(online)].pdf | 2024-01-19 |
| 27 | 201617042342-Written submissions and relevant documents [09-02-2024(online)].pdf | 2024-02-09 |
| 28 | 201617042342-PatentCertificate14-02-2024.pdf | 2024-02-14 |
| 29 | 201617042342-IntimationOfGrant14-02-2024.pdf | 2024-02-14 |
| 1 | SearchstrategyE_10-07-2020.pdf |