WO2013105457A1 - Image processing device and method - Google Patents

Image processing device and method Download PDF

Info

Publication number
WO2013105457A1
WO2013105457A1 PCT/JP2012/083968 JP2012083968W WO2013105457A1 WO 2013105457 A1 WO2013105457 A1 WO 2013105457A1 JP 2012083968 W JP2012083968 W JP 2012083968W WO 2013105457 A1 WO2013105457 A1 WO 2013105457A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
image
filter
filter coefficient
buffer
Prior art date
Application number
PCT/JP2012/083968
Other languages
French (fr)
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 WO2013105457A1 publication Critical patent/WO2013105457A1/en

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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/46Embedding additional information in the video signal during the compression process
    • 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

Definitions

  • the present disclosure relates to an image processing apparatus and method, and more particularly, to an image processing apparatus and method that can reduce transmission cost of filter coefficients of a filter in encoding or decoding.
  • the adaptive loop filter is adopted in the draft of HEVC at present.
  • 16 sets of filter coefficients are transmitted per picture. This filter coefficient is transmitted prior to picture coding information such as prediction mode information, motion vector information, and DCT coefficient information.
  • the filter coefficient to be applied is determined by the dispersion of pixels in the region, and in the case of region base, the filter to be applied is determined by a flag.
  • Non-Patent Document 2 a proposal has been made to send a filter coefficient or index to the decoding side in units of LCU which is the maximum encoding unit.
  • the filter coefficients are stored in the filter coefficient buffer in the order of transmission.
  • the filter coefficients present in the buffer are referenced by an index.
  • the filter coefficient buffer is managed by FIFO, and the coefficients transmitted before the buffer size are discarded.
  • JCTVC-F803 Joint Collaborative-TeamVC -T SG16 WP3 and ISO / IEC JTC1 / SC29 / WG11 6th Meeting: Torino, IT, 14-22 July, 2011
  • A.Fuldseth Cisco Systems, G.bjontegaard, Cisco Systems, ”Improved ALF with low latency and reduced complexity”, JCTVC-G499, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 / WP3 and ISO JTC1 / SC29 / WG11 7th Meeting: Geneva, CH, 21-30 November, 2011
  • Non-Patent Document 2 since the filter coefficient buffer described in Non-Patent Document 2 is managed by FIFO, past transmitted filter coefficients are discarded from the filter coefficient buffer regardless of whether the frequency of use is low. There was a case. In this case, even if the filter coefficient used for the filter is the same as the coefficient transmitted in the past, it is necessary to transmit again, and transmission cost is increased.
  • the present disclosure has been made in view of such a situation, and can reduce the transmission cost of the filter coefficient of the filter in encoding or decoding.
  • An image processing device includes a decoding unit that decodes an encoded stream to generate an image, and a filter coefficient corresponding to an index of a filter coefficient for the image generated by the decoding unit. And a management unit that manages a history of referring to the filter coefficient by the filter unit using the index.
  • a read unit that reads the filter coefficient from a buffer that stores the filter coefficient using the index of the filter coefficient is further provided, and the management unit sends the filter coefficient read by the read unit to the buffer.
  • the management unit can store a filter coefficient that is frequently referred to in the buffer longer than a filter coefficient that is frequently referred to.
  • the index value of the filter coefficient is set so as to decrease as the use frequency of the filter coefficient increases.
  • the management unit can reset the buffer for each range that is larger than the maximum encoding unit and closed by a horizontal line.
  • the management unit can store the filter coefficient in an area having the highest priority among the free areas of the buffer.
  • the buffer management unit may further include a receiving unit that receives the filter coefficient, and the buffer management unit may perform a FIFO process on the buffer using the filter coefficient received by the receiving unit when there is no free space in the buffer. it can.
  • a buffer for storing the filter coefficient can be further provided.
  • the filter unit can apply a filter to the image subjected to the adaptive offset process.
  • the filter unit can perform a filter using a coefficient that minimizes an error from the original image.
  • an image processing apparatus generates an image by decoding an encoded stream, and uses a filter coefficient corresponding to an index of a filter coefficient for the generated image.
  • a filter is applied to each maximum coding unit, and a history of referring to the filter coefficient is managed using the index.
  • the image processing apparatus targets an image that has been locally decoded when encoding an image, and uses the filter coefficient corresponding to the index of the filter coefficient for each maximum encoding unit.
  • a filter processing unit that performs filtering; an encoding unit that encodes the image using the image that has been subjected to the filter by the filter unit; and generates an encoded stream; And a management unit for managing a history when referring to the filter coefficient.
  • a read unit that reads the filter coefficient from a buffer that stores the filter coefficient using the index of the filter coefficient is further provided, and the management unit sends the filter coefficient read by the read unit to the buffer.
  • the management unit can store a filter coefficient that is frequently referred to in the buffer longer than a filter coefficient that is frequently referred to.
  • the index value of the filter coefficient is set so as to decrease as the use frequency of the filter coefficient increases.
  • the management unit can reset the buffer for each range that is larger than the maximum encoding unit and closed by a horizontal line.
  • the management unit can store the filter coefficient in an area having the highest priority among the empty areas of the buffer.
  • a filter coefficient determining unit that determines the filter coefficient; and when the buffer has no free space, the management unit performs a FIFO process on the buffer using the filter coefficient determined by the filter coefficient determining unit. It can be performed.
  • the filter unit can perform a filter using a coefficient that minimizes an error from the original image.
  • an image processing apparatus uses a filter coefficient corresponding to an index of a previous filter coefficient as a target for an image subjected to local decoding processing when an image is encoded. Apply the filter for each encoding unit, encode the image using the filtered image, generate an encoded stream, and use the index to refer to the history of referring to the filter coefficient. to manage.
  • an image is generated by decoding an encoded stream, and a filter coefficient corresponding to an index of the filter coefficient is used for the generated image as a target for each maximum encoding unit.
  • the filter is applied.
  • a history when referring to the filter coefficient is managed using the index.
  • the filter is applied to each maximum coding unit using a filter coefficient corresponding to the index of the filter coefficient for an image that has been locally decoded when the image is encoded. Then, the image is encoded using the filtered image, and an encoded stream is generated. Then, a history when referring to the filter coefficient is managed using the index.
  • the above-described image processing apparatus may be an independent apparatus, or may be an internal block constituting one image encoding apparatus or image decoding apparatus.
  • an image can be decoded.
  • the transmission cost of the filter coefficient can be reduced.
  • an image can be encoded.
  • the transmission cost of the filter coefficient can be reduced.
  • FIG. 20 is a block diagram illustrating a main configuration example of a computer. It is a block diagram which shows an example of a schematic structure of a television apparatus.
  • FIG. 1 illustrates a configuration of an embodiment of an image encoding device as an image processing device to which the present disclosure is applied.
  • the image encoding device 11 shown in FIG. 1 encodes image data using a prediction process.
  • a prediction process for example, HEVC (High) Efficiency Video Coding) method or the like is used.
  • the image encoding device 11 includes an A / D (Analog / Digital) conversion unit 21, a screen rearrangement buffer 22, a calculation unit 23, an orthogonal transformation unit 24, a quantization unit 25, and a lossless encoding unit 26. And a storage buffer 27.
  • the image encoding device 11 includes an inverse quantization unit 28, an inverse orthogonal transform unit 29, a calculation unit 30, a deblocking filter 31, a frame memory 32, a selection unit 33, an intra prediction unit 34, a motion prediction / compensation unit 35, A predicted image selection unit 36 and a rate control unit 37 are included.
  • the image encoding device 11 includes an adaptive offset filter 41 and an adaptive loop filter 42 between the deblocking filter 31 and the frame memory 32.
  • the A / D converter 21 A / D converts the input image data, outputs it to the screen rearrangement buffer 22, and stores it.
  • the screen rearrangement buffer 22 rearranges the stored frame images in the display order in the order of frames for encoding according to the GOP (Group of Picture) structure.
  • the screen rearrangement buffer 22 supplies the image with the rearranged frame order to the arithmetic unit 23.
  • the screen rearrangement buffer 22 also supplies the image in which the frame order is rearranged to the intra prediction unit 34 and the motion prediction / compensation unit 35.
  • the calculation unit 23 subtracts the predicted image supplied from the intra prediction unit 34 or the motion prediction / compensation unit 35 via the predicted image selection unit 36 from the image read from the screen rearrangement buffer 22, and the difference information Is output to the orthogonal transform unit 24.
  • the calculation unit 23 subtracts the prediction image supplied from the intra prediction unit 34 from the image read from the screen rearrangement buffer 22.
  • the calculation unit 23 subtracts the prediction image supplied from the motion prediction / compensation unit 35 from the image read from the screen rearrangement buffer 22.
  • the orthogonal transform unit 24 performs orthogonal transform such as discrete cosine transform and Karhunen-Loeve transform on the difference information supplied from the computation unit 23 and supplies the transform coefficient to the quantization unit 25.
  • the quantization unit 25 quantizes the transform coefficient output from the orthogonal transform unit 24.
  • the quantization unit 25 supplies the quantized transform coefficient to the lossless encoding unit 26.
  • the lossless encoding unit 26 performs lossless encoding such as variable length encoding and arithmetic encoding on the quantized transform coefficient.
  • the lossless encoding unit 26 acquires parameters such as information indicating the intra prediction mode from the intra prediction unit 34, and acquires parameters such as information indicating the inter prediction mode and motion vector information from the motion prediction / compensation unit 35.
  • the lossless encoding unit 26 encodes the quantized transform coefficient, encodes each acquired parameter (syntax element), and uses it as part of the header information of the encoded data (multiplexes).
  • the lossless encoding unit 26 supplies the encoded data obtained by encoding to the accumulation buffer 27 for accumulation.
  • lossless encoding processing such as variable length encoding or arithmetic encoding is performed.
  • variable length coding include CAVLC (Context-Adaptive Variable Length Coding).
  • arithmetic coding include CABAC (Context-Adaptive Binary Arithmetic Coding).
  • the accumulation buffer 27 temporarily holds the encoded stream (data) supplied from the lossless encoding unit 26, and, for example, as a coded image encoded at a predetermined timing, for example, a recording (not shown) in the subsequent stage. Output to devices and transmission lines. That is, the accumulation buffer 27 is also a transmission unit that transmits the encoded stream.
  • the transform coefficient quantized by the quantization unit 25 is also supplied to the inverse quantization unit 28.
  • the inverse quantization unit 28 inversely quantizes the quantized transform coefficient by a method corresponding to the quantization by the quantization unit 25.
  • the inverse quantization unit 28 supplies the obtained transform coefficient to the inverse orthogonal transform unit 29.
  • the inverse orthogonal transform unit 29 performs inverse orthogonal transform on the supplied transform coefficient by a method corresponding to the orthogonal transform processing by the orthogonal transform unit 24.
  • the inversely orthogonally transformed output (restored difference information) is supplied to the arithmetic unit 30.
  • the calculation unit 30 is supplied from the intra prediction unit 34 or the motion prediction / compensation unit 35 to the inverse orthogonal transform result supplied from the inverse orthogonal transform unit 29, that is, the restored difference information, via the predicted image selection unit 36. Predicted images are added to obtain a locally decoded image (decoded image).
  • the calculation unit 30 adds the prediction image supplied from the intra prediction unit 34 to the difference information.
  • the calculation unit 30 adds the predicted image supplied from the motion prediction / compensation unit 35 to the difference information.
  • the decoded image as the addition result is supplied to the deblocking filter 31 and the frame memory 32.
  • the deblocking filter 31 removes block distortion of the decoded image by appropriately performing deblocking filter processing.
  • the deblocking filter 31 supplies the filter processing result to the adaptive offset filter 41.
  • the adaptive offset filter 41 performs an offset filter (SAO: Sample adaptive ⁇ offset) process that mainly removes ringing on the image after filtering by the deblocking filter 31.
  • SAO Sample adaptive ⁇ offset
  • the adaptive offset filter 41 applies a quad-tree structure in which the type of the offset filter is determined for each divided region and the offset value for each divided region to the image after filtering by the deblocking filter 31. Apply processing.
  • the quad-tree structure and the offset value for each divided region are calculated by the adaptive offset filter 41 and used in the image encoding device 11.
  • the calculated quad-tree structure and the offset value for each divided region are encoded by the lossless encoding unit 26 and transmitted to the image decoding device 51 of FIG.
  • the adaptive offset filter 41 supplies the filtered image to the adaptive loop filter 42.
  • the adaptive loop filter 42 performs an adaptive loop filter (ALF) process in units of LCU, which is the maximum encoding unit, as an ALF processing unit.
  • ALF adaptive loop filter
  • the filtered image is supplied to the frame memory 32.
  • a two-dimensional Wiener filter is used as a filter.
  • filters other than the Wiener filter may be used.
  • the adaptive loop filter 42 has a buffer for storing filter coefficients.
  • this buffer is a range larger than the LCU and is reset for each closed range of the horizontal line, for example, every LCU line (maximum encoding unit line).
  • the adaptive loop filter 42 a filter coefficient is obtained for each LCU. Of the obtained filter coefficients and the filter coefficients stored in the buffer, the optimum filter coefficient is used for the filtering process.
  • the filter coefficient used for the filter processing is exchanged with the filter coefficient stored in the high priority area in the buffer (the storage area is replaced).
  • the filter coefficient used is stored in a high priority area in the free area in the buffer.
  • FIFO processing is performed in the buffer.
  • the buffer index of the used filter coefficient or the used filter coefficient is supplied to the lossless encoding unit 26 as an adaptive loop filter parameter together with the on / off flag of the adaptive loop filter for each LCU and transmitted to the decoding side.
  • the frame memory 32 outputs the stored reference image to the intra prediction unit 34 or the motion prediction / compensation unit 35 via the selection unit 33 at a predetermined timing.
  • the frame memory 32 supplies the reference image to the intra prediction unit 34 via the selection unit 33.
  • the frame memory 32 supplies the reference image to the motion prediction / compensation unit 35 via the selection unit 33.
  • the selection unit 33 supplies the reference image to the intra prediction unit 34 when the reference image supplied from the frame memory 32 is an image to be subjected to intra coding.
  • the selection unit 33 also supplies the reference image to the motion prediction / compensation unit 35 when the reference image supplied from the frame memory 32 is an image to be inter-encoded.
  • the intra prediction unit 34 performs intra prediction (intra-screen prediction) for generating a predicted image using pixel values in the screen.
  • the intra prediction unit 34 performs intra prediction in a plurality of modes (intra prediction modes).
  • the intra prediction unit 34 generates prediction images in all intra prediction modes, evaluates each prediction image, and selects an optimal mode. When the optimal intra prediction mode is selected, the intra prediction unit 34 supplies the prediction image generated in the optimal mode to the calculation unit 23 and the calculation unit 30 via the predicted image selection unit 36.
  • the intra prediction unit 34 supplies parameters such as intra prediction mode information indicating the adopted intra prediction mode to the lossless encoding unit 26 as appropriate.
  • the motion prediction / compensation unit 35 uses the input image supplied from the screen rearrangement buffer 22 and the reference image supplied from the frame memory 32 via the selection unit 33 for the image to be inter-coded, Perform motion prediction. In addition, the motion prediction / compensation unit 35 performs a motion compensation process according to the motion vector detected by the motion prediction, and generates a predicted image (inter predicted image information).
  • the motion prediction / compensation unit 35 performs inter prediction processing in all candidate inter prediction modes, and generates a prediction image.
  • the motion prediction / compensation unit 35 supplies the generated predicted image to the calculation unit 23 and the calculation unit 30 via the predicted image selection unit 36.
  • the motion prediction / compensation unit 35 supplies parameters such as inter prediction mode information indicating the employed inter prediction mode and motion vector information indicating the calculated motion vector to the lossless encoding unit 26.
  • the predicted image selection unit 36 supplies the output of the intra prediction unit 34 to the calculation unit 23 and the calculation unit 30 in the case of an image to be subjected to intra coding, and in the case of an image to be subjected to inter coding, the motion prediction / compensation unit 35.
  • the output is supplied to the calculation unit 23 and the calculation unit 30.
  • the rate control unit 37 controls the quantization operation rate of the quantization unit 25 based on the compressed image stored in the storage buffer 27 so that overflow or underflow does not occur.
  • step S11 the A / D converter 21 A / D converts the input image.
  • step S12 the screen rearrangement buffer 22 stores the A / D converted images, and rearranges them from the display order of each picture to the encoding order.
  • a decoded image to be referred to is read from the frame memory 32 and the intra prediction unit via the selection unit 33 34.
  • the intra prediction unit 34 performs intra prediction on the pixels of the block to be processed in all candidate intra prediction modes. Note that pixels that have not been filtered by the deblocking filter 31 are used as decoded pixels that are referred to.
  • intra prediction is performed in all candidate intra prediction modes, and cost function values are calculated for all candidate intra prediction modes. Then, based on the calculated cost function value, the optimal intra prediction mode is selected, and the predicted image generated by the intra prediction of the optimal intra prediction mode and its cost function value are supplied to the predicted image selection unit 36.
  • the processing target image supplied from the screen rearrangement buffer 22 is an inter-processed image
  • the referenced image is read from the frame memory 32 and supplied to the motion prediction / compensation unit 35 via the selection unit 33. Is done.
  • the motion prediction / compensation unit 35 performs motion prediction / compensation processing.
  • motion prediction processing is performed in all candidate inter prediction modes, cost function values are calculated for all candidate inter prediction modes, and optimal inter prediction is performed based on the calculated cost function values. The mode is determined. Then, the predicted image generated in the optimal inter prediction mode and its cost function value are supplied to the predicted image selection unit 36.
  • step S15 the predicted image selection unit 36 selects one of the optimal intra prediction mode and the optimal inter prediction mode based on the cost function values output from the intra prediction unit 34 and the motion prediction / compensation unit 35. Determine the prediction mode. Then, the predicted image selection unit 36 selects a predicted image in the determined optimal prediction mode and supplies it to the calculation units 23 and 30. This predicted image is used for calculations in steps S16 and S21 described later.
  • the prediction image selection information is supplied to the intra prediction unit 34 or the motion prediction / compensation unit 35.
  • the intra prediction unit 34 supplies information indicating the optimal intra prediction mode (that is, a parameter related to intra prediction) to the lossless encoding unit 26.
  • the motion prediction / compensation unit 35 When a prediction image in the optimal inter prediction mode is selected, the motion prediction / compensation unit 35 performs lossless encoding of information indicating the optimal inter prediction mode and information corresponding to the optimal inter prediction mode (that is, parameters relating to motion prediction). To the unit 26.
  • Information according to the optimal inter prediction mode includes motion vector information and reference frame information.
  • step S16 the calculation unit 23 calculates a difference between the image rearranged in step S12 and the predicted image selected in step S15.
  • the predicted image is supplied from the motion prediction / compensation unit 35 in the case of inter prediction, and from the intra prediction unit 34 in the case of intra prediction, to the calculation unit 23 via the predicted image selection unit 36, respectively.
  • ⁇ Difference data has a smaller data volume than the original image data. Therefore, the data amount can be compressed as compared with the case where the image is encoded as it is.
  • step S17 the orthogonal transformation unit 24 orthogonally transforms the difference information supplied from the calculation unit 23. Specifically, orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and transformation coefficients are output.
  • orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and transformation coefficients are output.
  • step S18 the quantization unit 25 quantizes the transform coefficient.
  • the rate is controlled as will be described in the process of step S28 described later.
  • step S19 the inverse quantization unit 28 inversely quantizes the transform coefficient quantized by the quantization unit 25 with characteristics corresponding to the characteristics of the quantization unit 25.
  • step S ⁇ b> 20 the inverse orthogonal transform unit 29 performs inverse orthogonal transform on the transform coefficient inversely quantized by the inverse quantization unit 28 with characteristics corresponding to the characteristics of the orthogonal transform unit 24.
  • step S21 the calculation unit 30 adds the predicted image input via the predicted image selection unit 36 to the locally decoded difference information, and locally decoded (ie, locally decoded) image. (Image corresponding to the input to the calculation unit 23) is generated.
  • step S22 the deblocking filter 31 performs a deblocking filter process on the image output from the calculation unit 30. Thereby, block distortion is removed.
  • the filtered image from the deblocking filter 31 is output to the adaptive offset filter 41.
  • step S23 the adaptive offset filter 41 performs adaptive offset filter processing.
  • the filtering process is performed on the image after filtering by the deblocking filter 31 using the quad-tree structure in which the type of the offset filter is determined for each divided region and the offset value for each divided region. Applied.
  • the filtered image is supplied to the adaptive loop filter 42.
  • step S24 the adaptive loop filter 42 performs an adaptive loop filter process on the image after filtering by the adaptive offset filter 41 in units of LCUs.
  • the filtered image is supplied to the frame memory 32.
  • filter coefficients are obtained for each LCU, and the optimum filter is selected from the obtained filter coefficients and the filter coefficients stored in the buffer. Coefficients are used for filtering.
  • the filter coefficient used for the filter processing is exchanged with the filter coefficient stored in the high priority area in the buffer (the storage area is replaced).
  • the filter coefficient used is stored in a high priority area in the free area in the buffer.
  • FIFO processing is performed in the buffer.
  • the buffer index of the used filter coefficient or the used filter coefficient is supplied to the lossless encoding unit 26 as an adaptive loop filter parameter together with the on / off flag of the adaptive loop filter for each LCU.
  • the filter coefficient is simply referred to as a set of filter coefficients.
  • step S25 the frame memory 32 stores the filtered image.
  • images that are not filtered by the deblocking filter 31, the adaptive offset filter 41, and the adaptive loop filter 42 are also supplied from the computing unit 30 and stored.
  • the transform coefficient quantized in step S18 described above is also supplied to the lossless encoding unit 26.
  • the lossless encoding unit 26 encodes the quantized transform coefficient output from the quantization unit 25 and each supplied parameter. That is, the difference image is subjected to lossless encoding such as variable length encoding and arithmetic encoding, and is compressed.
  • lossless encoding such as variable length encoding and arithmetic encoding
  • step S27 the accumulation buffer 27 accumulates the encoded difference image (that is, the encoded stream) as a compressed image.
  • the compressed image stored in the storage buffer 27 is appropriately read out and transmitted to the decoding side via the transmission path.
  • step S28 the rate control unit 37 controls the quantization operation rate of the quantization unit 25 based on the compressed image stored in the storage buffer 27 so that overflow or underflow does not occur.
  • step S28 ends, the encoding process ends.
  • FIG. 3 illustrates a configuration of an embodiment of an image decoding device as an image processing device to which the present disclosure is applied.
  • An image decoding device 51 shown in FIG. 3 is a decoding device corresponding to the image encoding device 11 of FIG.
  • encoded data encoded by the image encoding device 11 is transmitted to an image decoding device 51 corresponding to the image encoding device 11 via a predetermined transmission path and decoded.
  • the image decoding device 51 includes a storage buffer 61, a lossless decoding unit 62, an inverse quantization unit 63, an inverse orthogonal transform unit 64, a calculation unit 65, a deblocking filter 66, a screen rearrangement buffer 67, And a D / A converter 68.
  • the image decoding device 51 includes a frame memory 69, a selection unit 70, an intra prediction unit 71, a motion prediction / compensation unit 72, and a selection unit 73.
  • the image decoding device 51 includes an adaptive offset filter 81 and an adaptive loop filter 82 between the deblocking filter 66, the screen rearrangement buffer 67, and the frame memory 69.
  • the accumulation buffer 61 is also a receiving unit that receives transmitted encoded data.
  • the accumulation buffer 61 receives and accumulates the transmitted encoded data.
  • This encoded data is encoded by the image encoding device 11.
  • the lossless decoding unit 62 decodes the encoded data read from the accumulation buffer 61 at a predetermined timing by a method corresponding to the encoding method of the lossless encoding unit 26 in FIG.
  • the lossless decoding unit 62 supplies parameters such as information indicating the decoded intra prediction mode to the intra prediction unit 71, and supplies parameters such as information indicating the inter prediction mode and motion vector information to the motion prediction / compensation unit 72. . Further, the lossless decoding unit 62 supplies the decoded adaptive loop filter parameters (on / off flag for each LCU, filter coefficient, buffer index, etc.) to the adaptive loop filter 82.
  • the inverse quantization unit 63 inversely quantizes the coefficient data (quantization coefficient) obtained by decoding by the lossless decoding unit 62 by a method corresponding to the quantization method of the quantization unit 25 in FIG. That is, the inverse quantization unit 63 uses the quantization parameter supplied from the image encoding device 11 to perform inverse quantization of the quantization coefficient by the same method as the inverse quantization unit 28 in FIG.
  • the inverse quantization unit 63 supplies the inversely quantized coefficient data, that is, the orthogonal transform coefficient, to the inverse orthogonal transform unit 64.
  • the inverse orthogonal transform unit 64 is a method corresponding to the orthogonal transform method of the orthogonal transform unit 24 in FIG. 1, performs inverse orthogonal transform on the orthogonal transform coefficient, and converts the residual data before the orthogonal transform in the image encoding device 11 Corresponding decoding residual data is obtained.
  • the decoded residual data obtained by the inverse orthogonal transform is supplied to the arithmetic unit 65. Further, a prediction image is supplied to the calculation unit 65 from the intra prediction unit 71 or the motion prediction / compensation unit 72 via the selection unit 73.
  • the calculating unit 65 adds the decoded residual data and the predicted image, and obtains decoded image data corresponding to the image data before the predicted image is subtracted by the calculating unit 23 of the image encoding device 11.
  • the arithmetic unit 65 supplies the decoded image data to the deblocking filter 66.
  • the deblocking filter 66 removes block distortion of the decoded image by appropriately performing deblocking filter processing.
  • the deblocking filter 66 supplies the filter processing result to the adaptive offset filter 81.
  • the adaptive offset filter 81 performs an offset filter (SAO) process that mainly removes ringing on the image after filtering by the deblocking filter 66.
  • SAO offset filter
  • the adaptive offset filter 81 uses the quad-tree structure in which the type of the offset filter is determined for each divided region and the offset value for each divided region, and performs filtering on the image after filtering by the deblocking filter 66. Apply processing.
  • the adaptive offset filter 81 supplies the filtered image to the adaptive loop filter 82.
  • the quad-tree structure and the offset value for each divided region are calculated by the adaptive offset filter 41 of the image encoding device 11, encoded and sent. Is.
  • the quad-tree structure encoded by the image encoding device 11 and the offset value for each divided region are received by the image decoding device 51, decoded by the lossless decoding unit 62, and used by the adaptive offset filter 81. .
  • the adaptive loop filter 82 is configured basically in the same manner as the adaptive loop filter 42 of FIG. 1 and performs an adaptive loop filter (ALF: Adaptive Loop Filter) processing in units of LCUs which are the maximum coding units as ALF processing units.
  • ALF Adaptive Loop Filter
  • the filtered image is supplied to the screen rearrangement buffer 67 and the frame memory 69.
  • the adaptive loop filter 82 has a buffer for storing filter coefficients, like the adaptive loop filter 42 of FIG. In this buffer, the referenced filter coefficient is moved to a high priority area. In addition to the screen unit, this buffer is a range larger than the LCU and is reset for each closed range of the horizontal line, for example, every LCU line (maximum encoding unit line).
  • the filter coefficient from the lossless decoding unit 62 or the filter coefficient corresponding to the buffer index from the lossless decoding unit 62 stored in the buffer is used for the filter processing.
  • the filter coefficient used for the filter processing is exchanged with the filter coefficient stored in the high priority area in the buffer (stored) Area is swapped).
  • the filter coefficient used is stored in a high-priority area in the empty area in the buffer.
  • FIFO processing is performed in the buffer.
  • the screen rearrangement buffer 67 rearranges images. That is, the order of frames rearranged for the encoding order by the screen rearrangement buffer 22 in FIG. 1 is rearranged in the original display order.
  • the D / A converter 68 performs D / A conversion on the image supplied from the screen rearrangement buffer 67, and outputs and displays the image on a display (not shown).
  • the output of the adaptive loop filter 82 is further supplied to the frame memory 69.
  • the frame memory 69, the selection unit 70, the intra prediction unit 71, the motion prediction / compensation unit 72, and the selection unit 73 are the frame memory 32, the selection unit 33, the intra prediction unit 34, and the motion prediction / compensation unit of the image encoding device 11. 35 and the predicted image selection unit 36, respectively.
  • the selection unit 70 reads out the inter-processed image and the referenced image from the frame memory 69 and supplies the image to the motion prediction / compensation unit 72.
  • the selection unit 70 reads an image used for intra prediction from the frame memory 69 and supplies the image to the intra prediction unit 71.
  • the intra prediction unit 71 is appropriately supplied with information indicating the intra prediction mode obtained by decoding the header information from the lossless decoding unit 62. Based on this information, the intra prediction unit 71 generates a prediction image from the reference image acquired from the frame memory 69 and supplies the generated prediction image to the selection unit 73.
  • the motion prediction / compensation unit 72 is supplied with information (prediction mode information, motion vector information, reference frame information, flags, various parameters, etc.) obtained by decoding the header information from the lossless decoding unit 62.
  • the motion prediction / compensation unit 72 generates a prediction image from the reference image acquired from the frame memory 69 based on the information supplied from the lossless decoding unit 62 and supplies the generated prediction image to the selection unit 73.
  • the selection unit 73 selects the prediction image generated by the motion prediction / compensation unit 72 or the intra prediction unit 71 and supplies the selected prediction image to the calculation unit 65.
  • the storage buffer 61 stores the transmitted encoded data in step S51.
  • the lossless decoding unit 62 decodes the encoded data supplied from the accumulation buffer 61.
  • the I picture, P picture, and B picture encoded by the lossless encoding unit 26 in FIG. 1 are decoded.
  • parameter information such as motion vector information, reference frame information, and prediction mode information (intra prediction mode or inter prediction mode) is also decoded.
  • the prediction mode information is intra prediction mode information
  • the prediction mode information is supplied to the intra prediction unit 71.
  • the prediction mode information is inter prediction mode information
  • motion vector information corresponding to the prediction mode information is supplied to the motion prediction / compensation unit 72.
  • the parameters of the adaptive loop filter are decoded and supplied to the adaptive loop filter 82.
  • step S53 the intra prediction unit 71 or the motion prediction / compensation unit 72 performs a prediction image generation process corresponding to the prediction mode information supplied from the lossless decoding unit 62, respectively.
  • the intra prediction unit 71 when the intra prediction mode information is supplied from the lossless decoding unit 62, the intra prediction unit 71 generates an intra prediction image in the intra prediction mode.
  • the motion prediction / compensation unit 72 performs an inter prediction mode motion prediction / compensation process to generate an inter prediction image.
  • the prediction image (intra prediction image) generated by the intra prediction unit 71 or the prediction image (inter prediction image) generated by the motion prediction / compensation unit 72 is supplied to the selection unit 73.
  • step S54 the selection unit 73 selects a predicted image. That is, a prediction image generated by the intra prediction unit 71 or a prediction image generated by the motion prediction / compensation unit 72 is supplied. Therefore, the supplied predicted image is selected and supplied to the calculation unit 65, and is added to the output of the inverse orthogonal transform unit 64 in step S57 described later.
  • step S52 the transform coefficient decoded by the lossless decoding unit 62 is also supplied to the inverse quantization unit 63.
  • step S55 the inverse quantization unit 63 inversely quantizes the transform coefficient decoded by the lossless decoding unit 62 with characteristics corresponding to the characteristics of the quantization unit 25 in FIG.
  • step S56 the inverse orthogonal transform unit 29 performs inverse orthogonal transform on the transform coefficient inversely quantized by the inverse quantization unit 28 with characteristics corresponding to the characteristics of the orthogonal transform unit 24 of FIG. As a result, the difference information corresponding to the input of the orthogonal transform unit 24 of FIG. 1 (the output of the calculation unit 23) is decoded.
  • step S57 the calculation unit 65 adds the prediction image selected in the process of step S54 described above and input via the selection unit 73 to the difference information. As a result, the original image is decoded.
  • step S58 the deblocking filter 66 performs deblocking filter processing on the image output from the calculation unit 65. Thereby, block distortion is removed.
  • the decoded image from the deblocking filter 66 is output to the adaptive offset filter 81.
  • step S59 the adaptive offset filter 81 performs adaptive offset filter processing.
  • the filtering process is performed on the image after filtering by the deblocking filter 66 using the quad-tree structure in which the type of the offset filter is determined for each divided region and the offset value for each divided region. Applied.
  • the filtered image is supplied to the adaptive loop filter 82.
  • step S60 the adaptive loop filter 82 performs an adaptive loop filter process on the image after filtering by the adaptive offset filter 81.
  • the filtered image is supplied to the screen rearrangement buffer 67 and the frame memory 69.
  • the filter coefficient corresponding to the filter coefficient from the lossless decoding unit 62 or the buffer index from the lossless decoding unit 62 stored in the buffer. are used for filtering.
  • the filter coefficient used for the filter processing is exchanged with the filter coefficient stored in the high priority area in the buffer (stored) Area is swapped).
  • the filter coefficient used is stored in a high-priority area in the empty area in the buffer.
  • FIFO processing is performed in the buffer.
  • step S61 the frame memory 69 stores the filtered image.
  • step S62 the screen rearrangement buffer 67 rearranges the images after the adaptive loop filter 82. That is, the order of frames rearranged for encoding by the screen rearrangement buffer 22 of the image encoding device 11 is rearranged to the original display order.
  • step S63 the D / A conversion unit 68 D / A converts the image from the screen rearrangement buffer 67. This image is output to a display (not shown), and the image is displayed.
  • step S63 ends, the decoding process ends.
  • the filter coefficient 111 is a filter coefficient of the most recently transmitted LCU.
  • the filter coefficient is transmitted from the encoding side for each LCU.
  • the transmitted filter coefficient 111 of the latest LCU is stored at the head of the ALF coefficient buffer 112, and the filter coefficients stored up to that point are sequentially moved to the rear of the buffer. Therefore, when there is no free space, the filter coefficient of the smallest LCU number transmitted before is discarded no matter how many times it is used.
  • Non-Patent Document 2 even if the filter coefficient used for the filter process is the same filter coefficient as the coefficient transmitted in the past, it may be necessary to transmit again, and the transmission cost is reduced. It was hanging.
  • the referred filter coefficient is moved to a high priority area in the buffer. Further, the buffer is reset for each closed range of the horizontal line.
  • the closed range of the horizontal line is the range from the left end to the right end of the image frame.
  • the buffer is reset for each LCU line.
  • the range from the left end to the right end of the tile may be used.
  • the filter coefficient 111 is a filter coefficient of the most recently transmitted LCU.
  • the ALF coefficient buffer 121-1 represents an ALF coefficient buffer when the filter coefficient stored in the buffer is referred to in the latest LCU.
  • An ALF coefficient buffer 121-2 indicates an ALF coefficient buffer when the transmitted filter coefficient 111 is used in the latest LCU.
  • the referenced filter coefficient is moved to a higher priority area in the ALF coefficient buffer 121-1. Is done. In the case of the example of FIG. 6, since the front in the buffer is a high priority area, the order of the referenced filter coefficient in the buffer is moved forward.
  • the ALF coefficient buffer 121-2 when the filter coefficient 111 transmitted in the most recent LCU is used, when there is no free area, the ALF coefficient buffer 121-2 stores the filter coefficient 111. And FIFO processing is performed. That is, the transmitted filter coefficient 111 is stored in the area of the lowest index, which is the area with the highest priority, in the ALF coefficient buffer 121-1, and the stored filter coefficients are sequentially moved backward in the buffer. Moved. In the ALF coefficient buffer 121-1, the filter coefficient that is least frequently used is discarded. That is, filter coefficients that are not used are more likely to be discarded.
  • the filter coefficient 111 transmitted in the latest LCU is used and there is a free area
  • the filter coefficient 111 is stored in a free area having a high priority among the free areas.
  • the buffer is reset in the closed range of the horizontal line, for example, in units of LCU lines.
  • FIG. 7 is a block diagram illustrating a configuration example of an adaptive loop filter and a lossless encoding unit in the image encoding device of FIG.
  • the adaptive loop filter 42 is configured to include an image buffer 211, an ALF coefficient calculation unit 212, an ALF processing unit 213, a coefficient reading unit 214, and an ALF coefficient storage buffer 215.
  • the adaptive loop filter 42 is configured to include an RD evaluation value calculation unit 216, a buffer management unit 217, and an ALF parameter setting unit 218.
  • the lossless encoding unit 26 is configured to include at least a syntax writing unit 221.
  • the image before the adaptive loop filter from the adaptive offset filter 41 and the original image from the screen rearrangement buffer 22 are input to the image buffer 211.
  • the image buffer 211 temporarily stores the pre-filter image and the original image, and supplies them to the ALF coefficient calculation unit 212 at a predetermined timing. Further, the image buffer 211 supplies the pre-filter image to the ALF processing unit 213 and supplies the original image to the RD evaluation value calculation unit 216.
  • the ALF coefficient calculation unit 212 calculates the correlation between the original image and the pre-filter image for each LCU, finds the best ALF filter coefficient (that is, the coefficient that minimizes the error from the original image), and calculates the obtained ALF.
  • the filter coefficient is supplied to the ALF processing unit 213.
  • the ALF processing unit 213 reads the filter coefficient stored in the ALF coefficient storage buffer 215 by supplying the buffer index to the coefficient reading unit 214.
  • the ALF processing unit 213 performs filter processing on the pre-filter image from the image buffer 211 for each LCU using the filter coefficient from the ALF coefficient calculation unit 212 and the read filter coefficient. Then, the ALF processing unit 213 supplies the post-filter pixel value and the filter coefficient or buffer index at that time to the RD evaluation value calculation unit 216.
  • the ALF processing unit 213 performs, after RD evaluation, for each LCU on the pre-filter image from the image buffer 211 based on information indicating the presence / absence of processing (on / off) from the RD evaluation value calculation unit 216. Filter processing is performed using the filter coefficient supplied from the coefficient reading unit 214. Then, the ALF processing unit 213 supplies the filtered pixel value to the frame memory 32.
  • the coefficient reading unit 214 reads out the filter coefficient corresponding to the buffer index requested from the ALF processing unit 213 from the ALF coefficient storage buffer 215 and supplies it to the ALF processing unit 213. Further, after the RD evaluation, the coefficient reading unit 214 reads out the filter coefficient corresponding to the buffer index from the buffer management unit 217 from the ALF coefficient storage buffer 215 and supplies it to the ALF processing unit 213.
  • the ALF coefficient storage buffer 215 is configured to store N patterns of ALF filter coefficients (sets) per screen (picture).
  • the buffer size is (ALF tap length ⁇ coefficient bit precision ⁇ N) bits. However, when the coefficient is compressed by variable length coding, it becomes smaller than this.
  • the ALF filter coefficient stored in the ALF coefficient storage buffer 215 is reset for each screen and for each LUC line.
  • the ALF coefficient storage buffer 215 is managed by the buffer management unit 217 so that an area with a small index is an area with a high priority.
  • the RD evaluation value calculation unit 216 uses the original image from the image buffer 211 and the filtered image from the ALF processing unit 213 to determine whether or not to perform ALF processing with each filter coefficient for each LCU. Is calculated and determined.
  • the RD evaluation value calculation unit 216 supplies the fact to the ALF processing unit 213, the buffer management unit 217, and the ALF parameter setting unit 218.
  • the RD evaluation value calculation unit 216 supplies a filter coefficient to be used or a buffer index corresponding to the filter coefficient to the buffer management unit 217 and the ALF parameter setting unit 218.
  • the RD evaluation value calculation unit 216 supplies only the fact to the ALF processing unit 213, the buffer management unit 217, and the ALF parameter setting unit 218.
  • the buffer management unit 217 initializes (resets) the ALF coefficient storage buffer 215 at the beginning of the screen and at the right end of the LCU line.
  • the buffer management unit 217 causes the coefficient reading unit 214 to read out the filter coefficient corresponding to the buffer index in the ALF coefficient storage buffer 215.
  • the buffer management unit 217 moves the filter coefficient corresponding to the buffer index to a high priority area in the ALF coefficient storage buffer 215. Specifically, the buffer management unit 217 exchanges the read filter coefficient with the filter coefficient of the index immediately before the read filter coefficient index. That is, the referred filter coefficients are moved one by one to a higher priority area.
  • the buffer management unit 217 supplies the empty area in the ALF coefficient storage buffer 215 to the area with the highest priority (the area with the smallest index). Stored filter coefficients.
  • the buffer management unit 217 performs FIFO processing of the ALF coefficient storage buffer 215 using the filter coefficient from the RD evaluation value calculation unit 216. Then, the buffer management unit 217 causes the coefficient reading unit 214 to read the stored filter coefficient. That is, the buffer management unit 217 is also a unit that manages a history when referring to the filter coefficient.
  • the ALF parameter setting unit 218 refers to the information supplied from the RD evaluation value calculation unit 216, sets an on / off flag indicating whether or not to perform ALF processing, and writes the set on / off flag in syntax To the unit 221.
  • the buffer index or filter coefficient to be used is also supplied to the syntax writing unit 221.
  • the syntax writing unit 221 adds each parameter to the header of the encoded stream. For example, the syntax writing unit 221 adds an on / off flag from the ALF parameter setting unit 218 and, if necessary, an index or a filter coefficient to the header of the encoded stream.
  • the image before the adaptive loop filter from the adaptive offset filter 41 and the original image from the screen rearrangement buffer 22 are input to the image buffer 211.
  • the image buffer 211 temporarily stores the pre-filter image and the original image, and supplies them to the ALF coefficient calculation unit 212 at a predetermined timing.
  • step S211 the buffer management unit 217 initializes (resets) the ALF coefficient storage buffer 215.
  • step S212 the ALF coefficient calculation unit 212 calculates the correlation between the original image and the pre-filter image in each LCU, and obtains one best ALF filter coefficient. This ALF coefficient calculation process is performed after the prediction process, residual encoding process, and deblocking filter of each LCU.
  • the ALF coefficient calculation unit 212 supplies the obtained filter coefficient to the ALF processing unit 213.
  • the ALF processing unit 213 performs filter processing on the pre-filter image from the image buffer 211 for each LCU using the filter coefficient from the ALF coefficient calculation unit 212 and the read filter coefficient. Then, the ALF processing unit 213 supplies the post-filter pixel value and the filter coefficient or buffer index at that time to the RD evaluation value calculation unit 216.
  • the RD evaluation value calculation unit 216 calculates an evaluation value for each LCU. That is, the RD evaluation value calculation unit 216 determines, for each LCU, whether or not to perform ALF processing using the obtained filter coefficient, based on the evaluation value obtained by RD calculation. At that time, a filter coefficient to be used is also selected.
  • R1 (total amount of bits required for transmission of bit amount of on / off flag indicating that ALF is performed and filter coefficient index)
  • D1 (SAD of filtered image and original image (difference absolute sum))
  • R0 (bit amount of on / off flag indicating that ALF is not performed)
  • D0 (SAD (difference absolute sum) of original image and original image)
  • RD evaluation value calculation unit 216 determines whether or not to perform a filter process in step S214 based on the obtained evaluation value. If it is determined in step S214 that the filter process is to be performed, the process proceeds to step S215.
  • step S215 the RD evaluation value calculation unit 216 determines whether or not the selected filter coefficient is the filter coefficient obtained by the ALF coefficient calculation unit 212. If it is determined in step S215 that the filter coefficient is not obtained by the ALF coefficient calculation unit 212, the process proceeds to step S216. At this time, the RD evaluation value calculation unit 216 supplies the buffer management unit 217 and the ALF parameter setting unit 218 with the fact that the filter processing is performed and the buffer index corresponding to the selected filter coefficient.
  • step S216 the ALF parameter setting unit 218 sets a flag indicating that the filtering process is performed, and causes the syntax writing unit 221 to encode the set flag and the buffer index. That is, the ALF parameter setting unit 218 supplies the set flag and buffer index to the syntax writing unit 221 as adaptive loop filter parameters.
  • syntax writing unit 221 writes the parameter of the adaptive loop filter from the ALF parameter setting unit 218 to the header portion of the encoded stream in units of LCUs in step S26 of FIG.
  • step S217 the buffer management unit 217 causes the coefficient reading unit 214 to read out the filter coefficient corresponding to the buffer index from the RD evaluation value calculation unit 216 in the ALF coefficient storage buffer 215.
  • the coefficient reading unit 214 reads out the filter coefficient corresponding to the buffer index from the buffer management unit 217 from the ALF coefficient storage buffer 215 and supplies it to the ALF processing unit 213.
  • step S218 the ALF processing unit 213 performs a filtering process on the pre-filter image from the image buffer 211 using the filter coefficient read by the coefficient reading unit 214 for each LCU, and calculates the post-filter pixel value.
  • the frame memory 32 is supplied.
  • step S219 the buffer management unit 217 exchanges the filter coefficient of the referenced index with the filter coefficient of the previous index. In other words, the buffer management unit 217 moves the filter coefficient of the referenced index to a high priority area.
  • step S215 if it is determined in step S215 that the filter coefficient is obtained by the ALF coefficient calculation unit 212, the process proceeds to step S220. At this time, the RD evaluation value calculation unit 216 supplies the buffer management unit 217 and the ALF parameter setting unit 218 to the effect that the filtering process is performed and the selected filter coefficient.
  • step S220 the ALF parameter setting unit 218 sets a flag indicating that the filtering process is performed, and causes the syntax writing unit 221 to encode the set flag and the filter coefficient. That is, the ALF parameter setting unit 218 supplies the set flag and filter coefficient to the syntax writing unit 221 as parameters of the adaptive loop filter.
  • syntax writing unit 221 writes the parameter of the adaptive loop filter from the ALF parameter setting unit 218 to the header portion of the encoded stream in units of LCUs in step S26 of FIG.
  • step S221 the buffer management unit 217 determines whether or not there is a free space in the ALF coefficient storage buffer 215. If it is determined in step S221 that the ALF coefficient storage buffer 215 is free, the process proceeds to step S222.
  • step S222 the buffer management unit 217 stores the filter coefficient supplied from the RD evaluation value calculation unit 216 in the area of the smallest index among the free areas in the ALF coefficient storage buffer 215.
  • the filter coefficient is stored in a high priority area among the free areas.
  • step S221 If it is determined in step S221 that the ALF coefficient storage buffer 215 is not empty, the process proceeds to step S223.
  • step S223 the buffer management unit 217 performs FIFO processing of the ALF coefficient storage buffer 215 using the filter coefficient from the RD evaluation value calculation unit 216. That is, the filter coefficient from the RD evaluation value calculation unit 216 is stored in the area of the smallest index that is the highest priority area among the free areas in the ALF coefficient storage buffer 215. The stored filter coefficients are sequentially stored in the subsequent area, and the filter coefficients stored in the last area are discarded.
  • the buffer management unit 217 causes the coefficient reading unit 214 to read out the filter coefficients stored in the ALF coefficient storage buffer 215, and the process proceeds to step S224.
  • step S224 the ALF processing unit 213 performs filter processing on the pre-filter image from the image buffer 211 using the filter coefficient supplied from the coefficient reading unit 214 for each LCU, and the post-filter pixel value is converted into a frame. This is supplied to the memory 32.
  • step S214 if it is determined in step S214 that the filtering process is not performed, the RD evaluation value calculation unit 216 supplies the fact that the filtering process is not performed to the ALF processing unit 213, the buffer management unit 217, and the ALF parameter setting unit 218. To do.
  • the ALF processing unit 213 supplies the frame memory 32 as it is without performing filter processing on the pre-filter image from the image buffer 211.
  • step S225 the ALF parameter setting unit 218 sets a flag indicating that the filter processing is not performed, and supplies the set flag to the syntax writing unit 221 as an adaptive loop filter parameter.
  • syntax writing unit 221 writes the parameter of the adaptive loop filter from the ALF parameter setting unit 218 to the header portion of the encoded stream in units of LCUs in step S26 of FIG.
  • step S219 the process proceeds to step S226.
  • step S226 the ALF coefficient calculation unit 212 determines whether or not the processing target LCU is the last (right end) LCU in the LCU line. If it is determined in step S226 that the LCU line is not the last (rightmost) LCU, the process returns to step S212 and the subsequent processes are repeated.
  • step S225 If it is determined in step S225 that it is the last (right end) LCU in the LCU line, the process proceeds to step S227.
  • step S227 the ALF coefficient calculation unit 212 determines whether or not the processing target LCU is the last LCU on the screen. If it is determined in step S227 that it is not the last LCU on the screen, the process returns to step S211, the buffer is initialized, and the subsequent processes are repeated.
  • step S227 If it is determined in step S227 that the LCU is the last LCU on the screen, the adaptive loop filter process is terminated.
  • the filter coefficient stored in the buffer when used for the filter processing, the filter coefficient is moved to a high priority area in the buffer.
  • the filter coefficient when the obtained filter coefficient is used for the filtering process, the filter coefficient is stored in an area having the highest priority among the free areas. If there is no free area, FIFO processing is performed with the obtained filter coefficient.
  • FIG. 9 is a block diagram illustrating a configuration example of the lossless decoding unit and the adaptive loop filter in the image decoding device of FIG.
  • the lossless decoding unit 62 is configured to include at least a syntax reading unit 251.
  • the adaptive loop filter 82 is configured to include a parameter receiving unit 261, a coefficient writing unit 262, a buffer management unit 263, an ALF coefficient storage buffer 264, and an ALF processing unit 265.
  • the syntax reading unit 251 reads the syntax from the header part of the encoded stream, and supplies the parameter of the adaptive loop filter to the parameter receiving unit 261.
  • the parameters of the adaptive loop filter are, for example, a flag indicating on / off of ALF processing, and a filter coefficient to be used or a buffer index of the filter coefficient.
  • the parameter receiving unit 261 receives the parameters of the adaptive loop filter supplied from the syntax reading unit 251.
  • the parameter receiving unit 261 supplies a flag indicating ALF processing on / off to the ALF processing unit 265.
  • the parameter receiving unit 261 supplies the filter coefficient to be used or the buffer index of the filter coefficient to the coefficient reading unit 262 and the buffer management unit 263.
  • the coefficient reading unit 262 supplies the filter coefficient from the parameter receiving unit 261 to the ALF processing unit 265.
  • the coefficient reading unit 262 reads out the filter coefficient corresponding to the buffer index from the parameter receiving unit 261 from the ALF coefficient storage buffer 264 and supplies the read filter coefficient to the ALF processing unit 265.
  • the main configuration of the buffer management unit 263 is basically the same as the configuration of the buffer management unit 217 of FIG.
  • the buffer management unit 263 initializes (resets) the ALF coefficient storage buffer 264 at the beginning of the screen and at the right end of the LCU line.
  • the buffer management unit 263 moves the filter coefficient corresponding to the buffer index to a high priority area in the ALF coefficient storage buffer 264.
  • the buffer management unit 263 exchanges the read filter coefficient and the filter coefficient of the index immediately before the read filter coefficient index. That is, the referred filter coefficients are moved one by one to a higher priority area. As a result, filter coefficients that are not often referenced move to a low priority area, and are discarded when FIFO processing is performed.
  • the buffer management unit 263 when the filter coefficient is supplied from the parameter receiving unit 261, the buffer management unit 263 is supplied to the highest priority region (the region with the smallest index) among the free regions in the ALF coefficient storage buffer 264. Stores filter coefficients. If there is no free space in the ALF coefficient storage buffer 264, the buffer management unit 263 performs the FIFO processing of the ALF coefficient storage buffer 264 using the filter coefficient from the parameter reception unit 261. That is, the buffer management unit 263 is also a unit that manages a history when referring to the filter coefficient.
  • the ALF coefficient storage buffer 264 is basically configured in the same manner as the ALF coefficient storage buffer 215 of FIG. 7, and is configured to store N patterns of ALF filter coefficients (sets) per screen (picture).
  • the buffer size is (ALF tap length ⁇ coefficient bit precision ⁇ N) bits. However, when the coefficient is compressed by variable length coding, it becomes smaller than this.
  • the ALF filter coefficient stored in the ALF coefficient storage buffer 264 is reset for each screen and for each LUC line.
  • the ALF coefficient storage buffer 264 is managed by the buffer management unit 263 so that an area with a small index is an area with a high priority.
  • the ALF processing unit 265 receives the pre-ALF filter pixel value from the adaptive offset filter 81, and uses the filter coefficient supplied from the coefficient reading unit 262 according to on / off indicated by the flag from the parameter receiving unit 261. Execute ALF processing.
  • the ALF processing unit 265 outputs the filtered pixel value to the screen rearrangement buffer 67 and the frame memory 69 in the subsequent stage.
  • the coefficient writing unit 262 initializes (resets) the ALF coefficient storage buffer 264 in step S251.
  • step S52 of FIG. 4 when the encoded stream is decoded, the syntax reading unit 251 reads the syntax from the header portion of the encoded stream.
  • the syntax reading unit 251 supplies the adaptive loop filter parameters (ALF parameters) of the read syntax to the parameter receiving unit 261.
  • ALF parameters adaptive loop filter parameters
  • the parameter receiving unit 261 receives the parameter of the adaptive loop filter for each LCU supplied from the syntax reading unit 251 in step S252.
  • the parameters for each LCU are, for example, a flag indicating on / off of ALF processing, and a filter coefficient to be used or a buffer index corresponding to the filter coefficient.
  • step S253 the parameter receiving unit 261 determines whether or not the flag is on. If the parameter receiving unit 261 determines that the flag is on, the process proceeds to step S254. At this time, the flag is supplied to the ALF processing unit 265, and the filter coefficient to be used or the buffer index corresponding to the filter coefficient is supplied to the coefficient reading unit 262 or the buffer management unit 263.
  • step S254 the coefficient reading unit 262 determines whether or not the filter coefficient is received from the parameter receiving unit 261. If it is determined that the filter coefficient is not received, the process proceeds to step S255.
  • step S255 the coefficient reading unit 262 reads the filter coefficient corresponding to the buffer index from the parameter receiving unit 261 from the ALF coefficient storage buffer 264, and supplies the read filter coefficient to the ALF processing unit 265.
  • step S256 the ALF processing unit 265 performs ALF processing on the pre-ALF filter pixel value from the adaptive offset filter 81 using the filter coefficient read by the coefficient reading unit 262.
  • the ALF processing unit 265 outputs the filtered pixel value to the screen rearrangement buffer 67 and the frame memory 69 in the subsequent stage.
  • step S257 the buffer management unit 263 exchanges the filter coefficient of the referenced index with the filter coefficient of the previous index. In other words, the filter coefficient of the referenced index is moved to a higher priority area in the ALF coefficient storage buffer 264.
  • step S254 if it is determined in step S254 that the filter coefficient has been received, the coefficient reading unit 262 supplies the received filter coefficient to the ALF processing unit 265, and the process proceeds to step S258.
  • step S258 the ALF process is performed on the pre-ALF filter pixel value from the adaptive offset filter 81 using the filter coefficient received by the parameter receiving unit 261.
  • the ALF processing unit 265 outputs the filtered pixel value to the screen rearrangement buffer 67 and the frame memory 69 in the subsequent stage.
  • step S259 the buffer management unit 263 determines whether or not there is a free space in the ALF coefficient storage buffer 264. If it is determined in step S259 that there is a vacancy, the process proceeds to step S260.
  • step S260 the buffer management unit 263 stores the filter coefficient from the parameter receiving unit 261 in the highest priority area (the area with the smallest index) among the free areas.
  • step S259 If it is determined in step S259 that there is no space, the process proceeds to step S261.
  • step S ⁇ b> 261 the buffer management unit 263 performs FIFO processing of the ALF coefficient storage buffer 264 using the filter coefficient from the parameter reception unit 261.
  • the filter coefficient from the parameter receiving unit 261 is stored in the area of the smallest index among the free areas in the ALF coefficient storage buffer 264.
  • the stored filter coefficients are sequentially stored in the subsequent area, and the filter coefficients stored in the last area are discarded.
  • step S257 After step S257, step S260, and step S261, the process proceeds to step S262.
  • step S253 If it is determined in step S253 that the flag is not on, the process proceeds to step S262. At this time, the ALF processing unit 265 does not perform the filter process on the pre-filter image from the adaptive offset filter 81 and outputs it to the screen rearrangement buffer 67 and the frame memory 69 as it is.
  • step S262 the parameter receiving unit 261 determines whether or not the processing target LCU is the last (right end) LCU in the LCU line. If it is determined in step S262 that the LCU line is not the last (rightmost) LCU, the process returns to step S252, and the subsequent processes are repeated.
  • step S262 If it is determined in step S262 that the LCU is the last (rightmost) LCU in the LCU line, the process proceeds to step S263.
  • step S263 the buffer management unit 263 determines whether the processing target LCU is the last LCU on the screen. If it is determined in step S263 that it is not the last LCU on the screen, the processing returns to step S251, the buffer is initialized, and the subsequent processing is repeated.
  • step S263 If it is determined in step S263 that the LCU is the last LCU on the screen, the adaptive loop filter process is terminated.
  • the filter coefficient stored in the buffer when used for the filtering process, the filter coefficient is moved to a high priority area in the buffer.
  • the filter coefficient received from the encoding side when used for the filtering process, the filter coefficient is stored in an area having the highest priority among the free areas. If there is no free space, FIFO processing is performed with the received filter coefficient.
  • a filter coefficient having a large number of references is moved to an area having a high priority (most difficult to be discarded) in the buffer.
  • the management of the filter coefficient buffer is made more efficient than the FIFO processing described in Non-Patent Document 2, so that the retransmission of the filter coefficient can be reduced.
  • the transmission cost of the filter coefficient can be reduced, and the encoding efficiency related to the filter coefficient can be improved.
  • the buffer is reset in a closed range of the horizontal line, for example, in units of LCU lines, it is possible to prevent the history management from becoming too complicated.
  • the HEVC method is used as the encoding method.
  • the present disclosure is not limited to this, and other encoding schemes / decoding schemes including at least an adaptive loop filter can be applied as the in-loop filter.
  • the present disclosure discloses, for example, image information (bitstream) compressed by orthogonal transformation such as discrete cosine transformation and motion compensation, such as HEVC, satellite broadcasting, cable television, the Internet, or a mobile phone.
  • the present invention can be applied to an image encoding device and an image decoding device used when receiving via a network medium.
  • the present disclosure can be applied to an image encoding device and an image decoding device that are used when processing on a storage medium such as an optical disk, a magnetic disk, and a flash memory.
  • FIG. 11 shows an example of a multi-view image encoding method.
  • the multi-viewpoint image includes a plurality of viewpoint images, and a predetermined one viewpoint image among the plurality of viewpoints is designated as the base view image.
  • Each viewpoint image other than the base view image is treated as a non-base view image.
  • a buffer for example, ALF coefficient storage buffer 215 in FIG. 7 that stores the coefficient of the adaptive loop filter can be managed in each view (same view). Further, in each view (different view), it is possible to share management of buffers that store adaptive loop filter coefficients in other views.
  • the management of the buffer that stores the coefficient of the adaptive loop filter in the base view is shared by at least one non-base view.
  • each view (same view)
  • a buffer index of a buffer for storing the coefficient of the adaptive loop filter can be set.
  • each view (different view) can share a buffer index set in another view.
  • other adaptive loop filter parameters such as a filter coefficient and an on / off flag of an adaptive loop filter for each LCU can also be shared.
  • the buffer index set in the base view is used in at least one non-base view.
  • FIG. 12 is a diagram illustrating a multi-view image encoding apparatus that performs the above-described multi-view image encoding.
  • the multi-view image encoding device 600 includes an encoding unit 601, an encoding unit 602, and a multiplexing unit 603.
  • the encoding unit 601 encodes the base view image and generates a base view image encoded stream.
  • the encoding unit 602 encodes the non-base view image and generates a non-base view image encoded stream.
  • the multiplexing unit 603 multiplexes the base view image encoded stream generated by the encoding unit 601 and the non-base view image encoded stream generated by the encoding unit 602 to generate a multi-view image encoded stream. To do.
  • the image encoding device 11 (FIG. 1) can be applied to the encoding unit 601 and the encoding unit 602 of the multi-view image encoding device 600.
  • the multi-view image encoding apparatus 600 sets and transmits the buffer index set by the encoding unit 601 and the buffer index set by the encoding unit 602.
  • the buffer index set by the encoding unit 601 as described above may be set and transmitted so as to be shared by the encoding unit 601 and the encoding unit 602.
  • the buffer index set by the encoding unit 602 may be set and transmitted so as to be shared by the encoding unit 601 and the encoding unit 602.
  • FIG. 13 is a diagram illustrating a multi-view image decoding apparatus that performs the above-described multi-view image decoding.
  • the multi-view image decoding apparatus 610 includes a demultiplexing unit 611, a decoding unit 612, and a decoding unit 613.
  • the demultiplexing unit 611 demultiplexes the multi-view image encoded stream in which the base view image encoded stream and the non-base view image encoded stream are multiplexed, and the base view image encoded stream and the non-base view image The encoded stream is extracted.
  • the decoding unit 612 decodes the base view image encoded stream extracted by the demultiplexing unit 611 to obtain a base view image.
  • the decoding unit 613 decodes the non-base view image encoded stream extracted by the demultiplexing unit 611 to obtain a non-base view image.
  • the image decoding device 51 (FIG. 3) can be applied to the decoding unit 612 and the decoding unit 613 of the multi-view image decoding device 610.
  • the multi-view image decoding apparatus 610 performs processing using the buffer index set by the encoding unit 601 and decoded by the decoding unit 612 and the buffer index set by the encoding unit 602 and decoded by the decoding unit 613. Do.
  • the buffer index set by the encoding unit 601 (or encoding 602) as described above may be set and transmitted so as to be shared by the encoding unit 601 and the encoding unit 602. .
  • processing is performed using the buffer index set by the encoding unit 601 (or encoding 602) and decoded by the decoding unit 612 (or decoding unit 613).
  • FIG. 14 shows an example of a multi-view image encoding method.
  • the hierarchical image includes images of a plurality of layers (resolutions), and an image of a predetermined one layer among the plurality of resolutions is designated as a base layer image. Images in each layer other than the base layer image are treated as non-base layer images.
  • the management of the buffer for storing the coefficient of the adaptive loop filter in the base layer is shared by at least one non-base layer.
  • each layer (same layer), a buffer index of a buffer for storing the coefficient of the adaptive loop filter can be set.
  • each layer (different layers) can share a buffer index set in another view.
  • the buffer index set in the base layer is used in at least one non-base layer.
  • other adaptive loop filter parameters such as a filter coefficient and an on / off flag of an adaptive loop filter for each LCU can also be shared.
  • FIG. 15 is a diagram illustrating a hierarchical image encoding apparatus that performs the above-described hierarchical image encoding.
  • the hierarchical image encoding device 620 includes an encoding unit 621, an encoding unit 622, and a multiplexing unit 623.
  • the encoding unit 621 encodes the base layer image and generates a base layer image encoded stream.
  • the encoding unit 622 encodes the non-base layer image and generates a non-base layer image encoded stream.
  • the multiplexing unit 623 multiplexes the base layer image encoded stream generated by the encoding unit 621 and the non-base layer image encoded stream generated by the encoding unit 622 to generate a hierarchical image encoded stream. .
  • the image encoding device 11 (FIG. 1) can be applied to the encoding unit 621 and the encoding unit 622 of the hierarchical image encoding device 620.
  • the hierarchical image encoding device 620 sets and transmits the buffer index set by the encoding unit 621 and the buffer index set by the encoding unit 622.
  • the buffer index set by the encoding unit 621 as described above may be set and transmitted so as to be shared by the encoding unit 621 and the encoding unit 622.
  • the buffer index set by the encoding unit 622 may be set and transmitted so as to be shared by the encoding unit 621 and the encoding unit 622.
  • the demultiplexing unit 631 demultiplexes the hierarchical image encoded stream in which the base layer image encoded stream and the non-base layer image encoded stream are multiplexed, and the base layer image encoded stream and the non-base layer image code Stream.
  • the decoding unit 632 decodes the base layer image encoded stream extracted by the demultiplexing unit 631 to obtain a base layer image.
  • the decoding unit 633 decodes the non-base layer image encoded stream extracted by the demultiplexing unit 631 to obtain a non-base layer image.
  • the image decoding device 51 (FIG. 4) can be applied to the decoding unit 632 and the decoding unit 633 of the hierarchical image decoding device 630.
  • the hierarchical image decoding apparatus 630 performs processing using the buffer index set by the encoding unit 621, the buffer index decoded by the decoding unit 632, and the encoding unit 622, and the decoding unit 633 uses the buffer index.
  • the buffer index set by the encoding unit 621 (or encoding 622) as described above may be set and transmitted so as to be shared by the encoding unit 621 and the encoding unit 622.
  • processing is performed using the buffer index set by encoding unit 621 (or encoding 622) and decoded by decoding unit 632 (or decoding unit 633).
  • the series of processes described above can be executed by hardware or can be executed by software.
  • a program constituting the software is installed in the computer.
  • the computer includes, for example, a general-purpose personal computer capable of executing various functions by installing various programs by installing a computer incorporated in dedicated hardware.
  • FIG. 17 is a block diagram showing an example of the hardware configuration of a computer that executes the above-described series of processing by a program.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • an input / output interface 805 is connected to the bus 804.
  • An input unit 806, an output unit 807, a storage unit 808, a communication unit 809, and a drive 810 are connected to the input / output interface 805.
  • the input unit 806 includes a keyboard, a mouse, a microphone, and the like.
  • the output unit 807 includes a display, a speaker, and the like.
  • the storage unit 808 includes a hard disk, a nonvolatile memory, and the like.
  • the communication unit 809 includes a network interface or the like.
  • the drive 810 drives a removable medium 811 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 801 loads the program stored in the storage unit 808 to the RAM 803 via the input / output interface 805 and the bus 804 and executes the program, for example. Is performed.
  • the program executed by the computer 800 can be provided by being recorded in, for example, a removable medium 811 as a package medium or the like.
  • the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
  • the program can be installed in the storage unit 808 via the input / output interface 805 by attaching the removable medium 811 to the drive 810.
  • the program can be received by the communication unit 809 via a wired or wireless transmission medium and installed in the storage unit 808.
  • the program can be installed in the ROM 802 or the storage unit 808 in advance.
  • the program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
  • the step of describing the program recorded on the recording medium is not limited to the processing performed in chronological order according to the described order, but may be performed in parallel or It also includes processes that are executed individually.
  • system represents the entire apparatus composed of a plurality of devices (apparatuses).
  • the configuration described as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units).
  • the configurations described above as a plurality of devices (or processing units) may be combined into a single device (or processing unit).
  • a configuration other than that described above may be added to the configuration of each device (or each processing unit).
  • a part of the configuration of a certain device (or processing unit) may be included in the configuration of another device (or other processing unit). . That is, the present technology is not limited to the above-described embodiment, and various modifications can be made without departing from the gist of the present technology.
  • An image encoding device and an image decoding device include a transmitter or a receiver in optical broadcasting, satellite broadcasting, cable broadcasting such as cable TV, distribution on the Internet, and distribution to terminals by cellular communication, etc.
  • the present invention can be applied to various electronic devices such as a recording device that records an image on a medium such as a magnetic disk and a flash memory, or a playback device that reproduces an image from these storage media.
  • a recording device that records an image on a medium such as a magnetic disk and a flash memory
  • a playback device that reproduces an image from these storage media.
  • FIG. 18 shows an example of a schematic configuration of a television apparatus to which the above-described embodiment is applied.
  • the television apparatus 900 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, a display unit 906, an audio signal processing unit 907, a speaker 908, an external interface 909, a control unit 910, a user interface 911, And a bus 912.
  • Tuner 902 extracts a signal of a desired channel from a broadcast signal received via antenna 901, and demodulates the extracted signal. Then, the tuner 902 outputs the encoded bit stream obtained by the demodulation to the demultiplexer 903. In other words, the tuner 902 serves as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
  • the demultiplexer 903 separates the video stream and audio stream of the viewing target program from the encoded bit stream, and outputs each separated stream to the decoder 904. Further, the demultiplexer 903 extracts auxiliary data such as EPG (Electronic Program Guide) from the encoded bit stream, and supplies the extracted data to the control unit 910. Note that the demultiplexer 903 may perform descrambling when the encoded bit stream is scrambled.
  • EPG Electronic Program Guide
  • the decoder 904 decodes the video stream and audio stream input from the demultiplexer 903. Then, the decoder 904 outputs the video data generated by the decoding process to the video signal processing unit 905. In addition, the decoder 904 outputs audio data generated by the decoding process to the audio signal processing unit 907.
  • the video signal processing unit 905 reproduces the video data input from the decoder 904 and causes the display unit 906 to display the video.
  • the video signal processing unit 905 may cause the display unit 906 to display an application screen supplied via a network.
  • the video signal processing unit 905 may perform additional processing such as noise removal on the video data according to the setting.
  • the video signal processing unit 905 may generate a GUI (Graphical User Interface) image such as a menu, a button, or a cursor, and superimpose the generated image on the output image.
  • GUI Graphic User Interface
  • the display unit 906 is driven by a drive signal supplied from the video signal processing unit 905, and displays an image on a video screen of a display device (for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.
  • a display device for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.
  • the audio signal processing unit 907 performs reproduction processing such as D / A conversion and amplification on the audio data input from the decoder 904, and outputs audio from the speaker 908.
  • the audio signal processing unit 907 may perform additional processing such as noise removal on the audio data.
  • the external interface 909 is an interface for connecting the television apparatus 900 to an external device or a network.
  • a video stream or an audio stream received via the external interface 909 may be decoded by the decoder 904. That is, the external interface 909 also has a role as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
  • the control unit 910 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, EPG data, data acquired via a network, and the like.
  • the program stored in the memory is read and executed by the CPU when the television apparatus 900 is activated.
  • the CPU executes the program to control the operation of the television device 900 according to an operation signal input from the user interface 911, for example.
  • the user interface 911 is connected to the control unit 910.
  • the user interface 911 includes, for example, buttons and switches for the user to operate the television device 900, a remote control signal receiving unit, and the like.
  • the user interface 911 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 910.
  • the bus 912 connects the tuner 902, the demultiplexer 903, the decoder 904, the video signal processing unit 905, the audio signal processing unit 907, the external interface 909, and the control unit 910 to each other.
  • the decoder 904 has the function of the image decoding apparatus according to the above-described embodiment. Thereby, the transmission cost of the filter coefficient can be reduced when the television device 900 decodes an image.
  • FIG. 19 shows an example of a schematic configuration of a mobile phone to which the above-described embodiment is applied.
  • a mobile phone 920 includes an antenna 921, a communication unit 922, an audio codec 923, a speaker 924, a microphone 925, a camera unit 926, an image processing unit 927, a demultiplexing unit 928, a recording / reproducing unit 929, a display unit 930, a control unit 931, an operation A portion 932 and a bus 933.
  • the antenna 921 is connected to the communication unit 922.
  • the speaker 924 and the microphone 925 are connected to the audio codec 923.
  • the operation unit 932 is connected to the control unit 931.
  • the bus 933 connects the communication unit 922, the audio codec 923, the camera unit 926, the image processing unit 927, the demultiplexing unit 928, the recording / reproducing unit 929, the display unit 930, and the control unit 931 to each other.
  • the mobile phone 920 has various operation modes including a voice call mode, a data communication mode, a shooting mode, and a videophone mode, and is used for sending and receiving voice signals, sending and receiving e-mail or image data, taking images, and recording data. Perform the action.
  • the analog voice signal generated by the microphone 925 is supplied to the voice codec 923.
  • the audio codec 923 converts an analog audio signal into audio data, A / D converts the compressed audio data, and compresses it. Then, the audio codec 923 outputs the compressed audio data to the communication unit 922.
  • the communication unit 922 encodes and modulates the audio data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • the communication unit 922 demodulates and decodes the received signal to generate audio data, and outputs the generated audio data to the audio codec 923.
  • the audio codec 923 decompresses the audio data and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • the control unit 931 generates character data constituting the e-mail in response to an operation by the user via the operation unit 932.
  • the control unit 931 causes the display unit 930 to display characters.
  • the control unit 931 generates e-mail data in response to a transmission instruction from the user via the operation unit 932, and outputs the generated e-mail data to the communication unit 922.
  • the communication unit 922 encodes and modulates email data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • the communication unit 922 demodulates and decodes the received signal to restore the email data, and outputs the restored email data to the control unit 931.
  • the control unit 931 displays the content of the electronic mail on the display unit 930 and stores the electronic mail data in the storage medium of the recording / reproducing unit 929.
  • the recording / reproducing unit 929 has an arbitrary readable / writable storage medium.
  • the storage medium may be a built-in storage medium such as RAM or flash memory, and is externally mounted such as a hard disk, magnetic disk, magneto-optical disk, optical disk, USB (Unallocated Space Space Bitmap) memory, or memory card. It may be a storage medium.
  • the camera unit 926 images a subject to generate image data, and outputs the generated image data to the image processing unit 927.
  • the image processing unit 927 encodes the image data input from the camera unit 926 and stores the encoded stream in the storage medium of the storage / playback unit 929.
  • the demultiplexing unit 928 multiplexes the video stream encoded by the image processing unit 927 and the audio stream input from the audio codec 923, and the multiplexed stream is the communication unit 922. Output to.
  • the communication unit 922 encodes and modulates the stream and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • These transmission signal and reception signal may include an encoded bit stream.
  • the communication unit 922 demodulates and decodes the received signal to restore the stream, and outputs the restored stream to the demultiplexing unit 928.
  • the demultiplexing unit 928 separates the video stream and the audio stream from the input stream, and outputs the video stream to the image processing unit 927 and the audio stream to the audio codec 923.
  • the image processing unit 927 decodes the video stream and generates video data.
  • the video data is supplied to the display unit 930, and a series of images is displayed on the display unit 930.
  • the audio codec 923 decompresses the audio stream and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • the image processing unit 927 has the functions of the image encoding device and the image decoding device according to the above-described embodiment. Thereby, the transmission cost of the filter coefficient can be reduced when the mobile phone 920 encodes and decodes an image.
  • FIG. 20 shows an example of a schematic configuration of a recording / reproducing apparatus to which the above-described embodiment is applied.
  • the recording / reproducing device 940 encodes audio data and video data of a received broadcast program and records the encoded data on a recording medium.
  • the recording / reproducing device 940 may encode audio data and video data acquired from another device and record them on a recording medium, for example.
  • the recording / reproducing device 940 reproduces data recorded on the recording medium on a monitor and a speaker, for example, in accordance with a user instruction. At this time, the recording / reproducing device 940 decodes the audio data and the video data.
  • the recording / reproducing apparatus 940 includes a tuner 941, an external interface 942, an encoder 943, an HDD (Hard Disk Drive) 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) 948, a control unit 949, and a user interface. 950.
  • Tuner 941 extracts a signal of a desired channel from a broadcast signal received via an antenna (not shown), and demodulates the extracted signal. Then, the tuner 941 outputs the encoded bit stream obtained by the demodulation to the selector 946. That is, the tuner 941 has a role as a transmission unit in the recording / reproducing apparatus 940.
  • the external interface 942 is an interface for connecting the recording / reproducing apparatus 940 to an external device or a network.
  • the external interface 942 may be, for example, an IEEE1394 interface, a network interface, a USB interface, or a flash memory interface.
  • video data and audio data received via the external interface 942 are input to the encoder 943. That is, the external interface 942 serves as a transmission unit in the recording / reproducing device 940.
  • the encoder 943 encodes video data and audio data when the video data and audio data input from the external interface 942 are not encoded. Then, the encoder 943 outputs the encoded bit stream to the selector 946.
  • the HDD 944 records an encoded bit stream in which content data such as video and audio is compressed, various programs, and other data on an internal hard disk. Further, the HDD 944 reads out these data from the hard disk when reproducing video and audio.
  • the disk drive 945 performs recording and reading of data to and from the mounted recording medium.
  • the recording medium mounted on the disk drive 945 is, for example, a DVD disk (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, etc.) or a Blu-ray (registered trademark) disk. It may be.
  • the selector 946 selects an encoded bit stream input from the tuner 941 or the encoder 943 when recording video and audio, and outputs the selected encoded bit stream to the HDD 944 or the disk drive 945. In addition, the selector 946 outputs the encoded bit stream input from the HDD 944 or the disk drive 945 to the decoder 947 during video and audio reproduction.
  • the decoder 947 decodes the encoded bit stream and generates video data and audio data. Then, the decoder 947 outputs the generated video data to the OSD 948. The decoder 904 outputs the generated audio data to an external speaker.
  • OSD 948 reproduces the video data input from the decoder 947 and displays the video. Further, the OSD 948 may superimpose a GUI image such as a menu, a button, or a cursor on the video to be displayed.
  • the control unit 949 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, and the like.
  • the program stored in the memory is read and executed by the CPU when the recording / reproducing apparatus 940 is activated, for example.
  • the CPU controls the operation of the recording / reproducing apparatus 940 in accordance with an operation signal input from the user interface 950, for example, by executing the program.
  • the user interface 950 is connected to the control unit 949.
  • the user interface 950 includes, for example, buttons and switches for the user to operate the recording / reproducing device 940, a remote control signal receiving unit, and the like.
  • the user interface 950 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 949.
  • the encoder 943 has the function of the image encoding apparatus according to the above-described embodiment.
  • the decoder 947 has the function of the image decoding apparatus according to the above-described embodiment. Thereby, the transmission cost of the filter coefficient can be reduced when the image is encoded and decoded by the recording / reproducing apparatus 940.
  • FIG. 21 illustrates an example of a schematic configuration of an imaging apparatus to which the above-described embodiment is applied.
  • the imaging device 960 images a subject to generate an image, encodes the image data, and records it on a recording medium.
  • the imaging device 960 includes an optical block 961, an imaging unit 962, a signal processing unit 963, an image processing unit 964, a display unit 965, an external interface 966, a memory 967, a media drive 968, an OSD 969, a control unit 970, a user interface 971, and a bus. 972.
  • the optical block 961 is connected to the imaging unit 962.
  • the imaging unit 962 is connected to the signal processing unit 963.
  • the display unit 965 is connected to the image processing unit 964.
  • the user interface 971 is connected to the control unit 970.
  • the bus 972 connects the image processing unit 964, the external interface 966, the memory 967, the media drive 968, the OSD 969, and the control unit 970 to each other.
  • the optical block 961 includes a focus lens and a diaphragm mechanism.
  • the optical block 961 forms an optical image of the subject on the imaging surface of the imaging unit 962.
  • the imaging unit 962 includes an image sensor such as a CCD (Charge-Coupled Device) or a CMOS (Complementary Metal-Oxide Semiconductor), and converts an optical image formed on the imaging surface into an image signal as an electrical signal by photoelectric conversion. Then, the imaging unit 962 outputs the image signal to the signal processing unit 963.
  • CCD Charge-Coupled Device
  • CMOS Complementary Metal-Oxide Semiconductor
  • the signal processing unit 963 performs various camera signal processing such as knee correction, gamma correction, and color correction on the image signal input from the imaging unit 962.
  • the signal processing unit 963 outputs the image data after the camera signal processing to the image processing unit 964.
  • the image processing unit 964 encodes the image data input from the signal processing unit 963 and generates encoded data. Then, the image processing unit 964 outputs the generated encoded data to the external interface 966 or the media drive 968. The image processing unit 964 also decodes encoded data input from the external interface 966 or the media drive 968 to generate image data. Then, the image processing unit 964 outputs the generated image data to the display unit 965. In addition, the image processing unit 964 may display the image by outputting the image data input from the signal processing unit 963 to the display unit 965. Further, the image processing unit 964 may superimpose display data acquired from the OSD 969 on an image output to the display unit 965.
  • the OSD 969 generates a GUI image such as a menu, a button, or a cursor, and outputs the generated image to the image processing unit 964.
  • the external interface 966 is configured as a USB input / output terminal, for example.
  • the external interface 966 connects the imaging device 960 and a printer, for example, when printing an image.
  • a drive is connected to the external interface 966 as necessary.
  • a removable medium such as a magnetic disk or an optical disk is attached to the drive, and a program read from the removable medium can be installed in the imaging device 960.
  • the external interface 966 may be configured as a network interface connected to a network such as a LAN or the Internet. That is, the external interface 966 has a role as a transmission unit in the imaging device 960.
  • the recording medium mounted on the media drive 968 may be any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory.
  • a recording medium may be fixedly mounted on the media drive 968, and a non-portable storage unit such as an internal hard disk drive or an SSD (Solid State Drive) may be configured.
  • the control unit 970 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, and the like.
  • the program stored in the memory is read and executed by the CPU when the imaging device 960 is activated, for example.
  • the CPU controls the operation of the imaging device 960 according to an operation signal input from the user interface 971 by executing the program.
  • the user interface 971 is connected to the control unit 970.
  • the user interface 971 includes, for example, buttons and switches for the user to operate the imaging device 960.
  • the user interface 971 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 970.
  • the image processing unit 964 has the functions of the image encoding device and the image decoding device according to the above-described embodiment. Thereby, the transmission cost of the filter coefficient can be reduced when encoding and decoding an image in the imaging device 960.
  • the method for transmitting such information is not limited to such an example.
  • these pieces of information may be transmitted or recorded as separate data associated with the encoded bitstream without being multiplexed into the encoded bitstream.
  • the term “associate” means that an image (which may be a part of an image such as a slice or a block) included in the bitstream and information corresponding to the image can be linked at the time of decoding. Means. That is, information may be transmitted on a transmission path different from that of the image (or bit stream).
  • Information may be recorded on a recording medium (or another recording area of the same recording medium) different from the image (or bit stream). Furthermore, the information and the image (or bit stream) may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part of the frame.
  • this technique can also take the following structures.
  • a decoding unit that decodes an encoded stream to generate an image; For the image generated by the decoding unit, using a filter coefficient corresponding to the index of the filter coefficient, a filter unit that performs the filter for each maximum coding unit;
  • An image processing apparatus comprising: a management unit that manages a history when the filter unit refers to the filter coefficient using the index.
  • the apparatus further includes a reading unit that reads out the filter coefficient from a buffer that stores the filter coefficient using the index of the filter coefficient, The image processing apparatus according to (1), wherein the management unit stores the filter coefficient read by the reading unit in an area that is frequently referred to the buffer.
  • a receiving unit that receives the filter coefficient is further provided, The management unit performs a FIFO process on the buffer using the filter coefficient received by the receiving unit when there is no free space in the buffer.
  • Image processing device The image processing device according to any one of (1) to (7), further including a buffer that stores the filter coefficient.
  • An image processing apparatus Decoding the encoded stream to generate an image, For the generated image, using the filter coefficient corresponding to the index of the filter coefficient, applying the filter for each maximum coding unit, An image processing method for managing a history when referring to the filter coefficient using the index.
  • a filter processing unit that applies the filter for each maximum coding unit using a filter coefficient corresponding to an index of a filter coefficient for an image that has been locally decoded when the image is encoded;
  • An encoding unit that encodes the image using the image subjected to the filter by the filter unit and generates an encoded stream;
  • An image processing apparatus comprising: a management unit that manages a history when the filter unit refers to the filter coefficient using the index.
  • the apparatus further includes a reading unit that reads out the filter coefficient from a buffer that stores the filter coefficient by using the index of the filter coefficient.
  • 15) The image processing device according to any one of (12) to (14), wherein an index value of the filter coefficient is set to be decreased as the use frequency of the filter coefficient is increased.
  • the image processing device according to any one of (12) to (18), wherein the filter unit performs a filter using a coefficient that minimizes an error from the original image.
  • the image processing apparatus is Using the filter coefficient corresponding to the index of the filter coefficient for the image subjected to local decoding processing when encoding the image, the filter is applied for each maximum coding unit, Encode the image using the filtered image to generate an encoded stream; An image processing method for managing a history when referring to the filter coefficient using the index.

