WO2007091367A1 - 画像復号装置および画像復号方法 - Google Patents

画像復号装置および画像復号方法 Download PDF

Info

Publication number
WO2007091367A1
WO2007091367A1 PCT/JP2006/324067 JP2006324067W WO2007091367A1 WO 2007091367 A1 WO2007091367 A1 WO 2007091367A1 JP 2006324067 W JP2006324067 W JP 2006324067W WO 2007091367 A1 WO2007091367 A1 WO 2007091367A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
error compensation
error
region
area
Prior art date
Application number
PCT/JP2006/324067
Other languages
English (en)
French (fr)
Inventor
Hiroto Tomita
Takashi Hashimoto
Original Assignee
Matsushita Electric Industrial Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co., Ltd. filed Critical Matsushita Electric Industrial Co., Ltd.
Priority to JP2007557749A priority Critical patent/JP5032344B2/ja
Priority to CN2006800517435A priority patent/CN101336550B/zh
Priority to US12/162,852 priority patent/US8189688B2/en
Priority to EP06823546A priority patent/EP1983758A4/en
Publication of WO2007091367A1 publication Critical patent/WO2007091367A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/527Global motion vector estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment

Definitions

  • the present invention relates to an image decoding apparatus and an image decoding method for appropriately performing error compensation when a decoding error occurs in decoding of compressed image data.
  • H.264 H.264/ MPEG4 AVC
  • JVT Joint Video Team
  • FIG. 13 is a block diagram of an image decoding apparatus standardized by MPEG4.
  • the variable length decoding unit 100 decodes a variable length encoded data stream according to a variable length encoding table.
  • the inverse ACDC prediction unit 101 performs ACDC prediction and outputs a quantized coefficient QF [x] [y].
  • the inverse quantization unit 102 outputs a DCT coefficient F [x] [y] by performing inverse quantization on the quantization coefficient QF [x] [y].
  • the inverse DCT unit 103 performs inverse DCT on the DCT coefficient F [x] [y].
  • FIG. 14 is a block diagram of an image decoding apparatus standardized by H.264.
  • the image decoding apparatus based on H.264 includes an in-loop filter 112.
  • the in-loop filter 112 performs deblocking filter processing on the block boundary of the coding unit for the decoded pixel value.
  • Deblock filter processing has the advantage of reducing block noise in the displayed image.
  • FIG. 15 is an exemplary diagram of pixels handled in the deblock filter processing. Filter processing is performed using pixels between the block boundaries in the figure. In the figure, each matrix represents a pixel. Each pixel is provided with a symbol for distinguishing the pixel.
  • Equation 1 the left side of (Equation 1) is a flag indicating whether or not the deblocking filter is executed.
  • variable “bS” on the right side is a parameter indicating the degree of smoothing in the deblocking filter process, and has an integer value of “0” and force value “4”.
  • variable “bS” is the value “0”
  • the in-loop filter 110 does not perform the deblocking filter process.
  • variable 3 is any of value “1”, value “2”, or value “3”
  • the deblocking filter process is performed according to (Equation 2).
  • the variable “bS” is the value “4”
  • the deblocking filter processing is performed according to (Equation 3).
  • Each of the variables “pO” and the like included in (Equation 1) to (Equation 3) is a pixel value of a pixel corresponding to each of “ P 0” and the like that specify the pixel in FIG.
  • the deblocking filter process is performed using pixels that exceed the unit area to be decoded. That is, a pixel in a unit area adjacent to a certain unit area is used.
  • a deblocking filter process is performed on pixels in a certain unit area.
  • variable length decoding unit 100 refers to the variable length coding table and detects a matching bit string, thereby decoding the data stream.
  • the bits included in the variable-length code key table in the data stream to be decoded are included. In some cases, it does not correspond to any of the first row pattern. In this case, it is determined as a decoding error. When such a decoding error occurs, the entire decoding target unit area (for example, slice) is handled as the area where the decoding error has occurred. When a decoding error occurs in this way, the variable length decoding is restarted again for the next unit area force, and the pixel value of the unit area where the decoding error has occurred is not used.
  • the deblocking filter process is performed by the in-loop filter 110, the pixel located at the boundary of the unit area where the decoding error has occurred is used for the deblocking filter process of the adjacent unit area. That is, in the deblocking filter processing of the adjacent unit area, the pixel in which the decoding error has occurred is used. For this reason, when a decoding error occurs only in the unit area where the decoding error occurs, the pixels in the adjacent unit area where the deblocking filter processing is performed using the pixels included in the unit area are also disturbed. Become. That is, the unit area adjacent to the unit area where a decoding error has occurred is affected by the decoding error.
  • FIG. 16 is an explanatory diagram showing the influence of the occurrence of a decoding error in the conventional technique.
  • pixels surrounded by a frame are deblock filters in adjacent unit areas. Used for processing. For this reason, even in a unit area where no decoding error occurs, it is adversely affected during the deblocking filter processing (circles in the figure and marked with ⁇ ). Even if the value of the pixel included in the unit area where the decoding error occurred is replaced by the value of another pixel (right side in the figure), the pixel marked with ⁇ is left as it is, The display image remains distorted.
  • Patent Document 1 Japanese Patent Laid-Open No. 10-23424
  • Patent Document 2 Japanese Patent Laid-Open No. 09-182068
  • the present invention provides an image decoding apparatus and an image decoding device that can perform error processing including not only a unit area where a decoding error has occurred but also pixels that are affected by the decoding error due to filtering processing. It aims to provide a method.
  • the image decoding apparatus includes an error detection unit that detects a decoding error for each unit area included in an image of one frame, and an error that determines an error compensation area for performing error compensation for the decoding error.
  • the error compensation region determination unit determines whether a unit region where a decoding error has occurred and a predetermined region adjacent to the unit region are in error The compensation area is determined.
  • the predetermined area is a target of in-loop filter processing using pixels included in a unit area where a decoding error occurs. This is a region including the pixel.
  • peripheral pixels that are affected by the pixel in the unit area where the decoding error has occurred are also subject to error compensation. Especially beyond the unit area, such as deblocking filter This is effective in image processing including filter processing using pixels.
  • the unit region constitutes either a slice or a macroblock defined by the H.263 standard or the H.264 standard Unit.
  • the unit area has either a slice or a macroblock as a constituent unit according to the reception state.
  • the decoding error includes at least one of an arithmetic decoding error and a variable length decoding error.
  • the image decoding apparatus further includes a determination unit that determines an execution state and a non-execution state of the in-loop filter processing, and the determination result of the determination unit
  • the error compensation region determination unit includes a region including a pixel to be subjected to the in-loop filter processing using the pixels included in the unit region where the decoding error occurs. Is determined as a predetermined area.
  • pixels included in the predetermined region are error-compensated only when affected by the pixels included in the unit region where the decoding error has occurred. As a result, the load required for error compensation can be efficiently reduced.
  • the error compensation region determining unit changes the predetermined region in accordance with the change of the filter region by the in-loop filter.
  • the error compensator corresponds to the value of the pixel included in the error compensation region that is temporally included in the past frame. Replace with the pixel value.
  • the error compensation unit replaces a value of a pixel included in the error compensation region with a value of a pixel in the vicinity of the error compensation region.
  • the error compensation unit replaces the value of the pixel included in the error compensation region with a fixed value.
  • the error compensator in addition to the first invention, includes a correspondence value included in the predetermined area with the value of the pixel included in the predetermined area in the error compensation area. Yes Replace with the value of the pixel before in-loop filtering.
  • the present invention not only a unit area (decoding unit) in a picture frame where a decoding error has occurred, but also pixels included in other unit areas affected by this decoding error. Also, error compensation is performed. As a result, even when a decoding error occurs in the image decoding in which the filtering process at the unit region boundary is performed, the image quality deterioration of the display image is suppressed.
  • the pixel values included in the error compensation area are replaced with the pixel values of the past frame, the pixel values of other positions in the same frame, or a fixed value. Therefore, image quality deterioration is suppressed.
  • FIG. 1 is a block diagram of an image decoding device in Embodiment 1 of the present invention.
  • FIG. 2 is a block diagram of an image decoding apparatus according to Embodiment 1 of the present invention.
  • FIG. 3 is an explanatory diagram for explaining a method for determining an error compensation region in the first embodiment of the present invention.
  • FIG. 4A is an explanatory diagram for explaining a method for determining an error compensation region in Embodiment 1 of the present invention
  • FIG. 4B is a diagram for explaining a method for determining an error compensation region in Embodiment 1 of the present invention.
  • Explanatory drawing (c) An explanatory diagram for explaining a method for determining an error compensation region in Embodiment 1 of the present invention
  • FIG. 5 is an explanatory diagram for explaining error compensation in the first embodiment of the present invention.
  • FIG. 6 is an explanatory diagram for explaining error compensation in the first embodiment of the present invention.
  • FIG. 7 is a block diagram of an image decoding apparatus according to Embodiment 2 of the present invention.
  • FIG. 8 is an explanatory diagram for explaining a filter processing unit according to the second embodiment of the present invention.
  • FIG. 9 is an explanatory diagram for explaining a determination method for each filter processing unit in the second embodiment of the present invention.
  • FIG. 10 (a) An explanatory diagram for explaining a determination method for each filter processing unit in Embodiment 2 of the present invention, and (b) for explaining a determination method for each filter processing unit in Embodiment 2 of the present invention. It is explanatory drawing to do.
  • FIG. 11 is a block diagram of a semiconductor integrated circuit in a third embodiment of the present invention.
  • FIG. 12 is a perspective view of a mobile terminal according to Embodiment 4 of the present invention.
  • FIG. 13 is a block diagram of an image decoding apparatus standardized by MPEG4.
  • FIG. 14 is a block diagram of an image decoding apparatus standardized by H.264.
  • FIG. 15 is a diagram illustrating pixels handled in the deblocking filter process.
  • FIG. 16 is an explanatory diagram showing the influence of the occurrence of a decoding error in the conventional technique. Explanation of symbols
  • FIG. 1 and 2 are block diagrams of the image decoding apparatus according to Embodiment 1 of the present invention.
  • the image decoding device 1 decodes the encoded data stream.
  • the data stream is input to the variable length decoding unit 2.
  • the variable length decoding unit 2 performs variable length decoding on the input data stream. Specifically, the variable length decoding unit 2 analyzes the header included in the input data stream, and further refers to the variable length encoding table to decode the data stream that has been variable length encoded. .
  • the variable length decoding unit 2 first detects a start code included in the data stream, and decodes various parameters from header information included following the start code. At this time, the variable length decoding unit 2 also detects a filter processing flag included in a slice defined by a standard such as H.264 or H.263. The variable length decoding unit 2 outputs this filter processing flag to the in-loop filter 7.
  • variable length decoding unit 2 detects whether the macroblock to be decoded is an intra macroblock or an inter macroblock, and outputs the detection result to the switching unit 6 as macroblock information. .
  • the variable length decoding unit 2 outputs the motion vector information to the motion compensation unit 9, and outputs the result of variable length decoding to the inverse quantization unit 3 as quantized data.
  • the variable length decoding unit 2 performs decoding with a unit area included in one frame image as one unit. For example, the unit area is based on “slice” or “macroblock” defined in H.263 or H.264.
  • the unit area is preferably based on this “slice” from the viewpoint of the decoding process.
  • the size of the slice is variable, and in some cases, one whole frame is defined as one slice.
  • the slice size increases, the number of pixels for error compensation increases, resulting in an increase in the amount of calculation.
  • the unit area may be based on “macroblock” instead of “slice”.
  • the unit area is preferably based on "slice". This is because the problem of an increase in the amount of computation related to error compensation is unlikely to occur.
  • the unit area is preferably based on “macroblock”. This is because a macroblock that does not include a decoding error can be used as it is, thereby reducing the amount of calculation related to error compensation.
  • the reception state is based on the reception level and reception waveform of radio waves received by wireless communication, based on the error rate of image stream data, and based on the frequency and amount of decoding errors. Defined.
  • the reception status may be determined from the frequency of occurrence of decoding errors, which may be determined from the power and voltage level of the received data stream.
  • whether the unit area is based on “slice” or “macroblock” may be selected depending on the size of the “slice” area to be handled.
  • the unit area may be a single slice or macroblock as a unit. You can use slices or multiple macroblocks as a unit.
  • the image decoding apparatus 1 may include an arithmetic decoding unit 13 instead of the variable length decoding unit 2 as shown in FIG. .
  • the inverse quantization unit 3 performs inverse quantization on the quantized data output from the variable length decoding unit 2, and outputs a DCT coefficient to the inverse DCT unit 4.
  • the inverse DCT unit 4 performs inverse DCT processing on the DCT coefficient output from the inverse quantization unit 3, and outputs a decoded pixel value or a difference pixel value.
  • the switching unit 6 selects and outputs the decoded pixel value output from the inverse DCT unit 4.
  • the switching unit 6 selects and outputs the decoded pixel value output from the pixel synthesis unit 5.
  • the motion compensation unit 9 generates the motion vector information and the reference image force prediction reference pixel value stored in the memory unit 8, and outputs the generated reference image force reference pixel value to the pixel synthesis unit 5.
  • the motion compensation unit 9 generates a prediction reference pixel value with 1Z4 pixel accuracy for the luminance component and 1Z8 pixel accuracy for the color difference component.
  • the luminance component is 1Z2 pixel accuracy
  • the color difference component is 1Z4 pixel accuracy.
  • the pixel synthesis unit 5 adds the difference pixel value output from the inverse DCT unit 4 and the prediction reference pixel value output from the motion compensation unit 9 to generate a decoded pixel value.
  • the decoded pixel value generated by the pixel synthesis unit 5 is selected by the switching unit 6 and output.
  • the in-loop filter 7 performs in-loop filter processing based on the filter processing flag! /.
  • an image decoding apparatus based on deblocking filter processing will be described as an example of in-loop filtering processing.
  • the in-loop filter 7 performs debuck filter processing using adjacent pixels based on (Equation 1) to (Equation 3).
  • deblocking filter processing pixels located beyond the unit area such as slices and macroblocks may be used.
  • a deblocking filter process for a pixel included in a unit area i is performed, and a unit area i adjacent thereto + Pixels included in 1 may be used.
  • the deblocking filter process is performed on the unit area which is a unit for decoding.
  • the in-loop filter 7 outputs the result of the deblock filter processing to the memory unit 8. Since the memory unit 8 stores the output result of the in-loop filter 7, it stores image data used as a display image. The image data of the past display image is also stored in time, and this is used as a reference image in the motion compensation unit 9.
  • variable length decoding unit 2 the inverse quantization unit 3, the inverse DCT unit 4, and the motion compensation unit 9 are elements constituting a decoding unit that decodes encoded image data.
  • the decoding unit performs basic decoding processing on the encoded image data.
  • the error detection unit 10 detects a decoding error that has occurred in the decoding by the variable length decoding unit 2.
  • the variable length decoding unit 2 refers to the variable length code table and performs decoding by detecting the data stream power of the same bit sequence as the bit sequence defined in the variable length encoding table (for each unit region). To decrypt). At this time, if a bit string corresponding to any bit string defined in the variable-length coding table cannot be detected from the data stream, the error detection unit 10 sets the unit area where the decoding error has occurred as the unit area to be decoded. Judge as an area.
  • variable length decoding unit 2 detects the start code of the next unit area and performs decoding again from the next unit area.
  • error compensation described later is performed.
  • the unit area in which the arithmetic decoding error has occurred is defined as the unit area in which the decoding error has occurred. To detect.
  • the error compensation area determining unit 11 receives the result from the error detecting unit 10 and determines an error compensation area that is a target for error compensation. The determination of the error compensation area will be described with reference to FIG.
  • FIG. 3 is an explanatory diagram for explaining determination of an error compensation region in the first embodiment of the present invention.
  • the left side in FIG. 3 shows the state of a pixel when a decoding error occurs.
  • the unit area i is a unit area in which a decoding error has occurred, and the unit area i ⁇ l is adjacent to the unit area i in which a decoding error has occurred, although no decoding error has occurred.
  • the deblocking filter processing in the unit area i ⁇ l uses pixels included in the unit area i in which a decoding error occurs.
  • pixels that are subjected to deblocking filter processing (performed by the in-loop filter 7) are performed using the pixels included in the unit area i among the pixels included in the unit area i-1 where no decoding error has occurred.
  • indicates a pixel.
  • pixels marked with ⁇ are subjected to a decoding error and are affected by the deblocking filter processing using the pixels included in the unit area i. For this reason, it is not sufficient that only the unit area i where a decoding error occurs is determined as the error compensation area.
  • FIG. 3 shows the state of determination of the error compensation area.
  • the error compensation area determination unit 11 determines the error compensation area by combining a predetermined area adjacent to the unit area in addition to the unit area where the decoding error has occurred.
  • a predetermined area adjacent to the unit area in addition to the unit area where the decoding error has occurred.
  • an area including pixels that are pixels adjacent to the unit area i and that use the pixels included in the unit area i for deblocking filter processing is determined as the predetermined area. Is done.
  • the error compensation region determination unit 11 determines a region that is a combination of the unit region i and a predetermined region that is a part of the unit region i-l as an error compensation region.
  • a region from the boundary with the unit region i to 3 pixels in the vertical direction is determined as the predetermined region. This is because in the deblocking filter processing, pixels included in the pixel force unit area i up to 3 pixels in the vertical direction are used. For this reason, the pixels included in the unit area i ⁇ l, and the pixels included in the unit area i are used in the deblocking filter process. When included in the prime range, the area up to the two pixels is determined as the predetermined area.
  • the error compensation region determination unit 11 changes the error compensation region according to the change of the target region for the deblocking filter process.
  • Figs. 4 (a) to 4 (d) are explanatory diagrams for explaining a method of determining an error compensation region in the first embodiment of the present invention.
  • the shaded area is an area determined as an error compensation area.
  • the unit region i is located at the top of the unit region frame in which a decoding error has occurred, and the pixel included in the unit region i is used in the deblocking filter processing. There are no other pixels. Therefore, in FIG. 4 (a), only the unit region i is determined as the force error compensation region.
  • the unit area i in which a decoding error has occurred is adjacent to the unit area i-1 in the horizontal direction in the frame.
  • the pixel included in the unit region i is used in the deblock filter processing. .
  • This certain area is determined as the predetermined area.
  • the unit area i and a predetermined area determined in the unit area i 1 are determined as error compensation areas.
  • the unit area i in which a decoding error has occurred is adjacent to the unit area i-1 in the vertical direction in the frame.
  • a part of pixels included in the unit area i-1 and in a certain area close to the vertical boundary with the unit area i is a pixel included in the unit area i in the deblocking filter process. Is used.
  • This constant area force is determined as a predetermined area.
  • the unit area i and a predetermined area of the unit area i 1 are determined as error compensation areas.
  • the unit area i where the decoding error occurs is the vertical direction in the frame. And horizontally adjacent to the unit area i-1.
  • the deblocking filter processing for pixels in a certain area that is a part of the pixels included in the unit area i-1 and is close to the boundary in the vertical and horizontal directions with the unit area i is included in the unit area i.
  • the pixel to be used is used. This certain area is determined as the predetermined area.
  • the unit area i and a predetermined area of the unit area i 1 are determined as error compensation areas.
  • the error compensation region determination unit 11 determines an error compensation region based on the target region for the deblocking filter process.
  • the error compensation unit 12 performs error compensation on the error compensation region.
  • FIGS. 5 and 6 are explanatory diagrams for explaining error compensation in the first embodiment of the present invention.
  • the error compensation unit 12 replaces the value of the pixel included in the error compensation region 20 with the value of the corresponding pixel included in the temporally past frame.
  • Frame 2 is a temporally past frame from frame 1.
  • Frame 1 includes an error compensation area 20.
  • the pixels included in the error compensation area 20 include a decoding error or an influence caused by the decoding error. Therefore, the error compensation unit 12 replaces the value of the pixel included in the error compensation region 20 with the value of the corresponding pixel included in the replacement region 21 of frame 2.
  • the pixel values included in the replacement region 21 and corresponding to each pixel included in the error compensation region 20 are the values of the pixels included in the error compensation region 20. Replaced.
  • the pixels included in the replacement area 21 have values at a time different from that of the frame 1. If the frame is very close in time, the difference is small, and there are few problems even if the replacement is performed. As a result, the display image of the replaced frame 1 is less deteriorated than the frame 1 that remains affected by the decoding error.
  • the replacement area 21 is an area that exists in the same position as the error compensation area 20 in the frame 2, and it is also preferable in terms of suppressing image quality degradation. However, even if the replacement area 21 existing at a position close to the position of the error compensation area 20 is used, an equivalent effect can be obtained depending on the image state.
  • the error compensation unit 12 replaces the value of the pixel included in the error compensation region with the value of the pixel included in the replacement region 22 near the error compensation region 20 in the same frame, as shown in FIG.
  • the replacement region 22 may be a region adjacent to the error compensation region 20 or a region far away from it, but is preferably a region adjacent to the error compensation region 20 from the viewpoint of suppressing image quality degradation. is there.
  • the error compensation unit 12 replaces the pixel value included in the error compensation region with a fixed value.
  • the fixed value may be the same value in the entire error compensation area or may be different depending on the position in the error compensation area.
  • the predetermined area included in the error compensation area that is the target of error compensation may be an area where no decoding error has occurred. Nevertheless, in the deblocking filter processing, pixels included in the unit area where a decoding error has occurred are used, and therefore this predetermined area requires error compensation. In other words, as long as the predetermined area remains the pixel before the deblock filter process, there is no adverse effect due to the decoding error.
  • the error compensation unit 12 is a corresponding pixel included in the predetermined region, and is a pixel before deblocking filter processing. Replace with the value of. As described above, the pixel other than the predetermined region included in the error compensation region is replaced with the pixel value of the previous frame or the fixed value.
  • the pixel value before the deblocking filter process the pixel value stored in the memory and before the deblocking filter process is executed is used.
  • the value of the pixel before the deblocking filter processing is calculated by performing the inverse operation and the filtering operation on the pixel value that has been subjected to the deblocking filter processing. Since the inverse operation of the deblocking filter process is performed, it is not necessary to store the pixel value before the deblocking filter process!
  • the predetermined region can be returned to the state before the deblocking filter processing, so that the influence due to the decoding error is eliminated.
  • the influence due to the decoding error is reduced by the replacement. As a result, image quality degradation is suppressed with a high effect.
  • the unit area is a slice defined by the H.263 or H.264 standard in terms of ease of processing.
  • the error compensation region determination unit n determines a region combining a slice in which a decoding error has occurred and a slice including a pixel on which deblocking filter processing is performed using pixels included in the slice in which the decoding error has occurred.
  • the error compensation area may be determined. In this case, the processing burden on the error compensation region determination unit 11 is reduced, and the effect of suppressing image quality deterioration is sufficiently maintained.
  • the filtering process in the in-loop filter 7 has been described by taking the case of the deblocking filter process as an example. This filtering process is not limited to the deblocking filter process, but a filtering process that uses pixels in different unit areas. Anything is okay.
  • the image decoding device 1 of the second embodiment switches the error compensation region based on whether or not the filter processing in the in-loop filter 7 is executed.
  • FIG. 7 is a block diagram of an image decoding apparatus according to Embodiment 2 of the present invention.
  • the image decoding device 1 shown in FIG. 7 newly includes a determination unit 30.
  • the determination unit 30 uses pixels included in different unit areas in the in-loop filter 7. Whether or not to execute filtering is determined. The determination unit 30 determines the execution or non-execution of the filter processing using the filter processing flag included in the header analyzed by the variable length decoding unit 2 (or the arithmetic decoding unit 13). The filter processing flag includes information on execution and non-execution of filter processing. The determination unit 30 outputs the determination result to the error compensation region determination unit 11.
  • the error compensation region determination unit 11 determines both the unit region in which the decoding error has occurred and the predetermined region as error compensation regions.
  • the predetermined area is a pixel existing in an area close to the unit area where the decoding error occurs, and the pixels in the unit area where the decoding error occurs are determined. This is a region including pixels used for the filtering process.
  • the predetermined area may be an area including only the pixel used in the filter process or a pixel included in the unit area where the decoding error has occurred. Even a certain area including pixels.
  • the error compensation region determination unit 11 determines only a unit region where a decoding error has occurred as an error compensation region. This is because the filtering process is not performed, and therefore the filtering process using the pixels included in the adjacent unit areas is not performed. In other words, at the boundary of the unit area, there is no pixel that is affected by the adjacent unit area where the decoding error occurred. In this case, since only the unit area where the decoding error has occurred needs to be error compensated, the error compensation area determining unit 11 determines only the unit area where the decoding error has occurred as the error compensation range.
  • FIG. 8 is an explanatory diagram for explaining a filter processing unit according to the second embodiment of the present invention.
  • a circle represents a pixel, and a unit area i and a unit area i ⁇ l are included in the frame with a boundary between them.
  • Eight pixels surrounded by a bold rectangle are an example of the filter processing unit.
  • the horizontal direction of the force is 8 pixels in the vertical direction of the frame, and the number of pixels is other than 8 pixels.
  • the determination unit 30 determines whether or not to execute filter processing for each filter processing unit. When the determination for all the filter processing units existing at the boundary between the unit region i 1 and the unit region i is completed, the result is notified to the error compensation region determination unit 11.
  • the error compensation region determination unit n determines only the unit region where the decoding error has occurred as the error compensation region. To do. That is, the predetermined area is not added to the error compensation area.
  • the error compensation area determination unit 11 performs error compensation together with the predetermined area and the unit area where a decoding error occurs. Determine as a region.
  • the predetermined area is a pixel included in an area close to the unit area where the decoding error has occurred, and the pixels in the unit area where the decoding error has occurred are filtered. This is a region including pixels used in processing.
  • the error compensation region determined by the error compensation region determination unit 11 is error-compensated by the error compensation unit 12. As described in the first embodiment, replacement with a pixel value in a past frame, replacement with a pixel value at another position in the same frame, or the like.
  • the filter processing flag indicates execution or non-execution of the filter processing for the entire frame (or the entire unit area). For this reason, the details of execution and non-execution of filter processing near the boundary of the unit area affected by the decoding error are unknown.
  • the determination unit 30 makes a determination for each filter processing unit based on the actual filter processing in the in-loop filter 7, so that a unit region is obtained regardless of the result of the filter processing flag. Execution / non-execution of the filter processing at the boundary can be reliably determined.
  • the error compensation region determination unit n selects only the unit region where the decoding error has occurred. The error compensation area can be determined.
  • the error compensation region determination unit 11 can determine a small region as an error compensation region. Since error compensation (replacement of pixel values, etc.) for a region that does not require error compensation becomes unnecessary, the load required for error compensation is reduced. Unnecessary error correction Unnecessary image quality degradation due to compensation is also suppressed.
  • FIG. 9 is an explanatory diagram illustrating a determination method for each filter processing unit according to the second embodiment of the present invention.
  • a slice is used as a unit area, and a decoding error has occurred in slice i.
  • the error compensation region determination unit 11 uses the pixels included in the slice i in which the decoding error has occurred in the slice ⁇ 1 used in the filter processing. The region including the pixels included in is also added to the error compensation region.
  • the determination unit 30 may determine the variable “bS value” in addition to the execution and non-execution of the filter processing for each filter processing unit. By determining the bS value, the predetermined region changes in accordance with the change of the filter region in the filter processing performed by the in-loop filter 7, and as a result, the optimum error compensation region is determined.
  • FIGS. 10 (a) and 10 (b) are explanatory diagrams for explaining a determination method for each filter processing unit in the second embodiment of the present invention.
  • the range of filter processing varies depending on the bS value.
  • the bS value determines how many pixels of the slice boundary force are subject to force filtering.
  • the error compensation region determination unit 11 can determine the error compensation region more optimally. This is because the filter region determined by the bS value is added to the error compensation region as a predetermined region.
  • the maximum bS value is the value “3”.
  • the area from the slice boundary to one pixel is filtered as shown in Fig. 10 (a). It is a target of. Therefore, the predetermined area is an area corresponding to one pixel from the slice boundary of slice i 1 (boundary with slice i), and the error compensation area is an area obtained by adding the area of slice i to this predetermined area.
  • the maximum bS value is the value “4”. Therefore, as shown in Fig. 10 (b), there is a filter processing unit in which the area from the slice boundary to 3 pixels is the target of the filter processing. Therefore, the predetermined area is an area corresponding to three pixels from the slice boundary of slice i-1 (the boundary with slice i), and the error compensation area is an area obtained by adding the area of slice i to this predetermined area.
  • the error compensation unit 12 replaces the pixels included in the determined error compensation area with the values of the pixels in the past frame, the values of pixels in other positions in the same frame, or a fixed value. do. Error compensation suppresses image quality degradation caused by decoding errors.
  • the optimum error compensation region can be determined based on the bS value.
  • the load required for error compensation in the error compensation unit 12 can be reduced, and the processing speed can be improved.
  • the pixels included in the error compensation area include those that need to be replaced with the values of the pixels included in the past frame or the values of pixels in other positions included in the same frame. Therefore, the effect of suppressing image quality deterioration is further enhanced.
  • each element including the error detection unit 10, the error compensation region determination unit 11, the error compensation unit 12, and the determination unit 30 may be configured by hardware or software. It may be configured by both hardware and software.
  • an image decoding method in which the whole or a part of the image decoding device 1 is configured by software may be used.
  • FIG. 11 is a block diagram of a semiconductor integrated circuit according to the third embodiment of the present invention.
  • the semiconductor integrated circuit 40 is generally composed of MOS transistors, and a specific logic circuit is realized by the connection configuration of the MOS transistors.
  • a very complex logic circuit for example, an image decoding device according to the present invention
  • It can be realized with V or several semiconductor integrated circuits.
  • the semiconductor integrated circuit 40 includes the image decoding device 1 described in the first and second embodiments.
  • the semiconductor integrated circuit 40 includes an image encoding device 41, an audio processing unit 42, as necessary.
  • the display control unit 43 and the ROM 44 may be provided.
  • the semiconductor integrated circuit 40 may be connected to the external memory 45 and the processor 46.
  • the image decoding device 1 included in the semiconductor integrated circuit 40 is included in a unit area where a decoding error occurs and a unit area where the decoding error occurs.
  • a predetermined area including a pixel used in the filter processing is determined as an error compensation area, and error compensation is performed.
  • the semiconductor integrated circuit 40 can suppress deterioration in the image quality of the display image even when a decoding error occurs.
  • the image decoding device 1 is realized by the semiconductor integrated circuit 40, whereby downsizing, low power consumption, and the like are realized.
  • the memory required for decoding may be built in the semiconductor integrated circuit 40 or may be externally attached.
  • FIG. 12 is a perspective view of the mobile terminal according to Embodiment 4 of the present invention.
  • the mobile terminal 50 is an electronic device such as a mobile phone, a PDA, a mail terminal, or a notebook computer.
  • the mobile terminal 50 includes the image decoding device 1 described in the first and second embodiments.
  • the portable terminal 50 includes a display unit 51 and a key input unit 52, and can make a call or mail communication.
  • the mobile terminal 50 displays an image on the display unit 51. For example, an image taken by a digital camera provided in the portable terminal 50 is displayed, or a moving image or a still image distributed via the Internet is displayed.
  • the mobile terminal 50 may receive terrestrial digital television broadcasting. In terrestrial digital television broadcasting, the H.264 standard It is necessary to decode the encoded image data.
  • the image decoding device 1 provided in the mobile terminal 50 can suppress deterioration in the image quality of the display image when a decoding error occurs.
  • the mobile terminal 50 often receives image distribution while moving. For example, in receiving terrestrial digital television broadcasting, since the mobile terminal 50 receives while moving, a decoding error is likely to occur. However, the image decoding device 1 provided in the mobile terminal 50 performs error compensation including the unit area where the decoding error occurs and other unit areas affected by this decoding error. , Image quality deterioration can be effectively suppressed.
  • the image decoding device according to the present invention is incorporated in a mobile terminal, a high effect is obtained in suppressing image quality deterioration.
  • the present invention can be suitably used in the field of image decoding including filter processing such as deblock filter processing, for example.

