CN102860006A - Managing predicted motion vector candidates - Google Patents

Managing predicted motion vector candidates Download PDF

Info

Publication number
CN102860006A
CN102860006A CN2010800657403A CN201080065740A CN102860006A CN 102860006 A CN102860006 A CN 102860006A CN 2010800657403 A CN2010800657403 A CN 2010800657403A CN 201080065740 A CN201080065740 A CN 201080065740A CN 102860006 A CN102860006 A CN 102860006A
Authority
CN
China
Prior art keywords
pmv
candidate
motion vector
pmv candidate
coding
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
CN2010800657403A
Other languages
Chinese (zh)
Other versions
CN102860006B (en
Inventor
T.鲁泽尔特
K.安德森
P.韦纳施坦
J.斯特伦
R.斯约贝格
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.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of CN102860006A publication Critical patent/CN102860006A/en
Application granted granted Critical
Publication of CN102860006B publication Critical patent/CN102860006B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Landscapes

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

Abstract

There is provided a method of managing PMV candidates. The method comprises selecting a set of PMV candidates as a subset of the previously coded motion vectors. The method further comprises assigning a code value to each PMV candidate in the set of PMV candidates. The code values vary in length and are assigned to the PMV candidates in order of expected usage such that the PMV candidate having the highest expected usage has one of the shortest code values.

Description

The management prognostic motion vector candidate
Technical field
The application relates to management PMV candidate's method, video encoder, video decoding apparatus and computer-readable medium.
Background technology
Nearest video encoding standard is based on the hybrid coding principle, and it comprises the motion-compensated time prediction of frame of video and the coding of frame residual signals.For effective motion-compensated time prediction, the motion of the block of pixels of crossing over frame is described with block-based motion model.For each motion compensation block is assigned a motion vector (for single predictability time prediction, for example in the P frame) or two motion vectors (for two predictability time predictions, for example in the B frame).These motion vectors of coding and frame residual signals in video bit stream.
Under high compression ratio (or equivalently, under low video bit speed), the major part in the amount of the total position of motion vector coding cost, especially all the more so in such as the nearest video encoding standard H.264/AVC of using little motion compensation block size.Usually, use the harmless predictability coding of motion vector, that is, the following part of the coding of motion vector MV forms: at first, and for the vector that is about to coding makes up motion vector prediction value PMV; Then, the poor DMV between translatory movement vector and the motion vector prediction value, wherein DMV=MV-PMV.
In H.264/AVC, derive PMV by the intermediate value of the motion vector of three space adjacent blocks.Other method considers that also time adjacent block (that is, being co-located in the consecutive frame) carries out motion vector prediction.Replacement makes up PMV with unalterable rules, has proposed up-to-date method, and they are the PMV that will use among the signaling PMV candidate collection PMV_CANDS expressly.Although this requires extra position to come a candidate in the signaling set, it generally speaking can save the position for the motion vector coding, because the DMV coding can be more effective.That is, sign PMV and signaling DMV can be than the position of signaling MV cost less independently.
The efficient of the motion vector encoding scheme of use PMV candidate signaling depends on the well-formedness of the available candidate among the PMV_CANDS.That is, the structure of candidate list has major effect to coding efficiency.Existing method is used usually from the motion vector of spatial loop around piece or time adjacent block (being co-located at the piece in the consecutive frame).This structure of PMV_CANDS, namely only consider that a few can be suboptimum around piece as the source of motion vector prediction value.
The quantity of candidate among the PMV_CANDS, namely " length " of PMV_CANDS also has major effect to code efficiency.Reason is, candidate's quantity is larger, and the desired figure place of one of signaling candidate is also larger, and this causes extra expense and therefore reduce compression efficiency.There is candidate's (for example, the motion vector that the space is adjacent) of fixed qty effective for the coding of frame of video or sequence among the existing method hypothesis PMV_CANDS, and only when some candidates are identical, just can reduces candidate's quantity.
The motion vector coding can require to have the available bit rate (ABR) of remarkable ratio in Video coding.The quantity of improving the PMV candidate can reduce the size of the difference (DMV) of necessary signaling, but requires more signaling to identify specific PMV.Therefore, in order to improve Video coding efficient, require Innovative method and equipment to manage the PMV candidate.
" An efficient motion vector coding scheme based on minimum bitrate prediction " (IEEE Trans. Image Proc. that Sung Deuk Kim and Jong Beom Ra deliver, the 8th volume, the 8th phase, in August, 1999,1117-1120 page or leaf) a kind of motion vector coding techniques based on the minimum bit rate prediction has been described.From three cause and effect nearby motion vectors, select predicted motion vector, so that it can produce minimum bit rate in the difference motion vector coding.Then, coded prediction error or difference motion vector and be used for to determine the decoder place predicted motion vector pattern information and they are transmitted in order.
" Competition-Based Scheme for Motion Vector Selection and Coding " (Video Coding Experts Group (VCEG) of ITU-Telecommunications Standardization Sector of Joel Jung and Guillaume Laroche, document number VCEG-AC06, Klagenfurt, Austria, in July, 2006) a kind of method for reducing the movable information cost in the Video coding has been described.Disclosing two places that the selection of motion vector prediction value is made revises: the improvement of the prediction of the motion vector that need to transmit; And for increasing the skip mode of the quantity that does not require the macro block that sends any movable information.
The people's such as Jung US 2009/0129464 relates to adaptive coding and decoding.The document has been described a kind of method for transmitting image section, relies on the method, in analysis of encoding contextual coding stage, adjusts the parameter that can be used for a group anticipation function of encoding.Use selected anticipation function to form the first prediction descriptor.Determine and transmit remainder between the first prediction descriptor and the current descriptor.
Summary of the invention
A kind of PMV of management candidate's method is provided.The method comprise with the PMV candidate collection be chosen as be before the subset of motion vector of coding.Each PMV candidate that the method also is included as in the PMV candidate collection assigns a code value.These code values change on length to some extent, and the order of using according to expection is assigned to the PMV candidate, have one of short code value so that have PMV candidate that the highest expection uses.
Above method allows with a less PMV candidate who comes signaling more frequently to use.This provides the increase of code efficiency.
The code value that is assigned to each PMV candidate can comprise any code system that produces the code word with variation length.For example, can according to the following one of them assigns code value at least: arithmetic coding; Variable length code; And the adaptive arithmetic code of based on the context.
Can from the PMV candidate collection, remove any unnecessary PMV candidate.This guarantees that the length of tabulating can be very long necessarily, and length is long can to reduce code efficiency.If at least one condition in meeting the following conditions can determine that so the PMV candidate is unnecessary: the PMV candidate is the duplicate of another PMV candidate in the set; The PMV candidate is through determining in existing PMV candidate's threshold distance; And because at least one alternative PMV candidate will allow to use position still less to come encoding motion vector, so the PMV candidate never can use.
In addition, cause the maximum N of a requirement extra bits any single motion vector of encoding if remove certain PMV Candidate Set credit union from the PMV candidate list, wherein N is predetermined threshold, can determine that so this PMV candidate collection is unnecessary.Removing the PMV candidate collection from the PMV candidate list allows to use shorter code and therefore comes signaling to remain the PMV candidate with position still less.But, from the PMV candidate list, removing the PMV candidate collection and will cause some motion vectors to have larger difference vector, this will require more position to encode.On the mean value of several motion vectors, signaling uses which PMV candidate's saving can surpass the desired maximum N extra bits of some motion vectors of signaling.
Before assigning code value, can make according to the expection of PMV the PMV candidate in the PMV candidate collection is sorted.Subsequently, code value can be assigned to PMV candidate in sorted lists.Can assign code value according to the order of ordered entries, so that the length of the code value of assigning not is to reduce with the increase of the position of PMV candidate in tabulation.
Can identify the PMV candidate by the scan pattern that the before set of encoding block is used.Scan pattern can identify specific.Can be by the scan pattern that is disposed in order of expection use.Can be by the scan pattern that is disposed in order of the increase of the distance of each home block and current block.
Each PMV candidate can be corresponding to being used for the before motion vector of piece of coding, and described before piece and current block are in a distance.Can come in order code value to be assigned to the PMV candidate according to PMV candidate's corresponding before piece and the distance of current block.
Distance can be measured by Euclidean distance or Chebyshev's distance.Euclidean distance can by get current block and before square root sum square of the difference of the x position between the piece and y position obtain.Can be by carrying out by an Euclidean distance square ordering according to the Euclidean distance ordering, square root function can not affect ordering.Absolute value sum by following difference provides manhatton distance: current block and the x coordinate difference of piece before; And current block and the y coordinate difference of piece before.Chebyshev's distance definition is two the greater in the value, and first value is current block and the absolute value of the x coordinate difference of piece before, and second value is current block and the absolute value of the y coordinate difference of piece before.
At first, can the PMV candidate be sorted according to Chebyshev's distance; Then, can the PMV candidate with identical Chebyshev's distance further be sorted according to Euclidean distance.This permission is effectively sorted the PMV candidate.
Can adopt the method to carry out Video coding or video decode, wherein current block is the piece of encoding respectively or decoding.
A kind of video encoder that comprises processor also is provided, processor be arranged to the PMV candidate collection be chosen as be before the subset of motion vector of coding.Each PMV candidate that processor also is arranged as in the PMV candidate collection assigns a code value, wherein these code values change on length to some extent, and the order of using according to expection is assigned to the PMV candidate, has one of short code value so that have PMV candidate that the highest expection uses.
A kind of video decoding apparatus that comprises processor also is provided, processor be arranged to the PMV candidate collection be chosen as be before the subset of motion vector of coding.Each PMV candidate that processor also is arranged as in the PMV candidate collection assigns a code value, wherein these code values change on length to some extent, and the order of using according to expection is assigned to the PMV candidate, has one of short code value so that have PMV candidate that the highest expection uses.
A kind of computer-readable medium that carries instruction also is provided, and these instructions make described computer logic carry out any method disclosed herein when being carried out by computer logic.
This paper also is provided for making up the several different methods of PMV candidate list PMV_CANDS.With the candidate among PMV_CANDS ordering, and with one of candidate's among the PMV_CANDS use from the encoder signaling to decoder.This signaling is arranged so that as the first candidate in the tabulation assigns short code word among the candidate, and has the non-code word (obviously, any other equivalence mapping of the candidate on the code word is same applicable) that reduces length for the subsequently candidate in the tabulation assigns.Then, use the combination of several methods, structure PMV_CANDS set is so that arrange for the most useful candidate of prediction towards the starting point of tabulation.And, use these methods, the candidate in the selective listing is so that they allow effectively encoding motion vector, and if only have several such candidates to use, reduce so the size of tabulating, so that can reduce the length for the code word of signaling candidate's use.At last, introduction is used for the effectively method of signaling PMV candidate's use.
In addition, provide a kind of method for encoding motion vector, the method comprises: sign PMV candidate collection; Determine that specific PMV candidate has such coordinate figure, these coordinate figures are so that for having less than the x coordinate of this specific PMV candidate's coordinate figure or the motion vector of y coordinate, and the alternative PMV candidate in the PMV candidate collection can be with this motion vector of encoding of position still less; Determine and to come encoding motion vector with this specific PMV candidate; Difference vector is calculated as poor between motion vector and the specific PMV; And coding difference vector and non-coded identification position.
In addition, provide a kind of method for the decoding moving vector, the method comprises: the identity that receives the PMV candidate; Receive the not difference of tape symbol position; Possible value of symbol based on difference is determined a plurality of potential motion vectors; Determine the encode lowest order cost solution of the potential motion vector that identifies with available PMV candidate; And the PMV candidate's that identifies of choice for use motion vector.Comprise one not in the situation of the DMV of the difference of tape symbol position in reception, find two potential motion vectors.Comprise two not in the situation of the DMV of the difference of tape symbol position in reception, find four potential motion vectors.
By using the method, identified some situations, the symbol of difference component (xdiff or ydiff) can only be got a value thus.Why can do like this is because system selects the position cost is down to minimum PMV candidate.If the symbol of difference component is unknown, two possible motion vectors are arranged so.In some cases, system can identify, and can use indicated PMV to become original one of them motion vector of coding with minimum bit, and use different PMV to become original another motion vector of coding with minimum bit.Therefore, system can be that hypothesis can use indicated PMV to become the symbol of original encoding motion vector with minimum bit with the symbol logo of difference.Therefore, for some PMV candidate, need not to transmit at least sign bit of one of them of relevant difference component, thereby reduce the position cost and improve code efficiency.
Description of drawings
Just illustrate to describe Innovative method and equipment for management PMV candidate referring now to accompanying drawing, in the accompanying drawing:
Fig. 1 illustrates Video coding and transfer system;
Fig. 2 a and Fig. 2 b are illustrated in respectively the use of Code And Decode period P MV candidate list;
Fig. 3 illustrates two PMV candidates' example;
Fig. 4 illustrates the position cost that comes encoding motion vector with the example motion vector of Fig. 3; And
Fig. 5 illustrates method disclosed herein.
Embodiment
Fig. 1 illustrates video coding system, and wherein the vision signal from source 110 finally is delivered to device 160.The encoder 120 that comprises processor 125 from the vision signal process in source 110.120 pairs of vision signals of encoder are used cataloged procedure in order to create the video flowing of coding.The video flowing of coding sends to conveyer 130, and in conveyer 130, before transmitting, it can receive the further processing such as packetizing.Receiver 140 receives the encoded video streams that transmits, and it is passed to decoder 150.Decoder 150 comprises processor 155, adopts processor 155 when the decoding and coding video flowing.Decoder 150 outputs to device 160 with decoded video flowing.
Method disclosed herein is carried out in encoder during encoding, and also carries out in decoder during decoding.Even in encoder, finish the generation of signaling bit, also can do like this.During decoding, decoder is resolved these positions and is imitated encoder in order to realize that encoder/decoder is synchronous.Because abideing by identical rule, encoder creates and revises the PMV candidate collection, so the corresponding PMV candidate list that is stored in the encoder keeps synchronously.Still can under some environment, carry out the signaling of expressing of PMV candidate list.
Described method hypothesis is come encoding motion vector (MV) 210 with the predictability coding techniques, wherein uses predicted motion vector (PMV) 220 to predict MV 210, and finds predicated error or difference (DMV) 230 according to DMV=MV-PMV.With DMV 230 from encoder 120 signalings to decoder 150.In addition, sending code " index " 250 in order to select specific PMV candidate, is from 242 of PMV candidate list (that is, the PMV_CANDS shown in Fig. 2 a 240) in the case.Index 250 can be with the motion vector MV 210 of each transmission, be together disposable transmission of each sub-block (for example, 8 * 8 block of pixels).Equally, can send index for motion vector group (for example, each macro block (16 * 16)).
PMV candidate list PMV_CANDS(240) have N element, that is, PMV_1(241), PMV_2(242), PMV_3(243) etc.Tabulation PMV_CANDS 240 can similarly obtain at encoder 120 and decoder 150 places.Use the index that transmits, decoder 150 can be determined employed PMV 220 in encoder, shown in Fig. 2 b, and therefore can reconstruct MV=DMV+PMV.
There are two main operations to be used for structure PMV candidate collection 240, that is, and initialization and renewal.
" initialization " means certain predefine state of setting up tabulation.The PMV_CANDS list initialization can be tabulated (zero clauses and subclauses) or has the tabulation such as one or more predefine clauses and subclauses of null vector (0,0) for for example sky." renewal " means to the one or more motion vectors of existing PMV_CANDS tabulation interpolation.The motion vector MV of coding before renewable PMV_CANDS tabulates to comprise.At the encoder place, when coding during current block, except any predefined initialization vector, PMV_CANDS can comprise with video in before the motion vector that is associated of the piece of coding.By the possible candidate among the PMV_CANDS being constrained to the vector of encoding before the predefine vector sum, decoder can adopt the method identical with encoder to derive tabulation PMV_CANDS.
Alternatively, can one or more motion vector candidate of not encoding before be added in the PMV_CANDS tabulation at the encoder place, then will those motion vectors expressly signaling to decoder using with PMV_CANDS, thereby so that can all upgrade in an identical manner at the encoder place PMV_CANDS.
Can be in particular current motion compensation block and dynamically generate PMV_CANDS tabulation for the motion vector MV that is associated with current motion compensation block of coding, not consider that namely the PMV_CANDS of the motion vector MV that is associated with the motion compensation block of encoding before for coding tabulates.In this case, before processing certain piece, initialization PMV_CANDS tabulation, then with encode before a plurality of or predefined motion vector upgrade.Alternatively, can (for example tabulate by disposable initialization PMV_CANDS, before the encoding and decoding of video device starts, or before processing certain frame, or after a plurality of macro blocks of in certain frame, encoding), then use it for coding more than a motion vector, its advantage is that to derive the PMV_CANDS tabulation may complicated process only need process once just codified motion vector set.But, when being used for coding more than a motion vector, can after one of encoding motion vector, upgrade again the PMV_CANDS tabulation.For example, at first can tabulate the motion vector MV that encodes and be associated with the first motion compensation block with PMV_CANDS, then can for example upgrade PMV_CANDS(with vector M V, MV is added in the tabulation), then with PMV_CANDS second motion compensation block of encoding.Upgrade subsequently PMV_CANDS by the motion vector with coding, upgrade tabulation according to sliding window method.
During Video coding, can keep one or more PMV_CANDS tabulations according to sliding window method, for example one of each frame type, one of each macro block (mb) type or each reference frame are one.When coding during with two motion vectors that two prediction motion compensation pieces are associated, can use single or two different PMV_CANDS tabulate.
Process with motion vector that current motion compensation block is associated before, can tabulate by the PMV_CANDS that uses the motion vector that is associated with piece on every side to upgrade be used to the current motion vector of encoding.
Renewable PMV_CANDS tabulation, so that insert the motion vector (with less position signaling) that is associated with close motion compensation block towards the starting point of PMV_CANDS tabulation, and can towards the end insertion of PMV_CANDS tabulation with than away from the motion vector that is associated of motion compensation block.How far comprise from may measuring of current block for determining that motion compensation block has: Euclidean distance (dx 2+ dy 2, wherein dx and dy are respectively the distances on x and the y direction); Manhatton distance (the absolute value sum | dx|+|dy|); Or Chebyshev distance (the maximum max in the absolute value (| dx|, | dy|), it be called again maxima metric, chessboard distance, frame distance, L Tolerance (L-infinitely great tolerance) or L Benchmark).For this reason, can carry out outwards scanning with the acquisition motion vector around current block, thereby upgrade PMV_CANDS.During at least one condition in meeting the following conditions, scanning can stop:
-scanned all pieces of present frame,
-scanned all pieces of the subsequently frame (for example, last frame) of predefine quantity,
-in case reach certain distance,
-in case find unique PMV candidate of predefine quantity,
-scanned all pieces of predetermined scan pattern.
Note, can insert by the end in the PMV_CANDS tabulation unique vector and come to avoid in outside scanning with tabulation to make tabulation keep ordering by distance-taxis, wherein the hithermost vector in space is positioned at the tabulation first place.
Motion vector to be added to the PMV_CANDS tabulation can comprise the space of current block or time neighbours or space and/or time neighbours' combination, the H.264/AVC type median predictor that for example derives based on the space adjacent block.
As considering that the predefine neighbours come scanning motion vector candidate's alternative approach, can for the set of each motion vector or motion vector (for example, macro block) from the encoder signaling therefore to decoder (and dynamically determine at encoder), whether the motion vector that is associated adds the PMV_CANDS tabulation to.
Mechanism set being used for determining motion vector candidate can dynamically determine at the encoder place combination of a mechanism or mechanism, will determine that then signaling is to decoder.
The quantity of candidate among restriction and/or the minimizing PMV_CANDS can help to reduce the expense that signaling carries out motion vector prediction with which PMV, because tabulation is shorter, the code word of requirement is also just shorter.In addition, constraint is added some candidate and can be added other more useful candidate by vacating space.
A kind of measure for reducing number of candidates is to avoid repeating identical motion vector in given PMV_CANDS tabulation.If this can be when upgrading tabulation compares and find to repeat with addible new vector then to remove repetition vectorial or skip new vector and carry out by the candidate in tabulation.Preferably skip new vector; Otherwise, can cause the end that the candidate of higher order in the tabulation is put into tabulation from the subsequently repetition away from piece.
Remove or skip new motion vector and can carry out for similar but not identical motion vector equally, for example have the motion vector measured less than the similarity of predefine threshold value pair, wherein to measure can be Euclidean distance (x to similarity 0-x 1) 2+ (y 0-y 1) 2Or absolute distance | x 0-x 1|+| y 0-y 1|, (x wherein 0, y 0) and (x 1, y 1) be the motion vector pair in considering.Alternative air line distance is measured, and another kind of method is to pay close attention to given encoding scheme to come the desired figure place of distance between the encoding motion vector.
And, the quantity that the quantity of the candidate among the PMV_CANDS can be restricted to predefine or dynamically obtain.Possible is, in case reach this quantity, just with the interpolation additional candidate, the terminal candidate of removable PMV_CANDS tabulation then.Why can do like this is because candidate list is sorted so that determine that the terminal PMV candidate of tabulation is the candidate that least may use.
Alternatively, from PMV_CANDS tabulation remove the candidate can by for example send be used for from the identifier (for example, index) that tabulation removes the code of motion vector candidate and this motion vector come from encoder expressly signaling to decoder (and therefore dynamically being determined by encoder).
To solve now the order of the motion vector candidate in the how to confirm candidate list.Suppose the candidate among the PMV_CANDS is sorted, and signaling is predicted with one of candidate among the PMV_CANDS, so that for the first candidate in the tabulation assigns short code word among the candidate, and for assigning, the subsequently candidate in the tabulation has the non-code word that reduces length.When upgrading the PMV_CANDS tabulation, can use following methods, in order to adopt the mode that is of value to overall code efficiency that the candidate is sorted.
● compare with the motion vector that belongs to away from the piece of current block, will obtain position near the starting point of tabulation corresponding to the motion vector near the piece of current block (using certain distance metric).
● the motion vector that is associated with the piece of last coding is placed on the starting point (short code word) of tabulation.Alternatively, current block is placed on the starting point of tabulation such as the combination candidate of median predictor (or like that) H.264/AVC.The method and PMV_CANDS list size dynamically adjusted for example guaranteed estimated performance of median predictor H.264/AVC of combined permission, because possible is, the PMV_CANDS list size is set to 1, comes for the index signaling so that need not to send any position.
● can according to before candidate's's (or have the euclidean that for example is lower than the predefine threshold value or other candidate of absolute distance) the frequency of occurrences in the piece of coding with candidate's ordering, so that assign the short code word for the vector of describing the typical motion in frame of video or the sequence.Alternatively, if new candidate's duplicate in tabulation, can remove this duplicate so, and new vector be added to the starting point of tabulation, perhaps as another alternative, existing motion vector step or the multistep that can in tabulation, move up.
● can also usefully comprise the power about the motion compensation partition size, be placed on than having than those motion vectors of Xiao Quan position away from the starting point of PMV_CANDS tabulation so that have motion vector than authority.For example, from depending on the sequence of coding, the motion vector that is associated can more likely be described the meaning of the typical motion in this sequence, and the subregion that larger subregion can be smaller is more credible.Therefore, can be for assigning than authority with the motion vector that is associated than bigdos.And, compare with the non-motion vector of skipping, can differently trust and skip motion vector, for example assign than Xiao Quan.
Alternatively, can by for example send to be used for from the identifier (for example, index) of the code of the rearrangement of the motion vector candidate of tabulation and the motion vector that will move and about this candidate is moved to signal where with the rearrangement of PMV_CANDS tabulation expressly from the encoder signaling to decoder (and therefore dynamically being determined by encoder).
When motion vector candidate being added to PMV_CANDS tabulation or obtaining motion vector candidate from the PMV_CANDS tabulation (in a rear situation, being for it is used for prediction), can make amendment to it according to predefined method.Because the modification equivalence when adding (during the coding) or obtaining (during the decoding), so can in the situation that do not lose generality and suppose, when obtaining, revise vector.This type of modification during acquisition can comprise:
● according to the frame pitch of the reference frame that uses motion vector candidate to predict from coming the convergent-divergent motion vector candidate.For example, suppose to use candidate motion vector MV among the PMV_CANDS (T-1)=(X, Y) comes to carry out motion compensated prediction, the next frame of the present frame of the video when wherein reference frame is hypothesis expression time T according to the reference frame of the video of expression time T-1 o'clock.Now, if obtain this candidate points to the video of expression time T-2 o'clock to be used for prediction the motion vector of reference frame (lower two frames of present frame) from PMV_CANDS, can with the factor of motion-vector magnitude convergent-divergent 2, be (2*X, 2*Y) so.And, if the frame of video the when candidate motion vector (X, Y) in the PMV_CANDS tabulation relates to T-2 with the frame for reference to T-1 the time, motion vector can be scaled (X/2, Y/2) so.For these two kinds of situations, the result is the repetition candidate motion vector, in the case, it can be removed.Under the linear movement hypothesis, the convergent-divergent of candidate motion vector is rational.
● similarly, when in the B frame of expression time T, obtaining motion vector prediction value MV (T-1)=(X, Y), and used this motion vector has been carried out motion compensated prediction according to left reference frame (time T-1), and when the now forecast value will be used for carrying out motion compensated prediction vectorial according to right reference frame (time T+1) for prediction, the symbol of motion vector prediction value can be opposite so, be (X ,-Y).
The candidate predictors list size can change.The quantity of candidate among restriction and/or the minimizing PMV_CANDS can help to reduce the expense that signaling carries out motion vector prediction with which PMV, because tabulation is shorter, the code word of requirement is also just shorter.On the other hand, depend on Video Sequences Characteristics, can be useful be the motion vector prediction candidate with larger amt so that for example in the situation that irregular movement save to be used for the position of DMV coding.Can come to adjust according to Video Sequences Characteristics with following methods the size of PMV_CANDS tabulation.
● can be in sheet/frame/picture header or in the header (for example, parameter set) of sequence scope the definition list size, that is, and with list size from the encoder signaling to decoder, and therefore dynamically adjusted by encoder.
● not yet be used for candidate's (according to predefine threshold value) of prediction during from tabulation, removing the piece of before coding is a plurality of, encoding, thereby reduce list size.
● can adjust list size according to the similarity of the candidate in the tabulation.For example, when upgrade when tabulation with motion vector MV, with being similar to MV(according to the distance measure such as euclidean or absolute distance, by the predefine threshold value) candidate's number count.The similar candidate of the high quantity of high counting indicator, and owing to can unnecessaryly have many similar candidates, thus removable at least one of them and reduce list size.On the other hand, the similar candidate of low quantity can indicate, and it can be useful having additional candidate, thereby can increase list size.
As mentioned above, candidate among the PMV_CANDS is sorted, and signaling uses one of candidate among the PMV_CANDS, so that for the first candidate in the tabulation assigns short code word among the candidate, and have the non-code word that reduces length for the subsequently candidate in the tabulation assigns.This type of code word can define according to for example variable length code (VLC) table.Used VLC table can depend on the maximum quantity (list size) such as the candidate among the PMV_CANDS that for example dynamically adjusts according to above method.Following table 1 has been introduced some examples that are used for the VLC code of different maximum column table sizes.Left-hand column illustrates the maximum column table size, and it is expressed as again C.In being listed as on the right, the index that the VLC code is shown and is used for the candidate of addressing PMV_CANDS tabulation.
Figure DEST_PATH_IMAGE002
Table 1: the example VLC code that is used for different maximum column table sizes.
For two prediction motion compensation pieces, two motion vectors of encoding, and therefore two PMV candidates can be necessary.In the case, can jointly encode this two PMV candidates' call number with the further minimizing index desired figure place of encoding.Table 2 illustrates the example for joint index coding, and it considers that two motion vectors use identical PMV_CANDS tabulation, and two motion vectors might use the identical predicted value in the PMV_CANDS tabulation.Here, idx0 and idx1 represent respectively the index of the first and second predicted values.VLC0 (idx, C) expression considers that the maximum column table size is the VLC of the index according to table 1 " idx " of C.
Table 2: be used for coding and two VLC codes of predicting two candidate indexs that pieces are associated,
The largest amount of C:PMV_CANDS.
From the PMV_CANDS candidate list, remove unnecessary PMV candidate.Why requirement be used for removing PMV candidate's mechanism be because, some candidates in the tabulation might use never, compare the bit sequence with shorter or equal length because select to have will provide with all possible motion vector than the candidate of short code word and its distance of encoding.In the case, they can be removed, thereby make tabulation shorter and make the average bit length of each index shorter.As alternative, possible is to insert on the contrary more candidates.Like this, it is identical that average bit length keeps, but the new candidate who inserts has the chance of use.
As an example, suppose that we have following candidate:
And, suppose our the difference DMV that encodes, (xdiff, ydiff) is wherein with following table 3 encode xdiff and ydiff.If we want the motion vector of coding such as MV=(0,2), we can use candidate 3(namely so, PMV=(0,2)) add that difference DMV=(0,0) encodes it:
PMV+DMV=MV
(0,?2)+(0,?0)=(0,?2)
Index cost four positions (code length of index 3 is four positions), and each incidental expenses in the difference takes position, and the desired total bit of MV=(0,2) of therefore encoding is 4+1+1=6.
But we also can make index of reference 0(namely, PMV=(1,2)) add difference DMV=(1,0) this vector of encoding:
(-1,?2)+(1,?0)=(0,?2)
An index cost position (code length of index 1 is a position), these cost three positions (seeing the following form 3) of the xdiff=1 in the difference, and this position of cost of ydiff=0.Therefore, we obtain altogether 1+3+1=5 position, and this is better than making index of reference 3, makes index of reference 3 require 6 positions.Easily see, suppose with following table 3 and come coding vector poor, index of reference 3 will can not benefited because make index of reference 0 will be always less or what a position.Therefore, we can eliminate candidate vector (0,2), and change into and obtaining:
Now, index 4(namely vectorial (3,4)) have than short code; It is three positions rather than four now.Therefore, if use vector (3,4), we have benefited from eliminate so, and can not lose anything again.In above example, we have removed call number is 3 PMV candidate, but those skilled in the art should be apparent, and this is an example.For example, in some cases, it also can be useful removing candidate 1 and 2.
Owing in encoder, carrying out identical analysis, in encoder, all from tabulation, remove identical vector.Therefore, after removing, encoder will all be used identical candidate list.
Sometimes, be impossible by removing that single candidate guarantees to benefit, if but eliminate simultaneously two or more candidates then be possible.Another kind of possibility is, change the candidate order or even add new candidate to tabulation and can allow to remove the candidate who has now become unnecessary, and therefore become useful, and irrelevant with the final motion vector that will encode.
Figure DEST_PATH_IMAGE010
Table 3: the cost that sends difference
Can also further reduce required figure place by not sending sign bit, why this may be because in some cases, the sign bit of difference is dispensable.For example, suppose that we have following PMV candidate list:
Figure DEST_PATH_IMAGE012
Suppose that we want to use call number is that 3 PMV candidate (being PMV=(11,3)) comes coding vector.Because call number is that 4 PMV candidate is on its right (having coordinate PMV=(12,3)), so if the x coordinate is 12 or larger, so advantageously changes into candidate 4 and encode it.As an example, can vector M V=(15,2) be encoded to candidate 3:
(11,?3)+(4,?-1)
Four positions of index cost, seven positions of+4 costs, and-1 cost three positions (seeing Table 3) spend 14 positions altogether.But, also can use candidate 4 that it is encoded to:
(12,?3)+(3,?-1)
This is four positions of index cost, and five positions of+3 costs, and three positions of-1 cost spend 12 positions altogether.Because candidate 4 will be always near any point in the right-half plane, so will advantageously select candidate 4 to this.Similarly, if we in left demifacet (as from the point between (11,3) and (12,3) as seen), so reasonable is to select candidate 3.
This means the difference designated symbols position that it be not necessary in the x component, because it will be always negative for (11,3), and will just be always for (12,3).In table 3, sign bit is last position, and except 0, it does not have sign bit.This means, if will select candidate 3 or 4, they will lack a position for coding so.
Certainly, decoder will be done same analysis, and if there is above situation, will avoid reading so sign bit.
Even the candidate abuts one another fully, even perhaps they do not have identical cost, avoid sending sign bit and remain possible, be like this for one of candidate at least.As an example, suppose that we want to use call number is PMV candidate (being PMV=(1,2)) certain value of encoding of 5.If the x coordinate of vector of coding is less than or equal to zero, use so candidate 0 instead always favourable, because it has least cost.This means, for candidate 5, needn't send the sign bit of x coordinate.But for candidate 0, the sign bit that removes the x component then is impossible.Because its index value only spends just codified of so low cost, so still can be favourable even the vector that will encode, is selected it on the right of candidate 5.
If index 0 has the cost identical with index 4, be 0 vector so for coding x coordinate, two candidates can be good equally.But under these circumstances, we can determine always to use minimum index, and therefore still can avoid sending sign bit when selecting index 4.If vector is arranged in identical row (as mentioned above) or in fact in same column, so possible is never to have the time spent to derive the universal expression formula when sending sign bit, as described below.
With reference to figure 3, suppose that (therefore, By=Ay), and the distance between them is D, so Bx=Ax+D two candidate A=(Ax, Ay) and B=(Bx, By) are arranged with delegation for we.Hereinafter, we will suppose D for just, but it will be apparent to one skilled in the art that if we with A and B switch, it is also effective so.Also suppose, the index that transmits candidate A can never spend than the more cost of index that transmits candidate B, that is, cost (A_index)<=cost (B_index), wherein cost (A_index) is the cost that transmits the index that is associated with candidate A.The cost statement that sends the difference k on the x direction is shown cost_x (k).For example, according to table 3, cost_x (3) equals 5.
Now, if cost (A_index)-cost (B_index)+cost_x (D-1)-3<=0, we needn't send the sign bit of candidate B so.As an example, if A=(11,2), B=(13,2), and A_index is 1, and B_index is 0001, and so D=2, and cost (A_index)-cost (B_index)+cost_x (D-1)-3 equals 1-4+3-3=-2, it is less than 0, so we need not to send the sign bit of B.This example shown in Fig. 4, wherein x axle and y axle illustrate x and the y component of motion vector.Each frame table among Fig. 4 shows a motion vector; The encode position cost of corresponding sports vector with PMV candidate A is shown on the left side of frame, and the encode cost of corresponding sports vector with PMV candidate B is shown on the right of frame.Can see from Fig. 4, be 12 or less MV for the x component, and the most effective PMV that use is A, and be 13 or larger MV for the x component, and the most effective PMV that use is B.
In an embodiment of the solution that proposes, we use maximum four candidates in the tabulation.But in another embodiment, we use seven, and limit without maximum in principle.If we allow larger maximum, tabulation can increase so, and can find the chance of suitable vector to increase.On the other hand, the required figure place of designate candidate vector also increases.On this, problem is, can represent a plurality of vectors with several candidates, and this is unnecessary.This redundant representation develops into and adds more vector.
A kind of method of avoiding this redundant representation is the quantity of the vector that may encode with each candidate vector of constraint.For example, possible is to retrain certain candidate so that the motion vector that it can only be encoded and be equal to this candidate or differ in one direction a step.This can be undertaken by the mode that changes the coding difference.Usually, with table 3 difference of encoding, wherein x and y are encoded separately.As an alternative, we can use following short table:
Figure DEST_PATH_IMAGE014
This affined differential coding can be used for the candidate greater than certain index.For example, have index 3 or more all candidates of massive index can encode in this way.
This has at least two advantages:
1) coding of difference becomes very short, this why be well because, signaling the index 3 or more cost of massive index is quite high; And
2) in any case the candidate can better motion vector cost position with not encoding with some other candidate vector in covering.Thereby alleviate above-mentioned redundancy problem.
Fig. 5 illustrates the method according to the application.510, from the set of the motion vector that uses before, select the PMV candidate collection.Those motion vectors that the motion vector that before uses uses during the coding of piece before in frame.520, can from set, remove the PMV candidate of repetition.530, use the PMV candidate in gathering to sort according to expection.Expection is with calculating based on the video of nearest coding.The expection with can with certain distance measure according to current block with determine as the propinquity of the piece of motion vector with the PMV candidate.540, code value is assigned to the PMV candidate, these code values change on length to some extent.Short code value is assigned to has the PMV candidate that the highest expection is used.Code value subsequently has the non-length that reduces.
Method and apparatus described herein has improved the code efficiency of the motion vector prediction scheme of using signaling motion vector prediction value.
The definite order and the content that it will be apparent to one skilled in the art that the action of carrying out in method described herein can change according to the requirement of specific execution parameter set.Therefore, describe and/or the order of claimed action should not be understood as strict restriction to the order of the action that will carry out.
In addition, although provide example in the context of specific coding standard, these examples are not will be as the restriction of disclosed method and apparatus coding standard applicatory.For example, although in context H.264/AVC, provide particular instance, any coded system that principle disclosed herein also can be applicable to MPEG2 system, other coding standard and in fact use predicted motion vector.