Landscapes

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

Abstract

The present invention pertains to an image processing device and method with which the cost of transmitting filter coefficients can be reduced. When a filter coefficient stored in the latest largest coding unit (LCU) is referenced, the referenced filter coefficient is moved to a high priority area in an adaptive loop filter (ALF) coefficient buffer. When a transmitted filter coefficient in the latest LCU is used, if no free space is available, FIFO processing is carried out in the ALF coefficient buffer by using the filter coefficient. Furthermore, when the transmitted filter coefficient in the latest LCU is used, if free space is available, the filter coefficient is stored in high priority free space among the free space. The present invention can be used in images processing devices, for example.

Description

画像処理装置および方法Image processing apparatus and method
 本開示は、画像処理装置および方法に関し、特に、符号化または復号におけるフィルタのフィルタ係数の伝送コストを下げることができるようにした画像処理装置および方法に関する。 The present disclosure relates to an image processing apparatus and method, and more particularly, to an image processing apparatus and method that can reduce transmission cost of filter coefficients of a filter in encoding or decoding.
 近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮する符号化方式を採用して画像を圧縮符号する装置が普及しつつある。この符号化方式には、例えば、MPEG(Moving Picture Experts Group)やH.264及びMPEG-4 Part10 (Advanced Video Coding、以下H.264/AVCと記す)などがある。 In recent years, image information has been handled as digital data, and at that time, for the purpose of efficient transmission and storage of information, encoding is performed by orthogonal transform such as discrete cosine transform and motion compensation using redundancy unique to image information. An apparatus that employs a method to compress and code an image is becoming widespread. Examples of this encoding method include MPEG (Moving Picture Experts Group) and H.264. H.264 and MPEG-4 Part 10 (Advanced Video Coding, hereinafter referred to as H.264 / AVC).
 そして、現在、H.264/AVCより更なる符号化効率の向上を目的として、ITU-TとISO/IECとの共同の標準化団体であるJCTVC (Joint Collaboration Team - Video Coding) により、HEVC (High Efficiency Video Coding) と呼ばれる符号化方式の標準化が進められている(例えば、非特許文献1参照)。 And now H. It is called HEVC (High Efficiency) Video (Coding) by JCTVC (Joint Collaboration (Team-Video Coding)), which is a joint standardization organization of ITU-T and ISO / IEC, for the purpose of further improving encoding efficiency than H.264 / AVC. Standardization of the encoding method is underway (for example, see Non-Patent Document 1).
 現時点におけるHEVCのドラフトでは、適応ループフィルタが採用されている。適応ループフィルタにおいては、1ピクチャにつき16セットのフィルタ係数が伝送される。このフィルタ係数は、予測モード情報、動きベクトル情報、およびDCT係数情報などのピクチャの符号化情報より前に伝送される。 The adaptive loop filter is adopted in the draft of HEVC at present. In the adaptive loop filter, 16 sets of filter coefficients are transmitted per picture. This filter coefficient is transmitted prior to picture coding information such as prediction mode information, motion vector information, and DCT coefficient information.
 例えば、ブロックベースの場合、当該領域の画素の分散により適用するフィルタ係数が決定され、リジョンベースの場合、フラグにより適用するフィルタが決定される。 For example, in the case of block base, the filter coefficient to be applied is determined by the dispersion of pixels in the region, and in the case of region base, the filter to be applied is determined by a flag.
 しかしながら、HEVCのドラフトにおける適応ループフィルタにおいては、最適なフィルタ係数を求めるために、1画面分のリコンストラクト画像(フィルタ前画像)と原画像の相関を計算する必要があり、計算コストが大きかった。 However, in the adaptive loop filter in the HEVC draft, it is necessary to calculate the correlation between the reconstructed image for one screen (pre-filter image) and the original image in order to obtain the optimum filter coefficient, and the calculation cost is high. .
 また、フィルタ係数の伝送タイミングが符号化情報の前であるので、符号化側で、Video Coding Layer情報との伝送タイミングの入れ替えが必要になり、VCL情報(画像情報)用のバッファが必要であった。 In addition, since the transmission timing of the filter coefficient is before the encoding information, it is necessary to replace the transmission timing with the Video Coding Layer information on the encoding side, and a buffer for VCL information (image information) is necessary. It was.
 そこで、非特許文献2の適応ループフィルタにおいては、フィルタ係数またはインデックスを、最大の符号化単位であるLCU単位で復号側に送るという提案が行われている。 Therefore, in the adaptive loop filter of Non-Patent Document 2, a proposal has been made to send a filter coefficient or index to the decoding side in units of LCU which is the maximum encoding unit.
 この提案では、復号側において、フィルタ係数は伝送された順にフィルタ係数バッファに格納される。バッファ内にあるフィルタ係数は、インデックスにより参照される。また、フィルタ係数バッファは、FIFOで管理されており、バッファサイズより以前に伝送された係数は破棄される。 In this proposal, on the decoding side, the filter coefficients are stored in the filter coefficient buffer in the order of transmission. The filter coefficients present in the buffer are referenced by an index. The filter coefficient buffer is managed by FIFO, and the coefficients transmitted before the buffer size are discarded.
 上述したように、非特許文献2に記載のフィルタ係数バッファは、FIFOで管理されているので、過去の伝送されたフィルタ係数は、使用頻度が高い低いに関らず、フィルタ係数バッファから破棄されてしまうことがあった。この場合、フィルタに用いられるフィルタ係数が、過去に伝送された係数と同じフィルタ係数であっても、再度伝送する必要が生じ、伝送コストがかかってしまっていた。 As described above, since the filter coefficient buffer described in Non-Patent Document 2 is managed by FIFO, past transmitted filter coefficients are discarded from the filter coefficient buffer regardless of whether the frequency of use is low. There was a case. In this case, even if the filter coefficient used for the filter is the same as the coefficient transmitted in the past, it is necessary to transmit again, and transmission cost is increased.
 本開示は、このような状況に鑑みてなされたものであり、符号化または復号におけるフィルタのフィルタ係数の伝送コストを下げることができる。 The present disclosure has been made in view of such a situation, and can reduce the transmission cost of the filter coefficient of the filter in encoding or decoding.
 本開示の第1の側面の画像処理装置は、符号化ストリームを復号処理して画像を生成する復号部と、前記復号部により生成された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎にフィルタを施すフィルタ部と、前記インデックスを用いて、前記フィルタ部により前記フィルタ係数を参照する際の履歴を管理する管理部とを備える。  An image processing device according to a first aspect of the present disclosure includes a decoding unit that decodes an encoded stream to generate an image, and a filter coefficient corresponding to an index of a filter coefficient for the image generated by the decoding unit. And a management unit that manages a history of referring to the filter coefficient by the filter unit using the index. *
 前記フィルタ係数のインデックスを用いて、前記フィルタ係数を格納するバッファから、前記フィルタ係数を読み出す読み出し部をさらに備え、前記管理部は、前記読み出し部により読み出されたフィルタ係数を、前記バッファに対して参照される頻度が高い領域に格納することができる。 A read unit that reads the filter coefficient from a buffer that stores the filter coefficient using the index of the filter coefficient is further provided, and the management unit sends the filter coefficient read by the read unit to the buffer. Can be stored in an area that is frequently referenced.
 前記管理部は、参照される頻度が高いフィルタ係数を、参照される頻度が低いフィルタ係数に比べて、前記バッファに長く格納することができる。 The management unit can store a filter coefficient that is frequently referred to in the buffer longer than a filter coefficient that is frequently referred to.
 前記フィルタ係数のインデックスの値は、前記フィルタ係数の使用頻度が高くなるのに応じて小さくなるように設定される。 The index value of the filter coefficient is set so as to decrease as the use frequency of the filter coefficient increases.
 前記管理部は、最大符号化単位よりも大きい範囲であって、水平ラインの閉じた範囲毎に、前記バッファをリセットすることができる。 The management unit can reset the buffer for each range that is larger than the maximum encoding unit and closed by a horizontal line.
 前記管理部は、前記フィルタ係数を、前記バッファの空き領域のうち最も優先順位の高い領域に格納することができる。 The management unit can store the filter coefficient in an area having the highest priority among the free areas of the buffer.
 前記フィルタ係数を受け取る受け取り部をさらに備え、前記バッファ管理部は、前記バッファに空き領域がない場合、前記受け取り部により受け取られたフィルタ係数を用いて、前記バッファに対してFIFO処理を行うことができる。 The buffer management unit may further include a receiving unit that receives the filter coefficient, and the buffer management unit may perform a FIFO process on the buffer using the filter coefficient received by the receiving unit when there is no free space in the buffer. it can.
 前記フィルタ係数を格納するバッファをさらに備えることができる。 A buffer for storing the filter coefficient can be further provided.
 前記フィルタ部は、適応オフセット処理された画像に対して、フィルタを施すことができる。 The filter unit can apply a filter to the image subjected to the adaptive offset process.
 前記フィルタ部は、原画像との誤差を最小にする係数を用いるフィルタを施すことができる。 The filter unit can perform a filter using a coefficient that minimizes an error from the original image.
 本開示の第1の側面の画像処理方法は、画像処理装置が、符号化ストリームを復号処理して画像を生成し、生成された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎にフィルタを施し、前記インデックスを用いて、前記フィルタ係数を参照する際の履歴を管理する。 In the image processing method according to the first aspect of the present disclosure, an image processing apparatus generates an image by decoding an encoded stream, and uses a filter coefficient corresponding to an index of a filter coefficient for the generated image. Thus, a filter is applied to each maximum coding unit, and a history of referring to the filter coefficient is managed using the index.
 本開示の第2の側面の画像処理装置は、画像を符号化する際にローカル復号処理された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎に前記フィルタを施すフィルタ処理部と、前記フィルタ部により前記フィルタが施された画像を用いて、前記画像を符号化し、符号化ストリームを生成する符号化部と、インデックスを用いて、前記フィルタ部により前記フィルタ係数を参照する際の履歴を管理する管理部とを備える。 The image processing apparatus according to the second aspect of the present disclosure targets an image that has been locally decoded when encoding an image, and uses the filter coefficient corresponding to the index of the filter coefficient for each maximum encoding unit. A filter processing unit that performs filtering; an encoding unit that encodes the image using the image that has been subjected to the filter by the filter unit; and generates an encoded stream; And a management unit for managing a history when referring to the filter coefficient.
 前記フィルタ係数のインデックスを用いて、前記フィルタ係数を格納するバッファから、前記フィルタ係数を読み出す読み出し部をさらに備え、前記管理部は、前記読み出し部により読み出されたフィルタ係数を、前記バッファに対して参照される頻度が高い領域に格納することができる。 A read unit that reads the filter coefficient from a buffer that stores the filter coefficient using the index of the filter coefficient is further provided, and the management unit sends the filter coefficient read by the read unit to the buffer. Can be stored in an area that is frequently referenced.
 前記管理部は、参照される頻度が高いフィルタ係数を、参照される頻度が低いフィルタ係数に比べて、前記バッファに長く格納することができる。 The management unit can store a filter coefficient that is frequently referred to in the buffer longer than a filter coefficient that is frequently referred to.
 前記フィルタ係数のインデックスの値は、前記フィルタ係数の使用頻度が高くなるのに応じて小さくなるように設定される。 The index value of the filter coefficient is set so as to decrease as the use frequency of the filter coefficient increases.
 前記管理部は、最大符号化単位よりも大きい範囲であって、水平ラインの閉じた範囲毎に、前記バッファをリセットすることができる。 The management unit can reset the buffer for each range that is larger than the maximum encoding unit and closed by a horizontal line.
 前記管理部は、前記フィルタ係数を、前記バッファの空き領域のうち最も優先順位の高い領域に領域へ格納することができる。 The management unit can store the filter coefficient in an area having the highest priority among the empty areas of the buffer.
 前記フィルタ係数を決定するフィルタ係数決定部をさらに備え、前記管理部は、前記バッファに空き領域がない場合、前記フィルタ係数決定部により決定されたフィルタ係数を用いて、前記バッファに対してFIFO処理を行うことができる。 A filter coefficient determining unit that determines the filter coefficient; and when the buffer has no free space, the management unit performs a FIFO process on the buffer using the filter coefficient determined by the filter coefficient determining unit. It can be performed.
 前記フィルタ部は、原画像との誤差を最小にする係数を用いるフィルタを施すことができる。 The filter unit can perform a filter using a coefficient that minimizes an error from the original image.
 本開示の第2の側面の画像処理方法は、画像処理装置が、画像を符号化する際にローカル復号処理された画像を対象として、前フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎に前記フィルタを施し、前記フィルタが施された画像を用いて、前記画像を符号化し、符号化ストリームを生成し、前記インデックスを用いて、前記フィルタ係数を参照する際の履歴を管理する。 In the image processing method according to the second aspect of the present disclosure, an image processing apparatus uses a filter coefficient corresponding to an index of a previous filter coefficient as a target for an image subjected to local decoding processing when an image is encoded. Apply the filter for each encoding unit, encode the image using the filtered image, generate an encoded stream, and use the index to refer to the history of referring to the filter coefficient. to manage.
 本開示の第1の側面においては、符号化ストリームを復号処理して画像が生成され、生成された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎に前記フィルタが施される。そして、前記インデックスを用いて、前記フィルタ係数を参照する際の履歴が管理される。 In the first aspect of the present disclosure, an image is generated by decoding an encoded stream, and a filter coefficient corresponding to an index of the filter coefficient is used for the generated image as a target for each maximum encoding unit. The filter is applied. Then, a history when referring to the filter coefficient is managed using the index.
 本開示の第2の側面においては、画像を符号化する際にローカル復号処理された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎に前記フィルタが施され、前記フィルタが施された画像を用いて、前記画像が符号化され、符号化ストリームが生成される。そして、前記インデックスを用いて、前記フィルタ係数を参照する際の履歴が管理される。 In the second aspect of the present disclosure, the filter is applied to each maximum coding unit using a filter coefficient corresponding to the index of the filter coefficient for an image that has been locally decoded when the image is encoded. Then, the image is encoded using the filtered image, and an encoded stream is generated. Then, a history when referring to the filter coefficient is managed using the index.
 なお、上述の画像処理装置は、独立した装置であっても良いし、1つの画像符号化装置または画像復号装置を構成している内部ブロックであってもよい。 Note that the above-described image processing apparatus may be an independent apparatus, or may be an internal block constituting one image encoding apparatus or image decoding apparatus.
 本開示の第1側面によれば、画像を復号することができる。特に、フィルタ係数の伝送コストを下げることができる。 According to the first aspect of the present disclosure, an image can be decoded. In particular, the transmission cost of the filter coefficient can be reduced.
 本開示の第2の側面によれば、画像を符号化することができる。特に、フィルタ係数の伝送コストを下げることができる。 According to the second aspect of the present disclosure, an image can be encoded. In particular, the transmission cost of the filter coefficient can be reduced.
画像符号化装置の主な構成例を示すブロック図である。It is a block diagram which shows the main structural examples of an image coding apparatus. 符号化処理の流れの例を説明するフローチャートである。It is a flowchart explaining the example of the flow of an encoding process. 画像復号装置の主な構成例を示すブロック図である。It is a block diagram which shows the main structural examples of an image decoding apparatus. 復号処理の流れの例を説明するフローチャートである。It is a flowchart explaining the example of the flow of a decoding process. 従来のフィルタ係数のバッファ管理について説明する図である。It is a figure explaining the buffer management of the conventional filter coefficient. 本技術のフィルタ係数のバッファ管理について説明する図である。It is a figure explaining buffer management of a filter coefficient of this art. 本開示を適用した適応ループフィルタの構成例を示すブロック図である。It is a block diagram which shows the structural example of the adaptive loop filter to which this indication is applied. 適応ループフィルタ処理の例を説明するフローチャートである。It is a flowchart explaining the example of an adaptive loop filter process. 本開示を適用した適応ループフィルタの構成例を示すブロック図である。It is a block diagram which shows the structural example of the adaptive loop filter to which this indication is applied. 適応ループフィルタ処理の例を説明するフローチャートである。It is a flowchart explaining the example of an adaptive loop filter process. 多視点画像符号化方式の例を示す図である。It is a figure which shows the example of a multiview image encoding system. 本技術を適用した多視点画像符号化装置の主な構成例を示す図である。It is a figure which shows the main structural examples of the multiview image coding apparatus to which this technique is applied. 本技術を適用した多視点画像復号装置の主な構成例を示す図である。It is a figure which shows the main structural examples of the multiview image decoding apparatus to which this technique is applied. 階層画像符号化方式の例を示す図である。It is a figure which shows the example of a hierarchy image coding system. 本技術を適用した階層画像符号化装置の主な構成例を示す図である。It is a figure which shows the main structural examples of the hierarchy image coding apparatus to which this technique is applied. 本技術を適用した階層画像復号装置の主な構成例を示す図である。It is a figure which shows the main structural examples of the hierarchy image decoding apparatus to which this technique is applied. コンピュータの主な構成例を示すブロック図である。And FIG. 20 is a block diagram illustrating a main configuration example of a computer. テレビジョン装置の概略的な構成の一例を示すブロック図である。It is a block diagram which shows an example of a schematic structure of a television apparatus. 携帯電話機の概略的な構成の一例を示すブロック図である。It is a block diagram which shows an example of a schematic structure of a mobile telephone. 記録再生装置の概略的な構成の一例を示すブロック図である。It is a block diagram which shows an example of a schematic structure of a recording / reproducing apparatus. 撮像装置の概略的な構成の一例を示すブロック図である。It is a block diagram which shows an example of a schematic structure of an imaging device.
 以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.装置および動作の概要
2.第1の実施の形態(画像処理装置)
3.第2の実施の形態(多視点画像符号化・多視点画像復号装置)
4.第3の実施の形態(階層画像符号化・階層画像復号装置)
5.第4の実施の形態(コンピュータ)
6.応用例
Hereinafter, modes for carrying out the present disclosure (hereinafter referred to as embodiments) will be described. The description will be given in the following order.
1. 1. Overview of device and operation First embodiment (image processing apparatus)
3. Second embodiment (multi-view image encoding / multi-view image decoding apparatus)
4). Third embodiment (hierarchical image encoding / hierarchical image decoding apparatus)
5. Fourth embodiment (computer)
6). Application examples
<1.装置および動作の概要>
[画像符号化装置の構成例]
 図1は、本開示を適用した画像処理装置としての画像符号化装置の一実施の形態の構成を表している。
<1. Overview of equipment and operation>
[Configuration Example of Image Encoding Device]
FIG. 1 illustrates a configuration of an embodiment of an image encoding device as an image processing device to which the present disclosure is applied.
 図1に示される画像符号化装置11は、予測処理を用いて画像データを符号化する。ここで、符号化方式としては、例えば、HEVC(High Efficiency Video Coding)方式などが用いられる。 The image encoding device 11 shown in FIG. 1 encodes image data using a prediction process. Here, as the encoding method, for example, HEVC (High) Efficiency Video Coding) method or the like is used.
 図1の例において、画像符号化装置11は、A/D(Analog / Digital)変換部21、画面並べ替えバッファ22、演算部23、直交変換部24、量子化部25、可逆符号化部26、および蓄積バッファ27を有する。また、画像符号化装置11は、逆量子化部28、逆直交変換部29、演算部30、デブロッキングフィルタ31、フレームメモリ32、選択部33、イントラ予測部34、動き予測・補償部35、予測画像選択部36、およびレート制御部37を有する。 In the example of FIG. 1, the image encoding device 11 includes an A / D (Analog / Digital) conversion unit 21, a screen rearrangement buffer 22, a calculation unit 23, an orthogonal transformation unit 24, a quantization unit 25, and a lossless encoding unit 26. And a storage buffer 27. The image encoding device 11 includes an inverse quantization unit 28, an inverse orthogonal transform unit 29, a calculation unit 30, a deblocking filter 31, a frame memory 32, a selection unit 33, an intra prediction unit 34, a motion prediction / compensation unit 35, A predicted image selection unit 36 and a rate control unit 37 are included.
 さらに、画像符号化装置11は、デブロッキングフィルタ31とフレームメモリ32との間に、適応オフセットフィルタ41および適応ループフィルタ42を有する。 Furthermore, the image encoding device 11 includes an adaptive offset filter 41 and an adaptive loop filter 42 between the deblocking filter 31 and the frame memory 32.
 A/D変換部21は、入力された画像データをA/D変換し、画面並べ替えバッファ22に出力し、記憶させる。 The A / D converter 21 A / D converts the input image data, outputs it to the screen rearrangement buffer 22, and stores it.
 画面並べ替えバッファ22は、記憶した表示の順番のフレームの画像を、GOP(Group of Picture)構造に応じて、符号化のためのフレームの順番に並べ替える。画面並べ替えバッファ22は、フレームの順番を並び替えた画像を、演算部23に供給する。また、画面並べ替えバッファ22は、フレームの順番を並び替えた画像を、イントラ予測部34および動き予測・補償部35にも供給する。 The screen rearrangement buffer 22 rearranges the stored frame images in the display order in the order of frames for encoding according to the GOP (Group of Picture) structure. The screen rearrangement buffer 22 supplies the image with the rearranged frame order to the arithmetic unit 23. The screen rearrangement buffer 22 also supplies the image in which the frame order is rearranged to the intra prediction unit 34 and the motion prediction / compensation unit 35.
 演算部23は、画面並べ替えバッファ22から読み出された画像から、予測画像選択部36を介してイントラ予測部34若しくは動き予測・補償部35から供給される予測画像を減算し、その差分情報を直交変換部24に出力する。 The calculation unit 23 subtracts the predicted image supplied from the intra prediction unit 34 or the motion prediction / compensation unit 35 via the predicted image selection unit 36 from the image read from the screen rearrangement buffer 22, and the difference information Is output to the orthogonal transform unit 24.
 例えば、イントラ符号化が行われる画像の場合、演算部23は、画面並べ替えバッファ22から読み出された画像から、イントラ予測部34から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部23は、画面並べ替えバッファ22から読み出された画像から、動き予測・補償部35から供給される予測画像を減算する。 For example, in the case of an image on which intra coding is performed, the calculation unit 23 subtracts the prediction image supplied from the intra prediction unit 34 from the image read from the screen rearrangement buffer 22. For example, in the case of an image on which inter coding is performed, the calculation unit 23 subtracts the prediction image supplied from the motion prediction / compensation unit 35 from the image read from the screen rearrangement buffer 22.
 直交変換部24は、演算部23から供給される差分情報に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を量子化部25に供給する。 The orthogonal transform unit 24 performs orthogonal transform such as discrete cosine transform and Karhunen-Loeve transform on the difference information supplied from the computation unit 23 and supplies the transform coefficient to the quantization unit 25.
 量子化部25は、直交変換部24が出力する変換係数を量子化する。量子化部25は、量子化された変換係数を可逆符号化部26に供給する。 The quantization unit 25 quantizes the transform coefficient output from the orthogonal transform unit 24. The quantization unit 25 supplies the quantized transform coefficient to the lossless encoding unit 26.
 可逆符号化部26は、その量子化された変換係数に対して、可変長符号化、算術符号化等の可逆符号化を施す。 The lossless encoding unit 26 performs lossless encoding such as variable length encoding and arithmetic encoding on the quantized transform coefficient.
 可逆符号化部26は、イントラ予測モードを示す情報などのパラメータをイントラ予測部34から取得し、インター予測モードを示す情報や動きベクトル情報などのパラメータを動き予測・補償部35から取得する。 The lossless encoding unit 26 acquires parameters such as information indicating the intra prediction mode from the intra prediction unit 34, and acquires parameters such as information indicating the inter prediction mode and motion vector information from the motion prediction / compensation unit 35.
 可逆符号化部26は、量子化された変換係数を符号化するとともに、取得した各パラメータ(シンタクス要素)を符号化し、符号化データのヘッダ情報の一部とする(多重化する)。可逆符号化部26は、符号化して得られた符号化データを蓄積バッファ27に供給して蓄積させる。 The lossless encoding unit 26 encodes the quantized transform coefficient, encodes each acquired parameter (syntax element), and uses it as part of the header information of the encoded data (multiplexes). The lossless encoding unit 26 supplies the encoded data obtained by encoding to the accumulation buffer 27 for accumulation.
 例えば、可逆符号化部26においては、可変長符号化または算術符号化等の可逆符号化処理が行われる。可変長符号化としては、CAVLC(Context-Adaptive Variable Length Coding)などがあげられる。算術符号化としては、CABAC(Context-Adaptive Binary Arithmetic Coding)などがあげられる。 For example, in the lossless encoding unit 26, lossless encoding processing such as variable length encoding or arithmetic encoding is performed. Examples of variable length coding include CAVLC (Context-Adaptive Variable Length Coding). Examples of arithmetic coding include CABAC (Context-Adaptive Binary Arithmetic Coding).
 蓄積バッファ27は、可逆符号化部26から供給された符号化ストリーム(データ)を、一時的に保持し、所定のタイミングにおいて、符号化された符号化画像として、例えば、後段の図示せぬ記録装置や伝送路などに出力する。すなわち、蓄積バッファ27は、符号化ストリームを伝送する伝送部でもある。 The accumulation buffer 27 temporarily holds the encoded stream (data) supplied from the lossless encoding unit 26, and, for example, as a coded image encoded at a predetermined timing, for example, a recording (not shown) in the subsequent stage. Output to devices and transmission lines. That is, the accumulation buffer 27 is also a transmission unit that transmits the encoded stream.
 また、量子化部25において量子化された変換係数は、逆量子化部28にも供給される。逆量子化部28は、その量子化された変換係数を、量子化部25による量子化に対応する方法で逆量子化する。逆量子化部28は、得られた変換係数を、逆直交変換部29に供給する。 Also, the transform coefficient quantized by the quantization unit 25 is also supplied to the inverse quantization unit 28. The inverse quantization unit 28 inversely quantizes the quantized transform coefficient by a method corresponding to the quantization by the quantization unit 25. The inverse quantization unit 28 supplies the obtained transform coefficient to the inverse orthogonal transform unit 29.
 逆直交変換部29は、供給された変換係数を、直交変換部24による直交変換処理に対応する方法で逆直交変換する。逆直交変換された出力(復元された差分情報)は、演算部30に供給される。 The inverse orthogonal transform unit 29 performs inverse orthogonal transform on the supplied transform coefficient by a method corresponding to the orthogonal transform processing by the orthogonal transform unit 24. The inversely orthogonally transformed output (restored difference information) is supplied to the arithmetic unit 30.
 演算部30は、逆直交変換部29より供給された逆直交変換結果、すなわち、復元された差分情報に、予測画像選択部36を介してイントラ予測部34若しくは動き予測・補償部35から供給される予測画像を加算し、局部的に復号された画像(復号画像)を得る。 The calculation unit 30 is supplied from the intra prediction unit 34 or the motion prediction / compensation unit 35 to the inverse orthogonal transform result supplied from the inverse orthogonal transform unit 29, that is, the restored difference information, via the predicted image selection unit 36. Predicted images are added to obtain a locally decoded image (decoded image).
 例えば、差分情報が、イントラ符号化が行われる画像に対応する場合、演算部30は、その差分情報にイントラ予測部34から供給される予測画像を加算する。また、例えば、差分情報が、インター符号化が行われる画像に対応する場合、演算部30は、その差分情報に動き予測・補償部35から供給される予測画像を加算する。 For example, when the difference information corresponds to an image on which intra coding is performed, the calculation unit 30 adds the prediction image supplied from the intra prediction unit 34 to the difference information. For example, when the difference information corresponds to an image on which inter coding is performed, the calculation unit 30 adds the predicted image supplied from the motion prediction / compensation unit 35 to the difference information.
 その加算結果である復号画像は、デブロッキングフィルタ31およびフレームメモリ32に供給される。 The decoded image as the addition result is supplied to the deblocking filter 31 and the frame memory 32.
 デブロッキングフィルタ31は、適宜デブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。デブロッキングフィルタ31は、そのフィルタ処理結果を適応オフセットフィルタ41に供給する。 The deblocking filter 31 removes block distortion of the decoded image by appropriately performing deblocking filter processing. The deblocking filter 31 supplies the filter processing result to the adaptive offset filter 41.
 適応オフセットフィルタ41は、デブロッキングフィルタ31によるフィルタ後の画像に対して、主にリンギングを除去するオフセットフィルタ(SAO: Sample adaptive offset)処理を行う。 The adaptive offset filter 41 performs an offset filter (SAO: Sample adaptive 処理 offset) process that mainly removes ringing on the image after filtering by the deblocking filter 31.
 オフセットフィルタの種類は、バンドオフセット2種類、エッジオフセット6種類、オフセットなしの計9種類がある。適応オフセットフィルタ41は、分割領域毎にオフセットフィルタの種類が決定されたものであるquad-tree構造と分割領域毎のオフセット値を用いて、デブロッキングフィルタ31によるフィルタ後の画像に対して、フィルタ処理を施す。 ¡There are 9 types of offset filters: 2 types of band offset, 6 types of edge offset, and no offset. The adaptive offset filter 41 applies a quad-tree structure in which the type of the offset filter is determined for each divided region and the offset value for each divided region to the image after filtering by the deblocking filter 31. Apply processing.
 なお、本明細書において詳細な説明は省略するが、画像符号化装置11において、quad-tree構造と分割領域毎のオフセット値は、適応オフセットフィルタ41により算出されて用いられる。算出されたquad-tree構造と分割領域毎のオフセット値は、可逆符号化部26において符号化され、後述する図3の画像復号装置51に送信される。 Although a detailed description is omitted in this specification, the quad-tree structure and the offset value for each divided region are calculated by the adaptive offset filter 41 and used in the image encoding device 11. The calculated quad-tree structure and the offset value for each divided region are encoded by the lossless encoding unit 26 and transmitted to the image decoding device 51 of FIG.
 適応オフセットフィルタ41は、フィルタ処理後の画像を、適応ループフィルタ42に供給する。 The adaptive offset filter 41 supplies the filtered image to the adaptive loop filter 42.
 適応ループフィルタ42は、ALF処理単位として、最大の符号化単位であるLCU単位で適応ループフィルタ(ALF:AdaptiveLoop Filter)処理を行う。フィルタ後の画像は、フレームメモリ32に供給される。適応ループフィルタ42においては、フィルタとして、例えば、2次元のウィナーフィルタ(Wiener Filter)が用いられる。もちろん、ウィナーフィルタ以外のフィルタが用いられてもよい。 The adaptive loop filter 42 performs an adaptive loop filter (ALF) process in units of LCU, which is the maximum encoding unit, as an ALF processing unit. The filtered image is supplied to the frame memory 32. In the adaptive loop filter 42, for example, a two-dimensional Wiener filter is used as a filter. Of course, filters other than the Wiener filter may be used.
 適応ループフィルタ42は、フィルタ係数を格納するバッファを有している。このバッファにおいては、参照されたフィルタ係数が、優先順位の高い領域へ移動される。また、このバッファは、画面単位以外に、LCUよりも大きい範囲であって、水平ラインの閉じた範囲、例えば、LCUライン(最大符号化単位ライン)毎にリセットされる。 The adaptive loop filter 42 has a buffer for storing filter coefficients. In this buffer, the referenced filter coefficient is moved to a high priority area. In addition to the screen unit, this buffer is a range larger than the LCU and is reset for each closed range of the horizontal line, for example, every LCU line (maximum encoding unit line).
 適応ループフィルタ42の詳細な説明は、図7を参照して後述されるが、適応ループフィルタ42においては、LCU毎にフィルタ係数が求められる。そして、求められたフィルタ係数およびバッファに格納されているフィルタ係数のうち、最適なフィルタ係数がフィルタ処理に用いられる。 The detailed description of the adaptive loop filter 42 will be described later with reference to FIG. 7, but in the adaptive loop filter 42, a filter coefficient is obtained for each LCU. Of the obtained filter coefficients and the filter coefficients stored in the buffer, the optimum filter coefficient is used for the filtering process.
 バッファに格納されているフィルタ係数が用いられた場合、フィルタ処理に用いられたフィルタ係数が、そのバッファにおいて優先順位の高い領域に格納されているフィルタ係数と交換される(格納領域が入れ替えられる)。 When the filter coefficient stored in the buffer is used, the filter coefficient used for the filter processing is exchanged with the filter coefficient stored in the high priority area in the buffer (the storage area is replaced). .
 一方、求められたフィルタ係数が用いられた場合、用いられたフィルタ係数は、バッファにおいて、空き領域のうち、優先順位の高い領域にフィルタ係数が格納される。求められたフィルタ係数が用いられた場合で、空き領域がないときには、そのバッファにおいて、FIFO処理が行われる。 On the other hand, when the obtained filter coefficient is used, the filter coefficient used is stored in a high priority area in the free area in the buffer. When the obtained filter coefficient is used and there is no free area, FIFO processing is performed in the buffer.
 用いられたフィルタ係数のバッファインデックスまたは用いられたフィルタ係数は、LCU毎の適応ループフィルタのon/offフラグと共に、適応ループフィルタのパラメータとして、可逆符号化部26に供給され、復号側に送信される。 The buffer index of the used filter coefficient or the used filter coefficient is supplied to the lossless encoding unit 26 as an adaptive loop filter parameter together with the on / off flag of the adaptive loop filter for each LCU and transmitted to the decoding side. The
 フレームメモリ32は、所定のタイミングにおいて、蓄積されている参照画像を、選択部33を介してイントラ予測部34または動き予測・補償部35に出力する。 The frame memory 32 outputs the stored reference image to the intra prediction unit 34 or the motion prediction / compensation unit 35 via the selection unit 33 at a predetermined timing.
 例えば、イントラ符号化が行われる画像の場合、フレームメモリ32は、参照画像を、選択部33を介してイントラ予測部34に供給する。また、例えば、インター符号化が行われる場合、フレームメモリ32は、参照画像を、選択部33を介して動き予測・補償部35に供給する。 For example, in the case of an image on which intra coding is performed, the frame memory 32 supplies the reference image to the intra prediction unit 34 via the selection unit 33. For example, when inter coding is performed, the frame memory 32 supplies the reference image to the motion prediction / compensation unit 35 via the selection unit 33.
 選択部33は、フレームメモリ32から供給される参照画像がイントラ符号化を行う画像である場合、その参照画像をイントラ予測部34に供給する。また、選択部33は、フレームメモリ32から供給される参照画像がインター符号化を行う画像である場合、その参照画像を動き予測・補償部35に供給する。 The selection unit 33 supplies the reference image to the intra prediction unit 34 when the reference image supplied from the frame memory 32 is an image to be subjected to intra coding. The selection unit 33 also supplies the reference image to the motion prediction / compensation unit 35 when the reference image supplied from the frame memory 32 is an image to be inter-encoded.
 イントラ予測部34は、画面内の画素値を用いて予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部34は、複数のモード(イントラ予測モード)によりイントラ予測を行う。 The intra prediction unit 34 performs intra prediction (intra-screen prediction) for generating a predicted image using pixel values in the screen. The intra prediction unit 34 performs intra prediction in a plurality of modes (intra prediction modes).
 イントラ予測部34は、全てのイントラ予測モードで予測画像を生成し、各予測画像を評価し、最適なモードを選択する。イントラ予測部34は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部36を介して演算部23や演算部30に供給する。 The intra prediction unit 34 generates prediction images in all intra prediction modes, evaluates each prediction image, and selects an optimal mode. When the optimal intra prediction mode is selected, the intra prediction unit 34 supplies the prediction image generated in the optimal mode to the calculation unit 23 and the calculation unit 30 via the predicted image selection unit 36.
 また、上述したように、イントラ予測部34は、採用したイントラ予測モードを示すイントラ予測モード情報等のパラメータを、適宜可逆符号化部26に供給する。 Further, as described above, the intra prediction unit 34 supplies parameters such as intra prediction mode information indicating the adopted intra prediction mode to the lossless encoding unit 26 as appropriate.
 動き予測・補償部35は、インター符号化が行われる画像について、画面並べ替えバッファ22から供給される入力画像と、選択部33を介してフレームメモリ32から供給される参照画像とを用いて、動き予測を行う。また、動き予測・補償部35は、動き予測により検出された動きベクトルに応じて動き補償処理を行い、予測画像(インター予測画像情報)を生成する。 The motion prediction / compensation unit 35 uses the input image supplied from the screen rearrangement buffer 22 and the reference image supplied from the frame memory 32 via the selection unit 33 for the image to be inter-coded, Perform motion prediction. In addition, the motion prediction / compensation unit 35 performs a motion compensation process according to the motion vector detected by the motion prediction, and generates a predicted image (inter predicted image information).
 動き予測・補償部35は、候補となる全てのインター予測モードのインター予測処理を行い、予測画像を生成する。動き予測・補償部35は、生成された予測画像を、予測画像選択部36を介して演算部23や演算部30に供給する。 The motion prediction / compensation unit 35 performs inter prediction processing in all candidate inter prediction modes, and generates a prediction image. The motion prediction / compensation unit 35 supplies the generated predicted image to the calculation unit 23 and the calculation unit 30 via the predicted image selection unit 36.
 また、動き予測・補償部35は、採用されたインター予測モードを示すインター予測モード情報や、算出した動きベクトルを示す動きベクトル情報などのパラメータを可逆符号化部26に供給する。 Also, the motion prediction / compensation unit 35 supplies parameters such as inter prediction mode information indicating the employed inter prediction mode and motion vector information indicating the calculated motion vector to the lossless encoding unit 26.
 予測画像選択部36は、イントラ符号化を行う画像の場合、イントラ予測部34の出力を演算部23や演算部30に供給し、インター符号化を行う画像の場合、動き予測・補償部35の出力を演算部23や演算部30に供給する。 The predicted image selection unit 36 supplies the output of the intra prediction unit 34 to the calculation unit 23 and the calculation unit 30 in the case of an image to be subjected to intra coding, and in the case of an image to be subjected to inter coding, the motion prediction / compensation unit 35. The output is supplied to the calculation unit 23 and the calculation unit 30.
 レート制御部37は、蓄積バッファ27に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部25の量子化動作のレートを制御する。 The rate control unit 37 controls the quantization operation rate of the quantization unit 25 based on the compressed image stored in the storage buffer 27 so that overflow or underflow does not occur.
[画像符号化装置の動作]
 図2を参照して、以上のような画像符号化装置11により実行される符号化処理の流れについて説明する。
[Operation of Image Encoding Device]
With reference to FIG. 2, the flow of the encoding process executed by the image encoding device 11 as described above will be described.
 ステップS11において、A/D変換部21は入力された画像をA/D変換する。ステップS12において、画面並べ替えバッファ22は、A/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。 In step S11, the A / D converter 21 A / D converts the input image. In step S12, the screen rearrangement buffer 22 stores the A / D converted images, and rearranges them from the display order of each picture to the encoding order.
 画面並べ替えバッファ22から供給される処理対象の画像がイントラ処理されるブロックの画像である場合、参照される復号済みの画像がフレームメモリ32から読み出され、選択部33を介してイントラ予測部34に供給される。 When the processing target image supplied from the screen rearrangement buffer 22 is an image of a block to be intra-processed, a decoded image to be referred to is read from the frame memory 32 and the intra prediction unit via the selection unit 33 34.
 これらの画像に基づいて、ステップS13において、イントラ予測部34は処理対象のブロックの画素を、候補となる全てのイントラ予測モードでイントラ予測する。なお、参照される復号済みの画素としては、デブロッキングフィルタ31によりフィルタされていない画素が用いられる。 Based on these images, in step S13, the intra prediction unit 34 performs intra prediction on the pixels of the block to be processed in all candidate intra prediction modes. Note that pixels that have not been filtered by the deblocking filter 31 are used as decoded pixels that are referred to.
 この処理により、候補となる全てのイントラ予測モードでイントラ予測が行われ、候補となる全てのイントラ予測モードに対してコスト関数値が算出される。そして、算出されたコスト関数値に基づいて、最適イントラ予測モードが選択され、最適イントラ予測モードのイントラ予測により生成された予測画像とそのコスト関数値が予測画像選択部36に供給される。 By this processing, intra prediction is performed in all candidate intra prediction modes, and cost function values are calculated for all candidate intra prediction modes. Then, based on the calculated cost function value, the optimal intra prediction mode is selected, and the predicted image generated by the intra prediction of the optimal intra prediction mode and its cost function value are supplied to the predicted image selection unit 36.
 画面並べ替えバッファ22から供給される処理対象の画像がインター処理される画像である場合、参照される画像がフレームメモリ32から読み出され、選択部33を介して動き予測・補償部35に供給される。これらの画像に基づいて、ステップS14において、動き予測・補償部35は、動き予測・補償処理を行う。 When the processing target image supplied from the screen rearrangement buffer 22 is an inter-processed image, the referenced image is read from the frame memory 32 and supplied to the motion prediction / compensation unit 35 via the selection unit 33. Is done. Based on these images, in step S14, the motion prediction / compensation unit 35 performs motion prediction / compensation processing.
 この処理により、候補となる全てのインター予測モードで動き予測処理が行われ、候補となる全てのインター予測モードに対してコスト関数値が算出され、算出したコスト関数値に基づいて、最適インター予測モードが決定される。そして、最適インター予測モードにより生成された予測画像とそのコスト関数値が予測画像選択部36に供給される。 By this processing, motion prediction processing is performed in all candidate inter prediction modes, cost function values are calculated for all candidate inter prediction modes, and optimal inter prediction is performed based on the calculated cost function values. The mode is determined. Then, the predicted image generated in the optimal inter prediction mode and its cost function value are supplied to the predicted image selection unit 36.
 ステップS15において、予測画像選択部36は、イントラ予測部34および動き予測・補償部35より出力された各コスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードのうちの一方を、最適予測モードに決定する。そして、予測画像選択部36は、決定した最適予測モードの予測画像を選択し、演算部23,30に供給する。この予測画像は、後述するステップS16,S21の演算に利用される。 In step S15, the predicted image selection unit 36 selects one of the optimal intra prediction mode and the optimal inter prediction mode based on the cost function values output from the intra prediction unit 34 and the motion prediction / compensation unit 35. Determine the prediction mode. Then, the predicted image selection unit 36 selects a predicted image in the determined optimal prediction mode and supplies it to the calculation units 23 and 30. This predicted image is used for calculations in steps S16 and S21 described later.
 なお、この予測画像の選択情報は、イントラ予測部34または動き予測・補償部35に供給される。最適イントラ予測モードの予測画像が選択された場合、イントラ予測部34は、最適イントラ予測モードを示す情報(すなわち、イントラ予測に関するパラメータ)を、可逆符号化部26に供給する。 Note that the prediction image selection information is supplied to the intra prediction unit 34 or the motion prediction / compensation unit 35. When the prediction image in the optimal intra prediction mode is selected, the intra prediction unit 34 supplies information indicating the optimal intra prediction mode (that is, a parameter related to intra prediction) to the lossless encoding unit 26.
 最適インター予測モードの予測画像が選択された場合、動き予測・補償部35は、最適インター予測モードを示す情報と、最適インター予測モードに応じた情報(すなわち、動き予測に関するパラメータ)を可逆符号化部26に出力する。最適インター予測モードに応じた情報としては、動きベクトル情報や参照フレーム情報などがあげられる。 When a prediction image in the optimal inter prediction mode is selected, the motion prediction / compensation unit 35 performs lossless encoding of information indicating the optimal inter prediction mode and information corresponding to the optimal inter prediction mode (that is, parameters relating to motion prediction). To the unit 26. Information according to the optimal inter prediction mode includes motion vector information and reference frame information.
 ステップS16において、演算部23は、ステップS12で並び替えられた画像と、ステップS15で選択された予測画像との差分を演算する。予測画像は、インター予測する場合は動き予測・補償部35から、イントラ予測する場合はイントラ予測部34から、それぞれ予測画像選択部36を介して演算部23に供給される。 In step S16, the calculation unit 23 calculates a difference between the image rearranged in step S12 and the predicted image selected in step S15. The predicted image is supplied from the motion prediction / compensation unit 35 in the case of inter prediction, and from the intra prediction unit 34 in the case of intra prediction, to the calculation unit 23 via the predicted image selection unit 36, respectively.
 差分データは元の画像データに較べてデータ量が小さくなっている。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。 差分 Difference data has a smaller data volume than the original image data. Therefore, the data amount can be compressed as compared with the case where the image is encoded as it is.
 ステップS17において、直交変換部24は演算部23から供給された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。 In step S17, the orthogonal transformation unit 24 orthogonally transforms the difference information supplied from the calculation unit 23. Specifically, orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and transformation coefficients are output.
 ステップS18において、量子化部25は変換係数を量子化する。この量子化に際しては、後述するステップS28の処理で説明されるように、レートが制御される。 In step S18, the quantization unit 25 quantizes the transform coefficient. At the time of this quantization, the rate is controlled as will be described in the process of step S28 described later.
 以上のようにして量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップS19において、逆量子化部28は、量子化部25により量子化された変換係数を量子化部25の特性に対応する特性で逆量子化する。ステップS20において、逆直交変換部29は、逆量子化部28により逆量子化された変換係数を直交変換部24の特性に対応する特性で逆直交変換する。 The difference information quantized as described above is locally decoded as follows. That is, in step S19, the inverse quantization unit 28 inversely quantizes the transform coefficient quantized by the quantization unit 25 with characteristics corresponding to the characteristics of the quantization unit 25. In step S <b> 20, the inverse orthogonal transform unit 29 performs inverse orthogonal transform on the transform coefficient inversely quantized by the inverse quantization unit 28 with characteristics corresponding to the characteristics of the orthogonal transform unit 24.
 ステップS21において、演算部30は、予測画像選択部36を介して入力される予測画像を局部的に復号された差分情報に加算し、局部的に復号された(すなわち、ローカルデコードされた)画像(演算部23への入力に対応する画像)を生成する。 In step S21, the calculation unit 30 adds the predicted image input via the predicted image selection unit 36 to the locally decoded difference information, and locally decoded (ie, locally decoded) image. (Image corresponding to the input to the calculation unit 23) is generated.
 ステップS22においてデブロッキングフィルタ31は、演算部30より出力された画像に対して、デブロッキングフィルタ処理を行う。これによりブロック歪みが除去される。デブロッキングフィルタ31からのフィルタ後の画像は、適応オフセットフィルタ41に出力される。 In step S22, the deblocking filter 31 performs a deblocking filter process on the image output from the calculation unit 30. Thereby, block distortion is removed. The filtered image from the deblocking filter 31 is output to the adaptive offset filter 41.
 ステップS23において、適応オフセットフィルタ41は、適応オフセットフィルタ処理を行う。この処理により、分割領域毎にオフセットフィルタの種類が決定されたものであるquad-tree構造と分割領域毎のオフセット値を用いて、デブロッキングフィルタ31によるフィルタ後の画像に対して、フィルタ処理が施される。フィルタ後の画像は、適応ループフィルタ42に供給される。 In step S23, the adaptive offset filter 41 performs adaptive offset filter processing. With this processing, the filtering process is performed on the image after filtering by the deblocking filter 31 using the quad-tree structure in which the type of the offset filter is determined for each divided region and the offset value for each divided region. Applied. The filtered image is supplied to the adaptive loop filter 42.
 ステップS24において、適応ループフィルタ42は、適応オフセットフィルタ41によるフィルタ後の画像に対して、LCU単位で、適応ループフィルタ処理を行う。フィルタ後の画像は、フレームメモリ32に供給される。 In step S24, the adaptive loop filter 42 performs an adaptive loop filter process on the image after filtering by the adaptive offset filter 41 in units of LCUs. The filtered image is supplied to the frame memory 32.
 なお、適応ループフィルタ処理の詳細は、図8に後述するが、この処理により、LCU毎にフィルタ係数が求められ、求められたフィルタ係数およびバッファに格納されているフィルタ係数のうち、最適なフィルタ係数がフィルタ処理に用いられる。 The details of the adaptive loop filter processing will be described later with reference to FIG. 8. By this processing, filter coefficients are obtained for each LCU, and the optimum filter is selected from the obtained filter coefficients and the filter coefficients stored in the buffer. Coefficients are used for filtering.
 バッファに格納されているフィルタ係数が用いられた場合、フィルタ処理に用いられたフィルタ係数が、そのバッファにおいて優先順位の高い領域に格納されているフィルタ係数と交換される(格納領域が入れ替えられる)。 When the filter coefficient stored in the buffer is used, the filter coefficient used for the filter processing is exchanged with the filter coefficient stored in the high priority area in the buffer (the storage area is replaced). .
 一方、求められたフィルタ係数が用いられた場合、用いられたフィルタ係数は、バッファにおいて、空き領域のうち、優先順位が高い領域にフィルタ係数が格納される。求められたフィルタ係数が用いられた場合で、空き領域がないときには、そのバッファにおいて、FIFO処理が行われる。 On the other hand, when the obtained filter coefficient is used, the filter coefficient used is stored in a high priority area in the free area in the buffer. When the obtained filter coefficient is used and there is no free area, FIFO processing is performed in the buffer.
 用いられたフィルタ係数のバッファインデックスまたは用いられたフィルタ係数は、LCU毎の適応ループフィルタのon/offフラグと共に、適応ループフィルタのパラメータとして、可逆符号化部26に供給される。 The buffer index of the used filter coefficient or the used filter coefficient is supplied to the lossless encoding unit 26 as an adaptive loop filter parameter together with the on / off flag of the adaptive loop filter for each LCU.
 なお、本明細書においては、単に、フィルタ係数と称しているが、フィルタ係数のセットを表すものとする。 In this specification, the filter coefficient is simply referred to as a set of filter coefficients.
 これらの適応ループフィルタのパラメータは、後述するステップS26で符号化される。 These parameters of the adaptive loop filter are encoded in step S26 described later.
 ステップS25においてフレームメモリ32は、フィルタリングされた画像を記憶する。なお、フレームメモリ32には、デブロッキングフィルタ31、適応オフセットフィルタ41、および適応ループフィルタ42によりフィルタされていない画像も演算部30から供給され、記憶される。 In step S25, the frame memory 32 stores the filtered image. In the frame memory 32, images that are not filtered by the deblocking filter 31, the adaptive offset filter 41, and the adaptive loop filter 42 are also supplied from the computing unit 30 and stored.
 一方、上述したステップS18において量子化された変換係数は、可逆符号化部26にも供給される。ステップS26において、可逆符号化部26は、量子化部25より出力された量子化された変換係数と、供給された各パラメータを符号化する。すなわち、差分画像が可変長符号化、算術符号化等の可逆符号化され、圧縮される。イントラ予測に関するパラメータ、動き予測に関するパラメータ、適応ループフィルタに関するパラメータは、例えば、符号化された差分画像のヘッダ情報として付加される。 On the other hand, the transform coefficient quantized in step S18 described above is also supplied to the lossless encoding unit 26. In step S26, the lossless encoding unit 26 encodes the quantized transform coefficient output from the quantization unit 25 and each supplied parameter. That is, the difference image is subjected to lossless encoding such as variable length encoding and arithmetic encoding, and is compressed. A parameter related to intra prediction, a parameter related to motion prediction, and a parameter related to an adaptive loop filter are added as header information of an encoded difference image, for example.
 ステップS27において蓄積バッファ27は、符号化された差分画像(すなわち、符号化ストリーム)を、圧縮画像として蓄積する。蓄積バッファ27に蓄積された圧縮画像が適宜読み出され、伝送路を介して復号側に伝送される。 In step S27, the accumulation buffer 27 accumulates the encoded difference image (that is, the encoded stream) as a compressed image. The compressed image stored in the storage buffer 27 is appropriately read out and transmitted to the decoding side via the transmission path.
 ステップS28においてレート制御部37は、蓄積バッファ27に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部25の量子化動作のレートを制御する。 In step S28, the rate control unit 37 controls the quantization operation rate of the quantization unit 25 based on the compressed image stored in the storage buffer 27 so that overflow or underflow does not occur.
 ステップS28の処理が終了すると、符号化処理が終了される。 When the process of step S28 ends, the encoding process ends.
[画像復号装置の構成例]
 図3は、本開示を適用した画像処理装置としての画像復号装置の一実施の形態の構成を表している。図3に示される画像復号装置51は、図1の画像符号化装置11に対応する復号装置である。
[Configuration Example of Image Decoding Device]
FIG. 3 illustrates a configuration of an embodiment of an image decoding device as an image processing device to which the present disclosure is applied. An image decoding device 51 shown in FIG. 3 is a decoding device corresponding to the image encoding device 11 of FIG.
 画像符号化装置11より符号化された符号化データは、所定の伝送路を介して、この画像符号化装置11に対応する画像復号装置51に伝送され、復号されるものとする。 Suppose that encoded data encoded by the image encoding device 11 is transmitted to an image decoding device 51 corresponding to the image encoding device 11 via a predetermined transmission path and decoded.
 図3に示されるように、画像復号装置51は、蓄積バッファ61、可逆復号部62、逆量子化部63、逆直交変換部64、演算部65、デブロッキングフィルタ66、画面並べ替えバッファ67、およびD/A変換部68を有する。また、画像復号装置51は、フレームメモリ69、選択部70、イントラ予測部71、動き予測・補償部72、および選択部73を有する。 As shown in FIG. 3, the image decoding device 51 includes a storage buffer 61, a lossless decoding unit 62, an inverse quantization unit 63, an inverse orthogonal transform unit 64, a calculation unit 65, a deblocking filter 66, a screen rearrangement buffer 67, And a D / A converter 68. The image decoding device 51 includes a frame memory 69, a selection unit 70, an intra prediction unit 71, a motion prediction / compensation unit 72, and a selection unit 73.
 さらに、画像復号装置51は、デブロッキングフィルタ66と、画面並べ替えバッファ67およびフレームメモリ69との間に、適応オフセットフィルタ81および適応ループフィルタ82を有する。 Furthermore, the image decoding device 51 includes an adaptive offset filter 81 and an adaptive loop filter 82 between the deblocking filter 66, the screen rearrangement buffer 67, and the frame memory 69.
 蓄積バッファ61は、伝送されてきた符号化データを受け取る受け取り部でもある。蓄積バッファ61は、伝送されてきた符号化データを受け取って、蓄積する。この符号化データは、画像符号化装置11により符号化されたものである。可逆復号部62は、蓄積バッファ61から所定のタイミングで読み出された符号化データを、図1の可逆符号化部26の符号化方式に対応する方式で復号する。 The accumulation buffer 61 is also a receiving unit that receives transmitted encoded data. The accumulation buffer 61 receives and accumulates the transmitted encoded data. This encoded data is encoded by the image encoding device 11. The lossless decoding unit 62 decodes the encoded data read from the accumulation buffer 61 at a predetermined timing by a method corresponding to the encoding method of the lossless encoding unit 26 in FIG.
 可逆復号部62は、復号されたイントラ予測モードを示す情報などのパラメータをイントラ予測部71に供給し、インター予測モードを示す情報や動きベクトル情報などのパラメータを動き予測・補償部72に供給する。また、可逆復号部62は、復号された適応ループフィルタのパラメータ(LCU毎のon/offフラグと、フィルタ係数またはバッファインデックスなど)を、適応ループフィルタ82に供給する。 The lossless decoding unit 62 supplies parameters such as information indicating the decoded intra prediction mode to the intra prediction unit 71, and supplies parameters such as information indicating the inter prediction mode and motion vector information to the motion prediction / compensation unit 72. . Further, the lossless decoding unit 62 supplies the decoded adaptive loop filter parameters (on / off flag for each LCU, filter coefficient, buffer index, etc.) to the adaptive loop filter 82.
 逆量子化部63は、可逆復号部62により復号されて得られた係数データ(量子化係数)を、図1の量子化部25の量子化方式に対応する方式で逆量子化する。つまり、逆量子化部63は、画像符号化装置11から供給された量子化パラメータを用いて、図1の逆量子化部28と同様の方法で量子化係数の逆量子化を行う。 The inverse quantization unit 63 inversely quantizes the coefficient data (quantization coefficient) obtained by decoding by the lossless decoding unit 62 by a method corresponding to the quantization method of the quantization unit 25 in FIG. That is, the inverse quantization unit 63 uses the quantization parameter supplied from the image encoding device 11 to perform inverse quantization of the quantization coefficient by the same method as the inverse quantization unit 28 in FIG.
 逆量子化部63は、逆量子化された係数データ、つまり、直交変換係数を、逆直交変換部64に供給する。逆直交変換部64は、図1の直交変換部24の直交変換方式に対応する方式で、その直交変換係数を逆直交変換し、画像符号化装置11において直交変換される前の残差データに対応する復号残差データを得る。 The inverse quantization unit 63 supplies the inversely quantized coefficient data, that is, the orthogonal transform coefficient, to the inverse orthogonal transform unit 64. The inverse orthogonal transform unit 64 is a method corresponding to the orthogonal transform method of the orthogonal transform unit 24 in FIG. 1, performs inverse orthogonal transform on the orthogonal transform coefficient, and converts the residual data before the orthogonal transform in the image encoding device 11 Corresponding decoding residual data is obtained.
 逆直交変換されて得られた復号残差データは、演算部65に供給される。また、演算部65には、選択部73を介して、イントラ予測部71若しくは動き予測・補償部72から予測画像が供給される。 The decoded residual data obtained by the inverse orthogonal transform is supplied to the arithmetic unit 65. Further, a prediction image is supplied to the calculation unit 65 from the intra prediction unit 71 or the motion prediction / compensation unit 72 via the selection unit 73.
 演算部65は、その復号残差データと予測画像とを加算し、画像符号化装置11の演算部23により予測画像が減算される前の画像データに対応する復号画像データを得る。演算部65は、その復号画像データをデブロッキングフィルタ66に供給する。 The calculating unit 65 adds the decoded residual data and the predicted image, and obtains decoded image data corresponding to the image data before the predicted image is subtracted by the calculating unit 23 of the image encoding device 11. The arithmetic unit 65 supplies the decoded image data to the deblocking filter 66.
 デブロッキングフィルタ66は、適宜デブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。デブロッキングフィルタ66は、そのフィルタ処理結果を適応オフセットフィルタ81に供給する。 The deblocking filter 66 removes block distortion of the decoded image by appropriately performing deblocking filter processing. The deblocking filter 66 supplies the filter processing result to the adaptive offset filter 81.
 適応オフセットフィルタ81は、デブロッキングフィルタ66によるフィルタ後の画像に対して、主にリンギングを除去するオフセットフィルタ(SAO)処理を行う。 The adaptive offset filter 81 performs an offset filter (SAO) process that mainly removes ringing on the image after filtering by the deblocking filter 66.
 適応オフセットフィルタ81は、分割領域毎にオフセットフィルタの種類が決定されたものであるquad-tree構造と分割領域毎のオフセット値を用いて、デブロッキングフィルタ66によるフィルタ後の画像に対して、フィルタ処理を施す。適応オフセットフィルタ81は、フィルタ処理後の画像を、適応ループフィルタ82に供給する。 The adaptive offset filter 81 uses the quad-tree structure in which the type of the offset filter is determined for each divided region and the offset value for each divided region, and performs filtering on the image after filtering by the deblocking filter 66. Apply processing. The adaptive offset filter 81 supplies the filtered image to the adaptive loop filter 82.
 なお、本明細書において詳細な説明は省略するが、このquad-tree構造と分割領域毎のオフセット値は、画像符号化装置11の適応オフセットフィルタ41により算出され、符号化されて送られてきたものである。そして、画像符号化装置11により符号化されたquad-tree構造と分割領域毎のオフセット値は、画像復号装置51において受信されて、可逆復号部62により復号されて、適応オフセットフィルタ81により用いられる。 Although a detailed description is omitted in this specification, the quad-tree structure and the offset value for each divided region are calculated by the adaptive offset filter 41 of the image encoding device 11, encoded and sent. Is. The quad-tree structure encoded by the image encoding device 11 and the offset value for each divided region are received by the image decoding device 51, decoded by the lossless decoding unit 62, and used by the adaptive offset filter 81. .
 適応ループフィルタ82は、図1の適応ループフィルタ42と基本的に同様に構成され、ALF処理単位として、最大の符号化単位であるLCU単位で適応ループフィルタ(ALF:AdaptiveLoop Filter)処理を行う。フィルタ後の画像は、画面並べ替えバッファ67およびフレームメモリ69に供給される。 The adaptive loop filter 82 is configured basically in the same manner as the adaptive loop filter 42 of FIG. 1 and performs an adaptive loop filter (ALF: Adaptive Loop Filter) processing in units of LCUs which are the maximum coding units as ALF processing units. The filtered image is supplied to the screen rearrangement buffer 67 and the frame memory 69.
 適応ループフィルタ82は、図1の適応ループフィルタ42と同様に、フィルタ係数を格納するバッファを有している。このバッファにおいては、参照されたフィルタ係数が、優先順位の高い領域へ移動される。また、このバッファは、画面単位以外に、LCUよりも大きい範囲であって、水平ラインの閉じた範囲、例えば、LCUライン(最大符号化単位ライン)毎にリセットされる。 The adaptive loop filter 82 has a buffer for storing filter coefficients, like the adaptive loop filter 42 of FIG. In this buffer, the referenced filter coefficient is moved to a high priority area. In addition to the screen unit, this buffer is a range larger than the LCU and is reset for each closed range of the horizontal line, for example, every LCU line (maximum encoding unit line).
 適応ループフィルタ82の詳細な説明は、図9を参照して後述される。なお、適応ループフィルタ82においては、可逆復号部62からのフィルタ係数、またはバッファに格納されている、可逆復号部62からのバッファインデックスに対応するフィルタ係数がフィルタ処理に用いられる。 Details of the adaptive loop filter 82 will be described later with reference to FIG. In the adaptive loop filter 82, the filter coefficient from the lossless decoding unit 62 or the filter coefficient corresponding to the buffer index from the lossless decoding unit 62 stored in the buffer is used for the filter processing.
 可逆復号部62からのバッファインデックスに対応するフィルタ係数が用いられた場合、フィルタ処理に用いられたフィルタ係数が、そのバッファにおいて優先順位の高い領域に格納されているフィルタ係数と交換される(格納領域が入れ替えられる)。 When the filter coefficient corresponding to the buffer index from the lossless decoding unit 62 is used, the filter coefficient used for the filter processing is exchanged with the filter coefficient stored in the high priority area in the buffer (stored) Area is swapped).
 一方、可逆復号部62からのフィルタ係数が用いられた場合、用いられたフィルタ係数は、バッファにおいて、空き領域のうち、優先順位の高い領域にフィルタ係数が格納される。求められたフィルタ係数が用いられた場合で、空き領域がないときには、そのバッファにおいて、FIFO処理が行われる。 On the other hand, when the filter coefficient from the lossless decoding unit 62 is used, the filter coefficient used is stored in a high-priority area in the empty area in the buffer. When the obtained filter coefficient is used and there is no free area, FIFO processing is performed in the buffer.
 画面並べ替えバッファ67は、画像の並べ替えを行う。すなわち、図1の画面並べ替えバッファ22により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部68は、画面並べ替えバッファ67から供給された画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。 The screen rearrangement buffer 67 rearranges images. That is, the order of frames rearranged for the encoding order by the screen rearrangement buffer 22 in FIG. 1 is rearranged in the original display order. The D / A converter 68 performs D / A conversion on the image supplied from the screen rearrangement buffer 67, and outputs and displays the image on a display (not shown).
 適応ループフィルタ82の出力は、さらに、フレームメモリ69に供給される。 The output of the adaptive loop filter 82 is further supplied to the frame memory 69.
 フレームメモリ69、選択部70、イントラ予測部71、動き予測・補償部72、および選択部73は、画像符号化装置11のフレームメモリ32、選択部33、イントラ予測部34、動き予測・補償部35、および予測画像選択部36にそれぞれ対応する。 The frame memory 69, the selection unit 70, the intra prediction unit 71, the motion prediction / compensation unit 72, and the selection unit 73 are the frame memory 32, the selection unit 33, the intra prediction unit 34, and the motion prediction / compensation unit of the image encoding device 11. 35 and the predicted image selection unit 36, respectively.
 選択部70は、インター処理される画像と参照される画像をフレームメモリ69から読み出し、動き予測・補償部72に供給する。また、選択部70は、イントラ予測に用いられる画像をフレームメモリ69から読み出し、イントラ予測部71に供給する。 The selection unit 70 reads out the inter-processed image and the referenced image from the frame memory 69 and supplies the image to the motion prediction / compensation unit 72. The selection unit 70 reads an image used for intra prediction from the frame memory 69 and supplies the image to the intra prediction unit 71.
 イントラ予測部71には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報等が可逆復号部62から適宜供給される。イントラ予測部71は、この情報に基づいて、フレームメモリ69から取得した参照画像から予測画像を生成し、生成した予測画像を選択部73に供給する。 The intra prediction unit 71 is appropriately supplied with information indicating the intra prediction mode obtained by decoding the header information from the lossless decoding unit 62. Based on this information, the intra prediction unit 71 generates a prediction image from the reference image acquired from the frame memory 69 and supplies the generated prediction image to the selection unit 73.
 動き予測・補償部72には、ヘッダ情報を復号して得られた情報(予測モード情報、動きベクトル情報、参照フレーム情報、フラグ、および各種パラメータ等)が可逆復号部62から供給される。 The motion prediction / compensation unit 72 is supplied with information (prediction mode information, motion vector information, reference frame information, flags, various parameters, etc.) obtained by decoding the header information from the lossless decoding unit 62.
 動き予測・補償部72は、可逆復号部62から供給されるそれらの情報に基づいて、フレームメモリ69から取得した参照画像から予測画像を生成し、生成した予測画像を選択部73に供給する。 The motion prediction / compensation unit 72 generates a prediction image from the reference image acquired from the frame memory 69 based on the information supplied from the lossless decoding unit 62 and supplies the generated prediction image to the selection unit 73.
 選択部73は、動き予測・補償部72またはイントラ予測部71により生成された予測画像を選択し、演算部65に供給する。 The selection unit 73 selects the prediction image generated by the motion prediction / compensation unit 72 or the intra prediction unit 71 and supplies the selected prediction image to the calculation unit 65.
[画像復号装置の動作]
 図4を参照して、以上のような画像復号装置51により実行される復号処理の流れの例を説明する。
[Operation of Image Decoding Device]
With reference to FIG. 4, an example of the flow of decoding processing executed by the image decoding device 51 as described above will be described.
 復号処理が開始されると、ステップS51において、蓄積バッファ61は、伝送されてきた符号化データを蓄積する。ステップS52において、可逆復号部62は、蓄積バッファ61から供給される符号化データを復号する。図1の可逆符号化部26により符号化されたIピクチャ、Pピクチャ、並びにBピクチャが復号される。 When the decoding process is started, the storage buffer 61 stores the transmitted encoded data in step S51. In step S52, the lossless decoding unit 62 decodes the encoded data supplied from the accumulation buffer 61. The I picture, P picture, and B picture encoded by the lossless encoding unit 26 in FIG. 1 are decoded.
 ピクチャの復号に先立ち、動きベクトル情報、参照フレーム情報、予測モード情報(イントラ予測モード、またはインター予測モード)などのパラメータの情報も復号される。 Prior to picture decoding, parameter information such as motion vector information, reference frame information, and prediction mode information (intra prediction mode or inter prediction mode) is also decoded.
 予測モード情報がイントラ予測モード情報である場合、予測モード情報は、イントラ予測部71に供給される。予測モード情報がインター予測モード情報である場合、予測モード情報と対応する動きベクトル情報などは、動き予測・補償部72に供給される。 When the prediction mode information is intra prediction mode information, the prediction mode information is supplied to the intra prediction unit 71. When the prediction mode information is inter prediction mode information, motion vector information corresponding to the prediction mode information is supplied to the motion prediction / compensation unit 72.
 また、適応ループフィルタのパラメータも復号され、適応ループフィルタ82に供給される。 Also, the parameters of the adaptive loop filter are decoded and supplied to the adaptive loop filter 82.
 ステップS53において、イントラ予測部71または動き予測・補償部72は、可逆復号部62から供給される予測モード情報に対応して、それぞれ、予測画像生成処理を行う。 In step S53, the intra prediction unit 71 or the motion prediction / compensation unit 72 performs a prediction image generation process corresponding to the prediction mode information supplied from the lossless decoding unit 62, respectively.
 すなわち、可逆復号部62からイントラ予測モード情報が供給された場合、イントラ予測部71は、イントラ予測モードのイントラ予測画像を生成する。可逆復号部62からインター予測モード情報が供給された場合、動き予測・補償部72は、インター予測モードの動き予測・補償処理を行い、インター予測画像を生成する。 That is, when the intra prediction mode information is supplied from the lossless decoding unit 62, the intra prediction unit 71 generates an intra prediction image in the intra prediction mode. When the inter prediction mode information is supplied from the lossless decoding unit 62, the motion prediction / compensation unit 72 performs an inter prediction mode motion prediction / compensation process to generate an inter prediction image.
 この処理により、イントラ予測部71により生成された予測画像(イントラ予測画像)、または動き予測・補償部72により生成された予測画像(インター予測画像)が選択部73に供給される。 Through this process, the prediction image (intra prediction image) generated by the intra prediction unit 71 or the prediction image (inter prediction image) generated by the motion prediction / compensation unit 72 is supplied to the selection unit 73.
 ステップS54において、選択部73は予測画像を選択する。すなわち、イントラ予測部71により生成された予測画像、または動き予測・補償部72により生成された予測画像が供給される。したがって、供給された予測画像が選択されて演算部65に供給され、後述するステップS57において逆直交変換部64の出力と加算される。 In step S54, the selection unit 73 selects a predicted image. That is, a prediction image generated by the intra prediction unit 71 or a prediction image generated by the motion prediction / compensation unit 72 is supplied. Therefore, the supplied predicted image is selected and supplied to the calculation unit 65, and is added to the output of the inverse orthogonal transform unit 64 in step S57 described later.
 上述したステップS52において、可逆復号部62により復号された変換係数は、逆量子化部63にも供給される。ステップS55において、逆量子化部63は可逆復号部62により復号された変換係数を、図1の量子化部25の特性に対応する特性で逆量子化する。 In step S52 described above, the transform coefficient decoded by the lossless decoding unit 62 is also supplied to the inverse quantization unit 63. In step S55, the inverse quantization unit 63 inversely quantizes the transform coefficient decoded by the lossless decoding unit 62 with characteristics corresponding to the characteristics of the quantization unit 25 in FIG.
 ステップS56において逆直交変換部29は、逆量子化部28により逆量子化された変換係数を、図1の直交変換部24の特性に対応する特性で逆直交変換する。これにより図1の直交変換部24の入力(演算部23の出力)に対応する差分情報が復号されたことになる。 In step S56, the inverse orthogonal transform unit 29 performs inverse orthogonal transform on the transform coefficient inversely quantized by the inverse quantization unit 28 with characteristics corresponding to the characteristics of the orthogonal transform unit 24 of FIG. As a result, the difference information corresponding to the input of the orthogonal transform unit 24 of FIG. 1 (the output of the calculation unit 23) is decoded.
 ステップS57において、演算部65は、上述したステップS54の処理で選択され、選択部73を介して入力される予測画像を差分情報と加算する。これにより元の画像が復号される。 In step S57, the calculation unit 65 adds the prediction image selected in the process of step S54 described above and input via the selection unit 73 to the difference information. As a result, the original image is decoded.
 ステップS58においてデブロッキングフィルタ66は、演算部65より出力された画像に対して、デブロッキングフィルタ処理を行う。これによりブロック歪みが除去される。デブロッキングフィルタ66からの復号画像は、適応オフセットフィルタ81に出力される。 In step S58, the deblocking filter 66 performs deblocking filter processing on the image output from the calculation unit 65. Thereby, block distortion is removed. The decoded image from the deblocking filter 66 is output to the adaptive offset filter 81.
 ステップS59において、適応オフセットフィルタ81は、適応オフセットフィルタ処理を行う。この処理により、分割領域毎にオフセットフィルタの種類が決定されたものであるquad-tree構造と分割領域毎のオフセット値を用いて、デブロッキングフィルタ66によるフィルタ後の画像に対して、フィルタ処理が施される。フィルタ後の画像は、適応ループフィルタ82に供給される。 In step S59, the adaptive offset filter 81 performs adaptive offset filter processing. With this processing, the filtering process is performed on the image after filtering by the deblocking filter 66 using the quad-tree structure in which the type of the offset filter is determined for each divided region and the offset value for each divided region. Applied. The filtered image is supplied to the adaptive loop filter 82.
 ステップS60において、適応ループフィルタ82は、適応オフセットフィルタ81によるフィルタ後の画像に対して、適応ループフィルタ処理を行う。フィルタ後の画像は、画面並べ替えバッファ67およびフレームメモリ69に供給される。 In step S60, the adaptive loop filter 82 performs an adaptive loop filter process on the image after filtering by the adaptive offset filter 81. The filtered image is supplied to the screen rearrangement buffer 67 and the frame memory 69.
 なお、適応ループフィルタ処理の詳細は、図10を参照して後述するが、可逆復号部62からのフィルタ係数、またはバッファに格納されている、可逆復号部62からのバッファインデックスに対応するフィルタ係数がフィルタ処理に用いられる。 The details of the adaptive loop filter processing will be described later with reference to FIG. 10, but the filter coefficient corresponding to the filter coefficient from the lossless decoding unit 62 or the buffer index from the lossless decoding unit 62 stored in the buffer. Are used for filtering.
 可逆復号部62からのバッファインデックスに対応するフィルタ係数が用いられた場合、フィルタ処理に用いられたフィルタ係数が、そのバッファにおいて優先順位の高い領域に格納されているフィルタ係数と交換される(格納領域が入れ替えられる)。 When the filter coefficient corresponding to the buffer index from the lossless decoding unit 62 is used, the filter coefficient used for the filter processing is exchanged with the filter coefficient stored in the high priority area in the buffer (stored) Area is swapped).
 一方、可逆復号部62からのフィルタ係数が用いられた場合、用いられたフィルタ係数は、バッファにおいて、空き領域のうち、優先順位の高い領域にフィルタ係数が格納される。求められたフィルタ係数が用いられた場合で、空き領域がないときには、そのバッファにおいて、FIFO処理が行われる。 On the other hand, when the filter coefficient from the lossless decoding unit 62 is used, the filter coefficient used is stored in a high-priority area in the empty area in the buffer. When the obtained filter coefficient is used and there is no free area, FIFO processing is performed in the buffer.
 ステップS61においてフレームメモリ69は、フィルタリングされた画像を記憶する。 In step S61, the frame memory 69 stores the filtered image.
 ステップS62において、画面並べ替えバッファ67は、適応ループフィルタ82後の画像の並べ替えを行う。すなわち画像符号化装置11の画面並べ替えバッファ22により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。 In step S62, the screen rearrangement buffer 67 rearranges the images after the adaptive loop filter 82. That is, the order of frames rearranged for encoding by the screen rearrangement buffer 22 of the image encoding device 11 is rearranged to the original display order.
 ステップS63において、D/A変換部68は、画面並べ替えバッファ67からの画像をD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。 In step S63, the D / A conversion unit 68 D / A converts the image from the screen rearrangement buffer 67. This image is output to a display (not shown), and the image is displayed.
 ステップS63の処理が終了すると、復号処理が終了される。 When the process of step S63 ends, the decoding process ends.
<2.第1の実施の形態>
[従来の手法]
 まず、図5を参照して、非特許文献2に示される従来の手法について説明する。
<2. First Embodiment>
[Conventional method]
First, a conventional method shown in Non-Patent Document 2 will be described with reference to FIG.
 図5の例においては、復号側でのフィルタ係数111とALF係数バッファ112が示されている。フィルタ係数111は、伝送されてきた直近LCUのフィルタ係数である。ALF係数バッファ112は、1乃至N(例えば、N=16)のフィルタ係数を格納できるように構成されており、いま、16のフィルタ係数が格納されている。また、ALF係数バッファ112は、FIFOに構成されており、バッファの大きさより以前のフィルタ係数は破棄される。 In the example of FIG. 5, a filter coefficient 111 and an ALF coefficient buffer 112 on the decoding side are shown. The filter coefficient 111 is a filter coefficient of the most recently transmitted LCU. The ALF coefficient buffer 112 is configured to store 1 to N (for example, N = 16) filter coefficients, and now 16 filter coefficients are stored. Further, the ALF coefficient buffer 112 is configured as a FIFO, and filter coefficients before the size of the buffer are discarded.
 非特許文献2の手法では、LCU毎にフィルタ係数が符号化側から伝送されてくる。伝送されてきた直近LCUのフィルタ係数111は、ALF係数バッファ112の先頭に格納され、それまで格納されていたフィルタ係数は、順にバッファの後方へ移動される。したがって、空き領域がない場合には、以前伝送された最も小さいLCU番号のフィルタ係数は、どんなに使用回数が多くとも破棄されていた。 In the method of Non-Patent Document 2, the filter coefficient is transmitted from the encoding side for each LCU. The transmitted filter coefficient 111 of the latest LCU is stored at the head of the ALF coefficient buffer 112, and the filter coefficients stored up to that point are sequentially moved to the rear of the buffer. Therefore, when there is no free space, the filter coefficient of the smallest LCU number transmitted before is discarded no matter how many times it is used.
 以上のように、非特許文献2の手法では、フィルタ処理に用いられるフィルタ係数が、過去に伝送された係数と同じフィルタ係数であっても、再度伝送する必要が生じることがあり、伝送コストがかかってしまっていた。 As described above, in the method of Non-Patent Document 2, even if the filter coefficient used for the filter process is the same filter coefficient as the coefficient transmitted in the past, it may be necessary to transmit again, and the transmission cost is reduced. It was hanging.
[本技術の概要]
 そこで、本技術においては、バッファ内に格納されているフィルタ係数のうち、参照されたフィルタ係数は、バッファにおいて優先順位の高い領域に移動させる。さらに、バッファに対して、水平ラインの閉じた範囲毎にバッファのリセットを行わせる。
[Outline of this technology]
Therefore, in the present technology, among the filter coefficients stored in the buffer, the referred filter coefficient is moved to a high priority area in the buffer. Further, the buffer is reset for each closed range of the horizontal line.
 なお、水平ラインの閉じた範囲とは、画枠の左端乃至右端の範囲などであり、例えば、LCUライン(符号化最大単位ライン)の右端で、LCUライン毎にバッファのリセットが行われる。例えば、タイルという概念があれば、タイルの左端乃至右端の範囲であってもよい。 Note that the closed range of the horizontal line is the range from the left end to the right end of the image frame. For example, at the right end of the LCU line (encoding maximum unit line), the buffer is reset for each LCU line. For example, if there is a concept of tile, the range from the left end to the right end of the tile may be used.
 図6を参照して、本技術の概要について説明する。図6の例においては、復号側でのフィルタ係数111とALF係数バッファ121-1および121-2が示されている。フィルタ係数111は、伝送されてきた直近LCUのフィルタ係数である。 The outline of this technology will be described with reference to FIG. In the example of FIG. 6, a filter coefficient 111 and ALF coefficient buffers 121-1 and 121-2 on the decoding side are shown. The filter coefficient 111 is a filter coefficient of the most recently transmitted LCU.
 ALF係数バッファ121-1および121-2は、1乃至N(例えば、N=16)のフィルタ係数を格納できるように構成されており、いま、16のフィルタ係数が格納されている。ALF係数バッファ121-1は、直近LCUにおいて、バッファ内に格納されたフィルタ係数が参照された場合のALF係数バッファを表している。また、ALF係数バッファ121-2は、直近LCUにおいて、伝送されてきたフィルタ係数111が用いられる場合のALF係数バッファを示している。 The ALF coefficient buffers 121-1 and 121-2 are configured to store 1 to N (for example, N = 16) filter coefficients, and now 16 filter coefficients are stored. The ALF coefficient buffer 121-1 represents an ALF coefficient buffer when the filter coefficient stored in the buffer is referred to in the latest LCU. An ALF coefficient buffer 121-2 indicates an ALF coefficient buffer when the transmitted filter coefficient 111 is used in the latest LCU.
 ALF係数バッファ121-1に示されるように、直近LCUにおいて、格納されているフィルタ係数が参照された場合、参照されたフィルタ係数は、ALF係数バッファ121-1において、優先順位の高い領域へ移動される。図6の例の場合、バッファ内の前方が優先順位の高い領域であるので、参照されたフィルタ係数のバッファ内の順位は、前方へ移動される。 As shown in the ALF coefficient buffer 121-1, when a stored filter coefficient is referenced in the latest LCU, the referenced filter coefficient is moved to a higher priority area in the ALF coefficient buffer 121-1. Is done. In the case of the example of FIG. 6, since the front in the buffer is a high priority area, the order of the referenced filter coefficient in the buffer is moved forward.
 一方、ALF係数バッファ121-2に示されるように、直近LCUにおいて伝送されてきたフィルタ係数111が用いられる場合に、空き領域がなかったとき、ALF係数バッファ121-2において、そのフィルタ係数111を用いて、FIFO処理が行われる。すなわち、伝送されてきたフィルタ係数111は、ALF係数バッファ121-1において、優先順位の高い領域である、最も小さいインデックスの領域に格納され、格納されていたフィルタ係数は、順にバッファ内の後方へ移動される。そして、ALF係数バッファ121-1において、一番使用頻度の少なかったフィルタ係数が破棄される。すなわち、使われないフィルタ係数ほど捨てられやすくなる。 On the other hand, as shown in the ALF coefficient buffer 121-2, when the filter coefficient 111 transmitted in the most recent LCU is used, when there is no free area, the ALF coefficient buffer 121-2 stores the filter coefficient 111. And FIFO processing is performed. That is, the transmitted filter coefficient 111 is stored in the area of the lowest index, which is the area with the highest priority, in the ALF coefficient buffer 121-1, and the stored filter coefficients are sequentially moved backward in the buffer. Moved. In the ALF coefficient buffer 121-1, the filter coefficient that is least frequently used is discarded. That is, filter coefficients that are not used are more likely to be discarded.
 なお、直近LCUにおいて伝送されてきたフィルタ係数111が用いられる場合に、空き領域があったときには、フィルタ係数111は、空き領域のうち、優先順位の高い空き領域に格納される。 When the filter coefficient 111 transmitted in the latest LCU is used and there is a free area, the filter coefficient 111 is stored in a free area having a high priority among the free areas.
 以上のように、フィルタ係数用のバッファにおいて、参照の履歴管理を行うことにより、よく参照されるフィルタ係数は、バッファ内に長く存在することになり、再び伝送する必要がなくなる。これにより符号化効率を改善することができる。 As described above, by managing the reference history in the filter coefficient buffer, frequently referred filter coefficients exist in the buffer for a long time, and need not be transmitted again. Thereby, encoding efficiency can be improved.
 また、1フレーム分の履歴管理は煩雑になることが考えられるので、水平ラインの閉じた範囲、例えば、LCUライン単位でバッファのリセットを行う。 Also, since the history management for one frame can be complicated, the buffer is reset in the closed range of the horizontal line, for example, in units of LCU lines.
 これにより、履歴管理が煩雑になりすぎるのを防ぐことができる。 This can prevent the history management from becoming too complicated.
[符号化側の適応ループフィルタの構成例]
 図7は、図1の画像符号化装置における適応ループフィルタおよび可逆符号化部の構成例を示すブロック図である。
[Configuration example of adaptive loop filter on encoding side]
FIG. 7 is a block diagram illustrating a configuration example of an adaptive loop filter and a lossless encoding unit in the image encoding device of FIG.
 図7の例において、適応ループフィルタ42は、画像バッファ211、ALF係数計算部212、ALF処理部213、係数読み出し部214、およびALF係数格納バッファ215を含むように構成される。また、適応ループフィルタ42は、RD評価値計算部216、バッファ管理部217、およびALFパラメータ設定部218を含むように構成される。 7, the adaptive loop filter 42 is configured to include an image buffer 211, an ALF coefficient calculation unit 212, an ALF processing unit 213, a coefficient reading unit 214, and an ALF coefficient storage buffer 215. The adaptive loop filter 42 is configured to include an RD evaluation value calculation unit 216, a buffer management unit 217, and an ALF parameter setting unit 218.
 可逆符号化部26は、少なくとも、シンタクス書き込み部221を含むように構成される。 The lossless encoding unit 26 is configured to include at least a syntax writing unit 221.
 適応オフセットフィルタ41からの適応ループフィルタ前画像と、画面並べ替えバッファ22からの原画像は、画像バッファ211に入力される。画像バッファ211は、フィルタ前画像と原画像とを一旦蓄積し、所定のタイミングでALF係数計算部212に供給する。また、画像バッファ211は、フィルタ前画像をALF処理部213に供給し、原画像を、RD評価値計算部216に供給する。 The image before the adaptive loop filter from the adaptive offset filter 41 and the original image from the screen rearrangement buffer 22 are input to the image buffer 211. The image buffer 211 temporarily stores the pre-filter image and the original image, and supplies them to the ALF coefficient calculation unit 212 at a predetermined timing. Further, the image buffer 211 supplies the pre-filter image to the ALF processing unit 213 and supplies the original image to the RD evaluation value calculation unit 216.
 ALF係数計算部212は、LCU毎に、原画像とフィルタ前画像の相関を計算し、最善のALFフィルタ係数(すなわち、原画像との誤差を最小にする係数)を1つ求め、求めたALFフィルタ係数をALF処理部213に供給する。 The ALF coefficient calculation unit 212 calculates the correlation between the original image and the pre-filter image for each LCU, finds the best ALF filter coefficient (that is, the coefficient that minimizes the error from the original image), and calculates the obtained ALF. The filter coefficient is supplied to the ALF processing unit 213.
 ALF処理部213は、係数読み出し部214にバッファインデックスを供給することで、ALF係数格納バッファ215に格納されているフィルタ係数を読み出させる。ALF処理部213は、画像バッファ211からのフィルタ前画像に対して、ALF係数計算部212からのフィルタ係数および読み出されたフィルタ係数を用いて、LCU毎にフィルタ処理を行う。そして、ALF処理部213は、フィルタ後画素値とその際のフィルタ係数またはバッファインデックスをRD評価値計算部216に供給する。 The ALF processing unit 213 reads the filter coefficient stored in the ALF coefficient storage buffer 215 by supplying the buffer index to the coefficient reading unit 214. The ALF processing unit 213 performs filter processing on the pre-filter image from the image buffer 211 for each LCU using the filter coefficient from the ALF coefficient calculation unit 212 and the read filter coefficient. Then, the ALF processing unit 213 supplies the post-filter pixel value and the filter coefficient or buffer index at that time to the RD evaluation value calculation unit 216.
 また、ALF処理部213は、RD評価後に、RD評価値計算部216からの処理の有無(on/off)を示す情報に基づき、画像バッファ211からのフィルタ前画像に対して、LCU毎に、係数読み出し部214から供給されるフィルタ係数を用いてフィルタ処理を行う。そして、ALF処理部213は、フィルタ後画素値をフレームメモリ32に供給する。 In addition, the ALF processing unit 213 performs, after RD evaluation, for each LCU on the pre-filter image from the image buffer 211 based on information indicating the presence / absence of processing (on / off) from the RD evaluation value calculation unit 216. Filter processing is performed using the filter coefficient supplied from the coefficient reading unit 214. Then, the ALF processing unit 213 supplies the filtered pixel value to the frame memory 32.
 係数読み出し部214は、ALF処理部213から要求されるバッファインデックスに対応するフィルタ係数を、ALF係数格納バッファ215から読み出し、ALF処理部213に供給する。また、係数読み出し部214は、RD評価後に、バッファ管理部217からのバッファインデックスに対応するフィルタ係数をALF係数格納バッファ215から読み出し、ALF処理部213に供給する。 The coefficient reading unit 214 reads out the filter coefficient corresponding to the buffer index requested from the ALF processing unit 213 from the ALF coefficient storage buffer 215 and supplies it to the ALF processing unit 213. Further, after the RD evaluation, the coefficient reading unit 214 reads out the filter coefficient corresponding to the buffer index from the buffer management unit 217 from the ALF coefficient storage buffer 215 and supplies it to the ALF processing unit 213.
 ALF係数格納バッファ215は、1画面(ピクチャ)につき、NパターンのALFフィルタ係数(セット)を格納可能に構成されている。バッファサイズは、(ALFタップ長×係数のビット精度×N)ビットである。ただし、係数を可変長符号化で圧縮する場合は、これより小さくなる。また、ALF係数格納バッファ215に格納されているALFフィルタ係数は、画面毎およびLUCライン毎にリセットされる。ALF係数格納バッファ215は、インデックスが小さい領域が優先順位の高い領域であるようにバッファ管理部217に管理されている。 The ALF coefficient storage buffer 215 is configured to store N patterns of ALF filter coefficients (sets) per screen (picture). The buffer size is (ALF tap length × coefficient bit precision × N) bits. However, when the coefficient is compressed by variable length coding, it becomes smaller than this. The ALF filter coefficient stored in the ALF coefficient storage buffer 215 is reset for each screen and for each LUC line. The ALF coefficient storage buffer 215 is managed by the buffer management unit 217 so that an area with a small index is an area with a high priority.
 RD評価値計算部216は、画像バッファ211からの原画像とALF処理部213からのフィルタ後画像を用いて、LCU毎に、各フィルタ係数でALF処理を行うか否かをRD計算による評価値を計算して判定する。RD評価値計算部216は、ALF処理を行う場合、その旨をALF処理部213、バッファ管理部217およびALFパラメータ設定部218に供給する。その際、RD評価値計算部216は、用いるフィルタ係数またはフィルタ係数に対応するバッファインデックスをバッファ管理部217およびALFパラメータ設定部218に供給する。RD評価値計算部216は、ALF処理を行わない場合、その旨のみを、ALF処理部213、バッファ管理部217およびALFパラメータ設定部218に供給する。 The RD evaluation value calculation unit 216 uses the original image from the image buffer 211 and the filtered image from the ALF processing unit 213 to determine whether or not to perform ALF processing with each filter coefficient for each LCU. Is calculated and determined. When performing the ALF processing, the RD evaluation value calculation unit 216 supplies the fact to the ALF processing unit 213, the buffer management unit 217, and the ALF parameter setting unit 218. At that time, the RD evaluation value calculation unit 216 supplies a filter coefficient to be used or a buffer index corresponding to the filter coefficient to the buffer management unit 217 and the ALF parameter setting unit 218. When not performing the ALF process, the RD evaluation value calculation unit 216 supplies only the fact to the ALF processing unit 213, the buffer management unit 217, and the ALF parameter setting unit 218.
 バッファ管理部217は、画面の始めと、LCUラインの右端において、ALF係数格納バッファ215を初期化(リセット)する。バッファ管理部217は、RD評価値計算部216からバッファインデックスが供給された場合、ALF係数格納バッファ215において、そのバッファインデックスに対応するフィルタ係数を係数読み出し部214に読み出させる。 The buffer management unit 217 initializes (resets) the ALF coefficient storage buffer 215 at the beginning of the screen and at the right end of the LCU line. When the buffer index is supplied from the RD evaluation value calculation unit 216, the buffer management unit 217 causes the coefficient reading unit 214 to read out the filter coefficient corresponding to the buffer index in the ALF coefficient storage buffer 215.
 さらに、バッファ管理部217は、そのバッファインデックスに対応するフィルタ係数を、ALF係数格納バッファ215内の優先順位の高い領域へ移動させる。具体的には、バッファ管理部217は、読み出したフィルタ係数と、読み出したフィルタ係数のインデックスより1つ前のインデックスのフィルタ係数とを交換させる。すなわち、参照されたフィルタ係数は、1つずつ優先順位の高い領域へ移動することになる。 Further, the buffer management unit 217 moves the filter coefficient corresponding to the buffer index to a high priority area in the ALF coefficient storage buffer 215. Specifically, the buffer management unit 217 exchanges the read filter coefficient with the filter coefficient of the index immediately before the read filter coefficient index. That is, the referred filter coefficients are moved one by one to a higher priority area.
 また、バッファ管理部217は、RD評価値計算部216からフィルタ係数が供給された場合、ALF係数格納バッファ215内の空き領域のうち、最も優先順位の高い領域(最も小さいインデックスの領域)に供給されたフィルタ係数を格納する。なお、ALF係数格納バッファ215内の空き領域がない場合、バッファ管理部217は、RD評価値計算部216からのフィルタ係数を用いて、ALF係数格納バッファ215のFIFO処理を行う。そして、バッファ管理部217は、格納したフィルタ係数を、係数読み出し部214に読み出させる。すなわち、バッファ管理部217は、フィルタ係数を参照する際の履歴を管理する部でもある。 In addition, when the filter coefficient is supplied from the RD evaluation value calculation unit 216, the buffer management unit 217 supplies the empty area in the ALF coefficient storage buffer 215 to the area with the highest priority (the area with the smallest index). Stored filter coefficients. When there is no free space in the ALF coefficient storage buffer 215, the buffer management unit 217 performs FIFO processing of the ALF coefficient storage buffer 215 using the filter coefficient from the RD evaluation value calculation unit 216. Then, the buffer management unit 217 causes the coefficient reading unit 214 to read the stored filter coefficient. That is, the buffer management unit 217 is also a unit that manages a history when referring to the filter coefficient.
 ALFパラメータ設定部218は、RD評価値計算部216から供給される情報を参照して、ALF処理を行うか否かを示すon/offフラグを設定して、設定したon/offフラグをシンタクス書き込み部221に供給する。なお、ALF処理を行う場合、使用されるバッファインデックスまたはフィルタ係数も、シンタクス書き込み部221に供給される。 The ALF parameter setting unit 218 refers to the information supplied from the RD evaluation value calculation unit 216, sets an on / off flag indicating whether or not to perform ALF processing, and writes the set on / off flag in syntax To the unit 221. When performing ALF processing, the buffer index or filter coefficient to be used is also supplied to the syntax writing unit 221.
 シンタクス書き込み部221は、各パラメータを、符号化ストリームのヘッダに付加する。例えば、シンタクス書き込み部221は、ALFパラメータ設定部218からのon/offフラグと、必要であれば、インデックスまたはフィルタ係数を、符号化ストリームのヘッダに付加する。 The syntax writing unit 221 adds each parameter to the header of the encoded stream. For example, the syntax writing unit 221 adds an on / off flag from the ALF parameter setting unit 218 and, if necessary, an index or a filter coefficient to the header of the encoded stream.
