WO2012095930A1 - Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image et dispositif de décodage d'image - Google Patents

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

Info

Publication number
WO2012095930A1
WO2012095930A1 PCT/JP2011/007137 JP2011007137W WO2012095930A1 WO 2012095930 A1 WO2012095930 A1 WO 2012095930A1 JP 2011007137 W JP2011007137 W JP 2011007137W WO 2012095930 A1 WO2012095930 A1 WO 2012095930A1
Authority
WO
WIPO (PCT)
Prior art keywords
scan order
unit
encoding
image
decoding
Prior art date
Application number
PCT/JP2011/007137
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 パナソニック株式会社
Publication of WO2012095930A1 publication Critical patent/WO2012095930A1/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/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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/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/124Quantisation

Definitions

  • the present invention relates to an image encoding method, an image decoding method, an image encoding device, and an image decoding device, and in particular, an image encoding method, an image decoding method, and an image code that perform quantization or inverse quantization using a quantization matrix.
  • the present invention relates to an encoding device and an image decoding device.
  • a conventional image coding system represented by the ITU-T standard called 26x and the ISO / IEC standard called MPEG-x
  • the picture to be coded is divided into predetermined units. Encoding is performed in the division unit.
  • H.M. In the H.264 / MPEG-4 AVC standard (see, for example, Non-Patent Document 1), an encoding target picture is encoded in units of 16 horizontal pixels and 16 vertical pixels called macroblocks.
  • the encoding target picture is encoded by performing frequency conversion, quantization, and entropy encoding for each macroblock.
  • the coefficient values (pixel values) of the quantized macroblock are coded in a predetermined scan order.
  • subjective image quality is improved by changing a quantization step (quantization width) between a high frequency component and a low frequency component using a quantization matrix.
  • the conventional technique has a problem that the encoding efficiency cannot be sufficiently improved.
  • the nonzero coefficient and the zero coefficient included in the macroblock are located at positions where the zero coefficient continues to the end. It is preferable to encode the information earlier.
  • the coefficient values of the quantized macroblock are encoded in a predetermined scan order. For this reason, there are cases where the quantized macroblocks cannot be encoded in an optimal order, and the encoding efficiency cannot be sufficiently improved.
  • the present invention has been made to solve the above-described conventional problems, and provides an image encoding method, an image decoding method, an image encoding device, and an image decoding device that can sufficiently improve encoding efficiency.
  • the purpose is to provide.
  • an image encoding method is an image encoding method for encoding image data, and a quantization target block of the image data is quantized using a quantization matrix. Based on the quantization matrix, the scan order of the coefficients included in the quantized encoding target block is determined, and the quantized encoding target block is encoded in the determined scan order.
  • the coefficient value of the quantization matrix and whether the coefficient of the block to be encoded after quantization is a zero coefficient or a non-zero coefficient has a dependency relationship, so adaptive scanning is performed based on the quantization matrix.
  • the encoding efficiency can be further improved.
  • a scan order corresponding to a quantization matrix used for quantization of the encoding target block may be selected from at least one predetermined scan order.
  • the scan order is adaptively determined based on the quantization matrix used for quantization from at least one predetermined scan order, the encoding efficiency can be further improved. Furthermore, since the process of deriving the scan order for each encoding target block can be omitted, the processing amount can be reduced.
  • the coefficient values included in the quantization matrix are ordered from the coefficient position where the coefficient value is small to the coefficient position where the value is large, that is, from the position where fine quantization is performed to the position where coarse quantization is performed.
  • the scanning order may be determined as the scanning order of the coefficients included in the encoding target block.
  • the encoding target block is scanned in the order from the smallest value of the quantization matrix, it is possible to increase the probability that the non-zero coefficients are concentrated in the scanning order and the zero coefficients are concentrated in the backward order. Therefore, the encoding efficiency can be sufficiently improved.
  • the determined scan order may be stored in the memory.
  • the scan order of the coefficients included in the coding target block may be determined based on the quantization width calculated based on the quantization matrix.
  • the quantization width it is possible to further increase the probability that non-zero coefficients are concentrated on the front side in the scan order and zero coefficients are concentrated on the back side. Therefore, the encoding efficiency can be further improved.
  • An image decoding method is an image decoding method for decoding an encoded stream, wherein the scan order of coefficients included in a decoding target block of the encoded stream is determined based on a quantization matrix.
  • the decoding target block is decoded in the determined scan order, and the decoded decoding target block is inversely quantized using the quantization matrix.
  • the encoded stream generated by encoding the encoding target block in the scan order determined based on the quantization matrix can be correctly decoded.
  • Encoding efficiency can be further improved.
  • a scan order corresponding to a quantization matrix used for quantization of the decoding target block may be selected from at least one predetermined scan order.
  • the scan order is adaptively determined based on the quantization matrix used for quantization from at least one predetermined scan order, the encoding efficiency can be further improved. Furthermore, since the process of deriving the scan order for each decoding target block can be omitted, the processing amount can be reduced.
  • the coefficient values constituting the quantization matrix are ordered from the coefficient position having the smallest value to the coefficient value having the largest value, that is, in the order of the coarsely quantized position to the coarsely quantized position.
  • the scanning order may be determined as the scanning order of the coefficients included in the decoding target block.
  • the decoding target block is scanned in the order of the smaller value of the quantization matrix, the encoded stream generated by encoding the encoding target block in the order of the smaller value of the quantization matrix can be correctly decoded. Can do.
  • the determined scan order may be stored in the memory.
  • the scan order of the coefficients included in the decoding target block may be determined based on the quantization width calculated based on the quantization matrix.
  • the present invention can be realized not only as an image encoding method and an image decoding method, but also as an apparatus including a processing unit that performs steps included in the image encoding method and the image decoding method. Moreover, you may implement
  • a communication network such as the Internet.
  • a part or all of the processing units that perform the steps included in each of the image encoding methods and image decoding methods described above may be configured by one system LSI (Large Scale Integration).
  • the system LSI is an ultra-multifunctional LSI manufactured by integrating a plurality of components on a single chip, and specifically includes a microprocessor, ROM, RAM (Random Access Memory), and the like.
  • Computer system is an ultra-multifunctional LSI manufactured by integrating a plurality of components on a single chip, and specifically includes a microprocessor, ROM, RAM (Random Access Memory), and the like.
  • the encoding efficiency can be sufficiently improved.
  • FIG. 1 is a block diagram showing an example of a configuration of an image encoding device according to Embodiment 1 of the present invention.
  • FIG. 2 is a block diagram showing an example of the configuration of the coding control unit according to Embodiment 1 of the present invention.
  • FIG. 3 is a diagram showing an example of the quantization matrix, the initial scan order, and the transform coefficient according to Embodiment 1 of the present invention.
  • FIG. 4 is a diagram showing an example of the changed scan order according to Embodiment 1 of the present invention.
  • FIG. 5 is a flowchart showing an example of the operation of the image coding apparatus according to Embodiment 1 of the present invention.
  • FIG. 6 is a flowchart showing an example of a scan order determination method according to the first embodiment of the present invention.
  • FIG. 7 is a block diagram showing an example of the configuration of the image decoding apparatus according to Embodiment 1 of the present invention.
  • FIG. 8 is a block diagram showing an example of the configuration of the decoding control unit according to Embodiment 1 of the present invention.
  • FIG. 9 is a flowchart showing an example of the operation of the image decoding apparatus according to Embodiment 1 of the present invention.
  • FIG. 10 is a block diagram showing an example of the configuration of the coding control unit according to Embodiment 2 of the present invention.
  • FIG. 11 is a flowchart showing an example of a scan order determination method according to the second embodiment of the present invention.
  • FIG. 12 is a diagram showing an example of the changed scan order according to the second embodiment of the present invention.
  • FIG. 13 is a block diagram showing an example of the configuration of the decoding control unit according to Embodiment 2 of the present invention.
  • FIG. 14 is a block diagram showing an example of the configuration of the coding control unit according to Embodiment 3 of the present invention.
  • FIG. 15 is a flowchart showing an example of a scan order determination method according to the third embodiment of the present invention.
  • FIG. 16 is a diagram showing an example of determining the scan order according to Embodiment 3 of the present invention.
  • FIG. 17 is a block diagram showing an example of a configuration of a decoding control unit according to Embodiment 3 of the present invention.
  • FIG. 18 is an explanatory diagram for explaining a multi-layer block structure according to the embodiment of the present invention.
  • FIG. 18 is an explanatory diagram for explaining a multi-layer block structure according to the embodiment of the present invention.
  • FIG. 19 is an overall configuration diagram of a content supply system that realizes a content distribution service.
  • FIG. 20 is an overall configuration diagram of a digital broadcasting system.
  • FIG. 21 is a block diagram illustrating a configuration example of a television.
  • FIG. 22 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. 23 is a diagram illustrating a structure example of a recording medium that is an optical disk.
  • FIG. 24A is a diagram illustrating an example of a mobile phone.
  • FIG. 24B is a block diagram illustrating a configuration example of a mobile phone.
  • FIG. 25 is a diagram showing a structure of multiplexed data.
  • FIG. 26 is a diagram schematically showing how each stream is multiplexed in the multiplexed data.
  • FIG. 27 is a diagram showing in more detail how the video stream is stored in the PES packet sequence.
  • FIG. 28 is a diagram illustrating the structure of TS packets and source packets in multiplexed data.
  • FIG. 29 is a diagram illustrating a data structure of the PMT.
  • FIG. 30 is a diagram showing an internal configuration of multiplexed data information.
  • FIG. 31 shows the internal structure of stream attribute information.
  • FIG. 32 is a diagram illustrating steps for identifying video data.
  • FIG. 33 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. 33 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. 33 is a block diagram illustrating a configuration example of an
  • FIG. 34 is a diagram illustrating a configuration for switching the driving frequency.
  • FIG. 35 is a diagram illustrating steps for identifying video data and switching between driving frequencies.
  • FIG. 36 is a diagram illustrating an example of a look-up table in which video data standards are associated with drive frequencies.
  • FIG. 37A is a diagram illustrating an example of a configuration for sharing a module of a signal processing unit.
  • FIG. 37B is a diagram illustrating another example of a configuration for sharing a module of a signal processing unit.
  • An image encoding method is an image encoding method for encoding image data, wherein a block to be encoded of image data is quantized using a quantization matrix and is converted into a quantization matrix. Based on this, the scan order of the coefficients included in the quantized encoding target block is determined, and the quantized encoding target block is encoded in the determined scan order.
  • the image decoding method according to Embodiment 1 of the present invention is an image decoding method for decoding an encoded stream, and based on a quantization matrix, the scan order of coefficients included in a decoding target block of the encoded stream
  • the decoding target block is decoded in the determined scan order, and the decoded decoding target block is inversely quantized using a quantization matrix.
  • FIG. 1 is a block diagram showing an example of the configuration of an image coding apparatus 1000 according to Embodiment 1 of the present invention.
  • the image encoding apparatus 1000 includes an encoding processing unit 1100 and an encoding control unit 1200.
  • the encoding processing unit 1100 generates an encoded stream by encoding a moving image for each block.
  • Such an encoding processing unit 1100 includes a subtractor 1101, an orthogonal transform unit 1102, a quantization unit 1103, an entropy encoding unit 1104, an inverse quantization unit 1105, an inverse orthogonal transform unit 1106, and an adder. 1107, a deblocking filter 1108, a memory 1109, an in-plane prediction unit 1110, a motion compensation unit 1111, a motion detection unit 1112, and a switch 1113.
  • the subtractor 1101 acquires a moving image and acquires a predicted image from the switch 1113. Then, the subtracter 1101 generates a difference image by subtracting the predicted image from the encoding target block included in the moving image.
  • the orthogonal transform unit 1102 performs orthogonal transform such as discrete cosine transform on the difference image generated by the subtractor 1101, thereby transforming the difference image into a coefficient block including a plurality of frequency coefficients.
  • the quantization unit 1103 generates a quantized coefficient block by quantizing each frequency coefficient included in the coefficient block.
  • the entropy encoding unit 1104 generates an encoded stream by entropy encoding (variable length encoding) the coefficient block quantized by the quantization unit 1103 and the motion vector detected by the motion detection unit 1112. .
  • the inverse quantization unit 1105 performs inverse quantization on the coefficient block quantized by the quantization unit 1103.
  • the inverse orthogonal transform unit 1106 generates a decoded difference image by performing inverse orthogonal transform such as inverse discrete cosine transform on each frequency coefficient included in the inverse quantized coefficient block.
  • the adder 1107 acquires a predicted image from the switch 1113, and generates a local decoded image by adding the predicted image and the decoded difference image generated by the inverse orthogonal transform unit 1106.
  • the deblocking filter 1108 removes block distortion of the local decoded image generated by the adder 1107 and stores the local decoded image in the memory 1109.
  • a memory 1109 is a memory for storing a locally decoded image as a reference image in motion compensation.
  • the in-plane prediction unit 1110 generates a prediction image (intra prediction image) by performing in-plane prediction on the current block using the local decoded image generated by the adder 1107.
  • the motion detection unit 1112 detects a motion vector for the encoding target block included in the moving image, and outputs the detected motion vector to the motion compensation unit 1111 and the entropy encoding unit 1104.
  • the motion compensation unit 1111 refers to the image stored in the memory 1109 as a reference image, and performs motion compensation on the coding target block by using the motion vector detected by the motion detection unit 1112.
  • the motion compensation unit 1111 performs such motion compensation to generate a prediction image (inter prediction image) of the encoding target block.
  • the switch 1113 outputs the prediction image (intra prediction image) generated by the intra prediction unit 1110 to the subtractor 1101 and the adder 1107 when the encoding target block is subjected to intra prediction encoding.
  • the switch 1113 outputs the prediction image (inter prediction image) generated by the motion compensation unit 1111 to the subtractor 1101 and the adder 1107 when the encoding target block is subjected to inter-frame prediction encoding.
  • the encoding control unit 1200 controls the encoding processing unit 1100. Specifically, the encoding control unit 1200 determines the scan order of the coefficients included in the encoding target block based on the quantization matrix used for the quantization of the encoding target block.
  • FIG. 2 is a block diagram showing an example of the configuration of the encoding control unit 1200 according to Embodiment 1 of the present invention.
  • the encoding control unit 1200 includes a quantization matrix acquisition unit 110 and a scan order determination unit 120.
  • the quantization matrix acquisition unit 110 acquires a quantization matrix used for quantization of the encoding target block.
  • the encoding target block is a rectangular block including a predetermined number of pixels such as 4 ⁇ 4, 8 ⁇ 8, 16 ⁇ 16, 32 ⁇ 32, 64 ⁇ 64, and 128 ⁇ 128 pixels.
  • the number of pixels and the shape included in the encoding target block are not limited to this.
  • the encoding control unit 1200 includes a memory that holds one or more quantization matrices, and the quantization matrix acquisition unit 110 acquires the quantization matrix used by the quantization unit 1103 from the memory.
  • the quantization matrix acquisition unit 110 receives index information indicating the quantization matrix used for quantization from the quantization unit 1103, and acquires a quantization matrix corresponding to the received index information from the memory.
  • the quantization matrix acquisition unit 110 acquires the quantization matrix from the quantization unit 1103.
  • the scan order determination unit 120 determines the scan order of the coefficients included in the encoding target block based on the quantization matrix acquired by the quantization matrix acquisition unit 110. Specifically, the scan order determining unit 120 determines the scan order (encoding order) of the coefficients of the encoding target block based on the coefficient distribution of the quantization matrix.
  • the scan order determination unit 120 rearranges the coefficients of the quantization matrix acquired by the quantization matrix acquisition unit 110 in ascending order, and generates scan order information indicating the order. Specifically, the scan order determination unit 120 scans the coefficients of the quantization matrix along a predetermined initial scan order, and arranges them in order from the coefficient with the smallest value. That is, the scan order determining unit 120 determines the order of scanning in the order of coefficient positions from the coefficient position with the smallest coefficient value included in the quantization matrix to the coefficient position included in the encoding target block.
  • the order of the coefficient position in which the value of the coefficient included in the quantization matrix is small to the large coefficient position is the order of the position where the coefficient of the coding target block is coarsely quantized from the position where the coefficient of the code target block is finely quantized.
  • the order of these coefficients is the order according to the initial scan order.
  • FIG. 3 is a diagram showing an example of the quantization matrix, the initial scan order, and the transform coefficient according to Embodiment 1 of the present invention.
  • FIG. 4 is a diagram showing an example of the changed scan order according to the first embodiment of the present invention.
  • the quantization matrix and the transform coefficient are both composed of 4 ⁇ 4 pixel blocks.
  • the transform coefficient is a coefficient block generated by the orthogonal transform unit 1102 and is an example of data to be quantized.
  • the upper left coefficient of the coefficient block indicates the low frequency component of the encoding target block, and the upper right coefficient indicates the high frequency component of the encoding target block.
  • the initial scan order indicates the order in which the quantized transform coefficients are encoded.
  • the initial scan order shown in FIG. 3 is a so-called zigzag scan, and indicates that the order when encoding the quantized transform coefficients is from the low frequency component to the high frequency component.
  • the scan order determination unit 120 rearranges the coefficients of the quantization matrix shown in FIG. 3 in ascending order, the order becomes “2 ⁇ 6 ⁇ 6 ⁇ 13 ⁇ 13 ⁇ . Therefore, as shown in FIG. 4, the scan order of the transform coefficients is changed to “C 22 ⁇ C 00 ⁇ C 11 ⁇ C 10 ⁇ C 01 ⁇ .
  • the scan order determination unit 120 outputs scan order information indicating the changed scan order to the entropy encoding unit 1104.
  • the entropy encoding unit 1104 encodes the quantized transform coefficient based on the scan order information determined by the scan order determination unit 120.
  • the scan order of the coefficients of the encoding target block becomes the order of the coefficient of the quantization matrix used for quantization of the encoding target block.
  • the larger the coefficient value of the quantization matrix the higher the probability that the corresponding coefficient of the coefficient block after quantization will be zero. Therefore, by encoding the coefficients of the encoding target block in ascending order of the coefficients of the quantization matrix, the non-zero coefficients can be concentrated in the scanning order and the zero coefficients can be concentrated in the backward order. .
  • the entropy encoding unit 1104 encodes a significant flag indicating whether the coefficient is a non-zero coefficient or a zero coefficient in accordance with the encoding (scan) order. To do. For example, if the significance flag is “1”, it indicates that the coefficient is a non-zero coefficient. Further, if the significance flag is “0”, it indicates that the coefficient is a zero coefficient.
  • the entropy encoding unit 1104 encodes a last flag indicating whether or not the coefficient is the last non-zero coefficient in the scan order in the encoding target block.
  • the last flag is encoded following the significant flag when the coefficient is a non-zero coefficient, and is not encoded when the coefficient is a zero coefficient. For example, if the last flag is “1”, it indicates that the coefficient is the last non-zero coefficient. If the last flag is “0”, it indicates that the coefficient is not the last non-zero coefficient, that is, the encoding target block still contains a non-zero coefficient.
  • FIG. 5 is a flowchart showing an example of the operation of the image coding apparatus 1000 according to Embodiment 1 of the present invention.
  • the quantization unit 1103 quantizes the encoding target block using the quantization matrix (S10). Specifically, the orthogonal transform unit 1102 generates transform coefficients by orthogonally transforming the encoding target block, and the quantization unit 1103 quantizes the generated transform coefficients using a quantization matrix.
  • the encoding target block to be quantized is a difference image between the encoding target block included in the input moving image and the predicted image.
  • the encoding target block to be quantized may be the encoding target block itself included in the input moving image. That is, prediction coding may not be performed in the image coding apparatus 1000 according to Embodiment 1 of the present invention.
  • the encoding control unit 1200 determines the scan order of the coefficients included in the quantized encoding target block based on the quantization matrix used for quantization (S20). Details of the scan order determination method will be described later with reference to FIG.
  • the entropy encoding unit 1104 encodes the quantized block to be encoded in the determined scan order (S30). Specifically, as described above, the entropy encoding unit 1104 encodes the significant flag and the last flag, and entropy-encodes the non-zero coefficient included in the encoding target block, thereby encoding the encoded stream. Generate.
  • FIG. 6 is a flowchart showing an example of the scan order determination method according to the first embodiment of the present invention.
  • the scan order determination unit 120 determines an initial scan order (S101). Specifically, the initial scan order includes a zigzag scan, a horizontal direction priority scan, and a vertical direction priority scan. At this time, the scan order determination unit 120 may determine the initial scan order according to the encoding target block. For example, the scan order determination unit 120 determines the zigzag scan as the initial scan order when the encoding target block is a progressive image, and the vertical scan is the initial scan when the block is a field scan image (interlaced image). The order may be determined.
  • the quantization matrix acquisition unit 110 acquires all the coefficients of the quantization matrix used by the quantization unit 1103 to quantize the encoding target block (S102).
  • the scan order determination unit 120 scans the quantization matrix in the initial scan order, and rearranges the coefficients of the quantization matrix in ascending order of values (S103). Then, the scan order determination unit 120 determines the scan order of the coefficients included in the encoding target block based on the sorting result (S104). Specifically, the scan order determination unit 120 determines the order in which the coefficient value of the quantization matrix is small as it is as the scan order of the coefficients included in the encoding target block. At this time, if the values of the coefficients of the quantization matrix are the same, the scan order is determined according to the order of the initial scan order.
  • the image encoding apparatus 1000 determines the scan order based on the quantization matrix and encodes the encoding target block in the determined scan order. Since the probability of non-zero coefficient and zero coefficient varies for each coefficient position of the encoding target block depending on the value of the quantization matrix, the encoding efficiency is further improved by determining the scan order based on the quantization matrix. be able to.
  • the order in which the coefficients of the quantization matrix are arranged in ascending order is determined as the scan order of the coefficients included in the encoding target block. For this reason, since the coefficients of the quantization matrix can always be arranged in ascending order, it is possible to improve the probability that the non-zero coefficients are concentrated on the front side and the zero coefficients are concentrated on the back side in the scan order.
  • the significant flag and the last flag can be reduced, so that the encoding efficiency can be improved. .
  • FIG. 7 is a block diagram showing an example of the configuration of the image decoding apparatus 2000 according to Embodiment 1 of the present invention.
  • the image decoding apparatus 2000 includes a decoding processing unit 2100 and a decoding control unit 2200.
  • the decoding processing unit 2100 generates a decoded image by decoding the encoded stream for each block.
  • a decoding processing unit 2100 includes an entropy decoding unit 2101, an inverse quantization unit 2102, an inverse orthogonal transform unit 2103, an adder 2104, a deblocking filter 2105, a memory 2106, and an in-plane prediction unit 2107.
  • the entropy decoding unit 2101 acquires an encoded stream and performs entropy decoding (variable length decoding) on the encoded stream.
  • the inverse quantization unit 2102 inversely quantizes the quantized coefficient block generated by entropy decoding by the entropy decoding unit 2101.
  • the inverse orthogonal transform unit 2103 generates a decoded difference image by performing inverse orthogonal transform such as inverse discrete cosine transform on each frequency coefficient included in the inverse quantized coefficient block.
  • the adder 2104 obtains a predicted image from the switch 2109, and generates a decoded image by adding the predicted image and the decoded difference image generated by the inverse orthogonal transform unit 2103.
  • the deblocking filter 2105 removes block distortion of the decoded image generated by the adder 2104, stores the decoded image in the memory 2106, and outputs the decoded image.
  • the intra prediction unit 2107 generates a prediction image (intra prediction image) by performing intra prediction on the decoding target block using the decoded image generated by the adder 2104.
  • the motion compensation unit 2108 refers to the image stored in the memory 2106 as a reference image, and performs motion compensation on the decoding target block by using a motion vector generated by entropy decoding by the entropy decoding unit 2101. .
  • the motion compensation unit 2108 generates a prediction image (inter prediction image) for the decoding target block through such motion compensation.
  • the switch 2109 outputs the prediction image (intra prediction image) generated by the intra prediction unit 2107 to the adder 2104 when the decoding target block is subjected to intra prediction encoding.
  • the switch 2109 outputs the prediction image (inter prediction image) generated by the motion compensation unit 2108 to the adder 2104 when the decoding target block is subjected to inter-frame prediction encoding.
  • the decoding control unit 2200 controls the decoding processing unit 2100. Specifically, the decoding control unit 2200 determines the scan order of the coefficients included in the decoding target block based on the quantization matrix used for the inverse quantization of the decoding target block.
  • FIG. 8 is a block diagram showing an example of the configuration of the decoding control unit 2200 according to Embodiment 2 of the present invention.
  • the decoding control unit 2200 includes a quantization matrix acquisition unit 110 and a scan order determination unit 120.
  • the quantization matrix acquisition unit 110 performs the same operation as the quantization matrix acquisition unit 110 included in the encoding control unit 1200.
  • the decoding control unit 2200 includes a memory that holds one or more quantization matrices, and the quantization matrix acquisition unit 110 acquires a quantization matrix used by the inverse quantization unit 2102 from the memory.
  • the quantization matrix acquisition unit 110 acquires the index information from the entropy decoding unit 2101 and corresponds to the acquired index information.
  • the quantization matrix is acquired from the memory.
  • the entropy decoding unit 2101 when the coefficient value of the quantization matrix is included in the encoded stream, the entropy decoding unit 2101 generates a quantization matrix by decoding the encoded stream, and outputs the quantization matrix to the quantization matrix acquisition unit 110. .
  • the quantization matrix acquisition unit 110 acquires the quantization matrix from the entropy decoding unit 2101.
  • the scan order determination unit 120 performs the same operation as the scan order determination unit 120 included in the encoding control unit 1200. Therefore, in the following, detailed description of the scan order determination unit 120 is omitted.
  • the scan order information indicating the scan order determined by the scan order determining unit 120 is output to the entropy decoding unit 2101.
  • the entropy decoding unit 2101 generates a restored quantized coefficient (quantized coefficient block) by decoding the decoding target block of the encoded stream based on the scan order information.
  • the image decoding apparatus correctly decodes the encoded stream generated by encoding the encoding target block in the scan order determined based on the quantization matrix. be able to.
  • FIG. 9 is a flowchart showing an example of the operation of the image decoding apparatus 2000 according to Embodiment 1 of the present invention.
  • the decoding control unit 2200 determines the scan order of the coefficients included in the decoding target block based on the quantization matrix used for inverse quantization (S20). Details of the method for determining the scan order are the same as those in FIG.
  • the entropy decoding unit 2101 decodes the decoding target block according to the determined scan order (S40). For example, the entropy decoding unit 2101 acquires a quantized coefficient value, a significant flag, and a last flag by entropy decoding a decoding target block included in the encoded stream. Then, the entropy decoding unit 2101 refers to the significant flag and the last flag according to the determined scan order, and arranges the obtained coefficient values at appropriate coefficient positions, thereby decoding the decoding target block.
  • the decoded block to be decoded corresponds to the block to be encoded after quantization generated by the quantization unit 1103 shown in FIG.
  • the inverse quantization unit 2102 inversely quantizes the decoded block to be decoded using the quantization matrix used to determine the scan order (S50). That is, the inverse quantization unit 2102 inversely quantizes the decoded block to be decoded using the quantization matrix used in the quantization at the time of encoding.
  • the coefficient block generated by the inverse quantization is subjected to inverse orthogonal transform by the inverse orthogonal transform unit 2103 and converted into a decoded difference image.
  • the inverse orthogonal transform unit 2103 when predictive encoding is not performed at the time of encoding, the inverse orthogonal transform unit 2103 generates a decoded image by performing inverse orthogonal transform on the coefficient block. That is, the image decoding apparatus 2000 according to Embodiment 1 of the present invention may not perform predictive decoding.
  • the image decoding apparatus 2000 determines the scan order based on the quantization matrix, and decodes the decoding target block in the determined scan order. Thereby, the image decoding apparatus according to Embodiment 1 of the present invention correctly decodes the encoded stream generated by encoding the encoding target block in the scan order determined based on the quantization matrix. be able to.
  • the scan order based on the quantization matrix Encoding efficiency can be further improved.
  • the scan order of the coefficients included in the encoding target block is determined for each encoding target block based on the quantization matrix. Specifically, the quantization matrix is scanned based on the initial scan order, and when the target coefficient value is smaller than the immediately preceding coefficient value, the scan order is changed.
  • the scan order of the coefficients included in the decoding target block is determined for each decoding target block based on the quantization matrix. Specifically, the quantization matrix is scanned based on the initial scan order, and when the target coefficient value is smaller than the immediately preceding coefficient value, the scan order is changed.
  • the configuration of the image coding apparatus according to the second embodiment of the present invention is almost the same as that of the image coding apparatus 1000 of FIG. 1 according to the first embodiment.
  • the explanation is centered.
  • the image coding apparatus according to Embodiment 2 of the present invention is different from the image coding apparatus 1000 according to Embodiment 1 in that the coding control unit 200 shown in FIG. 10 is used instead of the coding control unit 1200.
  • the point to prepare is different.
  • FIG. 10 is a block diagram showing an example of the configuration of the encoding control unit 200 according to Embodiment 2 of the present invention.
  • the encoding control unit 200 includes a quantization matrix acquisition unit 110 and a scan order determination unit 220.
  • the quantization matrix acquisition unit 110 is the same as that in the first embodiment.
  • the scan order determination unit 220 includes a comparison unit 221, a setting unit 222, and an order determination unit 223, as shown in FIG.
  • the comparison unit 221 compares the coefficient values of the quantization matrix acquired by the quantization matrix acquisition unit 110. Specifically, the comparison unit 221 compares the current value set by the setting unit 222 with the coefficient value of the quantization matrix. The comparison result is output to the setting unit 222 and the order determination unit 223.
  • the setting unit 222 sets the initial scan order of the quantization matrix.
  • the initial scan order is the same as the initial scan order of the encoding target block, for example, zigzag scan, horizontal direction priority scan, and vertical direction priority scan.
  • the setting unit 222 sets the first coefficient value as the current value in the initial scan order of the quantization matrix acquired by the quantization matrix acquisition unit 110.
  • the set current value is updated based on the comparison result by the comparison unit 221. Specifically, when receiving a comparison result indicating that the current value is smaller than the coefficient value, the setting unit 222 sets the coefficient value to the current value.
  • the order determination unit 223 determines the scan order of the coefficients included in the encoding target block based on the comparison result. Specifically, when the order determination unit 223 receives a comparison result indicating that the current value is larger than the coefficient value, the order determination unit 223 switches the scan order.
  • FIG. 11 is a flowchart showing an example of a scan order determination method according to the second embodiment of the present invention.
  • the setting unit 222 sets the initial scan order of the quantization matrix (S201). At this time, the setting unit 222 may determine the initial scan order according to the encoding target block.
  • the setting unit 222 may determine the initial scan order according to the encoding target block.
  • a case where a zigzag scan is selected as the initial scan order will be described.
  • the setting unit 222 acquires the coefficient value (p) of the first quantization matrix in the initial scan order and sets it as the current value (c) (S202).
  • the comparison unit 221 acquires the coefficient value (p + 1) of the quantization matrix in the initial scan order (S203). Then, the comparing unit 221 compares the set current value (c) with the acquired coefficient value (p + 1) (S204).
  • the order determining unit 223 switches the scan order between the current value (c) and the coefficient value (p + 1) (S205). Specifically, the order determination unit 223 changes the scan order to the order of “coefficient value (p + 1) ⁇ current value (c) (specifically, coefficient value set as the current value (c))”.
  • the order determining unit 223 does not change the scan order (S206). That is, the scan order remains “current value (c) (specifically, coefficient value set as current value (c)) ⁇ coefficient value (p + 1)”. Further, in this case, the setting unit 222 updates the current value (c) by setting the coefficient value (p + 1) to the current value (c).
  • FIG. 12 is a diagram showing an example of the changed scan order according to the second embodiment of the present invention.
  • zigzag scanning is set as the initial scanning order.
  • the setting unit 222 sets “6” that is the first coefficient value (p) as the current value (c) (S202). Then, the comparison unit 221 acquires “13” as the next coefficient value (p + 1) (S203), and compares the current value (c) with the coefficient value (p + 1) (S204).
  • the comparison unit 221 acquires “13” as the next coefficient value (p + 1) and repeats the process.
  • the initial scan order is determined as it is as the scan order of the encoding target block (quantization coefficient) without changing the scan order.
  • the scan order is not changed up to the fourth coefficient in the initial scan order.
  • the current coefficient (c) is set to the value “20” of the fourth coefficient.
  • the comparison unit 221 acquires “28” as the next coefficient value (p + 1) and repeats the process.
  • the scan order in which C 02 and C 11 are switched from the initial scan order is determined as the changed scan order.
  • the setting unit 222 does not have to update the current value (c).
  • the scan order is not changed up to the seventh coefficient in the initial scan order.
  • the value “32” of the seventh coefficient is set as the current value (c).
  • the comparison unit 221 acquires “64” as the next coefficient value (p + 1) and repeats the processing.
  • the initial scan order from C 30 and C 21 and C 12 and are swapped scan order is determined as the scan order after the change.
  • the scan order is not changed up to the fourth coefficient in the initial scan order.
  • the current coefficient (c) is set to the value “32” of the fourth coefficient.
  • the comparison unit 221 acquires “64” as the next coefficient value (p + 1) and repeats the processing.
  • the initial scan order from C 11 and C 20 and C 02 and C 21 and C 12 and C 30 and are swapped scan order is determined as the scan order after the change.
  • the image coding apparatus scans the quantization matrix based on the initial scan order, and changes the scan order when the target coefficient value is smaller than the immediately preceding coefficient value. To do. As in the first embodiment, this makes it possible to increase the probability that non-zero coefficients are concentrated toward the front and the zero coefficients are concentrated toward the rear in the scan order, and the coding efficiency can be improved. .
  • the image coding apparatus can determine the scan order of the encoding matrix simultaneously with the scanning of the quantization matrix. Therefore, the processing amount can be reduced as compared with the case where the scan order is determined after all the coefficients of the quantization matrix are scanned once as in the first embodiment.
  • the process is repeated until all the coefficients of the quantization matrix are scanned.
  • a part of the coefficients constituting the quantization matrix is processed, and the rest The scan order of these coefficients may be determined as the initial scan order.
  • the coefficient of the high frequency component often has a larger coefficient value than the low frequency component, and therefore the probability that the corresponding quantized coefficient of the block to be encoded is a zero coefficient. Is expensive.
  • the scan order of the coefficients included in the block to be encoded may be determined based on the coefficient distribution of the quantization matrix only for low-frequency components that are likely to be non-zero coefficients after quantization. .
  • the processing amount can be reduced, and the scan order of the coefficients included in the encoding target block can be determined in a short period of time.
  • the configuration of the image decoding apparatus according to the second embodiment of the present invention is substantially the same as that of the image decoding apparatus 2000 of FIG. 7 according to the first embodiment. explain.
  • the image decoding apparatus according to the second embodiment of the present invention is different from the image decoding apparatus 2000 according to the first embodiment in that a decoding control unit 201 illustrated in FIG. 13 is provided instead of the decoding control unit 2200. ing.
  • the configuration of the decoding control unit 201 is the same as that of the coding control unit 200 shown in FIG.
  • the image decoding apparatus scans the quantization matrix based on the initial scan order, and changes the scan order when the target coefficient value is smaller than the immediately preceding coefficient value. .
  • the image decoding apparatus correctly decodes the encoded stream generated by encoding the encoding target block in the scan order determined based on the quantization matrix. be able to.
  • the scan order since the probability of becoming a non-zero coefficient and a zero coefficient varies depending on the coefficient position of the encoding target block depending on the value of the quantization matrix, by determining the scan order based on the quantization matrix, Encoding efficiency can be further improved.
  • the scan order is determined by selecting a scan order corresponding to the quantization matrix used for quantization from at least one predetermined scan order. It is characterized by that.
  • the scan order is determined by selecting a scan order corresponding to a quantization matrix used for inverse quantization from at least one predetermined scan order. It is characterized by doing.
  • the configuration of the image encoding apparatus according to the third embodiment of the present invention is substantially the same as that of the image encoding apparatus 1000 of FIG. 1 according to the first embodiment. The explanation will be centered.
  • the image coding apparatus according to the third embodiment of the present invention includes a coding control unit 300 illustrated in FIG. 14 instead of the coding control unit 1200. The point to prepare is different.
  • FIG. 14 is a block diagram showing an example of the configuration of the encoding control unit 300 according to Embodiment 3 of the present invention.
  • the encoding control unit 300 includes a quantization matrix acquisition unit 110, a scan order determination unit 320, and a variation value comparison unit 330.
  • the quantization matrix acquisition unit 110 is the same as in the first and second embodiments.
  • the scan order determination unit 320 obtains an evaluation value for each of at least one predetermined scan order, and determines the scan order having the highest evaluation value as the scan order of the coefficients included in the encoding target block. As illustrated in FIG. 14, the scan order determination unit 320 includes a comparison unit 221, a setting unit 322, a counter control unit 323, a selection unit 324, and a memory 325.
  • the comparison unit 221 is the same as that in the first embodiment.
  • the setting unit 322 selects one scan order from at least one predetermined scan order, and sets the selected scan order. At this time, the setting unit 322 selects a scan order for which an evaluation value has not yet been obtained from at least one predetermined scan order. For example, the setting unit 322 selects one scan order from among zigzag scanning, horizontal priority scanning, and vertical priority scanning.
  • the setting unit 322 sets the first coefficient value as the current value, which is the coefficient value of the quantization matrix acquired by the quantization matrix acquisition unit 110, in the set scan order.
  • the set current value is updated based on the comparison result by the comparison unit 221. Specifically, similarly to the setting unit 222 according to the second embodiment, when the setting unit 322 receives a comparison result indicating that the current value is smaller than the coefficient value, the setting unit 322 sets the coefficient value to the current value.
  • the counter control unit 323 includes a counter and controls the counter based on the comparison result by the comparison unit 221. Specifically, the counter control unit 323 increments the counter when receiving a comparison result indicating that the current value is larger than the coefficient value. Further, the counter control unit 323 is reset when all the coefficients included in the quantization matrix are scanned, that is, the count value is set to 0.
  • the count value is an example of an evaluation value corresponding to the scan order.
  • the count value increases when the current value is larger than the coefficient value. That is, when the quantization matrix is scanned in the set scan order, the count value increases when the current coefficient value is smaller than the previous coefficient value. Therefore, the count value is 0 when the coefficient values of the quantization matrix are arranged in order from the small coefficient value to the large coefficient value in the set scan order.
  • the selection unit 324 compares the count values corresponding to each scan order, and determines the scan order with the smallest count value as the scan order of the coefficients included in the encoding target block. When there are a plurality of scan orders having the smallest count value, the selection unit 324 can select an arbitrary scan order from the plurality of scan orders having the smallest count value.
  • the selection unit 324 selects a predetermined default scan order as the scan order of the coefficients included in the encoding target block.
  • the default scan order is, for example, a zigzag scan.
  • the default scan order may be changed according to the encoding target block. Specifically, when the encoding target block is a progressive image, zigzag scanning is selected as the default scanning order, and when it is a field scanning image, vertical priority scanning is selected as the default scanning order. Good.
  • the memory 325 is a memory for holding at least one predetermined scan order.
  • the memory 325 may hold count values corresponding to the scan order.
  • the fluctuation value comparison unit 330 calculates the fluctuation value of the quantization matrix acquired by the quantization matrix acquisition unit 110. Then, the fluctuation value comparison unit 330 compares the calculated fluctuation value with a predetermined threshold value, and outputs the comparison result to the selection unit 324.
  • the fluctuation value is a value indicating the degree of variation of the coefficient of the quantization matrix.
  • the variation value is a difference between the maximum value and the minimum value of the coefficients constituting the quantization matrix.
  • the variation value may be a variance value of coefficients constituting the quantization matrix.
  • the counter control unit 323 may include a counter corresponding to each of at least one scan order. In this case, the counter need not be reset when determining the scan order of the coefficients included in the encoding target block. In addition, since the memory 325 does not have to hold the count values corresponding to the scan order, the memory area can be used effectively.
  • FIG. 15 is a flowchart showing an example of a scan order determination method according to the third embodiment of the present invention.
  • the fluctuation value comparison unit 330 calculates the fluctuation value of the quantization matrix acquired by the quantization matrix acquisition unit 110 (S301). Then, the fluctuation value comparison unit 330 compares the calculated fluctuation value with a predetermined threshold value (S302).
  • the counter control unit 323 resets the counter (S303). That is, the counter control unit 323 sets the count value to 0.
  • the setting unit 322 selects one scan order from at least one scan order held in the memory 325, and sets the selected scan order (S304).
  • the setting unit 322 acquires the coefficient value (p) of the first quantization matrix in the set scan order and sets it as the current value (c) (S305).
  • the comparison unit 221 acquires the coefficient value (p + 1) of the quantization matrix in the set scan order (S306). Then, the comparing unit 221 compares the set current value (c) with the acquired coefficient value (p + 1) (S307).
  • the counter control unit 323 increments the counter and increments the count value by 1 (S308).
  • the setting unit 322 sets the coefficient value (p + 1) to the current value (c), so that the current value (c ) Is updated (S309).
  • the setting unit 322 determines whether count values have been acquired for all of at least one scan order held in the memory 325 ( S311). If there is a scan order for which the count value has not been acquired (No in S311), the counter is reset and the above processing (S303 to S310) is repeated.
  • the selection unit 324 selects the scan order corresponding to the minimum count value as the scan order of the coefficients included in the encoding target block. (S312).
  • the smaller the count value the more the scan order that is set is the scan order in which the coefficient is scanned in the order of the smaller coefficient value. That is, when the encoding target block is scanned in the scan order with a small count value, it is possible to increase the probability that the non-zero coefficients are concentrated in the front and the zero coefficients are concentrated in the rear in the scan order.
  • the selection unit 324 selects the default scan order as the scan order of the coefficients included in the encoding target block (S313).
  • the default scan order is, for example, the scan order when the quantization matrix is not used. Specifically, zigzag scanning or the like is selected.
  • the coefficients constituting the quantization matrix indicate that the variation is small. Therefore, even if the scan order is determined according to the distribution of the coefficients of the quantization matrix, the effect of reducing the encoding efficiency due to the difference in the scan order cannot be expected. For this reason, when the variation value is smaller than the threshold value, it is possible to reduce the processing amount required for the scan order determination process by selecting the default scan order.
  • FIG. 16 is a diagram showing an example of determining the scan order according to Embodiment 3 of the present invention.
  • the fluctuation value comparison unit 330 calculates the difference between the maximum value and the minimum value of the coefficients constituting the quantization matrix as the fluctuation value. Further, it is assumed that the memory 325 holds three scan orders: zigzag scan, horizontal priority scan, and vertical priority scan.
  • the fluctuation value comparison unit 330 calculates the difference between the maximum value “18” and the minimum value “14” of the coefficients constituting the quantization matrix as a fluctuation value (S301). ). Then, the fluctuation value comparison unit 330 compares the calculated fluctuation value “4” with a threshold value (S302). If the threshold is “20”, for example, “variation value“ 4 ” ⁇ threshold“ 20 ”” (No in S302), the selection unit 324 sets the default scan order to the encoding target block. The scan order of the included coefficients is selected (S313).
  • the fluctuation value comparison unit 330 calculates the difference between the maximum value “42” and the minimum value “6” of the coefficients constituting the quantization matrix as a fluctuation value (S301). ). Then, the fluctuation value comparison unit 330 compares the calculated fluctuation value “36” with the threshold value “20” (S302). Since “variation value“ 36 ”> threshold value“ 20 ”” (Yes in S302), the counter control unit 323 resets the counter (S303).
  • the setting unit 322 sets, for example, zigzag scanning (S304).
  • the setting unit 322 acquires “6” that is the coefficient value (p) of the first quantization matrix in the set scan order, and sets it as the current value (c) (S305).
  • the comparison unit 221 acquires “13” as the next coefficient value (p + 1) (S306), and compares the current value (c) with the coefficient value (p + 1) (S307).
  • the counter is not incremented until the fourth coefficient value “20” in the zigzag scan.
  • the current value (c) is set to “20”.
  • the counter is not incremented until the last coefficient value “42” in the zigzag scan, so the count value finally becomes “1”. That is, the count value for the zigzag scan is “1”. This count value is held in the memory 325, for example.
  • the setting unit 322 sets, for example, a horizontal direction priority scan (S304).
  • the counter is not incremented up to the fourth coefficient value “28”.
  • “28” is set in the current value (c).
  • the counter is incremented until the seventh coefficient value is processed.
  • “28” remains set in the current value (c), and the count value is “3”.
  • the count value becomes “6” when the last coefficient value “42” is processed in the horizontal priority scan. That is, the count value for the horizontal direction priority scan is “6”.
  • the count value for the vertical direction priority scan becomes “6” by proceeding along the flowchart shown in FIG.
  • the selection unit 324 selects the scan order corresponding to the minimum count value (S312).
  • the count value of the zigzag scan is “1”
  • the count value of the horizontal direction priority scan is “6”
  • the count value of the vertical direction priority scan is “6”.
  • the zigzag scan is determined as the scan order of the coefficients included in the encoding target block.
  • the selection unit 324 determines the vertical direction priority scan as the scan order of the coefficients included in the encoding target block.
  • the image encoding device by selecting a scan order corresponding to the quantization matrix used for quantization from at least one predetermined scan order, Determine the scan order.
  • FIG. 15 an example is shown in which processing is performed until count values are acquired for all scan orders.
  • the scan order corresponding to the count value may be determined as the scan order of the coefficients included in the encoding target block.
  • the processing amount can be reduced, and the scan order of the coefficients included in the encoding target block can be determined in a short period of time.
  • the processing is repeated until all the coefficients of the quantization matrix are scanned has been described.
  • the processing is performed on some of the coefficients constituting the quantization matrix, and the rest The scan order of these coefficients may be determined as the initial scan order.
  • the coefficient of the high frequency component often has a larger coefficient value than the low frequency component, and therefore the probability that the corresponding quantized coefficient of the block to be encoded is a zero coefficient. Is expensive.
  • the scan order of the coefficients included in the block to be encoded may be determined based on the coefficient distribution of the quantization matrix only for low-frequency components that are likely to be non-zero coefficients after quantization. .
  • the processing amount can be reduced, and the scan order of the coefficients included in the encoding target block can be determined in a short period of time.
  • the image decoding apparatus according to Embodiment 3 of the present invention has substantially the same configuration as the image decoding apparatus 2000 of FIG. 7 according to Embodiment 1, the configuration of the image decoding apparatus according to Embodiment 1 is the same. Will be omitted, and different points will be mainly described.
  • the image decoding apparatus according to Embodiment 3 of the present invention is different from the image decoding apparatus 2000 according to Embodiment 1 in that a decoding control unit 301 shown in FIG. 17 is provided instead of the decoding control unit 2200. ing.
  • the configuration of the decoding control unit 301 is the same as that of the coding control unit 300 illustrated in FIG. 14, and thus description thereof is omitted below.
  • the image decoding apparatus selects a scan order corresponding to a quantization matrix used for inverse quantization from at least one predetermined scan order. Determine the order.
  • the image decoding apparatus correctly decodes the encoded stream generated by encoding the encoding target block in the scan order determined based on the quantization matrix. be able to.
  • the scan order since the probability of becoming a non-zero coefficient and a zero coefficient varies depending on the coefficient position of the encoding target block depending on the value of the quantization matrix, by determining the scan order based on the quantization matrix, Encoding efficiency can be further improved.
  • the image encoding device, the image decoding device, the image encoding method, and the image decoding method according to the present invention have been described based on the embodiments.
  • the present invention is limited to the embodiments described above and below. It is not a thing. Unless it deviates from the meaning of this invention, the form which carried out the various deformation
  • the scan order of the coefficients included in the block to be encoded is determined based on the quantization matrix, but other quantization control parameters may be used.
  • Other quantization control parameters include, for example, a quantization offset, a quantization parameter, and a quantization matrix index.
  • the scan order of the coefficients included in the encoding target block may be determined based on the quantization width calculated based on the quantization control parameter. Specifically, the scan order of the coefficients included in the encoding target block may be determined based on the quantization width derived from the quantization matrix and the quantization offset. Alternatively, the scan order may be determined based on the coefficient value (quantization value) of the encoding target block after quantization.
  • a quantization matrix index is associated with each quantization matrix.
  • the quantization matrix index is an identifier indicating which quantization matrix is used for each block.
  • the scan order based on the quantization matrix is derived in advance, and the derived scan order is stored in a memory or the like in association with the quantization matrix index.
  • the scan order can be acquired by referring to the quantization matrix index for each block.
  • the encoding target block (decoding target block) for determining the scan order may be hierarchized as shown in FIG.
  • FIG. 18 is an explanatory diagram for explaining a hierarchized processing unit (multi-hierarchical block structure).
  • the encoding processing unit 1100 encodes a moving image for each processing unit, and the decoding processing unit 2100 decodes the encoded stream for each processing unit.
  • This processing unit is divided into a plurality of small processing units, and the small processing unit is further hierarchized so as to be further divided into a plurality of smaller processing units. Note that the smaller the processing unit is, the deeper the hierarchy in which the processing unit is and the lower the value, and the larger the value indicating the hierarchy. Conversely, the larger the processing unit is, the shallower the hierarchy in which the processing unit is, the higher the hierarchy, and the smaller the value indicating the hierarchy.
  • the processing unit includes a coding unit (CU), a prediction unit (PU), and a transform unit (TU).
  • a CU is a block composed of a maximum of 128 ⁇ 128 pixels, and is a unit corresponding to a conventional macroblock.
  • PU is a basic unit of inter-screen prediction.
  • the TU is a basic unit of orthogonal transformation, and the size of the TU is the same as the PU or a size smaller than the PU.
  • the CU is divided into, for example, four sub CUs, and one of the sub CUs includes a PU and a TU having the same size as the sub CU (in this case, the PU and the TU overlap each other).
  • the PU is further divided into four sub-PUs
  • the TU is further divided into four sub-TUs.
  • the picture is divided into slices.
  • a slice is a sequence of maximum coding units.
  • the position of the maximum coding unit is indicated by the maximum coding unit address lcuAddr.
  • Each coding unit including the maximum coding unit is divided into four coding units. As a result, quadtree partitioning with the size of the coding unit is configured. The position of the coding unit is indicated by a coding unit index cuIdx starting from the sample (pixel or coefficient) at the upper left corner of the maximum coding unit.
  • the coding unit is treated as a prediction unit. Similar to the coding unit, the position of the prediction unit is indicated by a prediction unit index puIdx starting from the sample at the upper left end of the maximum coding unit.
  • the prediction unit may include a plurality of partitions (prediction unit partition or sub PU).
  • the prediction unit partition is indicated by a prediction unit partition index puPartIdx starting from the upper left sample of the prediction unit.
  • the prediction unit may include a plurality of conversion units. Similar to the encoding unit, the conversion unit may be divided into four small size conversion units (sub-conversion units). This allows quadtree partitioning of the residual signal. The position of the conversion unit is indicated by a conversion unit index tuIdx starting from the upper left sample of the prediction unit.
  • each processing unit is as follows.
  • CTB (coding tree block): A basic unit for specifying quadtree partitioning of a square area.
  • CTB has various sizes of squares.
  • LCTB largest coding tree block: the largest size CTB allowed in a slice.
  • a slice is composed of a plurality of LCTBs that do not overlap.
  • SCTB (smallest coding tree block): CTB of the smallest size allowed in a slice. Splitting SCTB into smaller CTBs is not allowed.
  • PU prediction unit
  • the size of the PU is the same as the size of the CU that is not allowed to be divided.
  • the CU is allowed to be divided into four square areas, whereas in the PU, the PU can be divided into a plurality of partitions having an arbitrary shape.
  • TU transform unit
  • LCU large coding unit
  • SCU Smallest Coding Unit: Same as the smallest CTB.
  • a quantization matrix is associated with each hierarchical processing unit (block), and the scan order of the coefficients included in the target block may be determined based on this quantization matrix.
  • the embodiments described above and below will be configured using hardware and / or software, but the configuration using hardware can also be configured using software, and the configuration using software is hardware. It can also be configured using hardware.
  • 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. 19 is a diagram showing an overall configuration of a content supply system ex100 that realizes a content distribution service.
  • the 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.
  • the 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 through the base stations ex106 to ex110 which are fixed wireless stations.
  • 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) method, a CDMA (Code Division Multiple Access) method, a W-CDMA (Wideband-Code Division MultipleL), or a W-CDMA (Wideband-Code Division MultipleT method). It may be a system, 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 the user using the camera ex113 (for example, music live video) is encoded as described in the above embodiments (that is, the image encoding of the present invention).
  • Function as a device and transmit to the streaming server ex103.
  • the streaming server ex103 streams the content data transmitted to the requested client.
  • the client include a computer ex111, a PDA ex112, a camera ex113, a mobile phone ex114, a game machine ex115, and the like that can decode the encoded data.
  • Each device that receives the distributed data decodes the received data and reproduces it (that is, functions as the image decoding device of the present invention).
  • the encoded processing of the captured data may be performed by the camera ex113, the streaming server ex103 that performs the data transmission processing, or may be performed in a shared manner.
  • the decryption processing of the distributed data may be performed by the client, the streaming server ex103, or may be performed in a shared manner.
  • 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.
  • encoding / decoding processes are generally performed by 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 media (CD-ROM, flexible disk, hard disk, etc.) that can be read by the computer ex111 and the like, 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 even a user who does not have special rights or facilities can realize personal broadcasting.
  • the digital broadcasting system ex200 also includes at least the moving image encoding device (image encoding device) or the moving image decoding according to each of the above embodiments. Any of the devices (image decoding devices) can be incorporated.
  • the broadcasting 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 the above embodiments (that is, data encoded by the image encoding apparatus 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 the image decoding apparatus 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, 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 shown 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. At this time, the moving picture decoding apparatus may be incorporated in the television instead of the set top box.
  • FIG. 21 is a diagram showing a television (receiver) ex300 that uses the moving picture decoding method and the moving picture coding method described in 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 / separating unit ex303.
  • the television ex300 decodes each of the audio data and the video data, or encodes the respective information.
  • the audio signal processing unit ex304 and the video signal processing unit ex305 (function as the image encoding device or the image decoding device of the present invention).
  • the television ex300 includes an interface unit ex317 including an operation input unit ex312 that receives an input of a user operation.
  • the television ex300 includes a control unit ex310 that controls each unit in an integrated manner, and a power supply circuit unit ex311 that supplies power to each unit.
  • the interface unit ex317 includes a bridge 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 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 the above embodiments.
  • the decoded audio signal and video signal are output from the output unit ex309 to the outside.
  • 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.
  • 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 writes it to a recording medium will be described.
  • the television ex300 receives a user operation from the remote controller ex220 or the like, and encodes an audio signal with the audio signal processing unit ex304 based on the control of the control unit ex310, and converts the video signal with the video signal processing unit ex305. 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 and ex321 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 that can perform 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 be shared with each other.
  • FIG. 22 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 disc 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, and 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 is composed of, 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, but it may be configured to perform higher-density recording using near-field light.
  • FIG. 23 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 the user data is the data recording area ex233, and the inner circumference area ex232 and the outer circumference area ex234 arranged on the inner circumference 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. 21, and the same may be applied to the computer ex111, the mobile phone ex114, and the like.
  • FIG. 24A 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 taking 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 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
  • an audio input unit ex356 such as a microphone for inputting audio
  • 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 portion ex364 is provided.
  • the cellular phone ex114 has a power supply circuit ex361, an operation input control unit ex362, and a video signal processing unit ex355 for a main control unit ex360 that comprehensively controls each part of the main body including the display unit ex358 and the operation key unit 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 mobile 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. This is subjected to spectrum spread processing by the modulation / demodulation unit ex352, digital-analog conversion processing and frequency conversion processing by the transmission / reception unit ex351, and then transmitted via the antenna ex350.
  • the mobile phone ex114 amplifies the received data received through the antenna ex350 in the voice call mode, performs frequency conversion processing and analog-digital conversion processing, performs spectrum despreading processing in the modulation / demodulation unit ex352, and performs voice signal processing unit After converting to an analog audio signal at 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 each of the above embodiments. Encode (that is, function as an image encoding apparatus 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, and the like, and sends the encoded audio data to the multiplexing / demultiplexing 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 through 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 shown in each of the above embodiments (that is, functions as the image decoding device of the present invention). For example, 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 output unit ex357 outputs the audio.
  • the terminal such as the mobile phone ex114 is referred to as a transmitting terminal having only an encoder and a receiving terminal having only a decoder.
  • a transmitting 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.
  • data in which character data or the like related to video is multiplexed 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.
  • 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. 25 is a diagram showing a structure of multiplexed data.
  • 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 video streams used for sub-pictures, and 0x1A00 to 0x1A1F are assigned to audio streams used for sub-audio mixed with the main audio.
  • FIG. 26 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. 27 shows in more detail how the video stream is stored in the PES packet sequence.
  • the first row in FIG. 27 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 into pictures, B pictures, and P pictures 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. 28 shows the format of TS packets that are finally written in 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. 28, 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. 29 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 as shown in FIG. 30, has one-to-one correspondence with the multiplexed data, and includes multiplexed data information, stream attribute information, and an entry map.
  • the multiplexed data information is composed of a system rate, a reproduction start time, and a reproduction end time as shown in FIG.
  • 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.
  • the 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. 32 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 each of the above embodiments.
  • 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. 33 shows the configuration of an 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 starts up to an operable state by supplying power to each unit when the power supply is in an on state.
  • 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 drive frequency control unit ex512, and the like.
  • the AV signal is input from the 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 has been 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. 34 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 conforms to 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 fifth embodiment may be used.
  • the identification information is not limited to that described in the fifth 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 look-up 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 this look-up table.
  • FIG. 35 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 a 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.
  • the drive frequency is set to be 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 LSI ex500 or the apparatus including the LSI ex500 is set high.
  • the video data conforms to the conventional standards such as MPEG-2, MPEG4-AVC, VC-1, etc.
  • 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, the driving of the CPU ex502 is stopped.
  • the CPU ex502 is temporarily stopped because there is enough 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 enough 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. 37A.
  • 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 unique to the present invention that do not correspond to the MPEG4-AVC standard, the dedicated decoding processing unit ex901 is used.
  • Configuration is conceivable.
  • a dedicated decoding processing unit ex901 is used for determination of the scan order, and other entropy coding, inverse quantization, deblocking, and the like.
  • -It is conceivable to share the decoding processing unit for any of the filtering, motion compensation, or all processing.
  • 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. 37B shows another example in which processing is partially shared.
  • a dedicated decoding processing unit ex1001 corresponding to processing content specific to the present invention
  • a dedicated decoding processing unit ex1002 corresponding to processing content specific to other conventional standards
  • a moving picture decoding method of the present invention A common decoding processing unit ex1003 corresponding to processing contents common to other conventional video decoding methods is used.
  • the dedicated decoding processing units ex1001 and ex1002 are not necessarily specialized in the processing content specific to the present invention or other conventional standards, and may be capable of executing other general-purpose processing.
  • the configuration of the present embodiment can be implemented by LSI ex500.
  • the circuit scale of the LSI is reduced, and the cost is reduced. It is possible to reduce.
  • the present invention has an effect that the encoding efficiency can be sufficiently improved, and can be used for various purposes such as storage, transmission, and communication.
  • the present invention can be used for high-resolution information display devices and imaging devices such as televisions, digital video recorders, car navigation systems, mobile phones, digital cameras, and digital video cameras, and has high utility value.

Abstract

L'invention porte sur un procédé de codage d'image apte à améliorer davantage le rendement de codage. Ce procédé de codage d'image est un procédé de codage d'image qui code des données d'image et par lequel des blocs de codage cibles pour les données d'image sont quantifiés (S10) à l'aide d'une matrice de quantification, un ordre de balayage pour des coefficients inclus dans les blocs de codage cibles quantifiés est déterminé (S20) sur la base de la matrice de quantification, et les blocs de codage cibles quantifiés sont codés (S30) dans l'ordre de balayage déterminé.
PCT/JP2011/007137 2011-01-12 2011-12-20 Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image et dispositif de décodage d'image WO2012095930A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161431922P 2011-01-12 2011-01-12
US61/431,922 2011-01-12

Publications (1)

Publication Number Publication Date
WO2012095930A1 true WO2012095930A1 (fr) 2012-07-19

Family

ID=46506857

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/007137 WO2012095930A1 (fr) 2011-01-12 2011-12-20 Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image et dispositif de décodage d'image

Country Status (1)

Country Link
WO (1) WO2012095930A1 (fr)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003219421A (ja) * 2002-01-23 2003-07-31 Sony Corp 画像情報符号化装置及び方法、画像情報復号装置及び方法、並びにプログラム
JP2006100993A (ja) * 2004-09-28 2006-04-13 Mitsubishi Electric Corp 画像符号化装置及び符号化パラメータ算出プログラム
WO2010146772A1 (fr) * 2009-06-19 2010-12-23 三菱電機株式会社 Dispositif de codage d'image, dispositif de décodage d'image, procédé de codage d'image et procédé de décodage d'image

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003219421A (ja) * 2002-01-23 2003-07-31 Sony Corp 画像情報符号化装置及び方法、画像情報復号装置及び方法、並びにプログラム
JP2006100993A (ja) * 2004-09-28 2006-04-13 Mitsubishi Electric Corp 画像符号化装置及び符号化パラメータ算出プログラム
WO2010146772A1 (fr) * 2009-06-19 2010-12-23 三菱電機株式会社 Dispositif de codage d'image, dispositif de décodage d'image, procédé de codage d'image et procédé de décodage d'image

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
XIANG LI ET AL.: "Predictive Adaptive Transform Coefficients Scan Ordering for Inter-Frame Coding", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, JCTVC-A020(RL), 1ST MEETING, April 2010 (2010-04-01), DRESDEN, DE, pages 1 - 4 *

Similar Documents

Publication Publication Date Title
JP6222589B2 (ja) 復号方法及び復号装置
WO2012042893A1 (fr) Procédé de décodage d'image, procédé de codage d'image, dispositif de décodage d'image, dispositif de codage d'image, programme et circuit intégré
JP5559918B2 (ja) 画像を復号する装置、システム及び画像視聴方法
CA2825767C (fr) 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
JP6327435B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置、及び、画像復号装置
JP2017060179A (ja) 復号方法、復号装置およびプログラム
WO2013114860A1 (fr) Procédés de codage et de décodage d'image, dispositifs de codage et de décodage d'image et dispositif de codage/décodage d'image
JP2018011332A (ja) 符号化復号方法
JP6004375B2 (ja) 画像符号化方法および画像復号化方法
JP6273580B2 (ja) 符号化復号装置
JP6489337B2 (ja) 算術復号方法および算術符号化方法
WO2012090504A1 (fr) Procédés et appareils pour coder et décoder un flux de données vidéo
EP4002850B1 (fr) Procédé et appareil de codage d'images
WO2015177966A1 (fr) Procédé d'encodage d'image et dispositif d'encodage d'image
JP5873029B2 (ja) 動画像符号化方法及び動画像復号化方法
WO2011132400A1 (fr) Procédé de codage d'image, et procédé de décodage d'image
WO2013014884A1 (fr) Procédé de codage d'image animée, dispositif de codage d'image animée, procédé de décodage d'image animée et dispositif de décodage d'image animée
WO2012096156A1 (fr) Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image et dispositif de décodage d'image
WO2012096157A1 (fr) Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image et dispositif de décodage d'image
WO2012042810A1 (fr) 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 système de traitement d'image
WO2012095930A1 (fr) Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image et dispositif de décodage d'image
WO2012077349A1 (fr) Procédé de codage d'image et procédé de décodage d'image
WO2012120876A1 (fr) Procédé de décodage d'image, procédé de codage d'image, décodeur d'image et codeur d'image
WO2013046616A1 (fr) Appareil de codage d'image, appareil de décodage d'image, procédé de codage d'image et procédé de décodage d'image
WO2012086166A1 (fr) Procédé de codage d'image et procédé de décodage d'image

Legal Events

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

Ref document number: 11855322

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11855322

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP