WO2013094199A1 - Procédé de codage d'une image, dispositif de codage d'image, procédé de décodage d'une image, dispositif de décodage d'image et dispositif de codage/décodage d'image - Google Patents

Procédé de codage d'une image, dispositif de codage d'image, procédé de décodage d'une image, dispositif de décodage d'image et dispositif de codage/décodage d'image Download PDF

Info

Publication number
WO2013094199A1
WO2013094199A1 PCT/JP2012/008131 JP2012008131W WO2013094199A1 WO 2013094199 A1 WO2013094199 A1 WO 2013094199A1 JP 2012008131 W JP2012008131 W JP 2012008131W WO 2013094199 A1 WO2013094199 A1 WO 2013094199A1
Authority
WO
WIPO (PCT)
Prior art keywords
context
coefficient
encoding
decoding
block
Prior art date
Application number
PCT/JP2012/008131
Other languages
English (en)
Japanese (ja)
Inventor
健吾 寺田
西 孝啓
陽司 柴原
京子 谷川
寿郎 笹井
敏康 杉尾
徹 松延
Original Assignee
パナソニック株式会社
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 パナソニック株式会社 filed Critical パナソニック株式会社
Priority to RU2013135004A priority Critical patent/RU2609064C9/ru
Priority to AU2012355212A priority patent/AU2012355212B2/en
Priority to CA2825767A priority patent/CA2825767C/fr
Priority to CN201280006586.1A priority patent/CN103339937B/zh
Priority to BR112013018850-2A priority patent/BR112013018850B1/pt
Priority to KR1020137019638A priority patent/KR102071574B1/ko
Priority to SG2013057179A priority patent/SG192171A1/en
Priority to ES12860389T priority patent/ES2864591T3/es
Priority to PL12860389T priority patent/PL2797321T3/pl
Priority to MX2013008534A priority patent/MX2013008534A/es
Priority to EP12860389.1A priority patent/EP2797321B1/fr
Publication of WO2013094199A1 publication Critical patent/WO2013094199A1/fr

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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/537Motion estimation other than block-based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/18Methods 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 a set of transform coefficients
    • 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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • 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/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Definitions

  • the present invention relates to an image coding technique and an image decoding technique for performing arithmetic coding or arithmetic decoding.
  • Non-patent Document 1 Non-patent Document 1
  • the current HEVC standard includes a step of predicting an encoded image, a step of obtaining a difference between the predicted image and an encoding target image, a step of converting the difference image into a frequency coefficient, and an arithmetic encoding of the frequency coefficient.
  • the components (coefficients) included in the encoding target block are subjected to context adaptive arithmetic encoding in the order of, for example, a high frequency component to a low frequency component.
  • JCT-VC Joint Collaborative Team on Video Coding
  • the present invention provides an image encoding method capable of reducing a load of context selection processing for encoding a coefficient to be encoded in context adaptive arithmetic encoding.
  • An image encoding method is an image encoding method for encoding an image for each block, and includes a plurality of subblocks included in an encoding target block that is a transform unit, and a plurality of coefficients.
  • the encoding target coefficient For each of a plurality of sub-blocks each including a context for arithmetically encoding a parameter representing a coding target coefficient included in the sub-block from a context set corresponding to the sub-block, the encoding target coefficient A context selection step for selecting based on at least one reference coefficient located in the vicinity; and an arithmetic encoding step for arithmetically encoding a parameter representing the encoding target coefficient using probability information of the selected context.
  • the sub block in the encoding target block is Selecting said context from said context set that corresponds to the sum of the value indicating the value and the vertical position indicating the horizontal position of the click.
  • a recording medium such as a system, apparatus, integrated circuit, computer program, or computer-readable CD-ROM, and the system, method, integrated circuit, and computer program. And any combination of recording media.
  • the image coding method it is possible to reduce a load of context selection processing for coding a coding target coefficient in context adaptive arithmetic coding.
  • FIG. 1 is a diagram for explaining a context selection method for arithmetically encoding a significant_flag in the knowledge based on.
  • FIG. 2 is a diagram illustrating the coding order of the coefficients included in the coding target block in the knowledge that is the basis.
  • FIG. 3A is a diagram for explaining a context set for one coefficient included in a sub-block in the underlying knowledge.
  • FIG. 3B is a diagram for explaining a context set for another coefficient included in the sub-block in the underlying knowledge.
  • FIG. 4 is a block diagram showing a configuration of the image coding apparatus according to Embodiment 1.
  • FIG. 5 is a flowchart showing the processing operation of the image coding apparatus according to the first embodiment.
  • FIG. 5 is a flowchart showing the processing operation of the image coding apparatus according to the first embodiment.
  • FIG. 6 is a block diagram showing an internal configuration of the variable length coding unit in the first embodiment.
  • FIG. 7 is a flowchart showing the processing operation of the variable length coding unit in the first embodiment.
  • FIG. 8 is a block diagram showing an internal configuration of the significant_flag encoding unit in the first embodiment.
  • FIG. 9 is a flowchart showing the processing operation of the significant_flag encoding unit in the first embodiment.
  • FIG. 10A is a diagram illustrating an example of a grouping result in the case of a 16 ⁇ 16 pixel code block according to Embodiment 1.
  • FIG. 10B is a diagram illustrating an example of a grouping result in the case of a 32 ⁇ 32 pixel code block according to Embodiment 1.
  • FIG. 10A is a diagram illustrating an example of a grouping result in the case of a 16 ⁇ 16 pixel code block according to Embodiment 1.
  • FIG. 10B is a diagram illustrating an example of a grouping result in
  • FIG. 11A is a diagram for describing a context set for one coefficient included in a coefficient block in the first embodiment.
  • FIG. 11B is a diagram for describing a context set for another coefficient included in the coefficient block in the first embodiment.
  • FIG. 12 is a block diagram showing the configuration of the image decoding apparatus in the second embodiment.
  • FIG. 13 is a flowchart showing the processing operation of the image decoding apparatus according to the second embodiment.
  • FIG. 14 is a block diagram showing an internal configuration of the variable length decoding unit in the second embodiment.
  • FIG. 15 is a flowchart showing the processing operation of the variable length decoding unit in the second embodiment.
  • FIG. 16 is a block diagram showing an internal configuration of the significant_flag decoding unit in the second embodiment.
  • FIG. 17 is a flowchart showing the processing operation of the significant_flag decoding unit in the second embodiment.
  • FIG. 18 is a block diagram illustrating a configuration of an image encoding device according to a modification of the first embodiment.
  • FIG. 19 is a flowchart showing the processing operation of the image coding apparatus according to the modification of the first embodiment.
  • FIG. 20 is a block diagram showing a configuration of an image decoding apparatus according to a modification of the second embodiment.
  • FIG. 21 is a flowchart showing processing operations of the image decoding apparatus according to the modification of the second embodiment.
  • FIG. 22 is an overall configuration diagram of a content supply system that implements a content distribution service.
  • FIG. 23 is an overall configuration diagram of a digital broadcasting system.
  • FIG. 24 is a block diagram illustrating a configuration example of a television.
  • FIG. 25 is a block diagram illustrating a configuration example of an information reproducing / recording unit that reads and writes information from and on a recording medium that is an optical disk.
  • FIG. 26 is a diagram illustrating a structure example of a recording medium that is an optical disk.
  • FIG. 27A is a diagram illustrating an example of a mobile phone.
  • FIG. 27B is a block diagram illustrating a configuration example of a mobile phone.
  • FIG. 28 is a diagram showing a structure of multiplexed data.
  • FIG. 29 is a diagram schematically showing how each stream is multiplexed in the multiplexed data.
  • FIG. 30 is a diagram showing in more detail how the video stream is stored in the PES packet sequence.
  • FIG. 31 is a diagram illustrating the structure of TS packets and source packets in multiplexed data.
  • FIG. 32 shows the data structure of the PMT.
  • FIG. 33 is a diagram showing an internal configuration of multiplexed data information.
  • FIG. 34 shows the internal structure of stream attribute information.
  • FIG. 35 is a diagram showing steps for identifying video data.
  • FIG. 36 is a block diagram illustrating a configuration example of an integrated circuit that realizes the moving picture coding method and the moving picture decoding method according to each embodiment.
  • FIG. 37 is a diagram illustrating a configuration for switching the driving frequency.
  • FIG. 38 is a diagram illustrating steps for identifying video data and switching between driving frequencies.
  • FIG. 39 is a diagram showing an example of a lookup table in which video data standards are associated with drive frequencies.
  • FIG. 40A is a diagram illustrating an example of a configuration for sharing a module of a signal processing unit.
  • FIG. 40B is a diagram illustrating another example of a configuration
  • the context for arithmetically encoding the encoding target coefficient is selected according to the encoded coefficients around the encoding target coefficient.
  • the encoding target coefficient is arithmetically encoded using a symbol occurrence probability corresponding to the selected context.
  • the symbol occurrence probability can be biased by selecting the context with reference to the encoded peripheral coefficients (coefficients having higher frequency components than the encoding target coefficients). For example, if the value of the encoded peripheral coefficient is large, there is a high probability that the value of the encoding target coefficient is also large. Therefore, when the encoded peripheral coefficient value is large, the generated code amount can be reduced by using a context for a large value for arithmetic coding of the coding target coefficient.
  • a plurality of coefficients in the encoding target block are grouped based on frequency components.
  • a different context set is used for each group. That is, each coefficient is arithmetically encoded using a context selected from the context set corresponding to the group to which the coefficient belongs.
  • FIG. 1 is a diagram for explaining a context selection method for arithmetic coding of the significant_flag.
  • the encoding target block includes 16 ⁇ 16 pixels. Each pixel has a coefficient. The pixel located at the upper left has a low frequency component coefficient, and the pixel located at the lower right has a high frequency component coefficient.
  • Each pixel belongs to either group A or group B.
  • group A is a group to which pixels that are not hatched belong.
  • Group B is a group to which hatched pixels belong.
  • the context for arithmetically encoding the significant_flag representing the coefficient of each pixel is selected from the context set corresponding to the group to which the pixel belongs. For example, for the significant_flag of the pixel located in the upper left corner, a context is selected from the context set A corresponding to the group A. On the other hand, for the significant_flag of the pixel located at the lower right corner, for example, a context is selected from the context set B corresponding to the group B.
  • the selection of the context from the context set is performed based on the coefficient (reference coefficient) of the reference pixel located in the vicinity of the encoding target pixel (encoding target coefficient).
  • the context to be selected from the context set using five reference coefficients in total that is, two coefficients located on the right side of the encoding target coefficient, two coefficients located on the lower side, and coefficients located on the lower right side, It is determined.
  • a plurality of pixels are grouped as shown in FIG. 1 and a context is selected by using a characteristic in which a coefficient is biased by a frequency component by using a reference coefficient in the vicinity of an encoding target coefficient. Encoding efficiency can be improved.
  • FIG. 2 shows the encoding order of the coefficients included in the encoding target block.
  • the 16 ⁇ 16 pixel encoding target block is divided into a plurality of 4 ⁇ 4 pixel sub-blocks surrounded by a thick line.
  • the number described in the sub-block indicates the encoding order. That is, the plurality of coefficients included in the encoding target block are encoded in units of subblocks in the order indicated by the broken-line arrows.
  • the plurality of coefficients included in the sub-block are encoded in the order indicated by the arrow written in the thirteenth sub-block.
  • 3A and 3B are diagrams for explaining context sets for different coefficients included in the sub-block located in the upper left corner.
  • the encoding target coefficient in FIG. 3A and the encoding target coefficient in FIG. 3B are included in the same sub-block, but are included in different groups. That is, the context for arithmetically encoding the encoding target coefficient in FIG. 3A and the context for arithmetically encoding the encoding target coefficient in FIG. 3B are selected from different context sets.
  • context set switching occurs in the sub-block.
  • an image encoding method is an image encoding method for encoding an image for each block, and includes a plurality of subblocks included in an encoding target block that is a transform unit. For each of a plurality of sub-blocks each including a coefficient, a context for arithmetically encoding a parameter representing a coefficient to be encoded included in the sub-block from a context set corresponding to the sub-block is the encoding target A context selection step for selecting based on at least one reference coefficient located around the coefficient, and an arithmetic encoding step for arithmetically encoding a parameter representing the encoding target coefficient using probability information of the selected context; In the context selection step, the relevant block in the encoding target block Corresponds to the sum of the value indicating the value and the vertical position indicating the horizontal position of the subblock selects the context from the context set.
  • a context can be selected from the context set corresponding to the sub-block. Therefore, it is possible to prevent context set switching within the sub-block, and it is possible to reduce the load of context selection processing.
  • this method it is possible to select a context from a context set corresponding to the sum of a value indicating the position in the horizontal direction and a value indicating the position in the vertical direction of the sub-block in the encoding target block. Therefore, a context set suitable for coefficient bias due to frequency components can be used, and a decrease in coding efficiency due to the use of a context set corresponding to a sub-block can be suppressed.
  • a horizontal distance and a vertical distance from the position of the upper left coefficient in the encoding target block to the position of the encoding target coefficient are represented as H and V, respectively, and
  • the vertical and horizontal sizes of the block are expressed as ⁇ , “the integer part of (H / ⁇ ) + the integer part of (V / ⁇ )” may be calculated as the sum.
  • the context selection step when the sum is less than or equal to a threshold, the context is selected from a first context set, and when the sum is greater than the threshold, a second context different from the first context set is selected.
  • the context may be selected from the set.
  • a context can be selected from the first context set when the sum is less than or equal to the threshold, and a context can be selected from the second context set when the sum is greater than the threshold. Therefore, the context set can be easily switched between the sub-blocks based on the comparison result between the sum and the threshold value.
  • the larger threshold may be calculated as the size of the encoding target block is larger.
  • a larger threshold value can be calculated as the size of the encoding target block is larger. Accordingly, when the coefficient bias differs depending on the size of the encoding target block, it is possible to select a context from an appropriate context set.
  • the at least one reference coefficient may be a coefficient having a higher frequency component than the encoding target coefficient.
  • a coefficient having a higher frequency component than the encoding target coefficient can be used as a reference coefficient.
  • the coefficient of the low frequency component is often larger than the coefficient of the high frequency component. Therefore, by using a coefficient having a higher frequency component than the encoding target coefficient as a reference coefficient, it is possible to select an appropriate context using general image characteristics.
  • the parameter indicating the encoding target coefficient may be a flag indicating whether the encoding target coefficient is 0 or not.
  • a flag indicating whether or not the encoding target coefficient is 0 can be encoded as a parameter representing the encoding target coefficient.
  • This flag is a parameter with a high occurrence frequency and has a great influence on the coding efficiency. Further, unlike the parameter whose number of occurrences is limited within a sub-block, there is no value bias due to the sub-block. However, even when such a flag is encoded, even if a context is selected from the context set corresponding to the sub-block, a decrease in encoding efficiency can be suppressed.
  • the at least one reference coefficient may be a plurality of reference coefficients
  • the context selection step may select the context corresponding to the number of reference coefficients whose values are not 0 among the plurality of reference coefficients.
  • a context can be selected using the number of reference coefficients whose values are not 0 among a plurality of reference coefficients. Therefore, it is possible to select an appropriate context based on the reference coefficient.
  • the image encoding method further includes a switching step of switching the encoding process to a first encoding process compliant with the first standard or a second encoding process compliant with the second standard, and the switched An addition step of adding identification information indicating the first standard or the second standard to which the encoding process conforms to a bitstream, and when the encoding process is switched to the first encoding process, As the first encoding process, the context selection step and the arithmetic encoding step may be performed.
  • An image decoding method is an image decoding method for decoding an image encoded for each block, and includes a plurality of sub-blocks included in a decoding target block that is a transform unit. For each of a plurality of sub-blocks each including a plurality of coefficients, a context for arithmetically decoding a parameter representing a decoding target coefficient included in the sub-block from a context set corresponding to the sub-block, A context selecting step for selecting based on at least one reference coefficient located around the decoding target coefficient, and an arithmetic decoding of a parameter representing the decoding target coefficient using probability information of the selected context A decoding step, and in the context selection step, the decoding target block includes Kicking selecting the context from the context set that corresponds to the sum of the value indicating the value and the vertical position indicating the horizontal position of the sub-blocks.
  • a context can be selected from the context set corresponding to the sub-block. Therefore, it is possible to prevent context set switching within the sub-block, and it is possible to reduce the load of context selection processing.
  • this method it is possible to select a context from a context set corresponding to the sum of the value indicating the horizontal position and the value indicating the vertical position of the sub-block in the decoding target block. Therefore, it is possible to use a context set suitable for coefficient bias due to frequency components, and to appropriately decode a code string in which a decrease in encoding efficiency due to the use of a context set corresponding to a sub-block is suppressed. it can.
  • a horizontal distance and a vertical distance from the position of the upper left coefficient in the decoding target block to the position of the decoding target coefficient are represented as H and V, respectively, and
  • the vertical and horizontal sizes of the block are expressed as ⁇ , “the integer part of (H / ⁇ ) + the integer part of (V / ⁇ )” may be calculated as the sum.
  • the context selection step when the sum is less than or equal to a threshold, the context is selected from a first context set, and when the sum is greater than the threshold, a second context different from the first context set is selected.
  • the context may be selected from the set.
  • a context can be selected from the first context set when the sum is less than or equal to the threshold, and a context can be selected from the second context set when the sum is greater than the threshold. Therefore, the context set can be easily switched between the sub-blocks based on the comparison result between the sum and the threshold value.
  • the larger threshold may be calculated as the size of the decoding target block is larger.
  • a larger threshold value can be calculated as the size of the decoding target block is larger. Therefore, when the method of biasing the coefficients varies depending on the size of the decoding target block, it is possible to select a context from an appropriate context set.
  • the at least one reference coefficient may be a coefficient having a higher frequency component than the decoding target coefficient.
  • a coefficient having a higher frequency component than the decoding target coefficient can be used as a reference coefficient.
  • the coefficient of the low frequency component is often larger than the coefficient of the high frequency component. Therefore, by using a coefficient having a higher frequency component than the decoding target coefficient as a reference coefficient, it is possible to select an appropriate context using general image characteristics.
  • the parameter indicating the decoding target coefficient may be a flag indicating whether the decoding target coefficient is 0 or not.
  • a flag indicating whether or not the decoding target coefficient is 0 can be decoded as a parameter representing the decoding target coefficient.
  • This flag is a parameter with a high occurrence frequency and has a great influence on the coding efficiency. Further, unlike the parameter whose number of occurrences is limited within a sub-block, there is no value bias due to the sub-block. However, even when such a flag is encoded, even if a context is selected from the context set corresponding to the sub-block, a decrease in encoding efficiency can be suppressed.
  • the at least one reference coefficient may be a plurality of reference coefficients
  • the context selection step may select the context corresponding to the number of reference coefficients whose values are not 0 among the plurality of reference coefficients.
  • a context can be selected using the number of reference coefficients whose values are not 0 among a plurality of reference coefficients. Therefore, it is possible to select an appropriate context based on the reference coefficient.
  • the image decoding method may further include a first decoding process based on the first standard, or the second standard according to identification information indicating the first standard or the second standard added to the bitstream.
  • the second decoding process compliant with the above includes a switching step of switching the decoding process, and when the decoding process is switched to the first decoding process, as the first decoding process, the context selection step The arithmetic decoding step may be performed.
  • a recording medium such as a system, apparatus, integrated circuit, computer program, or computer-readable CD-ROM, and the system, method, integrated circuit, and computer program. And any combination of recording media.
  • FIG. 4 shows a configuration of image coding apparatus 100 in the first embodiment.
  • the image encoding device 100 encodes an image for each block.
  • the image coding apparatus 100 includes a code block division unit 101, a prediction unit 102, a subtraction unit 103, a conversion unit 104, a variable length coding unit 105, an inverse conversion unit 106, an addition unit 107, and a frame memory. 108.
  • the code block dividing unit 101 divides an input image (input picture) into a plurality of code blocks.
  • the code block is a unit (conversion unit) in which frequency conversion is performed, for example.
  • the transform unit has the same size as the coding unit or a size smaller than the coding unit.
  • the code block division unit 101 sequentially outputs a plurality of code blocks to the prediction unit 102 and the subtraction unit 103.
  • the prediction unit 102 generates a prediction image (prediction block) of a code block. For example, the prediction unit 102 generates a prediction block by inter prediction or intra prediction.
  • the subtraction unit 103 generates a prediction error image (difference block) of the code block by subtracting the prediction image of the code block from the image of the code block.
  • the conversion unit 104 generates a plurality of frequency coefficients by performing frequency conversion on the difference block. Note that the conversion unit 104 generates a plurality of quantized coefficients by quantizing the plurality of frequency coefficients as necessary. In the following, frequency coefficients and quantization coefficients are simply referred to as coefficients without being distinguished from each other.
  • variable length coding unit 105 performs variable length coding on the plurality of coefficients generated by the conversion unit 104. Furthermore, the variable length coding unit 105 performs variable length coding on prediction information (for example, motion vector information). Details of the variable length coding unit 105 will be described later.
  • the inverse transformation unit 106 restores the difference block by inversely transforming a plurality of coefficients.
  • the addition unit 107 generates a decoded image (decoded block) of the code block by adding the predicted image of the encoded block and the restored error image.
  • the frame memory 108 stores a decoded image.
  • FIG. 5 is a flowchart showing the processing operation of the image coding apparatus 100 according to the first embodiment.
  • Step S101 The code block dividing unit 101 divides an input image into a plurality of code blocks. Then, the code block division unit 101 sequentially outputs a plurality of code blocks to the subtraction unit 103 and the prediction unit 102.
  • the code block has a variable size. Therefore, the code block dividing unit 101 divides the input image into a plurality of code blocks using the feature of the image.
  • the minimum size of the code block is, for example, horizontal 4 pixels ⁇ vertical 4 pixels.
  • the maximum size of the code block is, for example, horizontal 32 pixels ⁇ vertical 32 pixels.
  • Step S102 The prediction unit 102 generates a prediction block based on the code block and the decoded image stored in the frame memory 108.
  • Step S103 The subtraction unit 103 generates a difference block by subtracting the prediction block from the input image.
  • Step S104 The conversion unit 104 converts the difference block into a plurality of coefficients.
  • Step S105 The variable length coding unit 105 outputs a code string by performing variable length coding on a plurality of coefficients.
  • Step S106 The inverse transformation unit 106 restores the difference block by inversely transforming a plurality of coefficients.
  • Step S107 The adding unit 107 generates a decoded block by adding the restored difference block and the prediction block. Further, the adding unit 107 stores the generated decoded block in the frame memory 108.
  • Step S108 Steps S102 to S107 are repeated until encoding of all code blocks in the input image is completed.
  • FIG. 6 shows an internal configuration of variable length coding section 105 in the first embodiment.
  • the variable-length encoding unit 105 encodes each coefficient using at least one of the five parameters of significant_flag, greater1_flag, greater2_flag, level_minus3, and sign_flag.
  • the variable length coding unit 105 includes a coefficient block division unit 111, a significant_flag coding unit 112, a greeter1_flag coding unit 113, a glater2_flag coding unit 114, a level_minus3 coding unit 115, and a sign_flag coding unit 116. Prepare.
  • the coefficient block dividing unit 111 divides the code block into a plurality of coefficient blocks.
  • a coefficient block is an example of a sub-block.
  • the coefficient block dividing unit 111 divides the code block into coefficient blocks of 4 ⁇ 4 pixels. That is, in the present embodiment, the coefficient block includes 16 coefficients.
  • the significant_flag encoding unit 112 encodes the significant_flag.
  • the significant_flag is a flag indicating whether the coefficient is “0”. When the value of the significant_flag is “0”, it indicates that the coefficient is “0”. On the other hand, when the value of the significant_flag is “1”, it indicates that the coefficient is not “0”. Details of the significant_flag encoding unit 112 will be described later.
  • the greater1_flag encoding unit 113 encodes greater1_flag only when the significant_flag is “1” (when the coefficient is not “0”).
  • glater1_flag is a flag indicating whether the absolute value of the coefficient is greater than 1.
  • greeter1_flag is “0”, it indicates that the absolute value of the coefficient is “1”.
  • greeter1_flag is “1”
  • it indicates that the absolute value of the coefficient is 2 or more.
  • the greater2_flag encoding unit 114 encodes greater2_flag only when the greater1_flag is “1” (when the absolute value of the coefficient is “2” or more). “glater2_flag” is a flag indicating whether or not the absolute value of the coefficient is larger than “2”. When the value of greeter2_flag is “0”, it indicates that the absolute value of the coefficient is “2”. On the other hand, when the value of greeter2_flag is “1”, it indicates that the absolute value of the coefficient is “3” or more.
  • the level_minus3 encoding unit 115 encodes the level_minus3 only when the value of the flager2_flag is “1” (when the absolute value of the coefficient is 3 or more). level_minus3 indicates a value obtained by subtracting “3” from the absolute value of the coefficient.
  • the sign_flag encoding unit 116 encodes the sign_flag only when the significant_flag is “1” (when the coefficient is not “0”).
  • the sign_flag is a flag indicating whether the coefficient is a negative value.
  • the sign_flag value of “0” indicates that the coefficient is a positive value.
  • the value of the sign_flag is “1”, it indicates that the coefficient is a negative value.
  • FIG. 7 is a flowchart showing the processing operation of the variable length coding unit 105 in the first embodiment.
  • Step S111 The coefficient block dividing unit 111 divides the code block into coefficient blocks of 4 ⁇ 4 pixels. For example, when the code block is 32 ⁇ 32 pixels, the coefficient block dividing unit 111 divides the code block into 8 parts horizontally and 8 parts vertically. For example, when the code block is 4 ⁇ 4 pixels, the code block is not divided.
  • the subsequent steps S112 to S116 are executed for each coefficient block of 4 ⁇ 4 pixels.
  • Step S112 The significant_flag encoding unit 112 arithmetically encodes the significant_flag using the context.
  • Step S113 The greater1_flag encoding unit 113 arithmetically encodes the greater1_flag using the context.
  • Step S114 The greater2_flag encoding unit 114 arithmetically encodes the greater2_flag using the context.
  • Step S115 The level_minus3 encoding unit 115 arithmetically encodes the level_minus3. Specifically, the level_minus3 encoding unit 115 performs arithmetic encoding using a fixed symbol occurrence probability (50%) without using a context.
  • Step S116 The sign_flag encoding unit 116 arithmetically encodes the sign_flag. Specifically, as with the level_minus3 encoding unit 115, the sign_flag encoding unit 116 performs arithmetic encoding using a fixed symbol occurrence probability (50%) without using a context.
  • Step S117 Steps S112 to S116 are repeated until encoding of all coefficient blocks in the code block is completed.
  • FIG. 8 shows the internal configuration of the significant_flag encoding unit 112 in the first embodiment.
  • the significant_flag encoding unit 112 includes a significant_flag group setting unit 121, a significant_flag setting unit 122, a significant_flag memory 123, a significant_flag context selection unit 124, an arithmetic code t, an arithmetic code t, and an arithmetic code t.
  • the significant_flag group setting unit 121 groups a plurality of coefficient blocks included in the code block. Specifically, the significant_flag group setting unit 121 groups a plurality of coefficient blocks using a sum of a value indicating the horizontal position and a value indicating the vertical position of the coefficient block in the code block. More specifically, the significant_flag group setting unit 121 divides the plurality of coefficient blocks into different groups, for example, when the sum is equal to or less than a threshold (group determination threshold) and when the sum is greater than the threshold.
  • group determination threshold when the sum is greater than the threshold.
  • the value indicating the horizontal and vertical positions of the coefficient block is derived from the value indicating the horizontal position of the coefficient included in the coefficient block (coefficient horizontal position) and the value indicating the vertical position (coefficient vertical position). Is done. Specifically, the significant_flag group setting unit 121 derives, for example, “an integer part of (coefficient horizontal position / coefficient block horizontal size)” as a value indicating the horizontal position of the coefficient block. Further, for example, the significant_flag group setting unit 121 derives “the integer part of (coefficient vertical position / coefficient block vertical size)” as a value indicating the vertical position of the coefficient block.
  • coefficient horizontal position and the coefficient vertical position for example, horizontal and vertical distances from the position of the upper left coefficient in the code block to the position of the coefficient included in the coefficient block can be used, respectively.
  • the significant_flag setting unit 122 sequentially reads out a plurality of coefficients included in the coefficient block for each coefficient block. Then, the significant_flag setting unit 122 sets a value in the significant_flag of the coefficient based on whether or not the read coefficient is “0”. In the present embodiment, the significant_flag setting unit 122 sets “0” to the significant_flag when the coefficient is “0”, and sets “1” to the significant_flag when the coefficient is not “0”.
  • the significant_flag setting unit 122 stores the significant_flag of each coefficient in the significant_flag memory 123.
  • the significant_flag memory 123 stores the significant_flag of each coefficient.
  • the significant_flag context selection unit 124 calculates a context for arithmetically encoding a parameter representing a processing target coefficient (encoding target coefficient) included in the coefficient block from a context set corresponding to the coefficient block. , Based on at least one reference coefficient located around the processing target coefficient. Specifically, the significant_flag context selection unit 124 selects a context from a context set corresponding to the sum of the value indicating the horizontal position and the value indicating the vertical position of the coefficient block in the code block.
  • the arithmetic encoding unit 125 acquires the probability information of the selected context from the significant_flag context memory 126. Then, the arithmetic encoding unit 125 arithmetically encodes the parameter representing the processing target coefficient using the acquired context probability information.
  • the parameter is a significant_flag.
  • the arithmetic encoding unit 125 updates the probability information of the context stored in the significant_flag context memory 126 according to the value of the significant_flag.
  • the significant_flag context memory 126 stores probability information for each context.
  • FIG. 9 shows the processing operation of the significant_flag encoding unit 112 in the first embodiment. Note that the encoding order of the significant_flag of a plurality of coefficients included in the coefficient block is the same as that in FIG. That is, the significant_flag is encoded in coefficient blocks.
  • the significant_flag group setting unit 121 calculates a group determination threshold value. For example, the significant_flag group setting unit 121 divides the horizontal size of the code block by “16”, for example. Then, the significant_flag group setting unit 121 sets the integer part of the division result as the group determination threshold value.
  • the significant_flag group setting unit 121 calculates a larger threshold value as the code block size is larger.
  • an appropriate context set can be associated with a coefficient block when the bias of the coefficient differs depending on the size of the code block.
  • the threshold value may be a constant value that does not depend on the size of the code block. In this case, the significant_flag group setting unit 121 does not have to calculate the threshold using the size of the code block.
  • Step S122 The significant_flag group setting unit 121 adds the integer part of “coefficient horizontal position / 4” and the integer part of “coefficient vertical position / 4”. Then, the significant_flag group setting unit 121 compares the addition result with the group determination threshold set in step S121. If the addition result is equal to or smaller than the group determination threshold value, the process proceeds to step S123. Otherwise, the process proceeds to step S124.
  • the coefficient horizontal position and coefficient vertical position are values indicating the horizontal and vertical positions of the coefficients to be processed in the code block or their positions.
  • the coefficient horizontal position and the coefficient vertical position are distances (number of pixels) in the horizontal direction and the vertical direction from the upper left coefficient to the processing target coefficient in the code block. That is, in the upper left coefficient, both the coefficient horizontal position and the coefficient vertical position are “0”.
  • the reason why the coefficient horizontal position and the coefficient vertical position are respectively divided by “4” is that the horizontal size and vertical size of the coefficient block are “4”.
  • Step S123 The significant_flag group setting unit 121 sets “A” to the group.
  • Step S124 The significant_flag group setting unit 121 sets “B” to the group.
  • FIG. 10A shows an example of a grouping result in the case of a 16 ⁇ 16 pixel code block.
  • FIG. 10B shows an example of a grouping result in the case of a 32 ⁇ 32 pixel code block.
  • FIG. 10A in the case of a code block of 16 ⁇ 16 pixels, only one coefficient block at the upper left is included in the group A. Also, as shown in FIG. 10B, in the case of a 32 ⁇ 32 pixel code block, the upper left three coefficient blocks are included in the group A.
  • the subsequent steps S125 to S139 are processing for each coefficient in the coefficient block, and are repeated until the processing of all the coefficients in the coefficient block is completed.
  • Step S125 The significant_flag setting unit 122 determines whether the processing target coefficient is “0”. If the processing target coefficient is “0”, the process proceeds to step S126. If the processing target coefficient is not “0”, the process proceeds to step S127.
  • Step S126 The significant_flag setting unit 122 sets “0” to the significant_flag. Then, the significant_flag setting unit 122 outputs the significant_flag in which “0” is set to the arithmetic coding unit 125 and the significant_flag memory 123.
  • Step S127 The significant_flag setting unit 122 sets “1” to the significant_flag. Then, the significant_flag setting unit 122 outputs the significant_flag set to “1” to the arithmetic coding unit 125 and the significant_flag memory 123.
  • Step S1228 The significant_flag context selection unit 124 sets “0” to the SNUM used in the subsequent processing.
  • the subsequent steps S129 to S132 are processed for each processed coefficient, and are repeated until all the processed coefficients are processed.
  • Step S129 The significant_flag context selection unit 124 determines whether the processed coefficient is a higher frequency component coefficient than the processing target coefficient. If the processed coefficient is a coefficient having a higher frequency component than the coefficient to be processed, the process proceeds to step S130. Otherwise, the process proceeds to step S133. That is, the significant_flag context selection unit 124 uses a coefficient having a higher frequency component than the processing target coefficient as a reference coefficient.
  • the significant_flag context selection unit 124 determines whether the processed coefficient is located in the right direction, the downward direction, or the lower right direction of the processing target coefficient, so that the processed coefficient is higher in frequency component than the processing target coefficient. It is determined whether the coefficient is.
  • the significant_flag context selection unit 124 calculates a difference between the processed coefficient position and the processing target coefficient position, and sets a horizontal position difference in h and a vertical position difference in v.
  • Step S131 The significant_flag context selection unit 124 determines whether the sum of h and v set in step S130 is “2” or less. If the sum of h and v is “2” or less, the process proceeds to step S132; otherwise, the process proceeds to step S133. That is, the significant_flag context selection unit 124 uses a processed coefficient whose sum of h and v is “2” or less as a reference coefficient, and uses a processed coefficient whose sum of h and v is “3” or more as a reference coefficient. Not in. In other words, a total of five coefficients are used as the reference coefficients: the right coefficient, the right coefficient, the lower coefficient, the lower coefficient, and the lower right coefficient of the processing target coefficient. The reference coefficient position is the same as the reference coefficient shown in FIG.
  • Step S132 The significant_flag context selection unit 124 loads the value of the significant_flag of the processed coefficient (reference coefficient) from the significant_flag memory 123 and adds it to the SNUM.
  • Step S133 The significant_flag context selection unit 124 repeats Steps S129 to S132 until all processed coefficients in the code block are processed.
  • step S132 the number of reference coefficients having a signature_flag “1” among the reference coefficients around the processing target coefficient is set in the final SNUM. That is, SNUM indicates the number of reference coefficients whose values are not 0 among a plurality of reference coefficients.
  • SNUM can take a value of 0-5.
  • Step S134 The significant_flag context selection unit 124 determines whether SNUM is greater than “3”. If SNUM is larger than “3”, the process proceeds to step S135, and otherwise, the process proceeds to step S136.
  • Step S135) The significant_flag context selection unit 124 sets “4” to the SNUM. That is, the significant_flag context selection unit 124 resets the value of the SNUM so that the SNUM does not exceed “4”.
  • Step S136 The significant_flag context selection unit 124 sets the SNUM as the context number when the coefficient block including the processing target coefficient is included in the group A.
  • the significant_flag context selection unit 124 sets the result obtained by adding “5” to the SUM when the coefficient block including the processing target coefficient is included in the group B.
  • any one of the contexts indicated by the context numbers 0 to 4 is selected for arithmetic coding of the processing target coefficient in the coefficient block included in group A, and the processing target coefficient in the coefficient block included in group B is selected.
  • Any of the contexts indicated by the context numbers 5 to 9 is selected for the arithmetic coding.
  • the significant_flag context selection unit 124 when the sum of the value indicating the horizontal position and the value indicating the vertical position of the coefficient block is equal to or less than a threshold value, the first context set (contexts of context numbers 0 to 4). Select a context from. Further, the significant_flag context selection unit 124, when the sum of the value indicating the horizontal position of the coefficient block and the value indicating the vertical position of the coefficient block is equal to or less than a threshold value, the second context set (contexts of context numbers 5 to 9) Select a context from. That is, which context set is used depends on the group to which the coefficient block belongs.
  • the significant_flag context selection unit 124 selects a context corresponding to the number of reference coefficients whose value is not “0” (in other words, the number of reference coefficients whose value is “0”) among a plurality of reference coefficients. To do.
  • Step S137 The arithmetic encoding unit 125 loads context probability information from the significant_flag context memory 126 according to the context number.
  • Step S138 The arithmetic encoding unit 125 outputs a code string by arithmetically encoding the significant_flag using the probability information.
  • Step S139 The arithmetic encoding unit 125 updates the context probability information according to the value of the significant_flag, and stores the updated context probability information in the significant_flag context memory 126.
  • Step S140 Steps S125 to S139 are repeated until processing of all the coefficients in the coefficient block is completed.
  • step S140 determines whether the context set corresponding to the determined group needs to be loaded from the memory, so that the memory load can be reduced.
  • FIG. 11A and FIG. 11B are diagrams for explaining context sets for different coefficients included in the coefficient block in the first embodiment.
  • group (context set) switching within the coefficient block as shown in FIGS. 3A and 3B does not occur. Therefore, the image coding apparatus 100 does not need to determine for each coefficient which context set to select from the context, and can reduce the load of the context selection process.
  • the image coding apparatus 100 can select a context from a context set corresponding to the sum of the value indicating the horizontal position and the value indicating the vertical position of the coefficient block in the code block. Therefore, the image coding apparatus 100 can use a context set suitable for coefficient bias due to frequency components, and can suppress a decrease in coding efficiency due to the use of a context set corresponding to a coefficient block.
  • the image encoding device 100 in the present embodiment when arithmetic-signing the significant_flag, it is possible to select a context from the context set corresponding to the coefficient block.
  • Significant_flag is a parameter with a high occurrence frequency and has a large influence on coding efficiency. Further, the significant_flag is different from the parameter whose number of occurrences is limited in the coefficient block, and there is no value bias due to the coefficient block.
  • the present inventors have found that when such a significant_flag is encoded, the encoding efficiency does not decrease even if a context is selected from the context set corresponding to the coefficient block. That is, the image encoding device 100 can reduce the load of the context selection process while suppressing a decrease in encoding efficiency in the arithmetic encoding of the significant_flag.
  • FIG. 12 shows the configuration of image decoding apparatus 200 in the second embodiment.
  • the image decoding device 200 decodes an image encoded for each block. Specifically, the image decoding apparatus 200 decodes the image encoded by the image encoding apparatus 100 in the first embodiment.
  • the image decoding apparatus 200 includes a variable length decoding unit 201, an inverse transformation unit 202, a prediction unit 203, an addition unit 204, a decoded block combination unit 205, and a frame memory 206.
  • the variable length decoding unit 201 obtains a plurality of coefficients and prediction information (for example, motion vector information) for each decoding target block by performing variable length decoding on the code string.
  • prediction information for example, motion vector information
  • the inverse transform unit 202 generates an error image (difference block) of the decoding target block by inversely transforming a plurality of coefficients.
  • the prediction unit 203 uses the prediction information and the decoded image (decoded picture) stored in the frame memory 206 to generate a predicted image (predicted block) of the decoding target block.
  • the addition unit 204 generates a decoded image (decoded block) of the decoding target block by adding the error image of the decoding target block and the predicted image.
  • the decoded block combining unit 205 generates a decoded image by combining a plurality of decoded blocks. Further, the decoded block combining unit 205 stores the decoded image in the frame memory 206.
  • the frame memory 206 stores a decoded image.
  • FIG. 13 is a flowchart showing processing operations of the image decoding apparatus 200 according to the second embodiment.
  • Step S201 The variable length decoding unit 201 obtains a plurality of coefficients and prediction information by performing variable length decoding on the code string. Then, the variable length decoding unit 201 outputs a plurality of coefficients to the inverse transformation unit 202 and outputs prediction information to the prediction unit 203.
  • Step S202 The inverse conversion unit 202 generates a difference block by inversely converting a plurality of coefficients.
  • Step S203 The prediction unit 203 generates a prediction block using the decoded image stored in the frame memory 206 and the prediction information decoded by the variable length decoding unit 201.
  • Step S204 The adding unit 204 generates a decoded block by adding the prediction block and the difference block.
  • Step S205 Steps S201 to S204 are repeated until decoding of all the decoded blocks in the image is completed.
  • Step S206 The decoded block combining unit 205 generates a decoded image by combining the decoded blocks. Further, the decoded block combining unit 205 stores the decoded image in the frame memory 206.
  • FIG. 14 shows an internal configuration of variable length decoding section 201 in the second embodiment.
  • each coefficient is expressed using at least one of five parameters, namely, significant_flag, greater1_flag, greater2_flag, level_minus3, and sign_flag.
  • significant_flag greater1_flag
  • greater2_flag greater2_flag
  • level_minus3 sign_flag
  • the variable length decoding unit 201 includes a significant_flag decoding unit 211, a greeter1_flag decoding unit 212, a glater2_flag decoding unit 213, a level_minus3 decoding unit 214, a sign_flag decoding unit 215, a coefficient restoration unit 216, a coefficient And a block coupling unit 217.
  • FIG. 15 is a flowchart showing the processing operation of the variable length decoding unit 201 in the second embodiment. Steps S211 to S216 are processed for each coefficient block included in the decoding target block.
  • Step S211 The significant_flag decoding unit 211 arithmetically decodes the significant_flag of each coefficient included in the coefficient block using the context. Then, the significant_flag decoding unit 211 outputs the significant_flag to the greeter1_flag decoding unit 212, the glater2_flag decoding unit 213, the level_minus3 decoding unit 214, the sign_flag decoding unit 215, and the coefficient restoration unit 216.
  • Step S212 The glitter1_flag decoding unit 212 uses the context to arithmetically decode the coefficient1_flag of the coefficient whose significant_flag is “1”. Then, the greater1_flag decoding unit 212 outputs the greater1_flag to the greater2_flag decoding unit 213, the level_minus3 decoding unit 214, and the coefficient restoration unit 216.
  • Step S213 The glitter2_flag decoding unit 213 uses the context to arithmetically decode the coefficient2_flag of the coefficient whose significant_flag is “1” and the coefficient1_flag is “1”. Then, the greater2_flag decoding unit 213 outputs the greater2_flag to the level_minus3 decoding unit 214 and the coefficient restoration unit 216.
  • Step S214 The level_minus3 decoding unit 214 uses a fixed symbol occurrence probability (50%) without using a context, the significant_flag is “1”, the glitter1_flag is “1”, and the glitter2_flag is “1”. Decode level_minus3 of a certain coefficient. Then, the level_minus3 decoding unit 214 outputs the level_minus3 to the coefficient restoration unit 216.
  • Step S215) The sign_flag decoding unit 215 decodes the sign_flag of the coefficient whose significant_flag is “1” using a fixed symbol occurrence probability (50%) without using the context. Then, the sign_flag decoding unit 215 outputs the sign_flag to the coefficient restoration unit 216.
  • Step S216 The coefficient restoration unit 216 restores coefficients using the significant_flag, the greeter1_flag, the greeter2_flag, the level_minus3, and the sign_flag. Since the meaning of each parameter is as described above, the coefficient restoration unit 216 restores the coefficient according to the meaning.
  • Step S21-7 Steps S212 to S216 are repeated until the decoding of all the coefficient blocks in the decoding target block is completed.
  • Step S228 The coefficient block combining unit 217 outputs a decoded block by combining all the coefficient blocks in the decoding target block.
  • FIG. 16 shows the internal configuration of the significantsignificant_flag decoding unit 211 in the second embodiment.
  • the significant_flag decoding unit 211 includes a significant_flag group setting unit 221, a significant_flag context selection unit 222, an arithmetic decoding unit 223, a significant_flag context memory 224, and a significant2 memory 25.
  • the significant_flag group setting unit 221 groups a plurality of coefficient blocks included in the code block.
  • the significant_flag context selection unit 222 calculates a context for arithmetically encoding a parameter representing a processing target coefficient (decoding target coefficient) included in the coefficient block from a context set corresponding to the coefficient block. , Based on at least one reference coefficient located around the processing target coefficient. Specifically, the significant_flag context selection unit 222 selects a context from a context set corresponding to the sum of the value indicating the horizontal position and the value indicating the vertical position of the coefficient block in the code block.
  • the arithmetic decoding unit 223 acquires the probability information of the selected context from the significant_flag context memory 224. Then, the arithmetic decoding unit 223 arithmetically decodes the parameter representing the processing target coefficient using the acquired context probability information.
  • the parameter is a significant_flag.
  • the arithmetic decoding unit 223 stores the decrypted significant_flag in the significant_flag memory 225. Also, the arithmetic decoding unit 223 updates the context probability information stored in the significant_flag context memory 224 according to the value of the significant_flag.
  • the significant_flag context memory 224 stores probability information for each context.
  • the significant_flag memory 225 stores the significant_flag of each coefficient.
  • FIG. 17 is a flowchart showing the processing operation of the significant_flag decoding unit.
  • Steps S221 to S224 The significant_flag group setting unit 221 performs grouping of coefficient blocks in the same manner as steps S121 to S124 in FIG.
  • the significant_flag context selection unit 222 selects a context based on the reference coefficient located in the vicinity of the processing target coefficient from the context set corresponding to the group to which the coefficient block belongs, as in Steps S128 to S136 of FIG. Specifically, the significant_flag context selection unit 222 performs the first context set (context numbers 0 to 4) when the sum of the value indicating the horizontal position and the value indicating the vertical position of the coefficient block is equal to or less than a threshold value. Context).
  • the significant_flag context selection unit 222 performs the second context set (contexts of context numbers 5 to 9) when the sum of the value indicating the horizontal position and the value indicating the vertical position of the coefficient block is equal to or less than a threshold value. Select a context from.
  • the significant_flag context selection unit 222 also determines the number of reference coefficients whose values are not “0” among a plurality of reference coefficients having higher frequency components than the processing target coefficient (in other words, reference coefficients whose value is “0”). Context).
  • Step S234 The arithmetic decoding unit 223 loads context probability information from the significant_flag context memory 224 according to the context number.
  • Step S235 The arithmetic decoding unit 223 performs arithmetic decoding on the significant_flag using the probability information.
  • Step S236 The arithmetic decoding unit 223 updates the context probability information according to the value of the significant_flag, and stores the updated context probability information in the significant_flag context memory 224.
  • Step S237) Steps S225 to S236 are repeated until processing of all the coefficients in the coefficient block is completed.
  • step S237 determines which group the coefficient block belongs to, but the determination may be performed for each coefficient. That is, in FIG. 17, when the determination result of step S237 is No, the process returns to step S225. However, the process may return to step S222. Even in this case, it is possible to prevent the context set from being switched within the coefficient block. Furthermore, in this case, only the context set corresponding to the determined group needs to be loaded from the memory, so that the memory load can be reduced.
  • the load of context selection processing is suppressed while suppressing a decrease in encoding efficiency. Can be reduced.
  • the image encoding device and the image decoding device according to one or a plurality of aspects have been described based on the embodiment, but the present invention is not limited to this embodiment. Unless it deviates from the gist of the present invention, various modifications conceived by those skilled in the art have been made in this embodiment, and forms constructed by combining components in different embodiments are also within the scope of one or more aspects. May be included.
  • the values indicating the horizontal and vertical positions of the sub-block are “integer part of (coefficient horizontal position / coefficient block horizontal size)” and “(coefficient vertical position / coefficient block It is calculated by “the integer part of (vertical size)”, but may be calculated by a method different from this.
  • values indicating the horizontal and vertical positions of the sub-blocks may be calculated using a shift operation instead of division.
  • the plurality of coefficients included in the encoding target block or the decoding target block are classified into two groups, but may be classified into three or more groups.
  • the group determination threshold may be increased according to the number of groups.
  • the number and position of the reference coefficients in each of the above embodiments are examples, and other reference coefficients may be used.
  • the context is selected based on the sub-block and the reference coefficient.
  • the context may be selected based on another condition. For example, a context different from other coefficients may be selected as a context for arithmetically encoding the coefficient (DC component) at the upper left corner of the encoding target block or the decoding target block.
  • each coefficient is arithmetically encoded or arithmetically decoded sequentially from the coefficient (highest frequency component) at the lower right corner of the encoding target block or decoding target block.
  • Arithmetic encoding or arithmetic decoding may be performed from the first non-zero coefficient that is scanned from the component. In this case, zero coefficients appearing up to the first non-zero coefficient appearing after scanning from the high frequency component may not be arithmetically encoded.
  • the coefficients are encoded using five parameters, but may be encoded using other parameters.
  • the coefficient may be encoded using three parameters: significant_flag, level_minus1, and sign_flag.
  • the context selection method for arithmetic encoding or arithmetic decoding of the significant_flag has been described.
  • the context can be selected using the same selection method as the significant_flag. Also good.
  • a coefficient located outside the encoding target block or the decoding target block may not be used as the reference coefficient.
  • a coefficient included in a picture temporally different from a picture including the encoding target block or the decoding target block may be used as a reference coefficient.
  • the sizes of the code block (encoding target block or decoding target block) and the coefficient block (sub block) in each of the above embodiments are merely examples, and may be other sizes.
  • the image coding apparatus 100 does not have to include all the components shown in FIG.
  • the image encoding device may be configured as follows.
  • FIG. 18 shows a configuration of an image encoding device 300 according to a modification of the first embodiment.
  • the image encoding device 300 encodes an image for each block.
  • the image encoding device 300 includes a context selection unit 301 and an arithmetic encoding unit 302.
  • FIG. 19 is a flowchart showing the processing operation of the image coding apparatus 300 according to the modification of the first embodiment.
  • the context selection unit 301 selects a context for arithmetically encoding a parameter representing each coefficient included in an encoding target block that is a transform unit. Specifically, the context selection unit 301 sets, for each of a plurality of sub-blocks included in the encoding target block, a parameter representing the encoding target coefficient included in the sub-block from the context set corresponding to the sub-block. A context for arithmetic encoding is selected based on at least one reference coefficient located around the encoding target coefficient.
  • the context selection unit 301 corresponds to the sum of the value indicating the horizontal position and the value indicating the vertical position of the sub-block in the encoding target block. From the context set, a context for arithmetically encoding a parameter representing a coding target coefficient included in the sub-block is selected.
  • a sub-block is a block obtained by dividing an encoding target block.
  • Each sub-block includes a plurality of pixels (for example, 4 ⁇ 4 pixels) each having a coefficient.
  • the coefficient located around the encoding target coefficient means a coefficient included in a pixel located within a predetermined range from the pixel having the encoding target coefficient.
  • a coefficient located around the encoding target coefficient is a higher frequency component coefficient than the encoding target coefficient.
  • the parameter representing the encoding target coefficient is, for example, a flag (significant_flag) indicating whether the encoding target coefficient is 0 or not. Note that the parameter representing the encoding target coefficient may not be the significant_flag, but may be another parameter.
  • Step S302 The arithmetic coding unit 302 uses the context probability information selected by the context selection unit 301 to arithmetically code a parameter representing a coding target coefficient.
  • the image encoding device 300 can reduce the load of the context selection process while suppressing a decrease in encoding efficiency.
  • the image decoding apparatus 200 does not have to include all the components shown in FIG.
  • the image decoding apparatus may be configured as follows.
  • FIG. 20 shows a configuration of an image decoding apparatus 400 in a modification of the second embodiment.
  • the image decoding device 400 decodes an image encoded for each block.
  • the image decoding device 400 includes a context selection unit 401 and an arithmetic decoding unit 402.
  • FIG. 21 is a flowchart showing processing operations of the image decoding apparatus 400 according to the modification of the second embodiment.
  • Step S401 The context selection unit 401 selects a context for arithmetically decoding parameters representing each coefficient included in a decoding target block that is a transform unit. The details of this process are the same as in step S301 in FIG.
  • Step S402 The arithmetic decoding unit 402 performs arithmetic decoding on the parameter representing the decoding target coefficient using the probability information of the context selected by the context selection unit 401.
  • the image decoding apparatus 400 can reduce the load of context selection processing while suppressing a decrease in encoding efficiency.
  • each component may be configured by dedicated hardware or may be realized by executing a software program suitable for each component.
  • Each component may be realized by a program execution unit such as a CPU or a processor reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory.
  • the software that realizes the image encoding device, the image decoding device, and the like according to each of the above embodiments or their modifications is the following program.
  • this program is an image encoding method for encoding an image for each block in a computer, and is a plurality of sub-blocks included in an encoding target block that is a transform unit, each including a plurality of coefficients.
  • a context for arithmetically encoding a parameter representing the encoding target coefficient included in the sub-block is positioned around the encoding target coefficient from the context set corresponding to the sub-block.
  • the sub-frame in the encoding target block is To execute an image coding method for selecting the context from the context set that corresponds to the sum of the value indicating the value and the vertical position indicating the horizontal position of the block.
  • this program is an image decoding method for decoding an image encoded for each block on a computer, and includes a plurality of sub-blocks included in a block to be decoded that is a transform unit and a plurality of coefficients.
  • the decoding target coefficient For each of a plurality of sub-blocks each including a context for performing arithmetic decoding of a parameter representing a decoding target coefficient included in the sub-block from a context set corresponding to the sub-block, the decoding target coefficient A context selection step for selecting based on at least one reference coefficient located in the vicinity; and an arithmetic decoding step for arithmetically decoding a parameter representing the coefficient to be decoded using probability information of the selected context In the context selection step, in the block to be decoded To perform an image decoding method for selecting the context from the context set that corresponds to the sum of the value indicating the value and the vertical position indicating the horizontal position of the sub-block that.
  • the storage medium may be any medium that can record a program, such as a magnetic disk, an optical disk, a magneto-optical disk, an IC card, and a semiconductor memory.
  • the system has an image encoding / decoding device including an image encoding device using an image encoding method and an image decoding device using an image decoding method.
  • image encoding / decoding device including an image encoding device using an image encoding method and an image decoding device using an image decoding method.
  • Other configurations in the system can be appropriately changed according to circumstances.
  • FIG. 22 is a diagram showing an overall configuration of a content supply system ex100 that realizes a content distribution service.
  • a communication service providing area is divided into desired sizes, and base stations ex106, ex107, ex108, ex109, and ex110, which are fixed wireless stations, are installed in each cell.
  • This content supply system ex100 includes a computer ex111, a PDA (Personal Digital Assistant) ex112, a camera ex113, a mobile phone ex114, a game machine ex115 via the Internet ex101, the Internet service provider ex102, the telephone network ex104, and the base stations ex106 to ex110. Etc. are connected.
  • PDA Personal Digital Assistant
  • each device may be directly connected to the telephone network ex104 without going from the base station ex106, which is a fixed wireless station, to ex110.
  • the devices may be directly connected to each other via short-range wireless or the like.
  • the camera ex113 is a device that can shoot moving images such as a digital video camera
  • the camera ex116 is a device that can shoot still images and movies such as a digital camera.
  • the mobile phone ex114 is a GSM (registered trademark) (Global System for Mobile Communications) system, a CDMA (Code Division Multiple Access) system, a W-CDMA (Wideband-Code Division Multiple Access) system, or an LTE (Long Terminal Term Evolution). It is possible to use any of the above-mentioned systems, HSPA (High Speed Packet Access) mobile phone, PHS (Personal Handyphone System), or the like.
  • the camera ex113 and the like are connected to the streaming server ex103 through the base station ex109 and the telephone network ex104, thereby enabling live distribution and the like.
  • live distribution content that is shot by a user using the camera ex113 (for example, music live video) is encoded as described in each of the above embodiments (that is, in one aspect of the present invention).
  • the streaming server ex103 stream-distributes the content data transmitted to the requested client. Examples of the client include a computer ex111, a PDA ex112, a camera ex113, a mobile phone ex114, and a game machine ex115 that can decode the encoded data.
  • Each device that receives the distributed data decodes the received data and reproduces it (that is, functions as an image decoding device according to one embodiment of the present invention).
  • the captured data may be encoded by the camera ex113, the streaming server ex103 that performs data transmission processing, or may be shared with each other.
  • the decryption processing of the distributed data may be performed by the client, the streaming server ex103, or may be performed in common with each other.
  • still images and / or moving image data captured by the camera ex116 may be transmitted to the streaming server ex103 via the computer ex111.
  • the encoding process in this case may be performed by any of the camera ex116, the computer ex111, and the streaming server ex103, or may be performed in a shared manner.
  • these encoding / decoding processes are generally performed in the computer ex111 and the LSI ex500 included in each device.
  • the LSI ex500 may be configured as a single chip or a plurality of chips.
  • moving image encoding / decoding software is incorporated into some recording medium (CD-ROM, flexible disk, hard disk, etc.) that can be read by the computer ex111, etc., and encoding / decoding processing is performed using the software. May be.
  • moving image data acquired by the camera may be transmitted.
  • the moving image data at this time is data encoded by the LSI ex500 included in the mobile phone ex114.
  • the streaming server ex103 may be a plurality of servers or a plurality of computers, and may process, record, and distribute data in a distributed manner.
  • the encoded data can be received and reproduced by the client.
  • the information transmitted by the user can be received, decrypted and reproduced by the client in real time, and personal broadcasting can be realized even for a user who does not have special rights or facilities.
  • the digital broadcast system ex200 also includes at least the moving image encoding device (image encoding device) or the moving image decoding in each of the above embodiments. Any of the devices (image decoding devices) can be incorporated.
  • the broadcast station ex201 multiplexed data obtained by multiplexing music data and the like on video data is transmitted to a communication or satellite ex202 via radio waves.
  • This video data is data encoded by the moving image encoding method described in each of the above embodiments (that is, data encoded by the image encoding apparatus according to one aspect of the present invention).
  • the broadcasting satellite ex202 transmits a radio wave for broadcasting, and this radio wave is received by a home antenna ex204 capable of receiving satellite broadcasting.
  • the received multiplexed data is decoded and reproduced by an apparatus such as the television (receiver) ex300 or the set top box (STB) ex217 (that is, functions as an image decoding apparatus according to one embodiment of the present invention).
  • a reader / recorder ex218 that reads and decodes multiplexed data recorded on a recording medium ex215 such as a DVD or a BD, or encodes a video signal on the recording medium ex215 and, in some cases, multiplexes and writes it with a music signal. It is possible to mount the moving picture decoding apparatus or moving picture encoding apparatus described in the above embodiments. In this case, the reproduced video signal is displayed on the monitor ex219, and the video signal can be reproduced in another device or system using the recording medium ex215 on which the multiplexed data is recorded.
  • a moving picture decoding apparatus may be mounted in a set-top box ex217 connected to a cable ex203 for cable television or an antenna ex204 for satellite / terrestrial broadcasting and displayed on the monitor ex219 of the television.
  • the moving picture decoding apparatus may be incorporated in the television instead of the set top box.
  • FIG. 24 is a diagram illustrating a television (receiver) ex300 that uses the video decoding method and the video encoding method described in each of the above embodiments.
  • the television ex300 obtains or outputs multiplexed data in which audio data is multiplexed with video data via the antenna ex204 or the cable ex203 that receives the broadcast, and demodulates the received multiplexed data.
  • the modulation / demodulation unit ex302 that modulates multiplexed data to be transmitted to the outside, and the demodulated multiplexed data is separated into video data and audio data, or the video data and audio data encoded by the signal processing unit ex306 Is provided with a multiplexing / demultiplexing unit ex303.
  • the television ex300 also decodes the audio data and the video data, or encodes the information, the audio signal processing unit ex304, the video signal processing unit ex305 (the image encoding device or the image according to one embodiment of the present invention) A signal processing unit ex306 that functions as a decoding device), a speaker ex307 that outputs the decoded audio signal, and an output unit ex309 that includes a display unit ex308 such as a display that displays the decoded video signal. Furthermore, the television ex300 includes an interface unit ex317 including an operation input unit ex312 that receives an input of a user operation. Furthermore, the television ex300 includes a control unit ex310 that performs overall control of each unit, and a power supply circuit unit ex311 that supplies power to each unit.
  • the interface unit ex317 includes a bridge unit ex313 connected to an external device such as a reader / recorder ex218, a recording unit ex216 such as an SD card, and an external recording unit such as a hard disk.
  • a driver ex315 for connecting to a medium, a modem ex316 for connecting to a telephone network, and the like may be included.
  • the recording medium ex216 is capable of electrically recording information by using a nonvolatile / volatile semiconductor memory element to be stored.
  • Each part of the television ex300 is connected to each other via a synchronous bus.
  • the television ex300 receives a user operation from the remote controller ex220 or the like, and demultiplexes the multiplexed data demodulated by the modulation / demodulation unit ex302 by the multiplexing / demultiplexing unit ex303 based on the control of the control unit ex310 having a CPU or the like. Furthermore, in the television ex300, the separated audio data is decoded by the audio signal processing unit ex304, and the separated video data is decoded by the video signal processing unit ex305 using the decoding method described in each of the above embodiments.
  • the decoded audio signal and video signal are output from the output unit ex309 to the outside. At the time of output, these signals may be temporarily stored in the buffers ex318, ex319, etc. so that the audio signal and the video signal are reproduced in synchronization. Also, the television ex300 may read multiplexed data from recording media ex215 and ex216 such as a magnetic / optical disk and an SD card, not from broadcasting. Next, a configuration in which the television ex300 encodes an audio signal or a video signal and transmits the signal to the outside or to a recording medium will be described.
  • the television ex300 receives a user operation from the remote controller ex220 and the like, encodes an audio signal with the audio signal processing unit ex304, and converts the video signal with the video signal processing unit ex305 based on the control of the control unit ex310. Encoding is performed using the encoding method described in (1).
  • the encoded audio signal and video signal are multiplexed by the multiplexing / demultiplexing unit ex303 and output to the outside. When multiplexing, these signals may be temporarily stored in the buffers ex320, ex321, etc. so that the audio signal and the video signal are synchronized.
  • a plurality of buffers ex318, ex319, ex320, and ex321 may be provided as illustrated, or one or more buffers may be shared. Further, in addition to the illustrated example, data may be stored in the buffer as a buffer material that prevents system overflow and underflow, for example, between the modulation / demodulation unit ex302 and the multiplexing / demultiplexing unit ex303.
  • the television ex300 has a configuration for receiving AV input of a microphone and a camera, and performs encoding processing on the data acquired from them. Also good.
  • the television ex300 has been described as a configuration capable of the above-described encoding processing, multiplexing, and external output, but these processing cannot be performed, and only the above-described reception, decoding processing, and external output are possible. It may be a configuration.
  • the decoding process or the encoding process may be performed by either the television ex300 or the reader / recorder ex218,
  • the reader / recorder ex218 may share with each other.
  • FIG. 25 shows a configuration of the information reproducing / recording unit ex400 when data is read from or written to the optical disk.
  • the information reproducing / recording unit ex400 includes elements ex401, ex402, ex403, ex404, ex405, ex406, and ex407 described below.
  • the optical head ex401 irradiates a laser spot on the recording surface of the recording medium ex215 that is an optical disk to write information, and detects information reflected from the recording surface of the recording medium ex215 to read the information.
  • the modulation recording unit ex402 electrically drives a semiconductor laser built in the optical head ex401 and modulates the laser beam according to the recording data.
  • the reproduction demodulator ex403 amplifies the reproduction signal obtained by electrically detecting the reflected light from the recording surface by the photodetector built in the optical head ex401, separates and demodulates the signal component recorded on the recording medium ex215, and is necessary To play back information.
  • the buffer ex404 temporarily holds information to be recorded on the recording medium ex215 and information reproduced from the recording medium ex215.
  • the disk motor ex405 rotates the recording medium ex215.
  • the servo control unit ex406 moves the optical head ex401 to a predetermined information track while controlling the rotational drive of the disk motor ex405, and performs a laser spot tracking process.
  • the system control unit ex407 controls the entire information reproduction / recording unit ex400.
  • the system control unit ex407 uses various types of information held in the buffer ex404, and generates and adds new information as necessary.
  • the modulation recording unit ex402, the reproduction demodulation unit This is realized by recording / reproducing information through the optical head ex401 while operating the ex403 and the servo control unit ex406 in a coordinated manner.
  • the system control unit ex407 includes, for example, a microprocessor, and executes these processes by executing a read / write program.
  • the optical head ex401 has been described as irradiating a laser spot.
  • a configuration in which higher-density recording is performed using near-field light may be used.
  • FIG. 26 shows a schematic diagram of a recording medium ex215 that is an optical disk.
  • Guide grooves grooves
  • address information indicating the absolute position on the disc is recorded in advance on the information track ex230 by changing the shape of the groove.
  • This address information includes information for specifying the position of the recording block ex231 that is a unit for recording data, and the recording block is specified by reproducing the information track ex230 and reading the address information in a recording or reproducing apparatus.
  • the recording medium ex215 includes a data recording area ex233, an inner peripheral area ex232, and an outer peripheral area ex234.
  • the area used for recording user data is the data recording area ex233, and the inner circumference area ex232 and the outer circumference area ex234 arranged on the inner or outer circumference of the data recording area ex233 are used for specific purposes other than user data recording. Used.
  • the information reproducing / recording unit ex400 reads / writes encoded audio data, video data, or multiplexed data obtained by multiplexing these data with respect to the data recording area ex233 of the recording medium ex215.
  • an optical disk such as a single-layer DVD or BD has been described as an example.
  • the present invention is not limited to these, and an optical disk having a multilayer structure and capable of recording other than the surface may be used.
  • an optical disc with a multi-dimensional recording / reproducing structure such as recording information using light of different wavelengths in the same place on the disc, or recording different layers of information from various angles. It may be.
  • the car ex210 having the antenna ex205 can receive data from the satellite ex202 and the like, and the moving image can be reproduced on a display device such as the car navigation ex211 that the car ex210 has.
  • the configuration of the car navigation ex211 may include a configuration in which a GPS receiving unit is added to the configuration illustrated in FIG. 24, and the same may be applied to the computer ex111, the mobile phone ex114, and the like.
  • FIG. 27A is a diagram showing the mobile phone ex114 using the moving picture decoding method and the moving picture encoding method described in the above embodiment.
  • the mobile phone ex114 includes an antenna ex350 for transmitting and receiving radio waves to and from the base station ex110, a camera unit ex365 capable of capturing video and still images, a video captured by the camera unit ex365, a video received by the antenna ex350, and the like Is provided with a display unit ex358 such as a liquid crystal display for displaying the decrypted data.
  • the mobile phone ex114 further includes a main body unit having an operation key unit ex366, an audio output unit ex357 such as a speaker for outputting audio, an audio input unit ex356 such as a microphone for inputting audio, a captured video,
  • an audio input unit ex356 such as a microphone for inputting audio
  • a captured video In the memory unit ex367 for storing encoded data or decoded data such as still images, recorded audio, received video, still images, mails, or the like, or an interface unit with a recording medium for storing data
  • a slot ex364 is provided.
  • the mobile phone ex114 has a power supply circuit part ex361, an operation input control part ex362, and a video signal processing part ex355 with respect to a main control part ex360 that comprehensively controls each part of the main body including the display part ex358 and the operation key part ex366.
  • a camera interface unit ex363, an LCD (Liquid Crystal Display) control unit ex359, a modulation / demodulation unit ex352, a multiplexing / demultiplexing unit ex353, an audio signal processing unit ex354, a slot unit ex364, and a memory unit ex367 are connected to each other via a bus ex370. ing.
  • the power supply circuit unit ex361 starts up the mobile phone ex114 in an operable state by supplying power from the battery pack to each unit.
  • the cellular phone ex114 converts the audio signal collected by the audio input unit ex356 in the voice call mode into a digital audio signal by the audio signal processing unit ex354 based on the control of the main control unit ex360 having a CPU, a ROM, a RAM, and the like. Then, this is subjected to spectrum spread processing by the modulation / demodulation unit ex352, digital-analog conversion processing and frequency conversion processing are performed by the transmission / reception unit ex351, and then transmitted via the antenna ex350.
  • the mobile phone ex114 also amplifies the received data received via the antenna ex350 in the voice call mode, performs frequency conversion processing and analog-digital conversion processing, performs spectrum despreading processing by the modulation / demodulation unit ex352, and performs voice signal processing unit After being converted into an analog audio signal by ex354, this is output from the audio output unit ex357.
  • the text data of the e-mail input by operating the operation key unit ex366 of the main unit is sent to the main control unit ex360 via the operation input control unit ex362.
  • the main control unit ex360 performs spread spectrum processing on the text data in the modulation / demodulation unit ex352, performs digital analog conversion processing and frequency conversion processing in the transmission / reception unit ex351, and then transmits the text data to the base station ex110 via the antenna ex350.
  • almost the reverse process is performed on the received data and output to the display unit ex358.
  • the video signal processing unit ex355 compresses the video signal supplied from the camera unit ex365 by the moving image encoding method described in the above embodiments. Encode (that is, function as an image encoding device according to an aspect of the present invention), and send the encoded video data to the multiplexing / demultiplexing unit ex353.
  • the audio signal processing unit ex354 encodes the audio signal picked up by the audio input unit ex356 while the camera unit ex365 images a video, a still image, etc., and sends the encoded audio data to the multiplexing / separating unit ex353. To do.
  • the multiplexing / demultiplexing unit ex353 multiplexes the encoded video data supplied from the video signal processing unit ex355 and the encoded audio data supplied from the audio signal processing unit ex354 by a predetermined method, and is obtained as a result.
  • the multiplexed data is subjected to spread spectrum processing by the modulation / demodulation unit (modulation / demodulation circuit unit) ex352, digital-analog conversion processing and frequency conversion processing by the transmission / reception unit ex351, and then transmitted via the antenna ex350.
  • the multiplexing / separating unit ex353 separates the multiplexed data into a video data bit stream and an audio data bit stream, and performs video signal processing on the video data encoded via the synchronization bus ex370.
  • the encoded audio data is supplied to the audio signal processing unit ex354 while being supplied to the unit ex355.
  • the video signal processing unit ex355 decodes the video signal by decoding using the video decoding method corresponding to the video encoding method described in each of the above embodiments (that is, an image according to an aspect of the present invention).
  • video and still images included in the moving image file linked to the home page are displayed from the display unit ex358 via the LCD control unit ex359.
  • the audio signal processing unit ex354 decodes the audio signal, and the audio is output from the audio output unit ex357.
  • the terminal such as the mobile phone ex114 is referred to as a transmission terminal having only an encoder and a receiving terminal having only a decoder.
  • a transmission terminal having only an encoder
  • a receiving terminal having only a decoder.
  • multiplexed data in which music data or the like is multiplexed with video data is received and transmitted, but data in which character data or the like related to video is multiplexed in addition to audio data It may be video data itself instead of multiplexed data.
  • the moving picture encoding method or the moving picture decoding method shown in each of the above embodiments can be used in any of the above-described devices / systems. The described effect can be obtained.
  • Embodiment 4 The moving picture coding method or apparatus shown in the above embodiments and the moving picture coding method or apparatus compliant with different standards such as MPEG-2, MPEG4-AVC, and VC-1 are appropriately switched as necessary. Thus, it is also possible to generate video data.
  • multiplexed data obtained by multiplexing audio data or the like with video data is configured to include identification information indicating which standard the video data conforms to.
  • identification information indicating which standard the video data conforms to.
  • FIG. 28 is a diagram showing a structure of multiplexed data.
  • the multiplexed data is obtained by multiplexing one or more of a video stream, an audio stream, a presentation graphics stream (PG), and an interactive graphics stream.
  • the video stream indicates the main video and sub-video of the movie
  • the audio stream (IG) indicates the main audio portion of the movie and the sub-audio mixed with the main audio
  • the presentation graphics stream indicates the subtitles of the movie.
  • the main video indicates a normal video displayed on the screen
  • the sub-video is a video displayed on a small screen in the main video.
  • the interactive graphics stream indicates an interactive screen created by arranging GUI components on the screen.
  • the video stream is encoded by the moving image encoding method or apparatus shown in the above embodiments, or the moving image encoding method or apparatus conforming to the conventional standards such as MPEG-2, MPEG4-AVC, and VC-1. ing.
  • the audio stream is encoded by a method such as Dolby AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD, or linear PCM.
  • Each stream included in the multiplexed data is identified by PID. For example, 0x1011 for video streams used for movie images, 0x1100 to 0x111F for audio streams, 0x1200 to 0x121F for presentation graphics, 0x1400 to 0x141F for interactive graphics streams, 0x1B00 to 0x1B1F are assigned to the video stream used for the sub-picture, and 0x1A00 to 0x1A1F are assigned to the audio stream used for the sub-audio mixed with the main audio.
  • FIG. 29 is a diagram schematically showing how multiplexed data is multiplexed.
  • a video stream ex235 composed of a plurality of video frames and an audio stream ex238 composed of a plurality of audio frames are converted into PES packet sequences ex236 and ex239, respectively, and converted into TS packets ex237 and ex240.
  • the data of the presentation graphics stream ex241 and interactive graphics ex244 are converted into PES packet sequences ex242 and ex245, respectively, and further converted into TS packets ex243 and ex246.
  • the multiplexed data ex247 is configured by multiplexing these TS packets into one stream.
  • FIG. 30 shows in more detail how the video stream is stored in the PES packet sequence.
  • the first row in FIG. 30 shows a video frame sequence of the video stream.
  • the second level shows a PES packet sequence.
  • a plurality of Video Presentation Units in the video stream are divided for each picture and stored in the payload of the PES packet.
  • Each PES packet has a PES header, and a PTS (Presentation Time-Stamp) that is a display time of a picture and a DTS (Decoding Time-Stamp) that is a decoding time of a picture are stored in the PES header.
  • PTS Presentation Time-Stamp
  • DTS Decoding Time-Stamp
  • FIG. 31 shows the format of the TS packet that is finally written into the multiplexed data.
  • the TS packet is a 188-byte fixed-length packet composed of a 4-byte TS header having information such as a PID for identifying a stream and a 184-byte TS payload for storing data.
  • the PES packet is divided and stored in the TS payload.
  • a 4-byte TP_Extra_Header is added to a TS packet, forms a 192-byte source packet, and is written in multiplexed data.
  • TP_Extra_Header information such as ATS (Arrival_Time_Stamp) is described.
  • ATS indicates the transfer start time of the TS packet to the PID filter of the decoder.
  • Source packets are arranged in the multiplexed data as shown in the lower part of FIG. 31, and the number incremented from the head of the multiplexed data is called SPN (source packet number).
  • TS packets included in the multiplexed data include PAT (Program Association Table), PMT (Program Map Table), PCR (Program Clock Reference), and the like in addition to each stream such as video / audio / caption.
  • PAT indicates what the PID of the PMT used in the multiplexed data is, and the PID of the PAT itself is registered as 0.
  • the PMT has the PID of each stream such as video / audio / subtitles included in the multiplexed data and the attribute information of the stream corresponding to each PID, and has various descriptors related to the multiplexed data.
  • the descriptor includes copy control information for instructing permission / non-permission of copying of multiplexed data.
  • the PCR corresponds to the ATS in which the PCR packet is transferred to the decoder. Contains STC time information.
  • FIG. 32 is a diagram for explaining the data structure of the PMT in detail.
  • a PMT header describing the length of data included in the PMT is arranged at the head of the PMT.
  • a plurality of descriptors related to multiplexed data are arranged.
  • the copy control information and the like are described as descriptors.
  • a plurality of pieces of stream information regarding each stream included in the multiplexed data are arranged.
  • the stream information includes a stream descriptor in which a stream type, a stream PID, and stream attribute information (frame rate, aspect ratio, etc.) are described to identify a compression codec of the stream.
  • the multiplexed data is recorded together with the multiplexed data information file.
  • the multiplexed data information file is management information of multiplexed data, has a one-to-one correspondence with the multiplexed data, and includes multiplexed data information, stream attribute information, and an entry map.
  • the multiplexed data information includes a system rate, a reproduction start time, and a reproduction end time.
  • the system rate indicates a maximum transfer rate of multiplexed data to a PID filter of a system target decoder described later.
  • the ATS interval included in the multiplexed data is set to be equal to or less than the system rate.
  • the playback start time is the PTS of the first video frame of the multiplexed data
  • the playback end time is set by adding the playback interval for one frame to the PTS of the video frame at the end of the multiplexed data.
  • attribute information for each stream included in the multiplexed data is registered for each PID.
  • the attribute information has different information for each video stream, audio stream, presentation graphics stream, and interactive graphics stream.
  • the video stream attribute information includes the compression codec used to compress the video stream, the resolution of the individual picture data constituting the video stream, the aspect ratio, and the frame rate. It has information such as how much it is.
  • the audio stream attribute information includes the compression codec used to compress the audio stream, the number of channels included in the audio stream, the language supported, and the sampling frequency. With information. These pieces of information are used for initialization of the decoder before the player reproduces it.
  • the stream type included in the PMT is used.
  • video stream attribute information included in the multiplexed data information is used.
  • the video encoding shown in each of the above embodiments for the stream type or video stream attribute information included in the PMT.
  • FIG. 35 shows the steps of the moving picture decoding method according to the present embodiment.
  • step exS100 the stream type included in the PMT or the video stream attribute information included in the multiplexed data information is acquired from the multiplexed data.
  • step exS101 it is determined whether or not the stream type or the video stream attribute information indicates multiplexed data generated by the moving picture encoding method or apparatus described in the above embodiments. To do.
  • step exS102 the above embodiments are performed. Decoding is performed by the moving picture decoding method shown in the form.
  • the conventional information Decoding is performed by a moving image decoding method compliant with the standard.
  • FIG. 36 shows a configuration of the LSI ex500 that is made into one chip.
  • the LSI ex500 includes elements ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508, and ex509 described below, and each element is connected via a bus ex510.
  • the power supply circuit unit ex505 is activated to an operable state by supplying power to each unit when the power supply is on.
  • the LSI ex500 uses the AV I / O ex509 to perform the microphone ex117 and the camera ex113 based on the control of the control unit ex501 including the CPU ex502, the memory controller ex503, the stream controller ex504, the driving frequency control unit ex512, and the like.
  • the AV signal is input from the above.
  • the input AV signal is temporarily stored in an external memory ex511 such as SDRAM.
  • the accumulated data is divided into a plurality of times as appropriate according to the processing amount and the processing speed and sent to the signal processing unit ex507, and the signal processing unit ex507 encodes an audio signal and / or video. Signal encoding is performed.
  • the encoding process of the video signal is the encoding process described in the above embodiments.
  • the signal processing unit ex507 further performs processing such as multiplexing the encoded audio data and the encoded video data according to circumstances, and outputs the result from the stream I / Oex 506 to the outside.
  • the output multiplexed data is transmitted to the base station ex107 or written to the recording medium ex215. It should be noted that data should be temporarily stored in the buffer ex508 so as to be synchronized when multiplexing.
  • the memory ex511 is described as an external configuration of the LSI ex500.
  • a configuration included in the LSI ex500 may be used.
  • the number of buffers ex508 is not limited to one, and a plurality of buffers may be provided.
  • the LSI ex500 may be made into one chip or a plurality of chips.
  • control unit ex501 includes the CPU ex502, the memory controller ex503, the stream controller ex504, the drive frequency control unit ex512, and the like, but the configuration of the control unit ex501 is not limited to this configuration.
  • the signal processing unit ex507 may further include a CPU.
  • the CPU ex502 may be configured to include a signal processing unit ex507 or, for example, an audio signal processing unit that is a part of the signal processing unit ex507.
  • the control unit ex501 is configured to include a signal processing unit ex507 or a CPU ex502 having a part thereof.
  • LSI LSI
  • IC system LSI
  • super LSI ultra LSI depending on the degree of integration
  • the method of circuit integration is not limited to LSI, and implementation with a dedicated circuit or a general-purpose processor is also possible.
  • An FPGA Field Programmable Gate Array
  • a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
  • FIG. 37 shows a configuration ex800 in the present embodiment.
  • the drive frequency switching unit ex803 sets the drive frequency high when the video data is generated by the moving image encoding method or apparatus described in the above embodiments.
  • the decoding processing unit ex801 that executes the moving picture decoding method described in each of the above embodiments is instructed to decode the video data.
  • the video data is video data compliant with the conventional standard, compared to the case where the video data is generated by the moving picture encoding method or apparatus shown in the above embodiments, Set the drive frequency low. Then, it instructs the decoding processing unit ex802 compliant with the conventional standard to decode the video data.
  • the drive frequency switching unit ex803 includes the CPU ex502 and the drive frequency control unit ex512 in FIG.
  • the decoding processing unit ex801 that executes the moving picture decoding method shown in each of the above embodiments and the decoding processing unit ex802 that complies with the conventional standard correspond to the signal processing unit ex507 in FIG.
  • the CPU ex502 identifies which standard the video data conforms to. Then, based on the signal from the CPU ex502, the drive frequency control unit ex512 sets the drive frequency. Further, based on the signal from the CPU ex502, the signal processing unit ex507 decodes the video data.
  • the identification information described in the fourth embodiment may be used.
  • the identification information is not limited to that described in the fourth embodiment, and any information that can identify which standard the video data conforms to may be used. For example, it is possible to identify which standard the video data conforms to based on an external signal that identifies whether the video data is used for a television or a disk. In some cases, identification may be performed based on such an external signal.
  • the selection of the driving frequency in the CPU ex502 may be performed based on, for example, a lookup table in which video data standards and driving frequencies are associated with each other as shown in FIG. The look-up table is stored in the buffer ex508 or the internal memory of the LSI, and the CPU ex502 can select the drive frequency by referring to the look-up table.
  • FIG. 38 shows steps for executing the method of the present embodiment.
  • the signal processing unit ex507 acquires identification information from the multiplexed data.
  • the CPU ex502 identifies whether the video data is generated by the encoding method or apparatus described in each of the above embodiments based on the identification information.
  • the CPU ex502 sends a signal for setting the drive frequency high to the drive frequency control unit ex512. Then, the drive frequency control unit ex512 sets a high drive frequency.
  • step exS203 the CPU ex502 drives the signal for setting the drive frequency low. This is sent to the frequency control unit ex512. Then, in the drive frequency control unit ex512, the drive frequency is set to be lower than that in the case where the video data is generated by the encoding method or apparatus described in the above embodiments.
  • the power saving effect can be further enhanced by changing the voltage applied to the LSI ex500 or the device including the LSI ex500 in conjunction with the switching of the driving frequency. For example, when the drive frequency is set low, it is conceivable that the voltage applied to the LSI ex500 or the device including the LSI ex500 is set low as compared with the case where the drive frequency is set high.
  • the setting method of the driving frequency may be set to a high driving frequency when the processing amount at the time of decoding is large, and to a low driving frequency when the processing amount at the time of decoding is small. It is not limited to the method.
  • the amount of processing for decoding video data compliant with the MPEG4-AVC standard is larger than the amount of processing for decoding video data generated by the moving picture encoding method or apparatus described in the above embodiments. It is conceivable that the setting of the driving frequency is reversed to that in the case described above.
  • the method for setting the drive frequency is not limited to the configuration in which the drive frequency is lowered.
  • the voltage applied to the LSIex500 or the apparatus including the LSIex500 is set high.
  • the driving of the CPU ex502 is stopped.
  • the CPU ex502 is temporarily stopped because there is room in processing. Is also possible. Even when the identification information indicates that the video data is generated by the moving image encoding method or apparatus described in each of the above embodiments, if there is a margin for processing, the CPU ex502 is temporarily driven. It can also be stopped. In this case, it is conceivable to set the stop time shorter than in the case where the video data conforms to the conventional standards such as MPEG-2, MPEG4-AVC, and VC-1.
  • a plurality of video data that conforms to different standards may be input to the above-described devices and systems such as a television and a mobile phone.
  • the signal processing unit ex507 of the LSI ex500 needs to support a plurality of standards in order to be able to decode even when a plurality of video data complying with different standards is input.
  • the signal processing unit ex507 corresponding to each standard is used individually, there is a problem that the circuit scale of the LSI ex500 increases and the cost increases.
  • a decoding processing unit for executing the moving picture decoding method shown in each of the above embodiments and a decoding conforming to a standard such as MPEG-2, MPEG4-AVC, or VC-1
  • the processing unit is partly shared.
  • An example of this configuration is shown as ex900 in FIG. 40A.
  • the moving picture decoding method shown in each of the above embodiments and the moving picture decoding method compliant with the MPEG4-AVC standard are processed in processes such as entropy coding, inverse quantization, deblocking filter, and motion compensation. Some contents are common.
  • the decoding processing unit ex902 corresponding to the MPEG4-AVC standard is shared, and for other processing contents specific to one aspect of the present invention that do not correspond to the MPEG4-AVC standard, a dedicated decoding processing unit A configuration using ex901 is conceivable.
  • a dedicated decoding processing unit ex901 is used for entropy decoding, and other dequantization, deblocking filter, and motion compensation are used. For any or all of these processes, it is conceivable to share the decoding processing unit.
  • the decoding processing unit for executing the moving picture decoding method described in each of the above embodiments is shared, and the processing content specific to the MPEG4-AVC standard As for, a configuration using a dedicated decoding processing unit may be used.
  • ex1000 in FIG. 40B shows another example in which processing is partially shared.
  • a dedicated decoding processing unit ex1001 corresponding to the processing content specific to one aspect of the present invention
  • a dedicated decoding processing unit ex1002 corresponding to the processing content specific to another conventional standard
  • a common decoding processing unit ex1003 corresponding to the processing contents common to the moving image decoding method according to the above and other conventional moving image decoding methods.
  • the dedicated decoding processing units ex1001 and ex1002 are not necessarily specialized in one aspect of the present invention or processing content specific to other conventional standards, and can execute other general-purpose processing. Also good.
  • the configuration of the present embodiment can be implemented by LSI ex500.
  • the processing content common to the moving picture decoding method according to one aspect of the present invention and the moving picture decoding method of the conventional standard reduces the circuit scale of the LSI by sharing the decoding processing unit, In addition, the cost can be reduced.
  • the image encoding device and the image decoding device can be used for, for example, a television receiver, a digital video recorder, a car navigation, a mobile phone, a digital camera, a digital video camera, or the like.

Landscapes

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

Abstract

L'invention concerne un procédé de codage d'une image dans lequel une image est codée pour chaque bloc, lequel procédé comprend : une étape de sélection de contexte (S301) dans laquelle, pour chacun d'une pluralité de sous-blocs comprenant respectivement une pluralité de coefficients, les sous-blocs étant inclus dans un bloc à coder, qui est l'unité de conversion, un contexte pour coder de manière arithmétique un paramètre représentant le coefficient à coder qui est inclus dans le sous-bloc est sélectionné à partir d'un ensemble de contextes correspondant au sous-bloc, sur la base d'au moins un coefficient de référence situé près du coefficient à coder ; et une étape de codage arithmétique (S302) pour coder de manière arithmétique le paramètre représentant le coefficient à coder, à l'aide d'informations de probabilité du contexte sélectionné. Dans l'étape de sélection de contexte, un contexte est sélectionné à partir d'un ensemble de contextes correspondant à la somme d'une valeur représentant la position horizontale d'un sous-bloc à l'intérieur d'un bloc à coder, et d'une valeur représentant la position verticale.
PCT/JP2012/008131 2011-12-21 2012-12-19 Procédé de codage d'une image, dispositif de codage d'image, procédé de décodage d'une image, dispositif de décodage d'image et dispositif de codage/décodage d'image WO2013094199A1 (fr)

Priority Applications (11)

Application Number Priority Date Filing Date Title
RU2013135004A RU2609064C9 (ru) 2011-12-21 2012-12-19 Способ кодирования изображений, способ декодирования изображений, устройство кодирования изображений и устройство декодирования изображений
AU2012355212A AU2012355212B2 (en) 2011-12-21 2012-12-19 Image coding method, image decoding method, image coding apparatus and image decoding apparatus
CA2825767A CA2825767C (fr) 2011-12-21 2012-12-19 Procede de codage d'une image, dispositif de codage d'image, procede de decodage d'une image, dispositif de decodage d'image et dispositif de codage/decodage d'image
CN201280006586.1A CN103339937B (zh) 2011-12-21 2012-12-19 图像编码方法、图像编码装置、图像解码方法、图像解码装置以及图像编解码装置
BR112013018850-2A BR112013018850B1 (pt) 2011-12-21 2012-12-19 Método e aparelho de decodificação de imagem, e método e aparelho de codificação de imagem
KR1020137019638A KR102071574B1 (ko) 2011-12-21 2012-12-19 화상 부호화 방법, 화상 부호화 장치, 화상 복호화 방법, 화상 복호화 장치, 및 화상 부호화 복호화 장치
SG2013057179A SG192171A1 (en) 2011-12-21 2012-12-19 Image coding method, image decoding method, image coding apparatus and image decoding apparatus
ES12860389T ES2864591T3 (es) 2011-12-21 2012-12-19 Selección de contexto para codificación por entropía de coeficientes de transformada
PL12860389T PL2797321T3 (pl) 2011-12-21 2012-12-19 Wybór kontekstu kodowania entropijnego współczynników transformacji
MX2013008534A MX2013008534A (es) 2011-12-21 2012-12-19 Metodo de codificacion de imagen, metodo de decodificacion de imagen, aparato codificador de imagen y aparato decodificador de imagen.
EP12860389.1A EP2797321B1 (fr) 2011-12-21 2012-12-19 Sélection de contexte pour le codage entropique de coefficients de transformation

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161578448P 2011-12-21 2011-12-21
US61/578,448 2011-12-21