Abstract

 1フレームの画像中に含まれる単位領域毎の復号エラーを検出するエラー検出部(10)と、復号エラーに対するエラー補償を行うエラー補償領域を決定するエラー補償領域決定部(11)と、エラー補償領域に対してエラー補償を行うエラー補償部(12)を備え、エラー補償領域決定部(11)は、復号エラーの発生している単位領域と、単位領域に隣接する所定領域を、エラー補償領域として決定する画像復号装置(1)である。この画像復号装置(1)により、復号後の表示画像の画質劣化が抑制される。

Description

画像復号装置および画像復号方法
技術分野
[0001] 本発明は、圧縮された画像データの復号において復号エラーが発生した場合に、 適切にエラー補償を行う画像復号装置および画像復号方法に関するものである。 背景技術
[0002] 動画像の符号化方式として、 MPEG2や MPEG4が用いられて!/、る。現在では、 M PEG4よりさらに圧縮効率を向上させた「H. 264/MPEG4 AVC」(以下、「H. 26 4」という)が、 Joint Video Team (以下、「JVT」という)により規格化されている。
[0003] 図 13は、 MPEG4により規格ィ匕されている画像復号装置のブロック図である。
[0004] 可変長復号部 100は、可変長符号化されたデータストリームを、可変長符号化テー ブルに従って復号する。逆 ACDC予測部 101は、 ACDC予測を行い、量子化係数 QF[x] [y]を出力する。逆量子化部 102は、量子化係数 QF[x] [y]に対して逆量子 化を行うことで DCT係数 F[x] [y]を出力する。逆 DCT部 103は、 DCT係数 F[x] [y ]に対して逆 DCTを行う。イントラマクロブロック符号ィ匕により符号ィ匕されたマクロプロ ック(以下、「イントラマクロブロック」と言う)の復号時には、デコード画像の画素値が 得られ、インターマクロブロック符号ィ匕により符号ィ匕されたマクロブロック(以下、「イン ターマクロブロック」という)の復号時には、前画像との差分画素値が得られる。動き補 償部 104は、差分画素値を用いて、データ画像の画素を得る。
[0005] 図 14は、 H. 264により規格ィ匕されている画像復号装置のブロック図である。
[0006] H. 264に基づく画像復号装置は、 MPEG4に基づく画像復号装置と異なり、ルー プ内フィルタ 112を備えている。ループ内フィルタ 112は、復号後の画素値に対して 符号化単位のブロック境界に対して、デブロックフィルタ処理を行う。デブロックフィル タ処理により、表示される画像のブロックノイズが低減するメリットがある。
[0007] H. 264におけるデブロックフィルタ処理について説明する。図 15は、デブロックフ ィルタ処理において取り扱われる画素の例示図である。図中のブロック境界を挟んだ 画素を用いて、フィルタ処理が行われる。図中において、マトリクスの各々は画素を示 しており、画素のそれぞれに画素を区別する符号が付されている。
[0008] まず、デブロックフィルタ処理の実行、非実行は、(数 1)により判断される。
[0009] [数 1] f i IterSamplesFlag
= (bS! =0&&Abs (pO-qO)く &&Abs (p1-p0)く β &&Abs (q1-q0)く β )
[0010] ここで、(数 1)の左辺は、デブロックフィルタの実行の有無を示すフラグであり、 H.
264において、規定されている。右辺の変数「bS」は、デブロックフィルタ処理におけ る平滑化の度合 、を示すパラメータであり、値「0」力 値「4」の整数の値を持つ。
[0011] 変数「bS」が、値「0」の場合には、ループ内フィルタ 110は、デブロックフィルタ処理 を行わない。変数 3」が値「1」、値「2」、値「3」の何れかの場合には、(数 2)に従い デブロックフィルタ処理が行われる。変数「bS」が値「4」の場合には、(数 3)に従い、 デブロックフィルタ処理が行われる。
[0012] [数 2] pO' =Cl ip1 (pO+ )
=C I i 3 (-tc, tc, ((( (qO-pO) «2) + (p1-q1) +4) »3) )
p1'=p1+Cl ip3 (-tcO, tcO, (p2+ ( (pO+qO) »1)-p1«1))»1)
[0013] [数 3] O' =(p2+2*p1+2*p0+2*q0+q1+4) »3
p1'=(p2+p1+p0+q0+2) »2
p2' = (2*p3+3*p2+p1+p0+q0+4) »3
[0014] (数 1)から (数 3)に含まれる変数「pO」などのそれぞれは、図 15中の画素を特定す る「P0」などのそれぞれに対応する画素の画素値である。
[0015] 以上のように、復号対象となる単位領域を越えた画素を用いて、デブロックフィルタ 処理が行われる。すなわち、ある単位領域と隣接する単位領域の画素が用いられて
、ある単位領域の画素のデブロックフィルタ処理が行われる。
[0016] ここで、 H.264(及び MPEG4)においては、可変長復号部 100が、可変長符号化 テーブルを参照し、一致するビット列を検出することで、データストリームを復号する。
[0017] このとき、復号対象のデータストリーム中に、可変長符号ィ匕テーブルに含まれるビッ ト列パターンのいずれにも相当しない場合がある。この場合は、復号エラーと判断さ れる。このような復号エラーが発生した場合には、復号対象の単位領域 (例えばスラ イスなど)の全てが復号エラーの発生した領域として取り扱われる。このように復号ェ ラーが発生した場合には、次の単位領域力 改めて可変長復号が再開され、復号ェ ラーの発生した単位領域の画素値は使用されない。
[0018] ここで、復号エラーの発生して 、る単位領域の画素値が不使用となるので、不使用 となった単位領域を放置すると表示画像が乱れることになる。
[0019] この表示画像の乱れを防止するため、復号エラーの発生した単位領域に含まれる 画素の値力 時間的に過去のフレームに含まれる画素の値で置き換えられる技術が 提案されている(例えば、特許文献 1参照)。あるいは、復号エラーの発生した単位領 域に含まれる画素の値が、同一フレーム内の他の単位領域に含まれる画素の値で 置き換えられる技術が提案されて!、る (例えば特許文献 2参照)。
[0020] し力しながら、従来の技術では、復号エラーの発生した単位領域に含まれる画素の 値のみが、他の画素の値により置き換えられるだけである。ここで、ループ内フィルタ 110によりデブロックフィルタ処理が行われるため、復号エラーの発生した単位領域 の境界に位置する画素は、隣接する単位領域のデブロックフィルタ処理に用いられ る。すなわち、隣接する単位領域のデブロックフィルタ処理において、復号エラーの 発生した画素が用いられることになる。このため、復号エラーの発生している単位領 域だけでなぐ復号エラーの発生して 、る単位領域に含まれる画素を用いてデブロッ クフィルタ処理が施される隣接する単位領域の画素も乱れることになる。つまり、復号 エラーが発生している単位領域に隣接する単位領域は、復号エラーに起因する影響 を受ける。
[0021] 復号エラーの発生している単位領域に含まれる画素の値は、他の画素の値により 置き換えられるが、復号エラーに起因する影響を受けている隣接する画素はそのま まである。このため、従来技術は、この隣接する画素の画質に悪影響が残ったままで あり、表示画像が劣化する問題を有していた。
[0022] 例えば、図 16に示されるように、復号エラーが発生している単位領域に隣接する単 位領域の画素は、復号エラーに起因する影響を残したままである。 [0023] 図 16は、従来の技術における復号エラーの発生による影響を示す説明図である。
[0024] 復号エラーの発生した単位領域に含まれる画素(図中の円であって、 X印が付され ているもの)において、枠で囲まれた画素が、隣接する単位領域におけるデブロック フィルタ処理に用いられる。このため、復号エラー発生のない単位領域においても、 デブロックフィルタ処理時に悪影響を受けてしまう(図中の円であって、△印が付され ているもの)。復号エラーの発生した単位領域に含まれる画素の値力 他の画素の値 により置き換えられた場合 (図中の右側)であつても、 Δ印の付されて 、る画素はその ままであり、表示画像に乱れが残る。
特許文献 1:特開平 10— 23424号公報
特許文献 2:特開平 09 - 182068号公報
発明の開示
発明が解決しょうとする課題
[0025] そこで本発明は、復号エラーの発生した単位領域に加えて、フィルタ処理によりこ の復号エラーに起因する影響を受ける画素も含めたエラー処理を行うことのできる画 像復号装置および画像復号方法を提供することを目的とする。
課題を解決するための手段
[0026] 第 1の発明に係る画像復号装置は、 1フレームの画像中に含まれる単位領域毎の 復号エラーを検出するエラー検出部と、復号エラーに対するエラー補償を行うエラー 補償領域を決定するエラー補償領域決定部と、エラー補償領域に対してエラー補償 を行うエラー補償部を備え、エラー補償領域決定部は、復号エラーの発生している 単位領域と、単位領域に隣接する所定領域を、エラー補償領域として決定する。
[0027] この構成により、復号エラーの発生している単位領域のみならず、復号エラーの発 生して 、る単位領域の影響を受ける周辺も含めて、エラー補償が行われる。
[0028] 第 2の発明に係る画像復号装置では、第 1の発明に加えて、所定領域は、復号エラ 一の発生している単位領域に含まれる画素を用いたループ内フィルタ処理の対象と なる画素を含む領域である。
[0029] この構成により、復号エラーの生じた単位領域の画素による影響を受ける周辺の画 素も、エラー補償の対象となる。特に、デブロックフィルタのような、単位領域を越えた 画素を用いたフィルタ処理を含む画像処理では、有効である。
[0030] 第 3の発明に係る画像復号装置では、第 1の発明に加えて、単位領域は、 H. 263 規格、もしくは H. 264規格で規定されているスライスおよびマクロブロックのいずれ かを構成単位とする。
[0031] 第 4の発明に係る画像復号装置では、第 3の発明に加えて、単位領域は、受信状 態に応じて、スライスおよびマクロブロックのいずれかを、構成単位とする。
[0032] これら構成により、復号エラーの発生頻度にあわせて、エラー補償に必要となる演 算量の調整ができる。
[0033] 第 5の発明に係る画像復号装置では、第 1の発明に加えて、復号エラーは、算術復 号エラー及び可変長復号エラーの少なくとも一方を含む。
[0034] この構成により、復号エラーが容易に検出できる。
[0035] 第 6の発明に係る画像復号装置では、第 2の発明に加えて、ループ内フィルタ処理 の実行状態と非実行状態を判定する判定部を更に備え、判定部の判定結果にぉ ヽ て、ループ内フィルタ処理が実行状態である場合に、エラー補償領域決定部は、復 号エラーの発生している単位領域に含まれる画素を用いたループ内フィルタ処理の 対象となる画素を含む領域を、所定領域として決定する。
[0036] この構成により、所定領域に含まれる画素は、復号エラーの発生した単位領域に含 まれる画素の影響を受ける場合だけ、エラー補償される。この結果、エラー補償に要 する負荷が、効率よく低減できる。
[0037] 第 7の発明に係る画像復号装置では、第 2の発明に加えて、エラー補償領域決定 部は、ループ内フィルタによるフィルタ領域の変化に合わせて、所定領域を変化させ る。
[0038] この構成により、効率よぐエラー補償が行われる。
[0039] 第 8の発明に係る画像復号装置では、第 1の発明に加えて、エラー補償部は、エラ 一補償領域に含まれる画素の値を、時間的に過去のフレームに含まれる対応する画 素の値で置き換える。
[0040] この構成により、容易にエラー補償が行われ、加えて表示画像の乱れも非常に小さ くでさる。 [0041] 第 9の発明に係る画像復号装置では、第 1の発明に加えて、エラー補償部は、エラ 一補償領域に含まれる画素の値を、エラー補償領域の近傍の画素の値で置き換え る。
[0042] この構成により、簡易にエラー補償が行われる。また、エラー補償のために必要とな るメモリ容量も少なくてすむ。
[0043] 第 10の発明に係る画像復号装置では、第 1の発明に加えて、エラー補償部は、ェ ラー補償領域に含まれる画素の値を、固定値で置き換える。
[0044] この構成により、簡易な構成で、エラー補償が行われる。
[0045] 第 11の発明に係る画像復号装置では、第 1の発明に加えて、エラー補償部は、ェ ラー補償領域の内、所定領域に含まれる画素の値を、所定領域に含まれる対応する 画素であってループ内フィルタ処理前の画素の値で置き換える。
[0046] この構成により、復号エラーの発生している画素を用いたループ内フィルタ処理に よる悪影響を排除できる。
発明の効果
[0047] 本発明によれば、画像フレーム中であって復号エラーの発生した単位領域 (復号を 行う単位)のみならず、この復号エラーに起因する影響を受ける他の単位領域に含ま れる画素についても、エラー補償が行われる。この結果、単位領域境界でのフィルタ 処理が行われる画像復号において復号エラーが生じる場合であっても、表示画像の 画質劣化が抑制される。
[0048] また、フィルタ処理の実行の判定に基づ ヽてエラー補償を行うエラー補償領域が決 定されることで、効率的なエラー補償ができる。また、エラー補償の不要な画素には エラー補償が行われないので、表示画像の画質劣化が効果的に抑制される。
[0049] また、エラー補償として、エラー補償領域に含まれる画素の値が、過去のフレーム の画素の値、同一フレームの他の位置の画素の値あるいは固定値で置き換えられる ことで、簡便且つ効果的に画質劣化が抑制される。
図面の簡単な説明
[0050] [図 1]本発明の実施の形態 1における画像復号装置のブロック図である。
[図 2]本発明の実施の形態 1における画像復号装置のブロック図である。 [図 3]本発明の実施の形態 1におけるエラー補償領域の決定方法を説明する説明図 である。
[図 4] (a)本発明の実施の形態 1における、エラー補償領域の決定方法を説明する説 明図、(b)本発明の実施の形態 1における、エラー補償領域の決定方法を説明する 説明図、(c)本発明の実施の形態 1における、エラー補償領域の決定方法を説明す る説明図、(d)本発明の実施の形態 1における、エラー補償領域の決定方法を説明 する説明図である。
[図 5]本発明の実施の形態 1におけるエラー補償を説明する説明図である。
[図 6]本発明の実施の形態 1におけるエラー補償を説明する説明図である。
[図 7]本発明の実施の形態 2における画像復号装置のブロック図である。
[図 8]本発明の実施の形態 2におけるフィルタ処理単位を説明する説明図である。
[図 9]本発明の実施の形態 2におけるフィルタ処理単位毎の判定方法を説明する説 明図である。
[図 10] (a)本発明の実施の形態 2におけるフィルタ処理単位毎の判定方法を説明す る説明図、(b)本発明の実施の形態 2におけるフィルタ処理単位毎の判定方法を説 明する説明図である。
[図 11]本発明の実施の形態 3における半導体集積回路のブロック図である。
[図 12]本発明の実施の形態 4における携帯端末の斜視図である。
[図 13]MPEG4により規格ィ匕されている画像復号装置のブロック図である。
[図 14]H. 264により規格ィ匕されている画像復号装置のブロック図である。
[図 15]デブロックフィルタ処理において取り扱われる画素の例示図である。
[図 16]従来の技術における復号エラーの発生による影響を示す説明図である。 符号の説明
1 画像復号装置
2 可変長復号部
3 逆量子化部
4 逆 DCT部
5 画素合成部 6 切り替え部
7 ノレープ内フイノレタ
8 メモリ部
9 動き補償部
10 エラー検出部
11 エラー補償領域決定部
12 エラー補償部
13 算術復号部
発明を実施するための最良の形態
[0052] 以下、図面を参照しながら、本発明の実施の形態を説明する。
[0053] (実施の形態 1)
図 1、図 2は、本発明の実施の形態 1における画像復号装置のブロック図である。
[0054] (全体構成)
まず、画像復号装置 1の構成について説明する。
[0055] 画像復号装置 1は、符号化されたデータストリームを復号する。
[0056] データストリームは、可変長復号部 2に入力する。可変長復号部 2は、入力したデー タストリームを可変長復号する。具体的には、可変長復号部 2は、入力したデータスト リームに含まれるヘッダを解析し、更に可変長符号化テーブルを参照して、可変長符 号化されて 、るデータストリームを復号する。
[0057] 可変長復号部 2は、まずデータストリームに含まれるスタートコードを検出し、スター トコードに続いて含まれるヘッダ情報から、種々のパラメータを復号する。このとき、可 変長復号部 2は、 H. 264や H. 263などの規格で規定されているスライスに含まれる フィルタ処理フラグも検出する。可変長復号部 2は、このフィルタ処理フラグを、ルー プ内フィルタ 7に出力する。
[0058] 同様に、可変長復号部 2は、復号対象のマクロブロックがイントラマクロブロックであ る力、インターマクロブロックであるかを検出し、検出結果をマクロブロック情報として 切り替え部 6に出力する。可変長復号部 2は、動きベクトル情報を動き補償部 9に出 力し、可変長復号した結果を量子化データとして逆量子化部 3に出力する。 [0059] ここで、可変長復号部 2は、 1フレームの画像に含まれる、ある単位領域を一つの単 位として復号を行う。例えば、単位領域は、 H. 263や H. 264で規定されている「スラ イス」や「マクロブロック」を基準とする。
[0060] ここで、 H. 263や H. 264における復号では、「スライス」が復号の単位とされている
。このため、単位領域は、この「スライス」を基準とするのが、復号処理との関係からも 好適である。
[0061] しかしながら、スライスの大きさは可変であり、場合によっては 1フレーム全体が 1ス ライスとして定義されることがある。このようにスライスの大きさが大きくなると、エラー補 償を行う画素数が多くなり、演算量の増大をもたらす。エラー補償に要する演算量が 増大することで、表示速度に追いつけなくなり表示が停止する事態も生じる。このよう に、エラー補償の演算量の増大による問題点が生じる場合には、単位領域は、「スラ イス」ではなく「マクロブロック」を基準としても良 、。
[0062] 例えば、受信状態が良い場合には、エラー補償の発生頻度は少ないので、単位領 域は、「スライス」を基準とするのが好適である。これは、エラー補償にかかわる演算 量の増大の問題が発生しにくいからである。一方、受信状態が悪い場合には、エラ 一補償の発生頻度が高くなるので、単位領域は、「マクロブロック」を基準とすることが 好適である。これは、復号エラーを含まないマクロブロックをそのまま利用できるので 、エラー補償にかかわる演算量を抑えることができるからである。
[0063] ここで、受信状態は、無線通信で受信された電波の受信レベルや受信波形に基づ いたり、画像のストリームデータの誤り率に基づいたり、復号エラーの発生頻度や発 生量に基づいたりして定義される。
[0064] 受信状態を判定するブロックにより、単位領域の基準が、「スライス」である力 「マクロ ブロック」であるかが選択される。ここで、受信状態は、受信したデータストリームの電 力や電圧レベルから判断されても良ぐ復号エラーの発生頻度から判断されても良い
[0065] あるいは、取り扱う「スライス」領域の大きさにより、単位領域が「スライス」を基準とす る力、「マクロブロック」を基準とするかが選択されても良 、。
[0066] なお、単位領域は、単一のスライスやマクロブロックを単位としても良いが、複数の スライスや複数のマクロブロックを単位としてもよ 、。
[0067] 図 1では、画像復号装置 1は、可変長復号部 2を備えている力 図 2にしめされるよ うに、可変長復号部 2の代わりに、算術復号部 13を備えてもよい。
[0068] 逆量子化部 3は、可変長復号部 2から出力された量子化データに対して逆量子化 を行い、 DCT係数を、逆 DCT部 4に出力する。
[0069] 逆 DCT部 4は、逆量子化部 3より出力された DCT係数に対して、逆 DCT処理を行 い、復号画素値、もしくは差分画素値を出力する。
[0070] マクロブロック情報より、復号対象のマクロブロックがイントラマクロブロックの場合に は、切り替え部 6は、逆 DCT部 4から出力された復号画素値を選択して出力する。
[0071] マクロブロック情報より、復号対象のマクロブロックがインターマクロブロックの場合 には、切り替え部 6は、画素合成部 5より出力された復号画素値を選択して出力する
[0072] 動き補償部 9は、動きベクトル情報とメモリ部 8に記憶されている参照画像力 予測 参照画素値を生成して、画素合成部 5に出力する。動き補償部 9は、 H. 264におい ては、輝度成分については 1Z4画素精度、色差成分については 1Z8画素精度で、 予測参照画素値を生成する。なお、 H. 263においては、輝度成分は、 1Z2画素精 度であり色差成分は、 1Z4画素精度である。
[0073] 画素合成部 5は、逆 DCT部 4より出力された差分画素値と、動き補償部 9より出力さ れた予測参照画素値を加算することで、復号画素値を生成する。画素合成部 5で生 成された復号画素値は、インターマクロブロックの場合には、切り替え部 6で選択され て出力される。
[0074] ループ内フィルタ 7は、フィルタ処理フラグに基づ!/、て、ループ内フィルタ処理を行 う。実施の形態 1では、ループ内フィルタ処理の一例としてデブロックフィルタ処理に 基づ ヽた画像復号装置を説明する。
[0075] ループ内フィルタ 7は、(数 1)〜(数 3)に基づいて、隣接する画素を用いて、デブ口 ックフィルタ処理を行う。デブロックフィルタ処理では、スライスやマクロブロックなどの 単位領域を越えた位置にある画素が用いられることがある。例えば、ある単位領域 iに 含まれる画素に対するデブロックフィルタ処理にぉ ヽて、これに隣接する単位領域 i + 1に含まれる画素が用いられることがある。この場合には、復号を行う単位である単 位領域をまた 、で、デブロックフィルタ処理が行われる。
[0076] ループ内フィルタ 7は、デブロックフィルタ処理を行った結果を、メモリ部 8に出力す る。メモリ部 8は、ループ内フィルタ 7の出力した結果を記憶しているので、表示画像と して用いられる画像データを記憶していることになる。カロえて、時間的に過去の表示 画像の画像データも記憶しており、これは、動き補償部 9での参照画像として用いら れる。
[0077] ここで、可変長復号部 2、逆量子化部 3、逆 DCT部 4、動き補償部 9は、符号化され た画像データを復号する復号部を構成する要素である。復号部は、符号化された画 像データに対する基本的な復号処理を行う。
[0078] (エラー検出とエラー補償)
エラー検出部 10は、可変長復号部 2での復号において発生した復号エラーを検出 する。可変長復号部 2は、可変長符号ィ匕テーブルを参照して、可変長符号化テープ ルに定義されたビット列と同じ並びのビット列を、データストリーム力も検出することで 復号を行う(単位領域毎に復号する)。このとき、データストリームから、可変長符号化 テーブルに定義されたいずれのビット列にも相当するビット列を検出できない場合に は、エラー検出部 10は、復号対象の単位領域を、復号エラーの発生した単位領域と して判断する。
[0079] 復号エラーが発生している単位領域に含まれる画素値は、以降は使用されない。
復号エラーが検出された場合には、可変長復号部 2は、次の単位領域のスタートコ ードを検出して、次の単位領域から改めて復号を行う。また、復号エラーが検出され た場合には、後述のエラー補償が行われる。
[0080] なお、画像復号装置 1が、可変長復号部 2の代わりに、算術復号部 13を備えている 場合には、算術復号エラーが発生した単位領域を、復号エラーが発生した単位領域 として検出する。
[0081] (エラー補償領域の決定)
エラー補償領域決定部 11は、エラー検出部 10での結果を受けて、エラー補償を 行う対象であるエラー補償領域を決定する。 [0082] 図 3を用いて、エラー補償領域の決定について説明する。
[0083] 図 3は、本発明の実施の形態 1におけるエラー補償領域の決定を説明する説明図 である。
[0084] 図 3における左側は、復号エラーが発生した場合の画素の状態を示している。単位 領域 iは、復号エラーの発生した単位領域であり、単位領域 i—lは、復号エラーは発 生していないが、復号エラーの発生した単位領域 iと隣接する。ここで、単位領域 i—l では、復号エラーは発生していない。し力し、単位領域 i—lでのデブロックフィルタ処 理は、復号エラーの発生している単位領域 iに含まれる画素を用いる。この結果、復 号エラーの発生していない単位領域 i— 1に含まれる画素の内、単位領域 iに含まれ る画素を用いてデブロックフィルタ処理 (ループ内フィルタ 7が行う)が行われる画素 は、表示画像の画質劣化の原因となる。
[0085] 図 3においては、〇印は画素を示している。画素の内、△印が付されている画素は 、復号エラーを起こして 、る単位領域 iに含まれる画素を用いたデブロックフィルタ処 理の影響を受けている。このため、復号エラーの発生している単位領域 iのみがエラ 一補償領域として決定されても不十分である。
[0086] 図 3の右半分には、エラー補償領域の決定の状態が示されている。
[0087] エラー補償領域決定部 11は、復号エラーの発生している単位領域に加えて、この 単位領域に隣接する所定領域を合わせて、エラー補償領域として決定する。図 3〖こ おいては、単位領域 iに隣接した領域内の画素であって、単位領域 iに含まれる画素 をデブロックフィルタ処理にぉ ヽて使用する画素を含む領域が、所定領域として決定 される。
[0088] エラー補償領域決定部 11は、単位領域 iと単位領域 i—lの一部である所定領域を 合わせた領域を、エラー補償領域として決定する。
[0089] なお、図 3においては、単位領域 i 1において単位領域 iとの境界から縦方向に 3 画素までの領域が所定領域として決定されている。これは、デブロックフィルタ処理に おいて、この縦方向に 3画素までの画素力 単位領域 iに含まれる画素を用いるから である。このため、単位領域 i—lに含まれる画素であって、単位領域 iに含まれる画 素をデブロックフィルタ処理において用いる画素力 単位領域境界より縦方向に 2画 素の範囲に含まれる場合には、この 2画素までの領域が所定領域として決定される。
[0090] なお、図 3においては、フレーム中の上下方向を基準に単位領域境界がある場合 について説明したが、横方向に単位領域境界がある場合であっても同様である。
[0091] また、エラー補償領域決定部 11は、デブロックフィルタ処理の対象領域の変化に 従って、エラー補償領域を変化させる。
[0092] (エラー補償領域のノリエ一シヨン)
図 4を用いて、エラー補償領域の決定の種々のノリエーシヨンについて説明する。
[0093] 図 4 (a)〜図 4 (d)は、本発明の実施の形態 1における、エラー補償領域の決定方 法を説明する説明図である。
[0094] 図 4 (a)〜図 4 (d)にお 、て、斜線が施されて 、る領域は、エラー補償領域として決 定される領域である。
[0095] 図 4 (a)では、復号エラーの発生している単位領域 フレームの中の最上段に位 置しており、単位領域 iに含まれる画素をデブロックフィルタ処理で用いる、単位領域 i 以外に含まれる画素はない。このため、図 4 (a)では、単位領域 iのみ力 エラー補償 領域として決定される。
[0096] 図 4 (b)においては、復号エラーの発生している単位領域 iは、フレーム中の横方向 にお 、て単位領域 i— 1と隣接して 、る。単位領域 i— 1に含まれる画素の一部であつ て、単位領域 iとの横方向における境界に近接する一定の領域の画素は、デブロック フィルタ処理において、単位領域 iに含まれる画素を用いる。この一定の領域が、所 定領域として決定される。結果として、単位領域 iと、単位領域 i 1の内で決定された 所定領域がエラー補償領域として決定される。
[0097] 図 4 (c)においては、復号エラーの発生している単位領域 iは、フレーム中の縦方向 にお 、て単位領域 i— 1と隣接して 、る。この単位領域 i— 1に含まれる画素の一部で あって、単位領域 iとの縦方向における境界に近接する一定の領域中の画素は、デ ブロックフィルタ処理において、単位領域 iに含まれる画素を用いる。この一定の領域 力 所定領域として決定される。結果として、単位領域 iと、単位領域 i 1の内の所定 領域がエラー補償領域として決定される。
[0098] 図 4 (d)においては、復号エラーの発生している単位領域 iは、フレーム中の縦方向 と横方向にぉ 、て単位領域 i— 1と隣接して ヽる。この単位領域 i— 1に含まれる画素 の一部であって、単位領域 iとの縦方向と横方向における境界に近接する一定の領 域の画素に対するデブロックフィルタ処理は、単位領域 iに含まれる画素を用いる。こ の一定の領域が、所定領域として決定される。結果として、単位領域 iと、単位領域 i 1の内の所定領域がエラー補償領域として決定される。
[0099] なお、図 4 (a)〜図 4 (d)の 、ずれの場合も、所定領域は、デブロックフィルタ処理の 対象領域に応じて変化する。エラー補償領域決定部 11は、デブロックフィルタ処理 の対象領域に基づいて、エラー補償領域を決定する。
[0100] (エラー補償)
次に、エラー補償部 12は、エラー補償領域に対して、エラー補償を行う。
[0101] 図 5、図 6を用いて説明する。図 5、図 6は、本発明の実施の形態 1におけるエラー 補償を説明する説明図である。
[0102] (過去のフレームを用いたエラーネ ΐ償)
次に、エラー補償の処理について説明する。
[0103] エラー補償部 12は、図 5に示されるように、エラー補償領域 20に含まれる画素の値 を、時間的に過去のフレームに含まれる対応する画素の値で置き換える。
[0104] フレーム 2は、フレーム 1より時間的に過去のフレームである。フレーム 1は、エラー 補償領域 20を含んでいる。エラー補償領域 20に含まれる画素は、復号エラー、もし くは復号エラーに起因する影響を含んでいる。このため、エラー補償部 12は、フレー ム 2の置き換え領域 21に含まれる対応する画素の値によって、エラー補償領域 20に 含まれる画素の値を置き換える。
[0105] エラー補償領域 20が複数の画素を含む場合、置き換え領域 21に含まれると共に エラー補償領域 20に含まれる各画素に対応する画素の値で、エラー補償領域 20に 含まれる画素の値が置き換えられる。
[0106] 置き換え領域 21に含まれる画素は、フレーム 1とは異なる時間での値を有している 力 時間的に非常に近いフレームであれば、相違は少ないため、置き換えても問題 が少ない。結果として、復号エラーに起因する影響を残したままのフレーム 1よりも、 置き換えられたフレーム 1の表示画像は、画質劣化が抑えられている。 [0107] なお、置き換え領域 21は、フレーム 2において、エラー補償領域 20と同じ位置に存 在する領域であることが、画質劣化抑制の点力も好適である。しかし、エラー補償領 域 20の位置と近接する位置に存在する置き換え領域 21が用いられても、画像状態 によっては均等の効果は得られる。
[0108] (近傍画素を用いたエラー補償)
あるいは、エラー補償部 12は、エラー補償領域に含まれる画素の値を、図 6に示さ れるように、同じフレームにおけるこのエラー補償領域 20の近傍の置き換え領域 22 に含まれる画素の値で置き換える。
[0109] 置き換え領域 22は、エラー補償領域 20に隣接する領域でも良ぐ離れた領域であ つても良いが、画質劣化抑制の観点から、エラー補償領域 20に隣接する領域である ことが好適である。
[0110] (固定値を用いたエラー補償)
あるいは、エラー補償部 12は、エラー補償領域に含まれる画素の値を、固定値で 置き換える。固定値は、エラー補償領域全体で同じ値であってもよぐエラー補償領 域内の位置によって異なる値であってもよい。
[0111] 以上の構成により、復号エラーの発生した単位領域に含まれる画素にカ卩えて、この 復号エラーの発生した単位領域の影響を受ける所定領域に含まれる画素 (復号エラ 一の発生した単位領域に含まれる画素を用いてデブロックフィルタ処理を行う画素) も、エラー補償が行われる。結果として、復号エラーが発生した単位領域の境界にお ける画質劣化を抑制できる。
[0112] (フィルタ前の画素を用いたエラー補償)
また、エラー補償の対象であるエラー補償領域に含まれる所定領域は、復号エラー を発生していない領域であることもある。にもかかわらず、デブロックフィルタ処理にお いて、復号エラーの発生している単位領域に含まれる画素が用いられるために、この 所定領域はエラー補償が必要となるのである。すなわち、所定領域に関しては、デブ ロックフィルタ処理前の画素のままであれば、復号エラーに起因する悪影響はない。
[0113] このため、エラー補償部 12は、エラー補償領域に含まれる所定領域の画素に対し ては、所定領域に含まれる対応する画素であって、デブロックフィルタ処理前の画素 の値で置き換える。力 tlえて、エラー補償領域に含まれる所定領域以外の画素に対し ては、上述の通り、前のフレームの画素の値による置き換えや固定値による置き換え などを行う。
[0114] ここで、デブロックフィルタ処理前の画素の値として、メモリに記憶されて 、るデブ口 ックフィルタ処理が実行される前の画素の値が用いられる。あるいは、デブロックフィ ルタ処理がなされた画素の値に対して、フィルタ処理の演算と逆演算が施されること で、デブロックフィルタ処理前の画素の値が算出される。デブロックフィルタ処理の逆 演算がなされることで、デブロックフィルタ処理前の画素の値を記憶する必要がな!、。
[0115] このようなエラー補償により、所定領域については、デブロックフィルタ処理前の状 態に戻せるので、復号エラーに起因する影響が排除される。所定領域以外のエラー 補償領域においては、置き換えにより復号エラーに起因する影響が低減される。結 果として、高い効果で画質劣化が抑制される。
[0116] なお、単位領域は、 H. 263や H. 264規格により規定されているスライスであること が処理の容易性力も好適である。このため、エラー補償領域決定部 nは、復号エラ 一の発生したスライスと、この復号エラーの発生したスライスに含まれる画素を用いて デブロックフィルタ処理を行う画素を含むスライスをあわせた領域を、エラー補償領域 として決定してもよい。この場合には、エラー補償領域決定部 11での処理負担が減 少し、画質劣化抑制の効果も十分に保たれる。
[0117] なお、ループ内フィルタ 7におけるフィルタ処理を、デブロックフィルタ処理の場合を 例にして説明した力 このフィルタ処理は、デブロックフィルタ処理に限られず、異な る単位領域の画素を用いるフィルタ処理であれば何でもよ 、。
[0118] (実施の形態 2)
次に実施の形態 2について説明する。
[0119] 実施の形態 2の画像復号装置 1は、ループ内フィルタ 7におけるフィルタ処理の実 行の有無に基づいて、エラー補償領域を切り替える。
[0120] 図 7は、本発明の実施の形態 2における画像復号装置のブロック図である。
[0121] 図 7に示される画像復号装置 1は、判定部 30を新たに備えている。
[0122] 判定部 30は、ループ内フィルタ 7における、異なる単位領域に含まれる画素を用い たフィルタ処理の実行と非実行を判定する。判定部 30は、可変長復号部 2 (もしくは 算術復号部 13)で解析されたヘッダに含まれるフィルタ処理フラグを用いて、フィルタ 処理の実行、非実行を判定する。フィルタ処理フラグは、フィルタ処理の実行、非実 行の情報を含んでいる。判定部 30は、判定結果をエラー補償領域決定部 11に出力 する。
[0123] 判定部 30が、フィルタ処理を実行であると判定した場合には、エラー補償領域決定 部 11は、復号エラーの発生した単位領域と所定領域の両方を、エラー補償領域とし て決定する。所定領域は、実施の形態 1で説明したように、復号エラーの発生してい る単位領域に近接する領域に存在する画素であって、復号エラーの発生して 、る単 位領域内の画素を、フィルタ処理にぉ 、て用いる画素を含む領域である。
[0124] なおこのとき、所定領域は、復号エラーの発生した単位領域に含まれる画素をフィ ルタ処理で用いる画素のみの領域でもよぐこの画素を含む単位領域全体でもよぐ この画素と他の画素を含む一定の領域でもよ 、。
[0125] 判定部 30が、フィルタ処理を非実行と判定した場合には、エラー補償領域決定部 1 1は、復号エラーの発生した単位領域のみをエラー補償領域として決定する。これは 、フィルタ処理が行われないため、隣接する単位領域に含まれる画素を用いたフィル タ処理が行われることが無いからである。すなわち、単位領域の境界において、復号 エラーの発生した隣接する単位領域の影響を受ける画素は存在しな ヽ。この場合に は、復号エラーの発生した単位領域のみが、エラー補償されればよいので、エラー補 償領域決定部 11は、この復号エラーの発生した単位領域のみをエラー補償範囲とし て決定する。
[0126] (判定について)
次に、判定部 30が、ループ内フィルタ 7でのフィルタ処理単位毎に、フィルタ処理の 実行と非実行を判定する場合にっ ヽて説明する。
[0127] 図 8は、本発明の実施の形態 2におけるフィルタ処理単位を説明する説明図である 。丸は画素を表しており、フレーム中に、境界を挟んで単位領域 iと単位領域 i—lが 含まれている。太枠による長方形で囲まれた 8つの画素は、フィルタ処理単位の一例 である。 [0128] なお、図 8では、フレームの縦方向の 8画素を、フィルタ処理単位とした力 横方向 の場合もあり、 8画素以外の画素数の場合もある。
[0129] 判定部 30は、フィルタ処理単位毎に、フィルタ処理の実行、非実行を判定する。単 位領域 i 1と単位領域 iとの境界に存在するフィルタ処理単位の全てに対する判定 が終了すれば、その結果をエラー補償領域決定部 11に通知する。
[0130] 例えば、境界に存在するフィルタ処理単位の全ての判定結果力 非実行である場 合には、エラー補償領域決定部 nは、復号エラーの発生した単位領域のみをエラ 一補償領域として決定する。すなわち、所定領域をエラー補償領域に加えない。
[0131] 逆に、フィルタ処理単位の一部が、実行と判定された場合には、エラー補償領域決 定部 11は、所定領域と復号エラーの発生して 、る単位領域とあわせてエラー補償領 域として決定する。ここで、所定領域は、実施の形態 1で説明したように、復号エラー の発生した単位領域に近接する領域に含まれる画素であって、この復号エラーの発 生した単位領域内の画素をフィルタ処理で用いる画素を含む領域である。
[0132] エラー補償領域決定部 11により決定されたエラー補償領域は、エラー補償部 12に よりエラー補償される。実施の形態 1で説明したように、過去のフレームの画素の値と の置き換えや、同一フレーム中の他の位置にある画素の値との置き換えなどである。
[0133] フィルタ処理フラグは、フレーム全体(あるいは単位領域全体)でのフィルタ処理の 実行、非実行を示す。このため、復号エラーに起因する影響を受ける単位領域の境 界付近でのフィルタ処理の実行、非実行までの詳細は不明である。
[0134] これに対して、判定部 30が、ループ内フィルタ 7での実際のフィルタ処理に基づい て、フィルタ処理単位毎に判定することで、フィルタ処理フラグの結果に関わらず、あ る単位領域の境界でのフィルタ処理の実行、非実行を確実に判定できる。
[0135] このため、例えばフィルタ処理フラグが実行を示している場合でも、実際のフィルタ 処理が非実行である場合には、エラー補償領域決定部 nは、復号エラーの発生し た単位領域のみを、エラー補償領域として決定できる。
[0136] すなわち、エラー補償領域決定部 11は、少ない領域をエラー補償領域として決定 できる。エラー補償の必要のな 、領域に対するエラー補償 (画素の値の置き換えなど )が不要となるので、エラー補償に必要となる負荷が低減する。また、不要なエラー補 償による不必要な画質劣化も抑制される。
[0137] なお、判定部 30によりフィルタ処理単位毎に判定された結果に基づいて、フィルタ 処理が実行状態であるフィルタ処理単位に含まれる画素のみを所定領域として、エラ 一補償領域に加えても良い。この場合にはより精細なエラー補償が実現される。
[0138] 逆に、一部のフィルタ処理単位においてフィルタ処理が実行である場合でも、対象 とした全てのフィルタ処理単位に含まれる画素の全てを所定領域として、エラー補償 領域に加えても良い。
[0139] なお、図 9は、本発明の実施の形態 2におけるフィルタ処理単位毎の判定方法を説 明する説明図である。ここでは、単位領域としてスライスが用いられており、スライス i では、復号エラーが発生している。
[0140] 図 9に示される様に、スライス i— 1とスライス iとの境界において、フィルタ処理単位 毎にフィルタ処理の実行と非実行が判定されている。図 9では、一部のフィルタ処理 単位が、フィルタ処理を実行しているので、エラー補償領域決定部 11は、復号エラ 一の発生したスライス iに含まれる画素を、フィルタ処理で用いるスライス卜 1に含ま れる画素を含む領域も、エラー補償領域に加える。
[0141] 更に、図 10に示されるように、判定部 30は、フィルタ処理単位毎のフィルタ処理の 実行、非実行に加えて、変数「bS値」を判定しても良い。 bS値を判定することで、ル ープ内フィルタ 7で行われるフィルタ処理におけるフィルタ領域の変化に合わせて、 所定領域が変化し、結果として最適なエラー補償領域が決定される。
[0142] 図 10 (a)、 (b)は、本発明の実施の形態 2におけるフィルタ処理単位毎の判定方法 を説明する説明図である。
[0143] H. 264においては、 bS値の値によりフィルタ処理の範囲が変化する。 bS値の値に よって、スライス境界力も何画素まで力フィルタ処理の対象となるかが決まる。判定部 30により判定された bS値に基づけば、エラー補償領域決定部 11は、エラー補償領 域を更に最適に決定できる。 bS値により決定されるフィルタ領域を、所定領域として エラー補償領域に加えればょ 、からである。
[0144] 図 10 (a)では、 bS値の最大値は値「3」である。 bS値の最大値が値「3」である場合 には、図 10 (a)に示されるように、スライス境界から 1画素までの領域がフィルタ処理 の対象である。このため、所定領域は、スライス i 1のスライス境界 (スライス iとの境界 )から 1画素分の領域となり、エラー補償領域は、この所定領域にスライス iの領域が 加えられた領域である。
[0145] 一方、図 10 (b)では、 bS値の最大値は、値「4」である。このため、図 10 (b)に示さ れるように、スライス境界から 3画素までの領域がフィルタ処理の対象となるフィルタ処 理単位が存在する。このため、所定領域は、スライス i—1のスライス境界 (スライス iと の境界)から 3画素分の領域となり、エラー補償領域は、この所定領域にスライス iの 領域が加えられた領域である。
[0146] エラー補償部 12は、決定されたエラー補償領域に含まれる画素を、過去のフレー ムの画素の値、同一フレームの他の位置にある画素の値あるいは固定値で置き換え て、エラー補償をする。エラー補償により、復号エラーに起因する画質劣化が抑制さ れる。
[0147] 以上のように、 bS値に基づ 、て、最適なエラー補償領域が決定できる。この結果、 エラー補償部 12でのエラー補償に要する負荷が低減でき、処理速度も向上する。ま た、エラー補償領域に含まれる画素は、過去のフレームに含まれる画素の値や同一 フレームに含まれる他の位置の画素の値で置き換えられる力 置き換える必要のな い画素がエラー補償領域に含まれることが無いので、画質劣化の抑制効果が更に高 まる。
[0148] なお、エラー検出部 10、エラー補償領域決定部 11、エラー補償部 12、判定部 30 をはじめとした各要素は、ハードウェアで構成されても良ぐソフトウェアで構成されて もよぐハードウェアとソフトウェアの両方で構成されても良い。
[0149] また、画像復号装置 1全体もしくは一部がソフトウェアで構成された画像復号方法 であってもよい。
[0150] (実施の形態 3)
図 11は、本発明の実施の形態 3における半導体集積回路のブロック図である。
[0151] 半導体集積回路 40は、一般的には MOSトランジスタで構成され、 MOSトランジス タの接続構成により、特定の論理回路を実現する。近年、半導体集積回路の集積度 が進み、非常に複雑な論理回路 (例えば、本発明における画像復号装置)を、 1個な V、しは数個の半導体集積回路で実現できる。
[0152] 半導体集積回路 40は、実施の形態 1および 2で説明した画像復号装置 1を備えて いる。
[0153] 半導体集積回路 40は、他にも必要に応じて、画像符号化装置 41、音声処理部 42
、表示制御部 43、 ROM44を備えていても良い。
[0154] 更に、半導体集積回路 40は、外部メモリ 45、プロセッサ 46と接続されていてもよい
[0155] 半導体集積回路 40が備える画像復号装置 1は、実施の形態 1および 2で説明した とおり、復号エラーの発生している単位領域と、この復号エラーの発生している単位 領域に含まれる画素をフィルタ処理で用いる画素を含む所定領域をエラー補償領域 として決定し、エラー補償を行う。
[0156] 結果として、半導体集積回路 40は、復号エラーが生じている場合でも、表示画像 の画質劣化を抑制することができる。
[0157] なお、画像復号装置 1が半導体集積回路 40で実現されることで、小型化、低消費 電力化などが実現される。
[0158] また、復号において必要となるメモリは、半導体集積回路 40に内蔵されても良ぐ 外付けされてもよい。
[0159] (実施の形態 4)
図 12は、本発明の実施の形態 4における携帯端末の斜視図である。
[0160] 携帯端末 50は、携帯電話、 PDA,メール端末やノートブックパソコンなどの電子機 器である。
[0161] 携帯端末 50は、実施の形態 1および 2で説明した画像復号装置 1を備えている。ま た、携帯端末 50は、表示部 51、キー入力部 52を備えており、通話やメール通信など が可能である。
[0162] 携帯端末 50は、表示部 51において画像表示を行う。例えば、携帯端末 50に備え られて ヽるデジタルカメラで撮影された画像を表示したり、インターネットを介して配 信された動画や静止画を表示したりする。また、携帯端末 50は、地上波デジタルテレ ビ放送を受信することもある。地上波デジタルテレビ放送では、 H. 264規格により符 号化された画像データを復号する必要がある。
[0163] 以上のような、静止画や動画の表示を行うための画像復号において、復号エラーに 起因する画質劣化が抑制されることが望ま 、。
[0164] 携帯端末 50に備えられている画像復号装置 1は、実施の形態 1および 2で説明し た通り、復号エラーが発生した場合の表示画像の画質劣化を抑制できる。
[0165] 携帯端末 50は、移動しながら画像配信を受けることが多い。例えば、地上波デジタ ルテレビ放送の受信においては、携帯端末 50は、移動しながら受信するので、復号 エラーが発生しやすい。しかし、携帯端末 50に備えられている画像復号装置 1は、復 号エラーの発生している単位領域とこの復号エラーに起因する影響を受ける他の単 位領域も含めて、エラー補償を行うので、効果的に画質劣化を抑制できる。
[0166] このように、本発明に係る画像復号装置が携帯端末に組み込まれることで、画質劣 化抑制に高い効果を生じる。
産業上の利用可能性
[0167] 本発明は、例えば、デブロックフィルタ処理などのフィルタ処理を含む画像復号の 分野等において好適に利用できる。