Claims (13)

1. the method for a management prognostic motion vector candidate (PMV candidate), described method comprises:
With the PMV candidate collection be chosen as be before the subset of motion vector of coding;
For each the PMV candidate in the described PMV candidate collection assigns a code value, wherein said code value changes on length to some extent, and the order of using according to expection is assigned to described PMV candidate, has one of short code value so that have PMV candidate that the highest expection uses.
2. as the described method of any aforementioned claim, the code value that wherein is assigned to each PMV candidate be according to the following one of them is assigned at least: arithmetic coding; Variable length code; And the adaptive arithmetic code of based on the context.
3. method as claimed in claim 1 or 2, described method also comprise remove unnecessary PMV candidate from described PMV candidate collection.
4. such as the described method of any aforementioned claim, described method also comprises according to expection to be made the PMV candidate in the described PMV candidate collection is sorted.
5. such as the described method of any aforementioned claim, wherein obtain PMV candidate's expection use according to the frequency of utilization of PMV.
6. such as the described method of any aforementioned claim, wherein each PMV candidate is corresponding to being used for the before motion vector of piece of coding, piece and current block and wherein obtain PMV candidate's expection use in a distance before described according to the distance of piece before PMV candidate corresponding and current block.
7. such as claim 5 or 6 described methods, wherein said distance is measured by Euclidean distance.
8. such as claim 5 or 6 described methods, wherein said distance is measured by Chebyshev's distance.
9. method as claimed in claim 8 wherein is assigned to described code value the PMV candidate with common Chebyshev's distance according to the Euclidean distance with PMV candidate of common Chebyshev's distance.
10. such as the described method of any aforementioned claim, described method is used for Video coding or video decode, and wherein current block is the piece of encoding respectively or decoding.
11. a video encoder that comprises processor, described processor is arranged to:
With the PMV candidate collection be chosen as be before the subset of motion vector of coding;
For each the PMV candidate in the described PMV candidate collection assigns a code value, wherein said code value changes on length to some extent, and the order of using according to expection is assigned to described PMV candidate, has one of short code value so that have PMV candidate that the highest expection uses.
12. a video decoding apparatus that comprises processor, described processor is arranged to:
With the PMV candidate collection be chosen as be before the subset of motion vector of coding;
For each the PMV candidate in the described PMV candidate collection assigns a code value, wherein said code value changes on length to some extent, and the order of using according to expection is assigned to described PMV candidate, has one of short code value so that have PMV candidate that the highest expection uses.
13. a computer-readable medium that carries instruction, described instruction make described computer logic carry out the defined any method of claim 1 to 10 when being carried out by computer logic.
CN201080065740.3A 2010-02-05 2010-12-23 Management prognostic motion vector candidate Active CN102860006B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US30164910P 2010-02-05 2010-02-05
US61/301649 2010-02-05
PCT/EP2010/070680 WO2011095260A1 (en) 2010-02-05 2010-12-23 Managing predicted motion vector candidates