Publications (1)

Publication Number Publication Date
WO2013094199A1 true WO2013094199A1 (fr) 2013-06-27

Family

ID=48668117

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/008131 WO2013094199A1 (fr) 2011-12-21 2012-12-19 Procédé de codage d'une image, dispositif de codage d'image, procédé de décodage d'une image, dispositif de décodage d'image et dispositif de codage/décodage d'image

Country Status (15)

Country Link
US (5) US9332253B2 (fr)
EP (1) EP2797321B1 (fr)
JP (3) JPWO2013094199A1 (fr)
KR (1) KR102071574B1 (fr)
CN (2) CN107277552B (fr)
AU (1) AU2012355212B2 (fr)
BR (1) BR112013018850B1 (fr)
CA (1) CA2825767C (fr)
ES (1) ES2864591T3 (fr)
MX (1) MX2013008534A (fr)
PL (1) PL2797321T3 (fr)
RU (1) RU2609064C9 (fr)
SG (1) SG192171A1 (fr)
TW (1) TW201347543A (fr)
WO (1) WO2013094199A1 (fr)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012098868A1 (fr) * 2011-01-19 2012-07-26 パナソニック株式会社 Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image, dispositif de décodage d'image et dispositif de codage/décodage d'image
US8891630B2 (en) * 2011-10-24 2014-11-18 Blackberry Limited Significance map encoding and decoding using partition set based context assignment
CN108900839B (zh) * 2011-12-28 2022-05-31 夏普株式会社 图像解码装置及方法、图像编码装置及方法
EP3139609B1 (fr) * 2012-01-03 2021-01-06 HFI Innovation Inc. Procédé et appareil de carte de signification à base de blocs et sélection de contexte en drapeau de groupe de signification
CN107257462B (zh) * 2012-03-26 2020-04-28 Jvc 建伍株式会社 图像解码装置、图像解码方法、接收装置
US9124872B2 (en) * 2012-04-16 2015-09-01 Qualcomm Incorporated Coefficient groups and coefficient coding for coefficient scans
WO2013180023A1 (fr) * 2012-06-01 2013-12-05 シャープ株式会社 Dispositif de décodage arithmétique, dispositif de décodage d'image, dispositif de codage arithmétique et dispositif de codage d'image
FR3029055B1 (fr) * 2014-11-24 2017-01-13 Ateme Procede d'encodage d'image et equipement pour la mise en oeuvre du procede
WO2017041271A1 (fr) * 2015-09-10 2017-03-16 Mediatek Singapore Pte. Ltd. Modélisation de contexte efficace pour le codage d'un bloc de données
US10635462B2 (en) * 2018-05-23 2020-04-28 Microsoft Technology Licensing, Llc Skill discovery for computerized personal assistant
US11113846B2 (en) 2018-08-31 2021-09-07 Hulu, LLC Coefficient context modeling in video coding
CN112819708B (zh) * 2021-01-19 2022-05-27 中北大学 一种低采样率下电磁泄漏视频图像的复原方法及系统
JP2023026969A (ja) * 2021-08-16 2023-03-01 キヤノン株式会社 撮像システム、サーバ装置、サーバ装置の制御方法、プログラム、および記憶媒体

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW297202B (fr) * 1993-10-13 1997-02-01 Rca Thomson Licensing Corp
RU2325783C2 (ru) * 2002-07-15 2008-05-27 Томсон Лайсенсинг С.А. Адаптивное взвешивание эталонных изображений при кодировании видеосигнала
JP4699685B2 (ja) * 2003-08-21 2011-06-15 パナソニック株式会社 信号処理装置及びそれを用いた電子機器
JP2007043651A (ja) * 2005-07-05 2007-02-15 Ntt Docomo Inc 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム
KR100995226B1 (ko) * 2005-07-22 2010-11-17 미쓰비시덴키 가부시키가이샤 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법, 화상 부호화 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체, 화상 복호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
US7245242B2 (en) * 2005-11-28 2007-07-17 Conexant Systems, Inc. Decoding systems and methods
KR100736104B1 (ko) * 2006-04-06 2007-07-06 삼성전자주식회사 독립적 파싱을 지원하는 비디오 코딩 방법 및 장치
EP2106666B1 (fr) * 2007-01-08 2019-06-12 Nokia Technologies Oy Prévision inter-couches améliorée pour une graduation spatiale étendue dans un encodage vidéo
US8743774B2 (en) * 2007-01-30 2014-06-03 Qualcomm Incorporated Resource requests for a wireless communication system
US8422552B2 (en) * 2007-03-29 2013-04-16 James Au Entropy coding for video processing applications
KR101182634B1 (ko) * 2007-04-12 2012-09-14 노키아 코포레이션 공간적으로 향상된 변환 부호화
US8488668B2 (en) * 2007-06-15 2013-07-16 Qualcomm Incorporated Adaptive coefficient scanning for video coding
CN101127910B (zh) * 2007-10-08 2013-01-02 威盛电子股份有限公司 编码图块标志参数运算方法和装置
US8891615B2 (en) * 2008-01-08 2014-11-18 Qualcomm Incorporated Quantization based on rate-distortion modeling for CABAC coders
US8675736B2 (en) * 2009-05-14 2014-03-18 Qualcomm Incorporated Motion vector processing
US9069713B2 (en) * 2009-06-05 2015-06-30 Qualcomm Incorporated 4X4 transform for media coding
JP2013131786A (ja) * 2010-04-09 2013-07-04 Mitsubishi Electric Corp 動画像符号化装置および動画像復号装置
HUE051391T2 (hu) * 2010-04-13 2021-03-01 Ge Video Compression Llc Szignifikancia térképek és transzformációs együttható blokkok kódolása
CN101854555B (zh) * 2010-06-18 2011-07-27 上海交通大学 基于预测残差自适应调整的视频编码系统
CN102256125B (zh) * 2011-07-14 2013-06-05 北京工业大学 面向高效视频编码hevc基于上下文的自适应算数编码方法
MY167316A (en) 2011-11-04 2018-08-16 Sharp Kk Arithmetic decoding device, image decoding device, arithmetic coding device, image coding device, and arithmetic decoding method

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
JOEL SOLE ET AL.: "Non- CE11: Diagonal sub-block scan for HE residual coding", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 7TH MEETING, 21 November 2011 (2011-11-21), GENEVA, CH, XP030050448 *
JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, 14 July 2011 (2011-07-14), Retrieved from the Internet <URL:phenix.it-sudparis.eu/jct/doc_end_user/documents/6_Torino/ wg11/JCTVC-F803-v2.zip>
See also references of EP2797321A4
SHIH-TA HSIANG ET AL.: "Non-CEll: Context reduction for coding transform coefficients", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 7TH MEETING, 21 November 2011 (2011-11-21), GENEVA, CH, XP030050575 *
TZU-DER CHUANG ET AL.: "Non-CE11 . Block- based significance map context selection", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT- VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/ WG11 8TH MEETING, 1 February 2012 (2012-02-01), SAN JOSE, CA, USA, XP030051685 *