Claims

請求の範囲
[1] 1フレームの画像中に含まれる単位領域毎の復号エラーを検出するエラー検出部と 前記復号エラーに対するエラー補償を行うエラー補償領域を決定するエラー補償領 域決定部と、
前記エラー補償領域に対してエラー補償を行うエラー補償部を備え、
前記エラー補償領域決定部は、前記復号エラーの発生している前記単位領域と、前 記単位領域に隣接する所定領域を、前記エラー補償領域として決定する画像復号 装置。
[2] 前記所定領域は、前記復号エラーの発生している前記単位領域に含まれる画素を 用いたループ内フィルタ処理の対象となる画素を含む領域である請求の範囲第 1項 記載の画像復号装置。
[3] 前記単位領域は、 H. 263規格、もしくは H. 264規格で規定されているスライスおよ びマクロブロックのいずれかを構成単位とする請求の範囲第 1項記載の画像復号装 置。
[4] 前記単位領域は、受信状態に応じて、前記スライスおよび前記マクロブロックの!/ヽず れかを、構成単位とする請求の範囲第 3項記載の画像復号装置。
[5] 前記復号エラーは、算術復号エラー及び可変長復号エラーの少なくとも一方を含む 請求の範囲第 1項記載の画像復号装置。
[6] 前記ループ内フィルタ処理の実行状態と非実行状態を判定する判定部を更に備え、 前記判定部の判定結果にぉ 、て、前記ループ内フィルタ処理が実行状態である場 合に、前記エラー補償領域決定部は、前記復号エラーの発生している前記単位領 域に含まれる画素を用いたループ内フィルタ処理の対象となる画素を含む領域を、 前記所定領域として決定する請求の範囲第 2項記載の画像復号装置。
[7] 前記エラー補償領域決定部は、前記ループ内フィルタ処理の対象領域の変化に合 わせて、前記所定領域を変化させる請求の範囲第 2項記載画像復号装置。
[8] 前記エラー補償部は、前記エラー補償領域に含まれる画素の値を、時間的に過去の フレームに含まれる対応する画素の値で置き換える請求の範囲第 1項記載の画像復 号装置。
[9] 前記エラー補償部は、前記エラー補償領域に含まれる画素の値を、前記エラー補償 領域の近傍の画素の値で置き換える請求の範囲第 1項記載の画像復号装置。
[10] 前記エラー補償部は、前記エラー補償領域に含まれる画素の値を、固定値で置き換 える請求の範囲第 1項記載の画像復号装置。
[11] 前記エラー補償部は、前記エラー補償領域の内、前記所定領域に含まれる画素の 値を、前記所定領域に含まれる対応する画素であって前記ループ内フィルタ処理前 の画素の値で置き換える請求の範囲第 1項記載の画像復号装置。
[12] 1フレームの画像中に含まれる単位領域毎の復号エラーを検出するエラー検出部と 前記復号エラーに対するエラー補償を行うエラー補償領域を決定するエラー補償領 域決定部と、
前記エラー補償領域に対してエラー補償を行うエラー補償部を備え、
前記エラー補償領域決定部は、前記復号エラーの発生している前記単位領域と、該 単位領域に隣接する所定領域を、前記エラー補償領域として決定する半導体集積 回路。
[13] 前記所定領域は、前記復号エラーの発生している前記単位領域に含まれる画素を 用いたループ内フィルタ処理の対象となる画素を含む領域である請求の範囲第 12 項記載の半導体集積回路。
[14] 前記エラー補償部は、前記エラー補償領域に含まれる画素の値を、時間的に過去の フレームに含まれる対応する画素の値、記エラー補償領域の近傍の画素の値および 固定値のいずれかで置き換える請求の範囲第 12項記載の半導体集積回路。
[15] 1フレームの画像中に含まれる単位領域毎の復号エラーを検出し、
前記復号エラーに対するエラー補償を行うエラー補償領域を決定し、
前記エラー補償領域に対してエラー補償を行 、、
前記復号エラーの発生して!/ヽる前記単位領域と、該単位領域に隣接する所定領域 力 前記エラー補償領域として決定される画像復号方法。
[16] 前記所定領域は、前記復号エラーの発生している前記単位領域に含まれる画素を 用いたループ内フィルタ処理をの対象となる画素を含む領域である請求の範囲第 15 項記載の画像復号方法。
前記エラー補償は、前記エラー補償領域に含まれる画素の値を、時間的に過去のフ レームに含まれる対応する画素の値、記エラー補償領域の近傍の画素の値および 固定値のいずれかで置き換える請求の範囲第 15項記載の画像復号方法。
PCT/JP2006/324067 2006-02-06 2006-12-01 画像復号装置および画像復号方法 WO2007091367A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2007557749A JP5032344B2 (ja) 2006-02-06 2006-12-01 画像復号装置および画像復号方法
CN2006800517435A CN101336550B (zh) 2006-02-06 2006-12-01 图像解码装置和图像解码方法
US12/162,852 US8189688B2 (en) 2006-02-06 2006-12-01 Image decoding device and image decoding method
EP06823546A EP1983758A4 (en) 2006-02-06 2006-12-01 IMAGE DECODING DEVICE AND IMAGE DECODING METHOD

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006028140 2006-02-06
JP2006-028140 2006-02-06

