CN107770527A - Use neighbouring coding parameter and the data compression method and device of nearest coding parameter - Google Patents

Use neighbouring coding parameter and the data compression method and device of nearest coding parameter Download PDF

Info

Publication number
CN107770527A
CN107770527A CN201710715886.1A CN201710715886A CN107770527A CN 107770527 A CN107770527 A CN 107770527A CN 201710715886 A CN201710715886 A CN 201710715886A CN 107770527 A CN107770527 A CN 107770527A
Authority
CN
China
Prior art keywords
neighbouring
primitive
decoding
coding
parameter
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
CN201710715886.1A
Other languages
Chinese (zh)
Other versions
CN107770527B (en
Inventor
林涛
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.)
Shanghai Tianhe Electronic Information Co Ltd
Original Assignee
Shanghai Tianhe Electronic Information Co Ltd
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 Shanghai Tianhe Electronic Information Co Ltd filed Critical Shanghai Tianhe Electronic Information Co Ltd
Priority to CN202111381577.8A priority Critical patent/CN114501020A/en
Publication of CN107770527A publication Critical patent/CN107770527A/en
Application granted granted Critical
Publication of CN107770527B publication Critical patent/CN107770527B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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

Abstract

The invention provides one kind according to pre-defined rule, at least using spatially neighbouring(It is including but not limited to adjacent)One or more primitives coding parameter(Referred to as proximity parameter or adjacent parameter)And/or the coding parameter of one or more primitives in encoding and decoding time sequencing recently(Referred to as nearest parameter), to the coding parameter of current primitive(Referred to as parameter current)Carry out the data compression method and device of encoding and decoding.This method and device, take full advantage of the correlation between proximity parameter and/or nearest parameter and parameter current, according to pre-defined rule, select optimal mode, reach total consumption minimum bit number and encoding and decoding are carried out to parameter current, the bit number required for data compression, particularly matching way is fundamentally reduced, greatly improves code efficiency.

Description