Also Published As

Publication number Publication date
KR102071574B1 (ko) 2020-01-30
TW201347543A (zh) 2013-11-16
EP2797321A1 (fr) 2014-10-29
EP2797321A4 (fr) 2015-06-24
AU2012355212B2 (en) 2016-07-21
US9794583B2 (en) 2017-10-17
CN107277552B (zh) 2019-10-29
JP6604561B2 (ja) 2019-11-13
PL2797321T3 (pl) 2021-08-02
US20170374376A1 (en) 2017-12-28
CN103339937B (zh) 2017-07-25
BR112013018850A2 (pt) 2018-01-23
US9332253B2 (en) 2016-05-03
CA2825767C (fr) 2018-11-27
SG192171A1 (en) 2013-08-30
RU2013135004A (ru) 2016-02-10
ES2864591T3 (es) 2021-10-14
US20160173911A1 (en) 2016-06-16
RU2609064C9 (ru) 2018-09-21
EP2797321B1 (fr) 2021-02-17
US10362324B2 (en) 2019-07-23
US9826246B2 (en) 2017-11-21
CN103339937A (zh) 2013-10-02
US10595030B2 (en) 2020-03-17
JP2019024253A (ja) 2019-02-14
TWI562598B (fr) 2016-12-11
JP2017069979A (ja) 2017-04-06
MX2013008534A (es) 2013-08-12
CN107277552A (zh) 2017-10-20
AU2012355212A1 (en) 2013-08-15
US20130188684A1 (en) 2013-07-25
JP6459075B2 (ja) 2019-01-30
US20160173902A1 (en) 2016-06-16
BR112013018850B1 (pt) 2022-09-27
KR20140109792A (ko) 2014-09-16
RU2609064C2 (ru) 2017-01-30
JPWO2013094199A1 (ja) 2015-04-27
US20190238876A1 (en) 2019-08-01
CA2825767A1 (fr) 2013-06-27

Similar Documents

Publication Publication Date Title
JP6604561B2 (ja) 画像符号化方法および画像符号化装置
JP6384690B2 (ja) 画像符号化方法、画像符号化装置、画像復号方法及び画像復号装置
JP6145820B2 (ja) 画像符号化方法、画像符号化装置、画像復号方法、及び画像復号装置
JP6288423B2 (ja) 動画像符号化方法、動画像符号化装置、動画像復号方法、および、動画像復号装置
WO2013042329A1 (fr) Procédé de codage d&#39;image, procédé de décodage d&#39;image, dispositif de codage d&#39;image, dispositif de décodage d&#39;image et dispositif de codage/décodage d&#39;image
WO2012108205A1 (fr) Procédé de codage d&#39;image, dispositif de codage d&#39;image, procédé de décodage d&#39;image, dispositif de décodage d&#39;image et dispositif de codage-décodage d&#39;image
JP5937020B2 (ja) 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、及び動画像符号化復号装置
JP5559918B2 (ja) 画像を復号する装置、システム及び画像視聴方法
WO2013111593A1 (fr) Procédé de codage d&#39;image, procédé de décodage d&#39;image, dispositif de codage d&#39;image, dispositif de décodage d&#39;image et dispositif de codage/décodage d&#39;image
JP6327435B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置、及び、画像復号装置
WO2012096185A1 (fr) Procédé de codage d&#39;image, dispositif de codage d&#39;image, procédé de décodage d&#39;image, dispositif de décodage d&#39;image et dispositif de codage/décodage d&#39;image
JP6210375B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置及び画像符号化復号装置
JP6179813B2 (ja) 画像符号化方法、画像符号化装置、画像復号方法、画像復号装置および画像符号化復号装置
WO2013175736A1 (fr) Procédé de codage vidéo, dispositif de codage vidéo, procédé de décodage vidéo, dispositif de décodage vidéo et dispositif de codage/décodage vidéo
JP6489337B2 (ja) 算術復号方法および算術符号化方法
WO2013073184A1 (fr) Procédé de codage d&#39;image, procédé de décodage d&#39;image, dispositif de codage d&#39;image, dispositif de décodage d&#39;image, et dispositif de codage/décodage d&#39;image
WO2014024491A1 (fr) Procédé de décodage d&#39;image, procédé de codage d&#39;image, dispositif de décodage d&#39;image, dispositif de codage d&#39;image et dispositif de codage/décodage d&#39;image
WO2012098868A1 (fr) Procédé de codage d&#39;image, procédé de décodage d&#39;image, dispositif de codage d&#39;image, dispositif de décodage d&#39;image et dispositif de codage/décodage d&#39;image
WO2012077349A1 (fr) Procédé de codage d&#39;image et procédé de décodage d&#39;image
WO2012095930A1 (fr) Procédé de codage d&#39;image, procédé de décodage d&#39;image, dispositif de codage d&#39;image et dispositif de décodage d&#39;image

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2013530489

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: MX/A/2013/008534

Country of ref document: MX

ENP Entry into the national phase

Ref document number: 20137019638

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2825767

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2012860389

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2012355212

Country of ref document: AU

Date of ref document: 20121219

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12860389

Country of ref document: EP

Kind code of ref document: A1

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112013018850

Country of ref document: BR

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2013135004

Country of ref document: RU

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 112013018850

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20130723