Publications (1)

Publication Number Publication Date
WO2007091367A1 true WO2007091367A1 (ja) 2007-08-16

Family

ID=38344974

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/324067 WO2007091367A1 (ja) 2006-02-06 2006-12-01 画像復号装置および画像復号方法

Country Status (5)

Country Link
US (1) US8189688B2 (ja)
EP (1) EP1983758A4 (ja)
JP (1) JP5032344B2 (ja)
CN (1) CN101336550B (ja)
WO (1) WO2007091367A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8724708B2 (en) * 2007-04-27 2014-05-13 Panasonic Corporation Image decoding device, image decoding system, image decoding method, and integrated circuit
US20120087595A1 (en) * 2009-06-19 2012-04-12 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, and image decoding method
KR101510108B1 (ko) 2009-08-17 2015-04-10 삼성전자주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
US20110273555A1 (en) * 2010-05-04 2011-11-10 Areva Inc. Inspection video radiation filter
US8824569B2 (en) * 2011-12-07 2014-09-02 International Business Machines Corporation High bandwidth decompression of variable length encoded data streams
US8933824B1 (en) 2013-08-28 2015-01-13 International Business Machines Corporation Hardware decompression of deflate encoded data with multiple blocks
US9374106B2 (en) 2013-08-28 2016-06-21 International Business Machines Corporation Efficient context save/restore during hardware decompression of DEFLATE encoded data
US9800640B2 (en) 2013-10-02 2017-10-24 International Business Machines Corporation Differential encoder with look-ahead synchronization

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003032686A (ja) * 2001-07-17 2003-01-31 Lsi Systems:Kk 復号装置、復号方法およびその方法をコンピュータに実行させるプログラム
JP2005295404A (ja) * 2004-04-02 2005-10-20 Toshiba Corp 動画像符号化装置および動画像符号化プログラム
JP2005311512A (ja) * 2004-04-19 2005-11-04 Toshiba Corp エラーコンシールメント方法及び復号器

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5621467A (en) * 1995-02-16 1997-04-15 Thomson Multimedia S.A. Temporal-spatial error concealment apparatus and method for video signal processors
JPH09182068A (ja) 1995-12-22 1997-07-11 Kokusai Electric Co Ltd 画像伝送方法
JP3297293B2 (ja) 1996-03-07 2002-07-02 三菱電機株式会社 動画像復号方法および動画像復号装置
JPH1023424A (ja) 1996-06-28 1998-01-23 Sanyo Electric Co Ltd 動画像圧縮データ復号装置
MXPA05007449A (es) * 2003-01-10 2005-09-12 Thomson Licensing Sa Definicion de filtros de interpolacion para ocultamiento de error en una imagen codificada.
EP1582061A4 (en) * 2003-01-10 2010-09-22 Thomson Licensing DECODER AND METHOD FOR SMOOTHING ARTIFACTS RESULTING FROM ERROR MASKING
JP4523886B2 (ja) * 2005-07-08 2010-08-11 富士通株式会社 動画像復号装置、動画像復号方法および動画像復号プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003032686A (ja) * 2001-07-17 2003-01-31 Lsi Systems:Kk 復号装置、復号方法およびその方法をコンピュータに実行させるプログラム
JP2005295404A (ja) * 2004-04-02 2005-10-20 Toshiba Corp 動画像符号化装置および動画像符号化プログラム
JP2005311512A (ja) * 2004-04-19 2005-11-04 Toshiba Corp エラーコンシールメント方法及び復号器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1983758A4 *

Also Published As

Publication number Publication date
JPWO2007091367A1 (ja) 2009-07-02
CN101336550A (zh) 2008-12-31
EP1983758A4 (en) 2009-04-01
US8189688B2 (en) 2012-05-29
US20090220009A1 (en) 2009-09-03
EP1983758A1 (en) 2008-10-22
JP5032344B2 (ja) 2012-09-26
CN101336550B (zh) 2011-06-15

Similar Documents

Publication Publication Date Title
JP5469617B2 (ja) 符号化歪除去方法
KR100929078B1 (ko) 코딩 왜곡 제거 방법
JP4031490B2 (ja) 画像復号化装置
WO2007091367A1 (ja) 画像復号装置および画像復号方法
US20130287124A1 (en) Deblocking Filtering
KR100973909B1 (ko) 코딩 왜곡 제거 반도체
JP2007143178A (ja) 符号化歪除去方法
JP4009650B2 (ja) 符号化歪除去方法、動画像符号化方法、動画像復号化方法、およびそれらを実現する装置、プログラム
JP4105218B2 (ja) 受信装置及び送信装置
JP3769534B2 (ja) 復号化方法
JP3769534B6 (ja) 復号化方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 200680051743.5

Country of ref document: CN

Ref document number: 2006823546

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2007557749

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 12162852

Country of ref document: US