Use neighbouring coding parameter and the data compression method and device of nearest coding parameter
Technical field
Data are damaged or the encoding and decoding system of Lossless Compression, particularly image and regarded the present invention relates to a kind of The method and apparatus of the encoding and decoding of frequency evidence.
Background technology
As human society enters big data, cloud computing, mobile computing, cloud-mobile computing, ultra high-definition(4K)With special superelevation Clearly(8K)Video image resolution ratio, 4G/5G communications, the epoch of virtual reality, to various data, including big data, view data, Video data, carrying out the data compression of superelevation compression ratio and very high-quality turns into essential technology.
Data set is the sample value by data(Such as:Byte, bit, pixel, pixel component, spatial sampling point, transform domain system Number)Composition is arranged in certain space(One-dimensional, two-dimentional or multidimensional)The set of the finite data of shape(Such as:One dimension According to queue, a two-dimensional data files, a two field picture, a video sequence, a transform domain, a transform block, multiple conversion Block, a three-dimensional scenic, the sequence of three-dimensional scenic persistently changed).To data set, particularly two dimension or more data set Carry out the coding of data compression(And corresponding decoding)When, this data set is generally divided into some sons with predetermined shape Collection, referred to as encoding block(From the angle i.e. decoding block of decoding, encoding and decoding block is referred to as), in units of encoding and decoding block, according to Predetermined time sequencing, one piece one piece is encoded or is decoded.At any one time, the encoding block encoded is referred to as current compile Code block.At any one time, the decoding block decoded is referred to as current decoding block.Present encoding block or current decoding block are referred to as Current codec block or referred to as current block.Sample value in encoding or decode is referred to as present encoding sample value or currently decodes sample Value, referred to as current sample.
For with definite shape(Square or rectangle are not necessarily limited to, can be any rational other shapes)One Individual encoding and decoding block, need to be divided into finer primitive in many occasions(Elementary cell), according to predetermined time sequencing, One primitive, one primitive is encoded or decoded.To all sample values in a primitive, same type of coding is generally implemented Or decoding operate.At any one time, the primitive in encoding or decode is referred to as current primitive.One primitive is encoded Result is one or more coding parameters, finally produces the compressed data code stream containing these coding parameters.One primitive is carried out Decoding is exactly to parse the compressed data code stream to obtain one or more coding parameters, is answered from one or more of coding parameters Original goes out the sample value of the data of reconstruct.
The example of primitive includes encoding and decoding block(Whole block is as a primitive), sub-block, microlith, string, pixel string, sample value string, Index string, lines.
One distinguishing feature of many common data sets is that have many matchings(It is i.e. similar or even identical)Formula Sample.For example, generally there is the pixel pattern much matched in image and video sequence.Therefore, in available data compress technique generally Using matching(Also referred to as predict or compensate)Mode, that is, use " predicted value "(Also referred to as " offset " or " referring to sample value ", such as " reference pixel ")To match(Also referred to as predict, represent, representing, compensating, be approximate, approaching)Sample value in present encoding or decoding (Referred to as " current sample ")Mode reach lossless or lossy compression method the effect of data.Briefly, matching way Basic operation is exactly to replicate with reference to sample value of the sample value i.e. on reference position to the position of current sample.Therefore, matching way or Prediction mode is also referred to as copy mode.In matching way, had been subjected at least part encoding operation and be at least partially decoded The reconstruct of computing(Also referred to as rebuild or restore)Sample value forms reference set(Also referred to as reference set space or reference space or reference buffer storage). The original samples and its position that reconstruct sample value and its position among reference set are concentrated with initial data are one-to-one.
In the encoding and decoding of one current block of progress, current block is divided into some matchings by matching way(Also referred to as predict)Base Member, a Matching unit have one or more matchings(Coding)Parameter(Also referred to as matching relationship or duplication parameter or replication relation Or referring-to relation)To represent its feature.A most important parameter is displacement vector in match parameter(Also referred to as motion vector, Position skew, offset, relative position, position, relative address, address, relative coordinate, coordinate, relative indexing, index etc.).Position Move the current primitive of vector representation sample value and its refer to sample value between relative shift, be arranged in equivalent to data sample one-dimensional One-dimensional offset after data.Obviously, can be exported with reference to where the reference position of sample value from displacement vector.The displacement of current primitive Vector is referred to as current displacement vector.Other examples of match parameter:Match-type, matching length, it can not match(Prediction)Sample value, Deng.
The example of Matching unit includes encoding and decoding block, sub-block, microlith, string, pixel string, sample value string, index string, lines.
Matching way(Sometimes referred to as match-type or match pattern)Example include:Block- matching, sub-block matching, microlith Match somebody with somebody, String matching, pixel String matching, sample value String matching, index String matching, lines matching.
A kind of primitive in matching way, several subtype may be divided into according to certain characteristic(Sometimes referred to as submodule Formula)Primitive.Such as the primitive in String matching mode, following a variety of subtypes may be divided into according to the property of its reference pixel Primitive(Go here and there):
Main reference buffer area string(Primary Reference Buffer string abbreviation PRB strings),
Secondary reference buffer area string(Secondary Reference Buffer string abbreviation SRB strings),
Skew string,
Coordinate string,
Non- matched pixel(Also referred to as unpredictable pixel),
Non- matched pixel string(Also referred to as unpredictable pixel string);
The primitive of following a variety of subtypes according to the property of string length, may also be divided into(Go here and there):
General string(There is the string of random length),
Length limited string(I.e. length can only take the string of some predetermined values, as length is equal to the number of pixels of encoding and decoding block or is equal to The half of the number of pixels of encoding and decoding block).
In data compression, particularly in matching way, especially in the finer situation of Matching unit, it is more coding parameter to be present, The problem of consumption encodes compared with multi-bit to it, have impact on code efficiency.
The content of the invention
In order to solve in data compression, this problem particularly in matching way, the invention provides a kind of according to pre- Set pattern then, at least uses spatially neighbouring(Including adjacent)One or more primitives coding parameter(Referred to as proximity parameter, Adjacent situation is otherwise referred to as adjacent parameter)And/or the coding of one or more primitives in encoding and decoding time sequencing recently Parameter(Referred to as nearest parameter), to the coding parameter of current primitive(Referred to as parameter current)Carry out the data compression method of encoding and decoding And device.This method and device, take full advantage of the correlation between proximity parameter and/or nearest parameter and parameter current, root According to pre-defined rule, optimal mode is selected, reaches total consumption minimum bit number and encoding and decoding is carried out to parameter current, from basic Upper reduction data compression, the particularly bit number required for matching way, greatly improve code efficiency.
The primary technical characteristic of the present invention is to include a variety of encoding and decoding of neighbouring mode and nearest mode according to pre-defined rule, selection A pair of coding parameters of mode carry out encoding and decoding.
The coding method of the present invention or the most basic peculiar technical characteristic of device are the bit numbers according to pre-defined rule, such as consumption Number, a pair of coding parameters that selection includes a variety of coded systems of neighbouring mode and nearest mode are encoded, produced extremely The code encoding/decoding mode of few present encoding parameter containing expression(Use neighbouring mode or recently mode or other modes)Letter The compressed data code stream of breath.Fig. 1 is coding method or the schematic diagram of device of the present invention.
The coding/decoding method of the present invention or the most basic peculiar technical characteristic of device are parsing compressed data code streams, obtain at least table Show the code encoding/decoding mode of present encoding parameter(Use neighbouring mode or recently mode or other modes)Information, use Corresponding neighbouring mode or nearest mode or other modes decode to the present encoding parameter.Fig. 2 is the solution of the present invention One schematic diagram of code method or apparatus.
According to an aspect of the invention, there is provided coding method or the device of a kind of data compression, following including at least completing The step of function and operation or module:
When a present encoding parameter of a current primitive in an encoding block encodes, according to pre-defined rule, A pair of present encoding parameters that selection includes a variety of coded systems of neighbouring mode and/or nearest mode carry out coding parameter Encoding operation, produce the compressed data code stream of the information at least containing the code encoding/decoding mode for representing the present encoding parameter.
According to another aspect of the present invention, the coding/decoding method or device of a kind of data compression are additionally provided, including at least completion The step of following function and operation or module:
When a present encoding parameter of a current primitive in a decoding block decodes, compressed data code is parsed Stream, obtains the information for the code encoding/decoding mode at least representing the present encoding parameter, and selection includes neighbouring mode and/or recently side A pair of present encoding parameters of a variety of decoding processes of formula carry out coding parameter decoding operate.
The present invention is applied to damage the coding and decoding of data compression, and present invention is equally applicable to the coding of lossless data compression And decoding.The present invention is applied to the coding and decoding of view data, and present invention is equally applicable to any one-dimensional, two-dimentional or multidimensional The coding and decoding of data.
In the present invention, the data involved by data compression include one or a combination set of data of following classes
1)One-dimensional data;
2)2-D data;
3)Multidimensional data;
4)Image;
5)The sequence of image;
6)Video;
7)Three-dimensional scenic;
8)The sequence of the three-dimensional scenic persistently changed;
9)The scene of virtual reality;
10)The sequence of the scene of the virtual reality persistently changed
11)The image of pixel form;
12)The conversion numeric field data of image;
13)The set of two-dimentional or two-dimentional above byte;
14)The set of two-dimentional or two-dimentional above bit;
15)The set of pixel;
16)The set of pixel component.
It is the situation of image, the sequence of image, video etc. in data, encoding block or decoding block are one of image in the present invention Coding region or a decoding region, including following at least one:Entire image, the subgraph of image, macro block, maximum coding are single First LCU, code tree unit CTU, coding unit CU, CU subregion, predicting unit PU, converter unit TU.
In the present invention, the primitive includes one or a combination set of following state:Encoding and decoding block, sub-block, microlith, string, pixel string, sample Value string, index string, lines.
Illustrate the technical characteristic of the present invention above by some specific instantiations.Those skilled in the art can be by this specification Disclosed content understands other advantages and effect of the present invention easily.The present invention can also pass through specific realities different in addition The mode of applying is embodied or practiced, and the various details in this specification can also be based on different viewpoints and application, without departing substantially from this Various modifications or alterations are carried out under the spirit of invention.
It is the more implementation details or variant of the present invention below.
Implement or become style 1
In the coding method or device or coding/decoding method or device, the encoding operation or decoding operate(It is referred to as encoding and decoding Operation)Including one or a combination set of following operation:
From the coding parameter of the primitive of one or several encoding and decoding, a coding parameter prediction is obtained by predetermined computing Value, present encoding parameter is predicted using the coding parameter predicted value;
Or
From the coding parameter of the primitive of one or several encoding and decoding, one of coding parameter is selected according to predetermined rule As coding parameter predicted value, present encoding parameter is predicted using the coding parameter predicted value;
Or
From the coding parameter of the primitive of one or several encoding and decoding, one group of candidate code ginseng is determined according to predetermined rule Number, one of candidate code parameter is specified to use the coding parameter predicted value as coding parameter predicted value using an index Predict present encoding parameter;
Or
From the coding parameter of the primitive of one or several encoding and decoding, one group of candidate code ginseng is determined according to predetermined rule Number, one of candidate code parameter is specified to replicate the coding parameter predicted value as coding parameter predicted value using an index As present encoding parameter.
Implement or become style 2
Implement or become in coding method described in style 1 or device or coding/decoding method or device,
One or several encoding and decoding primitives are the primitives of encoding and decoding neighbouring on the locus of current primitive;
And/or
One or several encoding and decoding primitives are sequentially nearest one of the encoding and decoding time order and function of current primitive Or the primitive of multiple encoding and decoding.
Implement or become style 3
Implement or become in coding method or device or coding/decoding method or device described in style 1, use the primitive of encoding and decoding The prediction error of coding parameter prediction present encoding parameter is zero.
Implement or become style 4
Implement or become in coding method or device or coding/decoding method or device described in style 1, use the primitive of encoding and decoding The prediction error of coding parameter prediction present encoding parameter is not zero, and the prediction error that coding-decoding operation includes to coding parameter is entered Row encoding and decoding.
Implement or become style 5
In the coding method or device or coding/decoding method or device, the code encoding/decoding mode for representing present encoding parameter Information is coding parameter code encoding/decoding mode flag bit or identification code.
Implement or become style 6
Implement or become in coding method described in style 5 or device or coding/decoding method or device, using probabilistic model to the volume The syntactic element of code parametric codec mode flag bit or identification code carries out entropy encoding/decoding.
Implement or become style 7
In the coding method or device or coding/decoding method or device, the code encoding/decoding mode for representing present encoding parameter Information is a coding parameter code encoding/decoding mode identification code directly or indirectly or directly mixed indirectly;
If the coding parameter code encoding/decoding mode identification code takes a predetermined value,
{
Encoding and decoding are carried out to coding parameter using neighbouring mode
}
Otherwise, if the coding parameter code encoding/decoding mode identification code takes another predetermined value,
{
Encoding and decoding are carried out to coding parameter using nearest mode
}
Otherwise, if the coding parameter code encoding/decoding mode identification code takes other predetermined values,
{
Encoding and decoding are carried out to coding parameter using other modes
}
The directly coding parameter code encoding/decoding mode identification code is by one or more of compressed data code stream bit string(Bit String)Formed.The indirect coding parameter code encoding/decoding mode identification code is from other coding parameters and/or encoding and decoding variable And/or coding parameter code encoding/decoding mode identification code or predetermined identification code lack derived from other syntactic elements of compressed data code stream Province is worth.The coding parameter code encoding/decoding mode identification code directly mixed indirectly is that part is direct(I.e. by compressed data code stream One or more bit strings formed)Part is indirectly(I.e. from other coding parameters and/or encoding and decoding variable and/or compressed data Other syntactic elements export of code stream)The coding parameter code encoding/decoding mode identification code of mixing.
Implement or become style 8
In the coding method or device or coding/decoding method or device, present encoding parameter is represented described in the encoding and decoding block The information of code encoding/decoding mode be present in one or a combination set of following form in compressed data code stream:
The information of each code encoding/decoding mode for representing present encoding parameter, which is concentrated, to be present in compressed data code stream:... ..., compile The information of the code encoding/decoding mode of code parameter 1, the information of the code encoding/decoding mode of coding parameter 2, the code encoding/decoding mode of coding parameter 3 Information ... ..., the information ... ... of coding parameter N code encoding/decoding mode;
Or
The information dispersion of each code encoding/decoding mode for representing present encoding parameter is present in compressed data code stream:... ..., compile The information ... ... of the code encoding/decoding mode of code parameter 1, the information ... ... of the code encoding/decoding mode of coding parameter 2, coding parameter 3 The information ... ... of code encoding/decoding mode, the information ... ... of coding parameter M code encoding/decoding mode.
Implement or become style 9
In the coding method or device or coding/decoding method or device, the data are view data or video data;It is described Primitive is matching(Also known as predict or compensate or replicate)Primitive, including one or a combination set of following classes:Match block, matching Block, matching microlith, matching string, matched pixel string, matching sample value string, match index string, matching bar, matching lines;The coding Parameter is displacement vector;The neighbouring mode is the mode using one or more primitives neighbouring on locus;It is described most Nearly mode is the mode using the sequentially nearest one or more of encoding and decoding time order and function effectively primitive;The neighbouring mode and Other modes outside the mode recently include direct mode, mapping mode.
Implement or become style 10
Implement or become in coding method described in style 9 or device or coding/decoding method or device, the space bit of current primitive Putting neighbouring one or more primitives includes one or a combination set of following primitive:
Primitive in the most left primitive in top, the left primitive in top, top, the right primitive in top, the most right primitive in top,
Primitive is most descended in primitive, left under primitive, left in primitive, left on the most upper primitive in left, left.
Implement or become style 11
Implement or become in coding method described in style 9 or device or coding/decoding method or device, the space bit of current primitive Putting neighbouring one or more primitives includes one or a combination set of following primitive:
The primitive A of left position
In upper position primitive B
The primitive C of most upper-right position
The primitive D of top-left position
The primitive F of lower left position
The primitive G of upper-right position
The primitive H that left lowermost position is put.
Implement or become style 12
In the coding method or device or coding/decoding method or device, using one of following rules choose and specify one it is neighbouring Primitive and/or neighbouring coding parameter are as selected neighbouring primitive and/or selected neighbouring coding parameter, at least using the selected neighbour Nearly primitive and/or selected neighbouring coding parameter carry out coding parameter encoding operation or decoding operate to the present encoding parameter (It is referred to as coding-decoding operation):
Rule 1
Make a reservation for a Maximum alternative adjacent to primitive group, by some or all of primitive groups in 7 neighbouring primitive A, B, C, D, F, G, H Into, such as { A, B, D } or { A, B, C, D, F, G } or { A, B, C, D, F, G, H },
By Maximum alternative, the M primitive of " available " forms the available candidate of current primitive adjacent to primitive group, letter in primitive group Claim current candidate adjacent to primitive group,
If M is equal to 0, in the absence of any available neighbouring primitive, neighbouring mode can not be used to present encoding parameter(Work as The coding parameter of preceding primitive)Carry out encoding and decoding,
Otherwise, if M is equal to 1, choose this uniquely available primitive as selected neighbouring primitive,
Otherwise, a primitive of the current candidate in primitive group is specified to be used as selected neighbouring primitive using an index;
Or
Rule 2
Make a reservation for a Maximum alternative adjacent to orderly group of primitive, by some or all of bases in 7 neighbouring primitive A, B, C, D, F, G, H Member forms according to predefined procedure, such as { A, B, D } or { A, D, B } or { B, A, D } or { D, B, A, C, G, F } or A, C, G, F、D、B},
In the Maximum alternative in orderly group of primitive, according to predefined procedure find first " available " neighbouring primitive U and It finds first available neighbouring primitive V and its neighbouring volume adjacent to coding parameter offsetU according to the opposite sequence of predefined procedure Code parameter offsetV,
If it can not find(It is not present)Available neighbouring coding parameter, then neighbouring mode can not be used to present encoding parameter (The coding parameter of i.e. current primitive)Carry out encoding and decoding,
Otherwise, if available neighbouring coding parameter offsetU is equal to available neighbouring coding parameter offsetV, this is used Unique available neighbouring coding parameter as selected neighbouring coding parameter,
Otherwise, neighbouring coding parameter is specified using a neighbouring coding parameter flag bit neighbouring_offset_flag OffsetU or neighbouring coding parameter offsetV are as selected neighbouring coding parameter;
Or
Rule 3
Make a reservation for a Maximum alternative adjacent to orderly group of primitive, by some or all of bases in 7 neighbouring primitive A, B, C, D, F, G, H Member forms according to predefined procedure, such as { A, B, D } or { A, D, B } or { B, A, D } or { D, B, A, C, G, F } or A, C, G, F、D、B},
In the Maximum alternative in orderly group of primitive, according to predefined procedure find first " available " neighbouring primitive U and It finds first available neighbouring primitive V and its neighbouring volume adjacent to coding parameter offsetU according to the opposite sequence of predefined procedure Code parameter offsetV,
If it can not find(It is not present)Available neighbouring coding parameter, then without using neighbouring mode to present encoding parameter(I.e. The coding parameter of current primitive)Carry out encoding and decoding,
Otherwise, no matter whether available neighbouring coding parameter offsetU is equal to available neighbouring coding parameter offsetV, always make Neighbouring coding parameter offsetU or neighbour are specified with a neighbouring coding parameter flag bit neighbouring_offset_flag Nearly coding parameter offsetV is as selected neighbouring coding parameter;
Or
Rule 4
Make a reservation for a Maximum alternative adjacent to orderly group of primitive, by some or all of bases in 7 neighbouring primitive A, B, C, D, F, G, H Member forms according to predefined procedure, such as { A, B, D } or { A, D, B } or { B, A, D } or { D, B, A, C, G, F } or A, C, G, F、D、B},
In the Maximum alternative in orderly group of primitive, first " available " neighbouring primitive U is found according to predefined procedure, according to The opposite sequence of predefined procedure finds first available neighbouring primitive V,
If it can not find(It is not present)Neighbouring primitive can be used, then without using neighbouring mode to present encoding parameter(I.e. current base The coding parameter of member)Carry out encoding and decoding,
Otherwise, if available neighbouring primitive U overlaps with available neighbouring primitive V, this is selected uniquely to can use neighbouring primitive to make For selected neighbouring primitive,
Otherwise, available neighbouring primitive U or available is specified using a neighbouring primitive flag bit neighbouring_bu_flag Neighbouring primitive V is as selected neighbouring primitive;
Or
Rule 5
Make a reservation for a Maximum alternative adjacent to orderly group of primitive, by some or all of bases in 7 neighbouring primitive A, B, C, D, F, G, H Member forms according to predefined procedure, such as { A, B, D } or { A, D, B } or { B, A, D } or { D, B, A, C, G, F } or A, C, G, F、D、B},
In the Maximum alternative in orderly group of primitive, first " available " neighbouring primitive U is found according to predefined procedure, according to The opposite sequence of predefined procedure finds first available neighbouring primitive V,
If it can not find(It is not present)Neighbouring primitive can be used, then without using neighbouring mode to present encoding parameter(I.e. current base The coding parameter of member)Carry out encoding and decoding,
Otherwise, no matter whether available neighbouring primitive U overlaps with available neighbouring primitive V, always use a neighbouring primitive flag bit Neighbouring_bu_flag specifies available neighbouring primitive U or available neighbouring primitive V as selected neighbouring primitive;
Or
Rule 6
Make a reservation for a Maximum alternative adjacent to primitive group, by some or all of bases in 9 neighbouring primitive A, B, C, D, E, F, G, H, I Member composition, such as { A, B, D, H } or { A, B, C, D, E, F, G } or { A, B, C, D, F, G, H },
By Maximum alternative, the M primitive of " available " forms the available candidate of current primitive adjacent to primitive group, letter in primitive group Claim current candidate adjacent to primitive group,
If M is equal to 0, in the absence of any available neighbouring primitive, without using neighbouring mode to present encoding parameter(It is i.e. current The coding parameter of primitive)Carry out encoding and decoding,
Otherwise, current candidate is specified in primitive group using a neighbouring primitive index neighbouring_bu_index One primitive is as selected neighbouring primitive.
Implement or become style 13
Implement or become in coding method described in style 9 or device or coding/decoding method or device, effective primitive time serial number n's One or more primitives that the encoding and decoding time order and function of current primitive is sequentially nearest include following K(Usual K≤20) One or a combination set of individual primitive:
Effective primitive R of effective primitive time serial number n -11
Effective primitive R of effective primitive time serial number n -22
Effective primitive R of effective primitive time serial number n -33
… … … …
Effective primitive R of effective primitive time serial number n-K+1K-1
Effective primitive R of effective primitive time serial number n-KK
The effectively primitive time sequence number is to give effective primitive according to the encoding and decoding time order and function order only assignment of effective primitive Time sequence number.
Implement or become style 14
Implement or become in coding method described in style 13 or device or coding/decoding method or device, the definition of effective primitive is
Encoding and decoding and the primitive with displacement vector;
Or
Encoding and decoding and the primitive of the displacement vector with predefined type;
Or
Encoding and decoding and the primitive for falling the displacement vector in a predetermined span with its value;
Or
Encoding and decoding and the primitive for falling the displacement vector outside a predetermined span with its value;
Or
Encoding and decoding and with displacement vector and without using the primitive of neighbouring mode;
Or
Encoding and decoding and the displacement vector of the effectively primitive individual not equal to nearest K of the value with displacement vector and its displacement vector Value primitive;
Or
Encoding and decoding and with displacement vector and without using the value of neighbouring mode and its displacement vector not equal to nearest K The primitive of the value of the displacement vector of effective primitive;
Or
The combination of both the above or more situation.
Implement or become style 15
Implement or become in coding method described in style 13 or device or coding/decoding method or device, use an index recent_ Offset_index uses effective primitive time serial number n-1-recent_offset_index effective primitive to specify Displacement vector to carry out coding-decoding operation to the displacement vector of current primitive.
Implement or become style 16
Implement or become in coding method or device or coding/decoding method or device described in style 12, using rule 2, in the following manner The parameter that is represented with italic or syntactic element select neighbouring mode or nearest mode or other modes to join the present encoding Number(Such as:Displacement vector)Carry out coding-decoding operation:
Use neighbouring or nearest coding parameter flag bit use_neighboring_or_recent_cp_flag
If represented using the value of neighbouring or nearest coding parameter flag bit using neighbouring mode or nearest mode,
{
If there is two unequal available neighbouring coding parameter cpU and cpV, then
{
Neighbouring coding parameter flag bit neighbouring_cp_flag
The neighbouring coding parameter at least represented using neighbouring coding parameter flag bit(One of cpU and cpV)Make For selected neighbouring coding parameter
}
Otherwise, if can not find(It is not present)Neighbouring coding parameter can be used, then
{
Nearest coding parameter index recent_cp_index
The nearest coding parameter represented using nearest coding parameter index carries out volume solution to present encoding parameter Code operation
}
Otherwise
{
Use unique available neighbouring coding parameter cpU(It is equal to cpV)As selected neighbouring coding parameter
}
}
Otherwise
{
Coding-decoding operation is carried out to present encoding parameter using other modes
}。
Implement or become style 17
In the coding method or device or coding/decoding method or device, coding parameter is displacement vector, in the following manner and tiltedly Parameter that body surface shows or syntactic element are selected or represented using neighbouring mode or nearest mode or other modes to described current Displacement vector carries out coding-decoding operation:
Use neighbouring displacement sign vector position use_neighboring_offset_flag
If represented using the value of neighbouring displacement sign vector position using neighbouring mode,
{
Neighbouring displacement sign vector position neighbouring_offset_flag
The neighbouring displacement vector represented using neighbouring displacement sign vector position(One of offsetU and offsetV)As Current displacement vector
}
Otherwise
{
The parameter relevant with nearest mode and/or other modes or syntactic element
Coding-decoding operation is carried out to current displacement vector using nearest mode and/or other modes
}。
Implement or become style 18
Implement or become in coding method or device or coding/decoding method or device described in style 12, using rule 4, in the following manner The parameter that is represented with italic or syntactic element select neighbouring mode or nearest mode or other modes to join the present encoding Number(Such as:Displacement vector)Carry out coding-decoding operation:
Using neighbouring or nearestCoding parameterFlag bit use_neighboring_or_recent_cp_flag
If represented using the value of neighbouring or nearest coding parameter flag bit using neighbouring mode or nearest mode,
{
If there is two available neighbouring primitive U and V differed, then
{
Neighbouring primitive flag bit neighbouring_bu_flag
The neighbouring primitive represented using neighbouring primitive flag bit(One of U and V)As selected neighbouring primitive
}
Otherwise, if can not find(It is not present)Neighbouring primitive can be used(U and V are not present), then
{
Nearest coding parameter index recent_cp_index
The nearest coding parameter represented using nearest coding parameter index carries out volume solution to present encoding parameter Code operation
}
Otherwise
{
Use unique available neighbouring primitive U(Coincide with V)As selected neighbouring primitive
}
}
Otherwise
{
Coding-decoding operation is carried out to present encoding parameter using other modes
}。
Implement or become style 19
Implement or become in coding method or device or coding/decoding method or device described in style 12, using rule 5, in the following manner The parameter that is represented with italic or syntactic element select neighbouring mode or nearest mode or other modes to join the present encoding Number(Such as:Displacement vector)Carry out coding-decoding operation:
Use neighbouring coding parameter flag bit use_neighboring_cp_flag
If represented using the value of neighbouring coding parameter flag bit using neighbouring mode,
{
Neighbouring primitive flag bit neighbouring_bu_flag
The neighbouring primitive represented using neighbouring primitive flag bit(One of U and V)As selected neighbouring primitive
}
Otherwise
{
The parameter relevant with nearest mode and/or other modes or syntactic element
Coding-decoding operation is carried out to present encoding parameter using nearest mode and/or other modes
}。
Implement or become style 20
Implement or become in coding method described in style 12 or device or coding/decoding method or device, using rule 5, coding parameter is Displacement vector, the parameter represented in the following manner with italic or syntactic element select neighbouring mode or nearest mode or its other party Formula carries out coding-decoding operation to current displacement vector:
Use neighbouring displacement sign vector position use_neighboring_offset_flag
If represented using the value of neighbouring displacement sign vector position using neighbouring mode,
{
Neighbouring primitive flag bit neighbouring_bu_flag
The neighbouring primitive represented using neighbouring primitive flag bit(One of U and V)Displacement vector as current displacement vector
}
Otherwise
{
The parameter relevant with nearest mode and/or other modes or syntactic element
Coding-decoding operation is carried out to current displacement vector using nearest mode and/or other modes
}。
Implement or become style 21
Implement or become in coding method described in style 12 or device or coding/decoding method or device, the definition of " available " primitive It is
Encoding and decoding and there is primitive of the displacement vector as one of its match parameter
Or
Encoding and decoding and use predetermined one kind or several matching way(Such as Block- matching mode and String matching mode)Base Member;
Or
Encoding and decoding and use predetermined one kind or predetermined one kind in several matching way or several subpattern(Have When be also referred to as subtype)Primitive;
Or
Encoding and decoding and the primitive for falling the displacement vector in a predetermined span with its value;
Or
Encoding and decoding and the primitive for falling the displacement vector outside a predetermined span with its value;
Or
Encoding and decoding and the primitive of the displacement vector with predetermined properties;
Or
Encoding and decoding and the primitive of the displacement vector with predefined type;
Or
The combination of both the above or more situation.
Implement or become style 22
Implement or become in 12~21 coding method of style or device or coding/decoding method or device, " available " primitive Definition is
The length limited string of encoding and decoding;
Or
Encoding and decoding and length can only take the string of some predetermined values;
Or
The string of the half of the number of pixels of encoding and decoding and length equal to encoding and decoding block or the number of pixels equal to encoding and decoding block;
Or
The combination of both the above or more situation.
Implement or become style 23
In the coding method or device or coding/decoding method or device, the code encoding/decoding mode for representing present encoding parameter Information is two direct or indirect coding parameter code encoding/decoding mode marks;
If the first coding parameter code encoding/decoding mode mark takes a predetermined value,
{
Encoding and decoding are carried out to coding parameter using neighbouring mode
}
Otherwise
{
If the second coding parameter code encoding/decoding mode mark takes a predetermined value,
{
Encoding and decoding are carried out to coding parameter using nearest mode
}
Otherwise
{
Encoding and decoding are carried out to coding parameter using other modes
}
}
The directly coding parameter code encoding/decoding mode mark is a bit in compressed data code stream.The indirect coding Parametric codec mode mark is other grammers from other coding parameters and/or encoding and decoding variable and/or compressed data code stream Coding parameter code encoding/decoding mode mark derived from element or predetermined mark default value.
Implement or become style 24
In the coding method or device or coding/decoding method or device, coding parameter is displacement vector, in the following manner and tiltedly Parameter that body surface shows or syntactic element are selected or represented using neighbouring mode or nearest mode or other modes to described current Displacement vector carries out coding-decoding operation:
Use neighbouring displacement sign vector position use_neighboring_offset_flag
If represented using the value of neighbouring displacement sign vector position using neighbouring mode,
{
The parameter relevant with neighbouring displacement vector or syntactic element
Current displacement vector is obtained from neighbouring displacement vector
}
Otherwise
{
Use nearest displacement vector flag bit use_recent_offset_flag
If representing to use nearest mode using the value of nearest displacement vector flag bit,
{
The parameter relevant with nearest displacement vector or syntactic element
Current displacement vector is obtained from nearest displacement vector
}
Otherwise
{
The parameter relevant with other modes or syntactic element
Coding-decoding operation is carried out to current displacement vector using other modes
}
}。
Implement or become style 25
In the coding method or device or coding/decoding method or device, a variety of code encoding/decoding modes include one kind and worked as to described Preceding coding parameter is direct in itself(It is not related to the relevant coding parameter of other primitives)Carry out the mode of coding-decoding operation.
Implement or become style 26
In the coding method or device or coding/decoding method or device, the code encoding/decoding mode for representing present encoding parameter Information is a coding parameter code encoding/decoding mode identification code directly or indirectly or directly mixed indirectly;
When the coding parameter code encoding/decoding mode identification code is equal to first predetermined value
{
Encoding and decoding are carried out to present encoding parameter using neighbouring mode
}
When the coding parameter code encoding/decoding mode identification code is equal to second predetermined value
{
Encoding and decoding are carried out to present encoding parameter using nearest mode
}
When the coding parameter code encoding/decoding mode identification code is equal to the 3rd predetermined value
{
Encoding and decoding are carried out to present encoding parameter using other modes
}
The directly coding parameter code encoding/decoding mode identification code is by one or more of compressed data code stream bit string(Bit String)Formed.The indirect coding parameter code encoding/decoding mode identification code is from other coding parameters and/or encoding and decoding variable And/or coding parameter code encoding/decoding mode identification code or predetermined identification code lack derived from other syntactic elements of compressed data code stream Province is worth.The coding parameter code encoding/decoding mode identification code directly mixed indirectly is that part is direct(I.e. by compressed data code stream One or more bit strings formed)Part is indirectly(I.e. from other coding parameters and/or encoding and decoding variable and/or compressed data Other syntactic elements export of code stream)The coding parameter code encoding/decoding mode identification code of mixing.
Implement or become style 27
Implement or become in coding method or device or coding/decoding method or device described in style 12, using rule 6, in the following manner The parameter that is represented with italic or syntactic element select neighbouring mode or nearest mode or other modes to join the present encoding Number(Such as:Displacement vector)Carry out coding-decoding operation:
Use neighbouring coding parameter flag bit use_neighboring_cp_flag
If represented using the value of neighbouring coding parameter flag bit using neighbouring mode,
{
Neighbouring primitive index neighbouring_bu_index
That primitive of the current candidate specified using neighbouring primitive index in primitive group is as selected neighbouring Primitive
}
Otherwise
{
The parameter relevant with nearest mode and/or other modes or syntactic element
Coding-decoding operation is carried out to present encoding parameter using nearest mode and/or other modes
}。
Implement or become style 28
Implement or become in coding method described in style 12 or device or coding/decoding method or device, using rule 6, coding parameter is Displacement vector, the parameter represented in the following manner with italic or syntactic element select neighbouring mode or nearest mode or its other party Formula carries out coding-decoding operation to current displacement vector:
Use neighbouring displacement sign vector position use_neighboring_offset_flag
If represented using the value of neighbouring displacement sign vector position using neighbouring mode,
{
Neighbouring primitive index neighbouring_bu_index
The displacement vector of a primitive of the current candidate specified using neighbouring primitive index in primitive group as Current displacement vector
}
Otherwise
{
The parameter relevant with nearest mode and/or other modes or syntactic element
Coding-decoding operation is carried out to current displacement vector using nearest mode and/or other modes
}。
Implement or become style 29
Implement or become in coding method described in style 12 or device or coding/decoding method or device, using rule 6, coding parameter is Displacement vector, the parameter represented in the following manner with italic or syntactic element select neighbouring mode or nearest mode or its other party Formula carries out coding-decoding operation to current displacement vector:
Use neighbouring displacement sign vector position use_neighboring_offset_flag
If represented using the value of neighbouring displacement sign vector position using neighbouring mode,
{
Neighbouring primitive index neighbouring_bu_index
The displacement vector of a primitive of the current candidate specified using neighbouring primitive index in primitive group as Current displacement vector
}
Otherwise
{
Use nearest displacement vector flag bit use_recent_offset_flag
If representing to use nearest mode using the value of nearest displacement vector flag bit,
{
Nearest displacement vector index recent_offset_index
A displacement vector in the nearest displacement vector group of candidate specified using nearest displacement vector index As current displacement vector
}
Otherwise
{
The parameter relevant with other modes or syntactic element
Coding-decoding operation is carried out to current displacement vector using other modes
}
}。
Implement or become style 30
Implement or become in coding method described in style 12 or device or coding/decoding method or device, using rule 6, coding parameter is Displacement vector, the parameter represented in the following manner with italic or syntactic element select neighbouring mode or nearest mode or its other party Formula carries out coding-decoding operation to current displacement vector:
Use nearest displacement vector flag bit use_recent_offset_flag
If representing to use nearest mode using the value of nearest displacement vector flag bit,
{
Nearest displacement vector index recent_offset_index
Using that displacement vector in the nearest displacement vector group of candidate specified of nearest displacement vector index as Current displacement vector
}
Otherwise
{
Use neighbouring displacement sign vector position use_neighboring_offset_flag
If represented using the value of neighbouring displacement sign vector position using neighbouring mode,
{
Neighbouring primitive index neighbouring_bu_index
The displacement of that primitive of the current candidate specified using neighbouring primitive index in primitive group Vector is as current displacement vector
}
Otherwise
{
The parameter relevant with other modes or syntactic element
Coding-decoding operation is carried out to current displacement vector using other modes
}
}。
Implement or become style 31
In the coding method or device or coding/decoding method or device, the code encoding/decoding mode for representing present encoding parameter Information is a coding parameter code encoding/decoding mode identification code directly or indirectly or directly mixed indirectly;
When the coding parameter code encoding/decoding mode identification code is equal to first predetermined value
{
Neighbouring primitive index neighbouring_bu_index
The coding of that neighbouring primitive of the current candidate specified using neighbouring primitive index in primitive group is joined It is several that coding-decoding operation is carried out to present encoding parameter
}
When the coding parameter code encoding/decoding mode identification code is equal to second predetermined value
{
Nearest coding parameter index recent_cp_index
That coding parameter in the nearest coding parameter group of candidate specified using nearest coding parameter index is to working as Preceding coding parameter carries out coding-decoding operation
}
When the coding parameter code encoding/decoding mode identification code is equal to the 3rd predetermined value
{
The parameter relevant with other modes or syntactic element
Coding-decoding operation is carried out to present encoding parameter using other modes
}
The directly coding parameter code encoding/decoding mode identification code is by one or more of compressed data code stream bit string(Bit String)Formed.The indirect coding parameter code encoding/decoding mode identification code is from other coding parameters and/or encoding and decoding variable And/or coding parameter code encoding/decoding mode identification code or predetermined identification code lack derived from other syntactic elements of compressed data code stream Province is worth.The coding parameter code encoding/decoding mode identification code directly mixed indirectly is that part is direct(I.e. by compressed data code stream One or more bit strings formed)Part is indirectly(I.e. from other coding parameters and/or encoding and decoding variable and/or compressed data Other syntactic elements export of code stream)The coding parameter code encoding/decoding mode identification code of mixing.
Implement or become style 32
In the coding method or device or coding/decoding method or device, coding parameter is displacement vector, and the expression is current to compile The information of the code encoding/decoding mode of code parameter is a displacement vector code encoding/decoding mode mark directly or indirectly or directly mixed indirectly Know code;
When institute's displacement vector code encoding/decoding mode identification code is equal to first predetermined value
{
Neighbouring primitive index neighbouring_bu_index
The displacement of that neighbouring primitive of the current candidate specified using neighbouring primitive index in primitive group is sweared Amount is used as current displacement vector
}
When institute's displacement vector code encoding/decoding mode identification code is equal to second predetermined value
{
Nearest displacement vector index recent_offset_index
Using that displacement vector in the nearest displacement vector group of candidate specified of nearest displacement vector index as Current displacement vector
}
When institute's displacement vector code encoding/decoding mode identification code is equal to the 3rd predetermined value
{
The parameter relevant with other modes or syntactic element
Coding-decoding operation is carried out to current displacement vector using other modes
}
The directly displacement vector code encoding/decoding mode identification code is by one or more of compressed data code stream bit string(Bit String)Formed.The indirect displacement vector code encoding/decoding mode identification code is from other coding parameters and/or encoding and decoding variable And/or displacement vector code encoding/decoding mode identification code or predetermined identification code lack derived from other syntactic elements of compressed data code stream Province is worth.The displacement vector code encoding/decoding mode identification code directly mixed indirectly is that part is direct(I.e. by compressed data code stream One or more bit strings formed)Part is indirectly(I.e. from other coding parameters and/or encoding and decoding variable and/or compressed data Other syntactic elements export of code stream)The displacement vector code encoding/decoding mode identification code of mixing.
Implement or become style 33
Implement or become in 26 or 31 or 32 coding method of style or device or coding/decoding method or device,
One of first predetermined value, second predetermined value, these three predetermined values of the 3rd predetermined value are one 1 Position binary symbols string(Such as, first example:‘0’;Second example:‘1’), and two other predetermined value is two 2 binary symbols String(Such as, first example:' 10 ' and ' 11 ';Second example:' 01 ' and ' 00 ').
First example:
First predetermined value, second predetermined value, the 3rd predetermined value are following binary symbols string respectively:
0,10,11;
Second example:
First predetermined value, second predetermined value, the 3rd predetermined value are following binary symbols string respectively:
1,01,00;
3rd example:
First predetermined value, the 3rd predetermined value, second predetermined value are following binary symbols string respectively:
0,10,11;
4th example:
First predetermined value, the 3rd predetermined value, second predetermined value are following binary symbols string respectively:
1,01,00;
5th example:
Second predetermined value, first predetermined value, the 3rd predetermined value are following binary symbols string respectively:
0,10,11;
6th example:
Second predetermined value, first predetermined value, the 3rd predetermined value are following binary symbols string respectively:
1,01,00;
7th example:
Second predetermined value, the 3rd predetermined value, first predetermined value are following binary symbols string respectively:
0,10,11;
8th example:
Second predetermined value, the 3rd predetermined value, first predetermined value are following binary symbols string respectively:
1,01,00;
9th example:
3rd predetermined value, first predetermined value, second predetermined value are following binary symbols string respectively:
0,10,11;
Tenth example:
3rd predetermined value, first predetermined value, second predetermined value are following binary symbols string respectively:
1,01,00;
11st example:
3rd predetermined value, second predetermined value, first predetermined value are following binary symbols string respectively:
0,10,11;
12nd example:
3rd predetermined value, second predetermined value, first predetermined value are following binary symbols string respectively:
1,01,00.
Implement or become style 34
In the coding method or device or coding/decoding method or device, coding parameter is displacement vector, and other modes are at least wrapped Include the direct mode that encoding and decoding are directly carried out to the horizontal component and vertical component of displacement vector.
Implement or become style 35
Implement or become in coding method described in style 34 or device or coding/decoding method or device, the direct mode comprises at least Encoding and decoding are carried out to following parameters:
Whether the horizontal component is zero flag position;
And/or
The horizontal component sign bit;
And/or
The horizontal component absolute value;
And/or
The horizontal component absolute value subtracts one;
And/or
Whether the vertical component is zero flag position;
And/or
The vertical component sign bit;
And/or
The vertical component absolute value;
And/or
The vertical component absolute value subtracts one;
And/or
Whether the adjusted value of the horizontal component is zero flag position;
And/or
The sign bit of the adjusted value of the horizontal component;
And/or
The absolute value of the adjusted value of the horizontal component;
And/or
The absolute value of the adjusted value of the horizontal component subtracts one;
And/or
Whether the adjusted value of the vertical component is zero flag position;
And/or
The sign bit of the adjusted value of the vertical component;
And/or
The absolute value of the adjusted value of the vertical component;
And/or
The absolute value of the adjusted value of the vertical component subtracts one.
Brief description of the drawings
Fig. 1 is coding method or the schematic diagram of device of the present invention.
Fig. 2 is the coding/decoding method of the present invention or a schematic diagram of device.

Claims (11)

1. coding method or the device of a kind of data compression, it is characterised in that including at least the step for completing following function and operation Rapid or module:
When a present encoding parameter of a current primitive in an encoding block encodes, according to pre-defined rule, A pair of present encoding parameters that selection includes a variety of coded systems of neighbouring mode and nearest mode carry out coding parameter volume Code operation, produce the compressed data code stream of the information at least containing the code encoding/decoding mode for representing the present encoding parameter.
2. the coding/decoding method or device of a kind of data compression, it is characterised in that including at least the step for completing following function and operation Rapid or module:
When a present encoding parameter of a current primitive in a decoding block decodes, compressed data code is parsed Stream, obtains the information for the code encoding/decoding mode at least representing the present encoding parameter, and selection includes neighbouring mode and nearest mode A pair of a variety of decoding processes present encoding parameters carry out coding parameter decoding operates.
3. coding method according to claim 1 or device or coding/decoding method according to claim 2 or device, It is characterized in that:
The data are view data or video data;
The primitive is matching(Also known as predict or compensate or replicate)Primitive, including one or a combination set of following classes:Match block, Matched sub-block, matching microlith, matching string, matched pixel string, matching sample value string, match index string, matching bar, matching lines;Institute It is displacement vector to state coding parameter;
The neighbouring mode is the mode using one or more primitives neighbouring on locus;
The mode recently is the mode using the sequentially nearest one or more of encoding and decoding time order and function effectively primitive;
Other modes outside the neighbouring mode and the mode recently include direct mode, mapping mode.
4. coding method according to claim 3 or device or coding/decoding method or device, it is characterised in that using following One of rule chooses and specified a neighbouring primitive and/or neighbouring coding parameter to be used as selected neighbouring primitive and/or selected neighbouring Coding parameter, at least the present encoding parameter is carried out using the selected neighbouring primitive and/or selected neighbouring coding parameter Coding-decoding operation:
Rule 1
Make a reservation for a Maximum alternative adjacent to primitive group, by some or all of primitive groups in 7 neighbouring primitive A, B, C, D, F, G, H Into,
By Maximum alternative, available M primitive forms the available candidate of current primitive adjacent to primitive group, abbreviation in primitive group Current candidate adjacent to primitive group,
If M is equal to 0, in the absence of any available neighbouring primitive, neighbouring mode can not be used to present encoding parameter(Work as The coding parameter of preceding primitive)Carry out encoding and decoding,
Otherwise, if M is equal to 1, choose this uniquely available primitive as selected neighbouring primitive,
Otherwise, a primitive of the current candidate in primitive group is specified to be used as selected neighbouring primitive using an index;
Or
Rule 2
Make a reservation for a Maximum alternative adjacent to orderly group of primitive, by some or all of bases in 7 neighbouring primitive A, B, C, D, F, G, H Member forms according to a predefined procedure,
In the Maximum alternative in orderly group of primitive, according to predefined procedure find first available neighbouring primitive U and its Neighbouring coding parameter offsetU, first available neighbouring primitive V and its neighbouring coding are found according to the opposite sequence of predefined procedure Parameter offsetV,
If it can not find(It is not present)Available neighbouring coding parameter, then neighbouring mode can not be used to present encoding parameter (The coding parameter of i.e. current primitive)Carry out encoding and decoding,
Otherwise, if available neighbouring coding parameter offsetU is equal to available neighbouring coding parameter offsetV, this is used Unique available neighbouring coding parameter as selected neighbouring coding parameter,
Otherwise, neighbouring coding parameter is specified using a neighbouring coding parameter flag bit neighbouring_offset_flag OffsetU or neighbouring coding parameter offsetV are as selected neighbouring coding parameter;
Or
Rule 3
Make a reservation for a Maximum alternative adjacent to orderly group of primitive, by some or all of bases in 7 neighbouring primitive A, B, C, D, F, G, H Member forms according to a predefined procedure,
In the Maximum alternative in orderly group of primitive, according to predefined procedure find first " available " neighbouring primitive U and It finds first available neighbouring primitive V and its neighbouring volume adjacent to coding parameter offsetU according to the opposite sequence of predefined procedure Code parameter offsetV,
If it can not find(It is not present)Available neighbouring coding parameter, then without using neighbouring mode to present encoding parameter(I.e. The coding parameter of current primitive)Carry out encoding and decoding,
Otherwise, no matter whether available neighbouring coding parameter offsetU is equal to available neighbouring coding parameter offsetV, always make Neighbouring coding parameter offsetU or neighbour are specified with a neighbouring coding parameter flag bit neighbouring_offset_flag Nearly coding parameter offsetV is as selected neighbouring coding parameter;
Or
Rule 4
Make a reservation for a Maximum alternative adjacent to orderly group of primitive, by some or all of bases in 7 neighbouring primitive A, B, C, D, F, G, H Member forms according to a predefined procedure,
In the Maximum alternative in orderly group of primitive, first " available " neighbouring primitive U is found according to predefined procedure, according to The opposite sequence of predefined procedure finds first available neighbouring primitive V,
If it can not find(It is not present)Neighbouring primitive can be used, then without using neighbouring mode to present encoding parameter(I.e. current base The coding parameter of member)Carry out encoding and decoding,
Otherwise, if available neighbouring primitive U overlaps with available neighbouring primitive V, this is selected uniquely to can use neighbouring primitive to make For selected neighbouring primitive,
Otherwise, available neighbouring primitive U or available is specified using a neighbouring primitive flag bit neighbouring_bu_flag Neighbouring primitive V is as selected neighbouring primitive;
Or
Rule 5
Make a reservation for a Maximum alternative adjacent to orderly group of primitive, by some or all of bases in 7 neighbouring primitive A, B, C, D, F, G, H Member forms according to a predefined procedure,
In the Maximum alternative in orderly group of primitive, first " available " neighbouring primitive U is found according to predefined procedure, according to The opposite sequence of predefined procedure finds first available neighbouring primitive V,
If it can not find(It is not present)Neighbouring primitive can be used, then without using neighbouring mode to present encoding parameter(I.e. current base The coding parameter of member)Carry out encoding and decoding,
Otherwise, no matter whether available neighbouring primitive U overlaps with available neighbouring primitive V, always use a neighbouring primitive flag bit Neighbouring_bu_flag specifies available neighbouring primitive U or available neighbouring primitive V as selected neighbouring primitive;
Or
Rule 6
Make a reservation for a Maximum alternative adjacent to primitive group, by some or all of bases in 9 neighbouring primitive A, B, C, D, E, F, G, H, I Member composition, such as { A, B, D, H } or { A, B, C, D, E, F, G } or { A, B, C, D, F, G, H },
By Maximum alternative, the M primitive of " available " forms the available candidate of current primitive adjacent to primitive group, letter in primitive group Claim current candidate adjacent to primitive group,
If M is equal to 0, in the absence of any available neighbouring primitive, without using neighbouring mode to present encoding parameter(It is i.e. current The coding parameter of primitive)Carry out encoding and decoding,
Otherwise, current candidate is specified in primitive group using a neighbouring primitive index neighbouring_bu_index One primitive is as selected neighbouring primitive.
5. coding method according to claim 3 or device or coding/decoding method or device, it is characterised in that effective primitive Definition be:
Encoding and decoding and the primitive with displacement vector;
Or
Encoding and decoding and the primitive of the displacement vector with predefined type;
Or
Encoding and decoding and the primitive for falling the displacement vector in a predetermined span with its value;
Or
Encoding and decoding and the primitive for falling the displacement vector outside a predetermined span with its value;
Or
Encoding and decoding and with displacement vector and without using the primitive of neighbouring mode;
Or
Encoding and decoding and the displacement vector of the effectively primitive individual not equal to nearest K of the value with displacement vector and its displacement vector Value primitive;
Or
Encoding and decoding and with displacement vector and without using the value of neighbouring mode and its displacement vector not equal to nearest K The primitive of the value of the displacement vector of effective primitive;
Or
The combination of both the above or more situation.
6. coding method according to claim 1 or device or coding/decoding method according to claim 2 or device, Characterized in that, coding parameter is displacement vector, the parameter that is represented in the following manner with italic or syntactic element select or table Show and coding-decoding operation is carried out to the current displacement vector using neighbouring mode or nearest mode or other modes:
Use neighbouring displacement sign vector position use_neighboring_offset_flag
If represented using the value of neighbouring displacement sign vector position using neighbouring mode,
{
Neighbouring displacement sign vector position neighbouring_offset_flag
The neighbouring displacement vector represented using neighbouring displacement sign vector position(One of offsetU and offsetV)As work as Preceding displacement vector
}
Otherwise
{
The parameter relevant with nearest mode and/or other modes or syntactic element
Coding-decoding operation is carried out to current displacement vector using nearest mode and/or other modes
}。
7. coding method according to claim 4 or device or coding/decoding method or device, it is characterised in that using rule 4, the parameter that is represented in the following manner with italic or syntactic element select neighbouring mode or nearest mode or other modes to institute State present encoding parameter and carry out coding-decoding operation:
Use neighbouring or nearest coding parameter flag bit use_neighboring_or_recent_cp_flag
If represented using the value of neighbouring or nearest coding parameter flag bit using neighbouring mode or nearest mode,
{
If there is two available neighbouring primitive U and V differed, then
{
Neighbouring primitive flag bit neighbouring_bu_flag
The neighbouring primitive represented using neighbouring primitive flag bit(One of U and V)As selected neighbouring primitive
}
Otherwise, if can not find(It is not present)Neighbouring primitive can be used(U and V are not present), then
{
Nearest coding parameter index recent_cp_index
The nearest coding parameter represented using nearest coding parameter index carries out coding-decoding operation to present encoding parameter
}
Otherwise
{
Use unique available neighbouring primitive U(Coincide with V)As selected neighbouring primitive
}
}
Otherwise
{
Coding-decoding operation is carried out to present encoding parameter using other modes
}。
8. coding method according to claim 4 or device or coding/decoding method or device, it is characterised in that using rule 5, coding parameter is displacement vector, and the parameter that is represented in the following manner with italic or syntactic element select neighbouring mode or recently Mode or other modes carry out coding-decoding operation to the current displacement vector:
Use neighbouring displacement sign vector position use_neighboring_offset_flag
If represented using the value of neighbouring displacement sign vector position using neighbouring mode,
{
Neighbouring primitive flag bit neighbouring_bu_flag
The neighbouring primitive represented using neighbouring primitive flag bit(One of U and V)Displacement vector as current displacement vector
}
Otherwise
{
The parameter relevant with nearest mode and/or other modes or syntactic element
Coding-decoding operation is carried out to current displacement vector using nearest mode and/or other modes
}。
9. coding method according to claim 3 or device or coding/decoding method or device, it is characterised in that it is described " can With " definition of primitive is
Encoding and decoding and there is primitive of the displacement vector as one of its match parameter
Or
Encoding and decoding and use predetermined one kind or several matching way(Such as Block- matching mode and String matching mode)Base Member;
Or
Encoding and decoding and use predetermined one kind or predetermined one kind in several matching way or several subpattern(Have When be also referred to as subtype)Primitive;
Or
Encoding and decoding and the primitive for falling the displacement vector in a predetermined span with its value;
Or
Encoding and decoding and the primitive for falling the displacement vector outside a predetermined span with its value;
Or
Encoding and decoding and the primitive of the displacement vector with predetermined properties;
Or
Encoding and decoding and the primitive of the displacement vector with predefined type;
Or
The length limited string of encoding and decoding;
Or
Encoding and decoding and length can only take the string of some predetermined values;
Or
The string of the half of the number of pixels of encoding and decoding and length equal to encoding and decoding block or the number of pixels equal to encoding and decoding block;
Or
The combination of both the above or more situation.
10. coding method according to claim 1 or device or coding/decoding method according to claim 2 or dress Put, it is characterised in that the information of the code encoding/decoding mode for representing present encoding parameter is two direct or indirect coding ginsengs Number code encoding/decoding mode mark:
If the first coding parameter code encoding/decoding mode mark takes a predetermined value,
{
Encoding and decoding are carried out to coding parameter using neighbouring mode
}
Otherwise
{
If the second coding parameter code encoding/decoding mode mark takes a predetermined value,
{
Encoding and decoding are carried out to coding parameter using nearest mode
}
Otherwise
{
Encoding and decoding are carried out to coding parameter using other modes
}
}
The directly coding parameter code encoding/decoding mode mark is a bit in compressed data code stream;The indirect coding Parametric codec mode mark is other grammers from other coding parameters and/or encoding and decoding variable and/or compressed data code stream Coding parameter code encoding/decoding mode mark derived from element or predetermined mark default value.
11. coding method according to claim 1 or device or coding/decoding method according to claim 2 or dress Put, it is characterised in that coding parameter is displacement vector, the parameter or syntactic element represented in the following manner with italic selecting or Represent to carry out coding-decoding operation to the current displacement vector using neighbouring mode or nearest mode or other modes:
Use neighbouring displacement sign vector position use_neighboring_offset_flag
If represented using the value of neighbouring displacement sign vector position using neighbouring mode,
{
The parameter relevant with neighbouring displacement vector or syntactic element
Current displacement vector is obtained from neighbouring displacement vector
}
Otherwise
{
Use nearest displacement vector flag bit use_recent_offset_flag
If representing to use nearest mode using the value of nearest displacement vector flag bit,
{
The parameter relevant with nearest displacement vector or syntactic element
Current displacement vector is obtained from nearest displacement vector
}
Otherwise
{
The parameter relevant with other modes or syntactic element
Coding-decoding operation is carried out to current displacement vector using other modes
}
}。
CN201710715886.1A 2016-08-21 2017-08-21 Data compression method and apparatus using neighboring encoding parameters and nearest encoding parameters Active CN107770527B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111381577.8A CN114501020A (en) 2016-08-21 2017-08-21 Image compression method and apparatus using nearest motion vector and neighboring motion vector

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201610691508 2016-08-21
CN201610691508X 2016-08-21
CN201710148645 2017-03-11
CN2017101486453 2017-03-11

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202111381577.8A Division CN114501020A (en) 2016-08-21 2017-08-21 Image compression method and apparatus using nearest motion vector and neighboring motion vector