Publications (2)

Publication Number Publication Date
CN102860006A true CN102860006A (en) 2013-01-02
CN102860006B CN102860006B (en) 2016-11-23

Family

ID=43587322

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080065740.3A Active CN102860006B (en) 2010-02-05 2010-12-23 Management prognostic motion vector candidate

Country Status (5)

Country Link
US (3) US20110194608A1 (en)
EP (2) EP2532160A1 (en)
CN (1) CN102860006B (en)
BR (1) BR112012019560B1 (en)
WO (2) WO2011095260A1 (en)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109644272A (en) * 2016-09-06 2019-04-16 高通股份有限公司 Geometric type priority for construction candidate list
CN110313180A (en) * 2017-01-03 2019-10-08 交互数字Vc控股公司 Method and apparatus for coding and decoding motion information
WO2019223746A1 (en) * 2018-05-23 2019-11-28 Mediatek Inc. Method and apparatus of video coding using bi-directional cu weight
CN110662059A (en) * 2018-06-29 2020-01-07 北京字节跳动网络技术有限公司 Concept of using one or more look-up tables to store previously encoded motion information in order and using them to encode subsequent blocks
CN110662043A (en) * 2018-06-29 2020-01-07 北京字节跳动网络技术有限公司 Interaction between LUTs and AMVPs
CN110662052A (en) * 2018-06-29 2020-01-07 北京字节跳动网络技术有限公司 Updating conditions of a look-up table (LUT)
CN110662054A (en) * 2018-06-29 2020-01-07 北京字节跳动网络技术有限公司 Partial/full pruning when adding HMVP candidates to Merge/AMVP
CN110719465A (en) * 2018-07-14 2020-01-21 北京字节跳动网络技术有限公司 Extending look-up table based motion vector prediction with temporal information
CN110855993A (en) * 2018-08-21 2020-02-28 华为技术有限公司 Method and device for predicting motion information of image block
WO2020057504A1 (en) * 2018-09-17 2020-03-26 Mediatek Inc. Methods and apparatuses of combining multiple predictors for block prediction in video coding systems
CN110933440A (en) * 2018-09-19 2020-03-27 北京字节跳动网络技术有限公司 Intra mode coding based on historical information
WO2020164544A1 (en) * 2019-02-13 2020-08-20 Beijing Bytedance Network Technology Co., Ltd. Updating of history based motion vector prediction tables
CN111801944A (en) * 2018-03-26 2020-10-20 华为技术有限公司 Video image encoder, video image decoder and corresponding motion information encoding method
WO2020224639A1 (en) * 2019-05-09 2020-11-12 Beijing Bytedance Network Technology Co., Ltd. Improvement on hmvp table
US20200413044A1 (en) 2018-09-12 2020-12-31 Beijing Bytedance Network Technology Co., Ltd. Conditions for starting checking hmvp candidates depend on total number minus k
CN112567748A (en) * 2018-08-16 2021-03-26 高通股份有限公司 History-based candidate list with classification
US11122266B2 (en) 2018-11-02 2021-09-14 Beijing Bytedance Network Technology Co., Ltd. Table maintenance for HMVP candidate storage
US11134244B2 (en) 2018-07-02 2021-09-28 Beijing Bytedance Network Technology Co., Ltd. Order of rounding and pruning in LAMVR
US11134267B2 (en) 2018-06-29 2021-09-28 Beijing Bytedance Network Technology Co., Ltd. Update of look up table: FIFO, constrained FIFO
US11140385B2 (en) 2018-06-29 2021-10-05 Beijing Bytedance Network Technology Co., Ltd. Checking order of motion candidates in LUT
US11140383B2 (en) 2019-01-13 2021-10-05 Beijing Bytedance Network Technology Co., Ltd. Interaction between look up table and shared merge list
US11146785B2 (en) 2018-06-29 2021-10-12 Beijing Bytedance Network Technology Co., Ltd. Selection of coded motion information for LUT updating
US11159807B2 (en) 2018-06-29 2021-10-26 Beijing Bytedance Network Technology Co., Ltd. Number of motion candidates in a look up table to be checked according to mode
US11589071B2 (en) 2019-01-10 2023-02-21 Beijing Bytedance Network Technology Co., Ltd. Invoke of LUT updating
US11641483B2 (en) 2019-03-22 2023-05-02 Beijing Bytedance Network Technology Co., Ltd. Interaction between merge list construction and other tools
US11956464B2 (en) 2019-01-16 2024-04-09 Beijing Bytedance Network Technology Co., Ltd Inserting order of motion candidates in LUT
US12034914B2 (en) 2021-12-01 2024-07-09 Beijing Bytedance Network Technology Co., Ltd Checking order of motion candidates in lut

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100939917B1 (en) 2008-03-07 2010-02-03 에스케이 텔레콤주식회사 Encoding system using motion estimation and encoding method using motion estimation
JP5368631B2 (en) 2010-04-08 2013-12-18 株式会社東芝 Image encoding method, apparatus, and program
US9510009B2 (en) 2010-05-20 2016-11-29 Thomson Licensing Methods and apparatus for adaptive motion vector candidate ordering for video encoding and decoding
SG187851A1 (en) 2010-09-24 2013-03-28 Panasonic Corp Image coding method, image decoding method, image coding apparatus, and image decoding apparatus
KR20120068743A (en) 2010-12-17 2012-06-27 한국전자통신연구원 Method for inter prediction and apparatus thereof
GB2486901B (en) * 2010-12-29 2014-05-07 Canon Kk Video encoding and decoding with improved error resilience
US20130301734A1 (en) * 2011-01-12 2013-11-14 Canon Kabushiki Kaisha Video encoding and decoding with low complexity
GB2487200A (en) 2011-01-12 2012-07-18 Canon Kk Video encoding and decoding with improved error resilience
US9532066B2 (en) * 2011-01-21 2016-12-27 Qualcomm Incorporated Motion vector prediction
US9319716B2 (en) * 2011-01-27 2016-04-19 Qualcomm Incorporated Performing motion vector prediction for video coding
EP3136727B1 (en) 2011-04-12 2018-06-13 Sun Patent Trust Motion-video coding method and motion-video coding apparatus
EP3337172B1 (en) 2011-05-24 2020-09-09 Velos Media International Limited Image encoding method, image encoding apparatus
ES2703799T3 (en) 2011-05-27 2019-03-12 Sun Patent Trust Image decoding procedure and image decoding device
US9485518B2 (en) * 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
CA2834191C (en) 2011-05-31 2019-04-09 Panasonic Corporation Video encoding method, video encoding device, video decoding method, video decoding device, and video encoding/decoding device
BR122020013893B1 (en) 2011-05-31 2022-08-23 JVC Kenwood Corporation MOBILE IMAGE ENCODING DEVICE AND MOBILE IMAGE ENCODING METHOD
SG194746A1 (en) 2011-05-31 2013-12-30 Kaba Gmbh Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device
GB2491589B (en) * 2011-06-06 2015-12-16 Canon Kk Method and device for encoding a sequence of images and method and device for decoding a sequence of image
CN105915914B (en) * 2011-06-24 2018-12-11 寰发股份有限公司 Remove the method and apparatus of redundancy in motion vector predictor
CN106851269B (en) * 2011-06-30 2019-11-15 太阳专利托管公司 Picture decoding method and device, image encoding method and device, coding and decoding device
IN2014CN00729A (en) 2011-08-03 2015-04-03 Panasonic Corp
US9300975B2 (en) * 2011-09-11 2016-03-29 Texas Instruments Incorporated Concurrent access shared buffer in a video encoder
IN2014CN02602A (en) 2011-10-19 2015-08-07 Panasonic Corp
AU2012325419B2 (en) 2011-10-19 2015-11-05 Hfi Innovation Inc. Method and apparatus for derivation of motion vector predictor candidate set
AU2011379313A1 (en) * 2011-10-21 2014-05-22 Nokia Technologies Oy Method for video coding and an apparatus
US9571833B2 (en) 2011-11-04 2017-02-14 Nokia Technologies Oy Method for coding and an apparatus
US20130114717A1 (en) * 2011-11-07 2013-05-09 Qualcomm Incorporated Generating additional merge candidates
WO2013099288A1 (en) * 2011-12-28 2013-07-04 株式会社Jvcケンウッド Video encoding device, video encoding method and video encoding program, and video decoding device, video decoding method and video decoding program
US20130188715A1 (en) * 2012-01-09 2013-07-25 Qualcomm Incorporated Device and methods for merge list reordering in video coding
CN108055547B (en) * 2012-01-19 2021-10-08 韩国电子通信研究院 Method and apparatus for image encoding/decoding
US9426463B2 (en) * 2012-02-08 2016-08-23 Qualcomm Incorporated Restriction of prediction units in B slices to uni-directional inter prediction
US9451277B2 (en) 2012-02-08 2016-09-20 Qualcomm Incorporated Restriction of prediction units in B slices to uni-directional inter prediction
US9635356B2 (en) 2012-08-07 2017-04-25 Qualcomm Incorporated Multi-hypothesis motion compensation for scalable video coding and 3D video coding
CN102883163B (en) * 2012-10-08 2014-05-28 华为技术有限公司 Method and device for building motion vector lists for prediction of motion vectors
EP3058736B1 (en) 2013-10-14 2019-02-27 Microsoft Technology Licensing, LLC Encoder-side options for intra block copy prediction mode for video and image coding
KR102257269B1 (en) 2013-10-14 2021-05-26 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 Features of intra block copy prediction mode for video and image coding and decoding
US9432685B2 (en) 2013-12-06 2016-08-30 Qualcomm Incorporated Scalable implementation for parallel motion estimation regions
KR102353787B1 (en) * 2014-01-03 2022-01-19 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 Block vector prediction in video and image coding/decoding
US10390034B2 (en) 2014-01-03 2019-08-20 Microsoft Technology Licensing, Llc Innovations in block vector prediction and estimation of reconstructed sample values within an overlap area
US11284103B2 (en) 2014-01-17 2022-03-22 Microsoft Technology Licensing, Llc Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning
RU2657210C2 (en) 2014-03-04 2018-06-08 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Block flipping and skip mode in intra block copy prediction
US20150264361A1 (en) * 2014-03-13 2015-09-17 Huawei Technologies Co., Ltd. Method for screen content coding
US10785486B2 (en) 2014-06-19 2020-09-22 Microsoft Technology Licensing, Llc Unified intra block copy and inter prediction modes
MX2017004211A (en) 2014-09-30 2017-11-15 Microsoft Technology Licensing Llc Rules for intra-picture prediction modes when wavefront parallel processing is enabled.
US10462457B2 (en) 2016-01-29 2019-10-29 Google Llc Dynamic reference motion vector coding mode
US10397600B1 (en) * 2016-01-29 2019-08-27 Google Llc Dynamic reference motion vector coding mode
WO2017131908A1 (en) * 2016-01-29 2017-08-03 Google Inc. Dynamic reference motion vector coding mode
GB2547754B (en) 2016-01-29 2020-08-26 Google Llc Dynamic reference motion vector coding mode
FR3051309A1 (en) * 2016-05-10 2017-11-17 Bcom METHODS AND DEVICES FOR ENCODING AND DECODING A DATA STREAM REPRESENTATIVE OF AT LEAST ONE IMAGE
US10291928B2 (en) 2017-01-10 2019-05-14 Blackberry Limited Methods and devices for inter-prediction using motion vectors for video coding
EP3410717A1 (en) 2017-05-31 2018-12-05 Thomson Licensing Methods and apparatus for candidate list pruning
US10602180B2 (en) * 2017-06-13 2020-03-24 Qualcomm Incorporated Motion vector prediction
US10986349B2 (en) 2017-12-29 2021-04-20 Microsoft Technology Licensing, Llc Constraints on locations of reference blocks for intra block copy prediction
US10812810B2 (en) * 2018-02-06 2020-10-20 Tencent America LLC Method and apparatus for video coding in merge mode
WO2019234607A1 (en) 2018-06-05 2019-12-12 Beijing Bytedance Network Technology Co., Ltd. Interaction between ibc and affine
EP4307671A3 (en) 2018-06-21 2024-02-07 Beijing Bytedance Network Technology Co., Ltd. Sub-block mv inheritance between color components
WO2019244117A1 (en) 2018-06-21 2019-12-26 Beijing Bytedance Network Technology Co., Ltd. Unified constrains for the merge affine mode and the non-merge affine mode
KR102648120B1 (en) * 2018-06-29 2024-03-18 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Reset lookup table per slice/tile/LCU row
US10743016B2 (en) 2018-07-06 2020-08-11 Mediatek Inc. Inherited motion information for decoding a current coding unit in a video coding system
US11006143B2 (en) * 2018-07-11 2021-05-11 Apple Inc. Motion vector candidate pruning systems and methods
WO2020055287A1 (en) * 2018-09-10 2020-03-19 Huawei Technologies Co., Ltd. Video decoder and methods
US10958932B2 (en) * 2018-09-12 2021-03-23 Qualcomm Incorporated Inter-prediction coding of video data using generated motion vector predictor list including non-adjacent blocks
CN110944170B (en) 2018-09-24 2023-05-02 北京字节跳动网络技术有限公司 Extended Merge prediction
CN112806010A (en) * 2018-10-02 2021-05-14 交互数字Vc控股公司 Method and apparatus for video encoding and decoding using predictor candidate list
EP3857888A4 (en) * 2018-10-06 2022-08-03 HFI Innovation Inc. Method and apparatus of shared merge candidate list region for video coding
JP2022506162A (en) 2018-11-06 2022-01-17 北京字節跳動網絡技術有限公司 Position-dependent storage device for motion information
JP7391958B2 (en) 2018-11-08 2023-12-05 オッポ広東移動通信有限公司 Video signal encoding/decoding method and equipment used in the method
PL3860123T3 (en) * 2018-11-08 2024-05-13 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for encoding/decoding image signal, and device for same
KR20210089155A (en) 2018-11-10 2021-07-15 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Rounding in the fairwise average candidate calculation
EP4236320A3 (en) 2018-12-06 2023-10-11 LG Electronics Inc. Method and device for processing video signal on basis of inter prediction
RU2770863C1 (en) * 2018-12-28 2022-04-22 ДжейВиСиКЕНВУД Корпорейшн Frame encoding device, frame encoding method, frame decoding device and frame decoding method
BR112021012435A8 (en) 2018-12-28 2022-08-02 Jvckenwood Corp IMAGE DECODING DEVICE, IMAGE DECODING METHOD AND IMAGE DECODING PROGRAM
KR20230158635A (en) 2018-12-28 2023-11-20 고도 가이샤 아이피 브릿지 1 Image encoding apparatus, image encoding method, recording medium, image decoding apparatus, image decoding method, storing method and transmitting method
US11683501B2 (en) * 2019-01-17 2023-06-20 Tencent America LLC Method and apparatus for video coding
CN113906760A (en) * 2019-06-05 2022-01-07 北京字节跳动网络技术有限公司 Motion information derivation for inter-prediction
CN113992914B (en) * 2019-09-24 2023-04-14 Oppo广东移动通信有限公司 Inter-frame prediction method and device, equipment and storage medium
US11595678B2 (en) * 2020-06-11 2023-02-28 Tencent America LLC Spatial displacement vector prediction for intra picture block and string copying
US11330296B2 (en) 2020-09-14 2022-05-10 Apple Inc. Systems and methods for encoding image data
US20230094825A1 (en) * 2021-09-28 2023-03-30 Qualcomm Incorporated Motion vector difference sign prediction for video coding

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090304084A1 (en) * 2008-03-19 2009-12-10 Nokia Corporation Combined motion vector and reference index prediction for video coding

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7609765B2 (en) * 2004-12-02 2009-10-27 Intel Corporation Fast multi-frame motion estimation with adaptive search strategies
US20060153299A1 (en) * 2005-01-07 2006-07-13 Kabushiki Kaisha Toshiba Coded video sequence conversion apparatus, method and program product for coded video sequence conversion
US8913660B2 (en) * 2005-04-14 2014-12-16 Fastvdo, Llc Device and method for fast block-matching motion estimation in video encoders
FR2896118A1 (en) 2006-01-12 2007-07-13 France Telecom ADAPTIVE CODING AND DECODING
KR101383540B1 (en) * 2007-01-03 2014-04-09 삼성전자주식회사 Method of estimating motion vector using multiple motion vector predictors, apparatus, encoder, decoder and decoding method
US8098962B2 (en) * 2007-11-20 2012-01-17 Kabushiki Kaisha Toshiba Signal processing method, apparatus, and program
RU2553062C2 (en) * 2009-06-19 2015-06-10 Франс Телеком Method and apparatus for encoding and decoding image information

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090304084A1 (en) * 2008-03-19 2009-12-10 Nokia Corporation Combined motion vector and reference index prediction for video coding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LAROCHE G.ET: "RD Optimized Coding for Motion Vector Predictor Selection", 《IEEE》 *