[符号化側の適応ループフィルタ処理]
 次に、図8のフローチャートを参照して、図7の適応ループフィルタ42が行う適応ループフィルタ処理について説明する。なお、この適応オフセットフィルタ処理は、図2のステップS24における処理である。
[Adaptive loop filter processing on encoding side]
Next, the adaptive loop filter process performed by the adaptive loop filter 42 of FIG. 7 will be described with reference to the flowchart of FIG. This adaptive offset filter process is the process in step S24 of FIG.
 適応オフセットフィルタ41からの適応ループフィルタ前画像と、画面並べ替えバッファ22からの原画像は、画像バッファ211に入力される。画像バッファ211は、フィルタ前画像と原画像とを一旦蓄積し、所定のタイミングでALF係数計算部212に供給する。 The image before the adaptive loop filter from the adaptive offset filter 41 and the original image from the screen rearrangement buffer 22 are input to the image buffer 211. The image buffer 211 temporarily stores the pre-filter image and the original image, and supplies them to the ALF coefficient calculation unit 212 at a predetermined timing.
 バッファ管理部217は、ステップS211において、ALF係数格納バッファ215を初期化(リセット)する。 In step S211, the buffer management unit 217 initializes (resets) the ALF coefficient storage buffer 215.
 ALF係数計算部212は、ステップS212において、各LCUで、原画像とフィルタ前画像の相関を計算し、最善のALFフィルタ係数を1つ求める。なお、このALF係数計算処理は、各LCUの予測処理と残差符号化処理およびデブロッキングフィルタが終わった後に行われる。 In step S212, the ALF coefficient calculation unit 212 calculates the correlation between the original image and the pre-filter image in each LCU, and obtains one best ALF filter coefficient. This ALF coefficient calculation process is performed after the prediction process, residual encoding process, and deblocking filter of each LCU.
 ALF係数計算部212は、求めたフィルタ係数を、ALF処理部213に供給する。ALF処理部213は、画像バッファ211からのフィルタ前画像に対して、ALF係数計算部212からのフィルタ係数および読み出されたフィルタ係数を用いて、LCU毎にフィルタ処理を行う。そして、ALF処理部213は、フィルタ後画素値とその際のフィルタ係数またはバッファインデックスをRD評価値計算部216に供給する。 The ALF coefficient calculation unit 212 supplies the obtained filter coefficient to the ALF processing unit 213. The ALF processing unit 213 performs filter processing on the pre-filter image from the image buffer 211 for each LCU using the filter coefficient from the ALF coefficient calculation unit 212 and the read filter coefficient. Then, the ALF processing unit 213 supplies the post-filter pixel value and the filter coefficient or buffer index at that time to the RD evaluation value calculation unit 216.
 RD評価値計算部216は、ステップS213において、LCU毎に評価値を計算する。すなわち、RD評価値計算部216は、LCU毎に、求めたフィルタ係数を用いてALF処理を行うか否かをRD計算による評価値により判定する。また、その際、用いるフィルタ係数も選択する。評価値RDは、次の式(1)のように求められる。

 RD = R + λD(λは定数)    ・・・(1)
In step S213, the RD evaluation value calculation unit 216 calculates an evaluation value for each LCU. That is, the RD evaluation value calculation unit 216 determines, for each LCU, whether or not to perform ALF processing using the obtained filter coefficient, based on the evaluation value obtained by RD calculation. At that time, a filter coefficient to be used is also selected. The evaluation value RD is obtained as in the following formula (1).

RD = R + λD (λ is a constant) (1)
 ここで、ALF処理を行う場合、
  R1=(ALFを行うことを示すon/offフラグのビット量とフィルタ係数のインデックスとの伝送に必要なビット量の合計)
  D1=(フィルタ後の画像と原画像のSAD(差分絶対和))
 以上より、RD1=R1+D1
Here, when performing ALF processing,
R1 = (total amount of bits required for transmission of bit amount of on / off flag indicating that ALF is performed and filter coefficient index)
D1 = (SAD of filtered image and original image (difference absolute sum))
From the above, RD1 = R1 + D1
 一方、ALF処理を行わない場合、
  R0=(ALFを行わないことを示すon/offフラグのビット量)
  D0=(フィルタ前の画像と原画像のSAD(差分絶対和))
 以上より、RD0=R0+D0
 となる。
On the other hand, when ALF processing is not performed,
R0 = (bit amount of on / off flag indicating that ALF is not performed)
D0 = (SAD (difference absolute sum) of original image and original image)
From the above, RD0 = R0 + D0
It becomes.
 RD評価値計算部216は、求めた評価値により、ステップS214において、フィルタ処理を行うか否かを判定する。ステップS214において、フィルタ処理を行うと判定された場合、処理は、ステップS215に進む。 RD evaluation value calculation unit 216 determines whether or not to perform a filter process in step S214 based on the obtained evaluation value. If it is determined in step S214 that the filter process is to be performed, the process proceeds to step S215.
 ステップS215において、RD評価値計算部216は、選択したフィルタ係数が、ALF係数計算部212により求められたフィルタ係数であるか否かを判定する。ステップS215において、ALF係数計算部212により求められたフィルタ係数ではないと判定された場合、処理は、ステップS216に進む。このとき、RD評価値計算部216は、フィルタ処理を行う旨と、選択したフィルタ係数に対応するバッファインデックスをバッファ管理部217およびALFパラメータ設定部218に供給する。 In step S215, the RD evaluation value calculation unit 216 determines whether or not the selected filter coefficient is the filter coefficient obtained by the ALF coefficient calculation unit 212. If it is determined in step S215 that the filter coefficient is not obtained by the ALF coefficient calculation unit 212, the process proceeds to step S216. At this time, the RD evaluation value calculation unit 216 supplies the buffer management unit 217 and the ALF parameter setting unit 218 with the fact that the filter processing is performed and the buffer index corresponding to the selected filter coefficient.
 ステップS216において、ALFパラメータ設定部218は、フィルタ処理を行うことを示すフラグを設定し、設定したフラグとバッファインデックスとをシンタクス書き込み部221に符号化させる。すなわち、ALFパラメータ設定部218は、設定したフラグとバッファインデックスとを、適応ループフィルタのパラメータとして、シンタクス書き込み部221に供給する。 In step S216, the ALF parameter setting unit 218 sets a flag indicating that the filtering process is performed, and causes the syntax writing unit 221 to encode the set flag and the buffer index. That is, the ALF parameter setting unit 218 supplies the set flag and buffer index to the syntax writing unit 221 as adaptive loop filter parameters.
 これに対応して、シンタクス書き込み部221は、上述した図2のステップS26において、ALFパラメータ設定部218からの適応ループフィルタのパラメータを、LCU単位で、符号化ストリームのヘッダ部に書き込む。 Correspondingly, the syntax writing unit 221 writes the parameter of the adaptive loop filter from the ALF parameter setting unit 218 to the header portion of the encoded stream in units of LCUs in step S26 of FIG.
 ステップS217において、バッファ管理部217は、ALF係数格納バッファ215において、RD評価値計算部216からのバッファインデックスに対応するフィルタ係数を係数読み出し部214に読み出させる。 In step S217, the buffer management unit 217 causes the coefficient reading unit 214 to read out the filter coefficient corresponding to the buffer index from the RD evaluation value calculation unit 216 in the ALF coefficient storage buffer 215.
 係数読み出し部214は、バッファ管理部217からのバッファインデックスに対応するフィルタ係数をALF係数格納バッファ215から読み出し、ALF処理部213に供給する。 The coefficient reading unit 214 reads out the filter coefficient corresponding to the buffer index from the buffer management unit 217 from the ALF coefficient storage buffer 215 and supplies it to the ALF processing unit 213.
 ステップS218において、ALF処理部213は、画像バッファ211からのフィルタ前画像に対して、LCU毎に、係数読み出し部214により読み出されたフィルタ係数を用いてフィルタ処理を行い、フィルタ後画素値をフレームメモリ32に供給する。 In step S218, the ALF processing unit 213 performs a filtering process on the pre-filter image from the image buffer 211 using the filter coefficient read by the coefficient reading unit 214 for each LCU, and calculates the post-filter pixel value. The frame memory 32 is supplied.
 ステップS219において、バッファ管理部217は、参照されたインデックスのフィルタ係数と、そのインデックスの1つ前のフィルタ係数とを交換する。すなわち、バッファ管理部217は、参照されたインデックスのフィルタ係数を優先順位の高い領域に移動させる。 In step S219, the buffer management unit 217 exchanges the filter coefficient of the referenced index with the filter coefficient of the previous index. In other words, the buffer management unit 217 moves the filter coefficient of the referenced index to a high priority area.
 一方、ステップS215において、ALF係数計算部212により求められたフィルタ係数であると判定された場合、処理は、ステップS220に進む。このとき、RD評価値計算部216は、フィルタ処理を行う旨と、選択したフィルタ係数をバッファ管理部217およびALFパラメータ設定部218に供給する。 On the other hand, if it is determined in step S215 that the filter coefficient is obtained by the ALF coefficient calculation unit 212, the process proceeds to step S220. At this time, the RD evaluation value calculation unit 216 supplies the buffer management unit 217 and the ALF parameter setting unit 218 to the effect that the filtering process is performed and the selected filter coefficient.
 ステップS220において、ALFパラメータ設定部218は、フィルタ処理を行うことを示すフラグを設定し、設定したフラグとフィルタ係数とを、シンタクス書き込み部221に符号化させる。すなわち、ALFパラメータ設定部218は、設定したフラグとフィルタ係数とを、適応ループフィルタのパラメータとして、シンタクス書き込み部221に供給する。 In step S220, the ALF parameter setting unit 218 sets a flag indicating that the filtering process is performed, and causes the syntax writing unit 221 to encode the set flag and the filter coefficient. That is, the ALF parameter setting unit 218 supplies the set flag and filter coefficient to the syntax writing unit 221 as parameters of the adaptive loop filter.
 これに対応して、シンタクス書き込み部221は、上述した図2のステップS26において、ALFパラメータ設定部218からの適応ループフィルタのパラメータを、LCU単位で、符号化ストリームのヘッダ部に書き込む。 Correspondingly, the syntax writing unit 221 writes the parameter of the adaptive loop filter from the ALF parameter setting unit 218 to the header portion of the encoded stream in units of LCUs in step S26 of FIG.
 ステップS221において、バッファ管理部217は、ALF係数格納バッファ215に空きがあるか否かを判定する。ステップS221において、ALF係数格納バッファ215に空きがあると判定された場合、処理は、ステップS222に進む。 In step S221, the buffer management unit 217 determines whether or not there is a free space in the ALF coefficient storage buffer 215. If it is determined in step S221 that the ALF coefficient storage buffer 215 is free, the process proceeds to step S222.
 ステップS222において、バッファ管理部217は、RD評価値計算部216から供給されたフィルタ係数を、ALF係数格納バッファ215内の空き領域のうち、最も小さいインデックスの領域に格納する。フィルタ係数は、空き領域のうち、優先順位の高い領域に格納される。 In step S222, the buffer management unit 217 stores the filter coefficient supplied from the RD evaluation value calculation unit 216 in the area of the smallest index among the free areas in the ALF coefficient storage buffer 215. The filter coefficient is stored in a high priority area among the free areas.
 また、ステップS221において、ALF係数格納バッファ215に空きがないと判定された場合、処理は、ステップS223に進む。 If it is determined in step S221 that the ALF coefficient storage buffer 215 is not empty, the process proceeds to step S223.
 ステップS223において、バッファ管理部217は、RD評価値計算部216からのフィルタ係数を用いて、ALF係数格納バッファ215のFIFO処理を行う。すなわち、RD評価値計算部216からのフィルタ係数は、ALF係数格納バッファ215内の空き領域のうち、最も優先順位の高い領域である、最も小さいインデックスの領域に格納される。そして、格納されていたフィルタ係数は、順番に後ろの領域に格納され、1番後ろの領域に格納されていたフィルタ係数は破棄される。 In step S223, the buffer management unit 217 performs FIFO processing of the ALF coefficient storage buffer 215 using the filter coefficient from the RD evaluation value calculation unit 216. That is, the filter coefficient from the RD evaluation value calculation unit 216 is stored in the area of the smallest index that is the highest priority area among the free areas in the ALF coefficient storage buffer 215. The stored filter coefficients are sequentially stored in the subsequent area, and the filter coefficients stored in the last area are discarded.
 ステップS222およびS223の後、バッファ管理部217は、係数読み出し部214に対して、ALF係数格納バッファ215に格納したフィルタ係数を読み出させ、処理は、ステップS224に進む。 After steps S222 and S223, the buffer management unit 217 causes the coefficient reading unit 214 to read out the filter coefficients stored in the ALF coefficient storage buffer 215, and the process proceeds to step S224.
 ステップS224において、ALF処理部213は、画像バッファ211からのフィルタ前画像に対して、LCU毎に、係数読み出し部214から供給されるフィルタ係数を用いてフィルタ処理を行い、フィルタ後画素値をフレームメモリ32に供給する。 In step S224, the ALF processing unit 213 performs filter processing on the pre-filter image from the image buffer 211 using the filter coefficient supplied from the coefficient reading unit 214 for each LCU, and the post-filter pixel value is converted into a frame. This is supplied to the memory 32.
 一方、ステップS214において、フィルタ処理を行なわないと判定された場合、RD評価値計算部216は、フィルタ処理を行わない旨を、ALF処理部213、バッファ管理部217およびALFパラメータ設定部218に供給する。これに対応して、ALF処理部213は、画像バッファ211からのフィルタ前画像に対してフィルタ処理を行わず、そのままフレームメモリ32に供給する。 On the other hand, if it is determined in step S214 that the filtering process is not performed, the RD evaluation value calculation unit 216 supplies the fact that the filtering process is not performed to the ALF processing unit 213, the buffer management unit 217, and the ALF parameter setting unit 218. To do. In response to this, the ALF processing unit 213 supplies the frame memory 32 as it is without performing filter processing on the pre-filter image from the image buffer 211.
 ステップS225において、ALFパラメータ設定部218は、フィルタ処理を行わないことを示すフラグを設定し、設定したフラグを、適応ループフィルタのパラメータとして、シンタクス書き込み部221に供給する。 In step S225, the ALF parameter setting unit 218 sets a flag indicating that the filter processing is not performed, and supplies the set flag to the syntax writing unit 221 as an adaptive loop filter parameter.
 これに対応して、シンタクス書き込み部221は、上述した図2のステップS26において、ALFパラメータ設定部218からの適応ループフィルタのパラメータを、LCU単位で、符号化ストリームのヘッダ部に書き込む。 Correspondingly, the syntax writing unit 221 writes the parameter of the adaptive loop filter from the ALF parameter setting unit 218 to the header portion of the encoded stream in units of LCUs in step S26 of FIG.
 ステップS219、ステップS224、およびステップS225の後、処理は、ステップS226に進む。ALF係数計算部212は、ステップS226において、処理対象のLCUが、LCUラインにおける最後(右端)のLCUであるか否かを判定する。ステップS226において、LCUラインにおける最後(右端)のLCUではないと判定された場合、処理は、ステップS212に戻り、それ以降の処理が繰り返される。 After step S219, step S224, and step S225, the process proceeds to step S226. In step S226, the ALF coefficient calculation unit 212 determines whether or not the processing target LCU is the last (right end) LCU in the LCU line. If it is determined in step S226 that the LCU line is not the last (rightmost) LCU, the process returns to step S212 and the subsequent processes are repeated.
 ステップS225において、LCUラインにおける最後(右端)のLCUであると判定された場合、処理は、ステップS227に進む。 If it is determined in step S225 that it is the last (right end) LCU in the LCU line, the process proceeds to step S227.
 ステップS227において、ALF係数計算部212は、処理対象のLCUが、画面の最後のLCUであるか否かを判定する。ステップS227において、画面最後のLCUではないと判定された場合、処理は、ステップS211に戻り、バッファが初期化され、それ以降の処理が繰り返される。 In step S227, the ALF coefficient calculation unit 212 determines whether or not the processing target LCU is the last LCU on the screen. If it is determined in step S227 that it is not the last LCU on the screen, the process returns to step S211, the buffer is initialized, and the subsequent processes are repeated.
 ステップS227において、画面最後のLCUであると判定された場合、適応ループフィルタ処理は終了される。 If it is determined in step S227 that the LCU is the last LCU on the screen, the adaptive loop filter process is terminated.
 以上のように、画像符号化装置11において、バッファに格納されていたフィルタ係数がフィルタ処理に用いられた場合、そのフィルタ係数は、バッファにおいて、優先順位の高い領域に移動される。一方、求められたフィルタ係数がフィルタ処理に用いられた場合、そのフィルタ係数は、空き領域のうち、最も優先順位の高い領域に格納される。なお、空き領域がない場合、求められたフィルタ係数で、FIFO処理が行われる。 As described above, in the image encoding device 11, when the filter coefficient stored in the buffer is used for the filter processing, the filter coefficient is moved to a high priority area in the buffer. On the other hand, when the obtained filter coefficient is used for the filtering process, the filter coefficient is stored in an area having the highest priority among the free areas. If there is no free area, FIFO processing is performed with the obtained filter coefficient.
[復号側の適応ループフィルタの構成例]
 図9は、図2の画像復号装置における可逆復号部および適応ループフィルタ構成例を示すブロック図である。
[Configuration example of adaptive loop filter on decoding side]
FIG. 9 is a block diagram illustrating a configuration example of the lossless decoding unit and the adaptive loop filter in the image decoding device of FIG.
 図9の例において、可逆復号部62は、少なくとも、シンタクス読み出し部251を含むように構成される。 In the example of FIG. 9, the lossless decoding unit 62 is configured to include at least a syntax reading unit 251.
 適応ループフィルタ82は、パラメータ受け取り部261、係数書き込み部262、バッファ管理部263、ALF係数格納バッファ264、およびALF処理部265を含むように構成される。 The adaptive loop filter 82 is configured to include a parameter receiving unit 261, a coefficient writing unit 262, a buffer management unit 263, an ALF coefficient storage buffer 264, and an ALF processing unit 265.
 シンタクス読み出し部251は、符号化ストリームのヘッダ部からシンタクスを読み出し、そのうち、適応ループフィルタのパラメータを、パラメータ受け取り部261に供給する。 The syntax reading unit 251 reads the syntax from the header part of the encoded stream, and supplies the parameter of the adaptive loop filter to the parameter receiving unit 261.
 なお、符号化側でも上述したように、適応ループフィルタのパラメータは、例えば、ALF処理のon/offを示すフラグ、および用いられるフィルタ係数またはフィルタ係数のバッファインデックスなどである。 As described above on the encoding side, the parameters of the adaptive loop filter are, for example, a flag indicating on / off of ALF processing, and a filter coefficient to be used or a buffer index of the filter coefficient.
 パラメータ受け取り部261は、シンタクス読み出し部251から供給された適応ループフィルタのパラメータを受け取る。パラメータ受け取り部261は、ALF処理のon/offを示すフラグを、ALF処理部265に供給する。パラメータ受け取り部261は、用いられるフィルタ係数またはフィルタ係数のバッファインデックスを係数読み出し部262およびバッファ管理部263に供給する。 The parameter receiving unit 261 receives the parameters of the adaptive loop filter supplied from the syntax reading unit 251. The parameter receiving unit 261 supplies a flag indicating ALF processing on / off to the ALF processing unit 265. The parameter receiving unit 261 supplies the filter coefficient to be used or the buffer index of the filter coefficient to the coefficient reading unit 262 and the buffer management unit 263.
 係数読み出し部262は、パラメータ受け取り部261からのフィルタ係数を、ALF処理部265に供給する。係数読み出し部262は、パラメータ受け取り部261からのバッファインデックスに対応するフィルタ係数を、ALF係数格納バッファ264から読み出し、読み出したフィルタ係数を、ALF処理部265に供給する。 The coefficient reading unit 262 supplies the filter coefficient from the parameter receiving unit 261 to the ALF processing unit 265. The coefficient reading unit 262 reads out the filter coefficient corresponding to the buffer index from the parameter receiving unit 261 from the ALF coefficient storage buffer 264 and supplies the read filter coefficient to the ALF processing unit 265.
 バッファ管理部263の主な構成は、図7のバッファ管理部217の構成と基本的に同様である。バッファ管理部263は、画面の始めと、LCUラインの右端において、ALF係数格納バッファ264を初期化(リセット)する。バッファ管理部263は、パラメータ受け取り部261からバッファインデックスが供給された場合、そのバッファインデックスに対応するフィルタ係数を、ALF係数格納バッファ264内の優先順位の高い領域へ移動させる。具体的には、バッファ管理部263は、読み出したフィルタ係数と、読み出したフィルタ係数のインデックスより1つ前のインデックスのフィルタ係数とを交換させる。すなわち、参照されたフィルタ係数は、1つずつ優先順位の高い領域へ移動することになる。これにより、あまり参照されないフィルタ係数は、優先順位の低い領域へ移動していき、FIFO処理が行われた場合には、破棄の対象となる。 The main configuration of the buffer management unit 263 is basically the same as the configuration of the buffer management unit 217 of FIG. The buffer management unit 263 initializes (resets) the ALF coefficient storage buffer 264 at the beginning of the screen and at the right end of the LCU line. When the buffer index is supplied from the parameter receiving unit 261, the buffer management unit 263 moves the filter coefficient corresponding to the buffer index to a high priority area in the ALF coefficient storage buffer 264. Specifically, the buffer management unit 263 exchanges the read filter coefficient and the filter coefficient of the index immediately before the read filter coefficient index. That is, the referred filter coefficients are moved one by one to a higher priority area. As a result, filter coefficients that are not often referenced move to a low priority area, and are discarded when FIFO processing is performed.
 また、バッファ管理部263は、パラメータ受け取り部261からフィルタ係数が供給された場合、ALF係数格納バッファ264内の空き領域のうち、最も優先順位の高い領域(最も小さいインデックスの領域)に供給されたフィルタ係数を格納する。なお、ALF係数格納バッファ264内の空き領域がない場合、バッファ管理部263は、パラメータ受け取り部261からのフィルタ係数を用いて、ALF係数格納バッファ264のFIFO処理を行う。すなわち、バッファ管理部263は、フィルタ係数を参照する際の履歴を管理する部でもある。 Further, when the filter coefficient is supplied from the parameter receiving unit 261, the buffer management unit 263 is supplied to the highest priority region (the region with the smallest index) among the free regions in the ALF coefficient storage buffer 264. Stores filter coefficients. If there is no free space in the ALF coefficient storage buffer 264, the buffer management unit 263 performs the FIFO processing of the ALF coefficient storage buffer 264 using the filter coefficient from the parameter reception unit 261. That is, the buffer management unit 263 is also a unit that manages a history when referring to the filter coefficient.
 ALF係数格納バッファ264は、図7のALF係数格納バッファ215と基本的に同様に構成され、1画面(ピクチャ)につき、NパターンのALFフィルタ係数(セット)を格納可能に構成されている。バッファサイズは、(ALFタップ長×係数のビット精度×N)ビットである。ただし、係数を可変長符号化で圧縮する場合は、これより小さくなる。また、ALF係数格納バッファ264に格納されているALFフィルタ係数は、画面毎およびLUCライン毎にリセットされる。ALF係数格納バッファ264は、インデックスが小さい領域が優先順位の高い領域であるようにバッファ管理部263に管理されている。 The ALF coefficient storage buffer 264 is basically configured in the same manner as the ALF coefficient storage buffer 215 of FIG. 7, and is configured to store N patterns of ALF filter coefficients (sets) per screen (picture). The buffer size is (ALF tap length × coefficient bit precision × N) bits. However, when the coefficient is compressed by variable length coding, it becomes smaller than this. The ALF filter coefficient stored in the ALF coefficient storage buffer 264 is reset for each screen and for each LUC line. The ALF coefficient storage buffer 264 is managed by the buffer management unit 263 so that an area with a small index is an area with a high priority.
 ALF処理部265は、適応オフセットフィルタ81からのALFフィルタ前画素値を入力し、パラメータ受け取り部261からのフラグが示すon/offに応じて、係数読み出し部262から供給されるフィルタ係数を用いて、ALF処理を行う。ALF処理部265は、フィルタ後画素値を、後段の画面並べ替えバッファ67およびフレームメモリ69に出力する。 The ALF processing unit 265 receives the pre-ALF filter pixel value from the adaptive offset filter 81, and uses the filter coefficient supplied from the coefficient reading unit 262 according to on / off indicated by the flag from the parameter receiving unit 261. Execute ALF processing. The ALF processing unit 265 outputs the filtered pixel value to the screen rearrangement buffer 67 and the frame memory 69 in the subsequent stage.
[復号側の適応ループフィルタ処理]
 次に、図10のフローチャートを参照して、図9の適応ループフィルタ82が行う適応ループフィルタ処理について説明する。なお、この適応ループフィルタ処理は、図4のステップS60における処理である。