Publications (2)

Publication Number Publication Date
CN107770527A true CN107770527A (en) 2018-03-06
CN107770527B CN107770527B (en) 2021-12-14

Family

ID=61264992

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202111381577.8A Pending CN114501020A (en) 2016-08-21 2017-08-21 Image compression method and apparatus using nearest motion vector and neighboring motion vector
CN201710715886.1A Active CN107770527B (en) 2016-08-21 2017-08-21 Data compression method and apparatus using neighboring encoding parameters and nearest encoding parameters

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202111381577.8A Pending CN114501020A (en) 2016-08-21 2017-08-21 Image compression method and apparatus using nearest motion vector and neighboring motion vector

Country Status (1)

Country Link
CN (2) CN114501020A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110287149A (en) * 2019-05-10 2019-09-27 同济大学 A kind of matching coding method using Hash Search
CN112055219A (en) * 2020-08-05 2020-12-08 浙江大华技术股份有限公司 String matching prediction method and device and computer readable storage medium
WO2022116824A1 (en) * 2020-12-05 2022-06-09 腾讯科技(深圳)有限公司 Video decoding method, video encoding method, related devices, and storage medium

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020039450A1 (en) * 2000-10-02 2002-04-04 Nec Corporation Image sequence coding method
US20020176498A1 (en) * 2001-05-24 2002-11-28 Per Frojdh Selective prediction for intra-coding video data block
CN1788496A (en) * 2003-05-14 2006-06-14 索尼株式会社 Image processing device, image processing method, information processing device, information processing method, information recording device, information recording method, information reproduction dev
CN101283600A (en) * 2005-10-05 2008-10-08 松下电器产业株式会社 Reference image selection method and device
US20090225843A1 (en) * 2008-03-05 2009-09-10 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image
CN101584215A (en) * 2005-09-16 2009-11-18 索尼电子有限公司 Integrated spatial-temporal prediction
CN102065306A (en) * 2003-07-18 2011-05-18 三星电子株式会社 Image decoding apparatus
CN102227132A (en) * 2011-05-25 2011-10-26 深圳市融创天下科技股份有限公司 Motion vector prediction coding and decoding method, apparatus thereof and coding and decoding system
CN102263947A (en) * 2010-05-27 2011-11-30 香港科技大学 Method and system for motion estimation of images
CN104025601A (en) * 2011-12-30 2014-09-03 数码士有限公司 Method And Device For Encoding Three-Dimensional Image, And Decoding Method And Device
CN104853211A (en) * 2014-02-16 2015-08-19 上海天荷电子信息有限公司 Image compression method and apparatus employing various forms of reference pixel storage spaces

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020039450A1 (en) * 2000-10-02 2002-04-04 Nec Corporation Image sequence coding method
US20020176498A1 (en) * 2001-05-24 2002-11-28 Per Frojdh Selective prediction for intra-coding video data block
CN1788496A (en) * 2003-05-14 2006-06-14 索尼株式会社 Image processing device, image processing method, information processing device, information processing method, information recording device, information recording method, information reproduction dev
CN102065306A (en) * 2003-07-18 2011-05-18 三星电子株式会社 Image decoding apparatus
CN101584215A (en) * 2005-09-16 2009-11-18 索尼电子有限公司 Integrated spatial-temporal prediction
CN101283600A (en) * 2005-10-05 2008-10-08 松下电器产业株式会社 Reference image selection method and device
US20090225843A1 (en) * 2008-03-05 2009-09-10 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image
CN102263947A (en) * 2010-05-27 2011-11-30 香港科技大学 Method and system for motion estimation of images
CN102227132A (en) * 2011-05-25 2011-10-26 深圳市融创天下科技股份有限公司 Motion vector prediction coding and decoding method, apparatus thereof and coding and decoding system
CN104025601A (en) * 2011-12-30 2014-09-03 数码士有限公司 Method And Device For Encoding Three-Dimensional Image, And Decoding Method And Device
CN104853211A (en) * 2014-02-16 2015-08-19 上海天荷电子信息有限公司 Image compression method and apparatus employing various forms of reference pixel storage spaces

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JIANLE CHEN; ET AL: "Algorithm Description of Joint Exploration Test Model 2", 《JVET B1001》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110287149A (en) * 2019-05-10 2019-09-27 同济大学 A kind of matching coding method using Hash Search
CN112055219A (en) * 2020-08-05 2020-12-08 浙江大华技术股份有限公司 String matching prediction method and device and computer readable storage medium
CN112055219B (en) * 2020-08-05 2021-08-31 浙江大华技术股份有限公司 String matching prediction method and device and computer readable storage medium
WO2022116824A1 (en) * 2020-12-05 2022-06-09 腾讯科技(深圳)有限公司 Video decoding method, video encoding method, related devices, and storage medium

Also Published As

Publication number Publication date
CN107770527B (en) 2021-12-14
CN114501020A (en) 2022-05-13

Similar Documents

Publication Publication Date Title
US11216985B2 (en) Point cloud attribute compression method based on deleting 0 elements in quantisation matrix
CN107071450A (en) Coding, coding/decoding method and the device of data compression
CN104661033B (en) Use the decoding apparatus of tree structure
CN107046645A (en) Image coding/decoding method and device
CN103931187B (en) Image encoding apparatus, method for encoding images, image decoding apparatus, picture decoding method
WO2015032350A1 (en) Image compression method and device using block-matching
CN111800641A (en) Image coding and decoding method and device adopting different types of reconstructed pixels in same mode
CN102668560B (en) Embedded graphics coding: reordered bitstream for parallel decoding
CN108235007A (en) Each pattern uses the data compression method and device of different accuracy coding parameter of the same race
CN107483941A (en) Divide span and carry out data compression method and device that displacement moves vector coding
CN107770527A (en) Use neighbouring coding parameter and the data compression method and device of nearest coding parameter
CN113784124B (en) Block matching encoding and decoding method for fine division using multi-shape sub-blocks
CN107770540A (en) Merge the data compression method and device of a variety of primitives with different referring-to relations
CN109716767A (en) It is encoded using the forecast image of the residual coding based on transformation
CN103402091A (en) Cloud desktop image classifying and encoding method
CN106254865A (en) A kind of picture coding and coding/decoding method, image processing equipment
CN109889846A (en) A kind of compression of De-Mura table data and decompressing method, device and coding/decoding system
CN101632306A (en) The adaptive interpolation method and the system that are used for motion compensated predictive video coding and decoding
CN106331700A (en) Coding and decoding methods of reference image, coding device, and decoding device
CN107770553A (en) Using the data compression method and device of multiclass match parameter and parameter storage address
CN107483961A (en) Predict and go here and there position encoded data compression method and device using arcuate scanning string
CN103974069B (en) Reusable method for video coding and encoder
CN104093027A (en) Joint scalar embedded graphics coding for color images
CN108989819A (en) Each mode uses the data compression method and device of respectively corresponding color space
CN110290382A (en) A kind of residual error data coding and decoding methods

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant