WO2017191749A1 - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
WO2017191749A1
WO2017191749A1 PCT/JP2017/015521 JP2017015521W WO2017191749A1 WO 2017191749 A1 WO2017191749 A1 WO 2017191749A1 JP 2017015521 W JP2017015521 W JP 2017015521W WO 2017191749 A1 WO2017191749 A1 WO 2017191749A1
Authority
WO
WIPO (PCT)
Prior art keywords
class
image
unit
pixel
tap
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2017/015521
Other languages
English (en)
French (fr)
Inventor
拓郎 川合
健一郎 細川
圭祐 千田
央二 中神
隆浩 永野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to EP20157289.8A priority Critical patent/EP3684056A1/en
Priority to CN201780025492.1A priority patent/CN109076217A/zh
Priority to EP17792682.1A priority patent/EP3454557A4/en
Priority to US16/090,743 priority patent/US20190124327A1/en
Priority to JP2018515418A priority patent/JPWO2017191749A1/ja
Priority to KR1020187030029A priority patent/KR20190003497A/ko
Publication of WO2017191749A1 publication Critical patent/WO2017191749A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/436Methods 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 using parallelised computational arrangements

Definitions

  • the present technology relates to an image processing apparatus and an image processing method, and more particularly, to an image processing apparatus and an image processing method capable of greatly improving, for example, an image S / N and compression efficiency.
  • HEVC High Efficiency Video Coding
  • ILF In Loop Filter
  • post-HEVC predictive coding scheme of the next generation of HEVC
  • ILF includes DF (Deblocking Filter) to reduce block noise, SAO (Sample Adaptive Offset) to reduce ringing, and ALF to minimize coding error (error of decoded image with respect to original image). (Adaptive Loop Filter).
  • ALF is described in Patent Document 1
  • SAO is described in Patent Document 2.
  • the present technology has been made in view of such a situation, and makes it possible to greatly improve the S / N and compression efficiency of an image.
  • the image processing apparatus performs a filtering process on a first image obtained by adding a prediction encoding residual and a predicted image, and generates a second image used for prediction of the predicted image.
  • a prediction tap used for a prediction calculation for obtaining a pixel value of a corresponding pixel of the second image corresponding to a processing target pixel that is a processing target of the first image.
  • a prediction tap selection unit that selects the pixel to be from the first image, a class classification unit that classifies the processing target pixel into any one of a plurality of classes, and the first image.
  • An image processing apparatus having an arithmetic unit for obtaining a pixel value of a corresponding pixel.
  • the image processing method of the present technology performs a filter process on a first image obtained by adding a prediction encoding residual and a predicted image, and generates a second image used for prediction of the predicted image.
  • the filtering process includes a pixel that becomes a prediction tap used for a prediction calculation for obtaining a pixel value of a corresponding pixel of the second image corresponding to a processing target pixel that is a processing target of the first image.
  • the first image obtained by adding the prediction encoding residual and the prediction image is subjected to filter processing, and is used for prediction of the prediction image.
  • Two images are generated.
  • a pixel serving as a prediction tap used for a prediction calculation for obtaining a pixel value of a corresponding pixel of the second image corresponding to a processing target pixel that is a processing target of the first image is the first pixel.
  • the processing target pixel is classified into one of a plurality of classes.
  • the prediction calculation for each of the plurality of classes obtained by learning using a student image corresponding to the first image and a teacher image corresponding to the original image corresponding to the first image is performed.
  • the tap coefficient of the class of the processing target pixel is acquired, and the prediction calculation using the tap coefficient of the class of the processing target pixel and the prediction tap of the processing target pixel is performed.
  • the pixel value of the corresponding pixel is obtained.
  • the image processing apparatus may be an independent apparatus or an internal block constituting one apparatus.
  • the image processing apparatus can be realized by causing a computer to execute a program.
  • the program can be provided by being transmitted through a transmission medium or by being recorded on a recording medium.
  • the image S / N and compression efficiency can be greatly improved.
  • FIG. 3 is a block diagram illustrating a configuration example of a learning unit 33.
  • FIG. It is a block diagram which shows the 2nd structural example of the image converter which performs a classification classification adaptive process. It is a block diagram which shows the structural example of the learning apparatus which learns the seed coefficient memorize
  • FIG. 10 is a block diagram illustrating another configuration example of a learning unit 63.
  • FIG. 3 is a block diagram illustrating a first configuration example of an encoding device 11.
  • FIG. 3 is a block diagram illustrating a configuration example of a class classification adaptive filter 111.
  • FIG. 3 is a block diagram illustrating a configuration example of an image conversion apparatus 131.
  • FIG. It is a figure explaining the example of the class classification performed by the class classification part 23.
  • FIG. 3 is a block diagram illustrating a configuration example of a learning device 132.
  • FIG. 12 is a flowchart illustrating an example of encoding processing of the encoding device 11. It is a flowchart explaining the example of the class classification adaptation process performed by step S25.
  • FIG. 3 is a block diagram illustrating a first configuration example of a decoding device 12.
  • FIG. 3 is a block diagram illustrating a configuration example of a class classification adaptive filter 206.
  • FIG. 3 is a block diagram illustrating a configuration example of an image conversion apparatus 231.
  • FIG. 12 is a flowchart illustrating an example of a decoding process of the decoding device 12. It is a flowchart explaining the example of the class classification adaptation process performed by step S70. It is a figure explaining the difference of a class classification
  • FIG. 3 is a block diagram illustrating a second configuration example of the encoding device 11.
  • FIG. 12 is a block diagram illustrating a second configuration example of the decoding device 12.
  • FIG. 12 is a block diagram illustrating a third configuration example of the encoding device 11.
  • FIG. 12 is a block diagram illustrating a third configuration example of the decoding device 12.
  • FIG. 12 is a block diagram illustrating a fourth configuration example of the encoding device 11.
  • FIG. 12 is a block diagram illustrating a fourth configuration example of the decoding device 12.
  • FIG. 12 is a block diagram illustrating a fourth configuration example of the decoding device 12.
  • FIG. 12 is a block diagram illustrating a fifth configuration example of the encoding device 11.
  • FIG. 3 is a block diagram illustrating a configuration example of a class classification adaptive filter 411.
  • FIG. 3 is a block diagram illustrating a configuration example of an image conversion apparatus 431.
  • FIG. 4 is a block diagram illustrating a configuration example of a class classification unit 441.
  • FIG. 3 is a block diagram illustrating a configuration example of a learning device 432.
  • FIG. 12 is a flowchart illustrating an example of encoding processing of the encoding device 11. It is a flowchart explaining the example of the class classification adaptation process performed by step S125.
  • 12 is a block diagram illustrating a fifth configuration example of the decoding device 12.
  • FIG. 3 is a block diagram illustrating a configuration example of a class classification adaptive filter 411.
  • FIG. 3 is a block diagram illustrating a configuration example of an image conversion apparatus 431.
  • FIG. 4 is a block diagram illustrating a configuration example
  • FIG. 6 is a block diagram illustrating a configuration example of a class classification adaptive filter 471.
  • FIG. FIG. 11 is a block diagram illustrating a configuration example of an image conversion device 481. It is a block diagram which shows the structural example of the class classification
  • FIG. 12 is a flowchart illustrating an example of a decoding process of the decoding device 12. It is a flowchart explaining the example of the class classification adaptation process performed by step S170. It is a figure explaining degeneracy of a class. 12 is a block diagram illustrating a sixth configuration example of the encoding device 11.
  • FIG. 5 is a block diagram illustrating a configuration example of a class classification adaptive filter 511.
  • FIG. 20 is a block diagram illustrating a configuration example of an image conversion apparatus 531.
  • 6 is a block diagram illustrating a configuration example of a class classification unit 541.
  • FIG. 3 is a block diagram illustrating a configuration example of a learning device 532.
  • FIG. 12 is a flowchart illustrating an example of encoding processing of the encoding device 11. It is a flowchart explaining the example of the class classification adaptation process performed by step S225.
  • 22 is a block diagram illustrating a sixth configuration example of the decoding device 12.
  • FIG. 6 is a block diagram illustrating a configuration example of a class classification adaptive filter 571.
  • FIG. FIG. 20 is a block diagram illustrating a configuration example of an image conversion device 581.
  • FIG. 10 is a block diagram illustrating a configuration example of a class classification unit 591.
  • FIG. 12 is a flowchart illustrating an example of a decoding process of the decoding device 12. It is a flowchart explaining the example of the class classification adaptation process performed by step S270. It is a figure explaining the outline
  • FIG. 10 is a flowchart for explaining an example of class classification processing using a class classification coefficient performed by a class classification unit 721.
  • 12 is a block diagram illustrating a seventh configuration example of the encoding device 11.
  • FIG. 10 is a block diagram illustrating a configuration example of a class classification adaptive filter 811.
  • FIG. 25 is a block diagram illustrating a configuration example of an image conversion apparatus 831.
  • 5 is a block diagram illustrating a configuration example of a class classification unit 841.
  • FIG. 20 is a block diagram illustrating a configuration example of a learning device 832.
  • 12 is a flowchart illustrating an example of encoding processing of the encoding device 11. It is a flowchart explaining the example of the class classification adaptation process performed by step S425.
  • 22 is a block diagram illustrating a seventh configuration example of the decoding device 12.
  • FIG. 6 is a block diagram illustrating a configuration example of a class classification adaptive filter 861.
  • FIG. 3 is a block diagram illustrating a configuration example of an image conversion apparatus 871.
  • FIG. 12 is a flowchart illustrating an example of a decoding process of the decoding device 12. It is a flowchart explaining the example of the class classification adaptation process performed by step S470.
  • FIG. 20 is a block diagram illustrating another configuration example of the learning device 832. It is a figure which shows the RD (Rate-Distortion) curve at the time of providing the class classification adaptive filter which performs an ILF process by class classification adaptive processing, and the case where ALF is provided as ILF. 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.
  • RD Rate-Distortion
  • 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. It is a block diagram which shows an example of a schematic structure of a video set. It is a block diagram which shows an example of a schematic structure of a video processor. It is a block diagram which shows the other example of the schematic structure of a video processor.
  • FIG. 1 is a diagram illustrating a configuration example of an embodiment of an image processing system to which the present technology is applied.
  • the image processing system includes an encoding device 11 and a decoding device 12.
  • the original image to be encoded is supplied to the encoding device 11.
  • the encoding device 11 encodes the original image by predictive encoding such as HEVC or AVC (Advanced Video Coding).
  • predictive encoding such as HEVC or AVC (Advanced Video Coding).
  • a predicted image of the original image is generated, and the residual between the original image and the predicted image is encoded.
  • an ILF process is performed by applying ILF to a decoding intermediate image obtained by adding the residual of predictive encoding and the predictive image, and is used for prediction of the predictive image.
  • a reference image to be generated is generated.
  • an image obtained by performing filter processing (filtering) as ILF processing on an image in the middle of decoding is also referred to as a post-filter image.
  • the encoding device 11 performs filtering using ILF processing so that the filtered image is as close to the original image as possible by performing learning using the decoding intermediate image and the original image. Find filter information for
  • the ILF process of the encoding device 11 is performed using the filter information obtained by learning.
  • learning for obtaining filter information is performed, for example, for each sequence of one or a plurality of original images, or for one or a plurality of scenes (frames from a scene change to the next scene change) of the original image. Alternatively, it can be performed for each of a plurality of frames (pictures), for each of one or a plurality of slices of the original image, for one or a plurality of lines of a block of a unit for encoding a picture, or any other unit.
  • the learning for obtaining the filter information can be performed, for example, when the residual becomes equal to or greater than a threshold value.
  • the encoding device 11 transmits the encoded data obtained by predictive encoding of the original image and the filter information obtained by learning via the transmission medium 13 or transmitted to the recording medium 14 for recording.
  • learning for obtaining filter information can be performed by a device different from the encoding device 11.
  • the filter information can be transmitted separately from the encoded data, or can be transmitted by being included in the encoded data.
  • the learning for obtaining the filter information is performed using the original image itself (and the decoding intermediate image obtained from the original image), or using an image that is similar to the original image and that is different from the original image. be able to.
  • the decoding device 12 receives (receives) (acquires) the encoded data and filter information transmitted from the encoding device 11 via the transmission medium 13 and the recording medium 14, and transmits the encoded data to the encoding device 11. Is decoded by a method corresponding to the prediction encoding.
  • the decoding device 12 processes the encoded data from the encoding device 11 to obtain a prediction encoding residual. Furthermore, the decoding device 12 obtains a decoding intermediate image similar to that obtained by the encoding device 11 by adding the residual and the predicted image. Then, the decoding device 12 performs a filtering process as an ILF process using the filter information from the encoding device 11 on the image being decoded, and obtains a filtered image.
  • the filtered image is output as a decoded image of the original image, and is temporarily stored as a reference image used for prediction of the predicted image as necessary.
  • Filter processing as ILF processing of the encoding device 11 and the decoding device 12 is performed by class classification adaptive processing.
  • class classification adaptation process will be described.
  • FIG. 2 is a block diagram illustrating a first configuration example of an image conversion apparatus that performs class classification adaptation processing.
  • the class classification adaptation process can be understood as, for example, an image conversion process for converting a first image into a second image.
  • the image conversion processing for converting the first image into the second image is various signal processing depending on the definition of the first and second images.
  • the image conversion process is a spatial resolution creation (improvement) process that improves the spatial resolution. be able to.
  • the image conversion process can be referred to as a noise removal process for removing noise.
  • the image conversion process is performed as follows: This can be referred to as resizing processing for resizing (enlarging or reducing) an image.
  • the first image is a decoded image obtained by decoding an image encoded in block units such as HEVC
  • the second image is an original image before encoding
  • the image conversion process can be referred to as a distortion removal process that removes block distortion caused by encoding and decoding in units of blocks.
  • the classification classification adaptive processing can be performed on, for example, sound as well as images.
  • the classification classification adaptation process for sound is a sound conversion process for converting the first sound (for example, sound with low S / N) into the second sound (for example, sound with high S / N). Can be caught.
  • the pixel value of the target pixel is obtained by a prediction calculation using the tap coefficient and the pixel values of the same number of pixels as the tap coefficient of the first image selected for the target pixel.
  • FIG. 2 shows a configuration example of an image conversion apparatus that performs image conversion processing by class classification adaptive processing.
  • the image conversion apparatus 20 includes tap selection units 21 and 22, a class classification unit 23, a coefficient acquisition unit 24, and a prediction calculation unit 25.
  • the first image is supplied to the image conversion device 20.
  • the first image supplied to the image conversion device 20 is supplied to the tap selection units 21 and 22.
  • the tap selection unit 21 sequentially selects the pixels constituting the first image as the target pixel. Further, the tap selection unit 21 predicts some of the pixels (the pixel values) constituting the first image used to predict the corresponding pixels (the pixel values) of the second image corresponding to the target pixel. Select as a tap.
  • the tap selection unit 21 selects, as prediction taps, a plurality of pixels of the first image that are spatially or temporally close to the temporal and spatial positions of the target pixel.
  • the tap selection unit 22 classifies some of the pixels (pixel values) constituting the first image used for classifying the target pixel into any of several classes. Choose as. That is, the tap selection unit 22 selects a class tap in the same manner as the tap selection unit 21 selects a prediction tap.
  • prediction tap and the class tap may have the same tap structure or may have different tap structures.
  • the prediction tap obtained by the tap selection unit 21 is supplied to the prediction calculation unit 25, and the class tap obtained by the tap selection unit 22 is supplied to the class classification unit 23.
  • the class classification unit 23 classifies the target pixel according to a certain rule, and supplies a class code corresponding to the class obtained as a result to the coefficient acquisition unit 24.
  • the class classification unit 23 classifies the target pixel using, for example, the class tap from the tap selection unit 22 and supplies a class code corresponding to the class obtained as a result to the coefficient acquisition unit 24.
  • the class classification unit 23 obtains the image feature amount of the target pixel using the class tap. Further, the class classification unit 23 classifies the target pixel according to the image feature amount of the target pixel, and supplies a class code corresponding to the class obtained as a result to the coefficient acquisition unit 24.
  • ADRC Adaptive Dynamic Range Coding
  • pixels (pixel values) constituting the class tap are subjected to ADRC processing, and the class of the pixel of interest is determined according to the ADRC code (ADRC value) obtained as a result.
  • the ADRC code represents a waveform pattern as an image feature amount of a small area including the target pixel.
  • the pixel value of each pixel constituting the class tap is requantized to L bits. That is, the pixel value of each pixel forming the class taps, the minimum value MIN is subtracted, and the subtracted value is divided by DR / 2 L (requantization).
  • a bit string obtained by arranging the pixel values of the L-bit pixels constituting the class tap in a predetermined order, which is obtained as described above, is output as an ADRC code.
  • the pixel value of each pixel constituting the class tap is divided by the average value of the maximum value MAX and the minimum value MIN (rounded down). Thereby, the pixel value of each pixel is set to 1 bit (binarized). Then, a bit string in which the 1-bit pixel values are arranged in a predetermined order is output as an ADRC code.
  • the level distribution pattern of the pixel values of the pixels constituting the class tap can be directly output to the class classification unit 23 as a class code.
  • the class tap is composed of pixel values of N pixels, and the A bit is assigned to the pixel value of each pixel, the number of class codes output by the class classification unit 23 Is (2 N ) A , which is an enormous number that is exponentially proportional to the number of bits A of the pixel value of the pixel.
  • the class classification unit 23 preferably performs class classification by compressing the information amount of the class tap by the above-described ADRC processing or vector quantization.
  • the coefficient acquisition unit 24 stores the tap coefficient for each class obtained by learning described later, and further, among the stored tap coefficients, the tap coefficient of the class represented by the class code supplied from the class classification unit 23, That is, the tap coefficient of the class of the target pixel is acquired. Further, the coefficient acquisition unit 24 supplies the tap coefficient of the class of the target pixel to the prediction calculation unit 25.
  • the tap coefficient is a coefficient corresponding to a coefficient multiplied with input data in a so-called tap in a digital filter.
  • the prediction calculation unit 25 uses the prediction tap output from the tap selection unit 21 and the tap coefficient supplied from the coefficient acquisition unit 24, and the pixel value of the pixel (corresponding pixel) of the second image corresponding to the target pixel. A predetermined prediction calculation for obtaining a predicted value of the true value of is performed. Thereby, the prediction calculation unit 25 obtains and outputs the pixel value of the corresponding pixel (predicted value thereof), that is, the pixel value of the pixels constituting the second image.
  • FIG. 3 is a block diagram illustrating a configuration example of a learning device that performs learning of tap coefficients stored in the coefficient acquisition unit 24.
  • a high-quality image (high-quality image) is used as the second image, and the high-quality image is filtered by LPF (Low Pass Filter) to reduce the image quality (resolution).
  • LPF Low Pass Filter
  • the pixel value y of the high-quality pixel is obtained by the following linear primary expression.
  • x n represents a pixel value of an n-th low-quality image pixel (hereinafter referred to as a low-quality pixel as appropriate) that constitutes a prediction tap for the high-quality pixel y as the corresponding pixel.
  • W n represent the n th tap coefficient to be multiplied by the n th low image quality pixel (its pixel value).
  • the pixel value y of the high-quality pixel can be obtained not by the linear primary expression shown in Expression (1) but by a higher-order expression of the second or higher order.
  • x n, k represents the n-th low-quality pixel constituting the prediction tap for the high-quality pixel of the k-th sample as the corresponding pixel.
  • Tap coefficient w n for the prediction error e k 0 of the formula (3) (or Equation (2)) is, is the optimal for predicting the high-quality pixel, for all the high-quality pixel, such In general, it is difficult to obtain a simple tap coefficient w n .
  • the optimal tap coefficient w n is the sum of square errors E ( It can be obtained by minimizing (statistical error).
  • K is a high-quality pixel y k as the corresponding pixel
  • low quality pixels x 1, k that constitute prediction taps for the high quality pixel y k, x 2, k, ⁇ ⁇ ⁇ , X N, k represents the number of samples (number of learning samples).
  • Equation (5) The minimum value of the sum E of square errors of Equation (4) (minimum value), as shown in Equation (5), given that by partially differentiating the sum E with the tap coefficient w n by w n to 0.
  • equation (7) can be expressed by the normal equation shown in equation (8).
  • Equation (8) by solving for each class, the optimal tap coefficient (here, the tap coefficient that minimizes the sum E of square errors) to w n, can be found for each class .
  • Figure 3 shows an example of the configuration of a learning apparatus that performs learning for determining the tap coefficient w n by solving the normal equations in equation (8).
  • the learning device 30 includes a teacher data generation unit 31, a student data generation unit 32, and a learning unit 33.
  • the tutor data generating unit 31 and student data generating unit 32 the learning image used for learning of the tap coefficient w n is supplied.
  • the learning image for example, a high-quality image with high resolution can be used.
  • the teacher data generation unit 32 uses the learning image as teacher data to be a teacher (true value) for learning the tap coefficient, that is, as teacher data to be obtained by the class classification adaptation process, as a prediction calculation by Expression (1).
  • a teacher image as a mapping destination is generated and supplied to the learning unit 33.
  • the teacher data generation unit 32 supplies a high-quality image as a learning image to the learning unit 33 as it is as a teacher image.
  • the student data generation unit 32 uses the learning image as the student data to be a student of tap coefficient learning, that is, as the student data to be subjected to the prediction calculation with the tap coefficient in the class classification adaptation process, the prediction calculation according to Expression (1).
  • a student image to be converted by the mapping is generated and supplied to the learning unit 33.
  • the student data generation unit 32 generates a low-quality image by, for example, filtering a high-quality image as a learning image with an LPF (low-pass filter) to reduce the resolution, thereby generating the low-quality image.
  • the image is supplied to the learning unit 33 as a student image.
  • the learning unit 33 sequentially sets the pixels constituting the student image as the student data from the student data generation unit 32 as the target pixel, and the same tap as the tap selection unit 21 of FIG. 2 selects for the target pixel.
  • a pixel of the structure is selected as a prediction tap from the student image.
  • the learning unit 33 uses the corresponding pixels constituting the teacher image corresponding to the target pixel and the prediction tap of the target pixel, and for each class, establishes a normal equation of Equation (8) and solves the class.
  • the tap coefficient for each is obtained.
  • FIG. 4 is a block diagram illustrating a configuration example of the learning unit 33 in FIG.
  • the learning unit 33 includes tap selection units 41 and 42, a class classification unit 43, an addition unit 44, and a coefficient calculation unit 45.
  • the student image is supplied to the tap selection units 41 and 42, and the teacher image is supplied to the adding unit 44.
  • the tap selection unit 41 sequentially selects pixels constituting the student image as the target pixel, and supplies information representing the target pixel to the necessary block.
  • the tap selection unit 41 selects the same pixel as the pixel selected by the tap selection unit 21 in FIG. 2 from the pixels constituting the student image as the prediction pixel, and the tap selection unit 21 thereby selects the target pixel.
  • a prediction tap having the same tap structure as that obtained is obtained and supplied to the adding portion 44.
  • the tap selection unit 42 selects the same pixel as the pixel selected by the tap selection unit 22 in FIG. 2 from the pixels constituting the student image for the target pixel, and is thereby obtained by the tap selection unit 22. Class taps having the same tap structure are obtained and supplied to the class classification unit 43.
  • the class classification unit 43 performs the same class classification as the class classification unit 23 of FIG. 2 using the class tap from the tap selection unit 42, and adds the class code corresponding to the class of the pixel of interest obtained as a result To the unit 44.
  • the adding unit 44 acquires the corresponding pixel (the pixel value thereof) corresponding to the target pixel from the pixels constituting the teacher image, and configures the corresponding pixel and a prediction tap for the target pixel supplied from the tap selection unit 41. Addition is performed for each class code supplied from the class classification unit 43.
  • the addition unit 44 is supplied with the corresponding pixel y k of the teacher image as the teacher data, the prediction tap x n, k of the target pixel as the student data, and the class code representing the class of the target pixel.
  • Adder 44 for each class of the subject pixel, prediction taps (student data) x n, with k, multiplication (x n of each other learner data in the matrix on the left of formula (8), k x n ' , k ) And a calculation corresponding to summation ( ⁇ ).
  • the adding unit 44 also uses the prediction tap (student data) x n, k and the teacher data y k for each class of the pixel of interest , and uses the student data x n, k in the vector on the right side of Expression (8). And the multiplication (x n, k y k ) of the teacher data y k and the calculation corresponding to the summation ( ⁇ ) are performed.
  • the adding unit 44 calculates the component ( ⁇ x n, k x n ′, k ) of the left side matrix in Equation (8) obtained for the corresponding pixel corresponding to the target pixel as teacher data last time, and the right side Vector components ( ⁇ x n, k y k ) are stored in a built-in memory (not shown), and the matrix components ( ⁇ x n, k x n ′, k ) or vector components ( ⁇ x n, k y k ), the teacher data corresponding to the new pixel of interest is calculated using the teacher data y k + 1 and student data x n, k + 1.
  • the component x n, k + 1 x n ′, k + 1 or x n, k + 1 y k + 1 to be added is added (addition represented by the summation of Expression (8) is performed).
  • the addition unit 44 performs the above-described addition using all the pixels of the student image as the target pixel, thereby forming the normal equation shown in Expression (8) for each class, To the coefficient calculation unit 45.
  • the coefficient calculation unit 45 finds and outputs the optimum tap coefficient w n for each class by solving the normal equation for each class supplied from the addition unit 44.
  • the coefficient acquiring unit 24 of the image converter 20 of FIG. 2 can be stored tap coefficient w n for each class determined as described above.
  • FIG. 5 is a block diagram illustrating a second configuration example of an image conversion apparatus that performs class classification adaptation processing.
  • the image conversion apparatus 20 includes tap selection units 21 and 22, a class classification unit 23, a coefficient acquisition unit 24, and a prediction calculation unit 25.
  • the image conversion apparatus 20 in FIG. 5 is configured in the same manner as in FIG.
  • the coefficient acquisition unit 24 stores a seed coefficient described later. Furthermore, in FIG. 5, the parameter acquisition unit 24 is supplied with a parameter z from the outside.
  • the coefficient acquisition unit 24 generates a tap coefficient for each class corresponding to the parameter z from the seed coefficient, acquires the tap coefficient of the class from the class classification unit 23 from the tap coefficient for each class, and performs prediction calculation. To the unit 25.
  • the coefficient acquisition unit 24 stores the tap coefficient itself, but in FIG. 5, the coefficient acquisition unit 24 stores the seed coefficient.
  • a tap coefficient can be generated by giving (determining) the parameter z.
  • the seed coefficient can be regarded as information equivalent to the tap coefficient.
  • the tap coefficient includes, as necessary, a seed coefficient that can generate the tap coefficient in addition to the tap coefficient itself.
  • FIG. 6 is a block diagram illustrating a configuration example of a learning device that performs learning of seed coefficients stored in the coefficient acquisition unit 24.
  • a high-quality image (high-quality image) is used as the second image, and a low-quality image (low-level image) in which the spatial resolution of the high-quality image is reduced.
  • a prediction tap is selected from the low-quality image with the image quality image) as the first image, and the pixel value of the high-quality pixel, which is a pixel of the high-quality image, is calculated using, for example, Equation (1) ) Is obtained (predicted) by the linear primary prediction calculation.
  • the tap coefficient w n is generated by the following equation using the seed coefficient and the parameter z.
  • beta m, n denotes the m-th species coefficients used for determining the n-th tap coefficient w n.
  • the tap coefficient w n is obtained using M seed coefficients ⁇ 1, n , ⁇ 2, n ,..., ⁇ M, n .
  • the formula for obtaining the tap coefficient w n from the seed coefficient ⁇ m, n and the parameter z is not limited to the formula (9).
  • a value z m ⁇ 1 determined by the parameter z in equation (9) is defined by the following equation by introducing a new variable t m .
  • the tap coefficient w n is obtained by a linear linear expression of the seed coefficient ⁇ m, n and the variable t m .
  • x n, k represents the n-th low-quality pixel constituting the prediction tap for the high-quality pixel of the k-th sample as the corresponding pixel.
  • Prediction error seeds coefficient e k and 0 beta m, n of formula (14), is the optimal for predicting the high-quality pixel, for all the high-quality pixel, such species coefficient beta m , n is generally difficult to find.
  • the optimum seed coefficient ⁇ m, n is a square error represented by the following equation. Can be obtained by minimizing the sum E of
  • K is a high-quality pixel y k as a corresponding pixel and low-quality pixels x 1, k , x 2, k ,... Constituting a prediction tap for the high-quality pixel y k .
  • X N, k represents the number of samples (number of learning samples).
  • Expression (17) can be expressed by a normal equation shown in Expression (20) using X i, p, j, q and Y i, p .
  • the normal equation of Expression (20) can be solved for the seed coefficient ⁇ m, n by using, for example, a sweeping method (Gauss-Jordan elimination method) or the like.
  • a large number of high-quality pixels y 1 , y 2 ,..., Y K are used as teacher data, and low-quality pixels x that constitute prediction taps for the respective high-quality pixels y k .
  • the seed coefficient for each class obtained by learning by creating and solving the normal equation of Formula (20) for each class, using 1, k , x 2, k ,..., X N, k as student data beta m, n are stored in the coefficient obtaining unit 24. Then, the coefficient acquisition unit 24 generates a tap coefficient w n for each class from the seed coefficient ⁇ m, n and the parameter z given from the outside according to the equation (9).
  • the high-quality pixel (second image) is calculated by calculating the equation (1) using the coefficient w n and the low-quality pixel (first image pixel) x n constituting the prediction tap for the target pixel. Pixel value) (a predicted value close to).
  • FIG. 6 shows a configuration example of a learning apparatus that performs learning for obtaining the seed coefficient ⁇ m, n for each class by solving the normal equation of Expression (20) for each class.
  • the learning device 30 includes a teacher data generation unit 31, a parameter generation unit 61, a student data generation unit 62, and a learning unit 63.
  • the learning device 30 of FIG. 6 is common to the case of FIG. 3 in that it has a teacher data generation unit 31.
  • the learning device 30 of FIG. 6 is different from the case of FIG. 3 in that it further includes a parameter generation unit 61. Further, the learning device 30 of FIG. 6 is different from the case of FIG. 3 in that a student data generation unit 62 and a learning unit 63 are provided instead of the student data generation unit 32 and the learning unit 33, respectively. .
  • the parameter generation unit 61 generates some values within the range that the parameter z can take, and supplies the values to the student data generation unit 62 and the learning unit 63.
  • the same learning image as that supplied to the teacher data generation unit 31 is supplied to the student data generation unit 62.
  • the student data generation unit 62 generates a student image from the learning image and supplies it to the learning unit 63 as student data, similarly to the student data generation unit 32 of FIG.
  • the student data generation unit 62 is supplied with several values in the range that the parameter z can take from the parameter generation unit 61.
  • the student data generation unit 62 filters the high-quality image as the learning image with an LPF having a cutoff frequency corresponding to the parameter z supplied thereto, for example, for each of several values of the parameter z. Then, a low quality image as a student image is generated.
  • the student data generation unit 62 generates Z + 1 types of low-quality images as student images having different spatial resolutions as high-quality images as learning images.
  • a high-quality image is filtered using an LPF with a high cutoff frequency to generate a low-quality image as a student image.
  • the lower the image quality as the student image for the parameter z having a larger value the higher the spatial resolution.
  • the student data generation unit 62 generates a low-quality image as a student image in which the spatial resolution in one or both of the horizontal direction and the vertical direction of the high-quality image as a learning image is reduced according to the parameter z. can do.
  • the horizontal direction of the high-quality image as the learning image can be reduced separately depending on the respective separate parameters, ie the two parameters z and z ′.
  • the coefficient acquisition unit 24 in FIG. 5 is given two parameters z and z ′ from the outside, and a tap coefficient is generated using the two parameters z and z ′ and the seed coefficient.
  • a seed coefficient As described above, as a seed coefficient, a seed coefficient that can generate a tap coefficient using one parameter z, two parameters z and z ′, and three or more parameters is used. You can ask. However, in this specification, in order to simplify the description, a description will be given by taking a seed coefficient that generates a tap coefficient using one parameter z as an example.
  • the learning unit 63 uses the teacher image as the teacher data from the teacher data generation unit 31, the parameter z from the parameter generation unit 61, and the student image as the student data from the student data generation unit 62 for each class. Obtain the seed coefficient and output it.
  • FIG. 7 is a block diagram illustrating a configuration example of the learning unit 63 in FIG.
  • portions corresponding to the learning unit 33 in FIG. 4 are denoted by the same reference numerals, and description thereof will be omitted below as appropriate.
  • the learning unit 63 includes tap selection units 41 and 42, a class classification unit 43, an addition unit 71, and a coefficient calculation unit 72.
  • the learning unit 63 in FIG. 7 is common to the learning unit 33 in FIG. 4 in that the tap selection units 41 and 42 and the class classification unit 43 are included.
  • the learning unit 63 is different from the learning unit 33 in that it includes an addition unit 71 and a coefficient calculation unit 72 instead of the addition unit 44 and the coefficient calculation unit 45.
  • the tap selection units 41 and 42 are generated using a student image generated in correspondence with the parameter z generated by the parameter generation unit 61 (here, an LPF having a cutoff frequency corresponding to the parameter z).
  • a low-quality image as student data), a prediction tap and a class tap are respectively selected.
  • the adding unit 71 acquires a corresponding pixel corresponding to the target pixel from the teacher image from the teacher data generation unit 31 in FIG. 6, and the corresponding pixel and the prediction configured for the target pixel supplied from the tap selection unit 41.
  • the addition of the student data (student image pixels) constituting the tap and the parameter z when the student data is generated is performed for each class supplied from the class classification unit 43.
  • the addition unit 71 includes teacher data y k as corresponding pixels corresponding to the target pixel, prediction taps x i, k (x j, k ) for the target pixel output by the tap selection unit 41, and class The class of the target pixel output from the classification unit 43 is supplied, and the parameter z when the student data constituting the prediction tap for the target pixel is generated is supplied from the parameter generation unit 61.
  • the adding unit 71 uses the prediction tap (student data) x i, k (x j, k ) and the parameter z for each class supplied from the class classification unit 43 , and the matrix on the left side of Expression (20).
  • t p of formula (18), according to equation (10) is calculated from the parameter z. The same applies to tq in equation (18).
  • the adding unit 71 again uses the prediction tap (student data) x i, k , the teacher data y k , and the parameter z for each class supplied from the class classification unit 43, and the equation (20).
  • an operation corresponding to summation ( ⁇ ) is calculated from the parameter z.
  • the adding unit 71 lastly calculates the component X i, p, j, q of the matrix on the left side in the equation (20) obtained for the corresponding pixel corresponding to the target pixel as the teacher data , and the vector on the right side.
  • the component Y i, p is stored in its built-in memory (not shown), and a new pixel of interest is added to the matrix component X i, p, j, q or the vector component Y i, p .
  • the addition unit 71 performs the above-described addition for all the parameters z for all values of 0, 1,.
  • the normal equation shown in (20) is established, and the normal equation is supplied to the coefficient calculation unit 72.
  • the coefficient calculation unit 72 obtains and outputs the seed coefficient ⁇ m, n for each class by solving the normal equation for each class supplied from the addition unit 71.
  • a high-quality image as a learning image is used as teacher data, and a low-quality image obtained by degrading the spatial resolution of the high-quality image corresponding to the parameter z is used as student data.
  • the learning of the seed coefficient ⁇ m, n involves learning to find the seed coefficient ⁇ m, n that indirectly minimizes the sum of the squared errors of the predicted value y of the teacher data. be able to.
  • a high-quality image as a learning image is used as teacher data, and the high-quality image is filtered by an LPF having a cutoff frequency corresponding to the parameter z, thereby reducing the horizontal resolution and the vertical resolution.
  • a parameter z as the learner data a parameter z is species coefficient beta m, n and student data by equation (11)
  • the seed coefficient ⁇ m, n that minimizes the sum of the square errors of the predicted values of the tap coefficient w n as teacher data predicted from the variable t m to be calculated is obtained.
  • the tap coefficient w n for the teacher data predicted by a linear first-order prediction equation the sum E of square errors of the prediction value y that minimizes (minimum) of formula (1), when in the learning apparatus 30 of FIG. 3
  • the tap coefficient is obtained from the seed coefficient ⁇ m, n and the variable t m corresponding to the parameter z as shown in the equation (11).
  • the tap coefficient obtained by the equation (11) is expressed as w n ′
  • the optimum tap coefficient w n expressed by the following equation (21) and the equation (11) are obtained.
  • seed coefficient beta m, n of the error e n and 0 and the tap coefficient w n ' is, although the optimum seed coefficient for determining the optimal tap coefficient w n, for all of the tap coefficients w n, such
  • equation (21) can be transformed into the following equation by equation (11).
  • the optimum seed coefficient ⁇ m, n is expressed by the following equation. It can be obtained by minimizing the sum E of square errors.
  • Equation (23) minimum value of the sum E of square errors of Equation (23) (minimum value), as shown in equation (24), those which the sum E partially differentiated at the species factor beta m, n and 0 beta m, n Given by.
  • Expression (25) can be expressed by a normal equation shown in Expression (28) using X i, j and Y i .
  • Equation (28) can also be solved for the seed coefficient ⁇ m, n by using, for example, a sweeping method.
  • FIG. 8 is a block diagram showing another configuration example of the learning unit 63 in FIG.
  • FIG. 8 shows a configuration example of the learning unit 63 that performs learning for obtaining the seed coefficient ⁇ m, n by building and solving the normal equation of Expression (28).
  • tap selection units 41 and 42 includes tap selection units 41 and 42, a class classification unit 43, a coefficient calculation unit 45, addition units 81 and 82, and a coefficient calculation unit 83.
  • the learning unit 63 in FIG. 8 is common to the learning unit 33 in FIG. 4 in that the tap selection units 41 and 42, the class classification unit 43, and the coefficient calculation unit 45 are included.
  • the learning unit 63 in FIG. 8 has the addition unit 81 in place of the addition unit 44 and the addition of the addition unit 82 and the coefficient calculation unit 83 in that the learning unit 33 in FIG. Is different.
  • the addition unit 81 is supplied with the class of the pixel of interest output by the class classification unit 43 and the parameter z output by the parameter generation unit 61.
  • the addition unit 81 includes teacher data as corresponding pixels corresponding to the target pixel in the teacher image from the teacher data generation unit 31 and a student constituting a prediction tap for the target pixel supplied from the tap selection unit 41.
  • the addition for the data is performed for each class supplied from the class classification unit 43 and for each value of the parameter z output from the parameter generation unit 61.
  • the addition unit 81 is supplied with the teacher data y k , the prediction tap x n, k , the class of the pixel of interest, and the parameter z when the student image constituting the prediction tap x n, k is generated. .
  • the adding unit 81 uses prediction taps (student data) x n, k for each class of the target pixel and for each value of the parameter z, and multiplies the student data in the matrix on the left side of Equation (8) ( x n, k x n ′, k ) and calculation corresponding to summation ( ⁇ ).
  • the adding unit 81 uses the prediction tap (student data) x n, k and the teacher data y k for each class of the target pixel and for each value of the parameter z, in the vector on the right side of Expression (8).
  • An operation corresponding to multiplication (x n, k y k ) of student data x n, k and teacher data y k and summation ( ⁇ ) is performed.
  • the adding unit 81 lastly calculates the component ( ⁇ x n, k x n ′, k ) of the left side matrix in Equation (8) obtained for the corresponding pixel corresponding to the target pixel as the teacher data, and the right side Vector components ( ⁇ x n, k y k ) are stored in a built-in memory (not shown), and the matrix components ( ⁇ x n, k x n ′, k ) or vector components ( ⁇ x n, k y k ), the teacher data corresponding to the new pixel of interest is calculated using the teacher data y k + 1 and student data x n, k + 1.
  • the component x n, k + 1 x n ′, k + 1 or x n, k + 1 y k + 1 to be added is added (addition represented by the summation of Expression (8) is performed).
  • the addition unit 81 performs the above-described addition using all the pixels of the student image as the target pixel, thereby obtaining the normal equation shown in Expression (8) for each value of the parameter z for each class. Then, the normal equation is supplied to the coefficient calculation unit 45.
  • the adding unit 81 establishes a normal equation of the equation (8) for each class, similarly to the adding unit 44 of FIG. However, the addition unit 81 is different from the addition unit 44 of FIG. 4 in that the normal equation of Expression (8) is further established for each value of the parameter z.
  • the coefficient calculation unit 45 obtains an optimum tap coefficient w n for each value of the parameter z for each class by solving a normal equation for each value of the parameter z for each class supplied from the addition unit 81. , Supplied to the adding portion 82.
  • the adding unit 82 adds the parameters z (variable t m corresponding to the parameter z supplied from the parameter generating unit 61 (FIG. 6)) and the optimum tap coefficient w n supplied from the coefficient calculating unit 45. For each class.
  • the adding unit 82 uses the variable t i (t j ) obtained from the parameter z supplied from the parameter generating unit 61 by the equation (10), and uses the equation (26) in the matrix on the left side of the equation (28). For each class, the multiplication (t i t j ) between the variables t i (t j ) corresponding to the parameter z for obtaining the component X i, j defined by Do.
  • the component X i, j is determined only by the parameter z and has no relation to the class , the calculation of the component X i, j does not actually need to be performed for each class, and is performed once. Just do it.
  • the adding unit 82 uses the variable t i obtained from the parameter z supplied from the parameter generating unit 61 by the equation (10) and the optimum tap coefficient w n supplied from the coefficient calculating unit 45, and uses the equation t In the vector on the right side of (28), the multiplication (t i w n ) of the variable t i corresponding to the parameter z for obtaining the component Y i defined by the equation (27) and the optimum tap coefficient w n , An operation corresponding to the formation ( ⁇ ) is performed for each class.
  • the adding unit 82 obtains the component X i, j represented by the equation (26) and the component Y i represented by the equation (27) for each class, thereby obtaining the equation (28) for each class. And the normal equation is supplied to the coefficient calculation unit 83.
  • Coefficient calculating unit 83 solves the normal equation of Equation (28) for each class supplied from the adder 82 obtains and outputs the seed coefficient beta m, n for each class.
  • the coefficient acquisition unit 24 in FIG. 5 can store the seed coefficient ⁇ m, n for each class obtained as described above.
  • the seed coefficient depends on how the student data corresponding to the first image and the image to be used as teacher data corresponding to the second image are selected. As a result, seed coefficients for performing various image conversion processes can be obtained.
  • the learning image is used as teacher data corresponding to the second image as it is, and the low-quality image in which the spatial resolution of the learning image is deteriorated is the student data corresponding to the first image. Since the seed coefficient is learned, the seed coefficient is subjected to image conversion processing as spatial resolution creation processing for converting the first image into the second image with improved spatial resolution. A seed coefficient can be obtained.
  • the image conversion apparatus 20 in FIG. 5 can improve the horizontal resolution and vertical resolution of the image to the resolution corresponding to the parameter z.
  • a high-quality image is used as teacher data, and a seed coefficient is learned using, as student data, an image in which noise of a level corresponding to the parameter z is superimposed on the high-quality image as the teacher data.
  • a seed coefficient it is possible to obtain a seed coefficient for performing an image conversion process as a noise removal process for converting the first image into a second image from which the noise included therein is removed (reduced).
  • the image conversion apparatus 20 of FIG. 5 can obtain an S / N image corresponding to the parameter z (an image subjected to noise removal with an intensity corresponding to the parameter z).
  • the tap coefficient w n in as shown in Equation (9), ⁇ 1, n z 0 + ⁇ 2, n z 1 + ⁇ + ⁇ M, n z M-1 and, by the equation (9), the spatial resolution in the horizontal and vertical directions, both have been to obtain the tap coefficient w n for improving corresponding to the parameter z, the tap coefficient w n is horizontal It is also possible to obtain a resolution and a vertical resolution that are independently improved corresponding to the independent parameters z x and z y .
  • the tap coefficient w n can be finally expressed by the equation (11). Therefore, in the learning device 30 in FIG. 6, the horizontal direction of the teacher data corresponds to the parameters z x and z y. The image with degraded resolution and vertical resolution is used as student data, and learning is performed to obtain the seed coefficient ⁇ m, n , so that the horizontal and vertical resolutions correspond to independent parameters z x and z y , it is possible to determine the tap coefficient w n to improve independently.
  • an image obtained by degrading the horizontal resolution and vertical resolution of the teacher data corresponding to the parameter z x and adding noise to the teacher data corresponding to the parameter z y is used as student data.
  • FIG. 9 is a block diagram illustrating a first configuration example of the encoding device 11 of FIG.
  • the encoding device 11 includes an A / D conversion unit 101, a rearrangement buffer 102, a calculation unit 103, an orthogonal transformation unit 104, a quantization unit 105, a lossless encoding unit 106, and a storage buffer 107. Furthermore, the encoding device 11 includes an inverse quantization unit 108, an inverse orthogonal transform unit 109, a calculation unit 110, a class classification adaptive filter 111, a frame memory 112, a selection unit 113, an intra prediction unit 114, a motion prediction compensation unit 115, a prediction An image selection unit 116 and a rate control unit 117 are included.
  • the A / D conversion unit 101 A / D converts the analog signal original image into a digital signal original image, and supplies the converted image to the rearrangement buffer 102 for storage.
  • the rearrangement buffer 102 rearranges the frames of the original image in the order of encoding (decoding) from the display order according to GOP (Group Of Picture). To the class classification adaptive filter 111.
  • the calculation unit 103 subtracts the prediction image supplied from the intra prediction unit 114 or the motion prediction compensation unit 115 via the prediction image selection unit 116 from the original image from the rearrangement buffer 102 and obtains a residual obtained by the subtraction. (Prediction residual) is supplied to the orthogonal transform unit 104.
  • the calculation unit 103 subtracts the predicted image supplied from the motion prediction / compensation unit 115 from the original image read from the rearrangement buffer 102.
  • the orthogonal transform unit 104 performs orthogonal transform such as discrete cosine transform and Karhunen-Loeve transform on the residual supplied from the computation unit 103. Note that this orthogonal transformation method is arbitrary.
  • the orthogonal transform unit 104 supplies transform coefficients obtained by the orthogonal exchange to the quantization unit 105.
  • the quantization unit 105 quantizes the transform coefficient supplied from the orthogonal transform unit 104.
  • the quantization unit 105 sets the quantization parameter QP based on the code amount target value (code amount target value) supplied from the rate control unit 117 and quantizes the transform coefficient. Note that this quantization method is arbitrary.
  • the quantization unit 105 supplies the quantized transform coefficient to the lossless encoding unit 106.
  • the lossless encoding unit 106 encodes the transform coefficient quantized by the quantization unit 105 using a predetermined lossless encoding method. Since the transform coefficient is quantized under the control of the rate control unit 117, the code amount of the encoded data obtained by the lossless encoding of the lossless encoding unit 106 is the code amount target set by the rate control unit 117. Value (or approximate the code amount target value).
  • the lossless encoding unit 106 acquires necessary encoding information from the blocks among the encoding information related to predictive encoding in the encoding device 11.
  • motion information such as a motion vector, code amount target value, quantization parameter QP, picture type (I, P, B), CU (Coding Unit) and CTU (Coding
  • the prediction mode can be acquired from the intra prediction unit 114 or the motion prediction / compensation unit 115.
  • the motion information can be acquired from the motion prediction / compensation unit 115.
  • the lossless encoding unit 106 acquires encoding information, and also acquires filter information related to class classification adaptive processing in the class classification adaptive filter 111 from the class classification adaptive filter 111.
  • the filter information includes a tap coefficient for each class.
  • the lossless encoding unit 106 encodes the encoded information and the filter information by an arbitrary lossless encoding method, and uses it as part of the header information of the encoded data (multiplexes).
  • the lossless encoding unit 106 transmits the encoded data via the accumulation buffer 107. Therefore, the lossless encoding unit 106 functions as a transmission unit that transmits encoded data, and thus encoded information and filter information included in the encoded data.
  • variable length encoding or arithmetic encoding can be adopted.
  • variable length coding include H.264.
  • CAVLC Context-AdaptiveaptVariable Length Coding
  • arithmetic coding include CABAC (Context-AdaptiveaptBinary Arithmetic Coding).
  • the accumulation buffer 107 temporarily accumulates the encoded data supplied from the lossless encoding unit 106.
  • the encoded data stored in the storage buffer 107 is read and transmitted at a predetermined timing.
  • the transform coefficient quantized by the quantization unit 105 is supplied to the lossless encoding unit 106 and also to the inverse quantization unit 108.
  • the inverse quantization unit 108 inversely quantizes the quantized transform coefficient by a method corresponding to the quantization by the quantization unit 105.
  • the inverse quantization method may be any method as long as it is a method corresponding to the quantization processing by the quantization unit 105.
  • the inverse quantization unit 108 supplies the transform coefficient obtained by the inverse quantization to the inverse orthogonal transform unit 109.
  • the inverse orthogonal transform unit 109 performs inverse orthogonal transform on the transform coefficient supplied from the inverse quantization unit 108 by a method corresponding to the orthogonal transform process by the orthogonal transform unit 104.
  • the inverse orthogonal transform method may be any method as long as it corresponds to the orthogonal transform processing by the orthogonal transform unit 104.
  • the inversely orthogonally transformed output (restored residual) is supplied to the calculation unit 110.
  • the calculation unit 110 is supplied from the intra prediction unit 114 or the motion prediction / compensation unit 115 to the inverse orthogonal transform result supplied from the inverse orthogonal transform unit 109, that is, the restored residual, via the predicted image selection unit 116.
  • the prediction image is added, and the addition result is output as a decoding intermediate image.
  • the decoding intermediate image output from the calculation unit 110 is supplied to the class classification adaptive filter 111 or the frame memory 112.
  • the class classification adaptive filter 111 is a filter that functions as ILF, that is, all of DF, SAO, and ALF, by class classification adaptive processing, and performs ILF processing by class classification adaptive processing.
  • the class classification adaptive filter 111 is supplied with the decoding-in-progress image from the calculation unit 110 and is supplied with the original image corresponding to the decoding-in-progress image from the rearrangement buffer 102 and is required from each block of the encoding device 11. Encoded information is supplied.
  • the class classification adaptive filter 111 uses a student image corresponding to the intermediate decoding image from the calculation unit 110 and a teacher image corresponding to the original image from the rearrangement buffer 102, and uses encoded information as necessary. To learn the tap coefficient for each class.
  • the class classification adaptive filter 111 uses, for example, the decoding intermediate image itself from the calculation unit 110 as a student image and the original image itself from the rearrangement buffer 102 as a teacher image, and encodes information as necessary. And learning to find the tap coefficient for each class.
  • the tap coefficient for each class is supplied from the class classification adaptive filter 111 to the lossless encoding unit 106 as filter information.
  • the class classification adaptive filter 111 performs the class classification adaptive processing (by image conversion) using the tap coefficient for each class, using the decoding intermediate image from the calculation unit 110 as the first image, and the encoded information as necessary. In this way, the halfway decoded image as the first image is converted into a filtered image as a second image corresponding to the original image (generates a filtered image) and output.
  • the filtered image output from the class classification adaptive filter 111 is supplied to the frame memory 112.
  • the class classification adaptive filter 111 learning is performed by using the mid-decoding image as the student image and the original image as the teacher image, and using the tap coefficient obtained by the learning, the mid-decoding is performed.
  • a class classification adaptation process for converting an image into a filtered image is performed. Therefore, the filtered image obtained by the class classification adaptive filter 111 is an image very close to the original image.
  • the frame memory 112 temporarily stores the decoding intermediate image supplied from the calculation unit 110 or the filtered image supplied from the class classification adaptive filter 111 as a locally decoded decoded image.
  • the decoded image stored in the frame memory 112 is supplied to the selection unit 113 as a reference image used for generating a predicted image at a necessary timing.
  • a decoding intermediate image supplied from the computation unit 110 and a filtered intermediate image supplied from the class classification adaptive filter 111 as decoded images stored in the frame memory 112 are intra prediction. Used as a reference image.
  • the filtered image is used as a reference image for inter prediction.
  • the selection unit 113 selects a supply destination of the reference image supplied from the frame memory 112. For example, when intra prediction is performed in the intra prediction unit 114, the selection unit 113 supplies the reference image supplied from the frame memory 112 to the intra prediction unit 114. For example, when inter prediction is performed in the motion prediction / compensation unit 115, the selection unit 113 supplies the reference image supplied from the frame memory 112 to the motion prediction / compensation unit 115.
  • the intra prediction unit 114 basically uses the original image supplied from the rearrangement buffer 102 and the reference image supplied from the frame memory 112 via the selection unit 113 as a processing unit for PU (Prediction Unit). Intra prediction (in-screen prediction) is performed.
  • the intra prediction unit 114 selects an optimal intra prediction mode based on a predetermined cost function, and supplies the prediction image generated in the optimal intra prediction mode to the prediction image selection unit 116. Further, as described above, the intra prediction unit 114 appropriately supplies a prediction mode indicating the intra prediction mode selected based on the cost function to the lossless encoding unit 106 and the like.
  • the motion prediction / compensation unit 115 uses the original image supplied from the rearrangement buffer 102 and the reference image supplied from the frame memory 112 via the selection unit 113 to basically perform motion prediction using the PU as a processing unit. (Inter prediction) is performed. Furthermore, the motion prediction / compensation unit 115 performs motion compensation according to a motion vector detected by motion prediction, and generates a predicted image. The motion prediction / compensation unit 115 performs inter prediction in a plurality of inter prediction modes prepared in advance, and generates a prediction image.
  • the motion prediction / compensation unit 115 selects an optimal inter prediction mode based on a predetermined cost function of the prediction image obtained for each of the plurality of inter prediction modes. Furthermore, the motion prediction / compensation unit 115 supplies the predicted image generated in the optimal inter prediction mode to the predicted image selection unit 116.
  • the motion prediction / compensation unit 115 performs motion such as a prediction mode indicating an inter prediction mode selected based on a cost function and a motion vector necessary for decoding encoded data encoded in the inter prediction mode. Information or the like is supplied to the lossless encoding unit 106.
  • the prediction image selection unit 116 selects a supply source (intra prediction unit 114 or motion prediction compensation unit 115) of a prediction image to be supplied to the calculation units 103 and 110, and selects a prediction image supplied from the selected supply source. , To the arithmetic units 103 and 110.
  • the rate control unit 117 controls the quantization operation rate of the quantization unit 105 based on the code amount of the encoded data stored in the storage buffer 107 so that overflow or underflow does not occur. That is, the rate control unit 117 sets the target code amount of the encoded data so that the overflow and underflow of the accumulation buffer 107 do not occur, and supplies them to the quantization unit 105.
  • FIG. 10 is a block diagram showing a configuration example of the class classification adaptive filter 111 of FIG.
  • the class classification adaptive filter 111 includes an image conversion device 131 and a learning device 132.
  • the image conversion device 131 is supplied with the decoding intermediate image from the calculation unit 110 (FIG. 9) and the tap coefficient for each class from the learning device 132. Further, the image conversion apparatus 131 is supplied with encoded information.
  • the image conversion apparatus 131 sets the decoding-in-progress image as the first image to the original image by performing image conversion by the class classification adaptive process using the tap coefficient for each class, with the decoding-in-progress image as the first image.
  • the image is converted into a filtered image as a corresponding second image (a filtered image is generated) and supplied to the frame memory 112 (FIG. 9).
  • the image conversion apparatus 131 performs class classification using encoded information as necessary in the class classification adaptive processing.
  • the learning device 132 is supplied with the original image from the rearrangement buffer 102 (FIG. 9) and also with the decoding intermediate image from the calculation unit 110 (FIG. 9). Further, encoded information is supplied to the learning device 132.
  • the learning device 132 performs learning for obtaining tap coefficients for each class (hereinafter, also referred to as tap coefficient learning) using the decoding intermediate image as student data and the original image as teacher data.
  • the learning device 132 supplies the tap coefficient for each class obtained by the tap coefficient learning as filter information to the image conversion device 131 and the lossless encoding unit 106 (FIG. 9).
  • the learning device 132 performs class classification in the tap coefficient learning using the encoded information as necessary.
  • FIG. 11 is a block diagram illustrating a configuration example of the image conversion apparatus 131 in FIG.
  • the image conversion apparatus 131 includes a tap selection unit 21 or a prediction calculation unit 25.
  • the image conversion device 131 is configured similarly to the image conversion device 20 of FIG.
  • the decoding intermediate image is supplied as the first image to the tap selection units 21 and 22, and the prediction calculation unit 25 obtains the filtered image as the second image.
  • the encoded information is supplied to the class classification unit 23, and the class classification unit 23 performs class classification using the class tap and the encoded information as necessary.
  • the tap coefficient for each class as the filter information obtained by the learning device 132 is supplied to the coefficient acquisition unit 24 and stored therein.
  • FIG. 12 is a diagram illustrating an example of class classification performed by the class classification unit 23 of FIG.
  • the class classification unit 23 uses one or both of the image feature amount of the pixel of interest obtained from the pixel value of the pixel of the image being decoded as a class tap and the encoding information of the pixel of interest to classify the class. It can be performed.
  • an ADRC code (ADRC value) obtained by ADRC processing can be adopted.
  • FIG. 12 is a diagram for explaining an example of 1-bit ADRC processing.
  • the pixel of the image being decoded is identified by adding a pixel number, and the pixel of pixel number i is also referred to as pixel i.
  • pixel 0 is the target pixel in the image being decoded.
  • pixel 0, pixel 1 and pixel 2 which are two adjacent pixels on pixel 0, pixel 3 and pixel 4 which are two adjacent pixels to the left of pixel 0, and two pixels which are adjacent to the right of pixel 0
  • a total of 9 pixels 0 to 8 of the pixel 5 and the pixel 6, and the pixel 7 and the pixel 8 that are two adjacent pixels below the pixel 0 constitute a class tap of the pixel 0 that is the target pixel.
  • the class classification unit 23 detects the maximum value MAX and the minimum value MIN of the pixel values of the pixels 0 to 8 constituting the class tap, and calculates an intermediate value (average value) between the maximum value MAX and the minimum value MIN. Obtained as a quantization threshold.
  • the class classification unit 23 compares the pixel values of the pixels 0 to 8 with a threshold value. When the pixel value is equal to or greater than the threshold value, the class classification unit 23 quantizes the quantized value 1 and when the pixel value is not equal to or greater than the threshold value. Quantize to quantization value 0.
  • the class classification unit 23 obtains, as an ADRC code, a code in which the quantized values of the pixel values of the pixels 0 to 8 are arranged in the order of pixel numbers, for example.
  • the class classification unit 23 classifies the target pixel (pixel 0) using only the ADRC code as the image feature amount, the class classification unit 23 selects the target pixel.
  • the target pixel pixel 0
  • the class classification unit 23 selects the target pixel.
  • the class code corresponding to the ADRC code is a value obtained by regarding the ADRC code as a binary number and converting the binary ADRC code into a decimal number. Means.
  • the class code corresponding to the ADRC code 000011100 is 28.
  • 1-bit ADRC processing is performed in which one value between the maximum value MAX and the minimum value MIN is used as a quantization threshold.
  • a plurality of values are used as quantization thresholds.
  • N-bit ADRC processing for quantizing the pixel values of each pixel constituting the class tap into a plurality of N bits.
  • the class tap is composed of nine pixels 0 to 8, when performing class classification according to one-bit ADRC processing, the number of classes becomes 2 9 class, the number of classes obtained by the class classification, degenerates be able to.
  • the binary number as an ADRC code obtained by the 1-bit ADRC processing and the inverted binary number obtained by inverting the binary bit are classified into the same class.
  • the number of classes can be halved compared to the case where no reduction is performed.
  • the number of classes is reduced to 2 9-1 classes by reducing the number of classes. be able to.
  • ADRC is described in, for example, Japanese Patent No. 4240322.
  • the class tap is not limited to nine cross-shaped pixels centered on the target pixel as shown in FIG.
  • the class tap for example, 3 ⁇ 3 square 9 pixels centered on the target pixel and 13 rhombus-shaped pixels centered on the target pixel and diagonal in the horizontal and vertical directions are used. can do.
  • the class tap can be configured to include pixels of a frame other than the target frame such as a frame adjacent to the target pixel in addition to the target frame which is a frame (picture) of the target pixel.
  • the ADRC code obtained from the class tap is used as the image feature amount used for class classification.
  • the image feature amount for example, the pixel value of the pixels constituting the class tap is used.
  • Image feature quantities other than ADRC codes such as dynamic range and sum of absolute differences can be used.
  • the target pixel when adopting the dynamic range of the pixel values of the pixels constituting the class tap as the image feature amount used for class classification, for example, by subjecting the dynamic range to a threshold value of 1 or more, the target pixel is set to 2 or more. Can be classified into any of the classes.
  • the classification can be performed using a plurality of image feature amounts such as an ADRC code and a dynamic range, for example, instead of a single image feature amount such as an ADRC code.
  • the classification can be performed using the image feature amount of the target pixel and the encoding information of the target pixel.
  • the target pixel encoding information used for class classification includes, for example, the block phase indicating the position of the target pixel in a block such as a CU or PU including the target pixel, the picture type of the picture including the target pixel, and the target pixel.
  • a PU quantization parameter QP or the like can be employed.
  • the pixel of interest When adopting the block phase as the encoding information of the pixel of interest used for class classification, the pixel of interest can be classified according to, for example, whether the pixel of interest is a pixel at the boundary of the block.
  • the picture type is adopted as the encoding information of the target pixel used for class classification, for example, depending on whether the picture including the target pixel is an I picture, a P picture, or a B picture The pixel of interest can be classified.
  • the quantization parameter QP when adopted as the encoding information of the pixel of interest used for class classification, the pixel of interest can be classified according to the roughness (fineness) of the quantization, for example.
  • the classification can be performed using both the image feature amount and the encoded information, for example, in addition to the image feature amount or the encoded information.
  • FIG. 13 is a block diagram illustrating a configuration example of the learning device 132 of FIG.
  • the learning device 132 includes a learning unit 33.
  • the learning unit 33 includes tap selection units 41 and 42, a class classification unit 43, an addition unit 44, and a coefficient calculation unit 45.
  • the learning device 132 of FIG. 13 is common to the case of FIG. Furthermore, the learning device 132 is common to the case of FIG. 4 in that the learning unit 33 includes a tap selection unit 41 or a coefficient calculation unit 45.
  • the learning device 132 of FIG. 13 is different from the case of FIG. 3 in that it does not have the teacher data generation unit 31 and the student data generation unit 32.
  • the learning device 132 of FIG. 13 is different from the case of FIG. 4 in that the learning unit 33 supplies the encoded information to the class classification unit 43.
  • the class classification unit 43 performs class classification similar to the class classification unit 23 of FIG. 11 using class taps and encoding information as necessary.
  • the decoding of the tap coefficient is performed by using the decoding intermediate image as the student data and using the original image corresponding to the decoding intermediate image as the teacher data.
  • the tap coefficient for each class obtained by the coefficient calculation unit 45 is supplied to the image conversion device 131 (FIG. 10), and the lossless encoding unit 106 (FIG. 9).
  • the learning of the tap coefficient can be performed in parallel with the encoding of the original image, or can be performed in advance regardless of the encoding of the original image.
  • the tap coefficient When the tap coefficient is learned in advance regardless of the encoding of the original image, the tap coefficient can be learned for each category using the original images of a plurality of categories as teacher data. Then, among the tap coefficients of a plurality of categories, for example, a tap coefficient of a category that minimizes a predetermined cost function is used for the class classification adaptive processing in the image conversion device 131, and as a filter information, a lossless encoding unit 106 can be transmitted.
  • FIG. 14 is a flowchart for explaining an example of the encoding process of the encoding device 11 of FIG.
  • the learning device 132 (FIG. 10) of the class classification adaptive filter 111 uses the decoding intermediate image supplied thereto as student data, and the original image corresponding to the decoding intermediate image as teacher data. Learning is conducted as appropriate.
  • the learning device 132 determines whether it is the update timing of the tap coefficient as the filter information.
  • the update timing of the filter information can be determined in advance, for example, every one or more frames (pictures), every one or more sequences, every one or more slices, and the like.
  • step S11 If it is determined in step S11 that it is not the time to update the filter information, the process skips steps S12 and S13 and proceeds to step S14.
  • step S11 If it is determined in step S11 that it is the update timing of the filter information, the process proceeds to step S12, and the image conversion apparatus 131 uses the latest coefficient supplied from the learning apparatus 132 as the tap coefficient as the filter information. Update to tap coefficients as filter information.
  • the image conversion device 131 (FIG. 11) causes the coefficient acquisition unit 24 to store the latest tap coefficient supplied from the learning device 132.
  • step S12 the lossless encoding unit 106 sets the latest filter information supplied from the learning device 132 as a transmission target, and the process proceeds to step S14.
  • the latest filter information set as the transmission target is included in the encoded data and transmitted in step S27 described later.
  • step S14 the predictive encoding process of the original image is performed.
  • step S14 the A / D conversion unit 101 performs A / D conversion on the original image, supplies the original image to the rearrangement buffer 102, and the process proceeds to step S15.
  • step S15 the rearrangement buffer 102 stores the original images from the A / D conversion unit 101, rearranges them in the encoding order, and outputs them, and the process proceeds to step S16.
  • step S16 the intra prediction unit 114 performs an intra prediction process in the intra prediction mode, and the process proceeds to step S17.
  • step S17 the motion prediction / compensation unit 115 performs an inter motion prediction process for performing motion prediction and motion compensation in the inter prediction mode, and the process proceeds to step S18.
  • a cost function of various prediction modes is calculated and a prediction image is generated.
  • step S18 the predicted image selection unit 116 determines an optimal prediction mode based on each cost function obtained by the intra prediction unit 114 and the motion prediction compensation unit 115. Then, the predicted image selection unit 116 selects and outputs the predicted image of the optimal prediction mode among the predicted image generated by the intra prediction unit 114 and the predicted image generated by the motion prediction / compensation unit 115, and performs processing. Advances from step S18 to step S19.
  • step S ⁇ b> 19 the calculation unit 103 calculates a residual between the encoding target image that is the original image output from the rearrangement buffer 102 and the predicted image output from the predicted image selection unit 116, and the orthogonal transform unit 104. The process proceeds to step S20.
  • step S20 the orthogonal transform unit 104 orthogonally transforms the residual from the operation unit 103, supplies the transform coefficient obtained as a result to the quantization unit 105, and the process proceeds to step S21.
  • step S21 the quantization unit 105 quantizes the transform coefficient from the orthogonal transform unit 104, and supplies the quantized coefficient obtained by the quantization to the lossless encoding unit 106 and the inverse quantization unit 108 for processing. Advances to step S22.
  • step S22 the inverse quantization unit 108 inversely quantizes the quantization coefficient from the quantization unit 105, supplies the transform coefficient obtained as a result to the inverse orthogonal transform unit 109, and the process proceeds to step S23.
  • step S23 the inverse orthogonal transform unit 109 performs inverse orthogonal transform on the transform coefficient from the inverse quantization unit 108, supplies the residual obtained as a result to the arithmetic unit 110, and the process proceeds to step S24.
  • step S ⁇ b> 24 the calculation unit 110 adds the residual from the inverse orthogonal transform unit 109 and the predicted image output from the predicted image selection unit 116, and is the source of the residual calculation target in the calculation unit 103.
  • a decoding intermediate image corresponding to the image is generated.
  • the calculation unit 110 supplies the mid-decoding image to the class classification adaptive filter 111 or the frame memory 112, and the process proceeds from step S24 to step S25.
  • the class classification adaptive filter 111 applies the class classification adaptive processing as the ILF processing to the decoding intermediate image from the arithmetic unit 110. (Class classification adaptive filter processing) is performed.
  • Class classification adaptive filter processing By applying the classification adaptation process to the decoding-in-progress image, a filtered image closer to the original image is obtained than when the decoding-in-progress image is filtered by ILF.
  • the class classification adaptive filter 111 supplies the filtered image obtained by the class classification adaptation process to the frame memory 112, and the process proceeds from step S25 to step S26.
  • step S26 the frame memory 112 stores the decoded image supplied from the calculation unit 110 or the filtered image supplied from the class classification adaptive filter 111 as a decoded image, and the process proceeds to step S27.
  • the decoded image stored in the frame memory 112 is used as a reference image from which a predicted image is generated in steps S17 and S18.
  • step S27 the lossless encoding unit 106 encodes the quantized coefficient from the quantizing unit 105. Further, the lossless encoding unit 106 uses the quantization parameter QP used for quantization in the quantization unit 105, the prediction mode obtained by the intra prediction process in the intra prediction unit 114, and the motion prediction compensation unit 115. Encoding information such as a prediction mode and motion information obtained by the inter motion prediction process is encoded as necessary and included in the encoded data.
  • the lossless encoding unit 106 encodes the filter information set as the transmission target in step S13 and includes the encoded information in the encoded data. Then, the lossless encoding unit 106 supplies the encoded data to the accumulation buffer 107, and the process proceeds from step S27 to step S28.
  • step S28 the accumulation buffer 107 accumulates the encoded data from the lossless encoding unit 106, and the process proceeds to step S29.
  • the encoded data stored in the storage buffer 107 is appropriately read and transmitted.
  • step S29 the rate control unit 117 performs quantization of the quantization unit 105 based on the code amount (generated code amount) of the encoded data accumulated in the accumulation buffer 107 so that overflow or underflow does not occur.
  • the rate of operation is controlled and the encoding process ends.
  • FIG. 15 is a flowchart for explaining an example of the class classification adaptation process performed in step S25 of FIG.
  • step S41 the tap selection unit 21 is still focused on the pixels in the decoding intermediate image (as a block) supplied from the calculation unit 110.
  • One of the pixels not selected as a pixel is selected as a target pixel, and the process proceeds to step S42.
  • step S42 the tap selection units 21 and 22 select a pixel to be used as a prediction tap and a class tap for the target pixel from the decoding intermediate image supplied from the calculation unit 110, respectively. Then, the tap selection unit 21 supplies the prediction tap to the prediction calculation unit 25, and the tap selection unit 22 supplies the class tap to the class classification unit 23.
  • step S42 the class classification unit 23 classifies the target pixel using the class tap for the target pixel and the encoding information about the target pixel.
  • step S51 the class classification unit 23 extracts (calculates), for example, an image feature amount such as an ADRC code (ADRC value) from the pixels constituting the class tap from the tap selection unit 22, The process proceeds to step S52.
  • ADRC code ADRC value
  • step S52 the class classification unit 23 acquires necessary encoding information for the pixel of interest, converts the encoding information into an information code according to a predetermined rule, and the process proceeds to step S53.
  • the encoding information is a picture type representing an I picture, a P picture, or a B picture
  • information codes 0, 1, and 2 are included in the I picture, the P picture, and the B picture.
  • the picture type of the pixel of interest is converted into an information code according to the assignment.
  • step S53 the class classification unit 23 generates a class code representing the class of the pixel of interest from the image feature quantity and the information code, supplies the class code to the coefficient acquisition unit 24, and ends the class classification in step S43.
  • the class classification unit 23 uses the numerical value obtained by adding the information code to the upper bits of the ADRC code as the image feature amount, and represents the class of the pixel of interest. Generate as code.
  • step S43 When the class classification in step S43 ends, the process proceeds to step S44, and the coefficient acquisition unit 24 acquires the tap coefficient of the class represented by the class code supplied from the class classification unit 23 and supplies the tap coefficient to the prediction calculation unit 25. Then, the process proceeds to step S45.
  • step S45 the prediction calculation unit 25 performs a prediction calculation using the prediction tap from the tap selection unit 21 and the tap coefficient from the coefficient acquisition unit 24 (1). Thereby, the prediction calculation unit 25 obtains the predicted value of the pixel value of the corresponding pixel of the original image corresponding to the target pixel as the pixel value of the filtered image, and the process proceeds to step S46.
  • step S46 the tap selection unit 21 determines whether there is a pixel that is not yet a pixel of interest among the pixels of the decoding intermediate image (as a block) from the calculation unit 110. If it is determined in step S46 that there is still a pixel that is not the target pixel, the process returns to step S41, and the same process is repeated thereafter.
  • step S46 If it is determined in step S46 that there is no pixel that has not yet been set as the pixel of interest, the process proceeds to step S47, and the prediction calculation unit 25 decodes the decoding intermediate image (as a block) from the calculation unit 110. Is supplied to the frame memory 112 (FIG. 9). Then, the class classification adaptation process is terminated, and the process returns.
  • FIG. 16 is a block diagram illustrating a first configuration example of the decoding device 12 of FIG.
  • the decoding device 12 includes an accumulation buffer 201, a lossless decoding unit 202, an inverse quantization unit 203, an inverse orthogonal transform unit 204, a calculation unit 205, a class classification adaptive filter 206, a rearrangement buffer 207, and a D / A.
  • a conversion unit 208 is included.
  • the decoding device 12 includes a frame memory 210, a selection unit 211, an intra prediction unit 212, a motion prediction compensation unit 213, and a selection unit 214.
  • the accumulation buffer 201 temporarily accumulates the encoded data transmitted from the encoding device 11 and supplies the encoded data to the lossless decoding unit 202 at a predetermined timing.
  • the lossless decoding unit 202 acquires encoded data from the accumulation buffer 201. Therefore, the lossless decoding unit 202 functions as a receiving unit that receives the encoded data transmitted from the encoding device 11, and thus the encoded information and filter information included in the encoded data.
  • the lossless decoding unit 202 decodes the encoded data acquired from the accumulation buffer 201 by a method corresponding to the encoding method of the lossless encoding unit 106 in FIG.
  • the lossless decoding unit 202 supplies the quantization coefficient obtained by decoding the encoded data to the inverse quantization unit 203.
  • the lossless decoding unit 202 obtains necessary encoding information from the intra prediction unit 212, the motion prediction compensation unit 213, and other necessary information when the encoded information and filter information are obtained by decoding the encoded data. Supply to block.
  • the lossless decoding unit 202 supplies the encoded information and the filter information to the class classification adaptive filter 206.
  • the inverse quantization unit 203 inversely quantizes the quantization coefficient from the lossless decoding unit 202 by a method corresponding to the quantization method of the quantization unit 105 in FIG. 9, and inversely converts the transform coefficient obtained by the inverse quantization. This is supplied to the orthogonal transform unit 204.
  • the inverse orthogonal transform unit 204 performs inverse orthogonal transform on the transform coefficient supplied from the inverse quantization unit 203 by a method corresponding to the orthogonal transform method of the orthogonal transform unit 104 in FIG. 9, and calculates the residual obtained as a result. To the unit 205.
  • the calculation unit 205 is also supplied with a predicted image from the intra prediction unit 212 or the motion prediction compensation unit 213 via the selection unit 214.
  • the calculation unit 205 adds the residual from the inverse orthogonal transform unit 204 and the predicted image from the selection unit 214 to generate a decoding intermediate image, and performs the class classification adaptive filter 206 or the rearrangement buffer 207 and the frame. Supply to the memory 210.
  • a decoding intermediate image that is a reference image used for intra prediction among the decoding intermediate images is supplied to the rearrangement buffer 207 and the frame memory 210, and the other decoding intermediate images are supplied to the class classification adaptive filter 206. .
  • the class classification adaptive filter 206 is a filter that functions as an ILF, that is, all of DF, SAO, and ALF, by the class classification adaptive process. ) Process.
  • the class classification adaptive filter 206 uses the classifying adaptive processing (by image conversion by the class-dependent adaptive coefficient using the tap coefficient for each class as the filter information from the lossless decoding unit 202, with the decoding intermediate image from the arithmetic unit 205 as the first image. ) Is performed using the encoded information from the lossless decoding unit 202 as necessary, so that the halfway decoded image as the first image is converted into the filtered image as the second image corresponding to the original image. (Output a filtered image) and output.
  • the filtered image output from the class classification adaptive filter 206 is the same image as the filtered image output from the class classification adaptive filter 111, and is supplied to the rearrangement buffer 207 and the frame memory 210.
  • the rearrangement buffer 207 temporarily stores the decoded image supplied from the arithmetic unit 205 and the filtered image supplied from the class classification adaptive filter 206 as a decoded image, and the arrangement of frames (pictures) of the decoded image
  • the data is rearranged from the encoding (decoding) order to the display order and supplied to the D / A converter 208.
  • the D / A converter 208 D / A converts the decoded image supplied from the rearrangement buffer 207, and outputs and displays it on a display (not shown).
  • the frame memory 210 temporarily stores the decoded image supplied from the calculation unit 205 and the filtered image supplied from the class classification adaptive filter 206 as a decoded image. Further, the frame memory 210 selects the decoded image as a reference image used for generating a predicted image at a predetermined timing or based on an external request such as the intra prediction unit 212 or the motion prediction / compensation unit 213. To supply.
  • the selection unit 211 selects a supply destination of the reference image supplied from the frame memory 210.
  • the selection unit 211 supplies the reference image supplied from the frame memory 210 to the intra prediction unit 212 when decoding an intra-coded image.
  • the selection unit 211 supplies the reference image supplied from the frame memory 210 to the motion prediction / compensation unit 213 when decoding an inter-encoded image.
  • the intra prediction unit 212 is the intra prediction mode used in the intra prediction unit 114 of FIG. 9 according to the prediction mode included in the encoded information supplied from the lossless decoding unit 202, and is transmitted from the frame memory 210 via the selection unit 211. Intra prediction is performed using the supplied reference image. Then, the intra prediction unit 212 supplies a prediction image obtained by the intra prediction to the selection unit 214.
  • the motion prediction / compensation unit 213 moves the selection unit 211 from the frame memory 210 in the inter prediction mode used in the motion prediction / compensation unit 115 of FIG. 9 according to the prediction mode included in the encoded information supplied from the lossless decoding unit 202. Inter prediction is performed using a reference image supplied through the network. The inter prediction is performed using the motion information included in the encoded information supplied from the lossless decoding unit 202 as necessary.
  • the motion prediction / compensation unit 213 supplies a prediction image obtained by inter prediction to the selection unit 214.
  • the selection unit 214 selects a prediction image supplied from the intra prediction unit 212 or a prediction image supplied from the motion prediction / compensation unit 213 and supplies the selected prediction image to the calculation unit 205.
  • FIG. 17 is a block diagram illustrating a configuration example of the class classification adaptive filter 206 of FIG.
  • the class classification adaptive filter 206 includes an image conversion device 231.
  • the image conversion device 231 is supplied with the decoding intermediate image from the arithmetic unit 205 (FIG. 16), and is supplied with tap coefficients and encoding information for each class as filter information from the lossless decoding unit 202.
  • the image conversion device 231 performs the image conversion by the class classification adaptive process using the tap coefficient for each class, with the decoding-in-progress image as the first image.
  • An intermediate decoding image as an image is converted into a filtered image as a second image corresponding to the original image (a filtered image is generated) and supplied to the rearrangement buffer 207 and the frame memory 210 (FIG. 16). To do.
  • the image conversion apparatus 231 performs class classification using encoded information as necessary, as with the image conversion apparatus 131 in FIG.
  • FIG. 18 is a block diagram illustrating a configuration example of the image conversion apparatus 231 in FIG.
  • the image conversion apparatus 231 includes tap selection units 241 and 242, a class classification unit 243, a coefficient acquisition unit 244, and a prediction calculation unit 245.
  • the tap selection unit 241 to the prediction calculation unit 245 are configured in the same manner as the tap selection unit 21 to the prediction calculation unit 25 constituting the image conversion device 131 (FIG. 11).
  • the decoding intermediate images are supplied to the tap selection units 241 and 242 from the calculation unit 205 (FIG. 16).
  • the tap selection unit 241 selects, as the first image, the decoding intermediate image from the arithmetic unit 205, and sequentially selects the pixels of the decoding intermediate image as the target pixel.
  • the tap selection unit 241 selects a prediction tap having the same structure as the prediction tap selected by the tap selection unit 21 in FIG. 11 from the decoding intermediate image for the target pixel, and supplies the prediction tap to the prediction calculation unit 245.
  • the tap selection unit 242 sets the class of the same structure as the class tap selected by the tap selection unit 22 in FIG. The tap is selected and supplied to the class classification unit 243.
  • the class classification unit 243 is supplied with class information from the tap selection unit 242 and also with encoded information from the lossless decoding unit 202 (FIG. 16).
  • the class classification unit 243 performs the same class classification as the class classification unit 23 of FIG. 11 using the class tap from the tap selection unit 242 and the encoding information from the lossless decoding unit 202, and the class of the target pixel ( ) Is supplied to the coefficient acquisition unit 244.
  • the coefficient acquisition unit 244 is supplied with the class of the pixel of interest from the class classification unit 243 and the tap coefficient for each class as filter information from the lossless decoding unit 202.
  • the coefficient acquisition unit 244 updates the stored tap coefficient from the lossless decoding unit 202 to the tap coefficient.
  • the coefficient acquisition unit 244 acquires the tap coefficient of the class of the pixel of interest from the class classification unit 243 from the stored tap coefficients, and supplies it to the prediction calculation unit 245.
  • the prediction calculation unit 245 performs the prediction calculation of Expression (1) using the prediction tap from the tap selection unit 241 and the tap coefficient from the coefficient acquisition unit 244, and performs the original image corresponding to the target pixel of the image being decoded
  • the predicted value of the pixel value of the corresponding pixel is obtained and output as the pixel value of the pixel of the filtered image as the second image.
  • FIG. 19 is a flowchart for explaining an example of the decoding process of the decoding device 12 of FIG.
  • step S61 the accumulation buffer 201 temporarily accumulates the encoded data transmitted from the encoding device 11, supplies it to the lossless decoding unit 202 as appropriate, and the process proceeds to step S62.
  • step S62 the lossless decoding unit 202 receives and decodes the encoded data supplied from the accumulation buffer 201, and supplies the quantization coefficient obtained by the decoding to the inverse quantization unit 203.
  • the lossless decoding unit 202 when encoding information and filter information are obtained by decoding the encoded data, converts the necessary encoding information into the intra prediction unit 212, the motion prediction compensation unit 213, and other necessary blocks. Supply.
  • the lossless decoding unit 202 supplies the encoded information and the filter information to the class classification adaptive filter 206.
  • step S62 the process proceeds from step S62 to step S63, and the class classification adaptive filter 206 determines whether or not the filter information is supplied from the lossless decoding unit 202.
  • step S63 If it is determined in step S63 that the filter information is not supplied, the process skips step S64 and proceeds to step S65.
  • step S63 If it is determined in step S63 that the filter information has been supplied, the process proceeds to step S64, and the image conversion device 231 (FIG. 18) of the class classification adaptive filter 206 sends the coefficient acquisition unit 244 to the lossless decoding unit.
  • the tap coefficient for each class as the filter information from 202 is acquired, and the stored tap coefficient is updated to the tap coefficient from the lossless decoding unit 202.
  • step S64 the process proceeds from step S64 to step S65, and the inverse quantization unit 203 inversely quantizes the quantization coefficient from the lossless decoding unit 202, and supplies the transform coefficient obtained as a result to the inverse orthogonal transform unit 204. Then, the process proceeds to step S66.
  • step S66 the inverse orthogonal transform unit 204 performs inverse orthogonal transform on the transform coefficient from the inverse quantization unit 203, supplies the residual obtained as a result to the calculation unit 205, and the process proceeds to step S67.
  • step S67 the intra prediction unit 212 or the motion prediction / compensation unit 213 uses the reference image supplied from the frame memory 210 via the selection unit 211 and the encoded information supplied from the lossless decoding unit 202 to perform prediction. A prediction process for generating an image is performed. Then, the intra prediction unit 212 or the motion prediction / compensation unit 213 supplies the prediction image obtained by the prediction process to the selection unit 214, and the process proceeds from step S67 to step S68.
  • step S68 the selection unit 214 selects a prediction image supplied from the intra prediction unit 212 or the motion prediction / compensation unit 213, supplies the prediction image to the calculation unit 205, and the process proceeds to step S69.
  • step S69 the calculation unit 205 adds the residual from the inverse orthogonal transform unit 204 and the predicted image from the selection unit 214 to generate a decoding intermediate image. Then, the arithmetic unit 205 supplies the decoding-in-progress image to the class classification adaptive filter 206 or the rearrangement buffer 207 and the frame memory 210, and the processing proceeds from step S69 to step S70.
  • the class classification adaptive filter 206 applies the class classification adaptive processing as the ILF processing to the decoding intermediate image from the arithmetic unit 205. Apply.
  • the class classification adaptive filter 206 By performing the class classification adaptive process on the decoding-in-progress image, a filtered image closer to the original image than in the case of filtering the decoding-in-progress image with ILF is obtained, as in the case of the encoding device 11.
  • the class classification adaptive filter 206 supplies the filtered image obtained by the class classification adaptation process to the rearrangement buffer 207 and the frame memory 210, and the process proceeds from step S70 to step S71.
  • step S71 the rearrangement buffer 207 temporarily stores the decoded image supplied from the calculation unit 205 or the filtered image supplied from the class classification adaptive filter 206 as a decoded image. Further, the rearrangement buffer 207 rearranges the stored decoded images in the display order and supplies the rearranged decoded images to the D / A conversion unit 208, and the process proceeds from step S71 to step S72.
  • step S72 the D / A converter 208 D / A converts the decoded image from the rearrangement buffer 207, and the process proceeds to step S73.
  • the decoded image after D / A conversion is output and displayed on a display (not shown).
  • the frame memory 210 stores the decoded image supplied from the calculation unit 205 or the filtered image supplied from the class classification adaptive filter 206 as a decoded image, and the decoding process ends.
  • the decoded image stored in the frame memory 210 is used as a reference image from which a predicted image is generated in the prediction process in step S67.
  • FIG. 20 is a flowchart for explaining an example of the class classification adaptation process performed in step S70 of FIG.
  • step S ⁇ b> 81 the tap selection unit 241 is still interested in the pixels of the decoding intermediate image (as a block) supplied from the calculation unit 205.
  • One of the pixels not selected as a pixel is selected as a target pixel, and the process proceeds to step S82.
  • step S82 the tap selection units 241 and 242 select, from the decoding intermediate image supplied from the calculation unit 205, a pixel that is a prediction tap and a class tap for the target pixel, respectively. Then, the tap selection unit 241 supplies the prediction tap to the prediction calculation unit 245, and the tap selection unit 242 supplies the class tap to the class classification unit 243.
  • step S82 the process proceeds from step S82 to step S83, and the class classification unit 243 encodes the class tap for the target pixel supplied from the tap selection unit 242 and the target pixel supplied from the lossless decoding unit 202. Similar to the case described with reference to FIG. 15, the pixel classification of the target pixel is performed using the information.
  • the class classification unit 243 generates a class code representing the class of the target pixel obtained by the class classification, supplies the class code to the coefficient acquisition unit 244, and the process proceeds from step S83 to step S84.
  • step S84 the coefficient acquisition unit 244 acquires the tap coefficient of the class represented by the class code supplied from the class classification unit 243, supplies the tap coefficient to the prediction calculation unit 245, and the process proceeds to step S85.
  • step S85 the prediction calculation unit 245 performs the equation (1) prediction calculation using the prediction tap from the tap selection unit 241 and the tap coefficient from the coefficient acquisition unit 244. Thereby, the prediction calculation unit 245 obtains the predicted value of the pixel value of the corresponding pixel of the original image corresponding to the target pixel as the pixel value of the filtered image, and the process proceeds to step S86.
  • step S86 the tap selection unit 241 determines whether there is a pixel that is not yet a pixel of interest among the pixels of the decoding intermediate image (as a block) from the calculation unit 205. If it is determined in step S86 that there is still a pixel that is not the target pixel, the process returns to step S81, and the same process is repeated thereafter.
  • step S86 If it is determined in step S86 that there is no pixel that has not yet been set as the pixel of interest, the process proceeds to step S87, and the prediction calculation unit 245 receives the decoding intermediate image from the calculation unit 205 (as a block).
  • the filtered image composed of the pixel values obtained for is supplied to the rearrangement buffer 207 and the frame memory 210 (FIG. 9). Then, the class classification adaptation process is terminated, and the process returns.
  • the encoding device 11 and the decoding device 12 perform the ILF processing by the class classification adaptive processing, a filtered image closer to the original image than the processing result of the ILF can be obtained. As a result, the S / N of the decoded image can be greatly improved. Furthermore, since a filtered image close to the original image can be obtained, the residual becomes small, and even if the tap coefficient is included in the encoded data as overhead, in particular, a high-resolution image with a large amount of data called 4k, 8k, etc. For the original image, the compression efficiency can be greatly improved.
  • examples of ILF include DF, SAO, and ALF.
  • DF reduces block noise (distortion) by controlling the filter strength depending on the quantization parameter QP and whether it is a pixel at the block boundary.
  • DF there are only two types of filter strength that can be applied to blocks. Furthermore, in DF, the unit of filter strength control is a slice, and the filter strength cannot be controlled for each pixel.
  • the filter mode for reducing noise around the edge or performing DC correction is switched for each CTU, and the offset value is determined for each pixel to reduce ringing and DC correction. .
  • the ALF class ifies into 15 classes using the edge direction and activity, and performs filter processing with the filter coefficient that is statistically optimized for each class.
  • ALF since the unit of filter processing is a 4 ⁇ 4 pixel unit, fine filter strength control according to the waveform pattern and block phase around the pixel cannot be performed for each pixel. Furthermore, in ALF, since the number of classes to be classified is as small as 15 classes, fine filter strength control cannot be performed from this point.
  • class classification adaptive processing for each pixel, class classification is performed for the number of classes larger than 15 classes of ALF, and a statistically optimal tap coefficient obtained by learning is used to decode the intermediate image. Therefore, the image quality (S / N) can be greatly improved over the existing ILF.
  • an ADRC code as an image feature amount representing a waveform pattern around the pixel, an image feature amount such as a dynamic range, a quantization parameter QP, a picture type, a block
  • an image very close to the original image can be obtained as a filtered image.
  • the S / N and compression efficiency of the image can be greatly improved as compared with the case where ILF is used as well as the case where ILF is not used.
  • FIG. 21 is a diagram for explaining the difference in class classification and filtering between the class classification adaptation process and the ALF of the ILF.
  • ALF a small block of 4x4 pixels is classified into one of 15 classes using edge direction and activity.
  • a small block of 4 ⁇ 4 pixels is filtered using a filter coefficient of the class of the small block of 4 ⁇ 4 pixels.
  • point-symmetric filter coefficients are used around the filter coefficient for the target pixel to be filtered.
  • the filter coefficient of the ALF filter processing is the target pixel, the two pixels adjacent to the left of the target pixel, the two pixels adjacent to the right of the target image, the two pixels adjacent above the target pixel, and adjacent below the target pixel.
  • the filter coefficient for the farther pixel of the two pixels adjacent above the target pixel and the filter coefficient for the farther pixel of the two pixels adjacent below the target pixel are the same coefficient C0. Is done.
  • the filter coefficient for the pixel adjacent to the upper left of the target pixel and the filter coefficient for the pixel adjacent to the lower right of the target image are the same coefficient C1.
  • the filter coefficient for the closest pixel of the two pixels adjacent above the target pixel and the filter coefficient for the closest pixel of the two pixels adjacent below the target pixel are the same coefficient C2. .
  • the filter coefficient for the pixel adjacent to the lower left of the target pixel and the filter coefficient for the pixel adjacent to the upper right of the target image are the same coefficient C3.
  • the filter coefficient for the distant pixel of the two pixels adjacent to the left of the target pixel and the filter coefficient for the distant pixel of the two pixels adjacent to the right of the target pixel are the same coefficient C4. .
  • the filter coefficient for the closer pixel of the two pixels adjacent to the left of the target pixel and the filter coefficient for the closer pixel of the two pixels adjacent to the right of the target pixel are the same coefficient C5. .
  • the filter coefficient for the target pixel is the coefficient C6.
  • the same filter coefficient is used for filter processing of a small block of 4 ⁇ 4 pixels, and therefore the same (average) filter processing effect is produced for all of the 4 ⁇ 4 pixels.
  • the class classification is performed for each pixel, and therefore the prediction calculation of Expression (1) as the filter process is also performed for each pixel.
  • the waveform pattern around the pixel of interest and the pixel of interest in the block using the image feature amount obtained from the class tap and the encoding information are not limited by the edge direction and activity.
  • the pixel of interest can be classified according to the position.
  • the number of classes in the class classification depends on the number of tap coefficient data and the decoded image (decoded image) depending on the number of pixels to be used as class taps and the method of converting encoded information used for class classification into an information code (FIG. 15). It can be designed to an arbitrary number in consideration of the S / N of the image after filtering) and the compression efficiency.
  • the class tap is configured with 8 pixels and classifying is performed with an ADRC code representing a waveform pattern obtained by 1-bit ADRC processing for the sake of simplicity, the number of classes is 256.
  • the number of tap coefficients that is, the number of pixels constituting the prediction tap, the prediction, considering the data amount of the tap coefficient, the S / N of the decoded image, and the compression efficiency.
  • the structure of the tap can be designed.
  • a prediction tap can be configured not only for the frame of the target pixel but also for the pixels of the frames before and after that frame.
  • the classification calculation and the prediction calculation of Expression (1) as the filter processing are performed, so that the effect of the filter processing suitable for the pixel is obtained for each pixel. Can be generated.
  • NR Noise Reduction
  • class classification adaptive processing for example, by performing class classification using encoding information such as block phase, it is possible to adjust the effect of NR depending on whether the target pixel is a pixel at the block boundary or not. it can.
  • the classification adaptation process for example, not only the frame of the pixel of interest but also the pixels of the frames before and after the frame are configured to form prediction taps, thereby reducing image quality degradation caused by motion such as motion blur. Can be improved.
  • FIG. 22 is a diagram for explaining a difference in effect caused by a difference in the class classification adaptive process, the class classification of the ILF with the ALF, and the filter process.
  • classification is performed using edges and activities, and each pixel of the 4 ⁇ 4 pixel small block using the filter coefficient of the class obtained by the class classification.
  • the filtering process is performed.
  • edge part and the flat part coexist, while removing the noise of the flat part, the edge part is dulled (details are crushed), and conversely, the edge part is maintained, but the flat part Noise may not be removed sufficiently.
  • ALF does not perform class classification considering the pixel position (block phase) in the coding block (PU, CU, etc.) subject to coding processing (decoding processing).
  • the filter coefficient for removing the block distortion generated in the other pixels and the filter coefficient for removing the noise other than the block distortion generated in the pixel at a position other than the boundary are not prepared as filter coefficients of different classes.
  • a filter process appropriate for removing the block distortion is not always applied to the pixel in which the block distortion occurs.
  • an appropriate filter process is not necessarily performed on a pixel in which noise other than block distortion occurs to remove the noise.
  • class classification is performed by a waveform pattern as an image feature amount obtained from the class tap, and filter processing is performed using the tap coefficient of the class obtained by the class classification.
  • the prediction calculation of Equation (1) can be performed for each pixel.
  • the edge portion of the pixel of the edge portion is maintained (leaving detail), and the noise of the pixel of the flat portion can be sufficiently removed.
  • class classification is performed for each pixel based on the block phase as encoding information, and the prediction calculation of Expression (1) as filter processing is performed using the tap coefficient of the class obtained by the class classification. Can be performed for each pixel.
  • the filter processing appropriate for removing the block distortion is performed on the pixel in which the block distortion occurs, and the filter processing appropriate for removing the noise in the pixel generating noise other than the block distortion is performed. Can be applied.
  • the class classification adaptation process is performed on a decoding intermediate image handled in the encoding device 11 and the decoding device 12, so that it is necessary to specify the block phase and further the block phase.
  • Information about the encoded block (for example, the size of the encoded block, the boundary of the encoded block, etc.) can be obtained in the encoding process and the decoding process.
  • Japanese Patent No. 4770711 describes a technique for improving the image quality of a decoded image output from an MPEG decoder by class classification adaptive processing using a block phase.
  • classification adaptation processing for the decoded image output from the MPEG decoder is performed outside the MPEG decoder, information on the coding block is decided or Need to be detected in some way.
  • FIG. 23 is a diagram for explaining a difference between a prediction tap and a class tap of the class classification adaptive processing, and a pixel with respect to an ALF filter coefficient in the ILF.
  • the 13 filter coefficients of ALF are filter coefficients for the pixel in the target frame, which is one frame that is currently being encoded, and there are no filter coefficients for the pixels of other frames.
  • the ALF filter processing is performed using only the pixel (the pixel value) in the frame of interest, it is difficult to improve the deterioration of the image quality due to the motion such as motion blur.
  • the prediction tap and the class tap include pixels in the frame of interest (frame T in FIG. 23) and other frames (frame T-1 and frame T + 1 in FIG. 23). Pixels can be included.
  • the pixels in the adjacent frame adjacent to the target frame at the position moved by the motion vector from the target pixel in the target frame, the pixels around the pixel, and the like are included in the prediction tap and the class tap. be able to.
  • a class tap or a prediction tap is formed from the pixel of the target frame and the pixel of the adjacent frame, and the prediction calculation of the formula (1) as the class classification or the filter process is performed. Therefore, it is possible to improve the deterioration of image quality due to movement such as motion blur.
  • FIG. 24 is a diagram illustrating an example of a reduction method for reducing the tap coefficient obtained by learning.
  • the tap coefficient is an overhead of the encoded data, even if a tap coefficient is obtained in which the filtered image becomes an image very close to the original image, if the amount of tap coefficient data is large, improvement in compression efficiency is hindered. .
  • the data amount of the tap coefficients is reduced by half compared to the case where the ADRC code of the 9-pixel class tap (1-bit ADRC processing) is used as the class code as it is.
  • classes that have the same ADRC result for pixels that are line-symmetrical in the vertical, horizontal, or diagonal directions are combined into one class.
  • the number of classes can be reduced to 100 classes.
  • the data amount of 100-class tap coefficients is about 39% of the data amount of 256-class tap coefficients.
  • the classes that have the same ADRC result for pixels in a point-symmetrical positional relationship should be reduced to a single class.
  • the number of classes can be 55 classes.
  • the data amount of the 55 class tap coefficient is approximately 21% of the data amount of the 256 class tap coefficient.
  • the tap coefficient can be reduced by reducing the tap coefficient itself as well as by reducing the class.
  • the tap coefficient itself can be reduced based on the block phase.
  • the prediction tap and the coding block are composed of 4 ⁇ 4 pixels, the upper right 2 ⁇ 2 pixels that are line symmetrical with the upper left 2 ⁇ 2 pixels and the upper and lower sides of the prediction tap, and the upper and lower The position of the tap coefficients of the 2x2 pixels at the upper left as the tap coefficients of the lower left 2x2 pixels that are line-symmetrical in the direction and the lower right 2x2 pixels that are point-symmetrical. It is possible to employ tap coefficients rearranged in accordance with. In this case, 16 tap coefficients for the 4 ⁇ 4 pixels constituting the prediction tap can be reduced to 4 tap coefficients for the upper left 2 ⁇ 2 pixels.
  • the tap coefficients of the upper half 4 ⁇ 2 pixels are in the positional relationship as the tap coefficients of the lower half 4 ⁇ 2 pixels that are line-symmetrical with the upper half 4 ⁇ 2 pixels in the vertical direction.
  • the tap coefficients rearranged accordingly can be employed. In this case, 16 tap coefficients for the 4 ⁇ 4 pixels constituting the prediction tap can be reduced to 8 tap coefficients for the upper half 4 ⁇ 2 pixels.
  • the tap coefficient is reduced by adopting the same tap coefficient as the tap coefficient of pixels that are line-symmetrical in the horizontal direction of the prediction tap and pixels that are line-symmetrical in the diagonal direction. can do.
  • the tap coefficient reduction based on the block phase is, for example, by analyzing the waveform pattern of the pixels constituting the prediction tap by the ADRC code used for class classification, and when the waveform pattern has spatial symmetry, The same tap coefficient can be adopted for pixels as prediction taps that are in a positional relationship with symmetry.
  • the class tap is composed of 2 ⁇ 2 pixels, and the ADRC code in which the ADRC results of the pixels of the class tap are arranged in the raster scan order is 1001, there is point symmetry.
  • the same tap coefficient can be adopted as a tap coefficient between pixels as prediction taps having a point-symmetrical positional relationship.
  • FIG. 25 is a block diagram illustrating a second configuration example of the encoding device 11 of FIG.
  • the encoding device 11 includes an A / D conversion unit 101 through an arithmetic unit 110, a frame memory 112 through a rate control unit 117, a class classification adaptive filter 261, an adaptive offset unit 262, and an adaptive loop filter 263.
  • the encoding device 11 of FIG. 25 is common to the case of FIG. 9 in that it includes the A / D conversion unit 101 to the calculation unit 110 and the frame memory 112 to the rate control unit 117.
  • the encoding device 11 of FIG. 25 has a class classification adaptive filter 261 instead of the class classification adaptive filter 111 and a point that the adaptive offset unit 262 and the adaptive loop filter 263 are newly provided. It is different from the case.
  • the class classification adaptive filter 261 is configured in the same manner as the class classification adaptive filter 111 of FIG. However, the class classification adaptive filter 261 is a class classification adaptation function that functions as an ILF as a whole, because it is a filter that functions only as a DF, not as a whole of ILF, that is, DF, SAO, and ALF, by class classification adaptation processing. Different from the filter 111.
  • the class classification adaptive filter 261 is supplied with the decoding intermediate image from the calculation unit 110.
  • the class classification adaptive filter 261 performs DF processing by class classification adaptive processing on the decoding intermediate image from the arithmetic unit 110, and supplies the filtered image obtained as a result to the adaptive offset unit 262.
  • the adaptive offset unit 262 performs SAO processing on the filtered image from the class classification adaptive filter 261 and supplies the processed image to the adaptive loop filter 263.
  • the adaptive loop filter 263 performs ALF processing on the filtered image from the adaptive offset unit 262 and supplies the processed image to the frame memory 112.
  • the class classification adaptive filter 261 performs DF processing of ILF by class classification adaptive processing.
  • the adaptive offset unit 262 performs SAO processing, and the adaptive loop filter 263 performs ALF processing.
  • SAO information necessary for SAO processing is supplied to the lossless encoding unit 106 and included in the encoded data.
  • the encoding apparatus 11 in FIG. 25 performs the same processing as in FIG.
  • FIG. 26 is a block diagram illustrating a second configuration example of the decoding device 12 of FIG.
  • the decoding device 12 includes a storage buffer 201 through a calculation unit 205, a rearrangement buffer 207, a D / A conversion unit 208, a frame memory 210 through a selection unit 214, a class classification adaptive filter 271, an adaptive offset unit 272, and An adaptive loop filter 273 is included.
  • the decoding device 12 of FIG. 26 is common to the case of FIG. 16 in that it includes a storage buffer 201 through a calculation unit 205, a rearrangement buffer 207, a D / A conversion unit 208, and a frame memory 210 through a selection unit 214. To do.
  • the decoding device 12 of FIG. 26 has a class classification adaptive filter 271 instead of the class classification adaptive filter 206, and a new point of having an adaptive offset unit 272 and an adaptive loop filter 273 in the case of FIG. Is different.
  • the class classification adaptive filter 271 is configured in the same manner as the class classification adaptive filter 206 of FIG. However, the class classification adaptation filter 271 is a class classification adaptation function that functions as an ILF as a whole, because it is a filter that functions only as a DF, not as a whole of ILF, that is, DF, SAO, and ALF, by class classification adaptation processing. Different from the filter 206.
  • the class classification adaptive filter 271 is supplied with the decoding intermediate image from the calculation unit 205.
  • the class classification adaptive filter 271 performs the DF processing by the class classification adaptive process on the decoding-in-progress image from the arithmetic unit 205, and supplies the filtered image obtained as a result to the adaptive offset unit 272.
  • the adaptive offset unit 272 performs SAO processing on the filtered image from the class classification adaptive filter 271 and supplies it to the adaptive loop filter 273.
  • the adaptive loop filter 273 performs ALF processing on the filtered image from the adaptive offset unit 272 and supplies the processed image to the rearrangement buffer 207 and the frame memory 210.
  • the class classification adaptive filter 271 performs DF processing of ILF by class classification adaptive processing. Then, the adaptive offset unit 272 performs SAO processing, and the adaptive loop filter 273 performs ALF processing.
  • SAO information included in the encoded data is supplied from the lossless decoding unit 202 to the adaptive offset unit 272.
  • the adaptive offset unit 272 performs SAO processing using the SAO information from the lossless decoding unit 202.
  • the decoding device 12 in FIG. 26 performs the same processing as in FIG.
  • FIG. 27 is a block diagram showing a third configuration example of the encoding device 11 of FIG.
  • the encoding device 11 includes an A / D conversion unit 101 through a calculation unit 110, a frame memory 112 through a rate control unit 117, an adaptive loop filter 263, a deblock filter 281 and a class classification adaptive filter 282.
  • the encoding device 11 of FIG. 27 is common to the case of FIG. 9 in that it includes the A / D conversion unit 101 to the calculation unit 110 and the frame memory 112 to the rate control unit 117.
  • the encoding device 11 of FIG. 27 has a class classification adaptive filter 282 instead of the class classification adaptive filter 111, and a new adaptive loop filter 263 of FIG. 25, and a new deblocking filter 281. 9 is different from the case of FIG.
  • the deblocking filter 281 is supplied with the decoding intermediate image from the calculation unit 110.
  • the deblocking filter 281 performs DF processing on the halfway decoded image from the calculation unit 110 and supplies the processed image to the class classification adaptive filter 282.
  • the class classification adaptive filter 282 is configured in the same manner as the class classification adaptive filter 111 of FIG. However, the class classification adaptation filter 282 is a class classification adaptation function that functions as an ILF as a whole, because it is a filter that functions as an ILF, that is, only SAO, not all of DF, SAO, and ALF. Different from the filter 111.
  • the class classification adaptive filter 282 performs SAO processing by the class classification adaptive process on the decoding intermediate image from the deblocking filter 281, and supplies the filtered image obtained as a result to the adaptive loop filter 263.
  • the deblocking filter 281 performs DF processing. Further, the class classification adaptive filter 282 performs SAO processing of the ILF by class classification adaptive processing. Then, the adaptive loop filter 263 performs ALF processing.
  • the encoding apparatus 11 in FIG. 27 performs the same processing as in FIG.
  • FIG. 28 is a block diagram showing a third configuration example of the decoding device 12 of FIG.
  • the decoding device 12 includes a storage buffer 201 through a calculation unit 205, a rearrangement buffer 207, a D / A conversion unit 208, a frame memory 210 through a selection unit 214, an adaptive loop filter 273, a deblock filter 291, and a class A classification adaptive filter 292 is included.
  • the decoding device 12 of FIG. 28 is common to the case of FIG. 16 in that it includes a storage buffer 201 through a calculation unit 205, a rearrangement buffer 207, a D / A conversion unit 208, and a frame memory 210 through a selection unit 214. To do.
  • the decoding device 12 of FIG. 28 has a class classification adaptive filter 292 instead of the class classification adaptive filter 206, a new adaptive loop filter 273 of FIG. 26, and a new deblocking filter 291. This is different from the case of FIG.
  • the deblocking filter 291 is supplied with the decoding intermediate image from the calculation unit 205.
  • the deblocking filter 291 performs DF processing on the halfway decoded image from the arithmetic unit 205 and supplies the processed image to the class classification adaptive filter 291.
  • the class classification adaptive filter 292 is configured similarly to the class classification adaptive filter 206 of FIG. However, the class classification adaptive filter 292 is a class classification adaptation function that functions as an ILF as a whole, because it is a filter that functions as an ILF, that is, only SAO, not all of DF, SAO, and ALF by class classification adaptation processing. Different from the filter 206.
  • the class classification adaptive filter 292 performs SAO processing by the class classification adaptive process on the decoding-in-progress image from the deblocking filter 291, and supplies the filtered image obtained as a result to the adaptive loop filter 273.
  • the deblocking filter 291 performs DF processing. Further, the class classification adaptive filter 292 performs SAO processing of the ILF by class classification adaptive processing. Then, the adaptive loop filter 273 performs ALF processing.
  • the decoding device 12 in FIG. 28 performs the same processing as in FIG.
  • FIG. 29 is a block diagram showing a fourth configuration example of the encoding device 11 of FIG.
  • the encoding device 11 includes an A / D conversion unit 101 to a calculation unit 110, a frame memory 112 to a rate control unit 117, an adaptive offset unit 262, a deblock filter 281 and a class classification adaptive filter 311.
  • the encoding device 11 of FIG. 29 is common to the case of FIG. 9 in that it includes the A / D conversion unit 101 to the calculation unit 110 and the frame memory 112 to the rate control unit 117.
  • the encoding device 11 in FIG. 29 has a class classification adaptive filter 311 in place of the class classification adaptive filter 111 and a new adaptive offset unit 262 in FIG. 25 and a deblocking filter in FIG. It is different from the case of FIG. 9 in that 281 is newly provided.
  • the class classification adaptive filter 311 is supplied with the decoding intermediate image after the SAO processing from the adaptive offset unit 262.
  • the class classification adaptive filter 311 is configured similarly to the class classification adaptive filter 111 of FIG. However, the class classification adaptation filter 311 is a class classification adaptation function that functions as an ILF as a whole, because it is a filter that functions as an ALF only, not an DF, SAO, and ALF, by class classification adaptation processing. Different from the filter 111.
  • the class classification adaptive filter 311 performs the SAO processing by the class classification adaptive process on the decoding intermediate image from the adaptive offset unit 262, and supplies the filtered image obtained as a result to the frame memory 112.
  • DF processing is performed in the deblocking filter 281. Furthermore, the adaptive offset unit 262 performs SAO processing. Then, the class classification adaptive filter 311 performs ALF processing of ILF by class classification adaptive processing.
  • the adaptive offset unit 262 supplies the SAO information necessary for the SAO processing to the lossless encoding unit 106 and includes it in the encoded data as described with reference to FIG.
  • the encoding device 11 in FIG. 29 performs the same processing as in FIG.
  • FIG. 30 is a block diagram illustrating a fourth configuration example of the decoding device 12 of FIG.
  • the decoding device 12 includes a storage buffer 201 through a calculation unit 205, a rearrangement buffer 207, a D / A conversion unit 208, a frame memory 210 through a selection unit 214, an adaptive offset unit 272, a deblock filter 291 and a class.
  • a classification adaptive filter 321 is included.
  • the decoding device 12 of FIG. 30 is common to the case of FIG. 16 in that it includes a storage buffer 201 through a calculation unit 205, a rearrangement buffer 207, a D / A conversion unit 208, and a frame memory 210 through a selection unit 214. To do.
  • the decoding device 12 in FIG. 30 has a class classification adaptive filter 321 in place of the class classification adaptive filter 206 and a new adaptive offset unit 272 in FIG. 26 and a deblocking filter 291 in FIG. Is different from the case of FIG.
  • the class classification adaptive filter 321 is supplied from the adaptive offset unit 272 with the decoding intermediate image after the SAO processing.
  • the class classification adaptive filter 321 is configured in the same manner as the class classification adaptive filter 206 of FIG. However, the class classification adaptive filter 321 is a class classification adaptation function that functions as an ILF as a whole, because it is a filter that functions only as an ALF, not as a whole of the ILF, that is, DF, SAO, and ALF. Different from the filter 206.
  • the class classification adaptive filter 321 performs ALF processing by the class classification adaptive processing on the decoding intermediate image from the adaptive offset unit 272, and supplies the filtered image obtained as a result to the rearrangement buffer 297 and the frame memory 210.
  • the encoded data obtained by the encoding device 11 in FIG. 29 is decoded.
  • the deblocking filter 291 performs DF processing. Furthermore, the adaptive offset unit 272 performs SAO processing. Then, the class classification adaptive filter 321 performs ALF processing of ILF by class classification adaptive processing.
  • SAO information included in the encoded data is supplied from the lossless decoding unit 202 to the adaptive offset unit 272.
  • the adaptive offset unit 272 performs SAO processing using the SAO information from the lossless decoding unit 202.
  • the decoding device 12 in FIG. 30 performs the same processing as in FIG.
  • the function of the entire ILF can be realized, or the function of DF, SAO, or ALF in the ILF can be realized.
  • two or more functions of DF, SAO, and ALF can be realized.
  • one or more functions of DF, SAO, and ALF can be realized.
  • the computation cost is higher than when DF, SAO, and ALF are all provided as ILF. Can be reduced.
  • FIG. 31 is a diagram for explaining the outline of the additional class.
  • class classification is performed by using class taps (image feature amounts) obtained from the decoding intermediate image and encoding information included in the encoded data. Is done.
  • the classification is performed using the acquirable information that can be acquired by either the encoding device 11 or the decoding device 12.
  • a filtered image that is closer to the original image can be obtained by performing class classification using, for example, encoded information such as a target code amount that is not included in the encoded data, or information that is lost in encoding. It is possible that classification can be performed.
  • the original image, the encoded information that cannot be included in the encoded data, and the information that is lost in the encoding are unacquirable information that cannot be acquired on the decoding device 12 side.
  • the classification can be performed by the encoding device 11, but cannot be performed by the decoding device 12.
  • the decoding device 12 performs the class classification adaptive process using the additional class transmitted from the encoding device 11.
  • the encoding device 11 performs class classification using the class tap obtained from the decoding intermediate image and the obtainable information such as the encoding information included in the encoded data, and the normal as the first class of the pixel of interest Ask for a class.
  • the encoding device 11 performs class classification using information that cannot be acquired such as encoded information that is not included in the original image or encoded data, and obtains an additional class as the second class of the pixel of interest.
  • the encoding device 11 obtains the final class of the target pixel from the normal class and the additional class, and performs the correspondence of the post-filter image corresponding to the target pixel by the prediction calculation using the tap coefficient of the final class.
  • the pixel value of the pixel (predicted value of the pixel value of the pixel of the original image corresponding to the target pixel) is obtained.
  • the encoding device 11 transmits the additional class (representing class code) as filter information together with the tap coefficient.
  • the decoding device 12 performs class classification using the obtainable information, and obtains a normal class as the first class of the pixel of interest.
  • the decoding device 12 acquires the tap coefficient transmitted from the encoding device 11 and the additional class as the second class of the pixel of interest.
  • the decoding device 12 obtains the final class of the pixel of interest from the normal class and the additional class and performs the prediction calculation using the tap coefficient of the final class to determine the pixel of interest.
  • the pixel value of the corresponding pixel of the corresponding filtered image is obtained.
  • the pixel of interest is classified into a normal class represented by an 8-bit class code using a class tap obtained from a decoding intermediate image as obtainable information.
  • the encoding device 11 uses a predetermined unit such as a CU, a CTU, a slice, or the like that includes a corresponding pixel corresponding to the target pixel of the original image as unacquirable information, and the target pixel is a 2-bit target. It is classified into additional classes represented by class codes.
  • the encoding device 11 adds the class code representing the 2-bit additional class to the upper bits of the class code representing the 8-bit normal class, so that the class represented by the 10-bit class code is finalized. Is required as a basic class.
  • the pixel value of the corresponding pixel of the filtered image corresponding to the target pixel is obtained by the prediction calculation using the final class tap coefficient represented by the 10-bit class code.
  • the encoding device 11 transmits a final tap coefficient for each class represented by a 10-bit class code and a 2-bit additional class (represented by a class code).
  • the final class is generated by adding the additional class (representing class code) to the upper bits of the normal class (representing class code).
  • the method of generating the final class from the normal class and the additional class is not limited to this.
  • the method for generating the final class from the normal class and the additional class needs to be determined in advance, but any method can be adopted.
  • the final class can be generated by adding an additional class to the lower bits of the normal class.
  • the tap coefficient for each final class transmitted from the encoding device 11 and the 2-bit additional class are acquired.
  • the pixel of interest is classified into an 8-bit normal class (represented by a class code) by using a class tap obtained from a decoding intermediate image as obtainable information.
  • a 10-bit final class (represented by a class code) is generated from the 8-bit normal class and the 2-bit additional class transmitted from the encoding device 11.
  • a specific class is obtained, and the pixel value of the corresponding pixel of the filtered image corresponding to the target pixel is obtained by a prediction calculation using the tap coefficient of the final class.
  • class classification using unacquirable information for example, class classification using an image feature amount such as activity of an original image as unacquirable information can be adopted.
  • a pixel of an adjacent pixel with respect to a pixel included in a predetermined region such as a CU, a CTU, a slice, or the like including the pixel of the original image corresponding to the target pixel
  • a predetermined region such as a CU, a CTU, a slice, or the like
  • a value obtained by normalizing the sum of absolute values of the difference of values by the number of differences can be employed.
  • the image feature amount of the original image as the unacquirable information corresponds to the inter-frame difference between the pixel values of the corresponding pixels of the original image corresponding to the target pixel, the specific area of the original image, and the specific area. It is possible to employ a DC difference in pixel values from a region in the middle of decoding, an image feature amount of an image in which a part of the band of the original image is suppressed or enhanced, and the like.
  • encoded information is obtained regardless of whether it is acquirable information or non-acquirable information. Can be used.
  • the image feature amount of the original image as the unacquirable information and the quantization parameter QP can be used.
  • class classification is performed according to the degree of deterioration of the filtered image, and the deterioration is recovered. Therefore, it is possible to perform a prediction calculation with an appropriate tap coefficient.
  • FIG. 32 is a block diagram showing a fifth configuration example of the encoding device 11 of FIG.
  • the encoding device 11 includes an A / D conversion unit 101 through an arithmetic unit 110, a frame memory 112 through a rate control unit 117, and a class classification adaptive filter 411.
  • the encoding device 11 of FIG. 32 is common to the case of FIG. 9 in that it includes the A / D conversion unit 101 to the calculation unit 110 and the frame memory 112 to the rate control unit 117.
  • the encoding device 11 of FIG. 32 is different from the case of FIG. 9 in that it includes a class classification adaptive filter 411 instead of the class classification adaptive filter 111.
  • the class classification adaptive filter 411 is a filter that functions as ILF, that is, all of DF, SAO, and ALF, by class classification adaptive processing.
  • the class classification adaptive filter 111 is configured to perform ILF processing by class classification adaptive processing. And in common.
  • the normal class as the first class is obtained by the class classification using the obtainable information
  • the additional class as the second class is obtained by the class classification using the unacquirable information.
  • the class classification adaptive filter 111 is different in that a final class is generated from the normal class and the additional class.
  • class classification adaptive filter 411 is different from the class classification adaptive filter 111 in that the additional class is supplied to the lossless encoding unit 106 and transmitted as filter information together with the tap coefficient for each final class. .
  • FIG. 33 is a block diagram illustrating a configuration example of the class classification adaptive filter 411 of FIG.
  • the class classification adaptive filter 411 includes an image conversion device 431 and a learning device 432.
  • the image conversion device 431 is supplied with the decoding intermediate image from the calculation unit 110 (FIG. 32) and the final tap coefficient for each class from the learning device 432. Further, the image conversion device 431 is supplied with encoded information. The original image is supplied from the rearrangement buffer 102 (FIG. 32) to the image conversion device 431.
  • the image conversion device 431 performs the image conversion by the class classification adaptive process using the tap coefficient for each final class, using the decoding-in-progress image as the first image, thereby decoding the decoding-in-progress image as the first image, The image is converted into a filtered image as a second image corresponding to the original image (a filtered image is generated) and supplied to the frame memory 112 (FIG. 32).
  • the image conversion apparatus 431 performs class classification using encoded information as necessary in the class classification adaptive processing.
  • the image conversion device 431 obtains a normal class as the first class and obtains a normal class based on class classification using the decoding intermediate image and the encoded information (encoded information included in the encoded data) as the acquirable information.
  • the impossible information for example, an additional class as the second class is obtained by class classification using an original image or the like, and a final class is generated from the normal class and the additional class.
  • the image conversion device 431 supplies the additional class as filter information to the lossless encoding unit 106 (FIG. 32).
  • the learning device 432 is supplied with the original image from the rearrangement buffer 102 (FIG. 32) and the decoding intermediate image from the arithmetic unit 110 (FIG. 32). Further, encoded information is supplied to the learning device 432.
  • the learning device 432 performs learning (tap coefficient learning) for obtaining a tap coefficient for each (final) class, using the decoding intermediate image as student data and the original image as teacher data.
  • the learning device 432 supplies the tap coefficient for each class obtained by the tap coefficient learning as filter information to the image conversion device 431 and the lossless encoding unit 106 (FIG. 32).
  • the learning device 432 performs class classification in the tap coefficient learning using the encoded information as necessary, similarly to the image conversion device 431.
  • the learning device 432 obtains a normal class and an additional class in class classification, and generates a final class from the normal class and the additional class.
  • FIG. 34 is a block diagram illustrating a configuration example of the image conversion apparatus 431 in FIG.
  • the image conversion apparatus 431 includes tap selection units 21 and 22, a coefficient acquisition unit 24, a prediction calculation unit 25, and a class classification unit 441.
  • the image conversion device 431 is common to the image conversion device 131 of FIG. 11 in that the tap selection units 21 and 22, the coefficient acquisition unit 24, and the prediction calculation unit 25 are included.
  • the image conversion apparatus 431 is different from the image conversion apparatus 131 of FIG. 11 in that it includes a class classification unit 441 instead of the class classification unit 23.
  • the class classification unit 441 is supplied with the class tap of the pixel of interest as acquirable information from the tap selection unit 22. Further, the class classification unit 441 is supplied with the encoded information as the obtainable information and the original image as the unacquirable information from the rearrangement buffer 102 (FIG. 32).
  • the class classification unit 441 performs the class classification using the class tap and the encoding information, similarly to the class classification unit 23 of FIG. 11, and obtains the normal class as the first class of the pixel of interest.
  • the class classification unit 441 performs class classification using the original image to obtain an additional class as the second class of the pixel of interest.
  • the class classification unit 441 generates a final class of the pixel of interest from the normal class and the additional class and supplies the final class to the coefficient acquisition unit 24.
  • class classification unit 441 supplies the additional class (representing class code) to the lossless encoding unit 106 as filter information.
  • the coefficient acquisition unit 24 stores the tap coefficient for each final class supplied from the learning device 432, and receives attention from the class classification unit 541 from the tap coefficient for each final class.
  • the final class tap coefficient of the pixel is acquired and supplied to the prediction calculation unit 25.
  • FIG. 35 is a block diagram illustrating a configuration example of the class classification unit 441 in FIG.
  • the class classification unit 441 includes a first class classification unit 451, a second class classification unit 452, and a class code generation unit 453.
  • the first class classification unit 451 performs class classification using the class tap and encoding information, obtains a normal class as the first class of the pixel of interest, and generates a class code. Part 453.
  • the second class classification unit 452 uses the original image, for example, performs class classification by performing threshold processing of an activity as an image feature amount of the original image, obtains an additional class as the second class of the pixel of interest, In addition to being supplied to the class code generation unit 453, the filter information is supplied to the lossless encoding unit 106 (FIG. 32).
  • the class code generation unit 453 generates a final class of the pixel of interest from the normal class from the first class classification unit 451 and the additional class from the second class classification unit 452, and the coefficient acquisition unit 24 (FIG. 34). ).
  • the class code generation unit 453 adds a class code representing the additional class from the second class classification unit 452 to the upper bits of the class code representing the normal class from the first class classification unit 451, for example, A class code representing the final class of the pixel of interest is generated.
  • FIG. 36 is a block diagram illustrating a configuration example of the learning device 432 in FIG.
  • the learning device 432 includes a learning unit 33.
  • the learning unit 33 includes tap selection units 41 and 42, an addition unit 44, a coefficient calculation unit 45, and a class classification unit 461.
  • the learning device 432 of FIG. 36 is common to the case of FIG. Furthermore, the learning device 432 is common to the case of FIG. 13 in that the learning unit 33 includes tap selection units 41 and 42, an addition unit 44, and a coefficient calculation unit 45.
  • the learning device 432 of FIG. 36 differs from the case of FIG. 13 in that the learning unit 33 includes a class classification unit 461 instead of the class classification unit 43.
  • the class classification unit 461 is supplied with the class tap of the pixel of interest as acquirable information from the tap selection unit 42. Further, the class classification unit 461 is supplied with encoded information as acquirable information and an original image as unacquirable information from the rearrangement buffer 102 (FIG. 32).
  • the class classification unit 461 is configured in the same manner as the class classification unit 441 in FIG. 35, and performs the same class classification as the class classification unit 441 using the class tap, the encoded information, and the original image.
  • the class classification unit 461 performs the class classification using the class tap and the encoding information, similarly to the class classification unit 43 in FIG. 13, and obtains the normal class as the first class of the pixel of interest.
  • the class classification unit 461 performs class classification using the original image to obtain an additional class as the second class of the pixel of interest.
  • the class classification unit 461 generates a final class of the pixel of interest from the normal class and the additional class, and supplies the final class to the adding unit 44.
  • the addition unit 44 performs addition for obtaining a normal equation for each final class, and the coefficient calculation unit 45 obtains a tap coefficient for each final class.
  • the final tap coefficients for each class are the tap coefficients for the classes corresponding to the product of the number of classes of the normal class and the number of classes of the additional class.
  • FIG. 37 is a flowchart for explaining an example of the encoding process of the encoding device 11 of FIG.
  • steps S111 to S129 in steps S111 to S129, the same processing as in steps S11 to S29 of FIG. 14 is performed.
  • the learning device 432 (FIG. 33) of the class classification adaptive filter 411 uses the decoding intermediate image supplied thereto as student data as well as the learning device 132 of FIG. Tap coefficient learning is performed as appropriate using the original image corresponding to the halfway image as teacher data. In the tap coefficient learning, a tap coefficient for each final class is generated as filter information. Then, the final tap coefficient for each class becomes filter information updated in step S112 and filter information set as a transmission target in step S113.
  • step S125 the class classification adaptive filter 411 performs class classification adaptation processing as ILF processing on the decoding intermediate image from the arithmetic unit 110, as in step S25 of FIG. Then, class classification is performed using the class tap, encoding information, and the original image, and a final class is generated from the normal class and the additional class.
  • the class classification adaptation process is performed using the tap coefficient for each final class.
  • the class classification adaptive filter 411 supplies the additional class obtained by the class classification adaptation process to the lossless encoding unit 106 as filter information.
  • step S127 the lossless encoding unit 106 encodes the quantization coefficient, the encoded information, and the filter information as in step S27 of FIG. 14, and the filter information includes an additional class, And final tap coefficients for each class.
  • the encoded data obtained by the lossless encoding unit 106 includes quantization coefficients, encoding information, additional classes as filter information, and tap coefficients for each final class. Then, in step S128, the encoded data is appropriately read from the accumulation buffer 107 and transmitted as described in step S28 of FIG.
  • FIG. 38 is a flowchart for explaining an example of the class classification adaptation process performed in step S125 of FIG.
  • the class classification unit 441 (FIGS. 34 and 35) classifies the target pixel using the class tap, the encoding information, and the original image.
  • steps S151 to S153 the same processing as that in steps S51 to S53 in FIG. 15 is performed.
  • step S151 the first class classification unit 451 of the class classification unit 441 (FIG. 35) obtains an image feature quantity such as an ADRC code from the pixels constituting the class tap from the tap selection unit 22.
  • step S152 the first class classification unit 451 of the class classification unit 441 (FIG. 35) obtains an image feature quantity such as an ADRC code from the pixels constituting the class tap from the tap selection unit 22.
  • step S152 the first class classification unit 451 of the class classification unit 441
  • step S152 the first class classification unit 451 acquires necessary encoding information for the pixel of interest, converts the encoding information into an information code according to a predetermined rule, and the process proceeds to step S153. move on.
  • step S153 the first class classification unit 451 generates a class code representing the normal class as the first class of the pixel of interest from the image feature quantity and the information code, and supplies the class code to the class code generation unit 453. The process proceeds to step S154.
  • step S154 the second class classification unit 452 acquires a specific area such as a CU, a CTU, and a slice including the corresponding pixel corresponding to the original image of the target pixel as information for the additional class as the second class, The process proceeds to step S155.
  • the information for the additional class can be acquired not only from the original image but also from encoded information (regardless of whether it is included in the encoded data).
  • the second class classification unit 452 represents an additional class of the target pixel by extracting an image feature amount such as an activity from the additional class information and performing threshold processing on the image feature amount. Find class code.
  • the second class classification unit 452 supplies the class code representing the additional class to the class code generation unit 453, and the process proceeds from step S155 to step S156.
  • step S156 the class code generation unit 453 determines the final pixel of interest from the class code representing the normal class from the first class classification unit 451 and the class code representing the additional class from the second class classification unit 452. Generate a class code that represents the class.
  • the class code generation unit 453 supplies the final class (representing the class code) of the pixel of interest to the coefficient acquisition unit 24 of the image conversion device 431 (FIG. 34), and ends the class classification in step S143.
  • step S147 the prediction calculation unit 25 is obtained for the decoding intermediate image from the calculation unit 110, similarly to step S47 of FIG.
  • the class classification unit 441 adds the additional class as the second class obtained by the class classification in step S143. Is supplied to the lossless encoding unit 106 (FIG. 32) as filter information.
  • FIG. 39 is a block diagram showing a fifth configuration example of the decoding device 12 of FIG.
  • the decoding device 12 includes a storage buffer 201 through a calculation unit 205, a rearrangement buffer 207, a D / A conversion unit 208, a frame memory 210 through a selection unit 214, and a class classification adaptive filter 471.
  • the decoding device 12 of FIG. 39 is common to the case of FIG. 16 in that it includes a storage buffer 201 through a calculation unit 205, a rearrangement buffer 207, a D / A conversion unit 208, and a frame memory 210 through a selection unit 214. To do.
  • the decoding device 12 of FIG. 39 is different from the case of FIG. 16 in that it has a class classification adaptive filter 471 instead of the class classification adaptive filter 206.
  • the decoding device 12 in FIG. 39 decodes the encoded data transmitted from the encoding device 11 in FIG.
  • the filter information supplied from the lossless decoding unit 202 to the class classification adaptive filter 471 includes a tap coefficient and an additional class for each final class.
  • the class classification adaptive filter 471 is a filter that functions as ILF, that is, all of DF, SAO, and ALF, by class classification adaptation processing, and performs the ILF processing by class classification adaptation processing. Common with the adaptive filter 206.
  • the class classification adaptive filter 471 obtains the normal class as the first class by class classification using the obtainable information, and from the normal class and the additional class as the filter information from the lossless decoding unit 202, It differs from the class classification adaptive filter 206 in that a final class is generated.
  • FIG. 40 is a block diagram showing a configuration example of the class classification adaptive filter 471 of FIG.
  • the class classification adaptive filter 471 includes an image conversion device 481.
  • the image conversion device 481 is supplied with the decoding intermediate image from the calculation unit 205 (FIG. 39), and from the lossless decoding unit 202, tap coefficients and additional classes for each final class as filter information, and encoding information. Is supplied.
  • the image conversion device 481 performs image conversion by class classification adaptive processing using tap coefficients for each class (final class), with the decoding-in-progress image as the first image.
  • the intermediate decoding image as the first image is converted into a filtered image as a second image corresponding to the original image (a filtered image is generated), and the rearrangement buffer 207 and the frame memory 210 are converted. (FIG. 39).
  • the image conversion apparatus 481 performs class classification using encoded information as necessary, as with the image conversion apparatus 431 in FIG.
  • the image conversion device 481 sets the first class of the pixel of interest by class classification using class taps and encoding information (encoding information included in the encoded data) obtained from the decoding intermediate image as the obtainable information. Is obtained from the filter information from the lossless decoding unit 202 (FIG. 39), and the additional class as the second class of the pixel of interest obtained by class classification using the original image as unacquirable information is obtained. The final class of the pixel of interest is generated from the normal class and the additional class.
  • the image conversion apparatus 481 performs the prediction calculation of Expression (1) using the final class tap coefficient of the pixel of interest.
  • FIG. 41 is a block diagram illustrating a configuration example of the image conversion apparatus 481 in FIG.
  • the image conversion apparatus 481 includes tap selection units 241 and 242, a coefficient acquisition unit 244, a prediction calculation unit 245, and a class classification unit 491.
  • the image conversion device 481 in FIG. 41 is common to the image conversion device 231 in FIG. 18 in that the tap selection units 241 and 242, the coefficient acquisition unit 244, and the prediction calculation unit 245 are included.
  • the image conversion apparatus 481 in FIG. 41 is different from the image conversion apparatus 231 in FIG. 18 in that it includes a class classification unit 491 instead of the class classification unit 243.
  • Tap coefficients for each final class as filter information from the lossless decoding unit 202 (FIG. 39) (tap coefficients corresponding to the number of classes obtained by multiplying the number of classes of ordinary classes and the number of classes of additional classes) are obtained as coefficients.
  • the data is supplied to the unit 244 and stored.
  • the additional class as the filter information from the lossless decoding unit 202 (FIG. 39) is supplied to the class classification unit 491.
  • the class classification unit 491 is supplied with the encoding information from the lossless decoding unit 202 and is supplied with the class tap from the tap selection unit 242.
  • the class classification unit 491 performs class classification using the class tap and the encoding information, and obtains a normal class as the first class of the pixel of interest.
  • the class classification unit 491 acquires an additional class as the second class of the pixel of interest from the additional classes as filter information from the lossless decoding unit 202 (FIG. 39).
  • the class classification unit 491 generates a final class of the target pixel from the normal class of the target pixel and the additional class, and supplies the final class of the target pixel to the coefficient acquisition unit 244.
  • the coefficient acquisition unit 244 acquires the final class tap coefficient of the pixel of interest from the class classification unit 491 from the final class tap coefficient as the filter information from the lossless decoding unit 202, and sends it to the prediction calculation unit 245. Supply.
  • FIG. 42 is a block diagram showing a configuration example of the class classification unit 491 in FIG.
  • the class classification unit 491 includes a first class classification unit 501 and a class code generation unit 502.
  • the first class classification unit 501 uses the class tap from the tap selection unit 242 (FIG. 41) and the encoded information from the lossless decoding unit 202 (FIG. 39). Class classification is performed, a normal class as the first class of the pixel of interest is obtained, and supplied to the class code generation unit 502.
  • the class code generation unit 502 acquires the additional class as the second class of the pixel of interest from the additional classes as the filter information from the lossless decoding unit 202.
  • the class code generation unit 502 draws attention from the normal class from the first class classification unit 501 and the additional class acquired from the filter information from the lossless decoding unit 202.
  • a final class of pixels is generated and supplied to the coefficient acquisition unit 244 (FIG. 41).
  • FIG. 43 is a flowchart for explaining an example of the decoding process of the decoding device 12 of FIG.
  • steps S161 through S173 the same processing as in steps S61 through S73 in FIG. 19 is performed.
  • step S162 the lossless decoding unit 202 decodes the encoded data and supplies the quantized coefficient obtained by the decoding to the inverse quantization unit 203 as in step S62 of FIG.
  • Encoding information and filter information obtained by decoding data are supplied to the intra prediction unit 212, the motion prediction compensation unit 213, the class classification adaptive filter 471, and other necessary blocks, but are supplied to the class classification adaptive filter 471.
  • the filter information includes a tap coefficient for each final class and an additional class as the second class.
  • the class classification adaptive filter 471 performs class classification adaptation processing as ILF processing on the decoding intermediate image from the calculation unit 205, as in step S70 of FIG.
  • the normal class as the first class is obtained by class classification using the class tap and the encoding information
  • the final class is obtained from the normal class and the additional class as the filter information from the lossless decoding unit 202 (FIG. 39). Class is generated.
  • FIG. 44 is a flowchart for explaining an example of the class classification adaptation process performed in step S170 of FIG.
  • the class classification unit 491 determines the final target pixel from the additional class of the target pixel as the filter information supplied from the lossless decoding unit 202 (FIG. 39).
  • a simple class A simple class.
  • steps S191 to S193 the same processing as in steps S151 to S153 of FIG. 38 is performed.
  • step S191 the first class classification unit 501 of the class classification unit 491 (FIG. 42) uses, for example, an ADRC code from the pixels constituting the class tap from the tap selection unit 242 (FIG. 41).
  • the image feature amount is extracted, and the process proceeds to step S192.
  • step S192 the first class classification unit 501 obtains necessary encoding information about the pixel of interest, converts the encoding information into an information code according to a predetermined rule, and the process proceeds to step S193. move on.
  • step S193 the first class classification unit 501 generates a class code representing a normal class as the first class of the pixel of interest from the image feature quantity and the information code, and supplies the class code to the class code generation unit 502, so that the process is performed.
  • the process proceeds to step S194.
  • step S194 the class code generation unit 502 selects an additional class (representing a class code) as the second class of the pixel of interest from the additional classes as filter information supplied from the lossless decoding unit 202 (FIG. 39). get.
  • the class code generation unit 502 represents the normal class (representing the class code) from the first class classification unit 501 and the additional class of the pixel of interest acquired from the additional class as the filter information from the lossless decoding unit 202. Class code), the final class of the pixel of interest is generated.
  • the class code generation unit 502 supplies the final class of the pixel of interest to the coefficient acquisition unit 244 (FIG. 41), and ends the class classification in step S183.
  • FIG. 45 is a diagram for explaining the final degeneration of a class.
  • a final class generated from a normal class obtained by class classification using obtainable information and an additional class obtained by class classification using unacquirable information is adopted, By performing class classification that can obtain a filtered image closer to the original image, the S / N of the filtered image (decoded image) can be improved.
  • the final class generated from the normal class and the additional class is adopted, the final class can be degenerated.
  • the upper bits of the class code representing the 8-bit normal class obtained by class classification using the class tap obtained from the decoding intermediate image as the obtainable information A class represented by a 10-bit class code is finally added by adding a class code representing a 2-bit additional class obtained by class classification using image feature values of the original image as unacquirable information. Required as a class.
  • the final class of 10 bits (represented by a class code) is reduced to an 8-bit degenerate class, and by a prediction calculation using the tap coefficient of the 8-bit degenerate class, The pixel value of the corresponding pixel of the filtered image corresponding to the target pixel is obtained.
  • the encoding device 11 transmits a tap coefficient for each 8-bit degenerate class and a 2-bit additional class.
  • a conversion table for converting the final class of 10 bits into the degenerate class of 8 bits is generated, and the conversion table is also transmitted.
  • the final class reduction can be performed, for example, by the method described in FIG. Further, the final class reduction can be performed, for example, by combining classes having a short distance between tap coefficients (sets) into one class in a tap coefficient space having tap coefficients as coordinate axes. . In addition, the final class reduction can be performed by an arbitrary method.
  • the decoding device 12 acquires the tap coefficient for each degenerate class, the 2-bit additional class, and the conversion table transmitted from the encoding device 11.
  • the pixel of interest is classified into an 8-bit normal class (represented by a class code) by using a class tap obtained from a decoding intermediate image as obtainable information.
  • a final 10-bit class similar to the case of the encoding device 11 is obtained from the normal class of 8 bits and the additional class of 2 bits transmitted from the encoding device 11.
  • the decoding device 12 the final class of 10 bits is converted (degenerated) into a degenerate class according to the conversion table transmitted from the encoding device 11, and by a prediction calculation using the tap coefficient of the degenerate class. Then, the pixel value of the corresponding pixel of the filtered image corresponding to the target pixel is obtained.
  • the final class degeneration is not performed, and the final tap coefficient and additional class for each class are transmitted as filter information, or as described with reference to FIG.
  • whether to perform final class degeneration and transmit the tap coefficient, additional class, and conversion table for each degeneration class can be selected by switching the operation mode, for example.
  • the number of classes in the reduced class should be determined appropriately in consideration of, for example, the degree of improvement in S / N and the amount of increase in the overhead of encoded data. Can do.
  • FIG. 46 is a block diagram illustrating a sixth configuration example of the encoding device 11 of FIG.
  • the encoding device 11 includes an A / D conversion unit 101 through an arithmetic unit 110, a frame memory 112 through a rate control unit 117, and a class classification adaptive filter 511.
  • the encoding device 11 of FIG. 46 is common to the case of FIG. 32 in that it includes the A / D conversion unit 101 to the calculation unit 110, and the frame memory 112 to the rate control unit 117.
  • the encoding device 11 of FIG. 46 is different from the case of FIG. 32 in that it has a class classification adaptive filter 511 instead of the class classification adaptive filter 411.
  • the class classification adaptive filter 511 is a filter that functions as ILF, that is, all of DF, SAO, and ALF, by class classification adaptive processing.
  • the class classification adaptive filter 411 performs ILF processing by class classification adaptive processing. And in common.
  • the class classification adaptive filter 511 obtains the normal class as the first class by the class classification using the obtainable information, and obtains the additional class as the second class by the class classification using the unacquirable information. In common with the class classification adaptive filter 411, a final class is generated from the normal class and the additional class.
  • class classification adaptive filter 511 is common to the class classification adaptive filter 411 in that the additional class is supplied as filter information to the lossless encoding unit 106 and transmitted.
  • class classification adaptive filter 511 is different from the class classification adaptive filter 411 in that the final class is converted (degenerate) into a degenerate class as described with reference to FIG.
  • a conversion table for converting a final class into a degenerate class is supplied to the lossless encoding unit 106 and transmitted as filter information together with a tap coefficient for each degenerate class. This is different from the class classification adaptive filter 411.
  • FIG. 47 is a block diagram showing a configuration example of the class classification adaptive filter 511 of FIG.
  • the class classification adaptive filter 511 includes an image conversion device 531 and a learning device 532.
  • the image conversion device 531 is supplied with the decoding intermediate image from the calculation unit 110 (FIG. 46) and the tap coefficient and conversion table for each degenerate class from the learning device 532. Further, the image conversion device 531 is supplied with encoded information. The original image is supplied from the rearrangement buffer 102 (FIG. 46) to the image conversion device 531.
  • the image conversion apparatus 531 performs the image conversion by the class classification adaptive process using the tap coefficient for each degenerate class, using the decoding-in-progress image as the first image, thereby converting the decoding-in-progress image as the first image into the original image Is converted into a filtered image as a second image corresponding to (generated after filtering) and supplied to the frame memory 112 (FIG. 46).
  • the image conversion apparatus 531 performs class classification using encoded information as necessary in the class classification adaptive processing.
  • the image conversion device 531 uses the class classification using the class tap and the encoded information (encoded information included in the encoded data) obtained from the decoding-in-progress image as the acquirable information, as a normal class as the first class.
  • an additional class as the second class is obtained as information that cannot be acquired, for example, by class classification using the original image, and a final class is generated from the normal class and the additional class.
  • the image conversion device 531 converts the final class into a degenerate class according to the conversion table from the learning device 532.
  • the image conversion apparatus 531 supplies the additional class as filter information to the lossless encoding unit 106 (FIG. 46).
  • the learning device 532 is supplied with the original image from the rearrangement buffer 102 (FIG. 46) and the decoding intermediate image from the calculation unit 110 (FIG. 46). Further, encoded information is supplied to the learning device 532.
  • the learning device 532 performs tap coefficient learning for obtaining a tap coefficient for each degenerate class, using the decoding intermediate image as student data and the original image as teacher data.
  • the learning device 532 supplies the tap coefficient for each degenerate class obtained by tap coefficient learning as filter information to the image conversion device 531 and the lossless encoding unit 106 (FIG. 46).
  • the learning device 532 performs class classification in the tap coefficient learning using encoded information as necessary.
  • the learning device 532 obtains a normal class and an additional class in the class classification, and generates a final class from the normal class and the additional class.
  • the learning device 532 generates a conversion table that converts the final class into a degenerate class, and converts the final class into a degenerate class according to the conversion table.
  • the learning device 532 supplies the conversion table as filter information to the image conversion device 531 and the lossless encoding unit 106 (FIG. 46).
  • FIG. 48 is a block diagram showing a configuration example of the image conversion apparatus 531 in FIG.
  • the image conversion apparatus 531 includes tap selection units 21 and 22, a coefficient acquisition unit 24, a prediction calculation unit 25, and a class classification unit 541.
  • the image conversion device 531 is common to the image conversion device 431 of FIG. 34 in that the tap selection units 21 and 22, the coefficient acquisition unit 24, and the prediction calculation unit 25 are included.
  • the image conversion apparatus 531 is different from the image conversion apparatus 431 in FIG. 34 in that it includes a class classification unit 541 instead of the class classification unit 441.
  • the class classification unit 541 is supplied with the class tap of the pixel of interest as acquirable information from the tap selection unit 22. Further, the class classification unit 541 is supplied with encoded information as acquirable information and is supplied with an original image as unacquirable information from the rearrangement buffer 102 (FIG. 46). The class classification unit 541 is supplied with a conversion table from the learning device 532 (FIG. 47).
  • the class classification unit 541 performs class classification using the class tap and the encoding information, obtains the normal class as the first class of the pixel of interest, and uses the original image. Then, class classification is performed to obtain an additional class as the second class of the pixel of interest.
  • the class classification unit 541 supplies the additional class to the lossless encoding unit 106 as filter information, similarly to the class classification unit 441.
  • the class classification unit 541 generates the final class of the pixel of interest from the normal class and the additional class, similarly to the class classification unit 441.
  • the class classification unit 541 converts the final class of the pixel of interest into a degenerate class according to the conversion table from the learning device 532 (FIG. 47), and supplies it to the coefficient acquisition unit 24.
  • the coefficient acquisition unit 24 stores the tap coefficient for each degenerate class supplied from the learning device 532, and the tap coefficient for the degenerate class from the class classifying unit 541 from the tap coefficient for each degenerate class. Is supplied to the prediction calculation unit 25.
  • FIG. 49 is a block diagram illustrating a configuration example of the class classification unit 541 in FIG.
  • the class classification unit 541 includes a first class classification unit 451 to a class code generation unit 453, and a class degeneration unit 551.
  • the class classification unit 541 in FIG. 49 is common to the class classification unit 441 in FIG. 35 in that the first class classification unit 451 to the class code generation unit 453 are included.
  • the class classification unit 541 is different from the class classification unit 441 in that a class degeneration unit 551 is newly provided.
  • the class reduction unit 551 is supplied with the conversion table from the learning device 532 (FIG. 47) and the class code generation unit 453 with the final class of the pixel of interest (representing the class code).
  • the class degeneration unit 551 converts the final class from the class code generation unit 453 into a degeneration class (representing a class code) according to the conversion table from the learning device 532, and supplies it to the coefficient acquisition unit 24 (FIG. 48). To do.
  • FIG. 50 is a block diagram illustrating a configuration example of the learning device 532 in FIG.
  • the learning device 532 includes a learning unit 33 and a conversion table generation unit 562.
  • the learning unit 33 includes tap selection units 41 and 42, an addition unit 44, a coefficient calculation unit 45, and a class classification unit 461.
  • the learning device 532 of FIG. 50 is common to the case of FIG. 36 in that it has the learning unit 33. Furthermore, the learning device 532 is common to the learning device 432 in FIG. 36 in that the learning unit 33 includes tap selection units 41 and 42, an addition unit 44, a coefficient calculation unit 45, and a class classification unit 461.
  • the learning device 532 is different from the learning device 432 in that it has a conversion table generation unit 562 newly.
  • the final tap coefficient for each class is supplied from the coefficient calculation unit 45 to the conversion table generation unit 562.
  • the conversion table generation unit 562 reduces the final class (for each tap coefficient) from the coefficient calculation unit 45 to a degenerate class (for each tap coefficient), and converts the final class into a degenerate class. Generate.
  • the conversion table generation unit 562 supplies the tap coefficient and conversion table for each degenerate class as filter information to the image conversion device 531 (FIG. 47) and the lossless encoding unit 106 (FIG. 46).
  • the final number of classes is the number of classes equal to the number of multiplications of the number of classes of the normal class and the number of additional classes.
  • the number of classes equal to the number of classes can be adopted.
  • the number of classes of a degenerate class is not limited to the number of classes of a normal class, the number of classes of additional classes, and the like.
  • the final class reduction can be performed, for example, by the method described in FIG. Further, the final class reduction can be performed, for example, by combining classes having a short distance between tap coefficients (sets) into one class in a tap coefficient space having tap coefficients as coordinate axes. .
  • the final class degeneration is a standard that suppresses a decrease in the S / N ratio of the second image corresponding to the original image, which is obtained by the class classification adaptive process using the tap coefficient for each degenerated class after the degeneration. (Hereinafter also referred to as S / N norm).
  • the conversion table generation unit 562 is supplied with, for example, an original image as teacher data and a decoding intermediate image as student data.
  • the conversion table generation unit 562 performs final class reduction by an arbitrary method, and performs class classification adaptation processing using the tap coefficient for each reduced class after the reduction, thereby converting the original image as the teacher data.
  • the predicted second image is obtained, and the S / N of the second image having the original image as a true value is obtained.
  • the conversion table generation unit 562 obtains the S / N of the second image for a plurality of degeneration methods (including degeneration with different numbers of classes of degeneration classes), and one of the degenerations in which the S / N is equal to or greater than a threshold value Select the method as the method to degenerate the final class.
  • FIG. 51 is a flowchart for explaining an example of the encoding process of the encoding device 11 of FIG.
  • steps S211 to S229 the same processing as in steps S111 to S129 of FIG. 37 is performed.
  • the learning device 532 (FIG. 47) of the class classification adaptive filter 511 uses the decoding intermediate image supplied thereto as student data as well as the learning device 432 in FIG. Tap coefficient learning is performed as appropriate using the original image corresponding to the intermediate image as teacher data.
  • tap coefficient learning the tap coefficient for each degenerate class obtained by reducing the tap coefficient for each final class and the final class are used.
  • a conversion table for converting to a degenerate class is generated as filter information.
  • the tap coefficient for each degeneration class and the conversion table are supplied as filter information to the image conversion device 531 (FIG. 47) and the lossless encoding unit 106 (FIG. 46).
  • the filter information to be updated in step S212 and the filter information set as the transmission target in step S213 include a tap coefficient for each degenerate class and a conversion table.
  • step S225 the class classification adaptive filter 511 performs a class classification adaptive process as an ILF process on the decoding intermediate image from the arithmetic unit 110, similarly to step S125 of FIG.
  • the normal class and the additional class are obtained by class classification using the class tap, the encoding information, and the original image.
  • a final class is generated from the normal class and the additional class.
  • the additional class is supplied to the lossless encoding unit 106 as filter information, as in the case of FIG.
  • the final class is converted into a degenerate class according to the conversion table from the learning device 532 (FIG. 47), and the tap coefficient for each degenerate class is used.
  • step S227 the lossless encoding unit 106 encodes the quantization coefficient, the encoded information, and the filter information and includes them in the encoded data, as in step S127 of FIG.
  • a tap coefficient for each additional class, degenerate class, and a conversion table are included.
  • the encoded data obtained by the lossless encoding unit 106 includes quantization coefficients, encoding information, additional classes as filter information, tap coefficients for each degenerate class, and a conversion table. Then, in step S228, the encoded data is appropriately read from the accumulation buffer 107 and transmitted as described in step S28 of FIG.
  • FIG. 52 is a flowchart for explaining an example of the class classification adaptation process performed in step S225 of FIG.
  • the class classification unit 541 uses the class tap, the encoding information, and the original image, and uses the normal image and the additional class for the pixel of interest.
  • the final class is obtained, and the final class is reduced to a reduced class.
  • steps S251 to S256 the same processing as that in steps S151 to S156 in FIG. 38 is performed, whereby the class code generation unit 453 of the class classification unit 541 (FIG. 49) performs the first class.
  • the final class of the pixel of interest is generated from the normal class from the classification unit 451 and the additional class from the second class classification unit 452, and supplied to the class degeneration unit 551.
  • step S256 the process proceeds from step S256 to step S257, and the class degeneration unit 551 converts the final class from the class code generation unit 453 into a degenerate class according to the conversion table from the learning device 532 (FIG. 47). .
  • the class reduction unit 551 supplies the reduction class to the coefficient acquisition unit 24 of the image conversion device 531 (FIG. 48), and ends the class classification in step S243.
  • FIG. 53 is a block diagram showing a sixth configuration example of the decoding device 12 of FIG.
  • the decoding device 12 includes a storage buffer 201 through a calculation unit 205, a rearrangement buffer 207, a D / A conversion unit 208, a frame memory 210 through a selection unit 214, and a class classification adaptive filter 571.
  • the decoding device 12 of FIG. 53 is common to the case of FIG. 39 in that it includes a storage buffer 201 through a calculation unit 205, a rearrangement buffer 207, a D / A conversion unit 208, and a frame memory 210 through a selection unit 214. To do.
  • the decoding device 12 of FIG. 53 is different from the case of FIG. 39 in that it has a class classification adaptive filter 571 instead of the class classification adaptive filter 471.
  • the decoding device 12 in FIG. 53 decodes the encoded data transmitted from the encoding device 11 in FIG.
  • the filter information supplied from the lossless decoding unit 202 to the class classification adaptive filter 571 includes a tap coefficient for each degenerate class, a conversion table, and an additional class.
  • the class classification adaptive filter 571 is a filter that functions as ILF, that is, all of DF, SAO, and ALF, by class classification adaptive processing, and performs the ILF processing by class classification adaptive processing. Common with the adaptive filter 471.
  • the class classification adaptive filter 571 generates a final class using the additional class as the filter information from the lossless decoding unit 202 in the same manner as the class classification adaptive filter 471. It differs from the class classification adaptive filter 471 in that it is converted into a degenerate class according to the conversion table as filter information from the lossless decoding unit 202.
  • FIG. 54 is a block diagram showing a configuration example of the class classification adaptive filter 571 of FIG.
  • the class classification adaptive filter 571 includes an image conversion device 581.
  • the image conversion device 581 is supplied with the decoding intermediate image from the calculation unit 205 (FIG. 53), and from the lossless decoding unit 202, tap coefficients for each degenerate class as filter information, a conversion table, an additional class, and Encoding information is supplied.
  • the image conversion device 581 performs image conversion by class classification adaptive processing using a tap coefficient for each class (degenerate class) with the decoding-in-progress image as the first image.
  • the intermediate decoding image as the first image is converted into a filtered image as a second image corresponding to the original image (a filtered image is generated), and the rearrangement buffer 207 and the frame memory 210 (see FIG. 53).
  • the image conversion apparatus 581 performs class classification using encoded information as necessary, as with the image conversion apparatus 531 of FIG.
  • the image conversion device 581 obtains the normal class as the first class of the pixel of interest by class classification using class taps, and as the second class of the pixel of interest. Are acquired from the filter information from the lossless decoding unit 202 (FIG. 53), and the final class of the pixel of interest is generated from the normal class and the additional class.
  • the image conversion apparatus 581 converts the final class of the pixel of interest into a degenerate class according to the conversion table as the filter information from the lossless decoding unit 202, and uses the tap coefficient of the degenerate class to obtain equation (1). ) Prediction calculation.
  • FIG. 55 is a block diagram illustrating a configuration example of the image conversion apparatus 581 of FIG.
  • the image conversion apparatus 581 includes tap selection units 241 and 242, a coefficient acquisition unit 244, a prediction calculation unit 245, and a class classification unit 591.
  • the image conversion device 581 in FIG. 55 is common to the image conversion device 481 in FIG. 41 in that the tap selection units 241 and 242, the coefficient acquisition unit 244, and the prediction calculation unit 245 are included.
  • the image conversion apparatus 581 in FIG. 55 is different from the image conversion apparatus 481 in FIG. 41 in that a class classification unit 591 is provided instead of the class classification unit 491.
  • the tap coefficient for each degenerate class (tap coefficient as many as the product of the class number of the normal class and the additional class) as the filter information from the lossless decoding unit 202 (FIG. 53) is the coefficient acquisition unit 244. To be stored.
  • the additional class and the conversion table as the filter information from the lossless decoding unit 202 are supplied to the class classification unit 591.
  • the class classification unit 591 is supplied with the encoding information from the lossless decoding unit 202 and the class selection unit 242 with the class tap.
  • the class classification unit 591 performs class classification using the class tap and the encoding information, and obtains a normal class as the first class of the pixel of interest.
  • the class classification unit 591 acquires the additional class as the second class of the pixel of interest from the additional class as the filter information from the lossless decoding unit 202 (FIG. 53), similarly to the class classification unit 491 of FIG. To do.
  • the class classification unit 591 generates the final class of the pixel of interest from the normal class and the additional class, similarly to the class classification unit 491 of FIG.
  • the class classification unit 591 converts the final class of the pixel of interest into a degenerate class according to the conversion table as filter information from the lossless decoding unit 202 (FIG. 53), and supplies the degenerate class to the coefficient acquisition unit 244.
  • the coefficient acquisition unit 244 acquires the tap coefficient of the degenerate class of the target pixel from the class classification unit 591 from the tap coefficient for each degenerate class as the filter information from the lossless decoding unit 202, and supplies the tap coefficient to the prediction calculation unit 245.
  • FIG. 56 is a block diagram illustrating a configuration example of the class classification unit 591 in FIG.
  • the class classification unit 591 includes a first class classification unit 501, a class code generation unit 502, and a class degeneration unit 601.
  • the class classification unit 591 in FIG. 56 is common to the class classification unit 491 in FIG. 42 in that the first class classification unit 501 and the class code generation unit 502 are included.
  • the class classification unit 591 is different from the class classification unit 491 in that a class degeneration unit 601 is newly provided.
  • the class reduction unit 601 is supplied with the final class of the pixel of interest generated by the class code generation unit 502 and the conversion table included in the filter information from the lossless decoding unit 202 (FIG. 53).
  • the class degeneration unit 601 converts the final class of the pixel of interest from the class code generation unit 502 into a degeneration class according to the conversion table from the lossless decoding unit 202, and supplies it to the coefficient acquisition unit 244 (FIG. 55).
  • FIG. 57 is a flowchart for explaining an example of the decoding process of the decoding device 12 of FIG.
  • steps S261 through S273 the same processing as in steps S161 through S173 in FIG. 43 is performed.
  • step S262 the lossless decoding unit 202 decodes the encoded data and supplies the quantized coefficient obtained by the decoding to the inverse quantization unit 203 as in step S162 of FIG.
  • Encoding information and filter information obtained by data decoding are supplied to the intra prediction unit 212, the motion prediction compensation unit 213, the class classification adaptive filter 571, and other necessary blocks, but are supplied to the class classification adaptive filter 571.
  • the filter information may include an additional class as the second class, a tap coefficient for each degenerate class, and a conversion table.
  • step S270 the class classification adaptive filter 571 performs class classification adaptation processing as ILF processing on the decoding intermediate image from the arithmetic unit 205, as in step S170 of FIG. Then, the final class generated from the normal class obtained by class classification using the class tap and the encoding information and the additional class as the filter information from the lossless decoding unit 202 (FIG. 53) is the lossless decoding unit. According to the conversion table as filter information from 202, the data is converted into a degenerate class.
  • FIG. 58 is a flowchart for explaining an example of the class classification adaptation process performed in step S270 of FIG.
  • the class classification unit 591 determines the final target pixel from the additional class of the target pixel as the filter information supplied from the lossless decoding unit 202 (FIG. 53). After creating a new class, convert the final class into a degenerate class.
  • the final class of the pixel of interest is generated from the normal class from the classification unit 451 and the additional class as filter information from the lossless decoding unit 202 (FIG. 53), and is supplied to the class degeneration unit 601.
  • step S294 the process proceeds from step S294 to step S295, and the class reduction unit 601 reduces the final class of the pixel of interest from the class code generation unit 502 according to the conversion table from the lossless decoding unit 202 (FIG. 53). Convert to class.
  • the class reduction unit 601 supplies the reduction class to the coefficient acquisition unit 244 of the image conversion device 581 (FIG. 55), and ends the class classification in step S283.
  • FIG. 59 is a diagram for explaining the outline of learning of class classification coefficients.
  • the class classification is performed so as to further improve the S / N of the second image obtained by the class classification adaptive process.
  • the class classification coefficient is obtained by learning that minimizes the statistical error together with the tap coefficient.
  • FIG. 59 shows an outline of learning of class classification coefficients.
  • the first hierarchy is the 0th hierarchy.
  • a class classification coefficient for performing subclass classification for classifying the pixel of interest into any one of a plurality of subclasses is obtained.
  • the class classification coefficient is obtained by learning that minimizes the statistical error together with the tap coefficient, but in order to simplify the explanation, only the learning of the class classification coefficient is focused here.
  • the class tap is composed of M pixels (pixel values thereof), and the pixel value of the nth pixel among the M pixels is represented by x m .
  • the class classification coefficient (set) of one class includes the same number of coefficients as the number M of pixels of the class tap, and the m-th coefficient (class classification) of the class classification coefficients of the one class.
  • the coefficient is expressed as w m .
  • a prediction error prediction value (hereinafter also referred to as a prediction error prediction value) of a prediction value of a pixel value of a pixel of a teacher image as teacher data, which is obtained by a class classification adaptation process for student images as student data. Is represented as y.
  • a predetermined calculation such as a product-sum calculation.
  • an expression y w 1 x 1 + w 2 x 2 +... + W M x M representing a predetermined calculation is also referred to as a prediction error prediction expression.
  • the 0th hierarchy is first learned.
  • the pixel value of each pixel of the pixel group (0,0) is used as the student data
  • the pixel The prediction error of the prediction value of the pixel value of the teacher image pixel corresponding to each pixel of the pixel group (0,0) obtained by the classification adaptation process for each pixel of the group (0,0) is obtained as the class classification coefficient cc (0,0) of the 0th layer.
  • the prediction error prediction value y is obtained according to the prediction error prediction formula using the class classification coefficient cc (0,0) of the 0th layer.
  • a pixel whose prediction error prediction value y is 0 or more among the pixels of the pixel group (0, 0) in the 0th layer is subclassed into subclass 0.
  • the pixels with the prediction error prediction value y less than 0 are subclassed into subclass 1, and the learning of the 0th layer ends.
  • subclass classification for example, pixels whose absolute value of the prediction error prediction value y is less than the threshold are classified into subclass 0, and pixels whose absolute value of the prediction error prediction value y is greater than or equal to the threshold are classified into subclass 1. can do.
  • a pixel can be classified into any of three or more subclasses according to the absolute value of the prediction error prediction value y of the pixel.
  • pixel group (0,0) in the 0th layer a pixel group composed of pixels classified into subclass 0 is referred to as pixel group (0,0,0) and subclass 1 A pixel group composed of the classified pixels is referred to as a pixel group (0, 0, 1).
  • the pixel group (n, k, s) is subclass s by subclass classification using the class classification coefficient cc (n, k) of the nth layer among the pixel group (n, k) of the nth layer. Represents a classified pixel group.
  • the pixel group (n, k) represents the (k + 1) th pixel group in the nth layer.
  • k takes 2 n values of 0,1, ..., 2 n -1, so there are only 2 n pixel groups (n, k) in the nth layer (before subclass classification) To do.
  • the learning of the next hierarchy that is, the 1st hierarchy is performed as necessary.
  • the pixel group (1,0) in the first layer is used as the student data and the class for each pixel of the pixel group (1,0)
  • the prediction error of the prediction error prediction value y is statistically calculated using the prediction error of the prediction value of the pixel value of the teacher image corresponding to each pixel of the pixel group (1,0) obtained by the classification adaptation process as the teacher data.
  • the class classification coefficient w m to be minimized is obtained as the first (class) class classification coefficient cc (1,0) in the first layer.
  • the prediction error prediction value y is obtained according to the prediction error prediction formula using the first layer class classification coefficient cc (1,0).
  • the pixels whose prediction error prediction value y is 0 or more are subclassified into the subclass 0 pixel group (1,0,0), and the prediction error Pixels for which the predicted value y is less than 0 are subclassified into a subclass 1 pixel group (1,0,1).
  • the pixel group (1,1) is used as student data, and each pixel of the pixel group (1,1) is targeted.
  • the prediction error of the prediction error prediction value y is statistically calculated using the prediction error of the prediction value of the pixel value of the teacher image pixel corresponding to each pixel of the pixel group (1,1) obtained by the classification adaptation process as the teacher data.
  • the class classification coefficient w m to be minimized is obtained as the second (class) class classification coefficient cc (1,1) in the first layer.
  • the prediction error prediction value y is obtained according to the prediction error prediction formula using the first layer class classification coefficient cc (1,1).
  • pixels in the first layer pixel group (1,1) pixels whose prediction error prediction value y is 0 or more are subclassified into the subclass 0 pixel group (1,1,0), and the prediction error Pixels for which the predicted value y is less than 0 are subclassified into a subclass 1 pixel group (1,1,1).
  • the next layer that is, the second layer is learned as necessary.
  • 2 two pixel groups obtained by sub-class classification of the learning of the first layer (1,0,0), a pixel group (1,0,1), a pixel group (1,1 , 0) and pixel group (1,1,1), 2 n pixel groups (n, k) in the second hierarchy, that is, 2 2 pixel groups (2,0) in the second hierarchy
  • the same processing as the learning of the 0th hierarchy is performed for the pixel group (2,1), the pixel group (2,2), and the pixel group (2,3).
  • the pixel group (2,0) in the second layer is used as student data, and the class for each pixel of the pixel group (2,0) is used.
  • the prediction error of the prediction error prediction value y is statistically calculated using the prediction error of the prediction value of the pixel value of the teacher image pixel corresponding to each pixel of the pixel group (2,0) obtained by the classification adaptive processing as the teacher data.
  • the class classification coefficient w m to be minimized is obtained as the first class classification coefficient cc (2, 0) in the second layer.
  • the prediction error prediction value y is obtained according to the prediction error prediction formula using the class classification coefficient cc (2,0) in the second layer.
  • the pixels whose prediction error prediction value y is 0 or more are subclassified into the subclass 0 pixel group (2,0,0), and the prediction error Pixels for which the predicted value y is less than 0 are subclassified into a subclass 1 pixel group (2, 0, 1).
  • the pixel group (2,1) is used as student data, and each pixel in the pixel group (2,1) is targeted.
  • the prediction error of the prediction error prediction value y is statistically determined using the prediction error of the prediction value of the pixel value of the teacher image pixel corresponding to each pixel of the pixel group (2,1) obtained by the class classification adaptive processing as the teacher data.
  • the class classification coefficient w m to be minimized is obtained as the second class classification coefficient cc (2,1) in the second layer.
  • the prediction error prediction value y is obtained according to the prediction error prediction formula using the class classification coefficient cc (2, 1) in the second layer.
  • the pixels whose prediction error prediction value y is 0 or more are subclassified into the subclass 0 pixel group (2,1,0), and the prediction error Pixels for which the predicted value y is less than 0 are subclassified into a subclass 1 pixel group (2,1,1).
  • the pixel group (2, 2) is used as student data, and each pixel in the pixel group (2, 2) is also targeted.
  • the prediction error of the prediction error prediction value y is statistically determined using the prediction error of the prediction value of the pixel value of the teacher image pixel corresponding to each pixel of the pixel group (2, 2) obtained by the classification adaptation process as the teacher data.
  • the class classification coefficient w m to be minimized is obtained as the third class classification coefficient cc (2, 2) in the second layer.
  • the prediction error prediction value y is obtained according to the prediction error prediction formula using the class classification coefficient cc (2, 2) in the second layer.
  • the pixels whose prediction error prediction value y is 0 or more are sub-classified into the sub-class 0 pixel group (2, 2, 0), and the prediction error Pixels for which the predicted value y is less than 0 are subclassified into a subclass 1 pixel group (2,2,1).
  • the pixel group (2, 3) is used as student data, and each pixel in the pixel group (2, 3) is also targeted.
  • the prediction error of the prediction error prediction value y is statistically calculated using the prediction error of the prediction value of the pixel value of the teacher image pixel corresponding to each pixel of the pixel group (2, 3) obtained by the class classification adaptive processing as the teacher data.
  • the class classification coefficient w m to be minimized is obtained as the fourth class classification coefficient cc (2,3) in the second layer.
  • the prediction error prediction value y is obtained according to the prediction error prediction formula using the class classification coefficient cc (2, 3) in the second layer.
  • pixels whose prediction error prediction value y is 0 or more are subclassified into the sub class 0 pixel group (2, 3, 0), and the prediction error Pixels for which the predicted value y is less than 0 are subclassified into a subclass 1 pixel group (2, 3, 1).
  • the (k + 1) th pixel group (n, k) of the nth layer is also referred to as a pixel group (n, k) of the class k of the nth layer
  • the class classification coefficient cc (n , k) is also referred to as a class classification coefficient cc (n, k) of the class k of the nth layer.
  • the class classification coefficient cc (n, k) of the class k of the nth layer is used, and the pixel group of the class k of the nth layer (n , k), and the class k pixel group (n, k) in the nth layer is classified into a subclass 0 pixel group and a subclass 1 pixel group.
  • the pixel group of the subclass 0 out of the pixel group (n, k) of the nth layer class k is the pixel group of the class k1 having the (n + 1) th layer.
  • (n + 1, k1), and the pixel group of subclass 1 is a pixel group (n + 1, k2) of another class k2 in the (n + 1) th layer.
  • the subclass classification of the pixel group (n + 1, k1) of the class k1 of the (n + 1) th layer is performed using the class classification coefficient cc (n + 1, k1) of the class k1 of the (n + 1) th layer.
  • the subclass classification of the pixel group (n + 1, k2) of the class k2 in the (n + 1) th layer is performed using the class classification coefficient cc (n + 1, k2) of the class k2 in the (n + 1) th hierarchy. .
  • FIG. 60 is a diagram for explaining an outline of class classification using a class classification coefficient.
  • the subclass classification of the 0th hierarchy is performed.
  • the prediction error prediction value y is obtained for the target pixel using the 0th layer class classification coefficient cc (0,0).
  • the target pixel is classified into subclass 0 of the 0th hierarchy. Further, when the prediction error prediction value y of the pixel of interest is less than 0, the pixel of interest is subclass classified into subclass 1 of the 0th hierarchy.
  • the pixel of interest classified into subclass 0 or 1 becomes a pixel of the next layer, that is, the class of the 1st layer.
  • the class of the first layer of the pixel of interest is determined by adding the subclass of the 0th layer of the pixel of interest to the class of the 0th layer of the pixel of interest. .
  • the class of the first layer of the pixel of interest is determined from the subclass of the 0th layer of the pixel of interest.
  • the class of the first layer of the pixel of interest is determined to be class 0 according to, for example, subclass 0.
  • the class of the first layer of the pixel of interest is determined to be class 1 according to subclass 1, for example.
  • class k represents a class whose class code is k.
  • the subclass classification of the 1st hierarchy is Done.
  • the class classification coefficient cc (1, k of the class k of the first layer of the pixel of interest out of the class classification coefficients cc (1,0) and cc (1,1) of the first layer. ) Is used.
  • the prediction error prediction value y of the pixel of interest is obtained using the class classification coefficient cc (1,0) of the first layer.
  • the prediction error prediction value y of the pixel of interest is obtained using the class classification coefficient cc (1,1) of the first layer.
  • the target pixel When the prediction error prediction value y of the target pixel is 0 or more, the target pixel is subclassed into subclass 0 of the first hierarchy. Further, when the prediction error prediction value y of the target pixel is less than 0, the target pixel is subclassified into subclass 1 in the first hierarchy.
  • the pixel of interest classified into subclass 0 or 1 is a pixel of the next hierarchy, that is, the class of the second hierarchy.
  • the class of the second layer of the pixel of interest is determined by adding the subclass of the first layer of the pixel of interest to the first layer class of the pixel of interest.
  • the class of the second layer of the pixel of interest is determined by adding the subclass of the first layer of the pixel of interest to the class 0 of the first layer Is done.
  • the second layer class of the pixel of interest is the lower bit of class 0 of the first layer of the pixel of interest in the first layer of the pixel of interest.
  • the subscript 2 indicates that the immediately preceding numerical value is a binary number.
  • the target pixel is classified into subclass 1 in the first layer
  • the class of the second layer of the pixel of interest is determined by adding the subclass of the first layer of the pixel of interest to the class 1 of the first layer Is done.
  • the second layer class of the pixel of interest is the lower bit of class 1 of the first layer of the pixel of interest, and the first layer of the pixel of interest.
  • the next layer that is, the class classification coefficient cc (2,0), cc (2,1), cc (2,2), cc (2,3) of the second layer Is present, subclass classification of the second hierarchy is performed.
  • the class classification coefficient cc (2, k) of the class k of the second layer of the pixel of interest among the class classification coefficients cc (2,0) to cc (2,3) of the second layer ) Is used.
  • the prediction error prediction value y of the pixel of interest is determined It is done.
  • the target pixel When the prediction error prediction value y of the target pixel is 0 or more, the target pixel is subclassified into subclass 0 of the second hierarchy. Further, when the prediction error prediction value y of the target pixel is less than 0, the target pixel is subclass-classified into subclass 1 of the second hierarchy.
  • the pixel of interest classified into subclass 0 or 1 in the second hierarchy is a pixel of the next hierarchy, that is, the third hierarchy class.
  • the class of the third layer of the pixel of interest is determined by adding the subclass of the second layer of the pixel of interest to the second layer class of the pixel of interest.
  • third hierarchical class of the pixel of interest, the second its class 0 00 2 of the second layer, the pixel of interest Determined by taking into account the subclass of the hierarchy.
  • the prediction error prediction value y of the pixel of interest is calculated.
  • the target pixel When the prediction error prediction value y of the target pixel is 0 or more, the target pixel is subclassified into subclass 0 of the second hierarchy. Further, when the prediction error prediction value y of the target pixel is less than 0, the target pixel is subclass-classified into subclass 1 of the second hierarchy.
  • the pixel of interest classified into subclass 0 or 1 in the second hierarchy is a pixel of the next hierarchy, that is, the third hierarchy class.
  • the class of the second layer of the pixel of interest is determined by adding the subclass of the second layer of the pixel of interest to the second layer class of the pixel of interest.
  • the second target pixel Determined by taking into account the subclass of the hierarchy.
  • the prediction error prediction value y of the pixel of interest is calculated.
  • the target pixel When the prediction error prediction value y of the target pixel is 0 or more, the target pixel is subclassified into subclass 0 of the second hierarchy. Further, when the prediction error prediction value y of the target pixel is less than 0, the target pixel is subclass-classified into subclass 1 of the second hierarchy.
  • the pixel of interest classified into subclass 0 or 1 in the second hierarchy is a pixel of the next hierarchy, that is, the third hierarchy class.
  • the class of the second layer of the pixel of interest is determined by adding the subclass of the second layer of the pixel of interest to the second layer class of the pixel of interest.
  • the second target pixel Determined by taking into account the subclass of the hierarchy.
  • the prediction error prediction value y of the pixel of interest is calculated.
  • the target pixel When the prediction error prediction value y of the target pixel is 0 or more, the target pixel is subclassified into subclass 0 of the second hierarchy. Further, when the prediction error prediction value y of the target pixel is less than 0, the target pixel is subclass-classified into subclass 1 of the second hierarchy.
  • the pixel of interest classified into subclass 0 or 1 in the second hierarchy is a pixel of the next hierarchy, that is, the third hierarchy class.
  • the class of the second layer of the pixel of interest is determined by adding the subclass of the second layer of the pixel of interest to the second layer class of the pixel of interest.
  • the second target pixel Determined by taking into account the subclass of the hierarchy.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本技術は、S/N及び圧縮効率を改善することができるようにする画像処理装置及び画像処理方法に関する。 予測符号化の残差と予測画像とを加算することにより得られる第1の画像にフィルタ処理を行い、前記予測画像の予測に用いられる第2の画像が生成される。フィルタ処理では、第1の画像の処理対象画素に対応する第2の画像の対応画素の画素値を求める予測演算に用いられる予測タップとなる画素を、第1の画像から選択し、処理対象画素を、複数のクラスのうちのいずれかのクラスにクラス分類し、学習により求められた、複数のクラスごとの、予測演算に用いられるタップ係数のうちの、処理対象画素のクラスのタップ係数と、処理対象画素の予測タップとを用いた予測演算を行うことにより、対応画素の画素値を求める。本技術は、例えば、画像の符号化装置や復号装置に適用できる。

Description

画像処理装置及び画像処理方法
 本技術は、画像処理装置及び画像処理方法に関し、特に、例えば、画像のS/N及び圧縮効率を、大きく改善することができるようにする画像処理装置及び画像処理方法に関する。
 予測符号化方式の1つである、例えば、HEVC(High Efficiency Video Coding)では、ILF(In Loop Filter)が提案された。また、ポストHEVC(HEVCの次の世代の予測符号化方式)では、ILFを採用することが予想される。
 ILFとしては、ブロックノイズを低減するためのDF(Deblocking Filter)、リンギングを低減するためのSAO(Sample Adaptive Offset)、符号化誤差(復号画像の、元画像に対する誤差)を最小化するためのALF(Adaptive Loop Filter)がある。
 ALFについては、特許文献1に記載され、SAOについては、特許文献2に記載されている。
特許第5485983号公報 特表2014-523183号公報
 現在提案されているILFとしてのDFや、SAO、ALFは、フィルタ強度の自由度が低く、フィルタ強度の細かい制御を行うことが困難であるため、画像のS/N(Signal to Noise Ratio)(SN比)(SNR)及び圧縮効率を、大きく改善することが困難である。
 本技術は、このような状況に鑑みてなされたものであり、画像のS/N及び圧縮効率を、大きく改善することができるようにするものである。
 本技術の画像処理装置は、予測符号化の残差と予測画像とを加算することにより得られる第1の画像にフィルタ処理を行い、前記予測画像の予測に用いられる第2の画像を生成するフィルタ処理部を備え、前記フィルタ処理部は、前記第1の画像のうちの処理対象である処理対象画素に対応する前記第2の画像の対応画素の画素値を求める予測演算に用いられる予測タップとなる画素を、前記第1の画像から選択する予測タップ選択部と、前記処理対象画素を、複数のクラスのうちのいずれかのクラスにクラス分類するクラス分類部と、前記第1の画像に相当する生徒画像と、前記第1の画像に対応する元画像に相当する教師画像とを用いた学習により求められた、前記複数のクラスごとの、前記予測演算に用いられるタップ係数のうちの、前記処理対象画素のクラスのタップ係数を取得するタップ係数取得部と、前記処理対象画素のクラスのタップ係数と、前記処理対象画素の前記予測タップとを用いた前記予測演算を行うことにより、前記対応画素の画素値を求める演算部とを有する画像処理装置である。
 本技術の画像処理方法は、予測符号化の残差と予測画像とを加算することにより得られる第1の画像にフィルタ処理を行い、前記予測画像の予測に用いられる第2の画像を生成するステップを含み、前記フィルタ処理は、前記第1の画像のうちの処理対象である処理対象画素に対応する前記第2の画像の対応画素の画素値を求める予測演算に用いられる予測タップとなる画素を、前記第1の画像から選択することと、前記処理対象画素を、複数のクラスのうちのいずれかのクラスにクラス分類することと、前記第1の画像に相当する生徒画像と、前記第1の画像に対応する元画像に相当する教師画像とを用いた学習により求められた、前記複数のクラスごとの、前記予測演算に用いられるタップ係数のうちの、前記処理対象画素のクラスのタップ係数を取得することと、前記処理対象画素のクラスのタップ係数と、前記処理対象画素の前記予測タップとを用いた前記予測演算を行うことにより、前記対応画素の画素値を求めることとを含む画像処理方法である。
 本技術の画像処理装置及び画像処理方法においては、予測符号化の残差と予測画像とを加算することにより得られる第1の画像にフィルタ処理が行われ、前記予測画像の予測に用いられる第2の画像が生成される。フィルタ処理では、前記第1の画像のうちの処理対象である処理対象画素に対応する前記第2の画像の対応画素の画素値を求める予測演算に用いられる予測タップとなる画素が、前記第1の画像から選択されるとともに、前記処理対象画素が、複数のクラスのうちのいずれかのクラスにクラス分類される。そして、前記第1の画像に相当する生徒画像と、前記第1の画像に対応する元画像に相当する教師画像とを用いた学習により求められた、前記複数のクラスごとの、前記予測演算に用いられるタップ係数のうちの、前記処理対象画素のクラスのタップ係数が取得され、前記処理対象画素のクラスのタップ係数と、前記処理対象画素の前記予測タップとを用いた前記予測演算を行うことにより、前記対応画素の画素値が求められる。
 なお、画像処理装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。
 また、画像処理装置は、コンピュータにプログラムを実行させることにより実現することができる。プログラムは、伝送媒体を介して、伝送することにより、又は、記録媒体に記録して、提供することができる。
 本技術によれば、画像のS/N及び圧縮効率を、大きく改善することができる。
 なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
本技術を適用した画像処理システムの一実施の形態の構成例を示す図である。 クラス分類適応処理を行う画像変換装置の第1の構成例を示すブロック図である。 係数取得部24に記憶されるタップ係数の学習を行う学習装置の構成例を示すブロック図である。 学習部33の構成例を示すブロック図である。 クラス分類適応処理を行う画像変換装置の第2の構成例を示すブロック図である。 係数取得部24に記憶される種係数の学習を行う学習装置の構成例を示すブロック図である。 学習部63の構成例を示すブロック図である。 学習部63の他の構成例を示すブロック図である。 符号化装置11の第1の構成例を示すブロック図である。 クラス分類適応フィルタ111の構成例を示すブロック図である。 画像変換装置131の構成例を示すブロック図である。 クラス分類部23で行われるクラス分類の例を説明する図である。 学習装置132の構成例を示すブロック図である。 符号化装置11の符号化処理の例を説明するフローチャートである。 ステップS25で行われるクラス分類適応処理の例を説明するフローチャートである。 復号装置12の第1の構成例を示すブロック図である。 クラス分類適応フィルタ206の構成例を示すブロック図である。 画像変換装置231の構成例を示すブロック図である。 復号装置12の復号処理の例を説明するフローチャートである。 ステップS70で行われるクラス分類適応処理の例を説明するフローチャートである。 クラス分類適応処理と、ILFのうちのALFとの、クラス分類、及び、フィルタ処理の相違を説明する図である。 クラス分類適応処理と、ILFのうちのALFとのクラス分類、及び、フィルタ処理の相違により生じる効果の相違を説明する図である。 クラス分類適応処理の予測タップ及びクラスタップと、ILFのうちのALFのフィルタ係数に対する画素との相違を説明する図である。 学習により得られるタップ係数を削減する削減方法の例を説明する図である。 符号化装置11の第2の構成例を示すブロック図である。 復号装置12の第2の構成例を示すブロック図である。 符号化装置11の第3の構成例を示すブロック図である。 復号装置12の第3の構成例を示すブロック図である。 符号化装置11の第4の構成例を示すブロック図である。 復号装置12の第4の構成例を示すブロック図である。 付加クラスの概要を説明する図である。 符号化装置11の第5の構成例を示すブロック図である。 クラス分類適応フィルタ411の構成例を示すブロック図である。 画像変換装置431の構成例を示すブロック図である。 クラス分類部441の構成例を示すブロック図である。 学習装置432の構成例を示すブロック図である。 符号化装置11の符号化処理の例を説明するフローチャートである。 ステップS125で行われるクラス分類適応処理の例を説明するフローチャートである。 復号装置12の第5の構成例を示すブロック図である。 クラス分類適応フィルタ471の構成例を示すブロック図である。 画像変換装置481の構成例を示すブロック図である。 クラス分類部491の構成例を示すブロック図である。 復号装置12の復号処理の例を説明するフローチャートである。 ステップS170で行われるクラス分類適応処理の例を説明するフローチャートである。 クラスの縮退を説明する図である。 符号化装置11の第6の構成例を示すブロック図である。 クラス分類適応フィルタ511の構成例を示すブロック図である。 画像変換装置531の構成例を示すブロック図である。 クラス分類部541の構成例を示すブロック図である。 学習装置532の構成例を示すブロック図である。 符号化装置11の符号化処理の例を説明するフローチャートである。 ステップS225で行われるクラス分類適応処理の例を説明するフローチャートである。 復号装置12の第6の構成例を示すブロック図である。 クラス分類適応フィルタ571の構成例を示すブロック図である。 画像変換装置581の構成例を示すブロック図である。 クラス分類部591の構成例を示すブロック図である。 復号装置12の復号処理の例を説明するフローチャートである。 ステップS270で行われるクラス分類適応処理の例を説明するフローチャートである。 クラス分類係数の学習の概要を説明する図である。 クラス分類係数を用いたクラス分類の概要を説明する図である。 クラス分類係数の学習を行う学習装置の構成例を示すブロック図である。 学習装置が行う学習処理の例を説明するフローチャートである。 クラス分類にクラス分類係数を用いるクラス分類適応処理を行う画像変換装置の構成例を示すブロック図である。 クラス分類部721の構成例を示すブロック図である。 クラス分類部721で行われる、クラス分類係数を用いたクラス分類の処理の例を説明するフローチャートである。 符号化装置11の第7の構成例を示すブロック図である。 クラス分類適応フィルタ811の構成例を示すブロック図である。 画像変換装置831の構成例を示すブロック図である。 クラス分類部841の構成例を示すブロック図である。 学習装置832の構成例を示すブロック図である。 符号化装置11の符号化処理の例を説明するフローチャートである。 ステップS425で行われるクラス分類適応処理の例を説明するフローチャートである。 復号装置12の第7の構成例を示すブロック図である。 クラス分類適応フィルタ861の構成例を示すブロック図である。 画像変換装置871の構成例を示すブロック図である。 復号装置12の復号処理の例を説明するフローチャートである。 ステップS470で行われるクラス分類適応処理の例を説明するフローチャートである。 学習装置832の他の構成例を示すブロック図である。 ILFとして、クラス分類適応処理によりILFの処理を行うクラス分類適応フィルタを設けた場合と、ALFを設けた場合とのRD(Rate-Distortion)曲線を示す図である。 多視点画像符号化方式の例を示す図である。 本技術を適用した多視点画像符号化装置の主な構成例を示す図である。 本技術を適用した多視点画像復号装置の主な構成例を示す図である。 階層画像符号化方式の例を示す図である。 本技術を適用した階層画像符号化装置の主な構成例を示す図である。 本技術を適用した階層画像復号装置の主な構成例を示す図である。 コンピュータの主な構成例を示すブロック図である。 テレビジョン装置の概略的な構成の一例を示すブロック図である。 携帯電話機の概略的な構成の一例を示すブロック図である。 記録再生装置の概略的な構成の一例を示すブロック図である。 撮像装置の概略的な構成の一例を示すブロック図である。 ビデオセットの概略的な構成の一例を示すブロック図である。 ビデオプロセッサの概略的な構成の一例を示すブロック図である。 ビデオプロセッサの概略的な構成の他の例を示すブロック図である。
 <本技術を適用した画像処理システム>
 図1は、本技術を適用した画像処理システムの一実施の形態の構成例を示す図である。
 図1において、画像処理システムは、符号化装置11及び復号装置12を有する。
 符号化装置11には、符号化対象の元画像が供給される。
 符号化装置11は、例えば、HEVCやAVC(Advanced Video Coding)等のような予測符号化により、元画像を符号化する。
 符号化装置11の予測符号化では、元画像の予測画像が生成され、元画像と予測画像との残差が符号化される。
 さらに、符号化装置11の予測符号化では、予測符号化の残差と予測画像とを加算することにより得られる復号途中画像に、ILFをかけるILF処理を行うことで、予測画像の予測に用いられる参照画像が生成される。
 ここで、ILF処理としてのフィルタ処理(フィルタリング)が、復号途中画像に施されることにより得られる画像を、フィルタ後画像ともいう。
 符号化装置11は、予測符号化を行う他、復号途中画像と元画像とを用いて学習を行うことにより、フィルタ後画像が、なるべく元画像に近くなるようなILF処理としてのフィルタ処理を行うためのフィルタ情報を求める。
 符号化装置11のILF処理は、学習により求められたフィルタ情報を用いて行われる。
 ここで、フィルタ情報を求める学習は、例えば、元画像の1又は複数のシーケンスごとや、元画像の1又は複数のシーン(シーンチェンジから、次のシーンチェンジまでのフレーム)ごと、元画像の1又は複数のフレーム(ピクチャ)ごと、元画像の1又は複数のスライスごと、ピクチャの符号化の単位のブロックの1又は複数ラインごと、その他任意の単位で行うことができる。また、フィルタ情報を求める学習は、例えば、残差が閾値以上になった場合に行うことができる。
 符号化装置11は、元画像の予測符号化により得られる符号化データ、及び、学習により得られるフィルタ情報を、伝送媒体13を介して伝送し、又は、記録媒体14に伝送して記録させる。
 なお、フィルタ情報を求める学習は、符号化装置11とは別の装置で行うことができる。
 また、フィルタ情報は、符号化データとは別に伝送することもできるし、符号化データに含めて伝送することもできる。
 さらに、フィルタ情報を求める学習は、元画像そのもの(及び元画像から得られる復号途中画像)を用いて行う他、画像特徴量が元画像と類似する、元画像とは別個の画像を用いて行うことができる。
 復号装置12は、符号化装置11から伝送される符号化データ及びフィルタ情報を、伝送媒体13や記録媒体14を介して受け取り(受信し)(取得し)、符号化データを、符号化装置11の予測符号化に対応する方式で復号する。
 すなわち、復号装置12は、符号化装置11からの符号化データを処理することで、予測符号化の残差を求める。さらに、復号装置12は、残差と予測画像とを加算することにより、符号化装置11で得られるのと同様の復号途中画像を求める。そして、復号装置12は、復号途中画像に、符号化装置11からのフィルタ情報を用いたILF処理としてのフィルタ処理を施し、フィルタ後画像を求める。
 復号装置12において、フィルタ後画像は、元画像の復号画像として出力されるとともに、必要に応じて、予測画像の予測に用いられる参照画像として一時記憶される。
 符号化装置11及び復号装置12のILF処理としてのフィルタ処理は、クラス分類適応処理によって行われる。以下、クラス分類適応処理について説明する。
 <クラス分類適応処理>
 図2は、クラス分類適応処理を行う画像変換装置の第1の構成例を示すブロック図である。
 ここで、クラス分類適応処理は、例えば、第1の画像を、第2の画像に変換する画像変換処理として捉えることができる。
 第1の画像を第2の画像に変換する画像変換処理は、その第1と第2の画像の定義によって様々な信号処理となる。
 すなわち、例えば、第1の画像を低空間解像度の画像とするとともに、第2の画像を高空間解像度の画像とすれば、画像変換処理は、空間解像度を向上させる空間解像度創造(向上)処理ということができる。
 また、例えば、第1の画像を低S/Nの画像とするとともに、第2の画像を高S/Nの画像とすれば、画像変換処理は、ノイズを除去するノイズ除去処理ということができる。
 さらに、例えば、第1の画像を所定の画素数(サイズ)の画像とするとともに、第2の画像を、第1の画像の画素数を多くまたは少なくした画像とすれば、画像変換処理は、画像のリサイズ(拡大または縮小)を行うリサイズ処理ということができる。
 また、例えば、第1の画像を、HEVC等のブロック単位で符号化された画像を復号することによって得られる復号画像とするとともに、第2の画像を、符号化前の元画像とすれば、画像変換処理は、ブロック単位の符号化及び復号によって生じるブロック歪みを除去する歪み除去処理ということができる。
 なお、クラス分類適応処理は、画像の他、例えば、音響を、処理の対象とすることができる。音響を対象とするクラス分類適応処理は、第1の音響(例えば、S/Nの低い音響等)を、第2の音響(例えば、S/Nの高い音響等)に変換する音響変換処理として捉えることができる。
 クラス分類適応処理では、第1の画像のうちの注目している注目画素(処理対象の処理対象画素)の画素値を複数のクラスのうちのいずれかのクラスにクラス分類することにより得られるクラスのタップ係数と、注目画素に対して選択される第1の画像の、タップ係数と同一の数の画素の画素値とを用いた予測演算により、注目画素の画素値が求められる。
 図2は、クラス分類適応処理による画像変換処理を行う画像変換装置の構成例を示している。
 図2において、画像変換装置20は、タップ選択部21及び22、クラス分類部23、係数取得部24、並びに、予測演算部25を有する。
 画像変換装置20には、第1の画像が供給される。画像変換装置20に供給される第1の画像は、タップ選択部21及び22に供給される。
 タップ選択部21は、第1の画像を構成する画素を、順次、注目画素に選択する。さらに、タップ選択部21は、注目画素に対応する第2の画像の対応画素(の画素値)を予測するのに用いる第1の画像を構成する画素(の画素値)の幾つかを、予測タップとして選択する。
 具体的には、タップ選択部21は、注目画素の時空間の位置から空間的又は時間的に近い位置にある第1の画像の複数の画素を、予測タップとして選択する。
 タップ選択部22は、注目画素を、幾つかのクラスのうちのいずれかにクラス分けするクラス分類を行うのに用いる第1の画像を構成する画素(の画素値)の幾つかを、クラスタップとして選択する。すなわち、タップ選択部22は、タップ選択部21が予測タップを選択するのと同様にして、クラスタップを選択する。
 なお、予測タップとクラスタップは、同一のタップ構造を有するものであっても良いし、異なるタップ構造を有するものであっても良い。
 タップ選択部21で得られた予測タップは、予測演算部25に供給され、タップ選択部22で得られたクラスタップは、クラス分類部23に供給される。
 クラス分類部23は、一定の規則に従って、注目画素をクラス分類し、その結果得られるクラスに対応するクラスコードを、係数取得部24に供給する。
 すなわち、クラス分類部23は、例えば、タップ選択部22からのクラスタップを用いて、注目画素をクラス分類し、その結果得られるクラスに対応するクラスコードを、係数取得部24に供給する。
 例えば、クラス分類部23は、クラスタップを用いて、注目画素の画像特徴量を求める。さらに、クラス分類部23は、注目画素の画像特徴量に応じて、注目画素をクラス分類し、その結果得られるクラスに対応するクラスコードを、係数取得部24に供給する。
 ここで、クラス分類を行う方法としては、例えば、ADRC(Adaptive Dynamic Range Coding)等を採用することができる。
 ADRCを用いる方法では、クラスタップを構成する画素(の画素値)が、ADRC処理され、その結果得られるADRCコード(ADRC値)にしたがって、注目画素のクラスが決定される。ADRCコードは、注目画素を含む小領域の画像特徴量としての波形パターンを表す。
 なお、LビットADRCにおいては、例えば、クラスタップを構成する画素の画素値の最大値MAXと最小値MINが検出され、DR=MAX-MINを、集合の局所的なダイナミックレンジとし、このダイナミックレンジDRに基づいて、クラスタップを構成する各画素の画素値がLビットに再量子化される。すなわち、クラスタップを構成する各画素の画素値から、最小値MINが減算され、その減算値がDR/2Lで除算(再量子化)される。そして、以上のようにして得られる、クラスタップを構成するLビットの各画素の画素値を、所定の順番で並べたビット列が、ADRCコードとして出力される。したがって、クラスタップが、例えば、1ビットADRC処理された場合には、そのクラスタップを構成する各画素の画素値は、最大値MAXと最小値MINとの平均値で除算され(小数点以下切り捨て)、これにより、各画素の画素値が1ビットとされる(2値化される)。そして、その1ビットの画素値を所定の順番で並べたビット列が、ADRCコードとして出力される。
 なお、クラス分類部23には、例えば、クラスタップを構成する画素の画素値のレベル分布のパターンを、そのままクラスコードとして出力させることも可能である。しかしながら、この場合、クラスタップが、N個の画素の画素値で構成され、各画素の画素値に、Aビットが割り当てられているとすると、クラス分類部23が出力するクラスコードの場合の数は、(2NA通りとなり、画素の画素値のビット数Aに指数的に比例した膨大な数となる。
 したがって、クラス分類部23においては、クラスタップの情報量を、上述のADRC処理や、あるいはベクトル量子化等によって圧縮することにより、クラス分類を行うのが好ましい。
 係数取得部24は、後述する学習によって求められたクラスごとのタップ係数を記憶し、さらに、その記憶したタップ係数のうちの、クラス分類部23から供給されるクラスコードが表すクラスのタップ係数、すなわち、注目画素のクラスのタップ係数を取得する。さらに、係数取得部24は、注目画素のクラスのタップ係数を、予測演算部25に供給する。
 ここで、タップ係数とは、ディジタルフィルタにおける、いわゆるタップにおいて入力データと乗算される係数に相当する係数である。
 予測演算部25は、タップ選択部21が出力する予測タップと、係数取得部24が供給されるタップ係数とを用いて、注目画素に対応する第2の画像の画素(対応画素)の画素値の真値の予測値を求める所定の予測演算を行う。これにより、予測演算部25は、対応画素の画素値(の予測値)、すなわち、第2の画像を構成する画素の画素値を求めて出力する。
 図3は、係数取得部24に記憶されるタップ係数の学習を行う学習装置の構成例を示すブロック図である。
 ここで、例えば、高画質の画像(高画質画像)を第2の画像とするとともに、その高画質画像をLPF(Low Pass Filter)によってフィルタリングする等してその画質(解像度)を低下させた低画質の画像(低画質画像)を第1の画像として、低画質画像から予測タップを選択し、その予測タップとタップ係数を用いて、高画質画像の画素(高画質画素)の画素値を、所定の予測演算によって求める(予測する)ことを考える。
 所定の予測演算として、例えば、線形1次予測演算を採用することとすると、高画質画素の画素値yは、次の線形1次式によって求められることになる。
Figure JPOXMLDOC01-appb-M000001
                           ・・・(1)
 但し、式(1)において、xnは、対応画素としての高画質画素yに対する予測タップを構成する、n番目の低画質画像の画素(以下、適宜、低画質画素という)の画素値を表し、wnは、n番目の低画質画素(の画素値)と乗算されるn番目のタップ係数を表す。なお、式(1)では、予測タップが、N個の低画質画素x1,x2,・・・,xNで構成されることとする。
 ここで、高画質画素の画素値yは、式(1)に示した線形1次式ではなく、2次以上の高次の式によって求めるようにすることも可能である。
 いま、第kサンプルの高画質画素の画素値の真値をykと表すとともに、式(1)によって得られるその真値ykの予測値をyk’と表すと、その予測誤差ekは、次式で表される。
Figure JPOXMLDOC01-appb-M000002
                           ・・・(2)
 いま、式(2)の予測値yk’は、式(1)にしたがって求められるため、式(2)のyk’を、式(1)にしたがって置き換えると、次式が得られる。
Figure JPOXMLDOC01-appb-M000003
                           ・・・(3)
 但し、式(3)において、xn,kは、対応画素としての第kサンプルの高画質画素に対する予測タップを構成するn番目の低画質画素を表す。
 式(3)(又は式(2))の予測誤差ekを0とするタップ係数wnが、高画質画素を予測するのに最適なものとなるが、すべての高画質画素について、そのようなタップ係数wnを求めることは、一般には困難である。
 そこで、タップ係数wnが最適なものであることを表す規範として、例えば、最小自乗法を採用することとすると、最適なタップ係数wnは、次式で表される自乗誤差の総和E(統計的な誤差)を最小にすることで求めることができる。
Figure JPOXMLDOC01-appb-M000004
                           ・・・(4)
 但し、式(4)において、Kは、対応画素としての高画質画素ykと、その高画質画素ykに対する予測タップを構成する低画質画素x1,k,x2,k,・・・,xN,kとのセットのサンプル数(学習用のサンプルの数)を表す。
 式(4)の自乗誤差の総和Eの最小値(極小値)は、式(5)に示すように、総和Eをタップ係数wnで偏微分したものを0とするwnによって与えられる。
Figure JPOXMLDOC01-appb-M000005
                           ・・・(5)
 そこで、上述の式(3)をタップ係数wnで偏微分すると、次式が得られる。
Figure JPOXMLDOC01-appb-M000006
                           ・・・(6)
 式(5)と(6)から、次式が得られる。
Figure JPOXMLDOC01-appb-M000007
                           ・・・(7)
 式(7)のekに、式(3)を代入することにより、式(7)は、式(8)に示す正規方程式で表すことができる。
Figure JPOXMLDOC01-appb-M000008
                           ・・・(8)
 式(8)の正規方程式は、例えば、掃き出し法(Gauss-Jordanの消去法)等を用いることにより、タップ係数wnについて解くことができる。
 式(8)の正規方程式を、クラスごとにたてて解くことにより、最適なタップ係数(ここでは、自乗誤差の総和Eを最小にするタップ係数)wnを、クラスごとに求めることができる。
 図3は、式(8)の正規方程式をたてて解くことによりタップ係数wnを求める学習を行う学習装置の構成例を示している。
 図3において、学習装置30は、教師データ生成部31、生徒データ生成部32、及び、学習部33を有する。
 教師データ生成部31及び生徒データ生成部32には、タップ係数wnの学習に用いられる学習画像が供給される。学習画像としては、例えば、解像度の高い高画質画像を用いることができる。
 教師データ生成部32は、学習画像から、タップ係数の学習の教師(真値)となる教師データ、すなわち、クラス分類適応処理により得たい教師データとして、式(1)による予測演算としての写像の写像先となる教師画像を生成し、学習部33に供給する。ここでは、教師データ生成部32は、例えば、学習画像としての高画質画像を、そのまま教師画像として、学習部33に供給する。
 生徒データ生成部32は、学習画像から、タップ係数の学習の生徒となる生徒データ、すなわち、クラス分類適応処理においてタップ係数との予測演算の対象となる生徒データとして、式(1)による予測演算としての写像による変換対象となる生徒画像を生成し、学習部33に供給する。ここでは、生徒データ生成部32は、例えば、学習画像としての高画質画像をLPF(low Pass Filter)でフィルタリングすることにより、その解像度を低下させることで、低画質画像を生成し、この低画質画像を、生徒画像として、学習部33に供給する。
 学習部33は、生徒データ生成部32からの生徒データとしての生徒画像を構成する画素を、順次、注目画素とし、その注目画素について、図2のタップ選択部21が選択するのと同一のタップ構造の画素を、生徒画像から予測タップとして選択する。さらに、学習部33は、注目画素に対応する教師画像を構成する対応画素と、注目画素の予測タップとを用い、クラスごとに、式(8)の正規方程式をたてて解くことにより、クラスごとのタップ係数を求める。
 図4は、図3の学習部33の構成例を示すブロック図である。
 図4において、学習部33は、タップ選択部41及び42、クラス分類部43、足し込み部44、並びに、係数算出部45を有する。
 生徒画像は、タップ選択部41及び42に供給され、教師画像は、足し込み部44に供給される。
 タップ選択部41は、生徒画像を構成する画素を、順次、注目画素として選択し、その注目画素を表す情報を、必要なブロックに供給する。
 さらに、タップ選択部41は、注目画素について、生徒画像を構成する画素から、図2のタップ選択部21が選択するのと同一の画素を予測タップに選択し、これにより、タップ選択部21で得られるのと同一のタップ構造の予測タップを得て、足し込み部44に供給する。
 タップ選択部42は、注目画素について、生徒画像を構成する画素から、図2のタップ選択部22が選択するのと同一の画素をクラスタップに選択し、これにより、タップ選択部22で得られるのと同一のタップ構造のクラスタップを得て、クラス分類部43に供給する。
 クラス分類部43は、タップ選択部42からのクラスタップを用いて、図2のクラス分類部23と同一のクラス分類を行い、その結果得られる注目画素のクラスに対応するクラスコードを、足し込み部44に出力する。
 足し込み部44は、教師画像を構成する画素から、注目画素に対応する対応画素(の画素値)を取得し、対応画素と、タップ選択部41から供給される注目画素についての予測タップを構成する生徒画像の画素(の画素値)とを対象とした足し込みを、クラス分類部43から供給されるクラスコードごとに行う。
 すなわち、足し込み部44には、教師データとしての教師画像の対応画素yk、生徒データとしての注目画素の予測タップxn,k、注目画素のクラスを表すクラスコードが供給される。
 足し込み部44は、注目画素のクラスごとに、予測タップ(生徒データ)xn,kを用い、式(8)の左辺の行列における生徒データどうしの乗算(xn,kxn',k)と、サメーション(Σ)に相当する演算を行う。
 さらに、足し込み部44は、やはり、注目画素のクラスごとに、予測タップ(生徒データ)xn,kと教師データykを用い、式(8)の右辺のベクトルにおける生徒データxn,k及び教師データykの乗算(xn,kyk)と、サメーション(Σ)に相当する演算を行う。
 すなわち、足し込み部44は、前回、教師データとしての、注目画素に対応する対応画素について求められた式(8)における左辺の行列のコンポーネント(Σxn,kxn',k)と、右辺のベクトルのコンポーネント(Σxn,kyk)を、その内蔵するメモリ(図示せず)に記憶しており、その行列のコンポーネント(Σxn,kxn',k)又はベクトルのコンポーネント(Σxn,kyk)に対して、新たな注目画素に対応する対応画素となった教師データについて、その教師データyk+1及び生徒データxn,k+1を用いて計算される、対応するコンポーネントxn,k+1xn',k+1又はxn,k+1yk+1を足し込む(式(8)のサメーションで表される加算を行う)。
 そして、足し込み部44は、例えば、生徒画像の画素すべてを注目画素として、上述の足し込みを行うことにより、各クラスについて、式(8)に示した正規方程式をたて、その正規方程式を、係数算出部45に供給する。
 係数算出部45は、足し込み部44から供給される各クラスについての正規方程式を解くことにより、各クラスについて、最適なタップ係数wnを求めて出力する。
 図2の画像変換装置20における係数取得部24には、以上のようにして求められたクラスごとのタップ係数wnを記憶させることができる。
 図5は、クラス分類適応処理を行う画像変換装置の第2の構成例を示すブロック図である。
 なお、図中、図2の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図5において、画像変換装置20は、タップ選択部21及び22、クラス分類部23、係数取得部24、並びに、予測演算部25を有する。
 したがって、図5の画像変換装置20は、図2の場合と同様に構成される。
 但し、図5では、係数取得部24は、後述する種係数を記憶する。さらに、図5では、係数取得部24には、外部からパラメータzが供給される。
 係数取得部24は、種係数から、パラメータzに対応する、クラスごとのタップ係数を生成し、そのクラスごとのタップ係数から、クラス分類部23からのクラスのタップ係数を取得して、予測演算部25に供給する。
 ここで、図2では、係数取得部24は、タップ係数そのものを記憶するが、図5では、係数取得部24は、種係数を記憶する。種係数は、パラメータzを与える(決定する)ことによって、タップ係数を生成することができ、かかる観点から、種係数は、タップ係数と同等の情報であるとみなすことができる。本明細書では、タップ係数には、タップ係数そのものの他、そのタップ係数を生成することができる種係数も必要に応じて含まれることとする。
 図6は、係数取得部24に記憶される種係数の学習を行う学習装置の構成例を示すブロック図である。
 ここで、例えば、図3で説明した場合と同様に、高画質の画像(高画質画像)を第2の画像とするとともに、その高画質画像の空間解像度を低下させた低画質の画像(低画質画像)を第1の画像として、低画質画像から予測タップを選択し、その予測タップとタップ係数を用いて、高画質画像の画素である高画質画素の画素値を、例えば、式(1)の線形1次予測演算によって求める(予測する)ことを考える。
 いま、タップ係数wnが、種係数と、パラメータzとを用いた次式によって生成されることとする。
Figure JPOXMLDOC01-appb-M000009
                           ・・・(9)
 但し、式(9)において、βm,nは、n番目のタップ係数wnを求めるのに用いられるm番目の種係数を表す。なお、式(9)では、タップ係数wnが、M個の種係数β1,n,β2,n,・・・,βM,nを用いて求められる。
 ここで、種係数βm,nとパラメータzから、タップ係数wnを求める式は、式(9)に限定されるものではない。
 いま、式(9)におけるパラメータzによって決まる値zm-1を、新たな変数tmを導入して、次式で定義する。
Figure JPOXMLDOC01-appb-M000010
                           ・・・(10)
 式(10)を、式(9)に代入することにより、次式が得られる。
Figure JPOXMLDOC01-appb-M000011
                           ・・・(11)
 式(11)によれば、タップ係数wnは、種係数βm,nと変数tmとの線形1次式によって求められることになる。
 ところで、いま、第kサンプルの高画質画素の画素値の真値をykと表すとともに、式(1)によって得られるその真値ykの予測値をyk’と表すと、その予測誤差ekは、次式で表される。
Figure JPOXMLDOC01-appb-M000012
                           ・・・(12)
 いま、式(12)の予測値yk’は、式(1)にしたがって求められるため、式(12)のyk’を、式(1)にしたがって置き換えると、次式が得られる。
Figure JPOXMLDOC01-appb-M000013
                           ・・・(13)
 但し、式(13)において、xn,kは、対応画素としての第kサンプルの高画質画素に対する予測タップを構成するn番目の低画質画素を表す。
 式(13)のwnに、式(11)を代入することにより、次式が得られる。
Figure JPOXMLDOC01-appb-M000014
                           ・・・(14)
 式(14)の予測誤差ekを0とする種係数βm,nが、高画質画素を予測するのに最適なものとなるが、すべての高画質画素について、そのような種係数βm,nを求めることは、一般には困難である。
 そこで、種係数βm,nが最適なものであることを表す規範として、例えば、最小自乗法を採用することとすると、最適な種係数βm,nは、次式で表される自乗誤差の総和Eを最小にすることで求めることができる。
Figure JPOXMLDOC01-appb-M000015
                           ・・・(15)
 但し、式(15)において、Kは、対応画素としての高画質画素ykと、その高画質画素ykに対する予測タップを構成する低画質画素x1,k,x2,k,・・・,xN,kとのセットのサンプル数(学習用のサンプルの数)を表す。
 式(15)の自乗誤差の総和Eの最小値(極小値)は、式(16)に示すように、総和Eを種係数βm,nで偏微分したものを0とするβm,nによって与えられる。
Figure JPOXMLDOC01-appb-M000016
                           ・・・(16)
 式(13)を、式(16)に代入することにより、次式が得られる。
Figure JPOXMLDOC01-appb-M000017
                           ・・・(17)
 いま、Xi,p,j,qとYi,pを、式(18)と(19)に示すように定義する。
Figure JPOXMLDOC01-appb-M000018
                           ・・・(18)
Figure JPOXMLDOC01-appb-M000019
                           ・・・(19)
 この場合、式(17)は、Xi,p,j,qとYi,pを用いた式(20)に示す正規方程式で表すことができる。
Figure JPOXMLDOC01-appb-M000020
                           ・・・(20)
 式(20)の正規方程式は、例えば、掃き出し法(Gauss-Jordanの消去法)等を用いることにより、種係数βm,nについて解くことができる。
 図5の画像変換装置20においては、多数の高画質画素y1,y2,・・・,yKを教師データとするとともに、各高画質画素ykに対する予測タップを構成する低画質画素x1,k,x2,k,・・・,xN,kを生徒データとして、クラスごとに式(20)の正規方程式をたてて解く学習を行うことにより求められたクラスごとの種係数βm,nが、係数取得部24に記憶される。そして、係数取得部24では、種係数βm,nと、外部から与えられるパラメータzから、式(9)にしたがって、クラスごとのタップ係数wnが生成され、予測演算部25において、そのタップ係数wnと、注目画素についての予測タップを構成する低画質画素(第1の画像の画素)xnを用いて、式(1)が計算されることにより、高画質画素(第2の画像の対応画素)の画素値(に近い予測値)が求められる。
 図6は、式(20)の正規方程式をクラスごとにたてて解くことにより、クラスごとの種係数βm,nを求める学習を行う学習装置の構成例を示している。
 なお、図中、図3の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図6において、学習装置30は、教師データ生成部31、パラメータ生成部61、生徒データ生成部62、及び、学習部63を有する。
 したがって、図6の学習装置30は、教師データ生成部31を有する点で、図3の場合と共通する。
 但し、図6の学習装置30は、パラメータ生成部61を新たに有する点で、図3の場合と相違する。さらに、図6の学習装置30は、生徒データ生成部32及び学習部33に代えて、生徒データ生成部62、及び、学習部63がそれぞれ設けられている点で、図3の場合と相違する。
 パラメータ生成部61は、パラメータzが取り得る範囲の幾つかの値を生成し、生徒データ生成部62と学習部63に供給する。
 例えば、パラメータzが取り得る値が0乃至Zの範囲の実数であるとすると、パラメータ生成部61は、例えば、例えば、z=0,1,2,・・・,Zの値のパラメータzを生成し、生徒データ生成部62と学習部63に供給する。
 生徒データ生成部62には、教師データ生成部31に供給されるのと同様の学習画像が供給される。
 生徒データ生成部62は、図3の生徒データ生成部32と同様に、学習画像から生徒画像を生成し、生徒データとして、学習部63に供給する。
 ここで、生徒データ生成部62には、学習画像の他、パラメータzが取り得る範囲の幾つかの値が、パラメータ生成部61から供給される。
 生徒データ生成部62は、学習画像としての高画質画像を、例えば、そこに供給されるパラメータzに対応するカットオフ周波数のLPFによってフィルタリングすることにより、パラメータzの幾つかの値それぞれに対して、生徒画像としての低画質画像を生成する。
 すなわち、生徒データ生成部62では、学習画像としての高画質画像について、Z+1種類の、空間解像度の異なる生徒画像としての低画質画像が生成される。
 なお、ここでは、例えば、パラメータzの値が大きくなるほど、カットオフ周波数の高いLPFを用いて、高画質画像をフィルタリングし、生徒画像としての低画質画像を生成することとする。この場合、値の大きいパラメータzに対する生徒画像としての低画質画像ほど、空間解像度が高い。
 また、生徒データ生成部62では、パラメータzに応じて、学習画像としての高画質画像の水平方向及び垂直方向のうちの一方又は両方向の空間解像度を低下させた生徒画像としての低画質画像を生成することができる。
 さらに、学習画像としての高画質画像の水平方向及び垂直方向のうちの両方向の空間解像度を低下させた生徒画像としての低画質画像を生成する場合には、学習画像としての高画質画像の水平方向及び垂直方向の空間解像度は、それぞれ別個のパラメータ、すなわち、2個のパラメータz及びz'に応じて、別個に低下させることができる。
 この場合、図5の係数取得部24では、外部から2個のパラメータz及びz'が与えられ、その2個のパラメータz及びz'と種係数とを用いて、タップ係数が生成される。
 以上のように、種係数としては、1個のパラメータzの他、2個のパラメータz及びz'、さらには、3個以上のパラメータを用いて、タップ係数を生成することができる種係数を求めることができる。但し、本明細書では、説明を簡単にするため、1個のパラメータzを用いてタップ係数を生成する種係数を例に、説明を行う。
 学習部63は、教師データ生成部31からの教師データとしての教師画像、パラメータ生成部61からのパラメータz、及び、生徒データ生成部62からの生徒データとしての生徒画像を用いて、クラスごとの種係数を求めて出力する。
 図7は、図6の学習部63の構成例を示すブロック図である。
 なお、図中、図4の学習部33と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図7において、学習部63は、タップ選択部41及び42、クラス分類部43、足し込み部71、並びに、係数算出部72を有する。
 したがって、図7の学習部63は、タップ選択部41及び42、並びに、クラス分類部43を有する点で、図4の学習部33と共通する。
 但し、学習部63は、足し込み部44及び係数算出部45に代えて、足し込み部71、及び、係数算出部72をそれぞれ有する点で、学習部33と相違する。
 図7では、タップ選択部41と42は、パラメータ生成部61で生成されるパラメータzに対応して生成された生徒画像(ここでは、パラメータzに対応するカットオフ周波数のLPFを用いて生成された生徒データとしての低画質画像)から、予測タップとクラスタップをそれぞれ選択する。
 足し込み部71は、図6の教師データ生成部31からの教師画像から、注目画素に対応する対応画素を取得し、その対応画素、タップ選択部41から供給される注目画素について構成された予測タップを構成する生徒データ(生徒画像の画素)、及び、その生徒データを生成したときのパラメータzを対象とした足し込みを、クラス分類部43から供給されるクラスごとに行う。
 すなわち、足し込み部71には、注目画素に対応する対応画素としての教師データyk、タップ選択部41が出力する注目画素についての予測タップxi,k(xj,k)、及び、クラス分類部43が出力する注目画素のクラスが供給されるとともに、注目画素についての予測タップを構成する生徒データを生成したときのパラメータzが、パラメータ生成部61から供給される。
 そして、足し込み部71は、クラス分類部43から供給されるクラスごとに、予測タップ(生徒データ)xi,k(xj,k)とパラメータzを用い、式(20)の左辺の行列における、式(18)で定義されるコンポーネントXi,p,j,qを求めるための生徒データ及びパラメータzの乗算(xi,kpxj,kq)と、サメーション(Σ)に相当する演算を行う。なお、式(18)のtpは、式(10)にしたがって、パラメータzから計算される。式(18)のtqも同様である。
 さらに、足し込み部71は、やはり、クラス分類部43から供給されるクラスごとに、予測タップ(生徒データ)xi,k、教師データyk、及び、パラメータzを用い、式(20)の右辺のベクトルにおける、式(19)で定義されるコンポーネントYi,pを求めるための生徒データxi,k、教師データyk、及び、パラメータzの乗算(xi,kpyk)と、サメーション(Σ)に相当する演算を行う。なお、式(19)のtpは、式(10)にしたがって、パラメータzから計算される。
 すなわち、足し込み部71は、前回、教師データとしての、注目画素に対応する対応画素について求められた式(20)における左辺の行列のコンポーネントXi,p,j,qと、右辺のベクトルのコンポーネントYi,pを、その内蔵するメモリ(図示せず)に記憶しており、その行列のコンポーネントXi,p,j,q又はベクトルのコンポーネントYi,pに対して、新たな注目画素に対応する対応画素となった教師データについて、その教師データyk、生徒データxi,k(xj,k)、及びパラメータzを用いて計算される、対応するコンポーネントxi,kpxj,kq又はxi,kpykを足し込む(式(18)のコンポーネントXi,p,j,q又は式(19)のコンポーネントYi,pにおけるサメーションで表される加算を行う)。
 そして、足し込み部71は、0,1,・・・,Zのすべての値のパラメータzにつき、生徒画像の画素すべてを注目画素として、上述の足し込みを行うことにより、各クラスについて、式(20)に示した正規方程式をたて、その正規方程式を、係数算出部72に供給する。
 係数算出部72は、足し込み部71から供給されるクラスごとの正規方程式を解くことにより、各クラスごとの種係数βm,nを求めて出力する。
 ところで、図6の学習装置30では、学習画像としての高画質画像を教師データとするとともに、その高画質画像の空間解像度を、パラメータzに対応して劣化させた低画質画像を生徒データとして、タップ係数wn及び生徒データxnから式(1)の線形1次式で予測される教師データの予測値yの自乗誤差の総和を直接的に最小にする種係数βm,nを求める学習を行うようにしたが、種係数βm,nの学習としては、教師データの予測値yの自乗誤差の総和を、いわば、間接的に最小にする種係数βm,nを求める学習を行うことができる。
 すなわち、学習画像としての高画質画像を教師データとするとともに、その高画質画像を、パラメータzに対応したカットオフ周波数のLPFによってフィルタリングすることにより、その水平解像度及び垂直解像度を低下させた低画質画像を生徒データとして、まず最初に、タップ係数wn及び生徒データxnを用いて式(1)の線形1次予測式で予測される教師データの予測値yの自乗誤差の総和を最小にするタップ係数wnを、パラメータzの値(ここでは、z=0,1,・・・,Z)ごとに求める。そして、そのパラメータzの値ごとに求められたタップ係数wnを教師データとするとともに、パラメータzを生徒データとして、式(11)によって種係数βm,n及び生徒データであるパラメータzに対応する変数tmから予測される教師データとしてのタップ係数wnの予測値の自乗誤差の総和を最小にする種係数βm,nを求める。
 ここで、式(1)の線形1次予測式で予測される教師データの予測値yの自乗誤差の総和Eを最小(極小)にするタップ係数wnは、図3の学習装置30における場合と同様に、式(8)の正規方程式をたてて解くことにより、各クラスについて、パラメータzの値(z=0,1,・・・,Z)ごとに求めることができる。
 ところで、タップ係数は、式(11)に示したように、種係数βm,nと、パラメータzに対応する変数tmとから求められる。そして、いま、この式(11)によって求められるタップ係数を、wn’と表すこととすると、次の式(21)で表される、最適なタップ係数wnと式(11)により求められるタップ係数wn’との誤差enを0とする種係数βm,nが、最適なタップ係数wnを求めるのに最適な種係数となるが、すべてのタップ係数wnについて、そのような種係数βm,nを求めることは、一般には困難である。
Figure JPOXMLDOC01-appb-M000021
                           ・・・(21)
 なお、式(21)は、式(11)によって、次式のように変形することができる。
Figure JPOXMLDOC01-appb-M000022
                           ・・・(22)
 そこで、種係数βm,nが最適なものであることを表す規範として、例えば、やはり、最小自乗法を採用することとすると、最適な種係数βm,nは、次式で表される自乗誤差の総和Eを最小にすることで求めることができる。
Figure JPOXMLDOC01-appb-M000023
                           ・・・(23)
 式(23)の自乗誤差の総和Eの最小値(極小値)は、式(24)に示すように、総和Eを種係数βm,nで偏微分したものを0とするβm,nによって与えられる。
Figure JPOXMLDOC01-appb-M000024
                           ・・・(24)
 式(22)を、式(24)に代入することにより、次式が得られる。
Figure JPOXMLDOC01-appb-M000025
                           ・・・(25)
 いま、Xi,j,とYiを、式(26)と(27)に示すように定義する。
Figure JPOXMLDOC01-appb-M000026
                           ・・・(26)
Figure JPOXMLDOC01-appb-M000027
                           ・・・(27)
 この場合、式(25)は、Xi,jとYiを用いた式(28)に示す正規方程式で表すことができる。
Figure JPOXMLDOC01-appb-M000028
                           ・・・(28)
 式(28)の正規方程式も、例えば、掃き出し法等を用いることにより、種係数βm,nについて解くことができる。
 図8は、図6の学習部63の他の構成例を示すブロック図である。
 すなわち、図8は、式(28)の正規方程式をたてて解くことにより種係数βm,nを求める学習を行う学習部63の構成例を示している。
 なお、図中、図4又は図7の場合と対応するについては、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図8の学習部63は、タップ選択部41及び42、クラス分類部43、係数算出部45、足し込み部81及び82、並びに、係数算出部83を有する。
 したがって、図8の学習部63は、タップ選択部41及び42、クラス分類部43、並びに、係数算出部45を有する点で、図4の学習部33と共通する。
 但し、図8の学習部63は、足し込み部44に代えて、足し込み部81を有する点、並びに、足し込み部82及び係数算出部83を新たに有する点で、図4の学習部33と相違する。
 足し込み部81には、クラス分類部43が出力する注目画素のクラスと、パラメータ生成部61が出力するパラメータzが供給される。足し込み部81は、教師データ生成部31からの教師画像のうちの、注目画素に対応する対応画素としての教師データと、タップ選択部41から供給される注目画素についての予測タップを構成する生徒データとを対象とした足し込みを、クラス分類部43から供給されるクラスごとに、かつ、パラメータ生成部61が出力するパラメータzの値ごとに行う。
 すなわち、足し込み部81には、教師データyk、予測タップxn,k、注目画素のクラス、及び、予測タップxn,kを構成する生徒画像を生成したときのパラメータzが供給される。
 足し込み部81は、注目画素のクラスごとに、かつ、パラメータzの値ごとに、予測タップ(生徒データ)xn,kを用い、式(8)の左辺の行列における生徒データどうしの乗算(xn,kxn',k)と、サメーション(Σ)に相当する演算を行う。
 さらに、足し込み部81は、注目画素のクラスごとに、かつ パラメータzの値ごとに、予測タップ(生徒データ)xn,kと教師データykを用い、式(8)の右辺のベクトルにおける生徒データxn,k及び教師データykの乗算(xn,kyk)と、サメーション(Σ)に相当する演算を行う。
 すなわち、足し込み部81は、前回、教師データとしての、注目画素に対応する対応画素について求められた式(8)における左辺の行列のコンポーネント(Σxn,kxn',k)と、右辺のベクトルのコンポーネント(Σxn,kyk)を、その内蔵するメモリ(図示せず)に記憶しており、その行列のコンポーネント(Σxn,kxn',k)又はベクトルのコンポーネント(Σxn,kyk)に対して、新たな注目画素に対応する対応画素となった教師データについて、その教師データyk+1及び生徒データxn,k+1を用いて計算される、対応するコンポーネントxn,k+1xn',k+1又はxn,k+1yk+1を足し込む(式(8)のサメーションで表される加算を行う)。
 そして、足し込み部81は、生徒画像の画素すべてを注目画素として、上述の足し込みを行うことにより、各クラスについて、パラメータzの各値ごとに、式(8)に示した正規方程式をたて、その正規方程式を、係数算出部45に供給する。
 したがって、足し込み部81は、図4の足し込み部44と同様に、各クラスについて、式(8)の正規方程式をたてる。但し、足し込み部81は、さらに、パラメータzの各値ごとにも、式(8)の正規方程式をたてる点で、図4の足し込み部44と異なる。
 係数算出部45は、足し込み部81から供給される各クラスについての、パラメータzの値ごとの正規方程式を解くことにより、各クラスについて、パラメータzの値ごとの最適なタップ係数wnを求め、足し込み部82に供給する。
 足し込み部82は、パラメータ生成部61(図6)から供給されるパラメータz(に対応する変数tm)と、係数算出部45から供給される最適なタップ係数wnを対象とした足し込みを、クラスごとに行う。
 すなわち、足し込み部82は、パラメータ生成部61から供給されるパラメータzから式(10)によって求められる変数ti(tj)を用い、式(28)の左辺の行列における、式(26)で定義されるコンポーネントXi,jを求めるためのパラメータzに対応する変数ti(tj)どうしの乗算(tij)と、サメーション(Σ)に相当する演算を、クラスごとに行う。
 ここで、コンポーネントXi,jは、パラメータzによってのみ決まるものであり、クラスとは関係がないので、コンポーネントXi,jの計算は、実際には、クラスごとに行う必要はなく、1回行うだけで済む。
 さらに、足し込み部82は、パラメータ生成部61から供給されるパラメータzから式(10)によって求められる変数tiと、係数算出部45から供給される最適なタップ係数wnとを用い、式(28)の右辺のベクトルにおける、式(27)で定義されるコンポーネントYiを求めるためのパラメータzに対応する変数ti及び最適なタップ係数wnの乗算(tiwn)と、サメーション(Σ)に相当する演算を、クラスごとに行う。
 足し込み部82は、各クラスごとに、式(26)で表されるコンポーネントXi,jと、式(27)で表されるコンポーネントYiを求めることにより、各クラスについて、式(28)の正規方程式をたて、その正規方程式を、係数算出部83に供給する。
 係数算出部83は、足し込み部82から供給されるクラスごとの式(28)の正規方程式を解くことにより、各クラスごとの種係数βm,nを求めて出力する。
 図5の係数取得部24には、以上のようにして求められたクラスごとの種係数βm,nを記憶させることができる。
 なお、種係数の学習においても、タップ係数の学習における場合と同様に、第1の画像に対応する生徒データと、第2の画像に対応する教師データとする画像の選択の仕方によって、種係数としては、各種の画像変換処理を行う種係数を得ることができる。
 すなわち、上述の場合には、学習画像を、そのまま第2の画像に対応する教師データとするとともに、その学習画像の空間解像度を劣化させた低画質画像を、第1の画像に対応する生徒データとして、種係数の学習を行うようにしたことから、種係数としては、第1の画像を、その空間解像度を向上させた第2の画像に変換する空間解像度創造処理としての画像変換処理を行う種係数を得ることができる。
 この場合、図5の画像変換装置20では、画像の水平解像度及び垂直解像度を、パラメータzに対応する解像度に向上させることができる。
 また、例えば、高画質画像を教師データとするとともに、その教師データとしての高画質画像に対して、パラメータzに対応するレベルのノイズを重畳した画像を生徒データとして、種係数の学習を行うことにより、種係数としては、第1の画像を、そこに含まれるノイズを除去(低減)した第2の画像に変換するノイズ除去処理としての画像変換処理を行う種係数を得ることができる。この場合、図5の画像変換装置20では、パラメータzに対応するS/Nの画像(パラメータzに対応する強度のノイズ除去を施した画像)を得ることができる。
 なお、上述の場合には、タップ係数wnを、式(9)に示したように、β1,nz0+β2,nz1+・・・+βM,nzM-1で定義し、この式(9)によって、水平及び垂直方向の空間解像度を、いずれも、パラメータzに対応して向上させるためのタップ係数wnを求めるようにしたが、タップ係数wnとしては、水平解像度と垂直解像度を、独立のパラメータzxとzyに対応して、それぞれ独立に向上させるものを求めるようにすることも可能である。
 すなわち、タップ係数wnを、式(9)に代えて、例えば、3次式β1,nzx 0zy 0+β2,nzx 1zy 0+β3,nzx 2zy 0+β4,nzx 3zy 0+β5,nzx 0zy 1+β6,nzx 0zy 2+β7,nzx 0zy 3+β8,nzx 1zy 1+β9,nzx 2zy 1+β10,nzx 1zy 2で定義するとともに、式(10)で定義した変数tmを、式(10)に代えて、例えば、t1=zx 0zy 0,t2=zx 1zy 0,t3=zx 2zy 0,t4=zx 3zy 0,t5=zx 0zy 1,t6=zx 0zy 2,t7=zx 0zy 3,t8=zx 1zy 1,t9=zx 2zy 1,t10=zx 1zy 2で定義する。この場合も、タップ係数wnは、最終的には、式(11)で表すことができ、したがって、図6の学習装置30において、パラメータzxとzyに対応して、教師データの水平解像度と垂直解像度をそれぞれ劣化させた画像を、生徒データとして用いて学習を行って、種係数βm,nを求めることにより、水平解像度と垂直解像度を、独立のパラメータzxとzyに対応して、それぞれ独立に向上させるタップ係数wnを求めることができる。
 その他、例えば、水平解像度と垂直解像度それぞれに対応するパラメータzxとzyに加えて、さらに、時間方向の解像度に対応するパラメータztを導入することにより、水平解像度、垂直解像度、時間解像度を、独立のパラメータzx,zy,ztに対応して、それぞれ独立に向上させるタップ係数wnを求めることが可能となる。
 さらに、図6の学習装置30において、パラメータzxに対応して教師データの水平解像度及び垂直解像度を劣化させるとともに、パラメータzyに対応して教師データにノイズを付加した画像を、生徒データとして用いて学習を行って、種係数βm,nを求めることにより、パラメータzxに対応して水平解像度及び垂直解像度を向上させるとともに、パラメータzyに対応してノイズ除去を行うタップ係数wnを求めることができる。
 <符号化装置11の第1の構成例>
 図9は、図1の符号化装置11の第1の構成例を示すブロック図である。
 図9において、符号化装置11は、A/D変換部101、並べ替えバッファ102、演算部103、直交変換部104、量子化部105、可逆符号化部106、及び、蓄積バッファ107を有する。さらに、符号化装置11は、逆量子化部108、逆直交変換部109、演算部110、クラス分類適応フィルタ111、フレームメモリ112、選択部113、イントラ予測部114、動き予測補償部115、予測画像選択部116、及び、レート制御部117を有する。
 A/D変換部101は、アナログ信号の元画像を、ディジタル信号の元画像にA/D変換し、並べ替えバッファ102に供給して記憶させる。
 並べ替えバッファ102は、元画像のフレームを、GOP(Group Of Picture)に応じて、表示順から符号化(復号)順に並べ替え、演算部103、イントラ予測部114、動き予測補償部115、及び、クラス分類適応フィルタ111に供給する。
 演算部103は、並べ替えバッファ102からの元画像から、予測画像選択部116を介してイントラ予測部114又は動き予測補償部115から供給される予測画像を減算し、その減算により得られる残差(予測残差)を、直交変換部104に供給する。
 例えば、インター符号化が行われる画像の場合、演算部103は、並べ替えバッファ102から読み出された元画像から、動き予測補償部115から供給される予測画像を減算する。
 直交変換部104は、演算部103から供給される残差に対して、離散コサイン変換やカルーネン・レーベ変換等の直交変換を施す。なお、この直交変換の方法は任意である。直交変換部104は、直交交換により得られる変換係数を量子化部105に供給する。
 量子化部105は、直交変換部104から供給される変換係数を量子化する。量子化部105は、レート制御部117から供給される符号量の目標値(符号量目標値)に基づいて量子化パラメータQPを設定し、変換係数の量子化を行う。なお、この量子化の方法は任意である。量子化部105は、量子化された変換係数を可逆符号化部106に供給する。
 可逆符号化部106は、量子化部105において量子化された変換係数を所定の可逆符号化方式で符号化する。変換係数は、レート制御部117の制御の下で量子化されているので、可逆符号化部106の可逆符号化により得られる符号化データの符号量は、レート制御部117が設定した符号量目標値となる(又は符号量目標値に近似する)。
 また、可逆符号化部106は、符号化装置11での予測符号化に関する符号化情報のうちの、必要な符号化情報を、各ブロックから取得する。
 ここで、符号化情報としては、例えば、イントラ予測やインター予測の予測モード、動きベクトル等の動き情報、符号量目標値、量子化パラメータQP、ピクチャタイプ(I,P,B)、CU(Coding Unit)やCTU(Coding Tree Unit)の情報等がある。
 例えば、予測モードは、イントラ予測部114や動き予測補償部115から取得することができる。また、例えば、動き情報は、動き予測補償部115から取得することができる。
 可逆符号化部106は、符号化情報を取得する他、クラス分類適応フィルタ111から、そのクラス分類適応フィルタ111でのクラス分類適応処理に関するフィルタ情報を取得する。図9では、フィルタ情報には、クラスごとのタップ係数が含まれる。
 可逆符号化部106は、符号化情報及びフィルタ情報を、任意の可逆符号化方式で符号化し、符号化データのヘッダ情報の一部とする(多重化する)。
 可逆符号化部106は、符号化データを、蓄積バッファ107を介して伝送する。したがって、可逆符号化部106は、符号化データ、ひいては、符号化データに含まれる符号化情報やフィルタ情報を伝送する伝送部として機能する。
 可逆符号化部106の可逆符号化方式としては、例えば、可変長符号化又は算術符号化等を採用することができる。可変長符号化としては、例えば、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)等がある。算術符号化としては、例えば、CABAC(Context-Adaptive Binary Arithmetic Coding)等がある。
 蓄積バッファ107は、可逆符号化部106から供給される符号化データを、一時的に蓄積する。蓄積バッファ107に蓄積された符号化データは、所定のタイミングで読み出されて伝送される。
 量子化部105において量子化された変換係数は、可逆符号化部106に供給される他、逆量子化部108にも供給される。逆量子化部108は、量子化された変換係数を、量子化部105による量子化に対応する方法で逆量子化する。この逆量子化の方法は、量子化部105による量子化処理に対応する方法であればどのような方法であってもよい。逆量子化部108は、逆量子化により得られる変換係数を、逆直交変換部109に供給する。
 逆直交変換部109は、逆量子化部108から供給される変換係数を、直交変換部104による直交変換処理に対応する方法で逆直交変換する。この逆直交変換の方法は、直交変換部104による直交変換処理に対応する方法であればどのようなものであってもよい。逆直交変換された出力(復元された残差)は、演算部110に供給される。
 演算部110は、逆直交変換部109から供給される逆直交変換結果、すなわち、復元された残差に、予測画像選択部116を介してイントラ予測部114又は動き予測補償部115から供給される予測画像を加算し、その加算結果を、復号途中の復号途中画像として出力する。
 演算部110が出力する復号途中画像は、クラス分類適応フィルタ111又はフレームメモリ112に供給される。
 クラス分類適応フィルタ111は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてとして機能するフィルタで、クラス分類適応処理によって、ILF処理を行う。
 クラス分類適応フィルタ111には、演算部110から復号途中画像が供給される他、並べ替えバッファ102から、復号途中画像に対応する元画像が供給されるとともに、符号化装置11の各ブロックから必要な符号化情報が供給される。
 クラス分類適応フィルタ111は、演算部110からの復号途中画像に相当する生徒画像と、並べ替えバッファ102からの元画像に相当する教師画像とを用いるとともに、必要に応じて、符号化情報を用いて、クラスごとのタップ係数を求める学習を行う。
 すなわち、クラス分類適応フィルタ111は、例えば、演算部110からの復号途中画像そのものを生徒画像とするとともに、並べ替えバッファ102からの元画像そのものを教師画像として、必要に応じて、符号化情報を用いて、クラスごとのタップ係数を求める学習を行う。クラスごとのタップ係数は、フィルタ情報として、クラス分類適応フィルタ111から可逆符号化部106に供給される。
 さらに、クラス分類適応フィルタ111は、演算部110からの復号途中画像を第1の画像として、クラスごとのタップ係数を用いたクラス分類適応処理(による画像変換)を、符号化情報を必要に応じて用いて行うことで、第1の画像としての復号途中画像を、元画像に相当する第2の画像としてのフィルタ後画像に変換して(フィルタ後画像を生成して)出力する。
 クラス分類適応フィルタ111が出力するフィルタ後画像は、フレームメモリ112に供給される。
 ここで、クラス分類適応フィルタ111では、上述のように、復号途中画像を生徒画像とするとともに、元画像を教師画像として、学習が行われ、その学習により得られるタップ係数を用いて、復号途中画像をフィルタ後画像に変換するクラス分類適応処理が行われる。したがって、クラス分類適応フィルタ111で得られるフィルタ後画像は、極めて元画像に近い画像になる。
 フレームメモリ112は、演算部110から供給される復号途中画像、又は、クラス分類適応フィルタ111から供給されるフィルタ後画像を、局所復号された復号画像として一時記憶する。フレームメモリ112に記憶された復号画像は、必要なタイミングで、予測画像の生成に用いられる参照画像として、選択部113に供給される。
 例えば、フレームメモリ112に記憶される復号画像としての、演算部110から供給される復号途中画像、及び、クラス分類適応フィルタ111から供給されるフィルタ後画像のうちの、復号途中画像は、イントラ予測の参照画像として用いられる。また、フィルタ後画像は、インター予測の参照画像として用いられる。
 選択部113は、フレームメモリ112から供給される参照画像の供給先を選択する。例えば、イントラ予測部114においてイントラ予測が行われる場合、選択部113は、フレームメモリ112から供給される参照画像を、イントラ予測部114に供給する。また、例えば、動き予測補償部115においてインター予測が行われる場合、選択部113は、フレームメモリ112から供給される参照画像を、動き予測補償部115に供給する。
 イントラ予測部114は、並べ替えバッファ102から供給される元画像と、選択部113を介してフレームメモリ112から供給される参照画像とを用いて、基本的に、PU(Prediction Unit)を処理単位として、イントラ予測(画面内予測)を行う。イントラ予測部114は、所定のコスト関数に基づいて、最適なイントラ予測モードを選択し、その最適なイントラ予測モードで生成された予測画像を、予測画像選択部116に供給する。また、上述したように、イントラ予測部114は、コスト関数に基づいて選択されたイントラ予測モードを示す予測モードを、可逆符号化部106等に適宜供給する。
 動き予測補償部115は、並べ替えバッファ102から供給される元画像と、選択部113を介してフレームメモリ112から供給される参照画像とを用いて、基本的にPUを処理単位として、動き予測(インター予測)を行う。さらに、動き予測補償部115は、動き予測により検出される動きベクトルに応じて動き補償を行い、予測画像を生成する。動き予測補償部115は、あらかじめ用意された複数のインター予測モードで、インター予測を行い、予測画像を生成する。
 動き予測補償部115は、複数のインター予測モードそれぞれについて得られた予測画像の所定のコスト関数に基づいて、最適なインター予測モードを選択する。さらに、動き予測補償部115は、最適なインター予測モードで生成された予測画像を、予測画像選択部116に供給する。
 また、動き予測補償部115は、コスト関数に基づいて選択されたインター予測モードを示す予測モードや、そのインター予測モードで符号化された符号化データを復号する際に必要な動きベクトル等の動き情報等を、可逆符号化部106に供給する。
 予測画像選択部116は、演算部103及び110に供給する予測画像の供給元(イントラ予測部114又は動き予測補償部115)を選択し、その選択した方の供給元から供給される予測画像を、演算部103及び110に供給する。
 レート制御部117は、蓄積バッファ107に蓄積された符号化データの符号量に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部105の量子化動作のレートを制御する。すなわち、レート制御部117は、蓄積バッファ107のオーバーフロー及びアンダーフローが生じないように、符号化データの目標符号量を設定し、量子化部105に供給する。
 <クラス分類適応フィルタ111の構成例>
 図10は、図9のクラス分類適応フィルタ111の構成例を示すブロック図である。
 図10において、クラス分類適応フィルタ111は、画像変換装置131及び学習装置132を有する。
 画像変換装置131には、演算部110(図9)から復号途中画像が供給されるとともに、学習装置132からクラスごとのタップ係数が供給される。さらに、画像変換装置131には、符号化情報が供給される。
 画像変換装置131は、復号途中画像を第1の画像として、クラスごとのタップ係数を用いたクラス分類適応処理による画像変換を行うことで、第1の画像としての復号途中画像を、元画像に相当する第2の画像としてのフィルタ後画像に変換して(フィルタ後画像を生成して)、フレームメモリ112(図9)に供給する。
 なお、画像変換装置131は、クラス分類適応処理において、クラス分類を、必要に応じて、符号化情報を用いて行う。
 学習装置132には、並べ替えバッファ102(図9)から元画像が供給されるとともに、演算部110(図9)から復号途中画像が供給される。さらに、学習装置132には、符号化情報が供給される。
 学習装置132は、復号途中画像を生徒データとするとともに、元画像を教師データとして、クラスごとのタップ係数を求める学習(以下、タップ係数学習ともいう)を行う。
 さらに、学習装置132は、タップ係数学習により得られるクラスごとのタップ係数を、フィルタ情報として、画像変換装置131及び可逆符号化部106(図9)に供給する。
 なお、学習装置132は、タップ係数学習において、クラス分類を、必要に応じて、符号化情報を用いて行う。
 <画像変換装置131の構成例>
 図11は、図10の画像変換装置131の構成例を示すブロック図である。
 なお、図中、図2の画像変換装置20と対応する部分については、同一の符号を付してあり、その説明は、適宜省略する。
 図11において、画像変換装置131は、タップ選択部21ないし予測演算部25を有する。
 したがって、画像変換装置131は、図2の画像変換装置20と同様に構成される。
 但し、画像変換装置131では、復号途中画像が、第1の画像として、タップ選択部21及び22に供給され、予測演算部25では、フィルタ後画像が第2の画像として求められる。
 また、画像変換装置131では、符号化情報が、クラス分類部23に供給され、クラス分類部23が、クラスタップや符号化情報を必要に応じて用いてクラス分類を行う。
 さらに、画像変換装置131では、学習装置132で得られたフィルタ情報としてのクラスごとのタップ係数が、係数取得部24に供給されて記憶される。
 図12は、図11のクラス分類部23で行われるクラス分類の例を説明する図である。
 クラス分類部23では、クラスタップとしての復号途中画像の画素の画素値から得られる注目画素の画像特徴量、及び、注目画素の符号化情報のうちの一方、又は、両方を用いて、クラス分類を行うことができる。
 クラス分類に用いる画像特徴量としては、例えば、ADRC処理により得られるADRCコード(ADRC値)を採用することができる。
 図12は、1ビットADRC処理の例を説明する図である。
 ここで、復号途中画像の画素を、画素番号を付して特定することとし、画素番号iの画素を画素iとも記載する。
 図12では、復号途中画像において、画素0が注目画素になっている。
 そして、注目画素としての画素0を中心とする十字型の9画素がクラスタップを構成している。
 すなわち、画素0、画素0の上に隣接する2画素である画素1及び画素2、画素0の左に隣接する2画素である画素3及び画素4、画素0の右に隣接する2画素である画素5及び画素6、並びに、画素0の下に隣接する2画素である画素7及び画素8の、合計で9画素0ないし8が、注目画素である画素0のクラスタップを構成している。
 クラス分類部23は、クラスタップを構成する画素0ないし8の画素値の最大値MAXと最小値MINを検出し、その最大値MAXと最小値MINとの間の中間値(平均値)を、量子化の閾値として求める。
 さらに、クラス分類部23は、画素0ないし8の画素値を、閾値と比較し、画素値が閾値以上である場合には、量子化値1に量子化し、画素値が閾値以上でない場合には、量子化値0に量子化する。
 そして、クラス分類部23は、画素0ないし8の画素値の量子化値を、例えば、画素番号順に並べたコードを、ADRCコードとして求める。
 いま、説明を簡単にするため、クラス分類部23が、画像特徴量としてのADRCコードのみを用いて、注目画素(画素0)のクラス分類を行うこととすると、クラス分類部23は、注目画素を、例えば、ADRCコードに対応するクラスコードのクラスにクラス分類する。
 ここで、例えば、クラスコードが10進数で表されることとすると、ADRCコードに対応するクラスコードとは、ADRCコードを2進数とみなして、その2進数のADRCコードを10進数に変換した値を意味する。
 この場合、例えば、画素0ないし8の画素値の量子化値を画素番号順に並べたADRCコードが、000011100であれば、そのADRCコード000011100に対応するクラスコードは、28になる。
 なお、図12では、最大値MAXと最小値MINとの間の1つの値を、量子化の閾値とする1ビットADRC処理を行うこととしたが、複数の値を量子化の閾値とすることで、クラスタップを構成する各画素の画素値を、複数であるNビットに量子化するNビットADRC処理を行うことができる。
 また、クラスタップが、9個の画素0ないし8で構成され、1ビットADRC処理によるクラス分類を行う場合、クラス数は、29クラスになるが、クラス分類により得られるクラス数は、縮退することができる。
 例えば、1ビットADRC処理によるクラス分類を行う場合、その1ビットADRC処理により得られるADRCコードとしての2進数と、その2進数のビットを反転した反転2進数とについては、同一のクラスにクラス分類する、クラス数の縮退を行うことにより、クラス数は、縮退を行わない場合の1/2にすることができる。
 例えば、9個の画素0ないし8で構成されるクラスタップを対象とした1ビットADRC処理によるクラス分類を行う場合、クラス数の縮退を行うことにより、クラス数を、29-1クラスにすることができる。
 なお、ADRCについては、例えば、特許第4240322号公報に記載されている。
 ここで、クラスタップは、図12に示したような、注目画素を中心とする十字型の9画素に限定されるものではない。
 すなわち、クラスタップとしては、例えば、注目画素を中心とする3×3画素の正方形状の9画素や、注目画素を中心とする、水平方向及び垂直方向を対角線とする菱形状の13画素を採用することができる。
 さらに、クラスタップは、注目画素のフレーム(ピクチャ)である注目フレームの他、注目画素に隣接するフレーム等の注目フレーム以外のフレームの画素を含めて構成することができる。
 また、図12では、クラス分類に用いる画像特徴量として、クラスタップから得られるADRCコードを採用することとしたが、画像特徴量としては、その他、例えば、クラスタップを構成する画素の画素値のダイナミックレンジや差分絶対値和等のADRCコード以外の画像特徴量を採用することができる。
 クラス分類に用いる画像特徴量として、例えば、クラスタップを構成する画素の画素値のダイナミックレンジを採用する場合、例えば、ダイナミックレンジを、1以上の閾値で閾値処理することにより、注目画素を2以上のクラスのうちのいずれかのクラスにクラス分類することができる。
 さらに、クラス分類は、ADRCコード等の1つの画像特徴量ではなく、例えば、ADRCコード及びダイナミックレンジ等の複数の画像特徴量を用いて行うことができる。
 また、クラス分類は、注目画素の画像特徴量の他、注目画素の符号化情報を用いて行うことができる。
 クラス分類に用いる注目画素の符号化情報としては、例えば、注目画素を含むCUやPU等のブロック内における注目画素の位置を表すブロック位相や、注目画素を含むピクチャのピクチャタイプ、注目画素を含むPUの量子化パラメータQP等を採用することができる。
 クラス分類に用いる注目画素の符号化情報として、ブロック位相を採用する場合には、例えば、注目画素がブロックの境界の画素であるか否かによって、注目画素をクラス分類することができる。
 また、クラス分類に用いる注目画素の符号化情報として、ピクチャタイプを採用する場合には、例えば、注目画素を含むピクチャが、Iピクチャ、Pピクチャ、及び、Bピクチャのうちのいずれであるかによって、注目画素をクラス分類することができる。
 さらに、クラス分類に用いる注目画素の符号化情報として、量子化パラメータQPを採用する場合には、例えば、量子化の粗さ(細かさ)によって、注目画素をクラス分類することができる。
 また、クラス分類は、画像特徴量又は符号化情報を用いて行う他、例えば、画像特徴量及び符号化情報の両方を用いて行うことができる。
 <学習装置132の構成例>
 図13は、図10の学習装置132の構成例を示すブロック図である。
 なお、図中、図3及び図4の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図13において、学習装置132は、学習部33を有する。学習部33は、タップ選択部41及び42、クラス分類部43、足し込み部44、並びに、係数算出部45を有する。
 したがって、図13の学習装置132は、学習部33を有する点で、図3の場合と共通する。さらに、学習装置132は、学習部33が、タップ選択部41ないし係数算出部45を有する点で、図4の場合と共通する。
 但し、図13の学習装置132は、教師データ生成部31及び生徒データ生成部32を有しない点で、図3の場合と相違する。
 さらに、図13の学習装置132は、学習部33において、クラス分類部43に、符号化情報が供給される点で、図4の場合と相違する。
 図13の学習装置132では、クラス分類部43が、クラスタップや符号化情報を必要に応じて用いて、図11のクラス分類部23と同様のクラス分類を行う。
 また、図13の学習装置132では、復号途中画像を生徒データとして用いるとともに、その復号途中画像に対応する元画像を教師データとして用いて、タップ係数の学習が行われる。
 そして、図13の学習装置132では、係数算出部45で求められたクラスごとのタップ係数が、画像変換装置131(図10)に供給されるとともに、フィルタ情報として、可逆符号化部106(図9)に供給される。
 なお、タップ係数の学習は、元画像の符号化と並列して行うこともできるし、元画像の符号化とは関係なく、前もって行っておくこともできる。
 タップ係数の学習を、元画像の符号化とは関係なく、前もって行う場合には、複数のカテゴリの元画像を教師データとして用いて、カテゴリごとに、タップ係数の学習を行うことができる。そして、複数のカテゴリのタップ係数のうちの、例えば、所定のコスト関数を最小にするカテゴリのタップ係数を、画像変換装置131でのクラス分類適応処理に用いるとともに、フィルタ情報として、可逆符号化部106から伝送することができる。
 <符号化処理>
 図14は、図9の符号化装置11の符号化処理の例を説明するフローチャートである。
 なお、図14に示す符号化処理の各ステップの順番は、説明の便宜上の順番であり、実際の符号化処理の各ステップは、適宜、並列的に、必要な順番で行われる。後述する符号化処理についても、同様である。
 符号化装置11において、クラス分類適応フィルタ111の学習装置132(図10)は、そこに供給される復号途中画像を生徒データとするとともに、その復号途中画像に対応する元画像を教師データとして、適宜、学習を行っている。そして、学習装置132は、ステップS11において、フィルタ情報としてのタップ係数の更新タイミングであるかどうかを判定する。
 ここで、フィルタ情報の更新タイミングは、例えば、1以上のフレーム(ピクチャ)ごとや、1以上のシーケンスごと、1以上のスライスごと等のように、あらかじめ決めておくことができる。
 また、例えば、所定のコスト関数が閾値以下にならなくなったときを、フィルタ情報の更新タイミングとして採用することができる。
 ステップS11において、フィルタ情報の更新タイミングでないと判定された場合、処理は、ステップS12及びS13をスキップして、ステップS14に進む。
 また、ステップS11において、フィルタ情報の更新タイミングであると判定された場合、処理は、ステップS12に進み、画像変換装置131は、フィルタ情報としてのタップ係数を、学習装置132から供給される最新のフィルタ情報としてのタップ係数に更新する。
 すなわち、画像変換装置131(図11)は、係数取得部24に、学習装置132から供給される最新のタップ係数を記憶させる。
 そして、処理は、ステップS12からステップS13に進み、可逆符号化部106は、学習装置132から供給される最新のフィルタ情報を、伝送対象に設定して、処理は、ステップS14に進む。伝送対象に設定された最新のフィルタ情報は、後述するステップS27において符号化データに含められて伝送される。
 ステップS14以降では、元画像の予測符号化処理が行われる。
 すなわち、ステップS14において、A/D変換部101は、元画像をA/D変換し、並べ替えバッファ102に供給して、処理は、ステップS15に進む。
 ステップS15において、並べ替えバッファ102は、A/D変換部101からの元画像を記憶し、符号化順に並べ替えて出力し、処理は、ステップS16に進む。
 ステップS16では、イントラ予測部114は、イントラ予測モードのイントラ予測処理を行い、処理は、ステップS17に進む。ステップS17において、動き予測補償部115は、インター予測モードでの動き予測や動き補償を行うインター動き予測処理を行い、処理は、ステップS18に進む。
 イントラ予測部114のイントラ予測処理、及び、動き予測補償部115のインター動き予測処理では、各種の予測モードのコスト関数が演算されるとともに、予測画像が生成される。
 ステップS18では、予測画像選択部116は、イントラ予測部114及び動き予測補償部115で得られる各コスト関数に基づいて、最適な予測モードを決定する。そして、予測画像選択部116は、イントラ予測部114により生成された予測画像と、動き予測補償部115により生成された予測画像のうちの最適な予測モードの予測画像を選択して出力し、処理は、ステップS18からステップS19に進む。
 ステップS19では、演算部103は、並べ替えバッファ102が出力する元画像である符号化対象の対象画像と、予測画像選択部116が出力する予測画像との残差を演算し、直交変換部104に供給して、処理は、ステップS20に進む。
 ステップS20では、直交変換部104は、演算部103からの残差を直交変換し、その結果得られる変換係数を、量子化部105に供給して、処理は、ステップS21に進む。
 ステップS21では、量子化部105は、直交変換部104からの変換係数を量子化し、その量子化により得られる量子化係数を、可逆符号化部106及び逆量子化部108に供給して、処理は、ステップS22に進む。
 ステップS22では、逆量子化部108は、量子化部105からの量子化係数を逆量子化し、その結果得られる変換係数を、逆直交変換部109に供給して、処理は、ステップS23に進む。ステップS23では、逆直交変換部109は、逆量子化部108からの変換係数を逆直交変換し、その結果得られる残差を、演算部110に供給して、処理は、ステップS24に進む。
 ステップS24では、演算部110は、逆直交変換部109からの残差と、予測画像選択部116が出力する予測画像とを加算し、演算部103での残差の演算の対象となった元画像に対応する復号途中画像を生成する。演算部110は、復号途中画像を、クラス分類適応フィルタ111又はフレームメモリ112に供給し、処理は、ステップS24からステップS25に進む。
 演算部110からクラス分類適応フィルタ111に、復号途中画像が供給される場合、ステップS25において、クラス分類適応フィルタ111は、演算部110からの復号途中画像に、ILFの処理としてのクラス分類適応処理(クラス分類適応フィルタ処理)を施す。復号途中画像に、クラス分類適応処理が施されることにより、復号途中画像をILFでフィルタリングする場合よりも元画像に近いフィルタ後画像が求められる。
 クラス分類適応フィルタ111は、クラス分類適応処理により得られるフィルタ後画像を、フレームメモリ112に供給して、処理は、ステップS25からステップS26に進む。
 ステップS26では、フレームメモリ112は、演算部110から供給される復号途中画像、又は、クラス分類適応フィルタ111から供給されるフィルタ後画像を、復号画像として記憶し、処理は、ステップS27に進む。フレームメモリ112に記憶された復号画像は、ステップS17やS18で、予測画像を生成する元となる参照画像として使用される。
 ステップS27では、可逆符号化部106は、量子化部105からの量子化係数を符号化する。さらに、可逆符号化部106は、量子化部105での量子化に用いられた量子化パラメータQPや、イントラ予測部114でのイントラ予測処理で得られた予測モード、動き予測補償部115でのインター動き予測処理で得られた予測モードや動き情報等の符号化情報を必要に応じて符号化し、符号化データに含める。
 また、可逆符号化部106は、ステップS13で伝送対象に設定されたフィルタ情報を符号化し、符号化データに含める。そして、可逆符号化部106は、符号化データを、蓄積バッファ107に供給し、処理は、ステップS27からステップS28に進む。
 ステップS28において、蓄積バッファ107は、可逆符号化部106からの符号化データを蓄積し、処理は、ステップS29に進む。蓄積バッファ107に蓄積された符号化データは、適宜読み出されて伝送される。
 ステップS29では、レート制御部117は、蓄積バッファ107に蓄積されている符号化データの符号量(発生符号量)に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部105の量子化動作のレートを制御し、符号化処理は終了する。
 図15は、図14のステップS25で行われるクラス分類適応処理の例を説明するフローチャートである。
 クラス分類適応フィルタ111の画像変換装置131(図11)では、ステップS41において、タップ選択部21が、演算部110から供給される復号途中画像(としてのブロック)の画素のうちの、まだ、注目画素とされていない画素の1つを、注目画素として選択し、処理は、ステップS42に進む。
 ステップS42において、タップ選択部21及び22が、演算部110から供給される復号途中画像から、注目画素についての予測タップ及びクラスタップとする画素を、それぞれ選択する。そして、タップ選択部21は、予測タップを予測演算部25に供給し、タップ選択部22は、クラスタップを、クラス分類部23に供給する。
 その後、処理は、ステップS42からステップS43に進み、クラス分類部23は、注目画素についてのクラスタップ、及び、注目画素についての符号化情報を用いて、注目画素のクラス分類を行う。
 すなわち、クラス分類では、ステップS51において、クラス分類部23は、タップ選択部22からのクラスタップを構成する画素から、例えば、ADRCコード(ADRC値)等の画像特徴量を抽出(算出)し、処理は、ステップS52に進む。
 ステップS52では、クラス分類部23は、注目画素についての必要な符号化情報を取得し、あらかじめ決められた規則に従って、符号化情報を、情報コードに変換して、処理は、ステップS53に進む。
 すなわち、例えば、符号化情報が、Iピクチャ、Pピクチャ、又は、Bピクチャを表すピクチャタイプである場合、Iピクチャ、Pピクチャ、及び、Bピクチャには、例えば、情報コード0,1,2がそれぞれ割り当てられており、その割り当てに従い、注目画素のピクチャタイプが、情報コードに変換される。
 ステップS53では、クラス分類部23は、画像特徴量及び情報コードから、注目画素のクラスを表すクラスコードを生成し、係数取得部24に供給して、ステップS43のクラス分類を終了する。
 例えば、画像特徴量がADRCコードである場合には、クラス分類部23は、画像特徴量としてのADRCコードの上位ビットに、情報コードを付加して得られる数値を、注目画素のクラスを表すクラスコードとして生成する。
 ステップS43のクラス分類が終了すると、処理は、ステップS44に進み、係数取得部24が、クラス分類部23から供給されるクラスコードが表すクラスのタップ係数を取得し、予測演算部25に供給して、処理は、ステップS45に進む。
 ステップS45では、予測演算部25は、タップ選択部21からの予測タップと、係数取得部24からのタップ係数とを用いて、式(1)予測演算を行う。これにより、予測演算部25は、注目画素に対応する元画像の対応画素の画素値の予測値を、フィルタ後画像の画素値として求め、処理は、ステップS46に進む。
 ステップS46では、タップ選択部21が、演算部110からの復号途中画像(としてのブロック)の画素の中に、まだ、注目画素としていない画素があるかどうかを判定する。ステップS46において、まだ、注目画素としていない画素があると判定された場合、処理は、ステップS41に戻り、以下、同様の処理が繰り返される。
 また、ステップS46において、まだ、注目画素とされていない画素がないと判定された場合、処理は、ステップS47に進み、予測演算部25は、演算部110からの復号途中画像(としてのブロック)に対して得られた画素値で構成されるフィルタ後画像を、フレームメモリ112(図9)に供給する。そして、クラス分類適応処理は終了され、処理はリターンする。
 <復号装置12の第1の構成例>
 図16は、図1の復号装置12の第1の構成例を示すブロック図である。
 図16において、復号装置12は、蓄積バッファ201、可逆復号部202、逆量子化部203、逆直交変換部204、演算部205、クラス分類適応フィルタ206、並べ替えバッファ207、及び、D/A変換部208を有する。また、復号装置12は、フレームメモリ210、選択部211、イントラ予測部212、動き予測補償部213、及び、選択部214を有する。
 蓄積バッファ201は、符号化装置11から伝送されてくる符号化データを一時蓄積し、所定のタイミングにおいて、その符号化データを、可逆復号部202に供給する。
 可逆復号部202は、蓄積バッファ201からの符号化データを取得する。したがって、可逆復号部202は、符号化装置11から伝送されてくる符号化データ、ひいては、符号化データに含まれる符号化情報やフィルタ情報を受け取る受け取り部として機能する。
 可逆復号部202は、蓄積バッファ201から取得した符号化データを、図9の可逆符号化部106の符号化方式に対応する方式で復号する。
 そして、可逆復号部202は、符号化データの復号により得られる量子化係数を、逆量子化部203に供給する。
 また、可逆復号部202は、符号化データの復号により、符号化情報やフィルタ情報が得られた場合には、必要な符号化情報を、イントラ予測部212や動き予測補償部213その他の必要なブロックに供給する。
 さらに、可逆復号部202は、符号化情報及びフィルタ情報を、クラス分類適応フィルタ206に供給する。
 逆量子化部203は、可逆復号部202からの量子化係数を、図9の量子化部105の量子化方式に対応する方式で逆量子化し、その逆量子化により得られる変換係数を、逆直交変換部204に供給する。
 逆直交変換部204は、逆量子化部203から供給される変換係数を、図9の直交変換部104の直交変換方式に対応する方式で逆直交変換し、その結果得られる残差を、演算部205に供給する。
 演算部205には、逆直交変換部204から残差が供給される他、選択部214を介して、イントラ予測部212又は動き予測補償部213から予測画像が供給される。
 演算部205は、逆直交変換部204からの残差と、選択部214からの予測画像とを加算し、復号途中画像を生成して、クラス分類適応フィルタ206、又は、並べ替えバッファ207及びフレームメモリ210に供給する。例えば、復号途中画像のうちの、イントラ予測に用いる参照画像となる復号途中画像は、並べ替えバッファ207及びフレームメモリ210に供給され、他の復号途中画像は、クラス分類適応フィルタ206に供給される。
 クラス分類適応フィルタ206は、クラス分類適応フィルタ111と同様に、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてとして機能するフィルタで、クラス分類適応処理によって、ILF(の)処理を行う。
 すなわち、クラス分類適応フィルタ206は、演算部205からの復号途中画像を第1の画像として、可逆復号部202からのフィルタ情報としてのクラスごとのタップ係数を用いたクラス分類適応処理(による画像変換)を、可逆復号部202からの符号化情報を必要に応じて用いて行うことで、第1の画像としての復号途中画像を、元画像に相当する第2の画像としてのフィルタ後画像に変換して(フィルタ後画像を生成して)出力する。
 クラス分類適応フィルタ206が出力するフィルタ後画像は、クラス分類適応フィルタ111が出力するフィルタ後画像と同様の画像であり、並べ替えバッファ207及びフレームメモリ210に供給される。
 並べ替えバッファ207は、演算部205から供給される復号途中画像や、クラス分類適応フィルタ206から供給されるフィルタ後画像を、復号画像として一時記憶し、復号画像のフレーム(ピクチャ)の並びを、符号化(復号)順から表示順に並べ替え、D/A変換部208に供給する。
 D/A変換部208は、並べ替えバッファ207から供給される復号画像をD/A変換し、図示せぬディスプレイに出力して表示させる。
 フレームメモリ210は、演算部205から供給される復号途中画像や、クラス分類適応フィルタ206から供給されるフィルタ後画像を、復号画像として一時記憶する。さらに、フレームメモリ210は、所定のタイミングにおいて、又は、イントラ予測部212や動き予測補償部213等の外部の要求に基づいて、復号画像を、予測画像の生成に用いる参照画像として、選択部211に供給する。
 選択部211は、フレームメモリ210から供給される参照画像の供給先を選択する。選択部211は、イントラ符号化された画像を復号する場合、フレームメモリ210から供給される参照画像をイントラ予測部212に供給する。また、選択部211は、インター符号化された画像を復号する場合、フレームメモリ210から供給される参照画像を動き予測補償部213に供給する。
 イントラ予測部212は、可逆復号部202から供給される符号化情報に含まれる予測モードに従い、図9のイントラ予測部114において用いられたイントラ予測モードで、フレームメモリ210から選択部211を介して供給される参照画像を用いてイントラ予測を行う。そして、イントラ予測部212は、イントラ予測により得られる予測画像を、選択部214に供給する。
 動き予測補償部213は、可逆復号部202から供給される符号化情報に含まれる予測モードに従い、図9の動き予測補償部115において用いられたインター予測モードで、フレームメモリ210から選択部211を介して供給される参照画像を用いてインター予測を行う。インター予測は、可逆復号部202から供給される符号化情報に含まれる動き情報等を必要に応じて用いて行われる。
 動き予測補償部213は、インター予測により得られる予測画像を、選択部214に供給する。
 選択部214は、イントラ予測部212から供給される予測画像、又は、動き予測補償部213から供給される予測画像を選択し、演算部205に供給する。
 <クラス分類適応フィルタ206の構成例>
 図17は、図16のクラス分類適応フィルタ206の構成例を示すブロック図である。
 図17において、クラス分類適応フィルタ206は、画像変換装置231を有する。
 画像変換装置231には、演算部205(図16)から復号途中画像が供給されるとともに、可逆復号部202からフィルタ情報としてのクラスごとのタップ係数、及び、符号化情報が供給される。
 画像変換装置231は、図10の画像変換装置131と同様に、復号途中画像を第1の画像として、クラスごとのタップ係数を用いたクラス分類適応処理による画像変換を行うことで、第1の画像としての復号途中画像を、元画像に相当する第2の画像としてのフィルタ後画像に変換して(フィルタ後画像を生成して)、並べ替えバッファ207及びフレームメモリ210(図16)に供給する。
 なお、画像変換装置231は、クラス分類適応処理において、図10の画像変換装置131と同様に、クラス分類を、必要に応じて、符号化情報を用いて行う。
 <画像変換装置231の構成例>
 図18は、図17の画像変換装置231の構成例を示すブロック図である。
 図18において、画像変換装置231は、タップ選択部241及び242、クラス分類部243、係数取得部244、並びに、予測演算部245を有する。
 タップ選択部241ないし予測演算部245は、画像変換装置131(図11)を構成するタップ選択部21ないし予測演算部25とそれぞれ同様に構成される。
 すなわち、タップ選択部241及び242には、演算部205(図16)から復号途中画像が供給される。
 タップ選択部241は、演算部205からの復号途中画像を第1の画像として、復号途中画像の画素を、順次、注目画素に選択する。
 さらに、タップ選択部241は、注目画素について、復号途中画像から、図11のタップ選択部21で選択される予測タップと同一構造の予測タップを選択し、予測演算部245に供給する。
 タップ選択部242は、注目画素について、演算部205からの復号途中画像を第1の画像として、復号途中画像の画素から、図11のタップ選択部22で選択されるクラスタップと同一構造のクラスタップを選択し、クラス分類部243に供給する。
 クラス分類部243には、タップ選択部242からクラスタップが供給される他、可逆復号部202(図16)から、符号化情報が供給される。
 クラス分類部243は、タップ選択部242からのクラスタップ、及び、可逆復号部202からの符号化情報を用いて、図11のクラス分類部23と同一のクラス分類を行い、注目画素のクラス(を表すクラスコード)を、係数取得部244に供給する。
 係数取得部244には、クラス分類部243から注目画素のクラスが供給される他、可逆復号部202からフィルタ情報としてのクラスごとのタップ係数が供給される。
 係数取得部244は、可逆復号部202からフィルタ情報としてのクラスごとのタップ係数が供給されると、記憶しているタップ係数を、可逆復号部202からタップ係数に更新する。
 さらに、係数取得部244は、記憶しているタップ係数から、クラス分類部243からの注目画素のクラスのタップ係数を取得し、予測演算部245に供給する。
 予測演算部245は、タップ選択部241からの予測タップと、係数取得部244からのタップ係数とを用いて、式(1)の予測演算を行い、復号途中画像の注目画素に対応する元画像の対応画素の画素値の予測値を、第2の画像としてのフィルタ後画像の画素の画素値として求めて出力する。
 <復号処理>
 図19は、図16の復号装置12の復号処理の例を説明するフローチャートである。
 なお、図19に示す復号処理の各ステップの順番は、説明の便宜上の順番であり、実際の復号処理の各ステップは、適宜、並列的に、必要な順番で行われる。後述する復号処理についても、同様である。
 復号処理では、ステップS61において、蓄積バッファ201は、符号化装置11から伝送されてくる符号化データを一時蓄積し、適宜、可逆復号部202に供給して、処理は、ステップS62に進む。
 ステップS62では、可逆復号部202は、蓄積バッファ201から供給される符号化データを受け取って復号し、その復号により得られる量子化係数を、逆量子化部203に供給する。
 また、可逆復号部202は、符号化データの復号により、符号化情報やフィルタ情報が得られた場合、必要な符号化情報を、イントラ予測部212や動き予測補償部213その他の必要なブロックに供給する。
 さらに、可逆復号部202は、符号化情報及びフィルタ情報を、クラス分類適応フィルタ206に供給する。
 その後、処理は、ステップS62からステップS63に進み、クラス分類適応フィルタ206は、可逆復号部202からフィルタ情報が供給されたかどうかを判定する。
 ステップS63において、フィルタ情報が供給されていないと判定された場合、処理は、ステップS64をスキップして、ステップS65に進む。
 また、ステップS63において、フィルタ情報が供給されたと判定された場合、処理は、ステップS64に進み、クラス分類適応フィルタ206の画像変換装置231(図18)は、係数取得部244に、可逆復号部202からのフィルタ情報としてのクラスごとのタップ係数を取得させ、記憶しているタップ係数を、可逆復号部202からのタップ係数に更新させる。
 そして、処理は、ステップS64からステップS65に進み、逆量子化部203は、可逆復号部202からの量子化係数を逆量子化し、その結果得られる変換係数を、逆直交変換部204に供給して、処理は、ステップS66に進む。
 ステップS66では、逆直交変換部204は、逆量子化部203からの変換係数を逆直交変換し、その結果得られる残差を、演算部205に供給して、処理は、ステップS67に進む。
 ステップS67では、イントラ予測部212又は動き予測補償部213が、フレームメモリ210から選択部211を介して供給される参照画像、及び、可逆復号部202から供給される符号化情報を用いて、予測画像を生成する予測処理を行う。そして、イントラ予測部212又は動き予測補償部213は、予測処理により得られる予測画像を、選択部214に供給し、処理は、ステップS67からステップS68に進む。
 ステップS68では、選択部214は、イントラ予測部212又は動き予測補償部213から供給される予測画像を選択し、演算部205に供給して、処理は、ステップS69に進む。
 ステップS69では、演算部205は、逆直交変換部204からの残差と、選択部214からの予測画像を加算することにより、復号途中画像を生成する。そして、演算部205は、復号途中画像を、クラス分類適応フィルタ206、又は、並べ替えバッファ207及びフレームメモリ210に供給して、処理は、ステップS69からステップS70に進む。
 演算部205からクラス分類適応フィルタ206に、復号途中画像が供給される場合、ステップS70において、クラス分類適応フィルタ206は、演算部205からの復号途中画像に、ILFの処理としてのクラス分類適応処理を施す。復号途中画像に、クラス分類適応処理が施されることにより、符号化装置11の場合と同様に、復号途中画像をILFでフィルタリングする場合よりも元画像に近いフィルタ後画像が求められる。
 クラス分類適応フィルタ206は、クラス分類適応処理により得られるフィルタ後画像を、並べ替えバッファ207及びフレームメモリ210に供給して、処理は、ステップS70からステップS71に進む。
 ステップS71では、並べ替えバッファ207は、演算部205から供給される復号途中画像、又は、クラス分類適応フィルタ206から供給されるフィルタ後画像を、復号画像として一時記憶する。さらに、並べ替えバッファ207は、記憶した復号画像を、表示順に並べ替えて、D/A変換部208に供給し、処理は、ステップS71からステップS72に進む。
 ステップS72では、D/A変換部208は、並べ替えバッファ207からの復号画像をD/A変換し、処理は、ステップS73に進む。D/A変換後の復号画像は、図示せぬディスプレイに出力されて表示される。
 ステップS73では、フレームメモリ210は、演算部205から供給される復号途中画像、又は、クラス分類適応フィルタ206から供給されるフィルタ後画像を、復号画像として記憶し、復号処理は終了する。フレームメモリ210に記憶された復号画像は、ステップS67の予測処理で、予測画像を生成する元となる参照画像として使用される。
 図20は、図19のステップS70で行われるクラス分類適応処理の例を説明するフローチャートである。
 クラス分類適応フィルタ206の画像変換装置231(図18)では、ステップS81において、タップ選択部241が、演算部205から供給される復号途中画像(としてのブロック)の画素のうちの、まだ、注目画素とされていない画素の1つを、注目画素として選択し、処理は、ステップS82に進む。
 ステップS82において、タップ選択部241及び242が、演算部205から供給される復号途中画像から、注目画素についての予測タップ及びクラスタップとする画素を、それぞれ選択する。そして、タップ選択部241は、予測タップを予測演算部245に供給し、タップ選択部242は、クラスタップを、クラス分類部243に供給する。
 その後、処理は、ステップS82からステップS83に進み、クラス分類部243は、タップ選択部242から供給される注目画素についてのクラスタップ、及び、可逆復号部202から供給される注目画素についての符号化情報を用いて、図15で説明した場合と同様の、注目画素のクラス分類を行う。
 クラス分類部243は、クラス分類により得られる注目画素のクラスを表すクラスコードを生成し、係数取得部244に供給して、処理は、ステップS83からステップS84に進む。
 ステップS84では、係数取得部244が、クラス分類部243から供給されるクラスコードが表すクラスのタップ係数を取得し、予測演算部245に供給して、処理は、ステップS85に進む。
 ステップS85では、予測演算部245は、タップ選択部241からの予測タップと、係数取得部244からのタップ係数とを用いて、式(1)予測演算を行う。これにより、予測演算部245は、注目画素に対応する元画像の対応画素の画素値の予測値を、フィルタ後画像の画素値として求め、処理は、ステップS86に進む。
 ステップS86では、タップ選択部241が、演算部205からの復号途中画像(としてのブロック)の画素の中に、まだ、注目画素としていない画素があるかどうかを判定する。ステップS86において、まだ、注目画素としていない画素があると判定された場合、処理は、ステップS81に戻り、以下、同様の処理が繰り返される。
 また、ステップS86において、まだ、注目画素とされていない画素がないと判定された場合、処理は、ステップS87に進み、予測演算部245は、演算部205からの復号途中画像(としてのブロック)に対して得られた画素値で構成されるフィルタ後画像を、並べ替えバッファ207及びフレームメモリ210(図9)に供給する。そして、クラス分類適応処理は終了され、処理はリターンする。
 以上のように、符号化装置11及び復号装置12では、ILF処理を、クラス分類適応処理によって行うので、ILFの処理結果よりも元画像に近いフィルタ後画像を得ることができる。その結果、復号画像のS/Nを大きく改善することができる。さらに、元画像に近いフィルタ後画像を得ることができることから、残差が小さくなり、タップ係数をオーバーヘッドとして符号化データに含めても、特に、4kや8k等と呼ばれるデータ量の多い高解像度の元画像については、圧縮効率を、大きく改善することができる。
 ここで、図9等で説明したように、ILFとしては、例えば、DF,SAO、及び、ALFがある。
 DFは、量子化パラメータQPや、ブロックの境界の画素であるか否かによって、フィルタ強度を制御することで、ブロックノイズ(歪み)を低減する。
 しかしながら、DFでは、ブロックに適用することができるフィルタ強度が、2種類と少ない。さらに、DFでは、フィルタ強度の制御の単位がスライスであり、画素ごとにフィルタ強度を制御することができない。
 SAOでは、エッジ周辺のノイズを低減するか、又は、DC補正を行うかのフィルタモードが、CTUごとに切り替えられ、オフセット値を画素ごとに判定することで、リンギングの低減やDC補正が行われる。
 しかしながら、SAOでは、フィルターモートの切り替えを、画素ごとに行うことが困難である。さらに、SAOでは、ノイズの低減と、DC補正とのうちのいずれかの処理しか行うことができず、両方の処理を同時に行うことができない。
 ALFは、エッジの方向とアクティビティを用いて、15のクラスに分類するクラス分類を行い、クラスごとに、統計的に最適に作られたフィルタ係数によるフィルタ処理を行う。
 しかしながら、ALFでは、フィルタ処理の単位が4×4画素単位であるために、画素ごとに、その画素の周辺の波形パターンやブロック位相に応じた細かいフィルタ強度の制御を行うことができない。さらに、ALFでは、クラス分類の対象となるクラス数が15クラスと少ないため、かかる点からも、細かいフィルタ強度の制御を行うことができない。
 これに対して、クラス分類適応処理では、画素ごとに、ALFの15クラスよりも多いクラス数を対象としてクラス分類を行い、学習により得られる統計的に最適なタップ係数を用いて、復号途中画像をフィルタ後画像に画像変換するフィルタ処理を行うので、既存のILFよりも画質(S/N)を、大きく改善することができる。
 特に、クラス分類適応処理では、画素ごとに、その画素の周辺の波形パターンを表現する画像特徴量としてのADRCコードや、ダイナミックレンジ等の画像特徴量と、量子化パラメータQPや、ピクチャタイプ、ブロック位相等の符号化情報とを用いてクラス分類を行うことで、フィルタ後画像として、元画像に極めて近い画像を得ることができる。その結果、予測符号化において、ILFを用いない場合は勿論、ILFを用いる場合と比較しても、画像のS/N及び圧縮効率を、大きく改善することができる。
 <クラス分類適応処理と、ILFのうちのALFとの相違>
 図21は、クラス分類適応処理と、ILFのうちのALFとの、クラス分類、及び、フィルタ処理の相違を説明する図である。
 ALFでは、4×4画素の小ブロックが、エッジの方向とアクティビティを用いて、15クラスのうちのいずれかにクラス分類される。
 さらに、ALFでは、4×4画素の小ブロックが、その4×4画素の小ブロックのクラスのフィルタ係数を用いてフィルタ処理される。
 また、ALFのフィルタ処理では、フィルタ処理の対象の対象画素に対するフィルタ係数を中心として、点対称のフィルタ係数が用いられる。
 すなわち、ALFのフィルタ処理のフィルタ係数は、対象画素、対象画素の左に隣接する2画素、対象画像の右に隣接する2画素、対象画素の上に隣接する2画素、対象画素の下に隣接する2画素、対象画素の左上に隣接する1画素、対象画素の左下に隣接する1画素、対象画素の右上に隣接する1画素、及び、対象画素の右下に隣接する1画素の、合計で13画素に対する13個のフィルタ係数で構成される。
 そして、対象画素の上に隣接する2画素のうちの遠い方の画素に対するフィルタ係数と、対象画素の下に隣接する2画素のうちの遠い方の画素に対するフィルタ係数とは、同一の係数C0とされる。
 対象画素の左上に隣接する画素に対するフィルタ係数と、対象画像の右下に隣接する画素に対するフィルタ係数とは、同一の係数C1とされる。
 対象画素の上に隣接する2画素のうちの近い方の画素に対するフィルタ係数と、対象画素の下に隣接する2画素のうちの近い方の画素に対するフィルタ係数とは、同一の係数C2とされる。
 対象画素の左下に隣接する画素に対するフィルタ係数と、対象画像の右上に隣接する画素に対するフィルタ係数とは、同一の係数C3とされる。
 対象画素の左に隣接する2画素のうちの遠い方の画素に対するフィルタ係数と、対象画素の右に隣接する2画素のうちの遠い方の画素に対するフィルタ係数とは、同一の係数C4とされる。
 対象画素の左に隣接する2画素のうちの近い方の画素に対するフィルタ係数と、対象画素の右に隣接する2画素のうちの近い方の画素に対するフィルタ係数とは、同一の係数C5とされる。
 対象画素に対するフィルタ係数は、係数C6とされる。
 以上のように、ALFでは、4×4画素の小ブロックが、15クラスという少ないクラスにクラス分類され、さらに、クラスごとのフィルタ係数が、点対称になっているので、フィルタ処理の効果が、大きく制限される。
 さらに、ALFでは、4×4画素の小ブロックのフィルタ処理に、同一のフィルタ係数が用いられるので、その4×4画素のすべてに、同一の(平均的な)フィルタ処理の効果が生じる。
 一方、クラス分類適応処理では、クラス分類が、画素ごとに行われ、したがって、フィルタ処理としての式(1)の予測演算も、画素ごとに行われる。
 また、クラス分類適応処理では、エッジの方向やアクティビティに制限されず、クラスタップから得られる画像特徴量や、符号化情報を用いて、注目画素の周辺の波形パターンや、ブロック内の注目画素の位置によって、注目画素をクラス分類することができる。
 さらに、クラス分類のクラス数は、クラスタップとする画素の数や、クラス分類に用いる符号化情報の情報コード(図15)への変換の仕方等によって、タップ係数のデータ量と、復号画像(フィルタ後画像)のS/N及び圧縮効率とを考慮して、任意の数に設計することができる。
 例えば、いま説明を簡単にするために、クラスタップを8画素で構成し、1ビットADRC処理により得られる波形パターンを表すADRCコードでクラス分類を行うこととすると、クラス数は256クラスになる。
 また、クラス分類適応処理では、フィルタ処理としての式(1)の予測演算に用いるタップ係数について、ALFのような点対称の制約や、フィルタ係数を13個とする制約はなく、そのため、フィルタ後画像の、元画像に対する統計的な誤差を、ALFよりも小さくするタップ係数を、学習により求めることができる。
 さらに、クラス分類適応処理では、例えば、タップ係数のデータ量と、復号画像のS/N及び圧縮効率とを考慮して、タップ係数の数、すなわち、予測タップを構成する画素の数や、予測タップの構造を設計することができる。
 また、クラス分類適応処理では、注目画素のフレームだけではなく、そのフレームの前後のフレームの画素も含めて、予測タップを構成することができる。
 以上のように、クラス分類適応処理では、画素ごとに、クラス分類、及び、フィルタ処理としての式(1)の予測演算が行われるので、画素ごとに、その画素に適したフィルタ処理の効果を生じさせることができる。
 その結果、例えば、エッジやテクスチャを潰しすぎずに、NR(Noise Reduction)の効果を生じさせることや、リンギングを抑制することができる。
 また、クラス分類適応処理では、例えば、クラス分類を、ブロック位相等の符号化情報を用いて行うことで、注目画素がブロックの境界の画素であるかどうかによって、NRの効果を調整することができる。
 さらに、クラス分類適応処理では、例えば、注目画素のフレームだけではなく、そのフレームの前後のフレームの画素も含めて、予測タップを構成することで、動きぼけ等の動きに起因する画質の劣化を改善することができる。
 図22は、クラス分類適応処理と、ILFのうちのALFとのクラス分類、及び、フィルタ処理の相違により生じる効果の相違を説明する図である。
 ALFでは、4×4画素の小ブロックごとに、エッジ及びアクティビティを用いて、クラス分類が行われ、そのクラス分類により得られるクラスのフィルタ係数を用いて、4×4画素の小ブロックの各画素のフィルタ処理が行われる。
 そのため、エッジ部分と平坦部分とが混在する場合に、平坦部分のノイズを除去する一方で、エッジ部分を鈍らせる(ディテールを潰す)ことや、逆に、エッジ部分を維持するが、平坦部分のノイズを十分に除去することができないことがある。
 さらに、ALFでは、符号化処理(復号処理)の対象となる符号化ブロック(PUやCU等)内における画素の位置(ブロック位相)を考慮したクラス分類は行われないため、符号化ブロックの境界の画素で生じるブロック歪みを除去するフィルタ係数と、境界以外の位置の画素に生じる、ブロック歪み以外のノイズを除去するフィルタ係数とが、異なるクラスのフィルタ係数として用意されない。
 そのため、ブロック歪みが生じている画素に、そのブロック歪みを除去するのに適切なフィルタ処理が施されるとは限らない。同様に、ブロック歪み以外のノイズが生じている画素に、そのノイズを除去するのに適切なフィルタ処理が施されるとは限らない。
 これに対して、クラス分類適応処理では、画素ごとに、クラスタップから得られる画像特徴量としての波形パターンによってクラス分類を行い、そのクラス分類により得られるクラスのタップ係数を用いて、フィルタ処理としての式(1)の予測演算を、画素ごとに行うことができる。
 したがって、エッジ部分の画素については、そのエッジ部分を維持し(ディテールを残し)、平坦部分の画素については、ノイズを十分に除去することができる。
 さらに、クラス分類適応処理では、画素ごとに、符号化情報としてのブロック位相によってクラス分類を行い、そのクラス分類により得られるクラスのタップ係数を用いて、フィルタ処理としての式(1)の予測演算を、画素ごとに行うことができる。
 したがって、ブロック歪みが生じている画素に、そのブロック歪みを除去するのに適切なフィルタ処理を施すとともに、ブロック歪み以外のノイズが生じている画素に、そのノイズを除去するのに適切なフィルタ処理を施すことができる。
 ここで、本技術では、クラス分類適応処理が、符号化装置11及び復号装置12内で扱われる復号途中画像を対象として行われるので、ブロック位相、さらには、ブロック位相を特定するのに必要な符号化ブロックに関する情報(例えば、符号化ブロックのサイズや、符号化ブロックの境界等)は、符号化処理や復号処理において得ることができる。
 なお、例えば、特許第4770711号公報には、MPEGデコーダが出力する復号画像を、ブロック位相を用いたクラス分類適応処理により高画質化する技術が記載されている。特許第4770711号公報に記載の技術では、MPEGデコーダの外部で、MPEGデコーダが出力する復号画像を対象としたクラス分類適応処理が行われるため、符号化ブロックに関する情報は、決め打ちするか、又は、何らかの方法で検出する必要がある。
 図23は、クラス分類適応処理の予測タップ及びクラスタップと、ILFのうちのALFのフィルタ係数に対する画素との相違を説明する図である。
 ALFの13個のフィルタ係数は、いま符号化の対象になっている1フレームである注目フレーム内の画素に対するフィルタ係数であり、他のフレームの画素に対するフィルタ係数は、存在しない。
 したがって、ALFのフィルタ処理は、注目フレーム内の画素(の画素値)のみを用いて行われるので、動きぼけ等の動きに起因する画質の劣化を改善することは困難である。
 一方、クラス分類適応処理では、予測タップやクラスタップには、注目フレーム(図23では、フレームT)内の画素の他、他のフレーム(図23では、フレームT-1やフレームT+1)の画素を含めることができる。
 すなわち、クラス分類適応処理では、注目フレームの注目画素から、動きベクトルだけ移動した位置の、注目フレームに隣接する隣接フレームの画素や、その画素の周辺の画素等を、予測タップやクラスタップに含めることができる。
 したがって、クラス分類適応処理では、注目フレームの画素と、隣接フレームの画素ととから、クラスタップや予測タップを構成し、クラス分類や、フィルタ処理としての式(1)の予測演算を行うことができるので、動きぼけ等の動きに起因する画質の劣化を改善することができる。
 <タップ係数の削減>
 図24は、学習により得られるタップ係数を削減する削減方法の例を説明する図である。
 タップ係数は、符号化データのオーバーヘッドとなるため、フィルタ後画像が元画像に極めて近い画像となるタップ係数が得られても、タップ係数のデータ量が多いと、圧縮効率の改善の妨げとなる。
 そこで、学習により得られるタップ係数(の数)は、必要に応じて削減することができる。
 例えば、図12に示したように、注目画素を中心とする十字型の9画素で、クラスタップを構成し、1ビットADRC処理によるクラス分類を行う場合には、例えば、最上位ビット(注目画素のADRC結果)が1のADRCコードについて、各ビットの反転を行うことにより、クラス数を、512=29クラスから256=28クラスに縮退することができる。クラスの縮退後の256クラスでは、9画素のクラスタップ(の1ビットADRC処理)のADRCコードをそのままクラスコードとする場合に比較して、タップ係数のデータ量が1/2に削減される。
 さらに、クラスタップを構成する十字型の9画素のうちの、上下方向、左右方向、又は、斜め方向に線対称の位置関係にある画素のADRC結果が同一のクラスどうしを、1つのクラスにまとめるクラスの縮退を行うことにより、クラス数は、100クラスにすることができる。この場合、100クラスのタップ係数のデータ量は、256クラスのタップ係数のデータ量の約39%になる。
 また、以上に加えて、クラスタップを構成する十字型の9画素のうちの、点対称の位置関係にある画素のADRC結果が同一のクラスどうしを、1つのクラスにまとめるクラスの縮退を行うことにより、クラス数は、55クラスにすることができる。この場合、55クラスのタップ係数のデータ量は、256クラスのタップ係数のデータ量の約21%になる。
 タップ係数の削減は、以上のように、クラスの縮退によって行う他、タップ係数自体を削減することによって行うこともできる。
 すなわち、例えば、予測タップ及び符号化ブロックが同一の画素で構成される場合には、ブロック位相に基づいて、タップ係数自体を削減することができる。
 例えば、予測タップ及び符号化ブロックが、4×4画素で構成される場合には、予測タップの左上の2×2画素と左右方向に線対称の位置関係にある右上の2×2画素、上下方向に線対称の位置関係にある左下の2×2画素、及び、点対称の位置関係にある右下の2×2画素のタップ係数として、左上の2×2画素それぞれのタップ係数を位置関係に応じて配置し直したタップ係数を採用することができる。この場合、予測タップを構成する4×4画素に対する16個のタップ係数を、左上の2×2画素に対する4個のタップ係数に削減することができる。
 また、予測タップの上半分の4×2画素と上下方向に線対称の位置関係にある下半分の4×2画素のタップ係数として、上半分の4×2画素それぞれのタップ係数を位置関係に応じて配置し直したタップ係数を採用することができる。この場合、予測タップを構成する4×4画素に対する16個のタップ係数を、上半分の4×2画素に対する8個のタップ係数に削減することができる。
 その他、予測タップの左右方向に線対称の位置関係にある画素どうしや、斜め方向に線対称の位置関係にある画素どうしのタップ係数として、同一のタップ係数を採用することによって、タップ係数を削減することができる。
 なお、以上のようなブロック位相に基づくタップ係数の削減を闇雲に行うと、その削減後のタップ係数により得られるフィルタ後画像のS/Nが低下する(元画像に対する誤差が増加する)。
 そこで、ブロック位相に基づくタップ係数の削減は、例えば、クラス分類に用いるADRCコードにより、予測タップを構成する画素の波形パターンを解析し、その波形パターンが空間的な対称性を有する場合には、その対称性がある位置関係にある、予測タップとしての画素どうしについては、同一のタップ係数を採用することができる。
 すなわち、例えば、クラスタップが、2×2画素で構成され、そのクラスタップの画素のADRC結果を、ラスタスキャン順に並べたADRCコードが、1001である場合には、点対称の対称性があるとみなして、点対称の位置関係にある予測タップとしての画素どうしのタップ係数として、同一のタップ係数を採用することができる。
 <符号化装置11の第2の構成例>
 図25は、図1の符号化装置11の第2の構成例を示すブロック図である。
 なお、図中、図9の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図25において、符号化装置11は、A/D変換部101ないし演算部110、フレームメモリ112ないしレート制御部117、クラス分類適応フィルタ261、適応オフセット部262、及び、適応ループフィルタ263を有する。
 したがって、図25の符号化装置11は、A/D変換部101ないし演算部110、及び、フレームメモリ112ないしレート制御部117を有する点で、図9の場合と共通する。
 但し、図25の符号化装置11は、クラス分類適応フィルタ111に代えて、クラス分類適応フィルタ261を有する点、並びに、適応オフセット部262及び適応ループフィルタ263を新たに有する点で、図9の場合と相違する。
 クラス分類適応フィルタ261は、図9のクラス分類適応フィルタ111と同様に構成される。但し、クラス分類適応フィルタ261は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてではなく、DFのみとして機能するフィルタである点で、ILF全体として機能するクラス分類適応フィルタ111と相違する。
 図25において、クラス分類適応フィルタ261には、演算部110から復号途中画像が供給される。
 クラス分類適応フィルタ261は、演算部110からの復号途中画像に、クラス分類適応処理によるDFの処理を施し、その結果得られるフィルタ後画像を、適応オフセット部262に供給する。
 適応オフセット部262は、クラス分類適応フィルタ261からのフィルタ後画像に、SAOの処理を行い、適応ループフィルタ263に供給する。
 適応ループフィルタ263は、適応オフセット部262からのフィルタ後画像に、ALFの処理を行い、フレームメモリ112に供給する。
 図25の符号化装置11では、クラス分類適応フィルタ261において、クラス分類適応処理によって、ILFのうちのDFの処理が行われる。そして、適応オフセット部262において、SAOの処理が行われ、適応ループフィルタ263において、ALFの処理が行われる。
 なお、適応オフセット部262では、SAOの処理に必要なSAO情報が、可逆符号化部106に供給され、符号化データに含められる。
 以上の点を除き、図25の符号化装置11では、図9の場合と同様の処理が行われる。
 <復号装置12の第2の構成例>
 図26は、図1の復号装置12の第2の構成例を示すブロック図である。
 なお、図中、図16の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図26において、復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、フレームメモリ210ないし選択部214、クラス分類適応フィルタ271、適応オフセット部272、及び、適応ループフィルタ273を有する。
 したがって、図26の復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、及び、フレームメモリ210ないし選択部214を有する点で、図16の場合と共通する。
 但し、図26の復号装置12は、クラス分類適応フィルタ206に代えて、クラス分類適応フィルタ271を有する点、並びに、適応オフセット部272及び適応ループフィルタ273を新たに有する点で、図16の場合と相違する。
 クラス分類適応フィルタ271は、図16のクラス分類適応フィルタ206と同様に構成される。但し、クラス分類適応フィルタ271は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてではなく、DFのみとして機能するフィルタである点で、ILF全体として機能するクラス分類適応フィルタ206と相違する。
 図26において、クラス分類適応フィルタ271には、演算部205から復号途中画像が供給される。
 クラス分類適応フィルタ271は、演算部205からの復号途中画像に、クラス分類適応処理によるDFの処理を施し、その結果得られるフィルタ後画像を、適応オフセット部272に供給する。
 適応オフセット部272は、クラス分類適応フィルタ271からのフィルタ後画像に、SAOの処理を行い、適応ループフィルタ273に供給する。
 適応ループフィルタ273は、適応オフセット部272からのフィルタ後画像に、ALFの処理を行い、並べ替えバッファ207及びフレームメモリ210に供給する。
 図26の復号装置12では、図25の符号化装置11で得られる符号化データが復号される。
 すなわち、クラス分類適応フィルタ271において、クラス分類適応処理によって、ILFのうちのDFの処理が行われる。そして、適応オフセット部272において、SAOの処理が行われ、適応ループフィルタ273において、ALFの処理が行われる。
 なお、適応オフセット部272には、可逆復号部202から、符号化データに含まれるSAO情報が供給される。適応オフセット部272では、可逆復号部202からのSAO情報を用いて、SAOの処理が行われる。
 以上の点を除き、図26の復号装置12では、図16の場合と同様の処理が行われる。
 <符号化装置11の第3の構成例>
 図27は、図1の符号化装置11の第3の構成例を示すブロック図である。
 なお、図中、図9又は図25の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図27において、符号化装置11は、A/D変換部101ないし演算部110、フレームメモリ112ないしレート制御部117、適応ループフィルタ263、デブロックフィルタ281、及び、クラス分類適応フィルタ282を有する。
 したがって、図27の符号化装置11は、A/D変換部101ないし演算部110、及び、フレームメモリ112ないしレート制御部117を有する点で、図9の場合と共通する。
 但し、図27の符号化装置11は、クラス分類適応フィルタ111に代えて、クラス分類適応フィルタ282を有する点、及び、図25の適応ループフィルタ263を新たに有するとともに、デブロックフィルタ281を新たに有する点で、図9の場合と相違する。
 図27において、デブロックフィルタ281には、演算部110から復号途中画像が供給される。
 デブロックフィルタ281は、演算部110からの復号途中画像にDFの処理を行い、クラス分類適応フィルタ282に供給する。
 クラス分類適応フィルタ282は、図9のクラス分類適応フィルタ111と同様に構成される。但し、クラス分類適応フィルタ282は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてではなく、SAOのみとして機能するフィルタである点で、ILF全体として機能するクラス分類適応フィルタ111と相違する。
 クラス分類適応フィルタ282は、デブロックフィルタ281からの復号途中画像に、クラス分類適応処理によるSAOの処理を施し、その結果得られるフィルタ後画像を、適応ループフィルタ263に供給する。
 図27の符号化装置11では、デブロックフィルタ281において、DFの処理が行われる。さらに、クラス分類適応フィルタ282において、クラス分類適応処理によって、ILFのうちのSAOの処理が行われる。そして、適応ループフィルタ263において、ALFの処理が行われる。
 以上の点を除き、図27の符号化装置11では、図9の場合と同様の処理が行われる。
 <復号装置12の第3の構成例>
 図28は、図1の復号装置12の第3の構成例を示すブロック図である。
 なお、図中、図16又は図26の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図28において、復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、フレームメモリ210ないし選択部214、適応ループフィルタ273、デブロックフィルタ291、及び、クラス分類適応フィルタ292を有する。
 したがって、図28の復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、及び、フレームメモリ210ないし選択部214を有する点で、図16の場合と共通する。
 但し、図28の復号装置12は、クラス分類適応フィルタ206に代えて、クラス分類適応フィルタ292を有する点、並びに、図26の適応ループフィルタ273を新たに有するとともに、デブロックフィルタ291を新たに有する点で、図16の場合と相違する。
 図28において、デブロックフィルタ291には、演算部205から復号途中画像が供給される。
 デブロックフィルタ291は、演算部205からの復号途中画像に、DFの処理を行い、クラス分類適応フィルタ291に供給する。
 クラス分類適応フィルタ292は、図16のクラス分類適応フィルタ206と同様に構成される。但し、クラス分類適応フィルタ292は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてではなく、SAOのみとして機能するフィルタである点で、ILF全体として機能するクラス分類適応フィルタ206と相違する。
 クラス分類適応フィルタ292は、デブロックフィルタ291からの復号途中画像に、クラス分類適応処理によるSAOの処理を施し、その結果得られるフィルタ後画像を、適応ループフィルタ273に供給する。
 図28の復号装置12では、図27の符号化装置11で得られる符号化データが復号される。
 すなわち、デブロックフィルタ291において、DFの処理が行われる。さらに、クラス分類適応フィルタ292において、クラス分類適応処理によって、ILFのうちのSAOの処理が行われる。そして、適応ループフィルタ273において、ALFの処理が行われる。
 以上の点を除き、図28の復号装置12では、図16の場合と同様の処理が行われる。
 <符号化装置11の第4の構成例>
 図29は、図1の符号化装置11の第4の構成例を示すブロック図である。
 なお、図中、図9、図25、又は、図27の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図29において、符号化装置11は、A/D変換部101ないし演算部110、フレームメモリ112ないしレート制御部117、適応オフセット部262、デブロックフィルタ281、及び、クラス分類適応フィルタ311を有する。
 したがって、図29の符号化装置11は、A/D変換部101ないし演算部110、及び、フレームメモリ112ないしレート制御部117を有する点で、図9の場合と共通する。
 但し、図29の符号化装置11は、クラス分類適応フィルタ111に代えて、クラス分類適応フィルタ311を有する点、及び、図25の適応オフセット部262を新たに有するとともに、図27のデブロックフィルタ281を新たに有する点で、図9の場合と相違する。
 図29において、クラス分類適応フィルタ311には、適応オフセット部262から、SAOの処理後の復号途中画像が供給される。
 クラス分類適応フィルタ311は、図9のクラス分類適応フィルタ111と同様に構成される。但し、クラス分類適応フィルタ311は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてではなく、ALFのみとして機能するフィルタである点で、ILF全体として機能するクラス分類適応フィルタ111と相違する。
 クラス分類適応フィルタ311は、適応オフセット部262からの復号途中画像に、クラス分類適応処理によるSAOの処理を施し、その結果得られるフィルタ後画像を、フレームメモリ112に供給する。
 図29の符号化装置11では、デブロックフィルタ281において、DFの処理が行われる。さらに、適応オフセット部262において、SAOの処理が行われる。そして、クラス分類適応フィルタ311において、クラス分類適応処理によって、ILFのうちのALFの処理が行われる。
 なお、適応オフセット部262では、図25で説明したように、SAOの処理に必要なSAO情報が、可逆符号化部106に供給され、符号化データに含められる。
 以上の点を除き、図29の符号化装置11では、図9の場合と同様の処理が行われる。
 <復号装置12の第4の構成例>
 図30は、図1の復号装置12の第4の構成例を示すブロック図である。
 なお、図中、図16、図26、又は、図28の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図30において、復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、フレームメモリ210ないし選択部214、適応オフセット部272、デブロックフィルタ291、及び、クラス分類適応フィルタ321を有する。
 したがって、図30の復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、及び、フレームメモリ210ないし選択部214を有する点で、図16の場合と共通する。
 但し、図30の復号装置12は、クラス分類適応フィルタ206に代えて、クラス分類適応フィルタ321を有する点、並びに、図26の適応オフセット部272を新たに有するとともに、図28のデブロックフィルタ291を新たに有する点で、図16の場合と相違する。
 図30において、クラス分類適応フィルタ321には、適応オフセット部272から、SAOの処理後の復号途中画像が供給される。
 クラス分類適応フィルタ321は、図16のクラス分類適応フィルタ206と同様に構成される。但し、クラス分類適応フィルタ321は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてではなく、ALFのみとして機能するフィルタである点で、ILF全体として機能するクラス分類適応フィルタ206と相違する。
 クラス分類適応フィルタ321は、適応オフセット部272からの復号途中画像に、クラス分類適応処理によるALFの処理を施し、その結果得られるフィルタ後画像を、並べ替えバッファ297及びフレームメモリ210に供給する。
 図30の復号装置12では、図29の符号化装置11で得られる符号化データが復号される。
 すなわち、デブロックフィルタ291において、DFの処理が行われる。さらに、適応オフセット部272において、SAOの処理が行われる。そして、クラス分類適応フィルタ321において、クラス分類適応処理によって、ILFのうちのALFの処理が行われる。
 なお、適応オフセット部272には、可逆復号部202から、符号化データに含まれるSAO情報が供給される。適応オフセット部272では、可逆復号部202からのSAO情報を用いて、SAOの処理が行われる。
 以上の点を除き、図30の復号装置12では、図16の場合と同様の処理が行われる。
 以上のように、クラス分類適応処理によれば、ILF全体の機能を実現することもできるし、ILFのうちの、DF,SAO、又は、ALFの機能を実現することもできる。
 また、クラス分類適応処理によれば、DF,SAO、及び、ALFのうちの2以上の機能を実現することもできる。
 すなわち、クラス分類適応処理によれば、DF,SAO、及び、ALFのうちの1以上の機能を実現することができる。
 そして、クラス分類適応処理によって、DF,SAO、及び、ALFのうちの1以上の機能を実現することにより、予測画像の予測に用いられる参照画像となるフィルタ後画像として、S/Nの良い画像、すなわち、元画像に極めて近い画像を得ることができ、さらに、残差を極めて小さくすることができる。したがって、S/N及び圧縮効率を、大きく改善することができる。
 また、クラス分類適応処理によって、DF,SAO、及び、ALFのうちの2以上の機能を実現することにより、DF,SAO、及び、ALFのすべてを、ILFとして設ける場合に比較して、演算コストを低減することができる。
 なお、以下では、クラス分類適応処理によって、ILF全体の機能を実現する場合を例に説明を行うが、以下で説明する実施の形態でも、クラス分類適応処理によって、DF,SAO、及び、ALFのうちの任意の1又は2の機能を実現することができる。
 <付加クラス>
 図31は、付加クラスの概要を説明する図である。
 符号化装置11及び復号装置12の第1ないし第4の構成例では、復号途中画像から得られるクラスタップ(の画像特徴量)や、符号化データに含められる符号化情報を用いて、クラス分類が行われる。
 すなわち、符号化装置11及び復号装置12の第1ないし第4の構成例では、符号化装置11及び復号装置12のいずれでも取得することができる取得可能情報を用いて、クラス分類が行われる。
 ところで、クラス分類適応処理については、より元画像に近いフィルタ後画像を得る観点からは、クラス分類に、元画像を用いることが望ましい。また、符号化データに含められない、例えば、目標符号量等の符号化情報や、符号化で失われる情報を用いて、クラス分類を行うことで、より元画像に近いフィルタ後画像を得ることができるクラス分類を行うことができることがあり得る。
 しかしながら、元画像や、符号化データに含められない符号化情報、符号化で失われる情報は、復号装置12側で取得することができない取得不可能情報であり、取得不可能情報を用いたクラス分類は、符号化装置11で行うことはできても、復号装置12で行うことができない。
 そこで、符号化装置11において、取得不可能情報を用いてクラス分類を行う場合には、そのクラス分類により得られるクラスを、付加クラスとして伝送する。そして、復号装置12では、符号化装置11から伝送されてくる付加クラスを用いて、クラス分類適応処理を行う。
 すなわち、符号化装置11では、復号途中画像から得られるクラスタップや、符号化データに含められる符号化情報等の取得可能情報を用いて、クラス分類を行い、注目画素の第1クラスとしての通常クラスを求める。
 さらに、符号化装置11では、元画像や符号化データに含められない符号化情報等の取得不可能情報を用いて、クラス分類を行い、注目画素の第2クラスとしての付加クラスを求める。
 そして、符号化装置11では、通常クラス及び付加クラスから、注目画素の最終的なクラスを求め、その最終的なクラスのタップ係数を用いた予測演算により、注目画素に対応するフィルタ後画像の対応画素の画素値(注目画素に対応する元画像の画素の画素値の予測値)を求める。
 また、符号化装置11では、タップ係数とともに、付加クラス(を表すクラスコード)を、フィルタ情報として伝送する。
 復号装置12では、取得可能情報を用いて、クラス分類を行い、注目画素の第1クラスとしての通常クラスを求める。
 さらに、復号装置12では、符号化装置11から伝送されてくるタップ係数と、注目画素の第2クラスとしての付加クラスとを取得する。
 そして、復号装置12では、符号化装置11と同様に、通常クラス及び付加クラスから、注目画素の最終的なクラスを求め、その最終的なクラスのタップ係数を用いた予測演算により、注目画素に対応するフィルタ後画像の対応画素の画素値を求める。
 図31では、符号化装置11において、取得可能情報としての復号途中画像から得られるクラスタップを用いて、注目画素が、8ビットのクラスコードで表される通常クラスにクラス分類される。
 さらに、符号化装置11では、取得不可能情報としての元画像の、注目画素に対応する対応画素が含まれるCUや、CTU、スライス等の所定の単位を用いて、注目画素が、2ビットのクラスコードで表される付加クラスにクラス分類される。
 また、符号化装置11では、8ビットの通常クラスを表すクラスコードの上位ビットに、2ビットの付加クラスを表すクラスコードを付加することで、10ビットのクラスコードで表されるクラスが、最終的なクラスとして求められる。
 そして、符号化装置11では、10ビットのクラスコードで表される最終的なクラスのタップ係数を用いた予測演算により、注目画素に対応するフィルタ後画像の対応画素の画素値が求められる。
 さらに、符号化装置11では、10ビットのクラスコードで表される最終的なクラスごとのタップ係数と、2ビットの(クラスコードで表される)付加クラスが伝送される。
 ここで、上述の場合には、通常クラス(を表すクラスコード)の上位ビットに、付加クラス(を表すクラスコード)を付加することで、最終的なクラス(を表すクラスコード)を生成することとしたが、通常クラス及び付加クラスから、最終的なクラスを生成する方法は、これに限定されるものではない。
 すなわち、通常クラス及び付加クラスから、最終的なクラスを生成する方法は、あらかじめ決めておく必要はあるが、任意の方法を採用することができる。例えば、最終的なクラスは、通常クラスの下位ビットに、付加クラスを付加することで生成することができる。
 復号装置12では、符号化装置11から伝送されてくる最終的なクラスごとのタップ係数と2ビットの付加クラスとが取得される。
 さらに、復号装置12では、取得可能情報としての復号途中画像から得られるクラスタップを用いて、注目画素が、8ビットの(クラスコードで表される)通常クラスにクラス分類される。
 また、復号装置12では、符号化装置11と同様に、8ビットの通常クラスと、符号化装置11から伝送されてくる2ビットの付加クラスから、10ビットの(クラスコードで表される)最終的なクラスが求められ、その最終的なクラスのタップ係数を用いた予測演算により、注目画素に対応するフィルタ後画像の対応画素の画素値が求められる。
 なお、取得不可能情報を用いたクラス分類としては、例えば、取得不可能情報としての元画像のアクティビティ等の画像特徴量を用いたクラス分類を採用することができる。
 元画像のアクティビティとしては、例えば、注目画素に対応する元画像の画素を含むCUや、CTU、スライス等の所定の領域(以下、特定領域ともいう)に含まれる画素について、隣接する画素の画素値の差分の絶対値和を、差分の個数で正規化して得られる値等を採用することができる。
 また、取得不可能情報としての元画像の画像特徴量としては、注目画素に対応する元画像の対応画素どうしの画素値のフレーム間差分や、元画像の特定領域と、その特定領域に対応する復号途中画像の領域との画素値のDC差分、元画像の一部の帯域を抑制又は強調した画像の画像特徴量等を採用することができる。
 さらに、取得不可能情報を用いたクラス分類では、取得不可能情報としての元画像の画像特徴量の他、取得可能情報であるか、取得不可能情報であるかを問わず、符号化情報を用いることができる。
 すなわち、取得不可能情報を用いたクラス分類では、例えば、取得不可能情報としての元画像の画像特徴量と、量子化パラメータQPとを用いることができる。
 元画像の画像特徴量としての、例えば、元画像のアクティビティが大きいテクスチャの領域については、量子化パラメータQPが大(量子化ステップが大)である場合、符号化(量子化)により失われる元画像の情報量が大きく、フィルタ後画像(復号画像)の劣化が大になる。
 一方、元画像のアクティビティが小さい平坦な領域については、量子化パラメータQPが小(量子化ステップが小)である場合、符号化により失われる元画像の情報量が小さく、フィルタ後画像の劣化が小になる。
 したがって、元画像の画像特徴量としてのアクティビティと、量子化パラメータQPとを用いてクラス分類を行う場合には、フィルタ後画像の劣化の大小に応じたクラス分類が行われ、その劣化を回復するのに適切なタップ係数による予測演算を行うことが可能になる。
 <符号化装置11の第5の構成例>
 図32は、図1の符号化装置11の第5の構成例を示すブロック図である。
 なお、図中、図9の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図32において、符号化装置11は、A/D変換部101ないし演算部110、フレームメモリ112ないしレート制御部117、及び、クラス分類適応フィルタ411を有する。
 したがって、図32の符号化装置11は、A/D変換部101ないし演算部110、及び、フレームメモリ112ないしレート制御部117を有する点で、図9の場合と共通する。
 但し、図32の符号化装置11は、クラス分類適応フィルタ111に代えて、クラス分類適応フィルタ411を有する点で、図9の場合と相違する。
 クラス分類適応フィルタ411は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてとして機能するフィルタで、クラス分類適応処理によって、ILF処理を行う点で、クラス分類適応フィルタ111と共通する。
 但し、クラス分類適応フィルタ411では、取得可能情報を用いたクラス分類により、第1クラスとしての通常クラスが求められるとともに、取得不可能情報を用いたクラス分類により第2クラスとしての付加クラスが求められ、それらの通常クラスと付加クラスとから、最終的なクラスが生成される点で、クラス分類適応フィルタ111と相違する。
 さらに、クラス分類適応フィルタ411では、付加クラスが、最終的なクラスごとのタップ係数とともに、フィルタ情報として、可逆符号化部106に供給されて伝送される点で、クラス分類適応フィルタ111と相違する。
 <クラス分類適応フィルタ411の構成例>
 図33は、図32のクラス分類適応フィルタ411の構成例を示すブロック図である。
 図33において、クラス分類適応フィルタ411は、画像変換装置431及び学習装置432を有する。
 画像変換装置431には、演算部110(図32)から復号途中画像が供給されるとともに、学習装置432から最終的なクラスごとのタップ係数が供給される。さらに、画像変換装置431には、符号化情報が供給される。また、画像変換装置431には、並べ替えバッファ102(図32)から元画像が供給される。
 画像変換装置431は、復号途中画像を第1の画像として、最終的なクラスごとのタップ係数を用いたクラス分類適応処理による画像変換を行うことで、第1の画像としての復号途中画像を、元画像に相当する第2の画像としてのフィルタ後画像に変換して(フィルタ後画像を生成して)、フレームメモリ112(図32)に供給する。
 なお、画像変換装置431は、クラス分類適応処理において、クラス分類を、必要に応じて、符号化情報を用いて行う。
 また、画像変換装置431は、取得可能情報としての復号途中画像及び符号化情報(符号化データに含められる符号化情報)を用いたクラス分類により、第1クラスとしての通常クラスを求めるとともに、取得不可能情報としての、例えば、元画像等を用いたクラス分類により第2クラスとしての付加クラスを求め、それらの通常クラスと付加クラスとから、最終的なクラスを生成する。
 さらに、画像変換装置431は、付加クラスを、フィルタ情報として、可逆符号化部106(図32)に供給する。
 学習装置432には、並べ替えバッファ102(図32)から元画像が供給されるとともに、演算部110(図32)から復号途中画像が供給される。さらに、学習装置432には、符号化情報が供給される。
 学習装置432は、復号途中画像を生徒データとするとともに、元画像を教師データとして、(最終的な)クラスごとのタップ係数を求める学習(タップ係数学習)を行う。
 さらに、学習装置432は、タップ係数学習により得られるクラスごとのタップ係数を、フィルタ情報として、画像変換装置431及び可逆符号化部106(図32)に供給する。
 なお、学習装置432は、画像変換装置431と同様に、タップ係数学習において、クラス分類を、必要に応じて、符号化情報を用いて行う。
 また、学習装置432は、画像変換装置431と同様に、クラス分類において、通常クラス及び付加クラスを求め、それらの通常クラスと付加クラスとから、最終的なクラスを生成する。
 <画像変換装置431の構成例>
 図34は、図33の画像変換装置431の構成例を示すブロック図である。
 なお、図中、図11の画像変換装置131と対応する部分については、同一の符号を付してあり、その説明は、適宜省略する。
 図34において、画像変換装置431は、タップ選択部21及び22、係数取得部24、予測演算部25、並びに、クラス分類部441を有する。
 したがって、画像変換装置431は、タップ選択部21及び22、係数取得部24、並びに、予測演算部25を有する点で、図11の画像変換装置131と共通する。
 但し、画像変換装置431は、クラス分類部23に代えて、クラス分類部441を有する点で、図11の画像変換装置131と相違する。
 クラス分類部441には、タップ選択部22から、取得可能情報としての注目画素のクラスタップが供給される。さらに、クラス分類部441には、取得可能情報としての符号化情報が供給されるとともに、並べ替えバッファ102(図32)から、取得不可能情報としての元画像が供給される。
 クラス分類部441は、図11のクラス分類部23と同様に、クラスタップ及び符号化情報を用いて、クラス分類を行い、注目画素の第1クラスとしての通常クラスを求める。
 さらに、クラス分類部441は、元画像を用いて、クラス分類を行い、注目画素の第2クラスとしての付加クラスを求める。
 そして、クラス分類部441は、通常クラスと付加クラスとから、注目画素の最終的なクラスを生成し、係数取得部24に供給する。
 さらに、クラス分類部441は、付加クラス(を表すクラスコード)を、フィルタ情報として、可逆符号化部106に供給する。
 ここで、図34において、係数取得部24は、学習装置432から供給される最終的なクラスごとのタップ係数を記憶し、その最終的なクラスごとのタップ係数から、クラス分類部541からの注目画素の最終的なクラスのタップ係数を取得して、予測演算部25に供給する。
 図35は、図34のクラス分類部441の構成例を示すブロック図である。
 図35において、クラス分類部441は、第1クラス分類部451、第2クラス分類部452、及び、クラスコード生成部453を有する。
 第1クラス分類部451は、図11のクラス分類部23と同様に、クラスタップ及び符号化情報を用いて、クラス分類を行い、注目画素の第1クラスとしての通常クラスを求め、クラスコード生成部453に供給する。
 第2クラス分類部452は、元画像を用い、例えば、元画像の画像特徴量としてのアクティビティの閾値処理を行うことで、クラス分類を行い、注目画素の第2クラスとしての付加クラスを求め、クラスコード生成部453に供給するとともに、フィルタ情報として、可逆符号化部106(図32)に供給する。
 クラスコード生成部453は、第1クラス分類部451からの通常クラスと、第2クラス分類部452からの付加クラスとから、注目画素の最終的なクラスを生成し、係数取得部24(図34)に供給する。
 すなわち、クラスコード生成部453は、例えば、第1クラス分類部451からの通常クラスを表すクラスコードの上位ビットに、第2クラス分類部452からの付加クラスを表すクラスコードを付加することで、注目画素の最終的なクラスを表すクラスコードを生成する。
 <学習装置432の構成例>
 図36は、図33の学習装置432の構成例を示すブロック図である。
 なお、図中、図13の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図36において、学習装置432は、学習部33を有する。学習部33は、タップ選択部41及び42、足し込み部44、係数算出部45、並びに、クラス分類部461を有する。
 したがって、図36の学習装置432は、学習部33を有する点で、図13の場合と共通する。さらに、学習装置432は、学習部33が、タップ選択部41及び42、足し込み部44、並びに、係数算出部45を有する点で、図13の場合と共通する。
 但し、図36の学習装置432は、学習部33において、クラス分類部43に代えて、クラス分類部461が設けられている点で、図13の場合と相違する。
 クラス分類部461には、タップ選択部42から、取得可能情報としての注目画素のクラスタップが供給される。さらに、クラス分類部461には、取得可能情報としての符号化情報が供給されるとともに、並べ替えバッファ102(図32)から、取得不可能情報としての元画像が供給される。
 クラス分類部461は、図35のクラス分類部441と同様に構成され、クラスタップ、符号化情報、及び、元画像を用いて、クラス分類部441と同様のクラス分類を行う。
 すなわち、クラス分類部461は、図13のクラス分類部43と同様に、クラスタップ及び符号化情報を用いて、クラス分類を行い、注目画素の第1クラスとしての通常クラスを求める。
 さらに、クラス分類部461は、元画像を用いて、クラス分類を行い、注目画素の第2クラスとしての付加クラスを求める。
 そして、クラス分類部461は、通常クラスと付加クラスとから、注目画素の最終的なクラスを生成し、足し込み部44に供給する。
 したがって、足し込み部44では、最終的なクラスごとに、正規方程式を求める足し込みが行われ、係数算出部45では、最終的なクラスごとのタップ係数が求められる。
 ここで、最終的なクラスごとのタップ係数は、通常クラスのクラス数と、付加クラスのクラス数との乗算値の数だけのクラスのタップ係数となる。
 <符号化処理>
 図37は、図32の符号化装置11の符号化処理の例を説明するフローチャートである。
 図32の符号化装置11では、ステップS111ないしS129において、図14のステップS11ないしS29とそれぞれ同様の処理が行われる。
 但し、符号化装置11において、クラス分類適応フィルタ411の学習装置432(図33)は、図10の学習装置132と同様に、そこに供給される復号途中画像を生徒データとするとともに、その復号途中画像に対応する元画像を教師データとして、適宜、タップ係数学習を行うが、そのタップ係数学習では、最終的なクラスごとのタップ係数が、フィルタ情報として生成される。そして、その最終的なクラスごとのタップ係数が、ステップS112で更新されるフィルタ情報、及び、ステップS113で伝送対象に設定されるフィルタ情報となる。
 また、ステップS125において、クラス分類適応フィルタ411は、図14のステップS25と同様に、演算部110からの復号途中画像に、ILFの処理としてのクラス分類適応処理を施すが、そのクラス分類適応処理では、クラスタップ、符号化情報、及び、元画像を用いて、クラス分類が行われ、通常クラスと付加クラスとから、最終的なクラスが生成される。
 さらに、クラス分類適応フィルタ411において、クラス分類適応処理は、最終的なクラスごとのタップ係数を用いて行われる。
 また、クラス分類適応フィルタ411は、クラス分類適応処理で得られた付加クラスを、フィルタ情報として、可逆符号化部106に供給する。
 さらに、ステップS127では、可逆符号化部106は、図14のステップS27と同様に、量子化係数、符号化情報、及び、フィルタ情報を符号化するが、そのフィルタ情報には、付加クラスと、最終的なクラスごとのタップ係数とが含まれる。
 したがって、可逆符号化部106で得られる符号化データには、量子化係数、符号化情報、及び、フィルタ情報としての付加クラスや最終的なクラスごとのタップ係数が含まれる。そして、かかる符号化データは、ステップS128で、図14のステップS28で説明したように、蓄積バッファ107から、適宜読み出されて伝送される。
 図38は、図37のステップS125で行われるクラス分類適応処理の例を説明するフローチャートである。
 クラス分類適応フィルタ411の画像変換装置431(図34)では、ステップS141ないしS147において、図15のステップS41ないしS47とそれぞれ同様の処理が行われる。
 但し、ステップS143の注目画素のクラス分類では、クラス分類部441(図34、図35)は、クラスタップ、符号化情報、及び、元画像を用いて、注目画素のクラス分類を行う。
 すなわち、クラス分類では、ステップS151ないしS153において、図15のステップS51ないしS53とそれぞれ同様の処理が行われる。
 具体的には、ステップS151において、クラス分類部441(図35)の第1クラス分類部451は、タップ選択部22からのクラスタップを構成する画素から、例えば、ADRCコード等の画像特徴量を抽出し、処理は、ステップS152に進む。
 ステップS152では、第1クラス分類部451は、注目画素についての必要な符号化情報を取得し、あらかじめ決められた規則に従って、符号化情報を、情報コードに変換して、処理は、ステップS153に進む。
 ステップS153では、第1クラス分類部451は、画像特徴量及び情報コードから、注目画素の第1クラスとしての通常クラスを表すクラスコードを生成し、クラスコード生成部453に供給して、処理は、ステップS154に進む。
 ステップS154では、第2クラス分類部452は、注目画素の元画像に対応する対応画素を含むCUや、CTU、スライス等の特定領域を、第2クラスとしての付加クラス用の情報として取得し、処理は、ステップS155に進む。
 なお、付加クラス用の情報は、元画像から取得する他、符号化情報(符号化データに含められるか否かは、問わない)からも取得することができる。
 ステップS155では、第2クラス分類部452は、付加クラス用の情報から、例えば、アクティビティ等の画像特徴量を抽出し、その画像特徴量の閾値処理を行うことで、注目画素の付加クラスを表すクラスコードを求める。
 そして、第2クラス分類部452は、付加クラスを表すクラスコードを、クラスコード生成部453に供給して、処理は、ステップS155からステップS156に進む。
 ステップS156では、クラスコード生成部453が、第1クラス分類部451からの通常クラスを表すクラスコードと、第2クラス分類部452からの付加クラスを表すクラスコードとから、注目画素の最終的なクラスを表すクラスコードを生成する。
 そして、クラスコード生成部453は、注目画素の最終的なクラス(を表すクラスコード)を、画像変換装置431(図34)の係数取得部24に供給し、ステップS143のクラス分類を終了する。
 なお、クラス分類適応フィルタ411の画像変換装置431(図34)では、ステップS147において、予測演算部25が、図15のステップS47と同様に、演算部110からの復号途中画像に対して得られた画素値で構成されるフィルタ後画像を、フレームメモリ112(図32)に供給する他、クラス分類部441(図34)が、ステップS143のクラス分類で得られた第2クラスとしての付加クラスを、フィルタ情報として、可逆符号化部106(図32)に供給する。
 <復号装置12の第5の構成例>
 図39は、図1の復号装置12の第5の構成例を示すブロック図である。
 なお、図中、図16の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図39において、復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、フレームメモリ210ないし選択部214、及び、クラス分類適応フィルタ471を有する。
 したがって、図39の復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、及び、フレームメモリ210ないし選択部214を有する点で、図16の場合と共通する。
 但し、図39の復号装置12は、クラス分類適応フィルタ206に代えて、クラス分類適応フィルタ471を有する点で、図16の場合と相違する。
 図39の復号装置12は、図32の符号化装置11から伝送されてくる符号化データを復号する。
 そのため、可逆復号部202からクラス分類適応フィルタ471に供給されるフィルタ情報には、最終的なクラスごとのタップ係数や付加クラスが含まれる。
 クラス分類適応フィルタ471は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてとして機能するフィルタで、クラス分類適応処理によって、ILF処理を行う点で、図16のクラス分類適応フィルタ206と共通する。
 但し、クラス分類適応フィルタ471では、取得可能情報を用いたクラス分類により、第1クラスとしての通常クラスが求められ、その通常クラスと、可逆復号部202からのフィルタ情報としての付加クラスとから、最終的なクラスが生成される点で、クラス分類適応フィルタ206と相違する。
 <クラス分類適応フィルタ471の構成例>
 図40は、図39のクラス分類適応フィルタ471の構成例を示すブロック図である。
 図40において、クラス分類適応フィルタ471は、画像変換装置481を有する。
 画像変換装置481には、演算部205(図39)から復号途中画像が供給されるとともに、可逆復号部202からフィルタ情報としての最終的なクラスごとのタップ係数及び付加クラス、並びに、符号化情報が供給される。
 画像変換装置481は、図33の画像変換装置431と同様に、復号途中画像を第1の画像として、クラス(最終的なクラス)ごとのタップ係数を用いたクラス分類適応処理による画像変換を行うことで、第1の画像としての復号途中画像を、元画像に相当する第2の画像としてのフィルタ後画像に変換して(フィルタ後画像を生成して)、並べ替えバッファ207及びフレームメモリ210(図39)に供給する。
 なお、画像変換装置481は、クラス分類適応処理において、図33の画像変換装置431と同様に、クラス分類を、必要に応じて、符号化情報を用いて行う。
 また、画像変換装置481は、取得可能情報としての復号途中画像から得られるクラスタップ及び符号化情報(符号化データに含められる符号化情報)を用いたクラス分類により、注目画素の第1クラスとしての通常クラスを求めるとともに、取得不可能情報としての元画像を用いたクラス分類により求められる注目画素の第2クラスとしての付加クラスを、可逆復号部202(図39)からのフィルタ情報から取得し、それらの通常クラスと付加クラスとから、注目画素の最終的なクラスを生成する。
 そして、画像変換装置481は、注目画素の最終的なクラスのタップ係数を用いて、式(1)の予測演算を行う。
 <画像変換装置481の構成例>
 図41は、図40の画像変換装置481の構成例を示すブロック図である。
 なお、図中、図18の画像変換装置231と共通する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図41において、画像変換装置481は、タップ選択部241及び242、係数取得部244、予測演算部245、並びに、クラス分類部491を有する。
 したがって、図41の画像変換装置481は、タップ選択部241及び242、係数取得部244、並びに、予測演算部245を有する点で、図18の画像変換装置231と共通する。
 但し、図41の画像変換装置481は、クラス分類部243に代えて、クラス分類部491を有する点で、図18の画像変換装置231と相違する。
 可逆復号部202(図39)からのフィルタ情報としての最終的なクラスごとのタップ係数(通常クラスのクラス数と付加クラスのクラス数との乗算値のクラス数だけのタップ係数)は、係数取得部244に供給されて記憶される。
 また、可逆復号部202(図39)からのフィルタ情報としての付加クラスは、クラス分類部491に供給される。
 さらに、クラス分類部491には、可逆復号部202からの符号化情報が供給されるとともに、タップ選択部242からクラスタップが供給される。
 クラス分類部491は、図18のクラス分類部243と同様に、クラスタップ及び符号化情報を用いて、クラス分類を行い、注目画素の第1クラスとしての通常クラスを求める。
 さらに、クラス分類部491は、可逆復号部202(図39)からのフィルタ情報として付加クラスの中から、注目画素の第2クラスとしての付加クラスを取得する。
 そして、クラス分類部491は、注目画素の通常クラスと付加クラスとから、注目画素の最終的なクラスを生成し、係数取得部244に供給する。
 係数取得部244は、可逆復号部202からフィルタ情報としての最終的なクラスごとのタップ係数から、クラス分類部491からの注目画素の最終的なクラスのタップ係数を取得し、予測演算部245に供給する。
 図42は、図41のクラス分類部491の構成例を示すブロック図である。
 図42において、クラス分類部491は、第1クラス分類部501、及び、クラスコード生成部502を有する。
 第1クラス分類部501は、図18のクラス分類部243と同様に、タップ選択部242(図41)からのクラスタップと、可逆復号部202(図39)からの符号化情報を用いて、クラス分類を行い、注目画素の第1クラスとしての通常クラスを求め、クラスコード生成部502に供給する。
 クラスコード生成部502は、可逆復号部202からのフィルタ情報としての付加クラスの中から、注目画素の第2クラスとしての付加クラスを取得する。
 そして、クラスコード生成部502は、図35のクラスコード生成部453と同様に、第1クラス分類部501からの通常クラスと、可逆復号部202からのフィルタ情報から取得した付加クラスとから、注目画素の最終的なクラスを生成し、係数取得部244(図41)に供給する。
 <復号処理>
 図43は、図39の復号装置12の復号処理の例を説明するフローチャートである。
 図39の復号装置12では、ステップS161ないしS173において、図19のステップS61ないしS73とそれぞれ同様の処理が行われる。
 但し、ステップS162では、可逆復号部202は、図19のステップS62と同様に、符号化データを復号し、その復号により得られる量子化係数を、逆量子化部203に供給するとともに、符号化データの復号により得られる符号化情報やフィルタ情報を、イントラ予測部212や、動き予測補償部213、クラス分類適応フィルタ471その他の必要なブロックに供給するが、クラス分類適応フィルタ471に供給されるフィルタ情報には、最終的なクラスごとのタップ係数や、第2クラスとしての付加クラスが含まれる。
 また、ステップS170において、クラス分類適応フィルタ471は、図19のステップS70と同様に、演算部205からの復号途中画像に、ILFの処理としてのクラス分類適応処理を施すが、そのクラス分類適応処理では、クラスタップ及び符号化情報を用いたクラス分類により第1クラスとしての通常クラスが求められ、その通常クラスと、可逆復号部202(図39)からのフィルタ情報としての付加クラスとから、最終的なクラスが生成される。
 図44は、図43のステップS170で行われるクラス分類適応処理の例を説明するフローチャートである。
 クラス分類適応フィルタ471の画像変換装置481(図41)では、ステップS181ないしS187において、図20のステップS81ないしS87とそれぞれ同様の処理が行われる。
 但し、ステップS183の注目画素のクラス分類では、クラス分類部491(図42)は、可逆復号部202(図39)から供給されるフィルタ情報としての注目画素の付加クラスから、注目画素の最終的なクラスを生成する。
 すなわち、クラス分類では、ステップS191ないしS193において、図38のステップS151ないしS153とそれぞれ同様の処理が行われる。
 具体的には、ステップS191において、クラス分類部491(図42)の第1クラス分類部501は、タップ選択部242(図41)からのクラスタップを構成する画素から、例えば、ADRCコード等の画像特徴量を抽出し、処理は、ステップS192に進む。
 ステップS192では、第1クラス分類部501は、注目画素についての必要な符号化情報を取得し、あらかじめ決められた規則に従って、符号化情報を、情報コードに変換して、処理は、ステップS193に進む。
 ステップS193では、第1クラス分類部501は、画像特徴量及び情報コードから、注目画素の第1クラスとしての通常クラスを表すクラスコードを生成し、クラスコード生成部502に供給して、処理は、ステップS194に進む。
 ステップS194では、クラスコード生成部502は、可逆復号部202(図39)から供給されるフィルタ情報としての付加クラスの中から、注目画素の第2クラスとしての付加クラス(を表すクラスコード)を取得する。
 さらに、クラスコード生成部502は、第1クラス分類部501からの通常クラス(を表すクラスコード)と、可逆復号部202からのフィルタ情報としての付加クラスから取得した注目画素の付加クラス(を表すクラスコード)とから、注目画素の最終的なクラス(を表すクラスコード)を生成する。
 そして、クラスコード生成部502は、注目画素の最終的なクラスを、係数取得部244(図41)に供給し、ステップS183のクラス分類を終了する。
 <クラスの縮退>
 図45は、最終的なクラスの縮退を説明する図である。
 図31で説明したように、取得可能情報を用いたクラス分類により得られる通常クラスと、取得不可能情報を用いたクラス分類により得られる付加クラスとから生成される最終的なクラスを採用し、より元画像に近いフィルタ後画像を得ることができるクラス分類を行うことで、フィルタ後画像(復号画像)のS/Nを向上させることができる。
 しかしながら、通常クラスと付加クラスとから生成される最終的なクラスを採用する場合には、通常クラスだけを採用する場合に比較して、クラス数が増加する。したがって、符号化データに含まれるフィルタ情報としてのタップ係数のデータ量が増加し、符号化データのオーバーヘッドが増加する。
 そして、符号化データのオーバーヘッドの増加は、圧縮効率の改善の妨げとなる。
 そこで、通常クラスと付加クラスとから生成される最終的なクラスを採用する場合には、その最終的なクラスを縮退することができる。
 図45では、図31と同様に、符号化装置11において、取得可能情報としての復号途中画像から得られるクラスタップを用いたクラス分類により得られる8ビットの通常クラスを表すクラスコードの上位ビットに、取得不可能情報としての元画像の画像特徴量を用いたクラス分類により得られる2ビットの付加クラスを表すクラスコードを付加することで、10ビットのクラスコードで表されるクラスが、最終的なクラスとして求められる。
 そして、符号化装置11では、10ビットの(クラスコードで表される)最終的なクラスが、8ビットの縮退クラスに縮退され、その8ビットの縮退クラスのタップ係数を用いた予測演算により、注目画素に対応するフィルタ後画像の対応画素の画素値が求められる。
 さらに、符号化装置11では、8ビットの縮退クラスごとのタップ係数と、2ビットの付加クラスが伝送される。
 また、符号化装置11では、10ビットの最終的なクラスを、8ビットの縮退クラスに変換する変換テーブルが生成され、その変換テーブルも伝送される。
 最終的なクラスの縮退は、例えば、図24で説明した方法で行うことができる。また、最終的なクラスの縮退は、例えば、タップ係数を座標軸とするタップ係数空間において、タップ係数(のセット)どうしの距離が短いクラスどうしを、1つのクラスにまとめること等により行うことができる。その他、最終的なクラスの縮退は、任意の方法で行うことができる。
 復号装置12では、符号化装置11から伝送されてくる縮退クラスごとのタップ係数、2ビットの付加クラス、及び、変換テーブルが取得される。
 さらに、復号装置12では、取得可能情報としての復号途中画像から得られるクラスタップを用いて、注目画素が、8ビットの(クラスコードで表される)通常クラスにクラス分類される。
 また、復号装置12では、8ビットの通常クラスと、符号化装置11から伝送されてくる2ビットの付加クラスから、符号化装置11の場合と同様の10ビットの最終的なクラスが求められる。
 そして、復号装置12では、10ビットの最終的なクラスが、符号化装置11から伝送されてくる変換テーブルに従って、縮退クラスに変換(縮退)され、その縮退クラスのタップ係数を用いた予測演算により、注目画素に対応するフィルタ後画像の対応画素の画素値が求められる。
 以上のように、最終的なクラスを縮退することで、通常クラスと付加クラスとから生成される最終的なクラスを採用する場合に生じる、符号化データのオーバーヘッドの増加を抑制することができる。
 なお、図31で説明したように、最終的なクラスの縮退を行わず、最終的なクラスごとのタップ係数、及び、付加クラスを、フィルタ情報として伝送するか、又は、図45で説明したように、最終的なクラスの縮退を行い、縮退クラスごとのタップ係数、付加クラス、及び、変換テーブルを伝送するかは、例えば、動作モードの切り替えにより選択することができる。
 また、最終的なクラスを縮退クラスに縮退する場合、縮退クラスのクラス数は、例えば、S/Nが改善する程度と、符号化データのオーバーヘッドの増加量とを勘案して、適宜決定することができる。
 <符号化装置11の第6の構成例>
 図46は、図1の符号化装置11の第6の構成例を示すブロック図である。
 なお、図中、図32の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図46において、符号化装置11は、A/D変換部101ないし演算部110、フレームメモリ112ないしレート制御部117、及び、クラス分類適応フィルタ511を有する。
 したがって、図46の符号化装置11は、A/D変換部101ないし演算部110、及び、フレームメモリ112ないしレート制御部117を有する点で、図32の場合と共通する。
 但し、図46の符号化装置11は、クラス分類適応フィルタ411に代えて、クラス分類適応フィルタ511を有する点で、図32の場合と相違する。
 クラス分類適応フィルタ511は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてとして機能するフィルタで、クラス分類適応処理によって、ILF処理を行う点で、クラス分類適応フィルタ411と共通する。
 さらに、クラス分類適応フィルタ511では、取得可能情報を用いたクラス分類により、第1クラスとしての通常クラスが求められるとともに、取得不可能情報を用いたクラス分類により第2クラスとしての付加クラスが求められ、それらの通常クラスと付加クラスとから、最終的なクラスが生成される点で、クラス分類適応フィルタ411と共通する。
 また、クラス分類適応フィルタ511では、付加クラスが、フィルタ情報として、可逆符号化部106に供給されて伝送される点で、クラス分類適応フィルタ411と共通する。
 但し、クラス分類適応フィルタ511では、最終的なクラスが、図45で説明したように縮退クラスに変換(縮退)される点で、クラス分類適応フィルタ411と相違する。
 さらに、クラス分類適応フィルタ511では、最終的なクラスを縮退クラスに変換する変換テーブルが、縮退クラスごとのタップ係数とともに、フィルタ情報として、可逆符号化部106に供給されて伝送される点で、クラス分類適応フィルタ411と相違する。
 <クラス分類適応フィルタ511の構成例>
 図47は、図46のクラス分類適応フィルタ511の構成例を示すブロック図である。
 図47において、クラス分類適応フィルタ511は、画像変換装置531及び学習装置532を有する。
 画像変換装置531には、演算部110(図46)から復号途中画像が供給されるとともに、学習装置532から縮退クラスごとのタップ係数、及び、変換テーブルが供給される。さらに、画像変換装置531には、符号化情報が供給される。また、画像変換装置531には、並べ替えバッファ102(図46)から元画像が供給される。
 画像変換装置531は、復号途中画像を第1の画像として、縮退クラスごとのタップ係数を用いたクラス分類適応処理による画像変換を行うことで、第1の画像としての復号途中画像を、元画像に相当する第2の画像としてのフィルタ後画像に変換して(フィルタ後画像を生成して)、フレームメモリ112(図46)に供給する。
 なお、画像変換装置531は、クラス分類適応処理において、クラス分類を、必要に応じて、符号化情報を用いて行う。
 また、画像変換装置531は、取得可能情報としての復号途中画像から得られるクラスタップ及び符号化情報(符号化データに含められる符号化情報)を用いたクラス分類により、第1クラスとしての通常クラスを求めるとともに、取得不可能情報としての、例えば、元画像を用いたクラス分類により第2クラスとしての付加クラスを求め、それらの通常クラスと付加クラスとから、最終的なクラスを生成する。
 さらに、画像変換装置531は、学習装置532からの変換テーブルに従って、最終的なクラスを縮退クラスに変換する。
 また、画像変換装置531は、付加クラスを、フィルタ情報として、可逆符号化部106(図46)に供給する。
 学習装置532には、並べ替えバッファ102(図46)から元画像が供給されるとともに、演算部110(図46)から復号途中画像が供給される。さらに、学習装置532には、符号化情報が供給される。
 学習装置532は、復号途中画像を生徒データとするとともに、元画像を教師データとして、縮退クラスごとのタップ係数を求めるタップ係数学習を行う。
 さらに、学習装置532は、タップ係数学習により得られる縮退クラスごとのタップ係数を、フィルタ情報として、画像変換装置531及び可逆符号化部106(図46)に供給する。
 なお、学習装置532は、画像変換装置531と同様に、タップ係数学習において、クラス分類を、必要に応じて、符号化情報を用いて行う。
 また、学習装置532は、画像変換装置531と同様に、クラス分類において、通常クラス及び付加クラスを求め、それらの通常クラスと付加クラスとから、最終的なクラスを生成する。
 さらに、学習装置532は、最終的なクラスを縮退クラスに変換する変換テーブルを生成し、その変換テーブルに従って、最終的なクラスを縮退クラスに変換する。
 また、学習装置532は、変換テーブルを、フィルタ情報として、画像変換装置531及び可逆符号化部106(図46)に供給する。
 <画像変換装置531の構成例>
 図48は、図47の画像変換装置531の構成例を示すブロック図である。
 なお、図中、図34の画像変換装置431と対応する部分については、同一の符号を付してあり、その説明は、適宜省略する。
 図48において、画像変換装置531は、タップ選択部21及び22、係数取得部24、予測演算部25、並びに、クラス分類部541を有する。
 したがって、画像変換装置531は、タップ選択部21及び22、係数取得部24、並びに、予測演算部25を有する点で、図34の画像変換装置431と共通する。
 但し、画像変換装置531は、クラス分類部441に代えて、クラス分類部541を有する点で、図34の画像変換装置431と相違する。
 クラス分類部541には、タップ選択部22から、取得可能情報としての注目画素のクラスタップが供給される。さらに、クラス分類部541には、取得可能情報としての符号化情報が供給されるとともに、並べ替えバッファ102(図46)から、取得不可能情報としての元画像が供給される。また、クラス分類部541には、学習装置532(図47)から変換テーブルが供給される。
 クラス分類部541は、図34のクラス分類部441と同様に、クラスタップ及び符号化情報を用いて、クラス分類を行い、注目画素の第1クラスとしての通常クラスを求めるとともに、元画像を用いて、クラス分類を行い、注目画素の第2クラスとしての付加クラスを求める。
 さらに、クラス分類部541は、クラス分類部441と同様に、付加クラスを、フィルタ情報として、可逆符号化部106に供給する。
 また、クラス分類部541は、クラス分類部441と同様に、通常クラスと付加クラスとから、注目画素の最終的なクラスを生成する。
 そして、クラス分類部541は、注目画素の最終的なクラスを、学習装置532(図47)からの変換テーブルに従って、縮退クラスに変換し、係数取得部24に供給する。
 ここで、図48において、係数取得部24は、学習装置532から供給される縮退クラスごとのタップ係数を記憶し、その縮退クラスごとのタップ係数から、クラス分類部541からの縮退クラスのタップ係数を取得して、予測演算部25に供給する。
 図49は、図48のクラス分類部541の構成例を示すブロック図である。
 なお、図中、図35のクラス分類部441と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図49において、クラス分類部541は、第1クラス分類部451ないしクラスコード生成部453、及び、クラス縮退部551を有する。
 したがって、図49のクラス分類部541は、第1クラス分類部451ないしクラスコード生成部453を有する点で、図35のクラス分類部441と共通する。
 但し、クラス分類部541は、クラス縮退部551を新たに有する点で、クラス分類部441と相違する。
 クラス縮退部551には、学習装置532(図47)から変換テーブルが供給されるとともに、クラスコード生成部453から注目画素の最終的なクラス(を表すクラスコード)が供給される。
 クラス縮退部551は、学習装置532からの変換テーブルに従い、クラスコード生成部453からの最終的なクラスを、縮退クラス(を表すクラスコード)に変換し、係数取得部24(図48)に供給する。
 <学習装置532の構成例>
 図50は、図47の学習装置532の構成例を示すブロック図である。
 なお、図中、図36の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図50において、学習装置532は、学習部33及び変換テーブル生成部562を有する。学習部33は、タップ選択部41及び42、足し込み部44、係数算出部45、並びに、クラス分類部461を有する。
 したがって、図50の学習装置532は、学習部33を有する点で、図36の場合と共通する。さらに、学習装置532は、学習部33が、タップ選択部41及び42、足し込み部44、係数算出部45、並びに、クラス分類部461を有する点で、図36の学習装置432と共通する。
 但し、学習装置532は、変換テーブル生成部562を新たに有する点で、学習装置432と相違する。
 変換テーブル生成部562には、係数算出部45から最終的なクラスごとのタップ係数が供給される。
 変換テーブル生成部562は、係数算出部45からの最終的なクラス(ごとのタップ係数)を、縮退クラス(ごとのタップ係数)に縮退し、最終的なクラスを縮退クラスに変換する変換テーブルを生成する。
 そして、変換テーブル生成部562は、縮退クラスごとのタップ係数及び変換テーブルを、フィルタ情報として、画像変換装置531(図47)と、可逆符号化部106(図46)とに供給する。
 ここで、最終的なクラスのクラス数は、通常クラスのクラス数と、付加クラスのクラス数との乗算値の数だけのクラス数になるが、縮退クラスのクラス数としては、例えば、通常クラスのクラス数と等しいクラス数等を採用することができる。但し、縮退クラスのクラス数は、例えば、通常クラスのクラス数や、付加クラスのクラス数等に限定されるものではない。
 最終的なクラスの縮退は、例えば、図24で説明した方法で行うことができる。また、最終的なクラスの縮退は、例えば、タップ係数を座標軸とするタップ係数空間において、タップ係数(のセット)どうしの距離が短いクラスどうしを、1つのクラスにまとめること等により行うことができる。
 さらに、最終的なクラスの縮退は、縮退後の縮退クラスごとのタップ係数を用いたクラス分類適応処理により得られる、元画像に対応する第2の画像のS/Nの低下を抑制する規範(以下、S/N規範ともいう)で行うことができる。
 最終的なクラスの縮退を、S/N規範で行う場合には、変換テーブル生成部562には、例えば、教師データとしての元画像、及び、生徒データとしての復号途中画像が供給される。
 変換テーブル生成部562は、任意の方法で、最終的なクラスの縮退を行い、縮退後の縮退クラスごとのタップ係数を用いて、クラス分類適応処理を行うことにより、教師データとしての元画像を予測した第2の画像を求め、元画像を真値とする第2の画像のS/Nを求める。
 変換テーブル生成部562は、複数の縮退の方法(縮退クラスのクラス数が異なる縮退を含む)について、第2の画像のS/Nを求め、そのS/Nが閾値以上になる縮退の1つの方法を、最終的なクラスを縮退する方法に選択する。
 <符号化処理>
 図51は、図46の符号化装置11の符号化処理の例を説明するフローチャートである。
 図46の符号化装置11では、ステップS211ないしS229において、図37のステップS111ないしS129とそれぞれ同様の処理が行われる。
 但し、符号化装置11において、クラス分類適応フィルタ511の学習装置532(図47)は、図33の学習装置432と同様に、そこに供給される復号途中画像を生徒データとするとともに、その復号途中画像に対応する元画像を教師データとして、適宜、タップ係数学習を行うが、そのタップ係数学習では、最終的なクラスごとのタップ係数を縮退した縮退クラスごとのタップ係数と、最終的なクラスを縮退クラスに変換する変換テーブルとが、フィルタ情報として生成される。縮退クラスごとのタップ係数、及び、変換テーブルは、フィルタ情報として、画像変換装置531(図47)と可逆符号化部106(図46)に供給される。
 また、ステップS212での更新の対象のフィルタ情報、及び、ステップS213での伝送対象に設定されるフィルタ情報には、縮退クラスごとのタップ係数、及び、変換テーブルが含まれる。
 さらに、ステップS225において、クラス分類適応フィルタ511は、図37のステップS125と同様に、演算部110からの復号途中画像に、ILFの処理としてのクラス分類適応処理を施す。
 すなわち、クラス分類適応フィルタ511のクラス分類適応処理では、図37の場合と同様に、クラスタップ、符号化情報、及び、元画像を用いたクラス分類により、通常クラス及び付加クラスが求められ、その通常クラス及び付加クラスから最終的なクラスが生成される。そして、付加クラスは、図37の場合と同様に、フィルタ情報として、可逆符号化部106に供給される。
 但し、クラス分類適応フィルタ511のクラス分類適応処理では、最終的なクラスが、学習装置532(図47)からの変換テーブルに従って縮退クラスに変換され、その縮退クラスごとのタップ係数が用いられる。
 また、ステップS227では、可逆符号化部106は、図37のステップS127と同様に、量子化係数、符号化情報、及び、フィルタ情報を符号化し、符号化データに含めるが、フィルタ情報には、付加クラス、縮退クラスごとのタップ係数、及び、変換テーブルが含まれる。
 したがって、可逆符号化部106で得られる符号化データには、量子化係数、符号化情報、及び、フィルタ情報としての付加クラスや、縮退クラスごとのタップ係数、変換テーブルが含まれる。そして、かかる符号化データは、ステップS228で、図14のステップS28で説明したように、蓄積バッファ107から、適宜読み出されて伝送される。
 図52は、図51のステップS225で行われるクラス分類適応処理の例を説明するフローチャートである。
 クラス分類適応フィルタ511の画像変換装置531(図48)では、ステップS241ないしS247において、図38のステップS141ないしS147とそれぞれ同様の処理が行われる。
 但し、ステップS243の注目画素のクラス分類では、クラス分類部541(図48、図49)は、クラスタップ、符号化情報、及び、元画像を用いて、注目画素について、通常画像及び付加クラスから、最終的なクラスを求め、その最終的なクラスを、縮退クラスに縮退する。
 すなわち、クラス分類では、ステップS251ないしS256において、図38のステップS151ないしS156とそれぞれ同様の処理が行われ、これにより、クラス分類部541(図49)のクラスコード生成部453では、第1クラス分類部451からの通常クラスと、第2クラス分類部452からの付加クラスとから、注目画素の最終的なクラスが生成され、クラス縮退部551に供給される。
 その後、処理は、ステップS256からステップS257に進み、クラス縮退部551は、クラスコード生成部453からの最終的なクラスを、学習装置532(図47)からの変換テーブルに従って、縮退クラスに変換する。
 そして、クラス縮退部551は、縮退クラスを、画像変換装置531(図48)の係数取得部24に供給し、ステップS243のクラス分類を終了する。
 <復号装置12の第6の構成例>
 図53は、図1の復号装置12の第6の構成例を示すブロック図である。
 なお、図中、図39の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図53において、復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、フレームメモリ210ないし選択部214、及び、クラス分類適応フィルタ571を有する。
 したがって、図53の復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、及び、フレームメモリ210ないし選択部214を有する点で、図39の場合と共通する。
 但し、図53の復号装置12は、クラス分類適応フィルタ471に代えて、クラス分類適応フィルタ571を有する点で、図39の場合と相違する。
 図53の復号装置12は、図46の符号化装置11から伝送されてくる符号化データを復号する。
 そのため、可逆復号部202からクラス分類適応フィルタ571に供給されるフィルタ情報には、縮退クラスごとのタップ係数及び変換テーブルや、付加クラスが含まれる。
 クラス分類適応フィルタ571は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてとして機能するフィルタで、クラス分類適応処理によって、ILF処理を行う点で、図39のクラス分類適応フィルタ471と共通する。
 但し、クラス分類適応フィルタ571は、クラス分類適応フィルタ471と同様に、可逆復号部202からのフィルタ情報としての付加クラスを用いて、最終的なクラスを生成するが、その最終的なクラスを、可逆復号部202からのフィルタ情報としての変換テーブルに従って、縮退クラスに変換する点で、クラス分類適応フィルタ471と相違する。
 <クラス分類適応フィルタ571の構成例>
 図54は、図53のクラス分類適応フィルタ571の構成例を示すブロック図である。
 図54において、クラス分類適応フィルタ571は、画像変換装置581を有する。
 画像変換装置581には、演算部205(図53)から復号途中画像が供給されるとともに、可逆復号部202からフィルタ情報としての縮退クラスごとのタップ係数、変換テーブル、及び、付加クラス、並びに、符号化情報が供給される。
 画像変換装置581は、図47の画像変換装置531と同様に、復号途中画像を第1の画像として、クラス(縮退クラス)ごとのタップ係数を用いたクラス分類適応処理による画像変換を行うことで、第1の画像としての復号途中画像を、元画像に相当する第2の画像としてのフィルタ後画像に変換して(フィルタ後画像を生成して)、並べ替えバッファ207及びフレームメモリ210(図53)に供給する。
 なお、画像変換装置581は、クラス分類適応処理において、図47の画像変換装置531と同様に、クラス分類を、必要に応じて、符号化情報を用いて行う。
 また、画像変換装置581は、画像変換装置481(図40)と同様に、クラスタップを用いたクラス分類により、注目画素の第1クラスとしての通常クラスを求めるとともに、注目画素の第2クラスとしての付加クラスを、可逆復号部202(図53)からのフィルタ情報から取得し、それらの通常クラスと付加クラスとから、注目画素の最終的なクラスを生成する。
 そして、画像変換装置581は、注目画素の最終的なクラスを、可逆復号部202からのフィルタ情報としての変換テーブルに従って、縮退クラスに変換し、その縮退クラスのタップ係数を用いて、式(1)の予測演算を行う。
 <画像変換装置581の構成例>
 図55は、図54の画像変換装置581の構成例を示すブロック図である。
 なお、図中、図41の画像変換装置481と共通する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図55において、画像変換装置581は、タップ選択部241及び242、係数取得部244、予測演算部245、並びに、クラス分類部591を有する。
 したがって、図55の画像変換装置581は、タップ選択部241及び242、係数取得部244、並びに、予測演算部245を有する点で、図41の画像変換装置481と共通する。
 但し、図55の画像変換装置581は、クラス分類部491に代えて、クラス分類部591を有する点で、図41の画像変換装置481と相違する。
 可逆復号部202(図53)からのフィルタ情報としての縮退クラスごとのタップ係数(通常クラスのクラス数と付加クラスのクラス数との乗算値のクラス数だけのタップ係数)は、係数取得部244に供給されて記憶される。
 また、可逆復号部202(図53)からのフィルタ情報としての付加クラスや変換テーブルは、クラス分類部591に供給される。
 さらに、クラス分類部591には、可逆復号部202からの符号化情報が供給されるとともに、タップ選択部242からクラスタップが供給される。
 クラス分類部591は、図41のクラス分類部491と同様に、クラスタップ及び符号化情報を用いて、クラス分類を行い、注目画素の第1クラスとしての通常クラスを求める。
 さらに、クラス分類部591は、図41のクラス分類部491と同様に、可逆復号部202(図53)からのフィルタ情報として付加クラスの中から、注目画素の第2クラスとしての付加クラスを取得する。
 そして、クラス分類部591は、図41のクラス分類部491と同様に、通常クラスと付加クラスとから、注目画素の最終的なクラスを生成する。
 さらに、クラス分類部591は、注目画素の最終的なクラスを、可逆復号部202(図53)からのフィルタ情報としての変換テーブルに従って、縮退クラスに変換し、係数取得部244に供給する。
 係数取得部244は、可逆復号部202からフィルタ情報としての縮退クラスごとのタップ係数から、クラス分類部591からの注目画素の縮退クラスのタップ係数を取得し、予測演算部245に供給する。
 図56は、図55のクラス分類部591の構成例を示すブロック図である。
 なお、図中、図42のクラス分類部491と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図56において、クラス分類部591は、第1クラス分類部501、クラスコード生成部502、及び、クラス縮退部601を有する。
 したがって、図56のクラス分類部591は、第1クラス分類部501、及び、クラスコード生成部502を有する点で、図42のクラス分類部491と共通する。
 但し、クラス分類部591は、クラス縮退部601を新たに有する点で、クラス分類部491と相違する。
 クラス縮退部601には、クラスコード生成部502が生成する、注目画素の最終的なクラスと、可逆復号部202(図53)からのフィルタ情報に含まれる変換テーブルとが供給される。
 クラス縮退部601は、クラスコード生成部502からの注目画素の最終的なクラスを、可逆復号部202からの変換テーブルに従って、縮退クラスに変換し、係数取得部244(図55)に供給する。
 <復号処理>
 図57は、図53の復号装置12の復号処理の例を説明するフローチャートである。
 図53の復号装置12では、ステップS261ないしS273において、図43のステップS161ないしS173とそれぞれ同様の処理が行われる。
 但し、ステップS262では、可逆復号部202は、図43のステップS162と同様に、符号化データを復号し、その復号により得られる量子化係数を、逆量子化部203に供給するとともに、符号化データの復号により得られる符号化情報やフィルタ情報を、イントラ予測部212や、動き予測補償部213、クラス分類適応フィルタ571その他の必要なブロックに供給するが、クラス分類適応フィルタ571に供給されるフィルタ情報には、第2クラスとしての付加クラスや、縮退クラスごとのタップ係数及び変換テーブルが含まれることがある。
 また、ステップS270において、クラス分類適応フィルタ571は、図43のステップS170と同様に、演算部205からの復号途中画像に、ILFの処理としてのクラス分類適応処理を施すが、そのクラス分類適応処理では、クラスタップ及び符号化情報を用いたクラス分類により求められる通常クラスと、可逆復号部202(図53)からのフィルタ情報としての付加クラスとから生成される最終的なクラスが、可逆復号部202からのフィルタ情報としての変換テーブルに従って、縮退クラスに変換される。
 図58は、図57のステップS270で行われるクラス分類適応処理の例を説明するフローチャートである。
 クラス分類適応フィルタ571の画像変換装置581(図55)では、ステップS281ないしS287において、図44のステップS181ないしS187とそれぞれ同様の処理が行われる。
 但し、ステップS283の注目画素のクラス分類では、クラス分類部591(図56)は、可逆復号部202(図53)から供給されるフィルタ情報としての注目画素の付加クラスから、注目画素の最終的なクラスを生成した後、その最終的なクラスを縮退クラスに変換する。
 すなわち、クラス分類では、ステップS291ないしS294において、図44のステップS191ないしS194とそれぞれ同様の処理が行われ、これにより、クラス分類部591(図56)のクラスコード生成部502では、第1クラス分類部451からの通常クラスと、可逆復号部202(図53)からのフィルタ情報としての付加クラスとから、注目画素の最終的なクラスが生成され、クラス縮退部601に供給される。
 その後、処理は、ステップS294からステップS295に進み、クラス縮退部601は、可逆復号部202(図53)からの変換テーブルに従って、クラスコード生成部502からの注目画素の最終的なクラスを、縮退クラスに変換する。
 そして、クラス縮退部601は、縮退クラスを、画像変換装置581(図55)の係数取得部244に供給し、ステップS283のクラス分類を終了する。
 以上のように、通常クラスと付加クラスとから生成される最終的なクラスを採用する場合には、通常クラスだけを採用する場合に比較して、クラス数が増加し、その結果、符号化データのオーバーヘッドが増加するが、最終的なクラスを縮退クラスに変換(縮退)することで、符号化データのオーバーヘッドの増加を抑制することができる。
 <クラス分類係数を用いたクラス分類>
 図59は、クラス分類係数の学習の概要を説明する図である。
 クラスタップから、ADRCコード等の画像特徴量を求め、その画像特徴量によって、注目画素をクラス分類する場合には、クラス分類適応処理により得られる第2の画像のS/Nをより向上させるようにクラス分類が行われるとは限らない。
 一方、クラス分類係数を用いたクラス分類では、クラス分類適応処理により得られる第2の画像のS/Nをより向上させるようにクラス分類が行われる。
 クラス分類係数は、タップ係数とともに、統計的な誤差を最小にする学習により求められる。
 図59は、クラス分類係数の学習の概要を示している。
 クラス分類係数の学習は、いわば階層的に行われる。最初の階層を第0階層とする。
 各階層の学習では、注目画素を、複数のサブクラスのうちのいずれかのサブクラスに分類するサブクラス分類を行うクラス分類係数が求められる。
 いま、サブクラス分類において、注目画素を、例えば、2つのサブクラス0又は1のうちのいずれかに分類することとすると、第n階層の学習では、2nクラス(個)のクラス分類係数cc(n,k)(のセット)が求められる(k=0,1,...,2n-1)。
 ここで、クラス分類係数は、タップ係数とともに、統計的な誤差を最小にする学習により求められるが、説明を簡単にするため、ここでは、クラス分類係数の学習にだけ注目する。
 いま、クラスタップがM個の画素(の画素値)で構成されることとし、そのM個の画素のうちのn番目の画素の画素値を、xmと表すこととする。
 さらに、1クラス(個)のクラス分類係数(のセット)は、クラスタップの画素数Mと同一の数の係数からなり、その1クラスのクラス分類係数のうちの、m番目の係数(クラス分類係数)を、wmと表すこととする。
 また、生徒データとしての生徒画像を対象としたクラス分類適応処理により得られる、教師データとしての教師画像の画素の画素値の予測値の予測誤差の予測値(以下、予測誤差予測値ともいう)を、yと表すこととする。
 さらに、予測誤差予測値yは、クラスタップxm及びクラス分類係数wmを用いた、例えば、線形1次式y=w1x1+w2x2+...+wMxMで表される積和演算等の所定の演算により求められることとする。ここで、所定の演算を表す、例えば、式y=w1x1+w2x2+...+wMxMを、以下、予測誤差予測式ともいう。
 クラス分類係数の学習では、まず、第0階層の学習が行われる。
 第0階層の学習では、例えば、生徒画像の全画素を、第0階層の画素群(0,0)として、画素群(0,0)の各画素の画素値を生徒データとするとともに、画素群(0,0)の各画素を対象としたクラス分類適応処理により得られる、画素群(0,0)の各画素に対応する教師画像の画素の画素値の予測値の予測誤差を教師データとして、予測誤差予測値yの予測誤差を統計的に最小にするクラス分類係数wm(のセット)が、第0階層のクラス分類係数cc(0,0)として求められる。
 さらに、第0階層の画素群(0,0)の各画素について、第0階層のクラス分類係数cc(0,0)を用い、予測誤差予測式に従って、予測誤差予測値yが求められる。
 そして、第0階層の画素群(0,0)の画素のうちの、例えば、予測誤差予測値yが0以上の画素は、サブクラス0にサブクラス分類される。さらに、第0階層の画素群(0,0)の画素のうちの、例えば、予測誤差予測値yが0未満の画素は、サブクラス1にサブクラス分類され、第0階層の学習は終了する。
 なお、サブクラス分類では、その他、例えば、予測誤差予測値yの絶対値が閾値未満の画素を、サブクラス0に分類し、予測誤差予測値yの絶対値が閾値以上の画素を、サブクラス1に分類することができる。
 また、サブクラス分類では、画素を、その画素の予測誤差予測値yの絶対値によって、3以上のサブクラスのうちのいずれかに分類することができる。
 ここで、第0階層の画素群(0,0)のうちの、サブクラス0にサブクラス分類された画素で構成される画素群を、画素群(0,0,0)というとともに、サブクラス1にサブクラス分類された画素で構成される画素群を、画素群(0,0,1)という。
 また、画素群(n,k,s)は、第n階層の画素群(n,k)の中で、第n階層のクラス分類係数cc(n,k)を用いたサブクラス分類によりサブクラスsに分類された画素群を表す。
 画素群(n,k)は、第n階層のk+1番目の画素群を表す。kは、0,1,...,2n-1の2n個の値をとり、したがって、第n階層の(サブクラス分類前の)画素群(n,k)は、2n個だけ存在する。
 第0階層の学習の終了後、必要に応じて、次の階層、すなわち、第1階層の学習が行われる。
 第1階層の学習では、第0階層の学習でのサブクラス分類で得られた21個の画素群(0,0,0)及び画素群(0,0,1)を、第1階層の2n個の画素群(n,k)、つまり、第1階層の21個の画素群(1,0)及び画素群(1,1)として、第0階層の学習と同様の処理が行われる。
 すなわち、第1階層の1個目の画素群(1,0)については、その画素群(1,0)を生徒データとするとともに、画素群(1,0)の各画素を対象としたクラス分類適応処理により得られる、画素群(1,0)の各画素に対応する教師画像の画素の画素値の予測値の予測誤差を教師データとして、予測誤差予測値yの予測誤差を統計的に最小にするクラス分類係数wmが、第1階層の1個(クラス)目のクラス分類係数cc(1,0)として求められる。
 さらに、第1階層の画素群(1,0)の各画素について、第1階層のクラス分類係数cc(1,0)を用い、予測誤差予測式に従って、予測誤差予測値yが求められる。
 そして、第1階層の画素群(1,0)の画素のうちの、予測誤差予測値yが0以上の画素は、サブクラス0の画素群(1,0,0)にサブクラス分類され、予測誤差予測値yが0未満の画素は、サブクラス1の画素群(1,0,1)にサブクラス分類される。
 第1階層の2個目の画素群(1,1)についても、同様に、その画素群(1,1)を生徒データとするとともに、画素群(1,1)の各画素を対象としたクラス分類適応処理により得られる、画素群(1,1)の各画素に対応する教師画像の画素の画素値の予測値の予測誤差を教師データとして、予測誤差予測値yの予測誤差を統計的に最小にするクラス分類係数wmが、第1階層の2個(クラス)目のクラス分類係数cc(1,1)として求められる。
 さらに、第1階層の画素群(1,1)の各画素について、第1階層のクラス分類係数cc(1,1)を用い、予測誤差予測式に従って、予測誤差予測値yが求められる。
 そして、第1階層の画素群(1,1)の画素のうちの、予測誤差予測値yが0以上の画素は、サブクラス0の画素群(1,1,0)にサブクラス分類され、予測誤差予測値yが0未満の画素は、サブクラス1の画素群(1,1,1)にサブクラス分類される。
 第1階層の学習の終了後、必要に応じて、次の階層、すなわち、第2階層の学習が行われる。
 第2階層の学習では、第1階層の学習でのサブクラス分類で得られた22個の画素群(1,0,0)、画素群(1,0,1)、画素群(1,1,0)、及び、画素群(1,1,1)を、第2階層の2n個の画素群(n,k)、つまり、第2階層の22個の画素群(2,0)、画素群(2,1)、画素群(2,2)、及び、画素群(2,3)として、第0階層の学習と同様の処理が行われる。
 すなわち、第2階層の1個目の画素群(2,0)については、その画素群(2,0)を生徒データとするとともに、画素群(2,0)の各画素を対象としたクラス分類適応処理により得られる、画素群(2,0)の各画素に対応する教師画像の画素の画素値の予測値の予測誤差を教師データとして、予測誤差予測値yの予測誤差を統計的に最小にするクラス分類係数wmが、第2階層の1個目のクラス分類係数cc(2,0)として求められる。
 さらに、第2階層の画素群(2,0)の各画素について、第2階層のクラス分類係数cc(2,0)を用い、予測誤差予測式に従って、予測誤差予測値yが求められる。
 そして、第2階層の画素群(2,0)の画素のうちの、予測誤差予測値yが0以上の画素は、サブクラス0の画素群(2,0,0)にサブクラス分類され、予測誤差予測値yが0未満の画素は、サブクラス1の画素群(2,0,1)にサブクラス分類される。
 第2階層の2個目の画素群(2,1)についても、同様に、その画素群(2,1)を生徒データとするとともに、画素群(2,1)の各画素を対象としたクラス分類適応処理により得られる、画素群(2,1)の各画素に対応する教師画像の画素の画素値の予測値の予測誤差を教師データとして、予測誤差予測値yの予測誤差を統計的に最小にするクラス分類係数wmが、第2階層の2個目のクラス分類係数cc(2,1)として求められる。
 さらに、第2階層の画素群(2,1)の各画素について、第2階層のクラス分類係数cc(2,1)を用い、予測誤差予測式に従って、予測誤差予測値yが求められる。
 そして、第2階層の画素群(2,1)の画素のうちの、予測誤差予測値yが0以上の画素は、サブクラス0の画素群(2,1,0)にサブクラス分類され、予測誤差予測値yが0未満の画素は、サブクラス1の画素群(2,1,1)にサブクラス分類される。
 第2階層の3個目の画素群(2,2)についても、同様に、その画素群(2,2)を生徒データとするとともに、画素群(2,2)の各画素を対象としたクラス分類適応処理により得られる、画素群(2,2)の各画素に対応する教師画像の画素の画素値の予測値の予測誤差を教師データとして、予測誤差予測値yの予測誤差を統計的に最小にするクラス分類係数wmが、第2階層の3個目のクラス分類係数cc(2,2)として求められる。
 さらに、第2階層の画素群(2,2)の各画素について、第2階層のクラス分類係数cc(2,2)を用い、予測誤差予測式に従って、予測誤差予測値yが求められる。
 そして、第2階層の画素群(2,2)の画素のうちの、予測誤差予測値yが0以上の画素は、サブクラス0の画素群(2,2,0)にサブクラス分類され、予測誤差予測値yが0未満の画素は、サブクラス1の画素群(2,2,1)にサブクラス分類される。
 第2階層の4個目の画素群(2,3)についても、同様に、その画素群(2,3)を生徒データとするとともに、画素群(2,3)の各画素を対象としたクラス分類適応処理により得られる、画素群(2,3)の各画素に対応する教師画像の画素の画素値の予測値の予測誤差を教師データとして、予測誤差予測値yの予測誤差を統計的に最小にするクラス分類係数wmが、第2階層の4個目のクラス分類係数cc(2,3)として求められる。
 さらに、第2階層の画素群(2,3)の各画素について、第2階層のクラス分類係数cc(2,3)を用い、予測誤差予測式に従って、予測誤差予測値yが求められる。
 そして、第2階層の画素群(2,3)の画素のうちの、予測誤差予測値yが0以上の画素は、サブクラス0の画素群(2,3,0)にサブクラス分類され、予測誤差予測値yが0未満の画素は、サブクラス1の画素群(2,3,1)にサブクラス分類される。
 第2階層の学習の終了後、必要に応じて、次の階層、すなわち、第3階層の学習が行われる。
 第3階層の学習では、第2階層の学習でのサブクラス分類で得られた23個の画素群(2,0,0)、画素群(2,0,1)、画素群(2,1,0)、画素群(2,1,1)、画素群(2,2,0)、画素群(2,2,1)、画素群(2,3,0)、画素群(2,3,1)を、第3階層の2n個の画素群(n,k)、つまり、第3階層の23個の画素群(3,0)、画素群(3,1)、画素群(3,2)、画素群(3,3)、画素群(3,4)、画素群(3,5)、画素群(3,6)、画素群(3,7)として、第0階層の学習と同様の処理が行われる。
 以下、同様にして、必要な階層までの学習が行われる。
 クラス分類係数の学習が、第L階層の学習まで行われた場合、第0階層の20個のクラス分類係数cc(2,0)から、第L階層の2L個のクラス分類係数cc(L,0),cc(L,1),...cc(L,2L-1)までのクラス分類係数が得られる。
 ここで、第n階層のk+1個目の画素群(n,k)を、第n階層のクラスkの画素群(n,k)ともいうとともに、第n階層のクラス分類係数cc(n,k)を、第n階層のクラスkのクラス分類係数cc(n,k)ともいう。
 クラス分類係数の学習では、第n階層の学習において、第n階層のクラスkのクラス分類係数cc(n,k)を用い、予測誤差予測式に従って、第n階層のクラスkの画素群(n,k)のサブクラス分類が行われ、第n階層のクラスkの画素群(n,k)が、サブクラス0の画素群と、サブクラス1の画素分とに分類される。
 そして、次の第n+1階層の学習において、第n階層のクラスkの画素群(n,k)のうちの、サブクラス0の画素群が、第n+1階層のあるクラスk1の画素群(n+1,k1)とされるとともに、サブクラス1の画素群が、第n+1階層の他のクラスk2の画素群(n+1,k2)とされる。
 さらに、第n+1階層のクラスk1の画素群(n+1,k1)のサブクラス分類が、第n+1階層のクラスk1のクラス分類係数cc(n+1,k1)を用いて行われるとともに、第n+1階層のクラスk2の画素群(n+1,k2)のサブクラス分類が、第n+1階層のクラスk2のクラス分類係数cc(n+1,k2)を用いて行われる。
 以下同様に、サブクラス分類が再帰的に繰り返し行われ、第0階層から任意の階層までのクラス分類係数が求められる。
 図60は、クラス分類係数を用いたクラス分類の概要を説明する図である。
 クラス分類係数を用いたクラス分類は、クラス分類係数の学習と同様に、階層的に行われる。
 すなわち、クラス分類係数を用いたクラス分類では、まず、第0階層のサブクラス分類が行われる。
 第0階層のサブクラス分類では、注目画素について、第0階層のクラス分類係数cc(0,0)を用いて、予測誤差予測値yが求められる。
 そして、注目画素の予測誤差予測値yが0以上である場合、注目画素は、第0階層のサブクラス0にサブクラス分類される。また、注目画素の予測誤差予測値yが0未満である場合、注目画素は、第0階層のサブクラス1にサブクラス分類される。
 第0階層において、サブクラス0又は1にサブクラス分類された注目画素は、次の階層、すなわち、第1階層のクラスの画素になる。
 第0階層において、注目画素がサブクラス分類された場合、注目画素の第1の階層のクラスが、注目画素の第0階層のクラスに、注目画素の第0階層のサブクラスを加味して決定される。
 第0階層には、クラスがないので、注目画素の第1階層のクラスは、注目画素の第0階層のサブクラスから決定される。
 すなわち、第0階層において、注目画素がサブクラス0にサブクラス分類された場合、注目画素の第1階層のクラスは、例えば、サブクラス0に応じて、クラス0に決定される。
 また、第0階層において、注目画素がサブクラス1にサブクラス分類された場合、注目画素の第1階層のクラスは、例えば、サブクラス1に応じて、クラス1に決定される。
 ここで、クラスkは、クラスコードがkのクラスを表すこととする。
 第0階層のサブクラス分類の終了後、次の階層、すなわち、第1階層のクラス分類係数cc(1,0)及びcc(1,1)が存在する場合には、第1階層のサブクラス分類が行われる。
 第1階層のサブクラス分類では、第1階層のクラス分類係数cc(1,0)及びcc(1,1)のうちの、注目画素の第1階層のクラスkのクラス分類係数cc(1,k)が用いられる。
 したがって、注目画素の第1階層のクラスkがクラス0である場合、第1階層のクラス分類係数cc(1,0)を用いて、注目画素の予測誤差予測値yが求められる。また、注目画素の第1階層のクラスkがクラス1である場合、第1階層のクラス分類係数cc(1,1)を用いて、注目画素の予測誤差予測値yが求められる。
 そして、注目画素の予測誤差予測値yが0以上である場合、注目画素は、第1階層のサブクラス0にサブクラス分類される。また、注目画素の予測誤差予測値yが0未満である場合、注目画素は、第1階層のサブクラス1にサブクラス分類される。
 第1階層において、サブクラス0又は1にサブクラス分類された注目画素は、次の階層、すなわち、第2階層のクラスの画素になる。
 第1階層において、注目画素がサブクラス分類された場合、注目画素の第2の階層のクラスが、注目画素の第1階層のクラスに、注目画素の第1階層のサブクラスを加味して決定される。
 例えば、注目画素の第1階層のクラスkがクラス0である場合、注目画素の第2階層のクラスは、その第1階層のクラス0に、注目画素の第1階層のサブクラスを加味して決定される。
 すなわち、第1階層において、注目画素がサブクラス0にサブクラス分類された場合、注目画素の第2階層のクラスは、注目画素の第1階層のクラス0の下位ビットに、注目画素の第1階層のサブクラス0を付加して、クラス002=0に決定される。ここで、下付の2は、その直前の数値が2進数であることを表す。
 また、第1階層において、注目画素がサブクラス1にサブクラス分類された場合、注目画素の第2階層のクラスは、注目画素の第1階層のクラス0の下位ビットに、注目画素の第1階層のサブクラス1を付加して、クラス012=1に決定される。
 一方、注目画素の第1階層のクラスkがクラス1である場合、注目画素の第2階層のクラスは、その第1階層のクラス1に、注目画素の第1階層のサブクラスを加味して決定される。
 すなわち、第1階層において、注目画素がサブクラス0にサブクラス分類された場合、注目画素の第2階層のクラスは、注目画素の第1階層のクラス1の下位ビットに、注目画素の第1階層のサブクラス0を付加して、クラス102=2に決定される。
 また、第1階層において、注目画素がサブクラス1にサブクラス分類された場合、注目画素の第2階層のクラスは、注目画素の第1階層のクラス1の下位ビットに、注目画素の第1階層のサブクラス1を付加して、クラス112=3に決定される。
 第1階層のサブクラス分類の終了後、次の階層、すなわち、第2階層のクラス分類係数cc(2,0),cc(2,1),cc(2,2),cc(2,3)が存在する場合には、第2階層のサブクラス分類が行われる。
 第2階層のサブクラス分類では、第2階層のクラス分類係数cc(2,0)ないしcc(2,3)のうちの、注目画素の第2階層のクラスkのクラス分類係数cc(2,k)が用いられる。
 したがって、例えば、注目画素の第2階層のクラスkがクラス0=002である場合、第2階層のクラス分類係数cc(2,0)を用いて、注目画素の予測誤差予測値yが求められる。
 そして、注目画素の予測誤差予測値yが0以上である場合、注目画素は、第2階層のサブクラス0にサブクラス分類される。また、注目画素の予測誤差予測値yが0未満である場合、注目画素は、第2階層のサブクラス1にサブクラス分類される。
 第2階層において、サブクラス0又は1にサブクラス分類された注目画素は、次の階層、すなわち、第3階層のクラスの画素になる。
 第2階層において、注目画素がサブクラス分類された場合、注目画素の第3の階層のクラスが、注目画素の第2階層のクラスに、注目画素の第2階層のサブクラスを加味して決定される。
 いまの場合、注目画素の第2階層のクラスkはクラス0=002であるため、注目画素の第3階層のクラスは、その第2階層のクラス0=002に、注目画素の第2階層のサブクラスを加味して決定される。
 すなわち、第2階層において、注目画素がサブクラス0にサブクラス分類された場合、注目画素の第3階層のクラスは、注目画素の第2階層のクラス0=002の下位ビットに、注目画素の第2階層のサブクラス0を付加して、クラス0002=0に決定される。
 また、第2階層において、注目画素がサブクラス1にサブクラス分類された場合、注目画素の第3階層のクラスは、注目画素の第2階層のクラス0=002の下位ビットに、注目画素の第2階層のサブクラス1を付加して、クラス0012=1に決定される。
 注目画素の第2階層のクラスkがクラス1=012である場合、第2階層のクラス分類係数cc(2,1)を用いて、注目画素の予測誤差予測値yが求められる。
 そして、注目画素の予測誤差予測値yが0以上である場合、注目画素は、第2階層のサブクラス0にサブクラス分類される。また、注目画素の予測誤差予測値yが0未満である場合、注目画素は、第2階層のサブクラス1にサブクラス分類される。
 第2階層において、サブクラス0又は1にサブクラス分類された注目画素は、次の階層、すなわち、第3階層のクラスの画素になる。
 第2階層において、注目画素がサブクラス分類された場合、注目画素の第2の階層のクラスが、注目画素の第2階層のクラスに、注目画素の第2階層のサブクラスを加味して決定される。
 いまの場合、注目画素の第2階層のクラスkはクラス1=012であるため、注目画素の第3階層のクラスは、その第2階層のクラス1=012に、注目画素の第2階層のサブクラスを加味して決定される。
 すなわち、第2階層において、注目画素がサブクラス0にサブクラス分類された場合、注目画素の第3階層のクラスは、注目画素の第2階層のクラス1=012の下位ビットに、注目画素の第2階層のサブクラス0を付加して、クラス0102=2に決定される。
 また、第2階層において、注目画素がサブクラス1にサブクラス分類された場合、注目画素の第3階層のクラスは、注目画素の第2階層のクラス1=012の下位ビットに、注目画素の第2階層のサブクラス1を付加して、クラス0112=3に決定される。
 注目画素の第2階層のクラスkがクラス2=102である場合、第2階層のクラス分類係数cc(2,2)を用いて、注目画素の予測誤差予測値yが求められる。
 そして、注目画素の予測誤差予測値yが0以上である場合、注目画素は、第2階層のサブクラス0にサブクラス分類される。また、注目画素の予測誤差予測値yが0未満である場合、注目画素は、第2階層のサブクラス1にサブクラス分類される。
 第2階層において、サブクラス0又は1にサブクラス分類された注目画素は、次の階層、すなわち、第3階層のクラスの画素になる。
 第2階層において、注目画素がサブクラス分類された場合、注目画素の第2の階層のクラスが、注目画素の第2階層のクラスに、注目画素の第2階層のサブクラスを加味して決定される。
 いまの場合、注目画素の第2階層のクラスkはクラス2=102であるため、注目画素の第3階層のクラスは、その第2階層のクラス2=102に、注目画素の第2階層のサブクラスを加味して決定される。
 すなわち、第2階層において、注目画素がサブクラス0にサブクラス分類された場合、注目画素の第3階層のクラスは、注目画素の第2階層のクラス2=102の下位ビットに、注目画素の第2階層のサブクラス0を付加して、クラス1002=4に決定される。
 また、第2階層において、注目画素がサブクラス1にサブクラス分類された場合、注目画素の第3階層のクラスは、注目画素の第2階層のクラス2=102の下位ビットに、注目画素の第2階層のサブクラス1を付加して、クラス1012=5に決定される。
 注目画素の第2階層のクラスkがクラス3=112である場合、第2階層のクラス分類係数cc(2,3)を用いて、注目画素の予測誤差予測値yが求められる。
 そして、注目画素の予測誤差予測値yが0以上である場合、注目画素は、第2階層のサブクラス0にサブクラス分類される。また、注目画素の予測誤差予測値yが0未満である場合、注目画素は、第2階層のサブクラス1にサブクラス分類される。
 第2階層において、サブクラス0又は1にサブクラス分類された注目画素は、次の階層、すなわち、第3階層のクラスの画素になる。
 第2階層において、注目画素がサブクラス分類された場合、注目画素の第2の階層のクラスが、注目画素の第2階層のクラスに、注目画素の第2階層のサブクラスを加味して決定される。
 いまの場合、注目画素の第2階層のクラスkはクラス3=112であるため、注目画素の第3階層のクラスは、その第2階層のクラス3=112に、注目画素の第2階層のサブクラスを加味して決定される。
 すなわち、第2階層において、注目画素がサブクラス0にサブクラス分類された場合、注目画素の第3階層のクラスは、注目画素の第2階層のクラス3=112の下位ビットに、注目画素の第2階層のサブクラス0を付加して、クラス1102=6に決定される。
 また、第2階層において、注目画素がサブクラス1にサブクラス分類された場合、注目画素の第3階層のクラスは、注目画素の第2階層のクラス3=1122の下位ビットに、注目画素の第2階層のサブクラス1を付加して、クラス1112=7に決定される。
 以下、クラス分類係数cc(n,k)が存在しない階層に到達するまで、各階層のサブクラス分類が順次行われる。
 なお、クラス分類係数の学習と、クラス分類係数を用いたクラス分類については、例えば、特許第5347862号公報に記載されている。
 <クラス分類係数の学習を行う学習装置>
 図61は、クラス分類係数の学習を行う学習装置の構成例を示すブロック図である。
 図61の学習装置では、クラス分類係数が、タップ係数とともに、統計的な誤差を最小にする学習により求められる。
 図61において、学習装置は、タップ係数学習部701、タップ係数設定部702、サブクラス教師データ生成部703、クラス分類係数学習部704、クラス分類係数設定部705、サブクラス予測部706、サブクラス分類部707、クラス決定部708、画素予測部709、及び、終了条件判定部710を有する。
 タップ係数学習部701には、生徒データとして、例えば、復号途中画像に相当する生徒画像が供給されるとともに、教師データとして、例えば、元画像に相当する教師画像が供給される。
 さらに、タップ係数学習部701には、クラス決定部708から、生徒画像の各画素の第n階層のクラスkが供給される。
 タップ係数学習部701は、クラス決定部708からの第n階層のクラスkごとに、生徒画像の第n階層のクラスkの画素群(n,k)と、その画素群(n,k)に対応する教師画像の画素群とを用いて、第n階層のクラスkのタップ係数tc(n,k)(のセット)を求めるタップ係数学習を行う。
 そして、タップ係数学習部701は、タップ係数学習によって得られる、第n階層のクラスkのタップ係数tc(n,k)(k=0,1,...2n-1)を、タップ係数設定部702に供給する。
 タップ係数設定部702は、タップ係数学習部701からの、第n階層のクラスkのタップ係数tc(n,k)(k=0,1,...2n-1)、すなわち、第n階層の2nクラス(個)のタップ係数tc(n,k)を記憶し、画素予測部709に設定する。
 また、タップ係数設定部702は、終了条件判定部710の制御に従い、記憶している第n階層の2nクラスのタップ係数tc(n,k)を外部に出力する。
 サブクラス教師データ生成部703には、教師画像が供給される。さらに、サブクラス教師データ生成部703には、画素予測部709から、生徒画像及び第n階層の2nクラスのタップ係数tc(n,k)を用いたクラス分類適応処理により求められる、教師画像の画素の画素値を予測した予測値(以下、画素予測値ともいう)が供給される。
 サブクラス教師データ生成部703は、教師画像と、画素予測部709からの画素予測値とから、サブクラス教師データを生成し、クラス分類係数学習部704に供給する。
 ここで、サブクラス教師データは、生徒画像の画素が属するサブクラスに関する情報であり、クラス分類係数学習部704でのクラス分類係数学習の教師データとなる。
 サブクラス教師データとしては、例えば、画素予測部709からサブクラス教師データ生成部703に供給される画素予測値の、教師画像の画素の画素値に対する予測誤差を採用することができる。
 クラス分類係数学習部704には、サブクラス教師データ生成部703からサブクラス教師データが供給される他、生徒画像が供給される。
 クラス分類係数学習部704は、サブクラス教師データとしての画素予測値の予測誤差を教師データとするとともに、生徒画像の画素のうちの、第n階層のクラスkの画素群(n,k)を生徒データとして、図59で説明したように、第n階層のクラスkのクラス分類係数cc(n,k)を求めるクラス分類係数学習を行う。
 すなわち、クラス分類係数学習部704では、第n階層のクラスkの生徒画像の画素群(n,k)を生徒データとするとともに、その画素群(n,k)の各画素に対応する教師画像の画素の画素予測値の予測誤差(サブクラス教師データ)を教師データとして、上述の予測誤差予測式y=w1x1+w2x2+...+wMxMで表される、画素予測値の予測誤差予測値yの予測誤差を統計的に最小にするクラス分類係数wmが、第n階層のクラスkのクラス分類係数cc(n,k)として求められる。予測誤差予測値yの予測誤差を統計的に最小にする第n階層のクラスkのクラス分類係数cc(n,k)は、例えば、タップ係数学習と同様に、最小自乗法により求めることができる。
 クラス分類係数学習部704は、クラス分類係数学習により、第n階層の2nクラスのクラス分類係数cc(n,k)を求めると、その第n階層の2nクラスのクラス分類係数cc(n,k)を、クラス分類係数設定部705に供給する。
 クラス分類係数設定部705は、クラス分類係数学習部704からの第n階層の2nクラスのクラス分類係数cc(n,k)を記憶し、サブクラス予測部706に設定する。
 また、クラス分類係数設定部705は、終了条件判定部710の制御に従い、記憶している第0階層から第n階層までのクラス分類係数cc(0,k),cc(1,k),...,cc(n,k)を外部に出力する。
 サブクラス予測部706には、生徒画像が供給される。
 サブクラス予測部706は、生徒画像の画素群のうちの第n階層のクラスkの画素群(n,k)(k=0,1,...,2n-1)の各画素について、クラス分類係数設定部705からの、第n階層のクラスkのクラス分類係数cc(n,k)={wm}を用い、予測誤差予測式y=w1x1+w2x2+...+wMxMに従った予測演算を行うことにより、画素予測値の予測誤差予測値yを、サブクラス予測値として求める。
 ここで、サブクラス予測値とは、第n階層のクラスkの画素群(n,k)の画素が属するサブクラスに関する情報としてのサブクラス教師データを予測した予測値である。
 サブクラス予測部706は、サブクラス予測値を、サブクラス分類部707に供給する。
 サブクラス分類部707は、サブクラス予測部706からのサブクラス予測値に応じて、第n階層のクラスkの画素群(n,k)(k=0,1,...,2n-1)の各画素のサブクラス分類を行う。
 すなわち、例えば、サブクラス予測値(予測誤差予測値y)が0以上の画素は、サブクラス0にサブクラス分類され、サブクラス予測値が0未満の画素は、サブクラス1にサブクラス分類される。
 サブクラス分類部707は、第n階層のクラスkの画素群(n,k)(k=0,1,...,2n-1)の各画素のサブクラスを、クラス決定部708に供給する。
 クラス決定部708は、第n階層のクラスkの画素群(n,k)(k=0,1,...,2n-1)の各画素の第n+1階層のクラスk'を、第n階層のクラスkに、サブクラス分類部707からの第n階層のサブクラスを加味して、図60で説明したように決定する。
 クラス決定部708は、第n階層のクラスkの画素群(n,k)(k=0,1,...,2n-1)の各画素について決定した第n+1階層のクラスk'を、その第n+1階層のクラスk'に属する生徒画像の画素を識別することができる形で、タップ係数学習部701、及び、画素予測部709に供給する。
 画素予測部709には、復号途中画像に相当する生徒画像が供給される。
 画素予測部709は、クラス決定部708からの第n階層のクラスk(k=0,1,...2n-1)ごとに、生徒画像の第n階層のクラスkの画素群(n,k)の各画素を注目画素として、その注目画素に対応する教師画像の画素の画素値の画素予測値を、タップ係数設定部702からの第n階層のクラスkのタップ係数tc(n,k)を用いて求めるクラス分類適応処理(のうちの式(1)の予測演算)を行う。
 そして、画素予測部709は、クラス分類適応処理により得られる各画素の画素予測値を、サブクラス教師データ生成部703に供給する。
 終了条件判定部710は、学習の終了条件が満たされるかどうかを判定し、学習の終了条件が満たされる場合には、学習装置でのタップ係数tc(n,k)及びクラス分類係数cc(n,k)の学習を終了する。さらに、終了条件判定部710は、タップ係数設定部702及びクラス分類係数設定部705を制御することにより、タップ係数設定部702が記憶している第n階層の2nクラスのタップ係数tc(n,k)を外部に出力させるとともに、クラス分類係数設定部705が記憶している第0階層から第n-1階層までのクラス分類係数cc(0,k),cc(1,k),...,cc(n-1,k)を外部に出力させる。
 なお、タップ係数設定部702及びクラス分類係数設定部705は、1つのブロックで構成することができる。
 図62は、図61の学習装置が行う学習処理の例を説明するフローチャートである。
 ステップS311において、終了条件判定部710は、階層(を表す変数)nを、初期値としての、例えば、0に設定する。
 その後、処理は、ステップS311からステップS312に進み、タップ係数学習部701は、クラス決定部708からの第n階層のクラスkごとに、生徒画像の第n階層のクラスkの画素群(n,k)と、その画素群(n,k)に対応する教師画像の画素群とを用いて、第n階層のクラスkのタップ係数tc(n,k)を求めるタップ係数学習を行う。
 そして、タップ係数学習部701は、タップ係数学習によって得られる、第n階層の2nクラスのタップ係数tc(n,k)(k=0,1,...2n-1)を、タップ係数設定部702に供給して記憶させ、処理は、ステップS312からステップS313に進む。
 なお、ステップS312のタップ係数学習では、第0階層(n=0)については、生徒画像の全画素を、1つのクラス(例えば、クラス0)の画素として、1=20個(クラス)のタップ係数tc(0,0)(のセット)が求められる。
 ステップS313では、終了条件判定部710が、学習の終了条件が満たされるかどうかを判定する。
 ここで、学習の終了条件としては、例えば、階層nが、最終階層Nであることを採用することができる。最終階層Nとは、タップ係数tc(n,k)を求める最後の階層で、例えば、あらかじめ設定しておくことができる。
 また、学習の終了条件としては、例えば、画素予測部709でのクラス分類適応処理により求められる画素予測値で構成される画像のS/Nの増加量が閾値以下であること等を採用することができる。
 ステップS313において、学習の終了条件が満たされないと判定された場合、処理は、ステップS314に進み、以下、第n階層の学習が行われる。
 すなわち、ステップS314において、タップ係数設定部702は、記憶している第n階層の2nクラスのタップ係数tc(n,k)を、画素予測部709に設定する。
 画素予測部709は、クラス決定部708からの第n階層のクラスk(k=0,1,...2n-1)ごとに、生徒画像の第n階層のクラスkの画素群(n,k)の各画素を注目画素として、その注目画素に対応する教師画像の画素の画素値の画素予測値を、タップ係数設定部702からの第n階層のクラスkのタップ係数tc(n,k)を用いて求めるクラス分類適応処理(のうちの式(1)の予測演算)を行う。
 そして、画素予測部709は、クラス分類適応処理により得られる画素予測値を、サブクラス教師データ生成部703に供給して、処理は、ステップS314からステップS315に進む。
 なお、ステップS314のクラス分類適応処理では、第0階層(n=0)については、生徒画像の全画素を、1つのクラス(例えば、クラス0)の画素として、直前のステップS312で求められる1=20個(クラス)のタップ係数tc(0,0)を用いて、1つのクラスの画素である、生徒画像の各画素に対応する教師画像の画素の画素値の画素予測値が求められる。
 ステップS315では、サブクラス教師データ生成部703は、教師画像と、画素予測部709からの各画素の画素予測値とから、その画素予測値の、教師画像の対応画素の画素値に対する予測誤差を、サブクラス教師データとして求める(生成する)。
 そして、サブクラス教師データ生成部703は、サブクラス教師データを、クラス分類係数学習部704に供給して、処理は、ステップS315からステップS316に進む。
 ステップS316では、クラス分類係数学習部704は、サブクラス教師データ生成部703からのサブクラス教師データとしての画素予測値の予測誤差を教師データとするとともに、生徒画像の画素のうちの、第n階層のクラスkの画素群(n,k)(k=0,1,...2n-1)を生徒データとして、第n階層のクラスkごとに、図59等で説明したように、サブクラス分類に用いる第n階層のクラスkのクラス分類係数cc(n,k)を求めるクラス分類係数学習を行う。
 クラス分類係数学習部704は、第n階層のクラスkごとのクラス分類係数学習により、第n階層の2nクラスのクラス分類係数cc(n,k)を求めると、その第n階層の2nクラスのクラス分類係数cc(n,k)を、クラス分類係数設定部705に供給して記憶させる。
 クラス分類係数設定部705は、クラス分類係数学習部704からの第n階層の2nクラスのクラス分類係数cc(n,k)を記憶し、サブクラス予測部706に設定して、処理は、ステップS316からステップS317に進む。
 ステップS317では、サブクラス予測部706は、生徒画像の画素群のうちの第n階層のクラスkの画素群(n,k)(k=0,1,...,2n-1)の各画素について、クラス分類係数設定部705からの、第n階層のクラスkのクラス分類係数cc(n,k)={wm}を用い、予測誤差予測式y=w1x1+w2x2+...+wMxMに従った予測演算を行うことにより、画素予測値の予測誤差予測値yを、サブクラス予測値として求め、サブクラス分類部707に供給する。
 サブクラス分類部707は、サブクラス予測部706からのサブクラス予測値に応じて、第n階層のクラスkの画素群(n,k)(k=0,1,...,2n-1)の各画素のサブクラス分類を行う。
 すなわち、サブクラス分類部707は、サブクラス予測値(予測誤差予測値y)が0以上の画素を、サブクラス0にサブクラス分類し、予測誤差予測値yが0未満の画素を、サブクラス1にサブクラス分類する。
 サブクラス分類により、第n階層のクラスkの画素群(n,k)(k=0,1,...,2n-1)は、第n階層のサブクラス0の画素群(n,k,0)とサブクラス1の画素群(n,k,1)とに分類される。
 サブクラス分類部707は、第n階層のクラスkの画素群(n,k)(k=0,1,...,2n-1)の各画素のサブクラスを、クラス決定部708に供給する。
 クラス決定部708は、第n階層のクラスkの画素群(n,k)(k=0,1,...,2n-1)の各画素の第n+1階層のクラスk'を、第n階層のクラスkに、サブクラス分類部707からの第n階層のサブクラスを加味して、図60で説明したように決定する。
 なお、ステップS317では、第0階層(n=0)の画素群(0,0)については、第1階層のクラスは、第0階層のサブクラスから決定される。
 すなわち、第0階層において、サブクラス0にサブクラス分類された画素の第1階層のクラスは、サブクラス0に応じて、クラス0に決定され、サブクラス1にサブクラス分類された画素の第1階層のクラスは、サブクラス1に応じて、クラス1に決定される。
 クラス決定部708は、第n階層のクラスkごとに、第n階層のクラスkの画素群(n,k)の各画素について、第n+1階層のクラスk'を決定すると、第n+1階層のクラスk'に属する生徒画像の画素を識別することができる形で、生徒画像の各画素の第n+1階層のクラスk'を、タップ係数学習部701、及び、画素予測部709に供給し、処理は、ステップS317からステップS318に進む。
 ステップS318では、終了条件判定部710は、階層nを1だけインクリメントして、処理は、ステップS312に戻る。
 ステップS312では、タップ係数学習部701は、クラス決定部708からの、ステップS318での階層nのインクリメント後の第n階層のクラスkごとに、上述したように、生徒画像の第n階層のクラスkの画素群(n,k)と、その画素群(n,k)に対応する教師画像の画素群とを用いて、第n階層のクラスkのタップ係数tc(n,k)を求めるタップ係数学習を行う。
 そして、タップ係数学習部701は、タップ係数学習によって得られる、第n階層の2nクラスのタップ係数tc(n,k)(k=0,1,...2n-1)を、タップ係数設定部702に供給して記憶させ、処理は、ステップS312からステップS313に進む。
 ここで、ステップS314から開始される、ある階層である第L階層の学習は、ステップS318からステップS312に戻って、第L+1階層の2L+1クラスのタップ係数tc(L+1,k)(k=0,1,...2L+1-1)が求められることにより終了する。
 ステップS314から始まり、ステップS318からステップS312に戻るまでの処理が、1階層の学習である。
 ステップS313において、学習の終了条件が満たされると判定された場合、処理は、ステップS319に進み、終了条件設定部710は、タップ係数設定部702及びクラス分類係数設定部705を制御することにより、タップ係数設定部702が記憶しているタップ係数tc(n,k)、及び、クラス分類係数設定部705が記憶しているクラス分類係数cc(n,k)を外部に出力させ、学習処理は、終了する。
 すなわち、いま、第N-1階層の学習が終了し、階層nが最終階層Nになっているとする。
 この場合、タップ係数設定部702は、終了条件判定部710の制御に従い、記憶している第N階層の2Nクラスのタップ係数tc(N,k)(k=0,1,...2N-1)を外部に出力する。
 また、クラス分類係数設定部705は、終了条件判定部710の制御に従い、記憶している第0階層の20クラスのクラス分類係数cc(0,0)から、第N-1階層の2N-1クラスのクラス分類係数cc(N-1,0),cc(N-1,1),...,cc(N-1,2N-1-1)までを外部に出力する。
 <クラス分類にクラス分類係数を用いるクラス分類適応処理を行う画像変換装置>
 図63は、クラス分類にクラス分類係数を用いるクラス分類適応処理を行う画像変換装置の構成例を示すブロック図である。
 なお、図中、図2の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図63において、画像変換装置は、タップ選択部21及び22、予測演算部25、クラス分類部721、並びに、係数取得部722を有する。
 したがって、図63の画像変換装置は、タップ選択部21及び22、並びに、予測演算部25を有する点で、図2の場合と共通する。
 但し、図63の画像変換装置は、クラス分類部23及び係数取得部24に代えて、クラス分類部721及び係数取得部722をそれぞれ有する点で、図2の場合と相違する。
 クラス分類部721には、タップ選択部22からクラスタップが供給される。
 クラス分類部721は、図61の学習装置で得られる第0階層の20クラスのクラス分類係数cc(0,0)から、第N-1階層の2N-1クラスのクラス分類係数cc(N-1,0),cc(N-1,1),...,cc(N-1,2N-1-1)までを記憶する。
 クラス分類部721は、タップ選択部22からのクラスタップを用いるとともに、第0階層の20クラスのクラス分類係数cc(0,0)から、第N-1階層の2N-1クラスのクラス分類係数cc(N-1,0),cc(N-1,1),...,cc(N-1,2N-1-1)までを、必要に応じて用いて、注目画素のクラス分類を行い、そのクラス分類により得られる注目画素のクラス(第N階層のクラス)を、係数取得部722に供給する。
 係数取得部722は、図61の学習装置で得られる第N階層の2Nクラスのタップ係数tc(n,k)(k=0,1,...2N-1)を記憶する。
 係数取得部722は、記憶している第N階層の2Nクラスのタップ係数tc(N,k)(k=0,1,...2N-1)から、クラス分類部721から供給される注目画素のクラスkのタップ係数tc(N,k)を取得し、予測演算部25に供給する。
 図64は、図63のクラス分類部721の構成例を示すブロック図である。
 図64において、クラス分類部721は、クラス分類係数設定部731、サブクラス予予測部732、サブクラス分類部733、及び、クラス決定部734を有する。
 クラス分類係数設定部731は、図61の学習装置で得られる第0階層の20クラスのクラス分類係数cc(0,0)から、第N-1階層の2N-1クラスのクラス分類係数cc(N-1,0),cc(N-1,1),...,cc(N-1,2N-1-1)までを記憶する。
 クラス分類係数設定部731は、クラス決定部734から供給される注目画素の第n階層のクラスkに従い、記憶している第0階層の20クラスのクラス分類係数cc(0,0)から、第N-1階層の2N-1クラスのクラス分類係数cc(N-1,0),cc(N-1,1),...,cc(N-1,2N-1-1)までの中から、第n階層のクラスkのクラス分類係数cc(n,k)を取得し、サブクラス予測部732に設定する。
 サブクラス予測部732には、注目画素のクラスタップが供給される。
 サブクラス予測部732は、注目画素のクラスタップを構成する画素の画素値xmと、クラス分類係数設定部731からの第n階層のクラスkのクラス分類係数cc(n,k)={wm}とを用い、予測誤差予測式y=w1x1+w2x2+...+wMxMに従った予測演算を行う。
 この予測演算により、注目画素に対応する元画像の対応画素の画素予測値の予測誤差予測値yが、注目画素のサブクラス予測値として求められ、サブクラス予測部732からサブクラス分類部733に供給される。
 サブクラス分類部733は、サブクラス予測部732からのサブクラス予測値に応じて、第n階層のクラスkの注目画素のサブクラス分類を行う。
 すなわち、例えば、注目画素のサブクラス予測値(予測誤差予測値y)が0以上である場合、第n階層のクラスkの注目画素は、サブクラス0にサブクラス分類される。また、注目画素のサブクラス予測値が0未満である場合、第n階層のクラスkの注目画素は、サブクラス1にサブクラス分類される。
 サブクラス分類部733は、第n階層のクラスkの注目画素のサブクラスを、クラス決定部734に供給する。
 クラス決定部734は、注目画素の第n+1階層のクラスk'を、注目画素の第n階層のクラスkに、サブクラス分類部733からの注目画素の第n階層のサブクラスを加味して、図60で説明したように決定する。
 そして、クラス決定部734は、注目画素の第n+1階層のクラスk'を、クラス分類係数設定部731に供給する。
 この場合、クラス分類係数設定部731では、クラス決定部734から供給される注目画素の第n+1階層のクラスk'に従い、記憶している第0階層の20クラスのクラス分類係数cc(0,0)から、第N-1階層の2N-1クラスのクラス分類係数cc(N-1,0),cc(N-1,1),...,cc(N-1,2N-1-1)までの中から、第n+1階層のクラスk'のクラス分類係数cc(n+1,k')が取得され、サブクラス予測部732に設定される。
 なお、クラス決定部734は、第n+1階層が、最終階層Nである第N階層である場合、注目画素の第N階層のクラスkを、注目画素のクラス分類結果として、係数取得部722に供給する。
 図65は、図64のクラス分類部721で行われる、クラス分類係数を用いたクラス分類の処理の例を説明するフローチャートである。
 ステップS331において、クラス決定部734は、階層(を表す変数)nを、初期値としての、例えば、0に設定し、処理は、ステップS332に進む。
 ステップS332では、クラス決定部734は、階層nが最終階層Nであるかどうかを判定する。
 ステップS332において、階層nが最終階層Nでないと判定された場合、処理は、ステップS333に進み、注目画素のサブクラス予測値が求められる。
 すなわち、ステップS333では、クラス分類係数設定部731は、クラス決定部734から供給される注目画素の第n階層のクラスkに従い、第n階層のクラスkのクラス分類係数cc(n,k)を、サブクラス予測部732に設定する。
 なお、第0階層(n=0)については、クラス分類係数設定部731は、第0階層のクラス分類係数cc(0,0)を、サブクラス予測部732に設定する。
 サブクラス予測部732は、タップ選択部22(図63)からの注目画素のクラスタップを構成する画素の画素値xmと、クラス分類係数設定部731からの第n階層のクラスkのクラス分類係数cc(n,k)={wm}とを用い、予測誤差予測式y=w1x1+w2x2+...+wMxMに従った予測演算を行う。
 そして、サブクラス予測部732は、予測演算により得られる注目画素のサブクラス予測値を、サブクラス分類部733に供給して、処理は、ステップS333からステップS334に進む。
 ステップS334では、サブクラス分類部733は、サブクラス予測部732からのサブクラス予測値に応じて、第n階層のクラスkの注目画素のサブクラス分類を行う。そして、サブクラス分類部733は、サブクラス分類により得られる、注目画素の、第n階層のサブクラスを、クラス決定部734に供給し、処理は、ステップS334からステップS335に進む。
 ステップS335では、クラス決定部734は、注目画素の第n+1階層のクラスkを、注目画素の第n階層のクラスkに、サブクラス分類部733からの第n階層のサブクラスを加味して、図60で説明したように決定する。
 そして、クラス決定部734は、注目画素の第n+1階層のクラスkを、クラス分類係数設定部731に供給し、処理は、ステップS335からステップS336に進む。
 ステップS336では、クラス決定部734は、階層nを1だけインクリメントして、処理は、ステップS332に戻る。
 そして、ステップS332において、階層nが最終階層Nであると判定された場合、処理は、ステップS337に進み、クラス決定部734は、注目画素の第N階層のクラスkを、注目画素のクラス分類結果として、係数取得部722(図63)に供給し、クラス分類の処理は終了する。
 以上のようなクラス分類係数を用いたクラス分類によれば、画素値の予測誤差によって、画素が分類されるので、クラス分類適応処理により得られる第2の画像のS/Nをより向上させるようにクラス分類を行うことが可能となる。
 <符号化装置11の第7の構成例>
 図66は、図1の符号化装置11の第7の構成例を示すブロック図である。
 なお、図中、図9の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図66において、符号化装置11は、A/D変換部101ないし演算部110、フレームメモリ112ないしレート制御部117、及び、クラス分類適応フィルタ811を有する。
 したがって、図66の符号化装置11は、A/D変換部101ないし演算部110、及び、フレームメモリ112ないしレート制御部117を有する点で、図9の場合と共通する。
 但し、図66の符号化装置11は、クラス分類適応フィルタ111に代えて、クラス分類適応フィルタ811を有する点で、図9の場合と相違する。
 クラス分類適応フィルタ811は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてとして機能するフィルタで、クラス分類適応処理によって、ILF処理を行う点で、クラス分類適応フィルタ111と共通する。
 但し、クラス分類適応フィルタ811では、クラス分類係数を用いてクラス分類が行われる点で、クラス分類適応フィルタ111と相違する。
 さらに、クラス分類適応フィルタ811では、クラス分類係数が、フィルタ情報として、可逆符号化部106に供給されて伝送される点で、クラス分類適応フィルタ111と相違する。
 <クラス分類適応フィルタ811の構成例>
 図67は、図66のクラス分類適応フィルタ811の構成例を示すブロック図である。
 図67において、クラス分類適応フィルタ811は、画像変換装置831及び学習装置832を有する。
 画像変換装置831には、演算部110(図66)から復号途中画像が供給されるとともに、学習装置832からクラスごとのタップ係数、及び、クラス分類係数が供給される。さらに、画像変換装置831には、符号化情報が供給される。
 画像変換装置831は、復号途中画像を第1の画像として、クラスごとのタップ係数を用いたクラス分類適応処理による画像変換を行うことで、第1の画像としての復号途中画像を、元画像に相当する第2の画像としてのフィルタ後画像に変換して(フィルタ後画像を生成して)、フレームメモリ112(図66)に供給する。
 なお、画像変換装置831は、クラス分類適応処理において、クラス分類を、学習装置832からのクラス分類係数を用いて行う。また、クラス分類は、図10の画像変換装置131と同様に、必要に応じて、クラスタップから得られる画像特徴量や、符号化情報を用いて行うことができる。
 学習装置832には、並べ替えバッファ102(図66)から元画像が供給されるとともに、演算部110(図66)から復号途中画像が供給される。さらに、学習装置832には、符号化情報が供給される。
 学習装置832は、復号途中画像及び元画像を用いて、クラス分類係数学習を行うとともに、タップ係数学習を行う。タップ係数学習では、クラス分類係数学習により得られるクラス分類係数を用いてクラス分類が行われる。
 さらに、学習装置832は、クラス分類係数学習により得られるクラス分類係数、及び、タップ係数学習により得られるクラスごとのタップ係数を、フィルタ情報として、画像変換装置831及び可逆符号化部106(図66)に供給する。
 なお、学習装置832では、画像変換装置831と同様に、クラス分類を、必要に応じて、クラスタップから得られる画像特徴量や、符号化情報をも用いて行うことができる。
 <画像変換装置831の構成例>
 図68は、図67の画像変換装置831の構成例を示すブロック図である。
 なお、図中、図11の画像変換装置131と対応する部分については、同一の符号を付してあり、その説明は、適宜省略する。
 図68において、画像変換装置831は、タップ選択部21及び22、予測演算部25、クラス分類部841、並びに、係数取得部842、を有する。
 したがって、画像変換装置831は、タップ選択部21及び22、並びに、予測演算部25を有する点で、図11の画像変換装置131と共通する。
 但し、画像変換装置831は、クラス分類部23及び係数取得部24に代えて、クラス分類部841及び係数取得部842をそれぞれ有する点で、図11の画像変換装置131と相違する。
 クラス分類部841は、図67の学習装置832から供給される第0階層の20クラスのクラス分類係数cc(0,0)から、第N-1階層の2N-1クラスのクラス分類係数cc(N-1,0),cc(N-1,1),...,cc(N-1,2N-1-1)までを記憶する。
 クラス分類部841は、タップ選択部22から供給されるクラスタップを用いるとともに、第0階層の20クラスのクラス分類係数cc(0,0)から、第N-1階層の2N-1クラスのクラス分類係数cc(N-1,0),cc(N-1,1),...,cc(N-1,2N-1-1)までを、必要に応じて用いて、注目画素のクラス分類を行い、そのクラス分類により得られる注目画素のクラス(第N階層のクラス)を、係数取得部842に供給する。
 係数取得部842は、図67の学習装置832から供給される第N階層の2Nクラスのタップ係数tc(N,k)(k=0,1,...2N-1)を記憶する。
 係数取得部842は、記憶している第N階層の2Nクラスのタップ係数tc(N,k)(k=0,1,...2N-1)から、クラス分類部841から供給される注目画素のクラスkのタップ係数tc(N,k)を取得し、予測演算部25に供給する。
 なお、クラス分類部841では、クラス分類係数の他、必要に応じて、クラスタップから得られる画像特徴量や、符号化情報をも用いて、クラス分類を行うことができる。
 例えば、クラス分類係数を用いたクラス分類の第0階層のサブクラス分類において、クラス分類係数の他、画像特徴量や符号化情報を用いることで、注目画素を、2又は3以上のサブクラスに分類することができる。
 図69は、図68のクラス分類部841の構成例を示すブロック図である。
 なお、図中、図64のクラス分類部721と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図69において、クラス分類部841は、クラス分類係数設定部731、サブクラス予予測部732、サブクラス分類部733、及び、クラス決定部734を有する。
 したがって、図69のクラス分類部841は、クラス分類係数設定部731ないしクラス決定部734を有する点で、図64のクラス分類部721と共通する。
 但し、図69のクラス分類部841では、クラス分類係数設定部731は、図67の学習装置832から供給される第0階層の20クラスのクラス分類係数cc(0,0)から、第N-1階層の2N-1クラスのクラス分類係数cc(N-1,0),cc(N-1,1),...,cc(N-1,2N-1-1)までを記憶する。
 また、図69のクラス分類部841では、サブクラス分類部733に、サブクラス予測部732から、注目画素のサブクラス予測値が供給される他、クラスタップ及び符号化情報が供給される。
 サブクラス分類部733では、サブクラス予測値の他、クラスタップから得られる画像特徴量や、符号化情報をも用いて、第0階層のサブクラス分類を行うことができる。
 第0階層のサブクラス分類を、サブクラス予測値の他、画像特徴量や符号化情報を用いて行うことで、クラス分類部841で行われるクラス分類は、クラス分類係数の他、画像特徴量や、符号化情報を用いたクラス分類になる。
 <学習装置832の構成例>
 図70は、図67の学習装置832の構成例を示すブロック図である。
 なお、図中、図61の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図70において、学習装置832は、タップ係数学習部701、タップ係数設定部702、サブクラス教師データ生成部703、クラス分類係数学習部704、クラス分類係数設定部705、サブクラス予測部706、サブクラス分類部707、クラス決定部708、画素予測部709、及び、終了条件判定部710を有する。
 したがって、図70の学習装置832は、タップ係数学習部701ないし終了条件判定部710を有する点で、図61の場合と共通する。
 但し、図70の学習装置832では、サブクラス分類部707に、サブクラス予測部706から、サブクラス予測値が供給される他、生徒画像及び符号化情報が供給される。
 サブクラス分類部707では、図69のサブクラス分類部733と同様に、サブクラス予測値の他、生徒画像の各画素について、図68の画像変換装置831で生成されるクラスタップから得られる画像特徴量や、符号化情報をも用いて、第0階層のサブクラス分類を行うことができる。
 第0階層のサブクラス分類を、サブクラス予測値の他、画像特徴量や符号化情報を用いて行うことで、クラス決定部708で決定されるクラスは、クラス分類係数の他、画像特徴量や、符号化情報を用いたクラス分類により得られるクラスになる。
 また、図70の学習装置832では、終了条件判定部710に、画素予測部709がクラス分類適応処理により求める画素予測値を供給するとともに、教師画像を供給することができる。
 この場合、終了条件判定部710では、教師画像を真値として、画素予測値のS/Nを求め、学習の終了条件として、画素予測値で構成される画像のS/Nの増加量が閾値以下であることを採用することができる。
 かかる終了条件により得られるクラス分類係数及びタップ係数によれば、S/Nをほぼ限界(飽和状態)にまで向上させることが可能となる。
 <符号化処理>
 図71は、図66の符号化装置11の符号化処理の例を説明するフローチャートである。
 図66の符号化装置11では、ステップS411ないしS429において、図14のステップS11ないしS29とそれぞれ同様の処理が行われる。
 但し、符号化装置11において、クラス分類適応フィルタ811の学習装置832(図67)は、図10に学習装置132と同様に、そこに供給される復号途中画像を生徒データとするとともに、その復号途中画像に対応する元画像を教師データとして、適宜、学習を行うが、その学習では、クラスごとのタップ係数とクラス分類係数とが、フィルタ情報として生成される。そして、クラスごとのタップ係数とクラス分類係数とが、ステップS412で更新されるフィルタ情報、及び、ステップS413で伝送対象に設定されるフィルタ情報となる。
 また、ステップS425において、クラス分類適応フィルタ811は、図14のステップS25と同様に、演算部110からの復号途中画像に、ILFの処理としてのクラス分類適応処理を施すが、そのクラス分類適応処理では、クラス分類係数を用いてクラス分類を行う。
 ここで、クラス分類係数を用いたクラス分類では、図69や図70で説明したように、クラス分類係数の他、画像特徴量や符号化情報をも用いることができるが、以下では、説明を簡単にするため、クラス分類係数を用いたクラス分類において、画像特徴量や符号化情報をも用いることについては、適宜、説明を省略する。
 さらに、ステップS427では、可逆符号化部106(図66)は、図14のステップS27と同様に、量子化係数、符号化情報、及び、フィルタ情報を符号化し、符号化データに含めるが、符号化データに含められるフィルタ情報には、クラスごとのタップ係数の他、クラス分類係数が含まれる。
 したがって、可逆符号化部106で得られる符号化データには、量子化係数、符号化情報、並びに、フィルタ情報としてのタップ係数及びクラス分類係数が含まれる。そして、かかる符号化データは、ステップS428で、図14のステップS28で説明したように、蓄積バッファ107から、適宜読み出されて伝送される。
 図72は、図71のステップS425で行われるクラス分類適応処理の例を説明するフローチャートである。
 クラス分類適応フィルタ811の画像変換装置831(図68)では、ステップS441ないしS447において、図15のステップS41ないしS47とそれぞれ同様の処理が行われる。
 但し、ステップS443の注目画素のクラス分類では、クラス分類部841(図68、図69)は、図65で説明したように、クラス分類係数を用いてクラス分類を行い、注目画素の最終階層Nのクラスを求める。
 さらに、ステップS444では、係数取得部842(図68)は、第N階層の2Nクラスのタップ係数から、クラス分類部841からの注目画素の最終階層Nのクラスのタップ係数を取得し、予測演算部25に供給する。
 <復号装置12の第7の構成例>
 図73は、図1の復号装置12の第7の構成例を示すブロック図である。
 なお、図中、図16の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図73において、復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、フレームメモリ210ないし選択部214、及び、クラス分類適応フィルタ861を有する。
 したがって、図73の復号装置12は、蓄積バッファ201ないし演算部205、並べ替えバッファ207、D/A変換部208、及び、フレームメモリ210ないし選択部214を有する点で、図16の場合と共通する。
 但し、図73の復号装置12は、クラス分類適応フィルタ206に代えて、クラス分類適応フィルタ861を有する点で、図16の場合と相違する。
 図73の復号装置12は、図66の符号化装置11から伝送されてくる符号化データを復号する。
 そのため、可逆復号部202からクラス分類適応フィルタ861に供給されるフィルタ情報には、クラスごとのタップ係数及びクラス分類係数が含まれる。
 ここで、フィルタ情報に含まれるクラス分類係数は、第0階層の20クラスのクラス分類係数cc(0,0)から、第N-1階層の2N-1クラスのクラス分類係数cc(N-1,0),cc(N-1,1),...,cc(N-1,2N-1-1)までのクラス分類係数である。また、フィルタ情報に含まれるクラスごとのタップ係数は、最終階層Nである第N階層の2Nクラスのタップ係数tc(N,k)(k=0,1,...2N-1)である。
 クラス分類適応フィルタ861は、クラス分類適応処理によって、ILF、すなわち、DF,SAO、及び、ALFのすべてとして機能するフィルタで、クラス分類適応処理によって、ILF処理を行う点で、図16のクラス分類適応フィルタ206と共通する。
 但し、クラス分類適応フィルタ861では、クラス分類適応処理において、クラス分類係数を用いたクラス分類が行われる点で、クラス分類適応フィルタ206と相違する。
 <クラス分類適応フィルタ861の構成例>
 図74は、図73のクラス分類適応フィルタ861の構成例を示すブロック図である。
 図74において、クラス分類適応フィルタ861は、画像変換装置871を有する。
 画像変換装置871には、演算部205(図73)から復号途中画像が供給されるとともに、可逆復号部202からフィルタ情報としてのクラスごとのタップ係数及びクラス分類係数、並びに、符号化情報が供給される。
 画像変換装置871は、図67の画像変換装置831と同様に、復号途中画像を第1の画像として、クラスごとのタップ係数を用いたクラス分類適応処理による画像変換を行うことで、第1の画像としての復号途中画像を、元画像に相当する第2の画像としてのフィルタ後画像に変換して(フィルタ後画像を生成して)、並べ替えバッファ207及びフレームメモリ210(図73)に供給する。
 なお、画像変換装置871は、図67の画像変換装置831と同様に、クラス分類適応処理において、クラス分類を、可逆復号装置202(図73)からのフィルタ情報としてのクラス分類係数を用いて行う。
 画像変換装置871でのクラス分類は、図67の画像変換装置831と同様に、クラス分類係数の他、必要に応じて、クラスタップから得られる画像特徴量や、符号化情報をも用いて行うことができる。
 <画像変換装置871の構成例>
 図75は、図74の画像変換装置871の構成例を示すブロック図である。
 なお、図中、図18の画像変換装置231と共通する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図75において、画像変換装置871は、タップ選択部241及び242、予測演算部245、クラス分類部881、並びに、係数取得部882を有する。
 したがって、図75の画像変換装置871は、タップ選択部241及び242、並びに、予測演算部245を有する点で、図18の画像変換装置231と共通する。
 但し、図75の画像変換装置871は、クラス分類部243及び係数取得部244に代えて、クラス分類部881及び係数取得部882をそれぞれ有する点で、図18の画像変換装置231と相違する。
 可逆復号部202(図73)からのフィルタ情報としてのクラス分類係数、すなわち、第0階層の20クラスのクラス分類係数cc(0,0)から、第N-1階層の2N-1クラスのクラス分類係数cc(N-1,0),cc(N-1,1),...,cc(N-1,2N-1-1)までのクラス分類係数は、クラス分類部881に供給されて記憶される。
 また、可逆復号部202(図73)からのフィルタ情報としてのクラスごとのタップ係数としての、第N階層の2Nクラスのタップ係数tc(N,k)(k=0,1,...2N-1)は、係数取得部882に供給されて記憶される。
 クラス分類部881は、符号化装置11(図66)側のクラス分類部841(図68、図69)と同様に構成され、クラス分類係数を用いて、クラス分類部841と同様のクラス分類を行い、その結果得られる注目画素の第N階層のクラスを、係数取得部882に供給する。
 係数取得部882は、記憶している第N階層の2Nクラスのタップ係数tc(N,k)(k=0,1,...2N-1)から、クラス分類部881からの、注目画素の第N階層のクラスのタップ係数tc(N,k)を取得し、予測演算部245に供給する。
 <復号処理>
 図76は、図73の復号装置12の復号処理の例を説明するフローチャートである。
 図73の復号装置12では、ステップS461ないしS473において、図19のステップS61ないしS73とそれぞれ同様の処理が行われる。
 但し、ステップS462では、可逆復号部202は、図19のステップS62と同様に、符号化データを復号し、その復号により得られる量子化係数を、逆量子化部203に供給するとともに、符号化データの復号により得られる符号化情報やフィルタ情報を、イントラ予測部212や、動き予測補償部213、クラス分類適応フィルタ861その他の必要なブロックに供給するが、クラス分類適応フィルタ861に供給されるフィルタ情報には、クラスごとのタップ係数及びクラス分類係数が含まれる。
 また、ステップS470において、クラス分類適応フィルタ861は、図19のステップS70と同様に、演算部205からの復号途中画像に、ILFの処理としてのクラス分類適応処理を施すが、そのクラス分類適応処理では、クラス分類係数を用いてクラス分類を行う。
 なお、クラス分類適応フィルタ861では、クラス分類適応フィルタ811(図66)と同様に、クラス分類係数を用いたクラス分類において、クラス分類係数の他、画像特徴量や符号化情報をも用いることができる。
 図77は、図76のステップS470で行われるクラス分類適応処理の例を説明するフローチャートである。
 クラス分類適応フィルタ861の画像変換装置871(図75)では、ステップS481ないしS487において、図20のステップS81ないしS87とそれぞれ同様の処理が行われる。
 但し、ステップS483の注目画素のクラス分類では、クラス分類部881(図75)は、可逆復号部202からフィルタ情報として供給されるクラス分類係数を用いて、符号化装置11(図66)側のクラス分類部841(図68)と同様のクラス分類を行い、注目画素の最終階層Nのクラスを求める。
 さらに、ステップS484では、係数取得部882(図75)は、可逆復号部202からフィルタ情報として供給される第N階層の2Nクラスのタップ係数から、クラス分類部881からの注目画素の最終階層Nのクラスのタップ係数を取得し、予測演算部245に供給する。
 <学習装置832の他の構成例>
 図78は、図67の学習装置832の他の構成例を示すブロック図である。
 なお、図中、図70の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
 図78において、学習装置832は、タップ係数学習部701、タップ係数設定部702、サブクラス教師データ生成部703、クラス分類係数学習部704、クラス分類係数設定部705、サブクラス予測部706、サブクラス分類部707、クラス決定部708、画素予測部709、終了条件判定部710、伝送帯域検出部911、伝送量算出部912、及び、伝送対象係数設定部913を有する。
 したがって、図78の学習装置832は、タップ係数学習部701ないし終了条件判定部710を有する点で、図70の場合と共通する。
 但し、図78の学習装置832は、伝送帯域検出部911、伝送量算出部912、及び、伝送対象係数設定部913を新たに有する点で、図70の場合と相違する。
 伝送帯域検出部911は、符号化装置11から符号化データを伝送するときに使用可能な伝送帯域(例えば、符号化データに割り当てられたビットレート等)を検出し、伝送量算出部912に供給する。
 伝送量算出部912は、伝送帯域検出部911からの伝送帯域に基づいて、その伝送帯域で伝送可能なフィルタ情報のデータ量である伝送可能伝送量を求め、伝送対象係数設定部913に供給する。
 伝送対象係数設定部913には、タップ係数設定部702から、各階層の学習で求められる各階層のタップ係数、すなわち、第0階層から第N階層までのタップ係数が供給される。さらに、伝送対象係数設定部913には、クラス分類係数設定部705から、第0階層から第N-1階層までのクラス分類係数が供給される。
 伝送対象係数設定部913は、伝送量算出部912からの伝送可能伝送量に応じて、タップ係数設定部702からのタップ係数の中から、伝送対象とするタップ係数を選択し、フィルタ情報として出力する。
 さらに、伝送対象係数設定部913は、伝送量算出部912からの伝送可能伝送量に応じて、クラス分類係数設定部705からのクラス分類係数の中から、伝送対象とするクラス分類係数を選択し、フィルタ情報として出力する。
 すなわち、伝送対象係数設定部913は、伝送量算出部912からの伝送可能伝送量に応じて、タップ係数及びクラス分類係数の伝送が可能な伝送可能階層N'(<=最終階層N)を設定する。伝送可能階層N'は、伝送可能伝送量が大であるほど、大きな(深い)階層に設定される。
 さらに、伝送対象係数設定部913は、第0階層から第N階層までのタップ係数のうちの、第N'階層のタップ係数を伝送対象に設定(選択)するとともに、第0階層から第N-1階層までのクラス分類係数のうちの、第0階層から第N'-1階層までのクラス分類係数を伝送対象に設定する。
 そして、伝送対象係数設定部913は、伝送対象に設定されたタップ係数及びクラス分類係数(伝送対象係数)を、フィルタ情報として出力する。
 したがって、図78の学習装置832を有する符号化装置11では、学習装置832で得られたタップ係数及びクラス分類係数のうちの、伝送可能伝送量に応じて伝送対象に設定されたタップ係数及びクラス分類係数が伝送される。
 以上のように、学習装置832で得られたタップ係数及びクラス分類係数のうちの、伝送可能伝送量に応じて伝送対象に設定されたタップ係数及びクラス分類係数を伝送する場合には、例えば、アダプティブストリーミングのような、伝送帯域が変動する変動伝送方式に対応することができる。
 すなわち、伝送帯域が大である場合には、深い階層のクラスにまでクラス分類を行うクラス分類係数と、そのような深い階層のクラスのタップ係数とが伝送され、S/Nの改善に大きく資することができる。また、伝送帯域が小である場合には、浅い階層のクラスまでクラス分類を行うクラス分類係数と、そのような浅い階層のクラスのタップ係数とが伝送され、伝送帯域が小さい中で可能な範囲でS/Nを改善することができる。
 なお、符号化データを、変動伝送方式で伝送する場合には、いくつかの伝送帯域ごとに、その伝送帯域に適したデータ量のタップ係数及びクラス分類係数を学習により求めておき、フィルタ情報として伝送するタップ係数及びクラス分類係数を、伝送帯域(又は伝送可能伝送量)により切り替えることができる。
 また、伝送帯域ごとのタップ係数及びクラス分類係数から、伝送帯域に応じて、仮の伝送対象としてのタップ係数及びクラス分類係数を選択し、さらに、その仮の伝送対象としてのタップ係数及びクラス分類係数について、伝送可能階層N'を設定して、第N'階層のタップ係数、及び、第0階層から第N'-1階層までのクラス分類係数を、伝送対象に最終的に選択することができる。
 <RD曲線>
 図79は、ILFとして、クラス分類適応処理によりILFの処理を行うクラス分類適応フィルタを設けた場合と、ALFを設けた場合とのRD(Rate-Distortion)曲線を示す図である。
 なお、図79では、クラス分類適応フィルタを設けた場合のRD曲線、及び、ALFを設けた場合のRD曲線の他、ILFを設けていない場合のRD曲線も示してある。
 RD曲線は、S/Nを縦軸にとり、(符号化データの)ビットレートを、横軸にとったグラフであり、符号時の量子化パラメータQPごとに、S/Nとビットレートとに対応する点をプロットすることにより得ることができる。
 S/Nが大きいほど、また、ビットレートが小さいほど、圧縮効率は向上するので、RD曲線は、左上側に位置するほど、圧縮効率が良いことを表す。
 図79では、ALFを設けた場合の圧縮効率は、ILFを設けていない場合よりも3.2%だけ向上しているのに対して、クラス分類適応フィルタを設けた場合の圧縮効率は、ILFを設けていない場合よりも5.5%だけ向上している。
 したがって、クラス分類適応フィルタを設けた場合には、ALFを設けた場合よりも、2倍近く、圧縮効率を改善することができる。
 なお、本実施の形態では、説明を簡単にするために、符号化装置11から復号装置12に提供するフィルタ情報には、タップ係数そのものを含めることとしたが、フィルタ情報には、タップ係数そのものに代えて、種係数及びパラメータzを含めることができる。タップ係数は、種係数及びパラメータzから求めることができるので、種係数及びパラメータzは、タップ係数と等価な情報であり、本明細書では、フィルタ情報としてのタップ係数には、タップ係数そのものの他、種係数及びパラメータzが含まれる。タップ係数として、種係数及びパラメータzを採用する場合、パラメータzは、例えば、所定のコスト関数に基づいて決定することができる。
 <多視点画像符号化・復号システムへの適用>
 上述した一連の処理は、多視点画像符号化・復号システムに適用することができる。
 図80は、多視点画像符号化方式の一例を示す図である。
 図80に示されるように、多視点画像は、複数の視点(ビュー(view))の画像を含む。この多視点画像の複数のビューは、他のビューの情報を利用せずに自身のビューの画像のみを用いて符号化・復号を行うベースビューと、他のビューの情報を利用して符号化・復号を行うノンベースビューとによりなる。ノンベースビューの符号化・復号は、ベースビューの情報を利用するようにしても良いし、他のノンベースビューの情報を利用するようにしてもよい。
 図80の例のような多視点画像を符号化・復号する場合、多視点画像は、視点毎に符号化される。そして、そのようにして得られた符号化データを復号する場合、各視点の符号化データは、それぞれ(すなわち視点毎に)復号される。このような各視点の符号化・復号に対して、以上の実施の形態において説明した方法を適用してもよい。このようにすることにより、S/N及び圧縮効率を、大きく改善することができる。つまり、多視点画像の場合も同様に、S/N及び圧縮効率を、大きく改善することができる。
 <多視点画像符号化・復号システム>
 図81は、上述した多視点画像符号化・復号を行う多視点画像符号化・復号システムの、多視点画像符号化装置を示す図である。
 図81に示されるように、多視点画像符号化装置1000は、符号化部1001、符号化部1002、及び多重化部1003を有する。
 符号化部1001は、ベースビュー画像を符号化し、ベースビュー画像符号化ストリームを生成する。符号化部1002は、ノンベースビュー画像を符号化し、ノンベースビュー画像符号化ストリームを生成する。多重化部1003は、符号化部1001において生成されたベースビュー画像符号化ストリームと、符号化部1002において生成されたノンベースビュー画像符号化ストリームとを多重化し、多視点画像符号化ストリームを生成する。
 図82は、上述した多視点画像復号を行う多視点画像復号装置を示す図である。
 図82に示されるように、多視点画像復号装置1010は、逆多重化部1011、復号部1012、及び復号部1013を有する。
 逆多重化部1011は、ベースビュー画像符号化ストリームとノンベースビュー画像符号化ストリームとが多重化された多視点画像符号化ストリームを逆多重化し、ベースビュー画像符号化ストリームと、ノンベースビュー画像符号化ストリームとを抽出する。復号部1012は、逆多重化部1011により抽出されたベースビュー画像符号化ストリームを復号し、ベースビュー画像を得る。復号部1013は、逆多重化部1011により抽出されたノンベースビュー画像符号化ストリームを復号し、ノンベースビュー画像を得る。
 例えば、このような多視点画像符号化・復号システムにおいて、多視点画像符号化装置1000の符号化部1001及び符号化部1002として、以上の実施の形態において説明した符号化装置11を適用してもよい。このようにすることにより、多視点画像の符号化においても、以上の実施の形態において説明した方法を適用することができる。すなわち、S/N及び圧縮効率を大きく改善することができる。また例えば、多視点画像復号装置1010の復号部1012及び復号部1013として、以上の実施の形態において説明した復号装置12を適用してもよい。このようにすることにより、多視点画像の符号化データの復号においても、以上の実施の形態において説明した方法を適用することができる。すなわち、S/N及び圧縮効率を大きく改善することができる。
 <階層画像符号化・復号システムへの適用>
 また、上述した一連の処理は、階層画像符号化(スケーラブル符号化)・復号システムに適用することができる。
 図83は、階層画像符号化方式の一例を示す図である。
 階層画像符号化(スケーラブル符号化)は、画像データを、所定のパラメータについてスケーラビリティ(scalability)機能を有するように、画像を複数レイヤ化(階層化)し、レイヤ毎に符号化するものである。階層画像復号(スケーラブル復号)は、その階層画像符号化に対応する復号である。
 図83に示されるように、画像の階層化においては、スケーラビリティ機能を有する所定のパラメータを基準として1の画像が複数の画像(レイヤ)に分割される。つまり、階層化された画像(階層画像)は、その所定のパラメータの値が互いに異なる複数の階層(レイヤ)の画像を含む。この階層画像の複数のレイヤは、他のレイヤの画像を利用せずに自身のレイヤの画像のみを用いて符号化・復号を行うベースレイヤと、他のレイヤの画像を利用して符号化・復号を行うノンベースレイヤ(エンハンスメントレイヤとも称する)とによりなる。ノンベースレイヤは、ベースレイヤの画像を利用するようにしても良いし、他のノンベースレイヤの画像を利用するようにしてもよい。
 一般的に、ノンベースレイヤは、冗長性が低減されるように、自身の画像と、他のレイヤの画像との差分画像のデータ(差分データ)により構成される。例えば、1の画像をベースレイヤとノンベースレイヤ(エンハンスメントレイヤとも称する)に2階層化した場合、ベースレイヤのデータのみで元の画像よりも低品質な画像が得られ、ベースレイヤのデータとノンベースレイヤのデータを合成することで、元の画像(すなわち高品質な画像)が得られる。
 このように画像を階層化することにより、状況に応じて多様な品質の画像を容易に得ることができる。例えば携帯電話のような、処理能力の低い端末に対しては、ベースレイヤ(base layer)のみの画像圧縮情報を伝送し、空間時間解像度の低い、或いは、画質の良くない動画像を再生し、テレビやパーソナルコンピュータのような、処理能力の高い端末に対しては、ベースレイヤ(base layer)に加えて、エンハンスメントレイヤ(enhancement layer)の画像圧縮情報を伝送し、空間時間解像度の高い、或いは、画質の高い動画像を再生するといったように、トランスコード処理を行うことなく、端末やネットワークの能力に応じた画像圧縮情報を、サーバから送信することが可能となる。
 図83の例のような階層画像を符号化・復号する場合、階層画像は、レイヤ毎に符号化される。そして、そのようにして得られた符号化データを復号する場合、各レイヤの符号化データは、それぞれ(すなわちレイヤ毎に)復号される。このような各レイヤの符号化・復号に対して、以上の実施の形態において説明した方法を適用してもよい。このようにすることにより、S/N及び圧縮効率を大きく改善することができる。つまり、階層画像の場合も同様に、S/N及び圧縮効率を大きく改善することができる。
 <スケーラブルなパラメータ>
 このような階層画像符号化・階層画像復号(スケーラブル符号化・スケーラブル復号)において、スケーラビリティ(scalability)機能を有するパラメータは、任意である。例えば、空間解像度をそのパラメータとしてもよい(spatial scalability)。このスペーシャルスケーラビリティ(spatial scalability)の場合、レイヤ毎に画像の解像度が異なる。
 また、このようなスケーラビリティ性を持たせるパラメータとして、他には、例えば、時間解像度を適用しても良い(temporal scalability)。このテンポラルスケーラビリティ(temporal scalability)の場合、レイヤ毎にフレームレートが異なる。
 さらに、このようなスケーラビリティ性を持たせるパラメータとして、例えば、信号雑音比(SNR(Signal to Noise ratio))を適用しても良い(SNR scalability)。このSNRスケーラビリティ(SNR scalability)の場合、レイヤ毎にSN比が異なる。
 スケーラビリティ性を持たせるパラメータは、上述した例以外であっても、もちろんよい。例えば、ベースレイヤ(base layer)が8ビット(bit)画像よりなり、これにエンハンスメントレイヤ(enhancement layer)を加えることにより、10ビット(bit)画像が得られるビット深度スケーラビリティ(bit-depth scalability)がある。
 また、ベースレイヤ(base layer)が4:2:0フォーマットのコンポーネント画像よりなり、これにエンハンスメントレイヤ(enhancement layer)を加えることにより、4:2:2フォーマットのコンポーネント画像が得られるクロマスケーラビリティ(chroma scalability)がある。
 <階層画像符号化・復号システム>
 図84は、上述した階層画像符号化・復号を行う階層画像符号化・復号システムの、階層画像符号化装置を示す図である。
 図84に示されるように、階層画像符号化装置1020は、符号化部1021、符号化部1022、及び多重化部1023を有する。
 符号化部1021は、ベースレイヤ画像を符号化し、ベースレイヤ画像符号化ストリームを生成する。符号化部1022は、ノンベースレイヤ画像を符号化し、ノンベースレイヤ画像符号化ストリームを生成する。多重化部1023は、符号化部1021において生成されたベースレイヤ画像符号化ストリームと、符号化部1022において生成されたノンベースレイヤ画像符号化ストリームとを多重化し、階層画像符号化ストリームを生成する。
 図85は、上述した階層画像復号を行う階層画像復号装置を示す図である。
 図85に示されるように、階層画像復号装置1030は、逆多重化部1031、復号部1032、及び復号部1033を有する。
 逆多重化部1031は、ベースレイヤ画像符号化ストリームとノンベースレイヤ画像符号化ストリームとが多重化された階層画像符号化ストリームを逆多重化し、ベースレイヤ画像符号化ストリームと、ノンベースレイヤ画像符号化ストリームとを抽出する。復号部1032は、逆多重化部1031により抽出されたベースレイヤ画像符号化ストリームを復号し、ベースレイヤ画像を得る。復号部1033は、逆多重化部1031により抽出されたノンベースレイヤ画像符号化ストリームを復号し、ノンベースレイヤ画像を得る。
 例えば、このような階層画像符号化・復号システムにおいて、階層画像符号化装置1020の符号化部1021及び符号化部1022として、以上の実施の形態において説明した符号化装置11を適用してもよい。このようにすることにより、階層画像の符号化においても、以上の実施の形態において説明した方法を適用することができる。すなわち、S/N及び圧縮効率を大きく改善することができる。また例えば、階層画像復号装置1030の復号部1032及び復号部1033として、以上の実施の形態において説明した復号装置12を適用してもよい。このようにすることにより、階層画像の符号化データの復号においても、以上の実施の形態において説明した方法を適用することができる。すなわち、S/N及び圧縮効率を大きく改善することができる。
 <コンピュータ>
 上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
 図86は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
 図86に示されるコンピュータ1100において、CPU(Central Processing Unit)1101、ROM(Read Only Memory)1102、RAM(Random Access Memory)1103は、バス1104を介して相互に接続されている。
 バス1104にはまた、入出力インタフェース1110も接続されている。入出力インタフェース1110には、入力部1111、出力部1112、記憶部1113、通信部1114、及びドライブ1115が接続されている。
 入力部1111は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子等よりなる。出力部1112は、例えば、ディスプレイ、スピーカ、出力端子等よりなる。記憶部1113は、例えば、ハードディスク、RAMディスク、不揮発性のメモリ等よりなる。通信部1114は、例えば、ネットワークインタフェースよりなる。ドライブ1115は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブルメディア821を駆動する。
 以上のように構成されるコンピュータでは、CPU1101が、例えば、記憶部1113に記憶されているプログラムを、入出力インタフェース1110及びバス1104を介して、RAM1103にロードして実行することにより、上述した一連の処理が行われる。RAM1103にはまた、CPU1101が各種の処理を実行する上において必要なデータ等も適宜記憶される。
 コンピュータ(CPU1101)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア821に記録して適用することができる。その場合、プログラムは、リムーバブルメディア821をドライブ1115に装着することにより、入出力インタフェース1110を介して、記憶部1113にインストールすることができる。
 また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線又は無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部1114で受信し、記憶部1113にインストールすることができる。
 その他、このプログラムは、ROM1102や記憶部1113に、あらかじめインストールしておくこともできる。
 <本技術の応用>
 上述した実施の形態に係る符号化装置11や復号装置12は、例えば、衛星放送、ケーブルTV等の有線放送、インターネット上での配信、及びセルラー通信による端末への配信等における送信機や受信機、又は、光ディスク、磁気ディスク及びフラッシュメモリ等の媒体に画像を記録する記録装置や、これら記憶媒体から画像を再生する再生装置等の、様々な電子機器に応用され得る。以下、4つの応用例について説明する。
 <第1の応用例:テレビジョン受像機>
 図87は、上述した実施の形態を適用したテレビジョン装置の概略的な構成の一例を示す図である。
 テレビジョン装置1200は、アンテナ1201、チューナ1202、デマルチプレクサ1203、デコーダ1204、映像信号処理部1205、表示部1206、音声信号処理部1207、スピーカ1208、外部インタフェース(I/F)部1209、制御部1210、ユーザインタフェース(I/F)部1211、及びバス1212を備える。
 チューナ1202は、アンテナ1201を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ1202は、復調により得られた符号化ビットストリームをデマルチプレクサ1203へ出力する。すなわち、チューナ1202は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置1200における伝送部としての役割を有する。
 デマルチプレクサ1203は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ1204へ出力する。また、デマルチプレクサ1203は、符号化ビットストリームからEPG(Electronic Program Guide)等の補助的なデータを抽出し、抽出したデータを制御部1210に供給する。なお、デマルチプレクサ1203は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
 デコーダ1204は、デマルチプレクサ1203から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ1204は、復号処理により生成される映像データを映像信号処理部1205へ出力する。また、デコーダ1204は、復号処理により生成される音声データを音声信号処理部1207へ出力する。
 映像信号処理部1205は、デコーダ1204から入力される映像データを再生し、表示部1206に映像を表示させる。また、映像信号処理部1205は、ネットワークを介して供給されるアプリケーション画面を表示部1206に表示させてもよい。また、映像信号処理部1205は、映像データについて、設定に応じて、例えばノイズ除去等の追加的な処理を行ってもよい。さらに、映像信号処理部1205は、例えばメニュー、ボタン又はカーソル等のGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
 表示部1206は、映像信号処理部1205から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)等)の映像面上に映像又は画像を表示する。
 音声信号処理部1207は、デコーダ1204から入力される音声データについてD/A変換及び増幅等の再生処理を行い、スピーカ1208から音声を出力させる。また、音声信号処理部1207は、音声データについてノイズ除去等の追加的な処理を行ってもよい。
 外部インタフェース部1209は、テレビジョン装置1200と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース部1209を介して受信される映像ストリーム又は音声ストリームが、デコーダ1204により復号されてもよい。すなわち、外部インタフェース部1209もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置1200における伝送部としての役割を有する。
 制御部1210は、CPU等のプロセッサ、並びにRAM及びROM等のメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータ等を記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置1200の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部1211から入力される操作信号に応じて、テレビジョン装置1200の動作を制御する。
 ユーザインタフェース部1211は、制御部1210と接続される。ユーザインタフェース部1211は、例えば、ユーザがテレビジョン装置1200を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部等を有する。ユーザインタフェース部1211は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部1210へ出力する。
 バス1212は、チューナ1202、デマルチプレクサ1203、デコーダ1204、映像信号処理部1205、音声信号処理部1207、外部インタフェース部1209及び制御部1210を相互に接続する。
 このように構成されたテレビジョン装置1200において、デコーダ1204が、上述した復号装置12の機能を有するようにしてもよい。つまり、デコーダ1204が、符号化データを、以上の実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、テレビジョン装置1200は、S/N及び圧縮効率を大きく改善することができる。
 また、このように構成されたテレビジョン装置1200において、映像信号処理部1205が、例えば、デコーダ1204から供給される画像データを符号化し、得られた符号化データを、外部インタフェース部1209を介してテレビジョン装置1200の外部に出力させることができるようにしてもよい。そして、その映像信号処理部1205が、上述した符号化装置11の機能を有するようにしてもよい。つまり、映像信号処理部1205が、デコーダ1204から供給される画像データを、以上の実施の形態において説明した方法で符号化するようにしてもよい。このようにすることにより、テレビジョン装置1200は、S/N及び圧縮効率を大きく改善することができる。
 <第2の応用例:携帯電話機>
 図88は、上述した実施の形態を適用した携帯電話機の概略的な構成の一例を示す図である。
 携帯電話機1220は、アンテナ1221、通信部1222、音声コーデック1223、スピーカ1224、マイクロホン1225、カメラ部1226、画像処理部1227、多重分離部1228、記録再生部1229、表示部1230、制御部1231、操作部1232、及びバス1233を備える。
 アンテナ1221は、通信部1222に接続される。スピーカ1224及びマイクロホン1225は、音声コーデック1223に接続される。操作部1232は、制御部1231に接続される。バス1233は、通信部1222、音声コーデック1223、カメラ部1226、画像処理部1227、多重分離部1228、記録再生部1229、表示部1230、及び制御部1231を相互に接続する。
 携帯電話機1220は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録等の動作を行う。
 音声通話モードにおいて、マイクロホン1225により生成されるアナログ音声信号は、音声コーデック1223に供給される。音声コーデック1223は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック1223は、圧縮後の音声データを通信部1222へ出力する。通信部1222は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部1222は、生成した送信信号を、アンテナ1221を介して基地局(図示せず)へ送信する。また、通信部1222は、アンテナ1221を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部1222は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック1223へ出力する。音声コーデック1223は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック1223は、生成した音声信号をスピーカ1224に供給して音声を出力させる。
 また、データ通信モードにおいて、例えば、制御部1231は、操作部1232を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部1231は、文字を表示部1230に表示させる。また、制御部1231は、操作部1232を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部1222へ出力する。通信部1222は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部1222は、生成した送信信号を、アンテナ1221を介して基地局(図示せず)へ送信する。また、通信部1222は、アンテナ1221を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部1222は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部1231へ出力する。制御部1231は、表示部1230に電子メールの内容を表示させると共に、電子メールデータを記録再生部1229に供給し、その記憶媒体に書き込ませる。
 記録再生部1229は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリ等の内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Universal Serial Bus)メモリ、又はメモリカード等の外部装着型の記憶媒体であってもよい。
 また、撮影モードにおいて、例えば、カメラ部1226は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部1227へ出力する。画像処理部1227は、カメラ部1226から入力される画像データを符号化し、符号化ストリームを記録再生部1229に供給し、その記憶媒体に書き込ませる。
 さらに、画像表示モードにおいて、記録再生部1229は、記憶媒体に記録されている符号化ストリームを読み出して画像処理部1227へ出力する。画像処理部1227は、記録再生部1229から入力される符号化ストリームを復号し、画像データを表示部1230に供給し、その画像を表示させる。
 また、テレビ電話モードにおいて、例えば、多重分離部1228は、画像処理部1227により符号化された映像ストリームと、音声コーデック1223から入力される音声ストリームとを多重化し、多重化したストリームを通信部1222へ出力する。通信部1222は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部1222は、生成した送信信号を、アンテナ1221を介して基地局(図示せず)へ送信する。また、通信部1222は、アンテナ1221を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部1222は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部1228へ出力する。多重分離部1228は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部1227、音声ストリームを音声コーデック1223へ出力する。画像処理部1227は、映像ストリームを復号し、映像データを生成する。映像データは、表示部1230に供給され、表示部1230により一連の画像が表示される。音声コーデック1223は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック1223は、生成した音声信号をスピーカ1224に供給して音声を出力させる。
 このように構成された携帯電話機1220において、例えば画像処理部1227が、上述した符号化装置11の機能を有するようにしてもよい。つまり、画像処理部1227が、画像データを、以上の実施の形態において説明した方法で符号化するようにしてもよい。このようにすることにより、携帯電話機1220は、S/N及び圧縮効率を大きく改善することができる。
 また、このように構成された携帯電話機1220において、例えば画像処理部1227が、上述した復号装置12の機能を有するようにしてもよい。つまり、画像処理部1227が、符号化データを、以上の実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、携帯電話機1220は、S/N及び圧縮効率を大きく改善することができる。
 <第3の応用例:記録再生装置>
 図89は、上述した実施の形態を適用した記録再生装置の概略的な構成の一例を示す図である。
 記録再生装置1240は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置1240は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置1240は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置1240は、音声データ及び映像データを復号する。
 記録再生装置1240は、チューナ1241、外部インタフェース(I/F)部1242、エンコーダ1243、HDD(Hard Disk Drive)部1244、ディスクドライブ1245、セレクタ1246、デコーダ1247、OSD(On-Screen Display)部1248、制御部1249、及びユーザインタフェース(I/F)部1250を備える。
 チューナ1241は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ1241は、復調により得られた符号化ビットストリームをセレクタ1246へ出力する。すなわち、チューナ1241は、記録再生装置1240における伝送部としての役割を有する。
 外部インタフェース部1242は、記録再生装置1240と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース部1242は、例えば、IEEE(Institute of Electrical and Electronic Engineers)1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェース等であってよい。例えば、外部インタフェース部1242を介して受信される映像データ及び音声データは、エンコーダ1243へ入力される。すなわち、外部インタフェース部1242は、記録再生装置1240における伝送部としての役割を有する。
 エンコーダ1243は、外部インタフェース部1242から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ1243は、符号化ビットストリームをセレクタ1246へ出力する。
 HDD部1244は、映像及び音声等のコンテンツデータが圧縮された符号化ビットストリーム、各種プログラム及びその他のデータを内部のハードディスクに記録する。また、HDD部1244は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
 ディスクドライブ1245は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ1245に装着される記録媒体は、例えばDVD(Digital Versatile Disc)ディスク(DVD-Video、DVD-RAM(DVD - Random Access Memory)、DVD-R(DVD - Recordable)、DVD-RW(DVD - Rewritable)、DVD+R(DVD + Recordable)、DVD+RW(DVD + Rewritable)等)又はBlu-ray(登録商標)ディスク等であってよい。
 セレクタ1246は、映像及び音声の記録時には、チューナ1241又はエンコーダ1243から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD1244又はディスクドライブ1245へ出力する。また、セレクタ1246は、映像及び音声の再生時には、HDD1244又はディスクドライブ1245から入力される符号化ビットストリームをデコーダ1247へ出力する。
 デコーダ1247は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ1247は、生成した映像データをOSD部1248へ出力する。また、デコーダ1247は、生成した音声データを外部のスピーカへ出力する。
 OSD部1248は、デコーダ1247から入力される映像データを再生し、映像を表示する。また、OSD部1248は、表示する映像に、例えばメニュー、ボタン又はカーソル等のGUIの画像を重畳してもよい。
 制御部1249は、CPU等のプロセッサ、並びにRAM及びROM等のメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータ等を記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置1240の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部1250から入力される操作信号に応じて、記録再生装置1240の動作を制御する。
 ユーザインタフェース部1250は、制御部1249と接続される。ユーザインタフェース部1250は、例えば、ユーザが記録再生装置1240を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部等を有する。ユーザインタフェース部1250は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部1249へ出力する。
 このように構成された記録再生装置1240において、例えばエンコーダ1243が、上述した符号化装置11の機能を有するようにしてもよい。つまり、エンコーダ1243が、画像データを、以上の実施の形態において説明方法で符号化するようにしてもよい。このようにすることにより、記録再生装置1240は、S/N及び圧縮効率を大きく改善することができる。
 また、このように構成された記録再生装置1240において、例えばデコーダ1247が、上述した復号装置12の機能を有するようにしてもよい。つまり、デコーダ1247が、符号化データを、以上の実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、記録再生装置1240は、S/N及び圧縮効率を大きく改善することができる。
 <第4の応用例:撮像装置>
 図90は、上述した実施の形態を適用した撮像装置の概略的な構成の一例を示す図である。
 撮像装置1260は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
 撮像装置1260は、光学ブロック1261、撮像部1262、信号処理部1263、画像処理部1264、表示部1265、外部インタフェース(I/F)部1266、メモリ部1267、メディアドライブ1268、OSD部1269、制御部1270、ユーザインタフェース(I/F)部1271、及びバス1272を備える。
 光学ブロック1261は、撮像部1262に接続される。撮像部1262は、信号処理部1263に接続される。表示部1265は、画像処理部1264に接続される。ユーザインタフェース部1271は、制御部1270に接続される。バス1272は、画像処理部1264、外部インタフェース部1266、メモリ部1267、メディアドライブ1268、OSD部1269、及び制御部1270を相互に接続する。
 光学ブロック1261は、フォーカスレンズ及び絞り機構等を有する。光学ブロック1261は、被写体の光学像を撮像部1262の撮像面に結像させる。撮像部1262は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)等のイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部1262は、画像信号を信号処理部1263へ出力する。
 信号処理部1263は、撮像部1262から入力される画像信号に対してニー補正、ガンマ補正、色補正等の種々のカメラ信号処理を行う。信号処理部1263は、カメラ信号処理後の画像データを画像処理部1264へ出力する。
 画像処理部1264は、信号処理部1263から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部1264は、生成した符号化データを外部インタフェース部1266又はメディアドライブ1268へ出力する。また、画像処理部1264は、外部インタフェース部1266又はメディアドライブ1268から入力される符号化データを復号し、画像データを生成する。そして、画像処理部1264は、生成した画像データを表示部1265へ出力する。また、画像処理部1264は、信号処理部1263から入力される画像データを表示部1265へ出力して画像を表示させてもよい。また、画像処理部1264は、OSD部1269から取得される表示用データを、表示部1265へ出力する画像に重畳してもよい。
 OSD部1269は、例えばメニュー、ボタン又はカーソル等のGUIの画像を生成して、生成した画像を画像処理部1264へ出力する。
 外部インタフェース部1266は、例えばUSB入出力端子として構成される。外部インタフェース部1266は、例えば、画像の印刷時に、撮像装置1260とプリンタとを接続する。また、外部インタフェース部1266には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスク等のリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置1260にインストールされ得る。さらに、外部インタフェース部1266は、LAN又はインターネット等のネットワークに接続されるネットワークインタフェースとして構成されてもよい。すなわち、外部インタフェース部1266は、撮像装置1260における伝送部としての役割を有する。
 メディアドライブ1268に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリ等の、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ1268に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
 制御部1270は、CPU等のプロセッサ、並びにRAM及びROM等のメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータ等を記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置1260の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部1271から入力される操作信号に応じて、撮像装置1260の動作を制御する。
 ユーザインタフェース部1271は、制御部1270と接続される。ユーザインタフェース部1271は、例えば、ユーザが撮像装置1260を操作するためのボタン及びスイッチ等を有する。ユーザインタフェース部1271は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部1270へ出力する。
 このように構成された撮像装置1260において、例えば画像処理部1264が、上述した符号化装置11の機能を有するようにしてもよい。つまり、画像処理部1264が、画像データを、以上の実施の形態において説明した方法で符号化するようにしてもよい。このようにすることにより、撮像装置1260は、S/N及び圧縮効率を大きく改善することができる。
 また、このように構成された撮像装置1260において、例えば画像処理部1264が、上述した復号装置12の機能を有するようにしてもよい。つまり、画像処理部1264が、符号化データを、以上の実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、撮像装置1260は、S/N及び圧縮効率を大きく改善することができる。
 <その他の応用例>
 なお、本技術は、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択して使用する、例えばMPEG DASH等のようなHTTPストリーミングにも適用することができる。つまり、このような複数の符号化データ間で、符号化や復号に関する情報を共有することもできる。
 また、以上においては、本技術を適用する装置やシステム等の例を説明したが、本技術は、これに限らず、このような装置又はシステムを構成する装置に搭載するあらゆる構成、例えば、システムLSI(Large Scale Integration)等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等(すなわち、装置の一部の構成)として実施することもできる。
 <ビデオセット>
 本技術をセットとして実施する場合の例について、図91を参照して説明する。
 図91は、本技術を適用したビデオセットの概略的な構成の一例を示す図である。
 近年、電子機器の多機能化が進んでおり、その開発や製造において、その一部の構成を販売や提供等として実施する場合、1機能を有する構成として実施を行う場合だけでなく、関連する機能を有する複数の構成を組み合わせ、複数の機能を有する1セットとして実施を行う場合も多く見られるようになってきた。
 図91に示されるビデオセット1300は、このような多機能化された構成であり、画像の符号化や復号(いずれか一方でもよいし、両方でも良い)に関する機能を有するデバイスに、その機能に関連するその他の機能を有するデバイスを組み合わせたものである。
 図91に示されるように、ビデオセット1300は、ビデオモジュール1311、外部メモリ1312、パワーマネージメントモジュール1313、及びフロントエンドモジュール1314等のモジュール群と、コネクティビティ1321、カメラ1322、及びセンサ1323等の関連する機能を有するデバイスとを有する。
 モジュールは、互いに関連するいくつかの部品的機能をまとめ、まとまりのある機能を持った部品としたものである。具体的な物理的構成は任意であるが、例えば、それぞれ機能を有する複数のプロセッサ、抵抗やコンデンサ等の電子回路素子、その他のデバイス等を配線基板等に配置して一体化したものが考えられる。また、モジュールに他のモジュールやプロセッサ等を組み合わせて新たなモジュールとすることも考えられる。
 図91の例の場合、ビデオモジュール1311は、画像処理に関する機能を有する構成を組み合わせたものであり、アプリケーションプロセッサ1331、ビデオプロセッサ1332、ブロードバンドモデム1333、及びRFモジュール1334を有する。
 プロセッサは、所定の機能を有する構成をSoC(System On a Chip)により半導体チップに集積したものであり、例えばシステムLSI(Large Scale Integration)等と称されるものもある。この所定の機能を有する構成は、論理回路(ハードウエア構成)であってもよいし、CPU、ROM、RAM等と、それらを用いて実行されるプログラム(ソフトウエア構成)であってもよいし、その両方を組み合わせたものであってもよい。例えば、プロセッサが、論理回路とCPU、ROM、RAM等とを有し、機能の一部を論理回路(ハードウエア構成)により実現し、その他の機能をCPUにおいて実行されるプログラム(ソフトウエア構成)により実現するようにしてもよい。
 図91のアプリケーションプロセッサ1331は、画像処理に関するアプリケーションを実行するプロセッサである。このアプリケーションプロセッサ1331において実行されるアプリケーションは、所定の機能を実現するために、演算処理を行うだけでなく、例えばビデオプロセッサ1332等、ビデオモジュール1311内外の構成を必要に応じて制御することもできる。
 ビデオプロセッサ1332は、画像の符号化・復号(その一方若しくは両方)に関する機能を有するプロセッサである。
 ブロードバンドモデム1333は、インターネットや公衆電話回線網等の広帯域の回線を介して行われる有線若しくは無線(又はその両方)の広帯域通信により送信するデータ(デジタル信号)をデジタル変調する等してアナログ信号に変換したり、その広帯域通信により受信したアナログ信号を復調してデータ(デジタル信号)に変換したりする。ブロードバンドモデム1333は、例えば、ビデオプロセッサ1332が処理する画像データ、画像データが符号化されたストリーム、アプリケーションプログラム、設定データ等、任意の情報を処理する。
 RFモジュール1334は、アンテナを介して送受信されるRF(Radio Frequency)信号に対して、周波数変換、変復調、増幅、フィルタ処理等を行うモジュールである。例えば、RFモジュール1334は、ブロードバンドモデム1333により生成されたベースバンド信号に対して周波数変換等を行ってRF信号を生成する。また、例えば、RFモジュール1334は、フロントエンドモジュール1314を介して受信されたRF信号に対して周波数変換等を行ってベースバンド信号を生成する。
 なお、図91において点線1341に示されるように、アプリケーションプロセッサ1331とビデオプロセッサ1332を、一体化し、1つのプロセッサとして構成されるようにしてもよい。
 外部メモリ1312は、ビデオモジュール1311の外部に設けられた、ビデオモジュール1311により利用される記憶デバイスを有するモジュールである。この外部メモリ1312の記憶デバイスは、どのような物理構成により実現するようにしてもよいが、一般的にフレーム単位の画像データのような大容量のデータの格納に利用されることが多いので、例えばDRAM(Dynamic Random Access Memory)のような比較的安価で大容量の半導体メモリにより実現するのが望ましい。
 パワーマネージメントモジュール1313は、ビデオモジュール1311(ビデオモジュール1311内の各構成)への電力供給を管理し、制御する。
 フロントエンドモジュール1314は、RFモジュール1334に対してフロントエンド機能(アンテナ側の送受信端の回路)を提供するモジュールである。図91に示されるように、フロントエンドモジュール1314は、例えば、アンテナ部1351、フィルタ1352、及び増幅部1353を有する。
 アンテナ部1351は、無線信号を送受信するアンテナ及びその周辺の構成を有する。アンテナ部1351は、増幅部1353から供給される信号を無線信号として送信し、受信した無線信号を電気信号(RF信号)としてフィルタ1352に供給する。フィルタ1352は、アンテナ部1351を介して受信されたRF信号に対してフィルタ処理等を行い、処理後のRF信号をRFモジュール1334に供給する。増幅部1353は、RFモジュール1334から供給されるRF信号を増幅し、アンテナ部1351に供給する。
 コネクティビティ1321は、外部との接続に関する機能を有するモジュールである。コネクティビティ1321の物理構成は、任意である。例えば、コネクティビティ1321は、ブロードバンドモデム1333が対応する通信規格以外の通信機能を有する構成や、外部入出力端子等を有する。
 例えば、コネクティビティ1321が、Bluetooth(登録商標)、IEEE 802.11(例えばWi-Fi(Wireless Fidelity、登録商標))、NFC(Near Field Communication)、IrDA(InfraRed Data Association)等の無線通信規格に準拠する通信機能を有するモジュールや、その規格に準拠した信号を送受信するアンテナ等を有するようにしてもよい。また、例えば、コネクティビティ1321が、USB(Universal Serial Bus)、HDMI(登録商標)(High-Definition Multimedia Interface)等の有線通信規格に準拠する通信機能を有するモジュールや、その規格に準拠した端子を有するようにしてもよい。さらに、例えば、コネクティビティ1321が、アナログ入出力端子等のその他のデータ(信号)伝送機能等を有するようにしてもよい。
 なお、コネクティビティ1321が、データ(信号)の伝送先のデバイスを含むようにしてもよい。例えば、コネクティビティ1321が、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等の記録媒体に対してデータの読み出しや書き込みを行うドライブ(リムーバブルメディアのドライブだけでなく、ハードディスク、SSD(Solid State Drive)、NAS(Network Attached Storage)等も含む)を有するようにしてもよい。また、コネクティビティ1321が、画像や音声の出力デバイス(モニタやスピーカ等)を有するようにしてもよい。
 カメラ1322は、被写体を撮像し、被写体の画像データを得る機能を有するモジュールである。カメラ1322の撮像により得られた画像データは、例えば、ビデオプロセッサ1332に供給されて符号化される。
 センサ1323は、例えば、音声センサ、超音波センサ、光センサ、照度センサ、赤外線センサ、イメージセンサ、回転センサ、角度センサ、角速度センサ、速度センサ、加速度センサ、傾斜センサ、磁気識別センサ、衝撃センサ、温度センサ等、任意のセンサ機能を有するモジュールである。センサ1323により検出されたデータは、例えば、アプリケーションプロセッサ1331に供給されてアプリケーション等により利用される。
 以上においてモジュールとして説明した構成をプロセッサとして実現するようにしてもよいし、逆にプロセッサとして説明した構成をモジュールとして実現するようにしてもよい。
 以上のような構成のビデオセット1300において、後述するようにビデオプロセッサ1332に本技術を適用することができる。したがって、ビデオセット1300は、本技術を適用したセットとして実施することができる。
 <ビデオプロセッサの構成例>
 図92は、本技術を適用したビデオプロセッサ1332(図91)の概略的な構成の一例を示す図である。
 図92の例の場合、ビデオプロセッサ1332は、ビデオ信号及びオーディオ信号の入力を受けてこれらを所定の方式で符号化する機能と、符号化されたビデオデータ及びオーディオデータを復号し、ビデオ信号及びオーディオ信号を再生出力する機能とを有する。
 図92に示されるように、ビデオプロセッサ1332は、ビデオ入力処理部1401、第1画像拡大縮小部1402、第2画像拡大縮小部1403、ビデオ出力処理部1404、フレームメモリ1405、及びメモリ制御部1406を有する。また、ビデオプロセッサ1332は、エンコード・デコードエンジン1407、ビデオES(Elementary Stream)バッファ1408A及び1408B、並びに、オーディオESバッファ1409A及び1409Bを有する。さらに、ビデオプロセッサ1332は、オーディオエンコーダ1410、オーディオデコーダ1411、多重化部(MUX(Multiplexer))1412、逆多重化部(DMUX(Demultiplexer))1413、及びストリームバッファ1414を有する。
 ビデオ入力処理部1401は、例えばコネクティビティ1321(図91)等から入力されたビデオ信号を取得し、デジタル画像データに変換する。第1画像拡大縮小部1402は、画像データに対してフォーマット変換や画像の拡大縮小処理等を行う。第2画像拡大縮小部1403は、画像データに対して、ビデオ出力処理部1404を介して出力する先でのフォーマットに応じて画像の拡大縮小処理を行ったり、第1画像拡大縮小部1402と同様のフォーマット変換や画像の拡大縮小処理等を行ったりする。ビデオ出力処理部1404は、画像データに対して、フォーマット変換やアナログ信号への変換等を行って、再生されたビデオ信号として例えばコネクティビティ1321等に出力する。
 フレームメモリ1405は、ビデオ入力処理部1401、第1画像拡大縮小部1402、第2画像拡大縮小部1403、ビデオ出力処理部1404、及びエンコード・デコードエンジン1407によって共用される画像データ用のメモリである。フレームメモリ1405は、例えばDRAM等の半導体メモリとして実現される。
 メモリ制御部1406は、エンコード・デコードエンジン1407からの同期信号を受けて、アクセス管理テーブル1406Aに書き込まれたフレームメモリ1405へのアクセススケジュールに従ってフレームメモリ1405に対する書き込み・読み出しのアクセスを制御する。アクセス管理テーブル1406Aは、エンコード・デコードエンジン1407、第1画像拡大縮小部1402、第2画像拡大縮小部1403等で実行される処理に応じて、メモリ制御部1406により更新される。
 エンコード・デコードエンジン1407は、画像データのエンコード処理、並びに、画像データが符号化されたデータであるビデオストリームのデコード処理を行う。例えば、エンコード・デコードエンジン1407は、フレームメモリ1405から読み出した画像データを符号化し、ビデオストリームとしてビデオESバッファ1408Aに順次書き込む。また、例えば、ビデオESバッファ1408Bからビデオストリームを順次読み出して復号し、画像データとしてフレームメモリ1405に順次書き込む。エンコード・デコードエンジン1407は、これらの符号化や復号において、フレームメモリ1405を作業領域として使用する。また、エンコード・デコードエンジン1407は、例えばマクロブロック毎の処理を開始するタイミングで、メモリ制御部1406に対して同期信号を出力する。
 ビデオESバッファ1408Aは、エンコード・デコードエンジン1407によって生成されたビデオストリームをバッファリングして、多重化部(MUX)1412に供給する。ビデオESバッファ1408Bは、逆多重化部(DMUX)1413から供給されたビデオストリームをバッファリングして、エンコード・デコードエンジン1407に供給する。
 オーディオESバッファ1409Aは、オーディオエンコーダ1410によって生成されたオーディオストリームをバッファリングして、多重化部(MUX)1412に供給する。オーディオESバッファ1409Bは、逆多重化部(DMUX)1413から供給されたオーディオストリームをバッファリングして、オーディオデコーダ1411に供給する。
 オーディオエンコーダ1410は、例えばコネクティビティ1321等から入力されたオーディオ信号を例えばデジタル変換し、例えばMPEGオーディオ方式やAC3(AudioCode number 3)方式等の所定の方式で符号化する。オーディオエンコーダ1410は、オーディオ信号が符号化されたデータであるオーディオストリームをオーディオESバッファ1409Aに順次書き込む。オーディオデコーダ1411は、オーディオESバッファ1409Bから供給されたオーディオストリームを復号し、例えばアナログ信号への変換等を行って、再生されたオーディオ信号として例えばコネクティビティ1321等に供給する。
 多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化する。この多重化の方法(すなわち、多重化により生成されるビットストリームのフォーマット)は任意である。また、この多重化の際に、多重化部(MUX)1412は、所定のヘッダ情報等をビットストリームに付加することもできる。つまり、多重化部(MUX)1412は、多重化によりストリームのフォーマットを変換することができる。例えば、多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化することにより、転送用のフォーマットのビットストリームであるトランスポートストリームに変換する。また、例えば、多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化することにより、記録用のファイルフォーマットのデータ(ファイルデータ)に変換する。
 逆多重化部(DMUX)1413は、多重化部(MUX)1412による多重化に対応する方法で、ビデオストリームとオーディオストリームとが多重化されたビットストリームを逆多重化する。つまり、逆多重化部(DMUX)1413は、ストリームバッファ1414から読み出されたビットストリームからビデオストリームとオーディオストリームとを抽出する(ビデオストリームとオーディオストリームとを分離する)。つまり、逆多重化部(DMUX)1413は、逆多重化によりストリームのフォーマットを変換(多重化部(MUX)1412による変換の逆変換)することができる。例えば、逆多重化部(DMUX)1413は、例えばコネクティビティ1321やブロードバンドモデム1333等から供給されたトランスポートストリームを、ストリームバッファ1414を介して取得し、逆多重化することにより、ビデオストリームとオーディオストリームとに変換することができる。また、例えば、逆多重化部(DMUX)1413は、例えばコネクティビティ1321により各種記録媒体から読み出されたファイルデータを、ストリームバッファ1414を介して取得し、逆多重化することにより、ビデオストリームとオーディオストリームとに変換することができる。
 ストリームバッファ1414は、ビットストリームをバッファリングする。例えば、ストリームバッファ1414は、多重化部(MUX)1412から供給されたトランスポートストリームをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、例えばコネクティビティ1321やブロードバンドモデム1333等に供給する。
 また、例えば、ストリームバッファ1414は、多重化部(MUX)1412から供給されたファイルデータをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、例えばコネクティビティ1321等に供給し、各種記録媒体に記録させる。
 さらに、ストリームバッファ1414は、例えばコネクティビティ1321やブロードバンドモデム1333等を介して取得したトランスポートストリームをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、逆多重化部(DMUX)1413に供給する。
 また、ストリームバッファ1414は、例えばコネクティビティ1321等において各種記録媒体から読み出されたファイルデータをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、逆多重化部(DMUX)1413に供給する。
 次に、このような構成のビデオプロセッサ1332の動作の例について説明する。例えば、コネクティビティ1321等からビデオプロセッサ1332に入力されたビデオ信号は、ビデオ入力処理部1401において4:2:2Y/Cb/Cr方式等の所定の方式のデジタル画像データに変換され、フレームメモリ1405に順次書き込まれる。このデジタル画像データは、第1画像拡大縮小部1402又は第2画像拡大縮小部1403に読み出されて、4:2:0Y/Cb/Cr方式等の所定の方式へのフォーマット変換及び拡大縮小処理が行われ、再びフレームメモリ1405に書き込まれる。この画像データは、エンコード・デコードエンジン1407によって符号化され、ビデオストリームとしてビデオESバッファ1408Aに書き込まれる。
 また、コネクティビティ1321等からビデオプロセッサ1332に入力されたオーディオ信号は、オーディオエンコーダ1410によって符号化され、オーディオストリームとして、オーディオESバッファ1409Aに書き込まれる。
 ビデオESバッファ1408Aのビデオストリームと、オーディオESバッファ1409Aのオーディオストリームは、多重化部(MUX)1412に読み出されて多重化され、トランスポートストリーム若しくはファイルデータ等に変換される。多重化部(MUX)1412により生成されたトランスポートストリームは、ストリームバッファ1414にバッファされた後、例えばコネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークに出力される。また、多重化部(MUX)1412により生成されたファイルデータは、ストリームバッファ1414にバッファされた後、例えばコネクティビティ1321等に出力され、各種記録媒体に記録される。
 また、例えばコネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークからビデオプロセッサ1332に入力されたトランスポートストリームは、ストリームバッファ1414にバッファされた後、逆多重化部(DMUX)1413により逆多重化される。また、例えばコネクティビティ1321等において各種記録媒体から読み出され、ビデオプロセッサ1332に入力されたファイルデータは、ストリームバッファ1414にバッファされた後、逆多重化部(DMUX)1413により逆多重化される。つまり、ビデオプロセッサ1332に入力されたトランスポートストリーム又はファイルデータは、逆多重化部(DMUX)1413によりビデオストリームとオーディオストリームとに分離される。
 オーディオストリームは、オーディオESバッファ1409Bを介してオーディオデコーダ1411に供給され、復号されてオーディオ信号が再生される。また、ビデオストリームは、ビデオESバッファ1408Bに書き込まれた後、エンコード・デコードエンジン1407により順次読み出されて復号されてフレームメモリ1405に書き込まれる。復号された画像データは、第2画像拡大縮小部1403によって拡大縮小処理されて、フレームメモリ1405に書き込まれる。そして、復号された画像データは、ビデオ出力処理部1404に読み出されて、4:2:2Y/Cb/Cr方式等の所定の方式にフォーマット変換され、さらにアナログ信号に変換されて、ビデオ信号が再生出力される。
 このように構成されるビデオプロセッサ1332に本技術を適用する場合、エンコード・デコードエンジン1407に、上述した実施の形態に係る本技術を適用すればよい。つまり、例えば、エンコード・デコードエンジン1407が、上述した符号化装置11の機能若しくは復号装置12の機能又はその両方を有するようにしてもよい。このようにすることにより、ビデオプロセッサ1332は、上述した実施の形態の符号化装置11や復号装置12と同様の効果を得ることができる。
 なお、エンコード・デコードエンジン1407において、本技術(すなわち、符号化装置11の機能若しくは復号装置12の機能又はその両方)は、論理回路等のハードウエアにより実現するようにしてもよいし、組み込みプログラム等のソフトウエアにより実現するようにしてもよいし、それらの両方により実現するようにしてもよい。
 <ビデオプロセッサの他の構成例>
 図93は、本技術を適用したビデオプロセッサ1332の概略的な構成の他の例を示す図である。
 図93の例の場合、ビデオプロセッサ1332は、ビデオデータを所定の方式で符号化・復号する機能を有する。
 より具体的には、図93に示されるように、ビデオプロセッサ1332は、制御部1511、ディスプレイインタフェース1512、ディスプレイエンジン1513、画像処理エンジン1514、及び内部メモリ1515を有する。また、ビデオプロセッサ1332は、コーデックエンジン1516、メモリインタフェース1517、多重化・逆多重化部(MUX DMUX)1518、ネットワークインタフェース1519、及びビデオインタフェース1520を有する。
 制御部1511は、ディスプレイインタフェース1512、ディスプレイエンジン1513、画像処理エンジン1514、及びコーデックエンジン1516等、ビデオプロセッサ1332内の各処理部の動作を制御する。
 図93に示されるように、制御部1511は、例えば、メインCPU1531、サブCPU1532、及びシステムコントローラ1533を有する。メインCPU1531は、ビデオプロセッサ1332内の各処理部の動作を制御するためのプログラム等を実行する。メインCPU1531は、そのプログラム等に従って制御信号を生成し、各処理部に供給する(つまり、各処理部の動作を制御する)。サブCPU1532は、メインCPU1531の補助的な役割を果たす。例えば、サブCPU1532は、メインCPU1531が実行するプログラム等の子プロセスやサブルーチン等を実行する。システムコントローラ1533は、メインCPU1531及びサブCPU1532が実行するプログラムを指定する等、メインCPU1531及びサブCPU1532の動作を制御する。
 ディスプレイインタフェース1512は、制御部1511の制御の下、画像データを例えばコネクティビティ1321等に出力する。例えば、ディスプレイインタフェース1512は、デジタルデータの画像データをアナログ信号に変換し、再生されたビデオ信号として、又はデジタルデータの画像データのまま、コネクティビティ1321のモニタ装置等に出力する。
 ディスプレイエンジン1513は、制御部1511の制御の下、画像データに対して、その画像を表示させるモニタ装置等のハードウエアスペックに合わせるように、フォーマット変換、サイズ変換、色域変換等の各種変換処理を行う。
 画像処理エンジン1514は、制御部1511の制御の下、画像データに対して、例えば画質改善のためのフィルタ処理等、所定の画像処理を施す。
 内部メモリ1515は、ディスプレイエンジン1513、画像処理エンジン1514、及びコーデックエンジン1516により共用される、ビデオプロセッサ1332の内部に設けられたメモリである。内部メモリ1515は、例えば、ディスプレイエンジン1513、画像処理エンジン1514、及びコーデックエンジン1516の間で行われるデータの授受に利用される。例えば、内部メモリ1515は、ディスプレイエンジン1513、画像処理エンジン1514、又はコーデックエンジン1516から供給されるデータを格納し、必要に応じて(例えば、要求に応じて)、そのデータを、ディスプレイエンジン1513、画像処理エンジン1514、又はコーデックエンジン1516に供給する。この内部メモリ1515は、どのような記憶デバイスにより実現するようにしてもよいが、一般的にブロック単位の画像データやパラメータ等といった小容量のデータの格納に利用することが多いので、例えばSRAM(Static Random Access Memory)のような比較的(例えば外部メモリ1312と比較して)小容量だが応答速度が高速な半導体メモリにより実現するのが望ましい。
 コーデックエンジン1516は、画像データの符号化や復号に関する処理を行う。このコーデックエンジン1516が対応する符号化・復号の方式は任意であり、その数は1つであってもよいし、複数であってもよい。例えば、コーデックエンジン1516は、複数の符号化・復号方式のコーデック機能を備え、その中から選択されたもので画像データの符号化又は符号化データの復号を行うようにしてもよい。
 図93に示される例において、コーデックエンジン1516は、コーデックに関する処理の機能ブロックとして、例えば、MPEG-2 Video1541、AVC/H.2641542、HEVC/H.2651543、HEVC/H.265(Scalable)1544、HEVC/H.265(Multi-view)1545、及びMPEG-DASH1551を有する。
 MPEG-2 Video1541は、画像データをMPEG-2方式で符号化したり復号したりする機能ブロックである。AVC/H.2641542は、画像データをAVC方式で符号化したり復号したりする機能ブロックである。HEVC/H.2651543は、画像データをHEVC方式で符号化したり復号したりする機能ブロックである。HEVC/H.265(Scalable)1544は、画像データをHEVC方式でスケーラブル符号化したりスケーラブル復号したりする機能ブロックである。HEVC/H.265(Multi-view)1545は、画像データをHEVC方式で多視点符号化したり多視点復号したりする機能ブロックである。
 MPEG-DASH1551は、画像データをMPEG-DASH(MPEG-Dynamic Adaptive Streaming over HTTP)方式で送受信する機能ブロックである。MPEG-DASHは、HTTP(HyperText Transfer Protocol)を使ってビデオのストリーミングを行う技術であり、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択し伝送することを特徴の1つとする。MPEG-DASH1551は、規格に準拠するストリームの生成やそのストリームの伝送制御等を行い、画像データの符号化・復号については、上述したMPEG-2 Video1541乃至HEVC/H.265(Multi-view)1545を利用する。
 メモリインタフェース1517は、外部メモリ1312用のインタフェースである。画像処理エンジン1514やコーデックエンジン1516から供給されるデータは、メモリインタフェース1517を介して外部メモリ1312に供給される。また、外部メモリ1312から読み出されたデータは、メモリインタフェース1517を介してビデオプロセッサ1332(画像処理エンジン1514若しくはコーデックエンジン1516)に供給される。
 多重化・逆多重化部(MUX DMUX)1518は、符号化データのビットストリーム、画像データ、ビデオ信号等、画像に関する各種データの多重化や逆多重化を行う。この多重化・逆多重化の方法は任意である。例えば、多重化の際に、多重化・逆多重化部(MUX DMUX)1518は、複数のデータを1つにまとめるだけでなく、所定のヘッダ情報等をそのデータに付加することもできる。また、逆多重化の際に、多重化・逆多重化部(MUX DMUX)1518は、1つのデータを複数に分割するだけでなく、分割した各データに所定のヘッダ情報等を付加することもできる。つまり、多重化・逆多重化部(MUX DMUX)1518は、多重化・逆多重化によりデータのフォーマットを変換することができる。例えば、多重化・逆多重化部(MUX DMUX)1518は、ビットストリームを多重化することにより、転送用のフォーマットのビットストリームであるトランスポートストリームや、記録用のファイルフォーマットのデータ(ファイルデータ)に変換することができる。もちろん、逆多重化によりその逆変換も可能である。
 ネットワークインタフェース1519は、例えばブロードバンドモデム1333やコネクティビティ1321等向けのインタフェースである。ビデオインタフェース1520は、例えばコネクティビティ1321やカメラ1322等向けのインタフェースである。
 次に、このようなビデオプロセッサ1332の動作の例について説明する。例えば、コネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークからトランスポートストリームを受信すると、そのトランスポートストリームは、ネットワークインタフェース1519を介して多重化・逆多重化部(MUX DMUX)1518に供給されて逆多重化され、コーデックエンジン1516により復号される。コーデックエンジン1516の復号により得られた画像データは、例えば、画像処理エンジン1514により所定の画像処理が施され、ディスプレイエンジン1513により所定の変換が行われ、ディスプレイインタフェース1512を介して例えばコネクティビティ1321等に供給され、その画像がモニタに表示される。また、例えば、コーデックエンジン1516の復号により得られた画像データは、コーデックエンジン1516により再符号化され、多重化・逆多重化部(MUX DMUX)1518により多重化されてファイルデータに変換され、ビデオインタフェース1520を介して例えばコネクティビティ1321等に出力され、各種記録媒体に記録される。
 さらに、例えば、コネクティビティ1321等により図示せぬ記録媒体から読み出された、画像データが符号化された符号化データのファイルデータは、ビデオインタフェース1520を介して多重化・逆多重化部(MUX DMUX)1518に供給されて逆多重化され、コーデックエンジン1516により復号される。コーデックエンジン1516の復号により得られた画像データは、画像処理エンジン1514により所定の画像処理が施され、ディスプレイエンジン1513により所定の変換が行われ、ディスプレイインタフェース1512を介して例えばコネクティビティ1321等に供給され、その画像がモニタに表示される。また、例えば、コーデックエンジン1516の復号により得られた画像データは、コーデックエンジン1516により再符号化され、多重化・逆多重化部(MUX DMUX)1518により多重化されてトランスポートストリームに変換され、ネットワークインタフェース1519を介して例えばコネクティビティ1321やブロードバンドモデム1333等に供給され図示せぬ他の装置に伝送される。
 なお、ビデオプロセッサ1332内の各処理部の間での画像データやその他のデータの授受は、例えば、内部メモリ1515や外部メモリ1312を利用して行われる。また、パワーマネージメントモジュール1313は、例えば制御部1511への電力供給を制御する。
 このように構成されるビデオプロセッサ1332に本技術を適用する場合、コーデックエンジン1516に、上述した実施の形態に係る本技術を適用すればよい。つまり、例えば、コーデックエンジン1516が、上述した符号化装置11の機能若しくは復号装置12の機能又はその両方を有するようにすればよい。このようにすることにより、ビデオプロセッサ1332は、上述した符号化装置11や復号装置12と同様の効果を得ることができる。
 なお、コーデックエンジン1516において、本技術(すなわち、符号化装置11や復号装置12の機能)は、論理回路等のハードウエアにより実現するようにしてもよいし、組み込みプログラム等のソフトウエアにより実現するようにしてもよいし、それらの両方により実現するようにしてもよい。
 以上にビデオプロセッサ1332の構成を2例示したが、ビデオプロセッサ1332の構成は任意であり、上述した2例以外のものであってもよい。また、このビデオプロセッサ1332は、1つの半導体チップとして構成されるようにしてもよいが、複数の半導体チップとして構成されるようにしてもよい。例えば、複数の半導体を積層する3次元積層LSIとしてもよい。また、複数のLSIにより実現されるようにしてもよい。
 <装置への適用例>
 ビデオセット1300は、画像データを処理する各種装置に組み込むことができる。例えば、ビデオセット1300は、テレビジョン装置1200(図87)、携帯電話機1220(図88)、記録再生装置1240(図89)、撮像装置1260(図90)等に組み込むことができる。ビデオセット1300を組み込むことにより、その装置は、上述した符号化装置11や復号装置12と同様の効果を得ることができる。
 なお、上述したビデオセット1300の各構成の一部であっても、ビデオプロセッサ1332を含むものであれば、本技術を適用した構成として実施することができる。例えば、ビデオプロセッサ1332のみを本技術を適用したビデオプロセッサとして実施することができる。また、例えば、上述したように点線1341により示されるプロセッサやビデオモジュール1311等を、本技術を適用したプロセッサやモジュール等として実施することができる。さらに、例えば、ビデオモジュール1311、外部メモリ1312、パワーマネージメントモジュール1313、及びフロントエンドモジュール1314を組み合わせ、本技術を適用したビデオユニット1361として実施することもできる。いずれの構成の場合であっても、上述した符号化装置11や復号装置12と同様の効果を得ることができる。
 つまり、ビデオプロセッサ1332を含むものであればどのような構成であっても、ビデオセット1300の場合と同様に、画像データを処理する各種装置に組み込むことができる。例えば、ビデオプロセッサ1332、点線1341により示されるプロセッサ、ビデオモジュール1311、又は、ビデオユニット1361を、テレビジョン装置1200(図87)、携帯電話機1220(図88)、記録再生装置1240(図89)、撮像装置1260(図90)等に組み込むことができる。そして、本技術を適用したいずれかの構成を組み込むことにより、その装置は、ビデオセット1300の場合と同様に、上述した符号化装置11や復号装置12と同様の効果を得ることができる。
 <その他>
 なお、本明細書では、各種情報が、符号化データ(ビットストリーム)に多重化されて、符号化側から復号側へ伝送される例について説明したが、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化データに多重化されることなく、符号化データと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、例えば、符号化データに含まれる画像(スライス若しくはブロック等、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。すなわち、この符号化データ(画像)に関連付けられた情報は、符号化データ(画像)とは別の伝送路上で伝送されるようにしてもよい。また、この符号化データ(画像)に関連付けられた情報は、符号化データ(画像)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されるようにしてもよい。さらに、画像とその画像に対応する情報とが、例えば、複数フレーム、1フレーム、又はフレーム内の一部分等の任意の単位で互いに関連付けられるようにしてもよい。
 また、「合成する」、「多重化する」、「付加する」、「一体化する」、「含める」、「格納する」、「入れ込む」、「差し込む」、「挿入する」等の用語は、例えばフラグ情報と画像に関する情報の符号化データとを1つのデータにまとめるといった、複数の物を1つにまとめることを意味し、上述の「関連付ける」の1つの方法を意味する。
 また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
 また、例えば、1つの装置(又は処理部)として説明した構成を分割し、複数の装置(又は処理部)として構成するようにしてもよい。逆に、以上において複数の装置(又は処理部)として説明した構成をまとめて1つの装置(又は処理部)として構成されるようにしてもよい。また、各装置(又は各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(又は処理部)の構成の一部を他の装置(又は他の処理部)の構成に含めるようにしてもよい。
 また、例えば、本技術は、1つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
 また、例えば、上述したプログラムは、任意の装置において実行することができる。その場合、その装置が、必要な機能(機能ブロック等)を有し、必要な情報を得ることができるようにすればよい。
 また、例えば、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
 なお、コンピュータが実行するプログラムは、プログラムを記述するステップの処理が、本明細書で説明する順序に沿って時系列に実行されるようにしても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで個別に実行されるようにしても良い。つまり、矛盾が生じない限り、各ステップの処理が上述した順序と異なる順序で実行されるようにしてもよい。さらに、このプログラムを記述するステップの処理が、他のプログラムの処理と並列に実行されるようにしても良いし、他のプログラムの処理と組み合わせて実行されるようにしても良い。
 なお、本明細書において複数説明した本技術は、矛盾が生じない限り、それぞれ独立に単体で実施することができる。もちろん、任意の複数の本技術を併用して実施することもできる。例えば、いずれかの実施の形態において説明した本技術を、他の実施の形態において説明した本技術と組み合わせて実施することもできる。また、上述した任意の本技術を、上述していない他の技術と併用して実施することもできる。
 また、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
 なお、本技術は、以下の構成をとることができる。
 <1>
 予測符号化の残差と予測画像とを加算することにより得られる第1の画像にフィルタ処理を行い、前記予測画像の予測に用いられる第2の画像を生成するフィルタ処理部を備え、
 前記フィルタ処理部は、
  前記第1の画像のうちの処理対象である処理対象画素に対応する前記第2の画像の対応画素の画素値を求める予測演算に用いられる予測タップとなる画素を、前記第1の画像から選択する予測タップ選択部と、
  前記処理対象画素を、複数のクラスのうちのいずれかのクラスにクラス分類するクラス分類部と、
  前記第1の画像に相当する生徒画像と、前記第1の画像に対応する元画像に相当する教師画像とを用いた学習により求められた、前記複数のクラスごとの、前記予測演算に用いられるタップ係数のうちの、前記処理対象画素のクラスのタップ係数を取得するタップ係数取得部と、
  前記処理対象画素のクラスのタップ係数と、前記処理対象画素の前記予測タップとを用いた前記予測演算を行うことにより、前記対応画素の画素値を求める演算部と
 を有する
 画像処理装置。
 <2>
 前記タップ係数を伝送する伝送部をさらに備える
 <1>に記載の画像処理装置。
 <3>
 前記学習を行う学習部をさらに備える
 <2>に記載の画像処理装置。
 <4>
 前記クラス分類部は、前記第1の画像から得られる画像特徴量、及び、前記処理対象画素の予測符号化に関する符号化情報のうちの一方、又は、両方を用いて、クラス分類を行う
 <2>に記載の画像処理装置。
 <5>
 前記伝送部は、前記符号化情報を伝送する
 <4>に記載の画像処理装置。
 <6>
 前記クラス分類部は、
  前記第1の画像から得られる画像特徴量、及び、前記処理対象画素の予測符号化に関する符号化情報のうちの一方、又は、両方を用いて、前記処理対象画素を第1クラスにクラス分類し、
  復号側で取得することができない所定の情報を用いて、前記処理対象画素を第2クラスにクラス分類し、
  前記第1クラス及び前記第2クラスから、前記処理対象画素の最終的なクラスを生成し、
 前記伝送部は、前記第2クラスを伝送する
 <2>ないし<5>のいずれかに記載の画像処理装置。
 <7>
 前記クラス分類部は、前記処理対象画素の最終的なクラスを、前記処理対象画素の最終的なクラスのクラス数を縮退した縮退クラスに変換する変換テーブルに従って、前記最終的なクラスを縮退クラスに変換し、
 前記タップ係数取得部は、前記処理対象画素の前記縮退クラスのタップ係数を取得し、
 前記伝送部は、前記変換テーブルを伝送する
 <6>に記載の画像処理装置。
 <8>
 前記クラス分類部は、
  前記クラス分類に用いられるクラスタップとなる、前記第1の画像の画素の画素値と、所定のクラス分類係数とを用いた予測演算により、前記処理対象画素が属するサブクラスに関する情報を予測したサブクラス予測値を求め、
  前記サブクラス予測値に応じて、前記処理対象画素をサブクラスに分類する
 ことを繰り返すことで、前記処理対象画素をクラス分類し、
 前記伝送部は、前記クラス分類係数を伝送する
 <2>に記載の画像処理装置。
 <9>
 前記生徒画像を用いて、前記タップ係数を求めるタップ係数学習を行い、
  前記タップ係数と、前記生徒画像から選択された前記予測タップとを用いた予測演算により、前記教師画像の画素の画素予測値を求め、
  前記画素予測値と、前記教師画像の画素の画素値とを比較することにより、前記サブクラスに関する情報を生成し、
  前記生徒画像を用いた、前記サブクラスに関する情報を求める予測演算の結果と、前記サブクラスに関する情報との統計的な誤差を最小にする前記クラス分類係数を求めるクラス分類係数学習を行い、
  前記クラス分類係数学習により得られる前記クラス分類係数と、前記生徒画像とを用いた予測演算により、前記生徒画像の画素の前記サブクラス予測値を求め、
  前記サブクラス予測値に応じて、前記生徒画像の画素を前記サブクラスに分類し、
  前記サブクラスごとに、そのサブクラスの前記生徒画像の画素を用いて、前記タップ係数学習を行う
 ことを1階層の学習として行う学習部をさらに備える
 <8>に記載の画像処理装置。
 <10>
 前記学習部は、前記画素予測値のS/N(Signal to Noise ratio)に応じて、前記1階層の学習を繰り返す
 <9>に記載の画像処理装置。
 <11>
 前記伝送部は、最後の前記1階層の学習で得られる前記タップ係数と、すべての前記1階層の学習で得られる前記クラス分類係数とを伝送する
 <10>に記載の画像処理装置。
 <12>
 前記学習部は、伝送が可能な伝送可能伝送量に応じて、所定回数目の前記1階層の学習で得られる前記タップ係数と、前記所定回数目までの前記1階層の学習で得られる前記クラス分類係数とを、伝送対象の伝送対象係数に設定し、
 前記伝送部は、前記伝送対象係数を伝送する
 <10>に記載の画像処理装置。
 <13>
 前記タップ係数を受け取る受け取り部をさらに備える
 <1>に記載の画像処理装置。
 <14>
 前記クラス分類部は、前記第1の画像から得られる画像特徴量、及び、前記処理対象画素の予測符号化に関する符号化情報のうちの一方、又は、両方を用いて、クラス分類を行う
 <13>に記載の画像処理装置。
 <15>
 前記受け取り部は、前記符号化情報を受け取る
 <14>に記載の画像処理装置。
 <16>
 前記受け取り部は、前記第1の画像から得られる画像特徴量、及び、前記処理対象画素の予測符号化に関する符号化情報のうちの一方、又は、両方を用いたクラス分類により得られる第1クラスと、復号側で取得することができない所定の情報を用いた前記クラス分類により得られる第2クラスとのうちの、前記第2クラスを受け取り、
 前記クラス分類部は、
  前記処理対象画素を前記第1クラスにクラス分類し、
  前記第1クラス、及び、前記受け取り部により受け取られた前記第2クラスから、前記処理対象画素の最終的なクラスを生成する
 <13>ないし<15>のいずれかに記載の画像処理装置。
 <17>
 前記受け取り部は、前記処理対象画素の最終的なクラスを、前記処理対象画素の最終的なクラスのクラス数を縮退した縮退クラスに変換する変換テーブルを受け取り、
 前記クラス分類部は、前記処理対象画素の最終的なクラスを、前記変換テーブルに従って、前記縮退クラスに変換する
 <16>に記載の画像処理装置。
 <18>
 前記伝送部は、
  前記生徒画像を用いて、前記タップ係数を求めるタップ係数学習を行い、
   前記タップ係数と、前記生徒画像から選択された前記予測タップとを用いた予測演算により、前記教師画像の画素の画素予測値を求め、
   前記画素予測値と、前記教師画像の画素の画素値とを比較することにより、前記生徒画像の画素が属するサブクラスに関する情報を生成し、
   前記生徒画像と学習により求められるクラス分類係数とを用いた、前記サブクラスに関する情報を求める予測演算の結果と、前記サブクラスに関する情報との統計的な誤差を最小にする前記クラス分類係数を求めるクラス分類係数学習を行い、
   前記クラス分類係数学習により得られる前記クラス分類係数と、前記生徒画像とを用いた予測演算により、前記生徒画像の画素の前記サブクラスに関する情報を予測したサブクラス予測値を求め、
   前記サブクラス予測値に応じて、前記生徒画像の画素を前記サブクラスに分類し、
   前記サブクラスごとに、そのサブクラスの前記生徒画像の画素を用いて、前記タップ係数学習を行う
  1階層の学習を繰り返す
 ことにより得られる前記タップ係数及び前記クラス分類係数を受け取り、
 前記クラス分類部は、
  前記クラス分類に用いられるクラスタップとなる、前記第1の画像の画素の画素値と、前記クラス分類係数とを用いた予測演算により、前記処理対象画素が属するサブクラスに関する情報を予測したサブクラス予測値を求め、
  前記サブクラス予測値に応じて、前記処理対象画素をサブクラスに分類する
 ことを繰り返すことで、前記処理対象画素をクラス分類する
 <13>に記載の画像処理装置。
 <19>
 前記フィルタ処理部は、ILF(In Loop Filter)を構成するDF(Deblocking Filter),SAO(Sample Adaptive Offset)、及び、ALF(Adaptive Loop Filter)のうちの1以上として機能する
 <1>ないし<18>のいずれかに記載の画像処理装置。
 <20>
 予測符号化の残差と予測画像とを加算することにより得られる第1の画像にフィルタ処理を行い、前記予測画像の予測に用いられる第2の画像を生成するステップを含み、
 前記フィルタ処理は、
  前記第1の画像のうちの処理対象である処理対象画素に対応する前記第2の画像の対応画素の画素値を求める予測演算に用いられる予測タップとなる画素を、前記第1の画像から選択することと、
  前記処理対象画素を、複数のクラスのうちのいずれかのクラスにクラス分類することと、
  前記第1の画像に相当する生徒画像と、前記第1の画像に対応する元画像に相当する教師画像とを用いた学習により求められた、前記複数のクラスごとの、前記予測演算に用いられるタップ係数のうちの、前記処理対象画素のクラスのタップ係数を取得することと、
  前記処理対象画素のクラスのタップ係数と、前記処理対象画素の前記予測タップとを用いた前記予測演算を行うことにより、前記対応画素の画素値を求めることと
 を含む
 画像処理方法。
 11 符号化装置, 12 復号装置, 21,22 タップ選択部, 23 クラス分類部, 24 係数取得部, 25 予測演算部, 30 学習装置, 31 教師データ生成部, 32 生徒データ生成部, 33 学習部, 41,42 タップ選択部, 43 クラス分類部, 44 足し込み部, 45 係数算出部, 61 パラメータ生成部, 62 生徒データ生成部, 63 学習部, 71 足し込み部, 72 係数算出部, 81,82 足し込み部, 83 係数算出部, 101 A/D変換部, 102 並べ替えバッファ, 103 演算部, 104 直交変換部, 105 量子化部, 106 可逆符号化部, 107 蓄積バッファ, 108 逆量子化部, 109 逆直交変換部, 110 演算部, 111 クラス分類適応フィルタ, 112 フレームメモリ, 113 選択部, 114 イントラ予測部, 115 動き予測補償部, 116 予測画像選択部, 117 レート制御部, 131 画像変換装置, 132 学習装置, 201 蓄積バッファ, 202 可逆復号部, 203 逆量子化部, 204 逆直交変換部, 205 演算部, 206 クラス分類適応フィルタ, 207 並べ替えバッファ, 208 D/A変換部, 210 フレームメモリ, 211 選択部, 212 イントラ予測部, 213 動き予測補償部, 214  選択部, 231 画像変換装置, 241,242 タップ選択部, 243 クラス分類部, 244 係数取得部, 245 予測演算部, 261 クラス分類適応フィルタ, 262 適応オフセット部, 263 適応ループフィルタ, 271 クラス分類適応フィルタ, 272 適応オフセット部, 273 適応ループフィルタ, 281 デブロックフィルタ, 282 クラス分類適応フィルタ, 291 デブロックフィルタ, 292,311,321,411 クラス分類適応フィルタ, 431 画像変換装置, 432 学習装置, 441 クラス分類部, 451 第1クラス分類部, 452 第2クラス分類部, 453 クラスコード生成部, 461 クラス分類部, 471 クラス分類適応フィルタ, 481 画像変換装置, 491 クラス分類部, 501 第1クラス分類部, 502 クラスコード生成部, 511 クラス分類適応フィルタ, 531 画像変換装置, 532 学習装置, 541 クラス分類部, 551 クラス縮退部, 562 変換テーブル生成部, 571 クラス分類適応フィルタ, 581 画像変換装置, 591 クラス分類部, 601 クラス縮退部, 701 タップ係数学習部, 702 タップ係数設定部, 703 サブクラス教師データ生成部, 704 クラス分類係数学習部, 705 クラス分類係数設定部, 706 サブクラス予測部, 707 サブクラス分類部, 708 サブクラス決定部, 709 画素予測部, 710 終了条件判定部, 721 クラス分類部, 722 係数取得部, 731 クラス分類係数設定部, 732 サブクラス予測部, 733 サブクラス分類部, 734 クラス決定部, 811 クラス分類適応フィルタ, 831 画像変換装置, 832 学習装置, 841 クラス分類部, 842 係数取得部, 861 クラス分類適応フィルタ, 871 画像変換装置, 881 クラス分類部, 882 係数取得部, 911 伝送帯域検出部, 912 伝送量算出部, 913 伝送対象係数設定部

Claims (20)

  1.  予測符号化の残差と予測画像とを加算することにより得られる第1の画像にフィルタ処理を行い、前記予測画像の予測に用いられる第2の画像を生成するフィルタ処理部を備え、
     前記フィルタ処理部は、
      前記第1の画像のうちの処理対象である処理対象画素に対応する前記第2の画像の対応画素の画素値を求める予測演算に用いられる予測タップとなる画素を、前記第1の画像から選択する予測タップ選択部と、
      前記処理対象画素を、複数のクラスのうちのいずれかのクラスにクラス分類するクラス分類部と、
      前記第1の画像に相当する生徒画像と、前記第1の画像に対応する元画像に相当する教師画像とを用いた学習により求められた、前記複数のクラスごとの、前記予測演算に用いられるタップ係数のうちの、前記処理対象画素のクラスのタップ係数を取得するタップ係数取得部と、
      前記処理対象画素のクラスのタップ係数と、前記処理対象画素の前記予測タップとを用いた前記予測演算を行うことにより、前記対応画素の画素値を求める演算部と
     を有する
     画像処理装置。
  2.  前記タップ係数を伝送する伝送部をさらに備える
     請求項1に記載の画像処理装置。
  3.  前記学習を行う学習部をさらに備える
     請求項2に記載の画像処理装置。
  4.  前記クラス分類部は、前記第1の画像から得られる画像特徴量、及び、前記処理対象画素の予測符号化に関する符号化情報のうちの一方、又は、両方を用いて、クラス分類を行う
     請求項2に記載の画像処理装置。
  5.  前記伝送部は、前記符号化情報を伝送する
     請求項4に記載の画像処理装置。
  6.  前記クラス分類部は、
      前記第1の画像から得られる画像特徴量、及び、前記処理対象画素の予測符号化に関する符号化情報のうちの一方、又は、両方を用いて、前記処理対象画素を第1クラスにクラス分類し、
      復号側で取得することができない所定の情報を用いて、前記処理対象画素を第2クラスにクラス分類し、
      前記第1クラス及び前記第2クラスから、前記処理対象画素の最終的なクラスを生成し、
     前記伝送部は、前記第2クラスを伝送する
     請求項2に記載の画像処理装置。
  7.  前記クラス分類部は、前記処理対象画素の最終的なクラスを、前記処理対象画素の最終的なクラスのクラス数を縮退した縮退クラスに変換する変換テーブルに従って、前記最終的なクラスを縮退クラスに変換し、
     前記タップ係数取得部は、前記処理対象画素の前記縮退クラスのタップ係数を取得し、
     前記伝送部は、前記変換テーブルを伝送する
     請求項6に記載の画像処理装置。
  8.  前記クラス分類部は、
      前記クラス分類に用いられるクラスタップとなる、前記第1の画像の画素の画素値と、所定のクラス分類係数とを用いた予測演算により、前記処理対象画素が属するサブクラスに関する情報を予測したサブクラス予測値を求め、
      前記サブクラス予測値に応じて、前記処理対象画素をサブクラスに分類する
     ことを繰り返すことで、前記処理対象画素をクラス分類し、
     前記伝送部は、前記クラス分類係数を伝送する
     請求項2に記載の画像処理装置。
  9.  前記生徒画像を用いて、前記タップ係数を求めるタップ係数学習を行い、
      前記タップ係数と、前記生徒画像から選択された前記予測タップとを用いた予測演算により、前記教師画像の画素の画素予測値を求め、
      前記画素予測値と、前記教師画像の画素の画素値とを比較することにより、前記サブクラスに関する情報を生成し、
      前記生徒画像を用いた、前記サブクラスに関する情報を求める予測演算の結果と、前記サブクラスに関する情報との統計的な誤差を最小にする前記クラス分類係数を求めるクラス分類係数学習を行い、
      前記クラス分類係数学習により得られる前記クラス分類係数と、前記生徒画像とを用いた予測演算により、前記生徒画像の画素の前記サブクラス予測値を求め、
      前記サブクラス予測値に応じて、前記生徒画像の画素を前記サブクラスに分類し、
      前記サブクラスごとに、そのサブクラスの前記生徒画像の画素を用いて、前記タップ係数学習を行う
     ことを1階層の学習として行う学習部をさらに備える
     請求項8に記載の画像処理装置。
  10.  前記学習部は、前記画素予測値のS/N(Signal to Noise ratio)に応じて、前記1階層の学習を繰り返す
     請求項9に記載の画像処理装置。
  11.  前記伝送部は、最後の前記1階層の学習で得られる前記タップ係数と、すべての前記1階層の学習で得られる前記クラス分類係数とを伝送する
     請求項10に記載の画像処理装置。
  12.  前記学習部は、伝送が可能な伝送可能伝送量に応じて、所定回数目の前記1階層の学習で得られる前記タップ係数と、前記所定回数目までの前記1階層の学習で得られる前記クラス分類係数とを、伝送対象の伝送対象係数に設定し、
     前記伝送部は、前記伝送対象係数を伝送する
     請求項10に記載の画像処理装置。
  13.  前記タップ係数を受け取る受け取り部をさらに備える
     請求項1に記載の画像処理装置。
  14.  前記クラス分類部は、前記第1の画像から得られる画像特徴量、及び、前記処理対象画素の予測符号化に関する符号化情報のうちの一方、又は、両方を用いて、クラス分類を行う
     請求項13に記載の画像処理装置。
  15.  前記受け取り部は、前記符号化情報を受け取る
     請求項14に記載の画像処理装置。
  16.  前記受け取り部は、前記第1の画像から得られる画像特徴量、及び、前記処理対象画素の予測符号化に関する符号化情報のうちの一方、又は、両方を用いたクラス分類により得られる第1クラスと、復号側で取得することができない所定の情報を用いた前記クラス分類により得られる第2クラスとのうちの、前記第2クラスを受け取り、
     前記クラス分類部は、
      前記処理対象画素を前記第1クラスにクラス分類し、
      前記第1クラス、及び、前記受け取り部により受け取られた前記第2クラスから、前記処理対象画素の最終的なクラスを生成する
     請求項13に記載の画像処理装置。
  17.  前記受け取り部は、前記処理対象画素の最終的なクラスを、前記処理対象画素の最終的なクラスのクラス数を縮退した縮退クラスに変換する変換テーブルを受け取り、
     前記クラス分類部は、前記処理対象画素の最終的なクラスを、前記変換テーブルに従って、前記縮退クラスに変換する
     請求項16に記載の画像処理装置。
  18.  前記伝送部は、
      前記生徒画像を用いて、前記タップ係数を求めるタップ係数学習を行い、
       前記タップ係数と、前記生徒画像から選択された前記予測タップとを用いた予測演算により、前記教師画像の画素の画素予測値を求め、
       前記画素予測値と、前記教師画像の画素の画素値とを比較することにより、前記生徒画像の画素が属するサブクラスに関する情報を生成し、
       前記生徒画像と学習により求められるクラス分類係数とを用いた、前記サブクラスに関する情報を求める予測演算の結果と、前記サブクラスに関する情報との統計的な誤差を最小にする前記クラス分類係数を求めるクラス分類係数学習を行い、
       前記クラス分類係数学習により得られる前記クラス分類係数と、前記生徒画像とを用いた予測演算により、前記生徒画像の画素の前記サブクラスに関する情報を予測したサブクラス予測値を求め、
       前記サブクラス予測値に応じて、前記生徒画像の画素を前記サブクラスに分類し、
       前記サブクラスごとに、そのサブクラスの前記生徒画像の画素を用いて、前記タップ係数学習を行う
      1階層の学習を繰り返す
     ことにより得られる前記タップ係数及び前記クラス分類係数を受け取り、
     前記クラス分類部は、
      前記クラス分類に用いられるクラスタップとなる、前記第1の画像の画素の画素値と、前記クラス分類係数とを用いた予測演算により、前記処理対象画素が属するサブクラスに関する情報を予測したサブクラス予測値を求め、
      前記サブクラス予測値に応じて、前記処理対象画素をサブクラスに分類する
     ことを繰り返すことで、前記処理対象画素をクラス分類する
     請求項13に記載の画像処理装置。
  19.  前記フィルタ処理部は、ILF(In Loop Filter)を構成するDF(Deblocking Filter),SAO(Sample Adaptive Offset)、及び、ALF(Adaptive Loop Filter)のうちの1以上として機能する
     請求項1に記載の画像処理装置。
  20.  予測符号化の残差と予測画像とを加算することにより得られる第1の画像にフィルタ処理を行い、前記予測画像の予測に用いられる第2の画像を生成するステップを含み、
     前記フィルタ処理は、
      前記第1の画像のうちの処理対象である処理対象画素に対応する前記第2の画像の対応画素の画素値を求める予測演算に用いられる予測タップとなる画素を、前記第1の画像から選択することと、
      前記処理対象画素を、複数のクラスのうちのいずれかのクラスにクラス分類することと、
      前記第1の画像に相当する生徒画像と、前記第1の画像に対応する元画像に相当する教師画像とを用いた学習により求められた、前記複数のクラスごとの、前記予測演算に用いられるタップ係数のうちの、前記処理対象画素のクラスのタップ係数を取得することと、
      前記処理対象画素のクラスのタップ係数と、前記処理対象画素の前記予測タップとを用いた前記予測演算を行うことにより、前記対応画素の画素値を求めることと
     を含む
     画像処理方法。
PCT/JP2017/015521 2016-05-02 2017-04-18 画像処理装置及び画像処理方法 Ceased WO2017191749A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
EP20157289.8A EP3684056A1 (en) 2016-05-02 2017-04-18 Image processing using filtering based on pixel classification
CN201780025492.1A CN109076217A (zh) 2016-05-02 2017-04-18 图像处理装置和图像处理方法
EP17792682.1A EP3454557A4 (en) 2016-05-02 2017-04-18 IMAGE PROCESSING DEVICE AND IMAGE PROCESSING METHOD
US16/090,743 US20190124327A1 (en) 2016-05-02 2017-04-18 Image processing apparatus and image processing method
JP2018515418A JPWO2017191749A1 (ja) 2016-05-02 2017-04-18 画像処理装置及び画像処理方法
KR1020187030029A KR20190003497A (ko) 2016-05-02 2017-04-18 화상 처리 장치 및 화상 처리 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-092650 2016-05-02
JP2016092650 2016-05-02

Publications (1)

Publication Number Publication Date
WO2017191749A1 true WO2017191749A1 (ja) 2017-11-09

Family

ID=60203107

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/015521 Ceased WO2017191749A1 (ja) 2016-05-02 2017-04-18 画像処理装置及び画像処理方法

Country Status (6)

Country Link
US (1) US20190124327A1 (ja)
EP (2) EP3684056A1 (ja)
JP (1) JPWO2017191749A1 (ja)
KR (1) KR20190003497A (ja)
CN (1) CN109076217A (ja)
WO (1) WO2017191749A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019111720A1 (ja) * 2017-12-06 2019-06-13 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
WO2019131161A1 (ja) * 2017-12-27 2019-07-04 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
JP2022511310A (ja) * 2018-11-12 2022-01-31 サムスン エレクトロニクス カンパニー リミテッド ディスプレイ装置及びその制御方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116760977A (zh) * 2015-08-20 2023-09-15 日本放送协会 图像编码装置、图像解码装置、和其程序
JP6977719B2 (ja) * 2016-05-02 2021-12-08 ソニーグループ株式会社 符号化装置及び符号化方法、並びに、復号装置及び復号方法
JPWO2019107182A1 (ja) * 2017-12-01 2020-11-26 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
EP3998772A4 (en) 2019-07-11 2023-06-07 Samsung Electronics Co., Ltd. VIDEO DECODING METHOD AND APPARATUS, AND VIDEO CODING METHOD AND APPARATUS
CN111461147B (zh) * 2020-04-30 2023-05-23 柳州智视科技有限公司 一种基于图像特征的二进制编码组织算法
WO2023082107A1 (zh) * 2021-11-10 2023-05-19 Oppo广东移动通信有限公司 解码方法、编码方法、解码器、编码器和编解码系统
US12205609B1 (en) * 2023-07-21 2025-01-21 Krisp Technologies, Inc. Generating parallel data for real-time speech form conversion

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5347862B2 (ja) 1973-01-11 1978-12-23
JPH09237345A (ja) * 1996-02-29 1997-09-09 Sony Corp クラス分類適応処理における学習方法
JP2003299096A (ja) * 2002-03-29 2003-10-17 Sony Corp 情報信号処理装置、情報信号処理方法、画像信号処理装置および画像表示装置、それに使用される係数種データの生成装置および生成方法、係数データの生成装置および生成方法、並びに各方法を実行するためのプログラムおよびそのプログラムを記録したコンピュータ読み取り可能な媒体
JP4240322B2 (ja) 2005-10-03 2009-03-18 ソニー株式会社 係数生成装置及び係数生成方法
WO2010146771A1 (ja) * 2009-06-19 2010-12-23 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
JP4770711B2 (ja) 2006-11-15 2011-09-14 ソニー株式会社 画像処理装置、画像処理方法、およびプログラム
JP2012235407A (ja) * 2011-05-09 2012-11-29 Sony Corp 画像処理装置および画像処理方法
JP5485983B2 (ja) 2009-04-03 2014-05-07 パナソニック株式会社 動画像符号化方法、動画像復号方法、動画像符号化装置および動画像復号装置
JP2014523183A (ja) 2011-06-28 2014-09-08 サムスン エレクトロニクス カンパニー リミテッド ピクセル分類によるオフセット調整を利用するビデオ符号化方法及びその装置、並びに該ビデオ復号化方法及びその装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6912255B2 (en) * 2002-05-30 2005-06-28 Mobixell Netwoks Inc. Bit rate control through selective modification of DCT coefficients
JP4158479B2 (ja) * 2002-10-18 2008-10-01 ソニー株式会社 画像信号の処理装置および処理方法、それに使用される係数データの生成装置および生成方法、並びに各方法を実行するためのプログラム
US8503530B2 (en) * 2004-05-27 2013-08-06 Zhourong Miao Temporal classified filtering for video compression
WO2009047643A2 (en) * 2007-04-23 2009-04-16 Comagna Kft. Mehtod and apparatus for image processing
US8204128B2 (en) * 2007-08-01 2012-06-19 Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry, Through The Communications Research Centre Canada Learning filters for enhancing the quality of block coded still and video images
CN101616324B (zh) * 2009-07-28 2011-06-08 谭洪舟 压缩编码图像的块效应去除装置
US8259819B2 (en) * 2009-12-10 2012-09-04 Hong Kong Applied Science and Technology Research Institute Company Limited Method and apparatus for improving video quality by utilizing a unified loop filter
CN102857749B (zh) * 2011-07-01 2016-04-13 华为技术有限公司 一种视频图像的像素分类方法和装置
JP5810700B2 (ja) * 2011-07-19 2015-11-11 ソニー株式会社 画像処理装置及び画像処理方法
JP2013085113A (ja) * 2011-10-07 2013-05-09 Sony Corp 画像処理装置および方法
US9357235B2 (en) * 2011-10-13 2016-05-31 Qualcomm Incorporated Sample adaptive offset merged with adaptive loop filter in video coding
US9661322B2 (en) * 2012-09-24 2017-05-23 Intel Corporation Histogram segmentation based local adaptive filter for video encoding and decoding
US20150256827A1 (en) * 2012-09-28 2015-09-10 Mitsubishi Electric Corporation Video encoding device, video decoding device, video encoding method, and video decoding method

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5347862B2 (ja) 1973-01-11 1978-12-23
JPH09237345A (ja) * 1996-02-29 1997-09-09 Sony Corp クラス分類適応処理における学習方法
JP2003299096A (ja) * 2002-03-29 2003-10-17 Sony Corp 情報信号処理装置、情報信号処理方法、画像信号処理装置および画像表示装置、それに使用される係数種データの生成装置および生成方法、係数データの生成装置および生成方法、並びに各方法を実行するためのプログラムおよびそのプログラムを記録したコンピュータ読み取り可能な媒体
JP4240322B2 (ja) 2005-10-03 2009-03-18 ソニー株式会社 係数生成装置及び係数生成方法
JP4770711B2 (ja) 2006-11-15 2011-09-14 ソニー株式会社 画像処理装置、画像処理方法、およびプログラム
JP5485983B2 (ja) 2009-04-03 2014-05-07 パナソニック株式会社 動画像符号化方法、動画像復号方法、動画像符号化装置および動画像復号装置
WO2010146771A1 (ja) * 2009-06-19 2010-12-23 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
JP2012235407A (ja) * 2011-05-09 2012-11-29 Sony Corp 画像処理装置および画像処理方法
JP2014523183A (ja) 2011-06-28 2014-09-08 サムスン エレクトロニクス カンパニー リミテッド ピクセル分類によるオフセット調整を利用するビデオ符号化方法及びその装置、並びに該ビデオ復号化方法及びその装置

Non-Patent Citations (1)

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

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019111720A1 (ja) * 2017-12-06 2019-06-13 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
WO2019131161A1 (ja) * 2017-12-27 2019-07-04 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
JPWO2019131161A1 (ja) * 2017-12-27 2020-12-17 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
JP2022511310A (ja) * 2018-11-12 2022-01-31 サムスン エレクトロニクス カンパニー リミテッド ディスプレイ装置及びその制御方法
JP7214845B2 (ja) 2018-11-12 2023-01-30 サムスン エレクトロニクス カンパニー リミテッド ディスプレイ装置及びその制御方法
US11968382B2 (en) 2018-11-12 2024-04-23 Samsung Electronics Co., Ltd. Display apparatus and method of controlling the same
US12425625B2 (en) 2018-11-12 2025-09-23 Samsung Electronics Co., Ltd. Display apparatus and method of controlling the same using artificial intelligence (AI)

Also Published As

Publication number Publication date
EP3454557A1 (en) 2019-03-13
EP3684056A1 (en) 2020-07-22
EP3454557A4 (en) 2019-03-13
JPWO2017191749A1 (ja) 2019-03-07
KR20190003497A (ko) 2019-01-09
CN109076217A (zh) 2018-12-21
US20190124327A1 (en) 2019-04-25

Similar Documents

Publication Publication Date Title
JP6780761B2 (ja) 画像符号化装置および方法
EP3457692B1 (en) Image processing device and method
JP6977719B2 (ja) 符号化装置及び符号化方法、並びに、復号装置及び復号方法
WO2017191749A1 (ja) 画像処理装置及び画像処理方法
JP6883219B2 (ja) 符号化装置及び符号化方法、並びに、システム
JP7047776B2 (ja) 符号化装置及び符号化方法、並びに、復号装置及び復号方法
JP6824034B2 (ja) 画像復号装置および方法
WO2019039283A1 (ja) 画像処理装置及び画像処理方法
WO2018173873A1 (ja) 符号化装置及び符号化方法、並びに、復号装置及び復号方法
US20210297687A1 (en) Encoding apparatus, encoding method, decoding apparatus, and decoding method
EP3515070B1 (en) Encoding color component prediction mode when using intra block copy
US11423578B2 (en) Encoding device, encoding method, decoding device, and decoding method

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2018515418

Country of ref document: JP

ENP Entry into the national phase

Ref document number: 20187030029

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

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

Ref document number: 17792682

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017792682

Country of ref document: EP

Effective date: 20181203