[Adaptive loop filter processing on decoding side]
Next, the adaptive loop filter process performed by the adaptive loop filter 82 of FIG. 9 will be described with reference to the flowchart of FIG. This adaptive loop filter process is the process in step S60 of FIG.
 係数書き込み部262は、ステップS251において、ALF係数格納バッファ264を初期化(リセット)する。 The coefficient writing unit 262 initializes (resets) the ALF coefficient storage buffer 264 in step S251.
 図4のステップS52において、符号化ストリームが復号される際に、シンタクス読み出し部251は、符号化ストリームのヘッダ部からシンタクスを読み出す。シンタクス読み出し部251は、読み出したシンタクスのうち、適応ループフィルタのパラメータ(ALFパラメータ)を、パラメータ受け取り部261に供給する。 In step S52 of FIG. 4, when the encoded stream is decoded, the syntax reading unit 251 reads the syntax from the header portion of the encoded stream. The syntax reading unit 251 supplies the adaptive loop filter parameters (ALF parameters) of the read syntax to the parameter receiving unit 261.
 パラメータ受け取り部261は、ステップS252において、シンタクス読み出し部251から供給されたLCU毎の適応ループフィルタのパラメータを受け取る。 The parameter receiving unit 261 receives the parameter of the adaptive loop filter for each LCU supplied from the syntax reading unit 251 in step S252.
 なお、LCU単位のパラメータは、例えば、ALF処理のon/offを示すフラグと、用いるフィルタ係数またはフィルタ係数に対応するバッファインデックスである。 The parameters for each LCU are, for example, a flag indicating on / off of ALF processing, and a filter coefficient to be used or a buffer index corresponding to the filter coefficient.
 パラメータ受け取り部261は、ステップS253において、フラグがonであるか否かを判定し、フラグがonであると判定した場合、処理は、ステップS254に進む。このとき、フラグは、ALF処理部265に供給され、用いるフィルタ係数またはフィルタ係数に対応するバッファインデックスは、係数読み出し部262またはバッファ管理部263に供給される。 In step S253, the parameter receiving unit 261 determines whether or not the flag is on. If the parameter receiving unit 261 determines that the flag is on, the process proceeds to step S254. At this time, the flag is supplied to the ALF processing unit 265, and the filter coefficient to be used or the buffer index corresponding to the filter coefficient is supplied to the coefficient reading unit 262 or the buffer management unit 263.
 ステップS254において、係数読み出し部262は、パラメータ受け取り部261からフィルタ係数を受け取ったか否かを判定し、フィルタ係数を受け取っていないと判定した場合、処理は、ステップS255に進む。 In step S254, the coefficient reading unit 262 determines whether or not the filter coefficient is received from the parameter receiving unit 261. If it is determined that the filter coefficient is not received, the process proceeds to step S255.
 ステップS255において、係数読み出し部262は、パラメータ受け取り部261からのバッファインデックスに対応するフィルタ係数を、ALF係数格納バッファ264から読み出し、読み出したフィルタ係数を、ALF処理部265に供給する。 In step S255, the coefficient reading unit 262 reads the filter coefficient corresponding to the buffer index from the parameter receiving unit 261 from the ALF coefficient storage buffer 264, and supplies the read filter coefficient to the ALF processing unit 265.
 ステップS256において、ALF処理部265は、適応オフセットフィルタ81からのALFフィルタ前画素値に対して、係数読み出し部262により読み出されたフィルタ係数を用いて、ALF処理を行う。ALF処理部265は、フィルタ後画素値を、後段の画面並べ替えバッファ67およびフレームメモリ69に出力する。 In step S256, the ALF processing unit 265 performs ALF processing on the pre-ALF filter pixel value from the adaptive offset filter 81 using the filter coefficient read by the coefficient reading unit 262. The ALF processing unit 265 outputs the filtered pixel value to the screen rearrangement buffer 67 and the frame memory 69 in the subsequent stage.
 ステップS257において、バッファ管理部263は、参照されたインデックスのフィルタ係数と、そのインデックスの1つ前のフィルタ係数とを交換する。すなわち、参照されたインデックスのフィルタ係数は、ALF係数格納バッファ264において、優先順位の高い領域に移動される。 In step S257, the buffer management unit 263 exchanges the filter coefficient of the referenced index with the filter coefficient of the previous index. In other words, the filter coefficient of the referenced index is moved to a higher priority area in the ALF coefficient storage buffer 264.
 一方、ステップS254において、フィルタ係数を受け取ったと判定した場合、係数読み出し部262は、受け取ったフィルタ係数を、ALF処理部265に供給し、処理は、ステップS258に進む。 On the other hand, if it is determined in step S254 that the filter coefficient has been received, the coefficient reading unit 262 supplies the received filter coefficient to the ALF processing unit 265, and the process proceeds to step S258.
 ステップS258において、適応オフセットフィルタ81からのALFフィルタ前画素値に対して、パラメータ受け取り部261が受け取ったフィルタ係数を用いて、ALF処理を行う。ALF処理部265は、フィルタ後画素値を、後段の画面並べ替えバッファ67およびフレームメモリ69に出力する。 In step S258, the ALF process is performed on the pre-ALF filter pixel value from the adaptive offset filter 81 using the filter coefficient received by the parameter receiving unit 261. The ALF processing unit 265 outputs the filtered pixel value to the screen rearrangement buffer 67 and the frame memory 69 in the subsequent stage.
 ステップS259において、バッファ管理部263は、ALF係数格納バッファ264に空きがあるか否かを判定する。ステップS259において、空きがあると判定された場合、処理は、ステップS260に進む。 In step S259, the buffer management unit 263 determines whether or not there is a free space in the ALF coefficient storage buffer 264. If it is determined in step S259 that there is a vacancy, the process proceeds to step S260.
 ステップS260において、バッファ管理部263は、パラメータ受け取り部261からのフィルタ係数を、空き領域のうち、最も優先順位の高い領域(最も小さいインデックスの領域)に格納する。 In step S260, the buffer management unit 263 stores the filter coefficient from the parameter receiving unit 261 in the highest priority area (the area with the smallest index) among the free areas.
 ステップS259において、空きがないと判定された場合、処理は、ステップS261に進む。ステップS261において、バッファ管理部263は、パラメータ受け取り部261からのフィルタ係数を用いて、ALF係数格納バッファ264のFIFO処理を行う。 If it is determined in step S259 that there is no space, the process proceeds to step S261. In step S <b> 261, the buffer management unit 263 performs FIFO processing of the ALF coefficient storage buffer 264 using the filter coefficient from the parameter reception unit 261.
 すなわち、パラメータ受け取り部261からのフィルタ係数は、ALF係数格納バッファ264内の空き領域のうち、最も小さいインデックスの領域に格納される。そして、格納されていたフィルタ係数は、順番に後ろの領域に格納され、1番後ろの領域に格納されていたフィルタ係数は破棄される。 That is, the filter coefficient from the parameter receiving unit 261 is stored in the area of the smallest index among the free areas in the ALF coefficient storage buffer 264. The stored filter coefficients are sequentially stored in the subsequent area, and the filter coefficients stored in the last area are discarded.
 ステップS257、ステップS260、およびステップS261の後、処理は、ステップS262に進む。 After step S257, step S260, and step S261, the process proceeds to step S262.
 また、ステップS253において、フラグがonではないと判定された場合、処理は、ステップS262に進む。このとき、ALF処理部265は、適応オフセットフィルタ81からのフィルタ前画像に対してフィルタ処理を行わず、そのまま、画面並べ替えバッファ67およびフレームメモリ69に出力する。 If it is determined in step S253 that the flag is not on, the process proceeds to step S262. At this time, the ALF processing unit 265 does not perform the filter process on the pre-filter image from the adaptive offset filter 81 and outputs it to the screen rearrangement buffer 67 and the frame memory 69 as it is.
 パラメータ受け取り部261は、ステップS262において、処理対象のLCUが、LCUラインにおける最後(右端)のLCUであるか否かを判定する。ステップS262において、LCUラインにおける最後(右端)のLCUではないと判定された場合、処理は、ステップS252に戻り、それ以降の処理が繰り返される。 In step S262, the parameter receiving unit 261 determines whether or not the processing target LCU is the last (right end) LCU in the LCU line. If it is determined in step S262 that the LCU line is not the last (rightmost) LCU, the process returns to step S252, and the subsequent processes are repeated.
 ステップS262において、LCUラインにおける最後(右端)のLCUであると判定された場合、処理は、ステップS263に進む。 If it is determined in step S262 that the LCU is the last (rightmost) LCU in the LCU line, the process proceeds to step S263.
 ステップS263において、バッファ管理部263は、処理対象のLCUが、画面の最後のLCUであるか否かを判定する。ステップS263において、画面最後のLCUではないと判定された場合、処理は、ステップS251に戻り、バッファが初期化され、それ以降の処理が繰り返される。 In step S263, the buffer management unit 263 determines whether the processing target LCU is the last LCU on the screen. If it is determined in step S263 that it is not the last LCU on the screen, the processing returns to step S251, the buffer is initialized, and the subsequent processing is repeated.
 ステップS263において、画面最後のLCUであると判定された場合、適応ループフィルタ処理は終了される。 If it is determined in step S263 that the LCU is the last LCU on the screen, the adaptive loop filter process is terminated.
 以上のように、画像復号装置51において、バッファに格納されていたフィルタ係数がフィルタ処理に用いられた場合、そのフィルタ係数は、バッファにおいて、優先順位の高い領域に移動される。一方、符号化側から受け取られたフィルタ係数がフィルタ処理に用いられた場合、そのフィルタ係数は、空き領域のうち、最も優先順位の高い領域に格納される。なお、空き領域がない場合、受け取られたフィルタ係数で、FIFO処理が行われる。 As described above, in the image decoding device 51, when the filter coefficient stored in the buffer is used for the filtering process, the filter coefficient is moved to a high priority area in the buffer. On the other hand, when the filter coefficient received from the encoding side is used for the filtering process, the filter coefficient is stored in an area having the highest priority among the free areas. If there is no free space, FIFO processing is performed with the received filter coefficient.
 以上説明したように、本技術においては、参照回数の多いフィルタ係数がバッファ内で優先順位の高い(最も破棄されにくい)領域に移動される。このように、フィルタ係数バッファの管理を、非特許文献2に記載のFIFO処理と比して効率化することで、フィルタ係数の再送を少なくすることができる。 As described above, in the present technology, a filter coefficient having a large number of references is moved to an area having a high priority (most difficult to be discarded) in the buffer. As described above, the management of the filter coefficient buffer is made more efficient than the FIFO processing described in Non-Patent Document 2, so that the retransmission of the filter coefficient can be reduced.
 フィルタ係数の伝送尾には、最大でALFフィルタのタップ長×ビット精度の伝送が必要になるが、頻繁に用いられるフィルタ係数については、これを最大でlog2バッファサイズとなるインデックス情報で済ませることができる。 Transmission of filter coefficients requires transmission of ALF filter tap length x bit accuracy at the maximum, but for frequently used filter coefficients, this should be done with index information that is the maximum log 2 buffer size. Can do.
 これにより、フィルタ係数の伝送コストを下げることができ、フィルタ係数に係る符号化効率を向上させることができる。 Thereby, the transmission cost of the filter coefficient can be reduced, and the encoding efficiency related to the filter coefficient can be improved.
 また、本技術においては、水平ラインの閉じた範囲、例えば、LCUライン単位でバッファのリセットを行うようにしたので、履歴管理が煩雑になりすぎるのを防ぐことができる。 Further, in the present technology, since the buffer is reset in a closed range of the horizontal line, for example, in units of LCU lines, it is possible to prevent the history management from becoming too complicated.
 なお、上記説明においては、バッファ全体を履歴管理する例を説明したが、例えば、バッファの一部分をFIFO管理とし、バッファの残り部分を履歴管理するように構成してもよい。 In the above description, an example of managing the history of the entire buffer has been described. However, for example, a configuration may be adopted in which a part of the buffer is FIFO managed and the remaining part of the buffer is history managed.
 以上においては、符号化方式としてHEVC方式をベースに用いるようにした。ただし、本開示はこれに限らず、インループフィルタとして、少なくとも適応ループフィルタを含む、その他の符号化方式/復号方式を適用することができる。 In the above, the HEVC method is used as the encoding method. However, the present disclosure is not limited to this, and other encoding schemes / decoding schemes including at least an adaptive loop filter can be applied as the in-loop filter.
 なお、本開示は、例えば、HEVC方式等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本開示は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。 Note that the present disclosure discloses, for example, image information (bitstream) compressed by orthogonal transformation such as discrete cosine transformation and motion compensation, such as HEVC, satellite broadcasting, cable television, the Internet, or a mobile phone. The present invention can be applied to an image encoding device and an image decoding device used when receiving via a network medium. In addition, the present disclosure can be applied to an image encoding device and an image decoding device that are used when processing on a storage medium such as an optical disk, a magnetic disk, and a flash memory.
<3.第2の実施の形態>
[多視点画像符号化・多視点画像復号への適用]
 上述した一連の処理は、多視点画像符号化・多視点画像復号に適用することができる。図11は、多視点画像符号化方式の一例を示す。
<3. Second Embodiment>
[Application to multi-view image coding and multi-view image decoding]
The series of processes described above can be applied to multi-view image encoding / multi-view image decoding. FIG. 11 shows an example of a multi-view image encoding method.
 図11に示されるように、多視点画像は、複数の視点の画像を含み、その複数の視点のうちの所定の1つの視点の画像が、ベースビューの画像に指定されている。ベースビューの画像以外の各視点の画像は、ノンベースビューの画像として扱われる。 As shown in FIG. 11, the multi-viewpoint image includes a plurality of viewpoint images, and a predetermined one viewpoint image among the plurality of viewpoints is designated as the base view image. Each viewpoint image other than the base view image is treated as a non-base view image.
 図11のような多視点画像符号化を行う場合、各ビュー(同一ビュー)において、適応ループフィルタの係数を格納するバッファ(例えば、図7のALF係数格納バッファ215)を管理することができる。また、各ビュー(異なるビュー)において、他のビューにおける適応ループフィルタの係数を格納するバッファの管理を共通化することもできる。 When performing multi-view image encoding as shown in FIG. 11, a buffer (for example, ALF coefficient storage buffer 215 in FIG. 7) that stores the coefficient of the adaptive loop filter can be managed in each view (same view). Further, in each view (different view), it is possible to share management of buffers that store adaptive loop filter coefficients in other views.
 この場合、ベースビューにおける適応ループフィルタの係数を格納するバッファの管理が、少なくとも1つのノンベースビューで共通化される。あるいは、例えば、ノンベースビュー(view_id=i)における適応ループフィルタの係数を格納するバッファの管理が、ベースビューおよびノンベースビュー(view_id=j)の少なくともどちらか一方で共通化される。 In this case, the management of the buffer that stores the coefficient of the adaptive loop filter in the base view is shared by at least one non-base view. Alternatively, for example, the management of the buffer that stores the coefficient of the adaptive loop filter in the non-base view (view_id = i) is shared by at least one of the base view and the non-base view (view_id = j).
 さらに、各ビュー(同一ビュー)において、適応ループフィルタの係数を格納するバッファのバッファインデックスを設定することもできる。また、各ビュー(異なるビュー)において、他のビューで設定されたバッファインデックスを共有することもできる。なお、バッファインデックスと記載したが、バッファインデックスに加えて、フィルタ係数やLCU毎の適応ループフィルタのon/offフラグなどの他の適応ループフィルタのパラメータも共有することもできる。 Furthermore, in each view (same view), a buffer index of a buffer for storing the coefficient of the adaptive loop filter can be set. In addition, each view (different view) can share a buffer index set in another view. Although described as a buffer index, in addition to the buffer index, other adaptive loop filter parameters such as a filter coefficient and an on / off flag of an adaptive loop filter for each LCU can also be shared.
 この場合、ベースビューにおいて設定されたバッファインデックスが、少なくとも1つのノンベースビューで用いられる。あるいは、例えば、ノンベースビュー(view_id=i)において設定されたバッファインデックスが、ベースビューおよびノンベースビュー(view_id=j)の少なくともどちらか一方で用いられる。 In this case, the buffer index set in the base view is used in at least one non-base view. Alternatively, for example, the buffer index set in the non-base view (view_id = i) is used in at least one of the base view and the non-base view (view_id = j).
 これにより、画像の符号化及び復号に際して、フィルタ係数の伝送コストを下げることができる。 This makes it possible to reduce the transmission cost of filter coefficients when encoding and decoding images.
[多視点画像符号化装置]
 図12は、上述した多視点画像符号化を行う多視点画像符号化装置を示す図である。図12に示されるように、多視点画像符号化装置600は、符号化部601、符号化部602、および多重化部603を有する。
[Multi-view image encoding device]
FIG. 12 is a diagram illustrating a multi-view image encoding apparatus that performs the above-described multi-view image encoding. As illustrated in FIG. 12, the multi-view image encoding device 600 includes an encoding unit 601, an encoding unit 602, and a multiplexing unit 603.
 符号化部601は、ベースビュー画像を符号化し、ベースビュー画像符号化ストリームを生成する。符号化部602は、ノンベースビュー画像を符号化し、ノンベースビュー画像符号化ストリームを生成する。多重化部603は、符号化部601において生成されたベースビュー画像符号化ストリームと、符号化部602において生成されたノンベースビュー画像符号化ストリームとを多重化し、多視点画像符号化ストリームを生成する。 The encoding unit 601 encodes the base view image and generates a base view image encoded stream. The encoding unit 602 encodes the non-base view image and generates a non-base view image encoded stream. The multiplexing unit 603 multiplexes the base view image encoded stream generated by the encoding unit 601 and the non-base view image encoded stream generated by the encoding unit 602 to generate a multi-view image encoded stream. To do.
 この多視点画像符号化装置600の符号化部601および符号化部602に対して、画像符号化装置11(図1)を適用することができる。この場合、多視点画像符号化装置600は、符号化部601が設定したバッファインデックスと、符号化部602が設定したバッファインデックスとを設定して伝送させる。 The image encoding device 11 (FIG. 1) can be applied to the encoding unit 601 and the encoding unit 602 of the multi-view image encoding device 600. In this case, the multi-view image encoding apparatus 600 sets and transmits the buffer index set by the encoding unit 601 and the buffer index set by the encoding unit 602.
 なお、上述したように符号化部601が設定したバッファインデックスを、符号化部601および符号化部602で共有して用いるように設定して伝送させるようにしてもよい。逆に、符号化部602が設定したバッファインデックスを、符号化部601および符号化部602で共有して用いるように設定して伝送させるようにしてもよい。 Note that the buffer index set by the encoding unit 601 as described above may be set and transmitted so as to be shared by the encoding unit 601 and the encoding unit 602. Conversely, the buffer index set by the encoding unit 602 may be set and transmitted so as to be shared by the encoding unit 601 and the encoding unit 602.
[多視点画像復号装置]
 図13は、上述した多視点画像復号を行う多視点画像復号装置を示す図である。図13に示されるように、多視点画像復号装置610は、逆多重化部611、復号部612、および復号部613を有する。
[Multi-viewpoint image decoding device]
FIG. 13 is a diagram illustrating a multi-view image decoding apparatus that performs the above-described multi-view image decoding. As illustrated in FIG. 13, the multi-view image decoding apparatus 610 includes a demultiplexing unit 611, a decoding unit 612, and a decoding unit 613.
 逆多重化部611は、ベースビュー画像符号化ストリームとノンベースビュー画像符号化ストリームとが多重化された多視点画像符号化ストリームを逆多重化し、ベースビュー画像符号化ストリームと、ノンベースビュー画像符号化ストリームとを抽出する。復号部612は、逆多重化部611により抽出されたベースビュー画像符号化ストリームを復号し、ベースビュー画像を得る。復号部613は、逆多重化部611により抽出されたノンベースビュー画像符号化ストリームを復号し、ノンベースビュー画像を得る。 The demultiplexing unit 611 demultiplexes the multi-view image encoded stream in which the base view image encoded stream and the non-base view image encoded stream are multiplexed, and the base view image encoded stream and the non-base view image The encoded stream is extracted. The decoding unit 612 decodes the base view image encoded stream extracted by the demultiplexing unit 611 to obtain a base view image. The decoding unit 613 decodes the non-base view image encoded stream extracted by the demultiplexing unit 611 to obtain a non-base view image.
 この多視点画像復号装置610の復号部612および復号部613に対して、画像復号装置51(図3)を適用することができる。この場合、多視点画像復号装置610は、符号化部601が設定し、復号部612が復号したバッファインデックスと、符号化部602が設定し、復号部613が復号したバッファインデックスを用いて処理を行う。 The image decoding device 51 (FIG. 3) can be applied to the decoding unit 612 and the decoding unit 613 of the multi-view image decoding device 610. In this case, the multi-view image decoding apparatus 610 performs processing using the buffer index set by the encoding unit 601 and decoded by the decoding unit 612 and the buffer index set by the encoding unit 602 and decoded by the decoding unit 613. Do.
 なお、上述したように符号化部601(または、符号化602)が設定したバッファインデックスを、符号化部601および符号化部602で共有して用いるように設定して伝送されている場合がある。この場合、多視点画像復号装置610においては、符号化部601(または、符号化602)が設定し、復号部612(または復号部613)が復号したバッファインデックスを用いて処理が行われる。 Note that the buffer index set by the encoding unit 601 (or encoding 602) as described above may be set and transmitted so as to be shared by the encoding unit 601 and the encoding unit 602. . In this case, in the multi-viewpoint image decoding apparatus 610, processing is performed using the buffer index set by the encoding unit 601 (or encoding 602) and decoded by the decoding unit 612 (or decoding unit 613).
<4.第3の実施の形態>
[階層画像符号化・階層画像復号への適用]
 上述した一連の処理は、階層画像符号化・階層画像復号に適用することができる。図14は、多視点画像符号化方式の一例を示す。
<4. Third Embodiment>
[Application to hierarchical image coding / hierarchical image decoding]
The series of processes described above can be applied to hierarchical image encoding / hierarchical image decoding. FIG. 14 shows an example of a multi-view image encoding method.
 図14に示されるように、階層画像は、複数の階層(解像度)の画像を含み、その複数の解像度のうちの所定の1つの階層の画像が、ベースレイヤの画像に指定されている。ベースレイヤの画像以外の各階層の画像は、ノンベースレイヤの画像として扱われる。 As shown in FIG. 14, the hierarchical image includes images of a plurality of layers (resolutions), and an image of a predetermined one layer among the plurality of resolutions is designated as a base layer image. Images in each layer other than the base layer image are treated as non-base layer images.
 図14のような階層画像符号化(空間スケーラビリティ)を行う場合、適応ループフィルタの係数を格納するバッファ(例えば、図7のALF係数格納バッファ215)を管理することができる。また、各レイヤ(異なるレイヤ)において、他のレイヤにおける他のビューにおける適応ループフィルタの係数を格納するバッファの管理を共通化することができる。 When performing hierarchical image coding (spatial scalability) as shown in FIG. 14, it is possible to manage a buffer (for example, the ALF coefficient storage buffer 215 in FIG. 7) that stores the coefficients of the adaptive loop filter. In each layer (different layers), it is possible to share the management of buffers that store the coefficients of the adaptive loop filter in other views in other layers.
 この場合、ベースレイヤにおける適応ループフィルタの係数を格納するバッファの管理が、少なくとも1つのノンベースレイヤで共通化される。あるいは、例えば、ノンベースレイヤ(layer _id=i)における適応ループフィルタの係数を格納するバッファの管理が、ベースレイヤおよびノンベースレイヤ(layer_id=j)の少なくともどちらか一方で共通化される。 In this case, the management of the buffer for storing the coefficient of the adaptive loop filter in the base layer is shared by at least one non-base layer. Alternatively, for example, the management of the buffer that stores the coefficient of the adaptive loop filter in the non-base layer (layer _id = i) is shared by at least one of the base layer and the non-base layer (layer_id = j).
 さらに、各レイヤ(同一レイヤ)において、適応ループフィルタの係数を格納するバッファのバッファインデックスを設定することもできる。また、各レイヤ(異なるレイヤ)において、他のビューで設定されたバッファインデックスを共有することもできる。 Furthermore, in each layer (same layer), a buffer index of a buffer for storing the coefficient of the adaptive loop filter can be set. In addition, each layer (different layers) can share a buffer index set in another view.
 この場合、ベースレイヤにおいて設定されたバッファインデックスが、少なくとも1つのノンベースレイヤで用いられる。あるいは、例えば、ノンベースレイヤ(layer _id=i)において設定されたバッファインデックスが、ベースレイヤおよびノンベースレイヤ(layer_id=j)の少なくともどちらか一方で用いられる。なお、バッファインデックスと記載したが、バッファインデックスに加えて、フィルタ係数やLCU毎の適応ループフィルタのon/offフラグなどの他の適応ループフィルタのパラメータも共有することもできる。 In this case, the buffer index set in the base layer is used in at least one non-base layer. Alternatively, for example, a buffer index set in a non-base layer (layer _id = i) is used in at least one of the base layer and the non-base layer (layer_id = j). Although described as a buffer index, in addition to the buffer index, other adaptive loop filter parameters such as a filter coefficient and an on / off flag of an adaptive loop filter for each LCU can also be shared.
 これにより、画像の符号化及び復号に際して、フィルタ係数の伝送コストを下げることができる。 This makes it possible to reduce the transmission cost of filter coefficients when encoding and decoding images.
[階層画像符号化装置]
 図15は、上述した階層画像符号化を行う階層画像符号化装置を示す図である。図15に示されるように、階層画像符号化装置620は、符号化部621、符号化部622、および多重化部623を有する。
[Hierarchical image encoding device]
FIG. 15 is a diagram illustrating a hierarchical image encoding apparatus that performs the above-described hierarchical image encoding. As illustrated in FIG. 15, the hierarchical image encoding device 620 includes an encoding unit 621, an encoding unit 622, and a multiplexing unit 623.
 符号化部621は、ベースレイヤ画像を符号化し、ベースレイヤ画像符号化ストリームを生成する。符号化部622は、ノンベースレイヤ画像を符号化し、ノンベースレイヤ画像符号化ストリームを生成する。多重化部623は、符号化部621において生成されたベースレイヤ画像符号化ストリームと、符号化部622において生成されたノンベースレイヤ画像符号化ストリームとを多重化し、階層画像符号化ストリームを生成する。 The encoding unit 621 encodes the base layer image and generates a base layer image encoded stream. The encoding unit 622 encodes the non-base layer image and generates a non-base layer image encoded stream. The multiplexing unit 623 multiplexes the base layer image encoded stream generated by the encoding unit 621 and the non-base layer image encoded stream generated by the encoding unit 622 to generate a hierarchical image encoded stream. .
 この階層画像符号化装置620の符号化部621および符号化部622に対して、画像符号化装置11(図1)を適用することができる。この場合、階層画像符号化装置620は、符号化部621が設定したバッファインデックスと、符号化部622が設定したバッファインデックスとを設定して伝送させる。 The image encoding device 11 (FIG. 1) can be applied to the encoding unit 621 and the encoding unit 622 of the hierarchical image encoding device 620. In this case, the hierarchical image encoding device 620 sets and transmits the buffer index set by the encoding unit 621 and the buffer index set by the encoding unit 622.
 なお、上述したように符号化部621が設定したバッファインデックスを、符号化部621および符号化部622で共有して用いるように設定して伝送させるようにしてもよい。逆に、符号化部622が設定したバッファインデックスを、符号化部621および符号化部622で共有して用いるように設定して伝送させるようにしてもよい。 Note that the buffer index set by the encoding unit 621 as described above may be set and transmitted so as to be shared by the encoding unit 621 and the encoding unit 622. Conversely, the buffer index set by the encoding unit 622 may be set and transmitted so as to be shared by the encoding unit 621 and the encoding unit 622.
[階層画像復号装置]
 図16は、上述した階層画像復号を行う階層画像復号装置を示す図である。図16に示されるように、階層画像復号装置630は、逆多重化部631、復号部632、および復号部633を有する。
[Hierarchical image decoding device]
FIG. 16 is a diagram illustrating a hierarchical image decoding apparatus that performs the hierarchical image decoding described above. As illustrated in FIG. 16, the hierarchical image decoding device 630 includes a demultiplexing unit 631, a decoding unit 632, and a decoding unit 633.
 逆多重化部631は、ベースレイヤ画像符号化ストリームとノンベースレイヤ画像符号化ストリームとが多重化された階層画像符号化ストリームを逆多重化し、ベースレイヤ画像符号化ストリームと、ノンベースレイヤ画像符号化ストリームとを抽出する。復号部632は、逆多重化部631により抽出されたベースレイヤ画像符号化ストリームを復号し、ベースレイヤ画像を得る。復号部633は、逆多重化部631により抽出されたノンベースレイヤ画像符号化ストリームを復号し、ノンベースレイヤ画像を得る。 The demultiplexing unit 631 demultiplexes the hierarchical image encoded stream in which the base layer image encoded stream and the non-base layer image encoded stream are multiplexed, and the base layer image encoded stream and the non-base layer image code Stream. The decoding unit 632 decodes the base layer image encoded stream extracted by the demultiplexing unit 631 to obtain a base layer image. The decoding unit 633 decodes the non-base layer image encoded stream extracted by the demultiplexing unit 631 to obtain a non-base layer image.
 この階層画像復号装置630の復号部632および復号部633に対して、画像復号装置51(図4)を適用することができる。この場合、階層画像復号装置630は、符号化部621が設定し、復号部632が復号したバッファインデックスと、符号化部622が設定し、復号部633がバッファインデックスを用いて処理を行う。 The image decoding device 51 (FIG. 4) can be applied to the decoding unit 632 and the decoding unit 633 of the hierarchical image decoding device 630. In this case, the hierarchical image decoding apparatus 630 performs processing using the buffer index set by the encoding unit 621, the buffer index decoded by the decoding unit 632, and the encoding unit 622, and the decoding unit 633 uses the buffer index.
 なお、上述したように符号化部621(または、符号化622)が設定したバッファインデックスを、符号化部621および符号化部622で共有して用いるように設定して伝送されている場合がある。この場合、階層画像復号装置630においては、符号化部621(または、符号化622)が設定し、復号部632(または、復号部633)が復号したバッファインデックスを用いて処理が行われる。 Note that the buffer index set by the encoding unit 621 (or encoding 622) as described above may be set and transmitted so as to be shared by the encoding unit 621 and the encoding unit 622. . In this case, in hierarchical image decoding apparatus 630, processing is performed using the buffer index set by encoding unit 621 (or encoding 622) and decoded by decoding unit 632 (or decoding unit 633).
<5.第4の実施の形態>
[コンピュータの構成例]
 上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
<5. Fourth Embodiment>
[Computer configuration example]
The series of processes described above can be executed by hardware or can be executed by software. When a series of processing is executed by software, a program constituting the software is installed in the computer. Here, the computer includes, for example, a general-purpose personal computer capable of executing various functions by installing various programs by installing a computer incorporated in dedicated hardware.
 図17は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。 FIG. 17 is a block diagram showing an example of the hardware configuration of a computer that executes the above-described series of processing by a program.
 コンピュータ800において、CPU(Central Processing Unit)801,ROM(Read Only Memory)802,RAM(Random Access Memory)803は、バス804により相互に接続されている。 In the computer 800, a CPU (Central Processing Unit) 801, a ROM (Read Only Memory) 802, and a RAM (Random Access Memory) 803 are connected to each other by a bus 804.
 バス804には、さらに、入出力インタフェース805が接続されている。入出力インタフェース805には、入力部806、出力部807、記憶部808、通信部809、及びドライブ810が接続されている。 Further, an input / output interface 805 is connected to the bus 804. An input unit 806, an output unit 807, a storage unit 808, a communication unit 809, and a drive 810 are connected to the input / output interface 805.
 入力部806は、キーボード、マウス、マイクロホンなどよりなる。出力部807は、ディスプレイ、スピーカなどよりなる。記憶部808は、ハードディスクや不揮発性のメモリなどよりなる。通信部809は、ネットワークインタフェースなどよりなる。ドライブ810は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア811を駆動する。 The input unit 806 includes a keyboard, a mouse, a microphone, and the like. The output unit 807 includes a display, a speaker, and the like. The storage unit 808 includes a hard disk, a nonvolatile memory, and the like. The communication unit 809 includes a network interface or the like. The drive 810 drives a removable medium 811 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
 以上のように構成されるコンピュータでは、CPU801が、例えば、記憶部808に記憶されているプログラムを、入出力インタフェース805及びバス804を介して、RAM803にロードして実行することにより、上述した一連の処理が行われる。 In the computer configured as described above, the CPU 801 loads the program stored in the storage unit 808 to the RAM 803 via the input / output interface 805 and the bus 804 and executes the program, for example. Is performed.
 コンピュータ800(CPU801)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア811に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。 The program executed by the computer 800 (CPU 801) can be provided by being recorded in, for example, a removable medium 811 as a package medium or the like. The program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
 コンピュータでは、プログラムは、リムーバブルメディア811をドライブ810に装着することにより、入出力インタフェース805を介して、記憶部808にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部809で受信し、記憶部808にインストールすることができる。その他、プログラムは、ROM802や記憶部808に、あらかじめインストールしておくことができる。 In the computer, the program can be installed in the storage unit 808 via the input / output interface 805 by attaching the removable medium 811 to the drive 810. The program can be received by the communication unit 809 via a wired or wireless transmission medium and installed in the storage unit 808. In addition, the program can be installed in the ROM 802 or the storage unit 808 in advance.
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。 The program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
 また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。 Further, in the present specification, the step of describing the program recorded on the recording medium is not limited to the processing performed in chronological order according to the described order, but may be performed in parallel or It also includes processes that are executed individually.
 また、本明細書において、システムとは、複数のデバイス(装置)により構成される装置全体を表すものである。 In addition, in this specification, the system represents the entire apparatus composed of a plurality of devices (apparatuses).
 また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。つまり、本技術は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。 Also, in the above, the configuration described as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units). Conversely, the configurations described above as a plurality of devices (or processing units) may be combined into a single device (or processing unit). Of course, a configuration other than that described above may be added to the configuration of each device (or each processing unit). Furthermore, if the configuration and operation of the entire system are substantially the same, a part of the configuration of a certain device (or processing unit) may be included in the configuration of another device (or other processing unit). . That is, the present technology is not limited to the above-described embodiment, and various modifications can be made without departing from the gist of the present technology.
 上述した実施形態に係る画像符号化装置及び画像復号装置は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。 An image encoding device and an image decoding device according to the above-described embodiments include a transmitter or a receiver in optical broadcasting, satellite broadcasting, cable broadcasting such as cable TV, distribution on the Internet, and distribution to terminals by cellular communication, etc. The present invention can be applied to various electronic devices such as a recording device that records an image on a medium such as a magnetic disk and a flash memory, or a playback device that reproduces an image from these storage media. Hereinafter, four application examples will be described.
 <6.応用例>
[第1の応用例:テレビジョン受像機]
 図18は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
<6. Application example>
[First application example: television receiver]
FIG. 18 shows an example of a schematic configuration of a television apparatus to which the above-described embodiment is applied. The television apparatus 900 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, a display unit 906, an audio signal processing unit 907, a speaker 908, an external interface 909, a control unit 910, a user interface 911, And a bus 912.
 チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。 Tuner 902 extracts a signal of a desired channel from a broadcast signal received via antenna 901, and demodulates the extracted signal. Then, the tuner 902 outputs the encoded bit stream obtained by the demodulation to the demultiplexer 903. In other words, the tuner 902 serves as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
 デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。 The demultiplexer 903 separates the video stream and audio stream of the viewing target program from the encoded bit stream, and outputs each separated stream to the decoder 904. Further, the demultiplexer 903 extracts auxiliary data such as EPG (Electronic Program Guide) from the encoded bit stream, and supplies the extracted data to the control unit 910. Note that the demultiplexer 903 may perform descrambling when the encoded bit stream is scrambled.
 デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。 The decoder 904 decodes the video stream and audio stream input from the demultiplexer 903. Then, the decoder 904 outputs the video data generated by the decoding process to the video signal processing unit 905. In addition, the decoder 904 outputs audio data generated by the decoding process to the audio signal processing unit 907.
 映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。 The video signal processing unit 905 reproduces the video data input from the decoder 904 and causes the display unit 906 to display the video. In addition, the video signal processing unit 905 may cause the display unit 906 to display an application screen supplied via a network. Further, the video signal processing unit 905 may perform additional processing such as noise removal on the video data according to the setting. Furthermore, the video signal processing unit 905 may generate a GUI (Graphical User Interface) image such as a menu, a button, or a cursor, and superimpose the generated image on the output image.
 表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。 The display unit 906 is driven by a drive signal supplied from the video signal processing unit 905, and displays an image on a video screen of a display device (for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.
 音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。 The audio signal processing unit 907 performs reproduction processing such as D / A conversion and amplification on the audio data input from the decoder 904, and outputs audio from the speaker 908. The audio signal processing unit 907 may perform additional processing such as noise removal on the audio data.
 外部インタフェース909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。 The external interface 909 is an interface for connecting the television apparatus 900 to an external device or a network. For example, a video stream or an audio stream received via the external interface 909 may be decoded by the decoder 904. That is, the external interface 909 also has a role as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
 制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。 The control unit 910 includes a processor such as a CPU and memories such as a RAM and a ROM. The memory stores a program executed by the CPU, program data, EPG data, data acquired via a network, and the like. For example, the program stored in the memory is read and executed by the CPU when the television apparatus 900 is activated. The CPU executes the program to control the operation of the television device 900 according to an operation signal input from the user interface 911, for example.
 ユーザインタフェース911は、制御部910と接続される。ユーザインタフェース911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。 The user interface 911 is connected to the control unit 910. The user interface 911 includes, for example, buttons and switches for the user to operate the television device 900, a remote control signal receiving unit, and the like. The user interface 911 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 910.
 バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース909及び制御部910を相互に接続する。 The bus 912 connects the tuner 902, the demultiplexer 903, the decoder 904, the video signal processing unit 905, the audio signal processing unit 907, the external interface 909, and the control unit 910 to each other.
 このように構成されたテレビジョン装置900において、デコーダ904は、上述した実施形態に係る画像復号装置の機能を有する。それにより、テレビジョン装置900での画像の復号に際して、フィルタ係数の伝送コストを下げることができる。 In the thus configured television apparatus 900, the decoder 904 has the function of the image decoding apparatus according to the above-described embodiment. Thereby, the transmission cost of the filter coefficient can be reduced when the television device 900 decodes an image.
 [第2の応用例:携帯電話機]
 図19は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
[Second application example: mobile phone]
FIG. 19 shows an example of a schematic configuration of a mobile phone to which the above-described embodiment is applied. A mobile phone 920 includes an antenna 921, a communication unit 922, an audio codec 923, a speaker 924, a microphone 925, a camera unit 926, an image processing unit 927, a demultiplexing unit 928, a recording / reproducing unit 929, a display unit 930, a control unit 931, an operation A portion 932 and a bus 933.
 アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。 The antenna 921 is connected to the communication unit 922. The speaker 924 and the microphone 925 are connected to the audio codec 923. The operation unit 932 is connected to the control unit 931. The bus 933 connects the communication unit 922, the audio codec 923, the camera unit 926, the image processing unit 927, the demultiplexing unit 928, the recording / reproducing unit 929, the display unit 930, and the control unit 931 to each other.
 携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。 The mobile phone 920 has various operation modes including a voice call mode, a data communication mode, a shooting mode, and a videophone mode, and is used for sending and receiving voice signals, sending and receiving e-mail or image data, taking images, and recording data. Perform the action.
 音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。 In the voice call mode, the analog voice signal generated by the microphone 925 is supplied to the voice codec 923. The audio codec 923 converts an analog audio signal into audio data, A / D converts the compressed audio data, and compresses it. Then, the audio codec 923 outputs the compressed audio data to the communication unit 922. The communication unit 922 encodes and modulates the audio data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal. Then, the communication unit 922 demodulates and decodes the received signal to generate audio data, and outputs the generated audio data to the audio codec 923. The audio codec 923 decompresses the audio data and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
 また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。 Further, in the data communication mode, for example, the control unit 931 generates character data constituting the e-mail in response to an operation by the user via the operation unit 932. In addition, the control unit 931 causes the display unit 930 to display characters. In addition, the control unit 931 generates e-mail data in response to a transmission instruction from the user via the operation unit 932, and outputs the generated e-mail data to the communication unit 922. The communication unit 922 encodes and modulates email data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal. Then, the communication unit 922 demodulates and decodes the received signal to restore the email data, and outputs the restored email data to the control unit 931. The control unit 931 displays the content of the electronic mail on the display unit 930 and stores the electronic mail data in the storage medium of the recording / reproducing unit 929.
 記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Unallocated Space Bitmap)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。 The recording / reproducing unit 929 has an arbitrary readable / writable storage medium. For example, the storage medium may be a built-in storage medium such as RAM or flash memory, and is externally mounted such as a hard disk, magnetic disk, magneto-optical disk, optical disk, USB (Unallocated Space Space Bitmap) memory, or memory card. It may be a storage medium.
 また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記憶再生部929の記憶媒体に記憶させる。 In the shooting mode, for example, the camera unit 926 images a subject to generate image data, and outputs the generated image data to the image processing unit 927. The image processing unit 927 encodes the image data input from the camera unit 926 and stores the encoded stream in the storage medium of the storage / playback unit 929.
 また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。 Further, in the videophone mode, for example, the demultiplexing unit 928 multiplexes the video stream encoded by the image processing unit 927 and the audio stream input from the audio codec 923, and the multiplexed stream is the communication unit 922. Output to. The communication unit 922 encodes and modulates the stream and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal. These transmission signal and reception signal may include an encoded bit stream. Then, the communication unit 922 demodulates and decodes the received signal to restore the stream, and outputs the restored stream to the demultiplexing unit 928. The demultiplexing unit 928 separates the video stream and the audio stream from the input stream, and outputs the video stream to the image processing unit 927 and the audio stream to the audio codec 923. The image processing unit 927 decodes the video stream and generates video data. The video data is supplied to the display unit 930, and a series of images is displayed on the display unit 930. The audio codec 923 decompresses the audio stream and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
 このように構成された携帯電話機920において、画像処理部927は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、携帯電話機920での画像の符号化及び復号に際して、フィルタ係数の伝送コストを下げることができる。 In the mobile phone 920 configured as described above, the image processing unit 927 has the functions of the image encoding device and the image decoding device according to the above-described embodiment. Thereby, the transmission cost of the filter coefficient can be reduced when the mobile phone 920 encodes and decodes an image.
 [第3の応用例:記録再生装置]
 図20は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データ及び映像データを復号する。