Cited By (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109644272A (en) * 2016-09-06 2019-04-16 高通股份有限公司 Geometric type priority for construction candidate list
CN110313180A (en) * 2017-01-03 2019-10-08 交互数字Vc控股公司 Method and apparatus for coding and decoding motion information
CN110313180B (en) * 2017-01-03 2023-05-23 交互数字麦迪逊专利控股公司 Method and apparatus for encoding and decoding motion information
CN111801944B (en) * 2018-03-26 2021-10-22 华为技术有限公司 Video image encoder, decoder and corresponding motion information encoding method
CN111801944A (en) * 2018-03-26 2020-10-20 华为技术有限公司 Video image encoder, video image decoder and corresponding motion information encoding method
US11895291B2 (en) 2018-05-23 2024-02-06 Hfi Innovation Inc. Method and apparatus of video coding using bi-directional CU weight
WO2019223746A1 (en) * 2018-05-23 2019-11-28 Mediatek Inc. Method and apparatus of video coding using bi-directional cu weight
US11146786B2 (en) 2018-06-20 2021-10-12 Beijing Bytedance Network Technology Co., Ltd. Checking order of motion candidates in LUT
US11909989B2 (en) 2018-06-29 2024-02-20 Beijing Bytedance Network Technology Co., Ltd Number of motion candidates in a look up table to be checked according to mode
US11528500B2 (en) 2018-06-29 2022-12-13 Beijing Bytedance Network Technology Co., Ltd. Partial/full pruning when adding a HMVP candidate to merge/AMVP
US11895318B2 (en) 2018-06-29 2024-02-06 Beijing Bytedance Network Technology Co., Ltd Concept of using one or multiple look up tables to store motion information of previously coded in order and use them to code following blocks
US11973971B2 (en) 2018-06-29 2024-04-30 Beijing Bytedance Network Technology Co., Ltd Conditions for updating LUTs
US11877002B2 (en) 2018-06-29 2024-01-16 Beijing Bytedance Network Technology Co., Ltd Update of look up table: FIFO, constrained FIFO
US11245892B2 (en) 2018-06-29 2022-02-08 Beijing Bytedance Network Technology Co., Ltd. Checking order of motion candidates in LUT
US11706406B2 (en) 2018-06-29 2023-07-18 Beijing Bytedance Network Technology Co., Ltd Selection of coded motion information for LUT updating
US11695921B2 (en) 2018-06-29 2023-07-04 Beijing Bytedance Network Technology Co., Ltd Selection of coded motion information for LUT updating
CN110662054A (en) * 2018-06-29 2020-01-07 北京字节跳动网络技术有限公司 Partial/full pruning when adding HMVP candidates to Merge/AMVP
CN110662059B (en) * 2018-06-29 2021-04-20 北京字节跳动网络技术有限公司 Method and apparatus for storing previously encoded motion information using a lookup table and encoding subsequent blocks using the same
CN110662052A (en) * 2018-06-29 2020-01-07 北京字节跳动网络技术有限公司 Updating conditions of a look-up table (LUT)
US11153557B2 (en) 2018-06-29 2021-10-19 Beijing Bytedance Network Technology Co., Ltd. Which LUT to be updated or no updating
US11159817B2 (en) 2018-06-29 2021-10-26 Beijing Bytedance Network Technology Co., Ltd. Conditions for updating LUTS
CN110662052B (en) * 2018-06-29 2022-07-08 北京字节跳动网络技术有限公司 Updating conditions of a look-up table (LUT)
US11134267B2 (en) 2018-06-29 2021-09-28 Beijing Bytedance Network Technology Co., Ltd. Update of look up table: FIFO, constrained FIFO
US11140385B2 (en) 2018-06-29 2021-10-05 Beijing Bytedance Network Technology Co., Ltd. Checking order of motion candidates in LUT
US11528501B2 (en) 2018-06-29 2022-12-13 Beijing Bytedance Network Technology Co., Ltd. Interaction between LUT and AMVP
US11146785B2 (en) 2018-06-29 2021-10-12 Beijing Bytedance Network Technology Co., Ltd. Selection of coded motion information for LUT updating
CN110662043A (en) * 2018-06-29 2020-01-07 北京字节跳动网络技术有限公司 Interaction between LUTs and AMVPs
US11159807B2 (en) 2018-06-29 2021-10-26 Beijing Bytedance Network Technology Co., Ltd. Number of motion candidates in a look up table to be checked according to mode
CN110662059A (en) * 2018-06-29 2020-01-07 北京字节跳动网络技术有限公司 Concept of using one or more look-up tables to store previously encoded motion information in order and using them to encode subsequent blocks
US11134243B2 (en) 2018-07-02 2021-09-28 Beijing Bytedance Network Technology Co., Ltd. Rules on updating luts
US11153558B2 (en) 2018-07-02 2021-10-19 Beijing Bytedance Network Technology Co., Ltd. Update of look-up tables
US11153559B2 (en) 2018-07-02 2021-10-19 Beijing Bytedance Network Technology Co., Ltd. Usage of LUTs
US11134244B2 (en) 2018-07-02 2021-09-28 Beijing Bytedance Network Technology Co., Ltd. Order of rounding and pruning in LAMVR
US11463685B2 (en) 2018-07-02 2022-10-04 Beijing Bytedance Network Technology Co., Ltd. LUTS with intra prediction modes and intra mode prediction from non-adjacent blocks
CN110719465B (en) * 2018-07-14 2022-11-22 北京字节跳动网络技术有限公司 Extending look-up table based motion vector prediction with temporal information
CN110719465A (en) * 2018-07-14 2020-01-21 北京字节跳动网络技术有限公司 Extending look-up table based motion vector prediction with temporal information
CN112567748A (en) * 2018-08-16 2021-03-26 高通股份有限公司 History-based candidate list with classification
CN110855993A (en) * 2018-08-21 2020-02-28 华为技术有限公司 Method and device for predicting motion information of image block
US20200413044A1 (en) 2018-09-12 2020-12-31 Beijing Bytedance Network Technology Co., Ltd. Conditions for starting checking hmvp candidates depend on total number minus k
US11997253B2 (en) 2018-09-12 2024-05-28 Beijing Bytedance Network Technology Co., Ltd Conditions for starting checking HMVP candidates depend on total number minus K
US11159787B2 (en) 2018-09-12 2021-10-26 Beijing Bytedance Network Technology Co., Ltd. Conditions for starting checking HMVP candidates depend on total number minus K
US20210297659A1 (en) 2018-09-12 2021-09-23 Beijing Bytedance Network Technology Co., Ltd. Conditions for starting checking hmvp candidates depend on total number minus k
US11997311B2 (en) 2018-09-17 2024-05-28 Hfi Innovation Inc. Methods and apparatuses of combining multiple predictors for block prediction in video coding systems
WO2020057504A1 (en) * 2018-09-17 2020-03-26 Mediatek Inc. Methods and apparatuses of combining multiple predictors for block prediction in video coding systems
CN110933440A (en) * 2018-09-19 2020-03-27 北京字节跳动网络技术有限公司 Intra mode coding based on historical information
CN110933412A (en) * 2018-09-19 2020-03-27 北京字节跳动网络技术有限公司 History-based motion vector predictor for intra block replication
US11870980B2 (en) 2018-09-19 2024-01-09 Beijing Bytedance Network Technology Co., Ltd Selection of adjacent neighboring block for intra coding
US11503284B2 (en) 2018-09-19 2022-11-15 Beijing Bytedance Network Technology Co., Ltd. Intra mode coding based on history information
CN110933412B (en) * 2018-09-19 2023-07-25 北京字节跳动网络技术有限公司 History-based motion vector predictors for intra block copying
CN110933440B (en) * 2018-09-19 2023-08-29 北京字节跳动网络技术有限公司 Method, apparatus, and non-transitory computer readable medium for video processing
US11765345B2 (en) 2018-09-19 2023-09-19 Beijing Bytedance Network Technology Co., Ltd Multiple prediction blocks for one intra-coded block
US11700371B2 (en) 2018-11-02 2023-07-11 Beijing Bytedance Network Technology Co., Ltd Table maintenance for HMVP candidate storage
US11122266B2 (en) 2018-11-02 2021-09-14 Beijing Bytedance Network Technology Co., Ltd. Table maintenance for HMVP candidate storage
US11589071B2 (en) 2019-01-10 2023-02-21 Beijing Bytedance Network Technology Co., Ltd. Invoke of LUT updating
US11140383B2 (en) 2019-01-13 2021-10-05 Beijing Bytedance Network Technology Co., Ltd. Interaction between look up table and shared merge list
US11909951B2 (en) 2019-01-13 2024-02-20 Beijing Bytedance Network Technology Co., Ltd Interaction between lut and shared merge list
US11956464B2 (en) 2019-01-16 2024-04-09 Beijing Bytedance Network Technology Co., Ltd Inserting order of motion candidates in LUT
US11962799B2 (en) 2019-01-16 2024-04-16 Beijing Bytedance Network Technology Co., Ltd Motion candidates derivation
WO2020164544A1 (en) * 2019-02-13 2020-08-20 Beijing Bytedance Network Technology Co., Ltd. Updating of history based motion vector prediction tables
US11863771B2 (en) 2019-02-13 2024-01-02 Beijing Bytedance Network Technology Co., Ltd Updating of history based motion vector prediction tables
US11641483B2 (en) 2019-03-22 2023-05-02 Beijing Bytedance Network Technology Co., Ltd. Interaction between merge list construction and other tools
CN113812165A (en) * 2019-05-09 2021-12-17 北京字节跳动网络技术有限公司 Improvements to HMVP tables
WO2020224639A1 (en) * 2019-05-09 2020-11-12 Beijing Bytedance Network Technology Co., Ltd. Improvement on hmvp table
US12034914B2 (en) 2021-12-01 2024-07-09 Beijing Bytedance Network Technology Co., Ltd Checking order of motion candidates in lut

Also Published As

Publication number Publication date
BR112012019560A2 (en) 2020-08-18
EP2532159A1 (en) 2012-12-12
CN102860006B (en) 2016-11-23
EP2532160A1 (en) 2012-12-12
US20170064299A1 (en) 2017-03-02
US20110194609A1 (en) 2011-08-11
WO2011095259A1 (en) 2011-08-11
US20110194608A1 (en) 2011-08-11
WO2011095260A1 (en) 2011-08-11
BR112012019560B1 (en) 2021-08-24

Similar Documents

Publication Publication Date Title
CN102860006A (en) Managing predicted motion vector candidates
CN102656890B (en) For the method and apparatus of Video coding
CN101379816B (en) Temporal error concealment for bi-directionally predicted frames
CN102065290B (en) Video decoding apparatus, method of storing motion vector information and memory distribution method
CN101335896B (en) Predicting motion vectors for fields of forward-predicted interlaced video frames
CN110169061A (en) The merging patterns of multiple hypothesis
WO2012057583A2 (en) Video information encoding method and decoding method
CN104768011A (en) Image encoding and decoding method and related device
CN103026709A (en) Coding of inter prediction modes and of reference picture list indexes for video coding
CN103891281A (en) Detecting availabilities of neighboring video units for video coding
CN102934434A (en) Method and apparatus of temporal motion vector prediction
CN103380622A (en) Intra prediction mode encoding/decoding method and apparatus for same
CN103636220A (en) Method and apparatus of intra mode coding
JP7448558B2 (en) Methods and devices for image encoding and decoding
CN104717512A (en) Coding and decoding method and device for forward double-hypothesis coding image blocks
CN100551064C (en) Variable length encoding method and device
TWI784916B (en) Image decoding device, image decoding method, recording medium storing image decoding program, image encoding device, image encoding method, and recording medium storing image encoding program
CN102055987B (en) Error concealment method and device for macroblock subjected to decoding error
CN103959788A (en) Estimation of motion at the level of the decoder by matching of models
CN105049854A (en) Methods for encoding and decoding a picture and corresponding devices
CN110636290B (en) Video image motion vector encoding/decoding method and encoder/decoder
KR100906473B1 (en) Advanced Method for coding and decoding motion vector and apparatus thereof
KR100668463B1 (en) Method for Selecting Multiple Reference Frame in Moving Pictures Data Encoding
CN110868611A (en) Video encoding and decoding method and device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1180161

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1180161

Country of ref document: HK