[Third application example: recording / reproducing apparatus]
FIG. 20 shows an example of a schematic configuration of a recording / reproducing apparatus to which the above-described embodiment is applied. For example, the recording / reproducing device 940 encodes audio data and video data of a received broadcast program and records the encoded data on a recording medium. In addition, the recording / reproducing device 940 may encode audio data and video data acquired from another device and record them on a recording medium, for example. In addition, the recording / reproducing device 940 reproduces data recorded on the recording medium on a monitor and a speaker, for example, in accordance with a user instruction. At this time, the recording / reproducing device 940 decodes the audio data and the video data.
 記録再生装置940は、チューナ941、外部インタフェース942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)948、制御部949、及びユーザインタフェース950を備える。 The recording / reproducing apparatus 940 includes a tuner 941, an external interface 942, an encoder 943, an HDD (Hard Disk Drive) 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) 948, a control unit 949, and a user interface. 950.
 チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送手段としての役割を有する。 Tuner 941 extracts a signal of a desired channel from a broadcast signal received via an antenna (not shown), and demodulates the extracted signal. Then, the tuner 941 outputs the encoded bit stream obtained by the demodulation to the selector 946. That is, the tuner 941 has a role as a transmission unit in the recording / reproducing apparatus 940.
 外部インタフェース942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース942を介して受信される映像データ及び音声データは、エンコーダ943へ入力される。即ち、外部インタフェース942は、記録再生装置940における伝送手段としての役割を有する。 The external interface 942 is an interface for connecting the recording / reproducing apparatus 940 to an external device or a network. The external interface 942 may be, for example, an IEEE1394 interface, a network interface, a USB interface, or a flash memory interface. For example, video data and audio data received via the external interface 942 are input to the encoder 943. That is, the external interface 942 serves as a transmission unit in the recording / reproducing device 940.
 エンコーダ943は、外部インタフェース942から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。 The encoder 943 encodes video data and audio data when the video data and audio data input from the external interface 942 are not encoded. Then, the encoder 943 outputs the encoded bit stream to the selector 946.
 HDD944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。 The HDD 944 records an encoded bit stream in which content data such as video and audio is compressed, various programs, and other data on an internal hard disk. Further, the HDD 944 reads out these data from the hard disk when reproducing video and audio.
 ディスクドライブ945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)又はBlu-ray(登録商標)ディスクなどであってよい。 The disk drive 945 performs recording and reading of data to and from the mounted recording medium. The recording medium mounted on the disk drive 945 is, for example, a DVD disk (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, etc.) or a Blu-ray (registered trademark) disk. It may be.
 セレクタ946は、映像及び音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。 The selector 946 selects an encoded bit stream input from the tuner 941 or the encoder 943 when recording video and audio, and outputs the selected encoded bit stream to the HDD 944 or the disk drive 945. In addition, the selector 946 outputs the encoded bit stream input from the HDD 944 or the disk drive 945 to the decoder 947 during video and audio reproduction.
 デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。 The decoder 947 decodes the encoded bit stream and generates video data and audio data. Then, the decoder 947 outputs the generated video data to the OSD 948. The decoder 904 outputs the generated audio data to an external speaker.
 OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。 OSD 948 reproduces the video data input from the decoder 947 and displays the video. Further, the OSD 948 may superimpose a GUI image such as a menu, a button, or a cursor on the video to be displayed.
 制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース950から入力される操作信号に応じて、記録再生装置940の動作を制御する。 The control unit 949 includes a processor such as a CPU and memories such as a RAM and a ROM. The memory stores a program executed by the CPU, program data, and the like. The program stored in the memory is read and executed by the CPU when the recording / reproducing apparatus 940 is activated, for example. The CPU controls the operation of the recording / reproducing apparatus 940 in accordance with an operation signal input from the user interface 950, for example, by executing the program.
 ユーザインタフェース950は、制御部949と接続される。ユーザインタフェース950は、例えば、ユーザが記録再生装置940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。 The user interface 950 is connected to the control unit 949. The user interface 950 includes, for example, buttons and switches for the user to operate the recording / reproducing device 940, a remote control signal receiving unit, and the like. The user interface 950 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 949.
 このように構成された記録再生装置940において、エンコーダ943は、上述した実施形態に係る画像符号化装置の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置の機能を有する。それにより、記録再生装置940での画像の符号化及び復号に際して、フィルタ係数の伝送コストを下げることができる。 In the thus configured recording / reproducing apparatus 940, the encoder 943 has the function of the image encoding apparatus according to the above-described embodiment. The decoder 947 has the function of the image decoding apparatus according to the above-described embodiment. Thereby, the transmission cost of the filter coefficient can be reduced when the image is encoded and decoded by the recording / reproducing apparatus 940.
 [第4の応用例:撮像装置]
 図21は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
[Fourth Application Example: Imaging Device]
FIG. 21 illustrates an example of a schematic configuration of an imaging apparatus to which the above-described embodiment is applied. The imaging device 960 images a subject to generate an image, encodes the image data, and records it on a recording medium.
 撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース971、及びバス972を備える。 The imaging device 960 includes an optical block 961, an imaging unit 962, a signal processing unit 963, an image processing unit 964, a display unit 965, an external interface 966, a memory 967, a media drive 968, an OSD 969, a control unit 970, a user interface 971, and a bus. 972.
 光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、及び制御部970を相互に接続する。 The optical block 961 is connected to the imaging unit 962. The imaging unit 962 is connected to the signal processing unit 963. The display unit 965 is connected to the image processing unit 964. The user interface 971 is connected to the control unit 970. The bus 972 connects the image processing unit 964, the external interface 966, the memory 967, the media drive 968, the OSD 969, and the control unit 970 to each other.
 光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。 The optical block 961 includes a focus lens and a diaphragm mechanism. The optical block 961 forms an optical image of the subject on the imaging surface of the imaging unit 962. The imaging unit 962 includes an image sensor such as a CCD (Charge-Coupled Device) or a CMOS (Complementary Metal-Oxide Semiconductor), and converts an optical image formed on the imaging surface into an image signal as an electrical signal by photoelectric conversion. Then, the imaging unit 962 outputs the image signal to the signal processing unit 963.
 信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。 The signal processing unit 963 performs various camera signal processing such as knee correction, gamma correction, and color correction on the image signal input from the imaging unit 962. The signal processing unit 963 outputs the image data after the camera signal processing to the image processing unit 964.
 画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース966又はメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース966又はメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。 The image processing unit 964 encodes the image data input from the signal processing unit 963 and generates encoded data. Then, the image processing unit 964 outputs the generated encoded data to the external interface 966 or the media drive 968. The image processing unit 964 also decodes encoded data input from the external interface 966 or the media drive 968 to generate image data. Then, the image processing unit 964 outputs the generated image data to the display unit 965. In addition, the image processing unit 964 may display the image by outputting the image data input from the signal processing unit 963 to the display unit 965. Further, the image processing unit 964 may superimpose display data acquired from the OSD 969 on an image output to the display unit 965.
 OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。 The OSD 969 generates a GUI image such as a menu, a button, or a cursor, and outputs the generated image to the image processing unit 964.
 外部インタフェース966は、例えばUSB入出力端子として構成される。外部インタフェース966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース966は、撮像装置960における伝送手段としての役割を有する。 The external interface 966 is configured as a USB input / output terminal, for example. The external interface 966 connects the imaging device 960 and a printer, for example, when printing an image. Further, a drive is connected to the external interface 966 as necessary. For example, a removable medium such as a magnetic disk or an optical disk is attached to the drive, and a program read from the removable medium can be installed in the imaging device 960. Further, the external interface 966 may be configured as a network interface connected to a network such as a LAN or the Internet. That is, the external interface 966 has a role as a transmission unit in the imaging device 960.
 メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。 The recording medium mounted on the media drive 968 may be any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory. In addition, a recording medium may be fixedly mounted on the media drive 968, and a non-portable storage unit such as an internal hard disk drive or an SSD (Solid State Drive) may be configured.
 制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース971から入力される操作信号に応じて、撮像装置960の動作を制御する。 The control unit 970 includes a processor such as a CPU and memories such as a RAM and a ROM. The memory stores a program executed by the CPU, program data, and the like. The program stored in the memory is read and executed by the CPU when the imaging device 960 is activated, for example. For example, the CPU controls the operation of the imaging device 960 according to an operation signal input from the user interface 971 by executing the program.
 ユーザインタフェース971は、制御部970と接続される。ユーザインタフェース971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。 The user interface 971 is connected to the control unit 970. The user interface 971 includes, for example, buttons and switches for the user to operate the imaging device 960. The user interface 971 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 970.
 このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、撮像装置960での画像の符号化及び復号に際して、フィルタ係数の伝送コストを下げることができる。 In the imaging device 960 configured as described above, the image processing unit 964 has the functions of the image encoding device and the image decoding device according to the above-described embodiment. Thereby, the transmission cost of the filter coefficient can be reduced when encoding and decoding an image in the imaging device 960.
 なお、本明細書では、予測モード、適応オフセットフィルタ、および、適応ループフィルタの各パラメータ等の各種情報が、符号化ストリームに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。 In the present specification, an example is described in which various types of information such as prediction mode, adaptive offset filter, and adaptive loop filter parameters are multiplexed in the encoded stream and transmitted from the encoding side to the decoding side. did. However, the method for transmitting such information is not limited to such an example. For example, these pieces of information may be transmitted or recorded as separate data associated with the encoded bitstream without being multiplexed into the encoded bitstream. Here, the term “associate” means that an image (which may be a part of an image such as a slice or a block) included in the bitstream and information corresponding to the image can be linked at the time of decoding. Means. That is, information may be transmitted on a transmission path different from that of the image (or bit stream). Information may be recorded on a recording medium (or another recording area of the same recording medium) different from the image (or bit stream). Furthermore, the information and the image (or bit stream) may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part of the frame.
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。 The preferred embodiments of the present disclosure have been described in detail above with reference to the accompanying drawings, but the present disclosure is not limited to such examples. It is obvious that a person having ordinary knowledge in the technical field to which the present disclosure belongs can come up with various changes or modifications within the scope of the technical idea described in the claims. Of course, it is understood that these also belong to the technical scope of the present disclosure.
 なお、本技術は以下のような構成も取ることができる。
 (1) 符号化ストリームを復号処理して画像を生成する復号部と、
 前記復号部により生成された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎に前記フィルタを施すフィルタ部と、
 前記インデックスを用いて、前記フィルタ部により前記フィルタ係数を参照する際の履歴を管理する管理部と
 を備える画像処理装置。
 (2) 前記フィルタ係数のインデックスを用いて、前記フィルタ係数を格納するバッファから、前記フィルタ係数を読み出す読み出し部を
 さらに備え、
 前記管理部は、前記読み出し部により読み出されたフィルタ係数を、前記バッファに対して参照される頻度が高い領域に格納する
 前記(1)に記載の画像処理装置。
 (3) 前記管理部は、参照される頻度が高いフィルタ係数を、参照される頻度が低いフィルタ係数に比べて、前記バッファに長く格納する
 前記(1)または(2)に記載の画像処理装置。
 (4) 前記フィルタ係数のインデックスの値は、前記フィルタ係数の使用頻度が高くなるのに応じて小さくなるように設定される
 前記(1)乃至(3)のいずれかに記載の画像処理装置。
 (5) 前記管理部は、最大符号化単位よりも大きい範囲であって、水平ラインの閉じた範囲毎に、前記バッファをリセットする
 前記(1)乃至(3)に記載の画像処理装置。
 (6) 前記管理部は、前記フィルタ係数を、前記バッファの空き領域のうち最も優先順位の高い領域に格納する
 前記(1)乃至(3)のいずれかに記載の画像処理装置。
 (7) 前記フィルタ係数を受け取る受け取り部を
 さらに備え、
 前記管理部は、前記バッファに空き領域がない場合、前記受け取り部により受け取られたフィルタ係数を用いて、前記バッファに対してFIFO処理を行う
 前記(1)乃至(6)のいずれかに記載の画像処理装置。
 (8) 前記フィルタ係数を格納するバッファを
 さらに備える前記(1)乃至(7)のいずれかに記載の画像処理装置。
 (9) 前記フィルタ部は、適応オフセット処理された画像に対して、フィルタを施す
 前記(1)乃至(8)のいずれかに記載の画像処理装置。
 (10) 前記フィルタ部は、原画像との誤差を最小にする係数を用いるフィルタを施す
 前記(1)乃至(9)のいずれかに記載の画像処理装置。
 (11) 画像処理装置が、
 符号化ストリームを復号処理して画像を生成し、
 生成された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎に前記フィルタを施し、
 前記インデックスを用いて、前記フィルタ係数を参照する際の履歴を管理する
 画像処理方法。
 (12) 画像を符号化する際にローカル復号処理された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎に前記フィルタを施すフィルタ処理部と、
 前記フィルタ部により前記フィルタが施された画像を用いて、前記画像を符号化し、符号化ストリームを生成する符号化部と、
 前記インデックスを用いて、前記フィルタ部により前記フィルタ係数を参照する際の履歴を管理する管理部と
 を備える画像処理装置。
 (13) 前記フィルタ係数のインデックスを用いて、前記フィルタ係数を格納するバッファから、前記フィルタ係数を読み出す読み出し部を
 さらに備え、
 前記管理部は、前記読み出し部により読み出されたフィルタ係数を、前記バッファに対して参照される頻度が高い領域に格納する
 前記(12)に記載の画像処理装置。
 (14) 前記管理部は、参照される頻度が高いフィルタ係数を、参照される頻度が低いフィルタ係数に比べて、前記バッファに長く格納する
 前記(12)または(13)に記載の画像処理装置。
 (15)前記フィルタ係数のインデックスの値は、前記フィルタ係数の使用頻度が高くなるのに応じて小さくなるように設定される
 前記(12)乃至(14)のいずれかに記載の画像処理装置。
 (16) 前記管理部は、最大符号化単位よりも大きい範囲であって、水平ラインの閉じた範囲毎に、前記バッファをリセットする
 前記(12)乃至(14)のいずれかに記載の画像処理装置。
 (17) 前記管理部は、前記フィルタ係数を、前記バッファの空き領域のうち最も優先順位の高い領域に領域へ格納する
 前記(12)乃至(16)に記載の画像処理装置。
 (18) 前記フィルタ係数を決定するフィルタ係数決定部
 をさらに備え、
 前記管理部は、前記バッファに空き領域がない場合、前記フィルタ係数決定部により決定されたフィルタ係数を用いて、前記バッファに対してFIFO処理を行う
 前記(12)乃至(17)のいずれかに記載の画像処理装置。
 (19) 前記フィルタ部は、原画像との誤差を最小にする係数を用いるフィルタを施す
 前記(12)乃至(18)のいずれかに記載の画像処理装置。
 (20) 画像処理装置が、
 画像を符号化する際にローカル復号処理された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎に前記フィルタを施し、
 前記フィルタが施された画像を用いて、前記画像を符号化し、符号化ストリームを生成し、
 前記インデックスを用いて、前記フィルタ係数を参照する際の履歴を管理する
 画像処理方法。
In addition, this technique can also take the following structures.
(1) a decoding unit that decodes an encoded stream to generate an image;
For the image generated by the decoding unit, using a filter coefficient corresponding to the index of the filter coefficient, a filter unit that performs the filter for each maximum coding unit;
An image processing apparatus comprising: a management unit that manages a history when the filter unit refers to the filter coefficient using the index.
(2) The apparatus further includes a reading unit that reads out the filter coefficient from a buffer that stores the filter coefficient using the index of the filter coefficient,
The image processing apparatus according to (1), wherein the management unit stores the filter coefficient read by the reading unit in an area that is frequently referred to the buffer.
(3) The image processing apparatus according to (1) or (2), wherein the management unit stores a filter coefficient that is frequently referred to in the buffer longer than a filter coefficient that is frequently referred to. .
(4) The image processing device according to any one of (1) to (3), wherein an index value of the filter coefficient is set so as to decrease as the use frequency of the filter coefficient increases.
(5) The image processing apparatus according to any one of (1) to (3), wherein the management unit resets the buffer for each range that is larger than the maximum encoding unit and closed by a horizontal line.
(6) The image processing apparatus according to any one of (1) to (3), wherein the management unit stores the filter coefficient in an area having the highest priority among the empty areas of the buffer.
(7) A receiving unit that receives the filter coefficient is further provided,
The management unit performs a FIFO process on the buffer using the filter coefficient received by the receiving unit when there is no free space in the buffer. Image processing device.
(8) The image processing device according to any one of (1) to (7), further including a buffer that stores the filter coefficient.
(9) The image processing device according to any one of (1) to (8), wherein the filter unit applies a filter to an image that has been subjected to adaptive offset processing.
(10) The image processing apparatus according to any one of (1) to (9), wherein the filter unit applies a filter that uses a coefficient that minimizes an error from the original image.
(11) An image processing apparatus
Decoding the encoded stream to generate an image,
For the generated image, using the filter coefficient corresponding to the index of the filter coefficient, applying the filter for each maximum coding unit,
An image processing method for managing a history when referring to the filter coefficient using the index.
(12) A filter processing unit that applies the filter for each maximum coding unit using a filter coefficient corresponding to an index of a filter coefficient for an image that has been locally decoded when the image is encoded;
An encoding unit that encodes the image using the image subjected to the filter by the filter unit and generates an encoded stream;
An image processing apparatus comprising: a management unit that manages a history when the filter unit refers to the filter coefficient using the index.
(13) The apparatus further includes a reading unit that reads out the filter coefficient from a buffer that stores the filter coefficient by using the index of the filter coefficient.
The image processing apparatus according to (12), wherein the management unit stores the filter coefficient read by the reading unit in an area that is frequently referred to the buffer.
(14) The image processing apparatus according to (12) or (13), wherein the management unit stores a filter coefficient that is frequently referred to in the buffer longer than a filter coefficient that is frequently referred to. .
(15) The image processing device according to any one of (12) to (14), wherein an index value of the filter coefficient is set to be decreased as the use frequency of the filter coefficient is increased.
(16) The image processing according to any one of (12) to (14), wherein the management unit resets the buffer for each closed range of a horizontal line that is larger than a maximum encoding unit. apparatus.
(17) The image processing device according to any one of (12) to (16), wherein the management unit stores the filter coefficient in an area having the highest priority among the empty areas of the buffer.
(18) further comprising a filter coefficient determination unit for determining the filter coefficient;
The management unit performs a FIFO process on the buffer using the filter coefficient determined by the filter coefficient determination unit when there is no free space in the buffer. Any one of (12) to (17) The image processing apparatus described.
(19) The image processing device according to any one of (12) to (18), wherein the filter unit performs a filter using a coefficient that minimizes an error from the original image.
(20) The image processing apparatus is
Using the filter coefficient corresponding to the index of the filter coefficient for the image subjected to local decoding processing when encoding the image, the filter is applied for each maximum coding unit,
Encode the image using the filtered image to generate an encoded stream;
An image processing method for managing a history when referring to the filter coefficient using the index.
  11 画像符号化装置, 26 可逆符号化部, 31 デブロッキングフィルタ, 41 適応オフセットフィルタ, 42 適応ループフィルタ, 51 画像復号装置, 62 可逆復号部, 81 適応オフセットフィルタ, 82 適応ループフィルタ, 211 画像バッファ, 212 ALF係数計算部, 213 ALF処理部, 214 係数読み出し部, 215 ALF係数格納バッファ, 216 RD評価値計算部, 217 バッファ管理部, 218 ALFパラメータ設定部, 221 シンタクス書き込み部, 251 シンタクス読み出し部, 261 パラメータ受け取り部, 262 係数書き込み部, 263 バッファ管理部, 264 ALF係数格納バッファ, 265 ALF処理部 11 image encoding device, 26 lossless encoding unit, 31 deblocking filter, 41 adaptive offset filter, 42 adaptive loop filter, 51 image decoding device, 62 lossless decoding unit, 81 adaptive offset filter, 82 adaptive loop filter, 211 image buffer , 212 ALF coefficient calculation section, 213 ALF processing section, 214 coefficient reading section, 215 ALF coefficient storage buffer, 216 RD evaluation value calculation section, 217 buffer management section, 218 ALF parameter setting section, 221 syntax writing section, 251 syntax reading section , 261 parameter receiving unit, 262 coefficient writing unit, 263 buffer management unit, 264 ALF coefficient storage buffer, 265 ALF processing unit

Claims (20)

  1.  符号化ストリームを復号処理して画像を生成する復号部と、
     前記復号部により生成された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎にフィルタを施すフィルタ部と、
     前記インデックスを用いて、前記フィルタ部により前記フィルタ係数を参照する際の履歴を管理する管理部と
     を備える画像処理装置。
    A decoding unit that decodes the encoded stream to generate an image;
    For the image generated by the decoding unit, using a filter coefficient corresponding to the index of the filter coefficient, a filter unit that performs filtering for each maximum coding unit;
    An image processing apparatus comprising: a management unit that manages a history when the filter unit refers to the filter coefficient using the index.
  2.  前記フィルタ係数のインデックスを用いて、前記フィルタ係数を格納するバッファから、前記フィルタ係数を読み出す読み出し部を
     さらに備え、
     前記管理部は、前記読み出し部により読み出されたフィルタ係数を、前記バッファに対して参照される頻度が高い領域に格納する
     請求項1に記載の画像処理装置。
    A reading unit that reads out the filter coefficient from a buffer that stores the filter coefficient by using the index of the filter coefficient;
    The image processing apparatus according to claim 1, wherein the management unit stores the filter coefficient read by the reading unit in an area that is frequently referred to the buffer.
  3.  前記管理部は、参照される頻度が高いフィルタ係数を、参照される頻度が低いフィルタ係数に比べて、前記バッファに長く格納する
     請求項2に記載の画像処理装置。
    The image processing apparatus according to claim 2, wherein the management unit stores a filter coefficient that is frequently referred to in the buffer longer than a filter coefficient that is frequently referred to.
  4.  前記フィルタ係数のインデックスの値は、前記フィルタ係数の使用頻度が高くなるのに応じて小さくなるように設定される
     請求項3に記載の画像処理装置。
    The image processing apparatus according to claim 3, wherein an index value of the filter coefficient is set so as to decrease as the use frequency of the filter coefficient increases.
  5.  前記管理部は、最大符号化単位よりも大きい範囲であって、水平ラインの閉じた範囲毎に、前記バッファをリセットする
     請求項3に記載の画像処理装置。
    The image processing apparatus according to claim 3, wherein the management unit resets the buffer for each range that is larger than a maximum encoding unit and closed by a horizontal line.
  6.  前記管理部は、前記フィルタ係数を、前記バッファの空き領域のうち最も優先順位の高い領域に格納する
     請求項3に記載の画像処理装置。
    The image processing apparatus according to claim 3, wherein the management unit stores the filter coefficient in an area having the highest priority among the empty areas of the buffer.
  7.  前記フィルタ係数を受け取る受け取り部を
     さらに備え、
     前記管理部は、前記バッファに空き領域がない場合、前記受け取り部により受け取られたフィルタ係数を用いて、前記バッファに対してFIFO処理を行う
     請求項6に記載の画像処理装置。
    A receiving unit for receiving the filter coefficient;
    The image processing apparatus according to claim 6, wherein when there is no free area in the buffer, the management unit performs a FIFO process on the buffer using a filter coefficient received by the receiving unit.
  8.  前記フィルタ係数を格納するバッファを
     さらに備える請求項2に記載の画像処理装置。
    The image processing apparatus according to claim 2, further comprising a buffer that stores the filter coefficient.
  9.  前記フィルタ部は、適応オフセット処理された画像に対して、フィルタを施す
     請求項2に記載の画像処理装置。
    The image processing apparatus according to claim 2, wherein the filter unit applies a filter to an image that has been subjected to adaptive offset processing.
  10.  前記フィルタ部は、原画像との誤差を最小にする係数を用いるフィルタを施す
     請求項2に記載の画像処理装置。
    The image processing apparatus according to claim 2, wherein the filter unit performs a filter using a coefficient that minimizes an error from the original image.
  11.  画像処理装置が、
     符号化ストリームを復号処理して画像を生成し、
     生成された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎にフィルタを施し、
     前記インデックスを用いて、前記フィルタ係数を参照する際の履歴を管理する
     画像処理方法。
    The image processing device
    Decoding the encoded stream to generate an image,
    Using the filter coefficient corresponding to the filter coefficient index for the generated image as a target, applying a filter for each maximum coding unit,
    An image processing method for managing a history when referring to the filter coefficient using the index.
  12.  画像を符号化する際にローカル復号処理された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎にフィルタを施すフィルタ処理部と、
     前記フィルタ部により前記フィルタが施された画像を用いて、前記画像を符号化し、符号化ストリームを生成する符号化部と、
     前記インデックスを用いて、前記フィルタ部により前記フィルタ係数を参照する際の履歴を管理する管理部と
     を備える画像処理装置。
    A filter processing unit that performs filtering for each maximum encoding unit using a filter coefficient corresponding to an index of a filter coefficient for an image subjected to local decoding processing when encoding an image;
    An encoding unit that encodes the image using the image subjected to the filter by the filter unit and generates an encoded stream;
    An image processing apparatus comprising: a management unit that manages a history when the filter unit refers to the filter coefficient using the index.
  13.  前記フィルタ係数のインデックスを用いて、前記フィルタ係数を格納するバッファから、前記フィルタ係数を読み出す読み出し部を
     さらに備え、
     前記管理部は、前記読み出し部により読み出されたフィルタ係数を、前記バッファに対して参照される頻度が高い領域に格納する
     請求項12に記載の画像処理装置。
    A reading unit that reads out the filter coefficient from a buffer that stores the filter coefficient by using the index of the filter coefficient;
    The image processing apparatus according to claim 12, wherein the management unit stores the filter coefficient read by the reading unit in an area that is frequently referred to the buffer.
  14.  前記管理部は、参照される頻度が高いフィルタ係数を、参照される頻度が低いフィルタ係数に比べて、前記バッファに長く格納する
     請求項13に記載の画像処理装置。
    The image processing apparatus according to claim 13, wherein the management unit stores a filter coefficient that is frequently referred to in the buffer longer than a filter coefficient that is frequently referred to.
  15.  前記フィルタ係数のインデックスの値は、前記フィルタ係数の使用頻度が高くなるのに応じて小さくなるように設定される
     請求項14に記載の画像処理装置。
    The image processing apparatus according to claim 14, wherein an index value of the filter coefficient is set to be decreased as the use frequency of the filter coefficient is increased.
  16.  前記管理部は、最大符号化単位よりも大きい範囲であって、水平ラインの閉じた範囲毎に、前記バッファをリセットする
     請求項14に記載の画像処理装置。
    The image processing apparatus according to claim 14, wherein the management unit resets the buffer for each range that is larger than a maximum encoding unit and closed by a horizontal line.
  17.  前記管理部は、前記フィルタ係数を、前記バッファの空き領域のうち最も優先順位の高い領域に格納する
     請求項14に記載の画像処理装置。
    The image processing apparatus according to claim 14, wherein the management unit stores the filter coefficient in an area having the highest priority among the empty areas of the buffer.
  18.  前記フィルタ係数を決定するフィルタ係数決定部
     をさらに備え、
     前記管理部は、前記バッファに空き領域がない場合、前記フィルタ係数決定部により決定されたフィルタ係数を用いて、前記バッファに対してFIFO処理を行う
     請求項17に記載の画像処理装置。
    A filter coefficient determination unit for determining the filter coefficient;
    The image processing apparatus according to claim 17, wherein the management unit performs a FIFO process on the buffer using the filter coefficient determined by the filter coefficient determination unit when there is no free space in the buffer.
  19.  前記フィルタ部は、原画像との誤差を最小にする係数を用いるフィルタを施す
     請求項13に記載の画像処理装置。
    The image processing apparatus according to claim 13, wherein the filter unit performs a filter using a coefficient that minimizes an error from the original image.
  20.  画像処理装置が、
     画像を符号化する際にローカル復号処理された画像を対象として、フィルタ係数のインデックスに対応するフィルタ係数を用いて、最大符号化単位毎にフィルタを施し、
     前記フィルタが施された画像を用いて、前記画像を符号化し、符号化ストリームを生成し、
     前記インデックスを用いて、前記フィルタ係数を参照する際の履歴を管理する
     画像処理方法。
    The image processing device
    Using the filter coefficient corresponding to the index of the filter coefficient for the image subjected to local decoding processing when encoding the image, applying a filter for each maximum coding unit,
    Encode the image using the filtered image to generate an encoded stream;
    An image processing method for managing a history when referring to the filter coefficient using the index.
PCT/JP2012/083968 2012-01-12 2012-12-27 Image processing device and method WO2013105457A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012004524 2012-01-12
JP2012-004524 2012-01-12

Publications (1)

Publication Number Publication Date
WO2013105457A1 true WO2013105457A1 (en) 2013-07-18

Family

ID=48781413

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/083968 WO2013105457A1 (en) 2012-01-12 2012-12-27 Image processing device and method

Country Status (1)

Country Link
WO (1) WO2013105457A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017195532A1 (en) * 2016-05-13 2017-11-16 シャープ株式会社 Image decoding device and image encoding device
JP2018006829A (en) * 2016-06-27 2018-01-11 日本電信電話株式会社 Video filtering method, video filtering device and video filtering program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009060317A (en) * 2007-08-31 2009-03-19 Ricoh Co Ltd Image data encoder, image data encoding method, image forming apparatus, image forming method, image data decoder, and image data decoding method
JP2010135864A (en) * 2007-03-29 2010-06-17 Toshiba Corp Image encoding method, device, image decoding method, and device
WO2011111341A1 (en) * 2010-03-09 2011-09-15 パナソニック株式会社 Dynamic image decoding device, dynamic image encoding device, dynamic image decoding circuit, and dynamic image decoding method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010135864A (en) * 2007-03-29 2010-06-17 Toshiba Corp Image encoding method, device, image decoding method, and device
JP2009060317A (en) * 2007-08-31 2009-03-19 Ricoh Co Ltd Image data encoder, image data encoding method, image forming apparatus, image forming method, image data decoder, and image data decoding method
WO2011111341A1 (en) * 2010-03-09 2011-09-15 パナソニック株式会社 Dynamic image decoding device, dynamic image encoding device, dynamic image decoding circuit, and dynamic image decoding method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A. FULDSETH ET AL.: "Improved ALF with low latency and reduced complexity", JCTVC-G499, JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT- VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/ WG11, 21 November 2011 (2011-11-21), pages 1 - 7, XP030050626 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017195532A1 (en) * 2016-05-13 2017-11-16 シャープ株式会社 Image decoding device and image encoding device
JP2018006829A (en) * 2016-06-27 2018-01-11 日本電信電話株式会社 Video filtering method, video filtering device and video filtering program

Similar Documents

Publication Publication Date Title
JP6465227B2 (en) Image processing apparatus and method, recording medium, and program
JP6521013B2 (en) Image processing apparatus and method, program, and recording medium
JP6624462B2 (en) Image processing apparatus and method, program, and recording medium
JPWO2014002896A1 (en) Encoding apparatus, encoding method, decoding apparatus, and decoding method
WO2014050676A1 (en) Image processing device and method
WO2014050731A1 (en) Image processing device and method
WO2013108688A1 (en) Image processing device and method
WO2013047326A1 (en) Image processing device and method
WO2013047325A1 (en) Image processing device and method
WO2013051453A1 (en) Image processing device and method
WO2014045954A1 (en) Image processing device and method
WO2013105457A1 (en) Image processing device and method
WO2013105458A1 (en) Image processing device and method
WO2014103765A1 (en) Decoding device and decoding method, and encoding device and encoding method
WO2014156707A1 (en) Image encoding device and method and image decoding device and method

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: 12865188

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: 12865188

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP