WO2011111341A1 - 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法 - Google Patents

動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法 Download PDF

Info

Publication number
WO2011111341A1
WO2011111341A1 PCT/JP2011/001234 JP2011001234W WO2011111341A1 WO 2011111341 A1 WO2011111341 A1 WO 2011111341A1 JP 2011001234 W JP2011001234 W JP 2011001234W WO 2011111341 A1 WO2011111341 A1 WO 2011111341A1
Authority
WO
WIPO (PCT)
Prior art keywords
motion compensation
filter coefficient
unit
compensation filter
decoding
Prior art date
Application number
PCT/JP2011/001234
Other languages
English (en)
French (fr)
Inventor
博史 天野
田中 健
橋本 隆
宙輝 林
Original Assignee
パナソニック株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニック株式会社 filed Critical パナソニック株式会社
Priority to CN201180001378.8A priority Critical patent/CN102349299B/zh
Priority to JP2011534438A priority patent/JP5659160B2/ja
Priority to US13/255,267 priority patent/US8995530B2/en
Publication of WO2011111341A1 publication Critical patent/WO2011111341A1/ja
Priority to US14/629,747 priority patent/US9641868B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/43Hardware specially adapted for motion estimation or compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Definitions

  • the present invention relates to a moving image decoding apparatus, a moving image encoding apparatus, a moving image decoding circuit, and a moving image decoding method, and in particular, a filter coefficient used in variable coefficient motion compensation inter-frame prediction for decoding a moving image encoded stream.
  • the present invention relates to a video decoding device, a video encoding device, a video decoding circuit, and a video decoding method.
  • H.264 of ITU-T International Telecommunication Union, Telecommunication Standardization Sector
  • JVT JointVideoTeam
  • ITU-T International Telecommunication Union, Telecommunication Standardization Sector
  • ISO / IEC International Electrotechnical Commission International Electrotechnical Commission
  • MPEG Moving Picture Experts Group
  • MPEG4-AVC Joint VideoTeam
  • next-generation moving image compression technology is being studied by ITU-T, ISO / IEC, and the like.
  • the motion compensation inter-screen prediction is a reference in which a macroblock or a sub-macroblock (hereinafter also referred to as “macroblock etc.”) in the encoding target screen is positioned in front of or behind the encoding target screen. This is a method of detecting how much the image has moved in which direction in the screen, creating a predicted image, and encoding the difference value between the obtained predicted image and the encoding target screen.
  • a motion vector Information indicating how much a macroblock or the like in the encoding target screen has moved in which direction in the reference screen located in front of or behind the encoding target screen.
  • a screen to be referred to is referred to as a reference screen.
  • the decoded decoding screen is held in a frame memory and used as a reference screen in decoding of the subsequent decoding screen.
  • the motion vector in the moving image encoded stream is decoded, the reference pixel area indicated by the motion vector is acquired from the frame memory in which the reference screen is held, and the reference pixel area is filtered as necessary. To generate a predicted image. And in order to produce
  • H. H.264 generates predicted images with 1/2 pixel accuracy using 6-tap FIR filters (filter coefficients: 1, -5, 20, 20, -5, 1) using fixed filter coefficients defined by the standard Then, a predicted image with 1/4 pixel accuracy is generated by a 2-tap average value filter (filter coefficients: 1/2, 1/2) using a fixed filter coefficient defined in the standard. At this time, the same value (fixed value) is always used as the filter coefficient used for generating a predicted image of integer pixels or less regardless of the characteristics of the image.
  • variable coefficient motion compensation a motion compensation technique that adaptively changes filter coefficients used for filtering when generating a predicted image of an integer pixel or less according to the characteristics of the image.
  • variable coefficient motion compensation also referred to as “variable coefficient motion compensation”.
  • This variable coefficient motion compensation has been proposed by ITU-T, ISO / IEC, etc. as a next-generation moving image compression technique, specifically, a next-generation motion compensation inter-picture prediction technique.
  • Non-Patent Document 1 proposes a technique for adaptively changing a filter coefficient used for generating a predicted image having an integer pixel or less according to image characteristics, instead of a conventional fixed value.
  • Non-Patent Document 2 proposes a technique for performing a filtering process when generating a predicted image using different filter coefficients defined in an encoded stream for each value of the decimal part of a motion vector.
  • Non-Patent Document 3 it is noted that even within the same picture, the optimum filter coefficient varies depending on the location, and filter coefficients used for filtering of motion compensation inter-screen prediction in units of macroblocks. Switching technology has been proposed.
  • filtering coefficients are frequently selected from a large number of filtering coefficient candidates and used for filtering processing to generate a predicted image. It will be. Therefore, it is generally expected that the memory capacity, memory bandwidth, and memory access latency of the memory that holds the filtering coefficient will be extremely large.
  • the decoded screen is stored in the frame memory, and the reference pixel region is read from the frame memory. is required. Therefore, when using motion compensation inter-frame prediction proposed for the next-generation video compression technology, the memory bandwidth of the frame memory is obtained by storing the decoded screen, reading the reference pixel area, and accessing the display. In addition, the memory access latency is generally expected to be extremely large.
  • Patent Document 1 various techniques have been proposed so far for reducing the memory capacity, memory bandwidth, or memory access latency of the frame memory (for example, Patent Document 1).
  • Patent Document 1 when it is more efficient to collectively transfer a plurality of reference pixel areas from a frame memory to a local memory when performing motion compensation inter-screen prediction, the reference pixel areas are collectively transferred to the local memory. To do. As a result, it is not necessary to transfer the reference area overlapping between a plurality of blocks for each block process, so that the number of accesses to the frame memory can be reduced. In this way, the memory bandwidth of the frame memory, memory access latency reduction and processing cycle reduction can be realized.
  • Patent Document 1 only discloses a configuration that realizes a reduction in memory bandwidth and memory access latency of a frame memory that stores a reference image. In other words, there is no description (disclosure) about the memory access of the filter coefficient used in the variable coefficient motion compensation inter-picture prediction proposed for the next-generation moving image compression technique. Therefore, with the configuration disclosed in Patent Document 1, it is not possible to reduce the filter coefficient memory bandwidth and memory access latency when variable coefficient motion compensation inter-screen prediction is used.
  • An object is to provide an image decoding device, a moving image encoding device, a moving image decoding circuit, and a moving image decoding method.
  • a video decoding device performs motion compensation decoding with motion compensation on an encoded stream in which a video is encoded using motion compensation.
  • a decoding unit that decodes a plurality of motion compensation filter coefficients used for motion compensation decoding from the encoded stream, and the plurality of motion compensation filters included in the encoded stream decoded by the decoding unit
  • a memory for holding a coefficient, a filter coefficient storage unit for holding a motion compensation filter coefficient necessary for performing the motion compensation among a plurality of motion compensation filter coefficients held in the memory, and A motion compensation unit that performs motion compensation using the motion compensation filter coefficients held in the filter coefficient storage unit; and a plurality of motion compensation filters decoded by the decoding unit. Only when the filter coefficient storage unit does not hold the partial motion compensation filter coefficients, the partial motion compensation filter coefficients are transferred from the memory to the filter coefficient storage unit.
  • a transfer control unit Only when the filter coefficient storage unit does not hold the partial motion compensation filter coefficients, the partial motion compensation filter coefficients are transferred from the memory to the filter coefficient storage unit
  • the moving picture coding apparatus uses a coding target picture and a reference picture to perform motion compensation coding that is coding with motion compensation.
  • An encoding device that generates a plurality of motion compensation filter coefficients used for the motion compensation encoding; a memory for holding a plurality of motion compensation filter coefficients generated by the generation unit; Among a plurality of motion compensation filter coefficients held in the memory, a filter coefficient storage unit for holding a motion compensation filter coefficient necessary for performing the motion compensation, and the filter coefficient storage unit
  • a motion detection unit that generates the predicted image by performing the motion compensation from the encoding target image and the reference image using the partial motion compensation filter coefficient; and generated by the generation unit Only when a plurality of motion compensation filter coefficients are written to the memory, and the filter coefficient storage unit does not hold the part of the motion compensation filter coefficients, the part of the motion compensation filters from the memory to the filter coefficient storage unit.
  • a transfer control unit that transfers the coefficient.
  • the present invention can be realized not only as an apparatus but also as an integrated circuit including processing means included in such an apparatus, or as a method using the processing means constituting the apparatus as a step. it can.
  • a moving picture decoding apparatus a moving picture coding apparatus, and a moving picture decoding that can reduce the memory bandwidth and memory access latency of a filter coefficient used when performing inter prediction between variable coefficient motion compensation screens.
  • a circuit and a moving picture decoding method can be realized.
  • FIG. 1 is a block diagram showing a configuration of a decoding apparatus according to Embodiment 1 of the present invention.
  • FIG. 2A is a diagram showing an outline of an encoded stream encoded in accordance with the standard of the moving image compression technique.
  • FIG. 2B is a diagram illustrating an outline of an encoded stream that is encoded in accordance with the standard of the moving image compression technique.
  • FIG. 2C is a diagram illustrating an example of the encoded stream of the present invention.
  • FIG. 3 is an example of information held in the filter coefficient storage state management table.
  • FIG. 4 is a flowchart showing the decoding processing operation of the decoding apparatus according to Embodiment 1 of the present invention.
  • FIG. 4 is a flowchart showing the decoding processing operation of the decoding apparatus according to Embodiment 1 of the present invention.
  • FIG. 5 is a block diagram showing a minimum configuration of the decoding apparatus according to Embodiment 1 of the present invention.
  • FIG. 6 is a block diagram showing the configuration of the decoding apparatus according to Embodiment 2 of the present invention.
  • FIG. 7A is an example of information held in the filter coefficient reference history management table of the present invention.
  • FIG. 7B is an example of information held in the filter coefficient reference history management table of the present invention.
  • FIG. 8 is a flowchart showing the decoding processing operation of the decoding apparatus according to Embodiment 2 of the present invention.
  • FIG. 9 is a block diagram showing the configuration of the decoding apparatus according to Embodiment 3 of the present invention.
  • FIG. 10 is an example of information held in the filter coefficient statistical information management table.
  • FIG. 10 is an example of information held in the filter coefficient statistical information management table.
  • FIG. 11 is an example of information held in the filter coefficient statistical information management table.
  • FIG. 12A is a diagram illustrating how the motion compensation filter coefficients in the filter coefficient storage unit are updated based on the filter coefficient statistical information management table.
  • FIG. 12B is a diagram illustrating how the motion compensation filter coefficients in the filter coefficient storage unit are updated based on the filter coefficient statistical information management table.
  • FIG. 13A is a diagram illustrating how the motion compensation filter coefficients in the filter coefficient storage unit are updated based on the filter coefficient statistical information management table.
  • FIG. 13B is a diagram illustrating how the motion compensation filter coefficients in the filter coefficient storage unit are updated based on the filter coefficient statistical information management table.
  • FIG. 14 is a flowchart showing the decoding processing operation of the decoding device according to Embodiment 3 of the present invention.
  • FIG. 15 is a block diagram showing the minimum configuration of the decoding apparatus according to Embodiment 3 of the present invention.
  • FIG. 16 is a block diagram showing the configuration of the decoding apparatus according to Embodiment 4 of the present invention.
  • FIG. 17 is a flowchart showing the decoding processing operation of the decoding apparatus according to Embodiment 4 of the present invention.
  • FIG. 18 is a block diagram showing the configuration of the coding apparatus according to Embodiment 5 of the present invention.
  • FIG. 19 is an example of information held in the filter coefficient storage state management table.
  • FIG. 20 is a diagram for explaining a method in which the motion detection unit determines the motion compensation filter coefficient ID.
  • FIG. 20 is a diagram for explaining a method in which the motion detection unit determines the motion compensation filter coefficient ID.
  • FIG. 21 is a flowchart showing an encoding process operation of the encoding apparatus according to the fifth embodiment of the present invention.
  • FIG. 22 is a block diagram showing the configuration of the coding apparatus according to Embodiment 6 of the present invention.
  • FIG. 23 is a flowchart showing an encoding process operation of the encoding apparatus according to the sixth embodiment of the present invention.
  • FIG. 24 is a block diagram showing the configuration of the coding apparatus according to Embodiment 7 of the present invention.
  • FIG. 25 is a flowchart showing the configuration of the coding apparatus according to Embodiment 7 of the present invention.
  • FIG. 26 is an overall configuration diagram of a content supply system that implements a content distribution service.
  • FIG. 27 is an overall configuration diagram of a digital broadcasting system.
  • FIG. 28 is a block diagram illustrating a configuration example of a television.
  • FIG. 29 is a block diagram illustrating a configuration example of an information reproducing / recording unit that reads and writes information from and on a recording medium that is an optical disk.
  • FIG. 30 is a diagram illustrating a structure example of a recording medium that is an optical disk.
  • FIG. 31 is a block diagram illustrating a configuration example of an integrated circuit that realizes the moving image encoding method and the moving image decoding method according to each embodiment.
  • FIG. 32 is a block diagram illustrating a moving image encoding process according to each embodiment realized by an integrated circuit.
  • FIG. 33 is a block diagram showing a moving image decoding process according to each embodiment realized by an integrated circuit.
  • FIG. 1 is a configuration diagram of a decoding apparatus according to Embodiment 1 of the present invention.
  • 2A and 2B are diagrams showing an outline of an encoded stream encoded according to the standard of the moving image compression technique.
  • FIG. 2C is a diagram illustrating an example of the encoded stream of the present invention.
  • FIG. 3 is an example of information held in the filter coefficient storage state management table.
  • a decoding apparatus 100 illustrated in FIG. 1 is a video decoding apparatus that performs motion compensation decoding with motion compensation on an encoded stream in which a video is encoded using motion compensation, and includes a decoding unit 101, filter coefficients, and the like. It includes a transfer control unit 102, a filter coefficient storage unit 103, a filter coefficient storage state management table 104, a reference image transfer control unit 105, a reference image storage unit 106, a motion compensation unit 107, an adder 108, and a memory 109.
  • the decoding unit 101 decodes at least a plurality of motion compensation filter coefficients used for motion compensation decoding from the encoded stream. Specifically, the decoding unit 101 has a function of decoding a stream that is encoded in accordance with the standard of moving image compression technology and outputting at least header information and a prediction error signal.
  • a stream encoded according to the standard of the moving image compression technique will be described with reference to FIGS. 2A and 2B.
  • a series of images has a hierarchical configuration. For example, there is a sequence in which a plurality of pictures are grouped (or called GOP (Group Of Pictures)). Each picture constituting the sequence is divided into slices and further divided into macro blocks each having 16 ⁇ 16 pixels. There are cases where a picture is not divided into slices. Then, the decoding apparatus 100 performs a decoding operation in units of slices or macroblocks.
  • a sequence header for controlling a sequence is composed of a macroblock type, an in-plane prediction (intra prediction) mode, motion vector information, a quantization parameter, and coefficient information corresponding to each pixel data.
  • a sequence header is called SPS (Sequence Parameter Set)
  • PPS Picture Parameter Set
  • a structure as shown in FIG. 2C may be used. That is, in the header (picture header) of each picture in the GOP or sequence, which motion compensation filter coefficient is used when motion compensation is performed on the slice or macroblock to be decoded with the motion compensation filter coefficient in the picture. It is assumed that all (shown) information (hereinafter also referred to as “motion compensation filter coefficient ID”) is included. Then, it is assumed that only the motion compensation filter coefficient ID is included in the slice header in the picture.
  • the motion compensation filter coefficient ID corresponds to the specific information in the present invention.
  • motion compensation filter coefficient and the motion compensation filter coefficient ID may be GOP or sequence units instead of picture units. Further, the motion compensation filter coefficient and the motion compensation filter coefficient ID may be included in slice units, and the motion compensation filter coefficient ID used for the macro block may be included in macro block units. That is, any combination described above may be used as a unit, and another combination may be used as a unit.
  • the filter coefficient transfer control unit 102 corresponds to the transfer control unit of the present invention, writes a plurality of motion compensation filter coefficients decoded by the decoding unit 101 to the memory 109, and the filter coefficient storage unit 103 performs a motion necessary for motion compensation processing. Only when the compensation filter coefficient is not held, the necessary motion compensation filter coefficient is transferred from the memory 109 to the filter coefficient storage unit 103.
  • the filter coefficient transfer control unit 102 has a function of writing in the memory 109 a filter coefficient that is defined in the encoded stream and used for motion compensation processing, that is, a motion compensation filter coefficient.
  • the filter coefficient transfer control unit 102 also uses the filter coefficient storage state management table 104 based on information indicating which motion compensation filter coefficient is used for motion compensation when the decoding unit 101 performs decoding, that is, the motion compensation filter coefficient ID. It has a function to refer to the information. Then, the filter coefficient transfer control unit 102 confirms whether the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID is held in the filter coefficient storage unit 103 based on the information in the filter coefficient storage state management table 104.
  • the filter coefficient transfer control unit 102 confirms that the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID is not held in the filter coefficient storage unit 103, the motion compensation filter coefficient ID indicated by the motion compensation filter coefficient ID is stored from the memory 109. The filter coefficient is read and written (transferred) to the filter coefficient storage unit 103.
  • the filter coefficient transfer control unit 102 confirms that the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID is held (stored) in the filter coefficient storage unit 103, the filter coefficient transfer control unit 102 stores the motion compensation filter coefficient from the memory 109. Do not read (do not transfer).
  • the filter coefficient transfer control unit 102 may perform only a command for writing the motion compensation filter coefficient in the memory 109 to the decoding unit 101, and the decoding unit 101 may write the motion compensation filter coefficient in the memory 109. Similarly, the filter coefficient transfer control unit 102 issues only an instruction for reading the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID from the memory 109 to the filter coefficient storage unit 103, and the filter coefficient storage unit 103 receives the motion compensation filter from the memory 109. The motion compensation filter coefficient indicated by the coefficient ID may be read and held.
  • the filter coefficient storage unit 103 is for holding motion compensation filter coefficients necessary for performing motion compensation among a plurality of motion compensation filter coefficients held in the memory 109. Specifically, the filter coefficient storage unit 103 sets a function for holding at least two types of motion compensation filter coefficients transferred from the memory 109 and a motion compensation filter coefficient indicated by the motion compensation filter coefficient ID in the motion compensation unit 107. It has the function to do.
  • the filter coefficient storage state management table 104 corresponds to the storage state management unit of the present invention, and manages information indicating whether the filter coefficient storage unit 103 holds the motion compensation filter coefficient specified by the motion compensation filter coefficient ID. To do. Specifically, the filter coefficient storage state management table 104 receives the motion compensation filter coefficient ID as input, and information on whether or not the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID is stored in the filter coefficient storage unit 103. Has a function to output.
  • the filter coefficient storage state management table 104 holds information as shown in FIG. 3, for example. That is, the filter coefficient storage state management table 104 holds all motion compensation filter coefficient IDs included in header information such as sequence headers and picture headers of the encoded stream decoded by the decoding unit 101 as filter coefficient IDs. And it is hold
  • the reference image transfer control unit 105 has a function of reading out reference pixels necessary for motion compensation from the memory 109 based on header information including the motion vector output from the decoding unit 101 and reference screen information, and writing the reference pixels in the reference image storage unit 106. Have.
  • the reference image transfer control unit 105 receives only a command for reading out the reference pixels necessary for motion compensation from the memory 109 based on the header information including the motion vector output from the decoding unit 101 and the reference screen information.
  • the reference image storage unit 106 may read out and hold reference pixels necessary for motion compensation from the memory 109.
  • the reference image storage unit 106 has a function of holding the reference pixels transferred from the memory 109.
  • the motion compensation unit 107 performs motion compensation using at least the motion compensation filter coefficient held in the filter coefficient storage unit 103. Specifically, the motion compensation unit 107 is necessary for motion compensation indicated by the header information including the motion vector output from the decoding unit 101, the motion compensation filter coefficient ID, and the motion vector held by the reference image storage unit 106. A reference pixel and a motion compensation filter coefficient indicated by the motion compensation filter coefficient ID held by the filter coefficient storage unit 103. The motion compensation unit 107 has a function of performing a motion compensation process using them to generate a predicted image and outputting the predicted image to the adder 108.
  • the adder 108 adds a prediction error signal output from the decoding unit 101 and a prediction image output from the motion compensation unit 107, outputs the decoded image, and a function of transferring the decoded image to the memory 109. Have.
  • the memory 109 is for holding at least a plurality of motion compensation filter coefficients included in the encoded stream decoded by the decoding unit 101. Specifically, the memory 109 has a function of holding motion compensation filter coefficients and a reference screen referred to by the motion compensation unit 107. Note that the memory 109 may only hold the motion compensation filter coefficient. In that case, the decoding apparatus 100 may include a frame memory that holds a reference screen to which the motion compensation unit 107 refers.
  • the decoding device 100 is configured as described above.
  • FIG. 4 is a flowchart showing the decoding processing operation of the decoding apparatus according to Embodiment 1 of the present invention.
  • the decoding unit 101 that has received the encoded stream decodes header information included in the encoded stream (S101), and outputs at least a motion compensation filter coefficient as the header information. To do. Then, the filter coefficient transfer control unit 102 writes all the motion compensation filter coefficients decoded by the decoding unit 101 in S101 into the memory 109 (S102).
  • the decoding unit 101 determines whether the picture type of the image to be decoded is P, B, or I (S103).
  • the decoding unit 101 determines that motion compensation processing is necessary, and includes header information constituting the encoded stream
  • the prediction residual signal is decoded (S104), and at least motion compensation filter coefficient information ID, motion vector information, and a prediction residual signal are output as header information.
  • the decoding unit 101 determines that the motion compensation process is unnecessary, proceeds to S114, performs in-screen decoding, and performs S113. Proceed to
  • the filter coefficient transfer control unit 102 uses the filter coefficient storage state management table 104 to check whether the filter coefficient storage unit 103 holds the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID decoded in S104.
  • the reference is examined (S105).
  • the filter coefficient transfer control unit 102 When the filter coefficient storage unit 103 does not hold the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID (N in S105), the filter coefficient transfer control unit 102 performs the motion indicated by the motion compensation filter coefficient ID from the memory 109. Read compensation filter coefficients. Then, the filter coefficient storage unit 103 writes, for example, the oldest motion compensation filter coefficient read from the memory 109 in an area where it is stored (S106). Subsequently, the filter coefficient transfer control unit 102 updates the filter coefficient storage state management table 104 (S107). Specifically, the filter coefficient transfer control unit 102 changes the storage state of the motion compensation filter coefficient read out of the filter coefficient storage state management table 104 to “hold”, and stores the erased motion compensation filter coefficient storage state. Is changed to "Do not hold".
  • the filter coefficient transfer control unit 102 reads the motion compensation filter coefficient from the memory 109. The process proceeds to S108.
  • the reference image transfer control unit 105 acquires a reference image (S108). Specifically, the reference image transfer control unit 105 reads a reference image to be used for motion compensation processing from the memory 109 based on header information including the motion vector and reference screen information output from the decoding unit 101 in S104. . Then, the read reference image is written in the reference image storage unit 106.
  • the motion compensation unit 107 sets the motion vector output from the decoding unit 101 in S104 (S109).
  • a motion compensation filter coefficient used for motion compensation is specified from the motion compensation filter coefficient ID and the motion vector output by the decoding unit 101 in S104, and is read from the filter coefficient storage unit 103 (S110).
  • the motion compensation unit 107 reads the reference image held by the reference image storage unit 106, performs motion compensation processing, generates a predicted image, and outputs the prediction image to the adder 108 (S111).
  • the adder 108 adds and outputs the prediction image output from the motion compensation unit 107 in S111 and the prediction residual signal output from the decoding unit 101 in S104 (S112).
  • the decoding unit 101 determines whether all motion compensation blocks that need to be subjected to motion compensation have been decoded using the motion compensation filter coefficients decoded in S101 (S113), and if so (Y in S113) If complete). On the other hand, when there is a motion compensation block that has not been decoded yet (in the case of N in S113), the process returns to S103 and is repeated.
  • the decoding device 100 performs the decoding processing operation.
  • the decoding apparatus 100 first decodes an image (picture) included in a sequence or GOP, in S102, all the motion compensation filter coefficients decoded by the decoding unit 101 in step S101 are written in the memory 109. It is not written in the filter coefficient storage state management table 104. Thereafter, by repeating the processing of S103 to S113, a part of the motion compensation filter coefficient is held in the filter coefficient storage unit 103.
  • the motion compensation filter indicated by the motion compensation filter coefficient ID exists in the filter coefficient storage unit 103, the motion compensation filter coefficient is Do not read from the memory 109. Therefore, the number of accesses to the memory 109 can be reduced. Thereby, it is possible to reduce the memory bandwidth and the memory access latency regarding the motion compensation filter coefficient.
  • the filter coefficient transfer control unit 102 detects the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID from the memory 109. Is read.
  • the case where the oldest motion compensation filter coefficient read from the frame memory of the filter coefficient storage unit 103 is written in the stored area has been described.
  • the present invention is not limited to this. For example, it may be written in the area where the motion compensation filter coefficient read from the memory 109 most recently is stored, or the area where the filter coefficient is stored may be selected at random and written. Any method may be selected as long as it can reduce access to the memory 109 and can also reduce the capacity of the filter coefficient storage unit 103.
  • the motion compensation filter coefficient ID is described as header information different from the motion vector, but is not limited thereto.
  • a motion vector may be used as the motion compensation filter coefficient ID, and not only header information different from the motion vector but also a motion vector including the motion vector may be used as the motion compensation filter ID.
  • the motion vector is set in the motion compensation unit 107.
  • a decimal part of the motion vector may be set.
  • the decoding apparatus 100 includes the decoding unit 101, the filter coefficient transfer control unit 102, the filter coefficient storage unit 103, the filter coefficient storage state management table 104, the reference image transfer control unit 105, the reference image storage unit 106, the motion compensation.
  • the unit 107, the adder 108, and the memory 109 are provided, the present invention is not limited to this.
  • the decoding device 100 only needs to include the decoding device unit 10 as a minimum configuration. That is, it is only necessary to include the decoding device unit 10 including the decoding unit 101, the filter coefficient transfer control unit 102, the filter coefficient storage unit 103, the memory 109, and the motion compensation unit 107.
  • the decoding device unit 10 is a moving image decoding device that performs motion compensation decoding with motion compensation on an encoded stream in which a moving image is encoded using motion compensation.
  • a decoding unit 101 that decodes a plurality of motion compensation filter coefficients used for motion compensation decoding from the stream, and a memory 109 for holding a plurality of motion compensation filter coefficients included in the encoded stream decoded by the decoding unit 101 Among the plurality of motion compensation filter coefficients held in the memory 109, the filter coefficient storage unit 103 for holding a motion compensation filter coefficient necessary for performing motion compensation, and the filter coefficient storage unit 103
  • a motion compensation unit 107 that performs motion compensation using the obtained motion compensation filter coefficients, and a plurality of motion compensation files decoded by the decoding unit 101 A filter coefficient that writes the necessary motion compensation filter coefficient from the memory 109 to the filter coefficient storage unit 103 only when the coefficient is written in the memory 109 and the filter coefficient storage unit 103 does not hold the necessary motion compensation filter coefficient.
  • the transfer control unit 102
  • the decoding device 100 includes at least the decoding device unit 10 as a minimum configuration, so that at least a part of the motion compensation filter coefficients stored in the memory 109 and used for decoding with motion compensation is filtered by the filter coefficient transfer control unit 102. It is transferred to and stored in the storage unit. Thereby, the number of times of direct access to the memory 109 can be reduced.
  • FIG. 6 is a configuration diagram of the decoding apparatus according to Embodiment 2 of the present invention.
  • 7A and 7B are examples of information held in the filter coefficient reference history management table.
  • FIG. 6 the same components as those in FIG.
  • a decoding apparatus 200 illustrated in FIG. 6 includes a decoding unit 101, a filter coefficient transfer control unit 102, a filter coefficient storage unit 103, a filter coefficient storage state management table 104, a reference image transfer control unit 105, a reference image storage unit 106, and a motion compensation unit. 107, an adder 108, a memory 109, and a filter coefficient reference history management table 201.
  • the decoding apparatus 200 shown in FIG. 6 differs from the decoding apparatus 100 according to Embodiment 1 in that a filter coefficient reference history management table 201 is provided.
  • the filter coefficient reference history management table 201 corresponds to the reference management unit of the present invention, and manages usage history information indicating the number of times of reference from the start of decoding for each of a plurality of motion compensation filter coefficients included in the encoded stream. Specifically, the filter coefficient reference history management table 201 receives the motion compensation filter coefficient ID as input, and the filter coefficient storage unit 103 indicates the number of times the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID has been referenced since the start of decoding. Has a function to output. The filter coefficient reference history management table 201 holds information as shown in FIG. 7A, for example.
  • the filter coefficient reference history management table 201 holds a motion compensation filter coefficient ID included in, for example, header information of an encoded stream decoded by the decoding unit 101 as a filter coefficient ID.
  • the number of times the motion compensation filter coefficient specified by each motion compensation filter coefficient ID is referred to from the start of decoding is held as the number of times of reference in the previous stream.
  • the filter coefficient reference history management table 201 receives the motion compensation filter coefficient ID as input, and the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID in the filter coefficient storage unit 103 is currently being compensated for by the motion compensation unit 107. It may have a function of outputting the number of times of reference before processing.
  • the filter coefficient reference history management table 201 holds information as shown in FIG. 7B, for example. That is, the filter coefficient reference history management table 201 holds a motion compensation filter coefficient ID included in, for example, header information of an encoded stream decoded by the decoding unit 101 as a filter coefficient ID. Then, the information (number of times) indicating how many times the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID is referred to before the motion compensation processing currently performed by the motion compensation unit 107 is referred to keeping.
  • FIG. 8 is a flowchart showing the decoding processing operation of the decoding apparatus according to Embodiment 2 of the present invention.
  • the decoding unit 101 that has received the encoded stream decodes header information that forms the encoded stream (S201), and outputs at least a motion compensation filter coefficient as the header information. To do. Then, the filter coefficient transfer control unit 102 writes all the motion compensation filter coefficients decoded by the decoding unit 101 in the memory 109 (S202).
  • the decoding unit 101 determines whether the picture type of the image to be decoded is P, B, or I (S203).
  • the decoding unit 101 determines that motion compensation processing is necessary, and includes header information constituting the encoded stream
  • the prediction residual signal is decoded (S204), and at least motion compensation filter coefficient information ID, motion vector information, and a prediction residual signal are output as header information.
  • the decoding unit 101 determines that the motion compensation process is unnecessary, proceeds to S215, performs in-screen decoding, and performs S214 Proceed to
  • the filter coefficient transfer control unit 102 When the filter coefficient storage unit 103 does not hold the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID (N in S205), the filter coefficient transfer control unit 102 performs the motion indicated by the motion compensation filter coefficient ID from the memory 109. Read compensation filter coefficients. Then, the filter coefficient storage unit 103 writes, for example, an area in which motion compensation filter coefficients with the smallest number of references so far are stored (S206).
  • the filter coefficient transfer control unit 102 refers to the filter coefficient reference history management table 201 and identifies the motion compensation filter coefficient with the smallest reference count. *
  • the filter coefficient transfer control unit 102 increases the reference count of the referred motion compensation filter coefficient in the filter coefficient reference history management table 201 (S207).
  • the filter coefficient transfer control unit 102 updates the filter coefficient storage state management table 104 (S208). Specifically, the filter coefficient transfer control unit 102 changes the storage state of the motion compensation filter coefficient read out of the filter coefficient storage state management table 104 to “hold”, and stores the erased motion compensation filter coefficient storage state. Is changed to "Do not hold".
  • the filter coefficient transfer control unit 102 reads the motion compensation filter coefficient from the memory 109. The process proceeds to S209.
  • the reference image transfer control unit 105 acquires a reference image (S209). Specifically, the reference image transfer control unit 105 reads a reference image to be used for motion compensation processing from the memory 109 based on the header information including the motion vector and the reference screen information output from the decoding unit 101 in S204. . Then, the read reference image is written in the reference image storage unit 106.
  • the motion compensation unit 107 sets the motion vector output by the decoding unit 101 in S204 (S210).
  • a motion compensation filter coefficient used for motion compensation is identified from the motion compensation filter coefficient ID and the motion vector output from the decoding unit 101 in S204, and is read from the filter coefficient storage unit 103 and set (S211).
  • the motion compensation unit 107 reads the reference image held by the reference image storage unit 106, performs motion compensation processing, generates a predicted image, and outputs the prediction image to the adder 108 (S212).
  • the adder 108 adds and outputs the prediction image output from the motion compensation unit 107 in S212 and the prediction residual signal output from the decoding unit 101 in S204 (S213).
  • the decoding unit 101 determines whether all motion compensation blocks that need to be subjected to motion compensation have been decoded using the motion compensation filter coefficients decoded in S201 (S214), and if so (Y in S214) If complete). On the other hand, when there is a motion compensation block that has not been decoded yet (in the case of N in S214), the process returns to S203 and is repeated.
  • the decoding device 200 performs the decoding processing operation.
  • the motion compensation filter coefficient with the smallest reference count is specified. Then, when the filter coefficient transfer control unit 102 writes to the filter coefficient storage unit 103, the filter coefficient transfer control unit 102 writes to the area where the motion compensation filter coefficient with the smallest number of references is stored. As a result, motion compensation filter coefficients that are unlikely to be referenced are not held in the filter coefficient storage unit 103, and motion compensation filter coefficients that are likely to be frequently referenced can be held in the filter coefficient storage unit 103. It becomes. As a result, the number of accesses to the memory 109 can be reduced. Thereby, it is possible to reduce the memory bandwidth and the memory access latency regarding the motion compensation filter coefficient.
  • the filter coefficient storage unit 103 when the filter coefficient storage unit 103 does not hold the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID, the motion compensation filter with the smallest reference count can be obtained by referring to the filter coefficient reference history management table 201. Specify the coefficient. Then, the filter coefficient transfer control unit 102 reads the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID from the memory 109, and the filter coefficient storage unit 103 stores the motion compensation filter coefficient with the smallest number of references so far.
  • this is not a limitation.
  • the motion compensation filter coefficient that has not been used most recently may be written in an area in which the motion compensation filter coefficient that has been used most recently is stored, or the motion compensation filter coefficient that has been used most recently is stored. It may be written in the area, or may be written in the area where the motion compensation filter coefficient having the largest number of references so far is stored. Any method may be selected as long as it can reduce access to the memory 109 and can also reduce the capacity of the filter coefficient storage unit 103.
  • the motion compensation filter coefficient ID is described as header information different from the motion vector, but is not limited thereto.
  • a motion vector may be used as the motion compensation filter coefficient ID, and not only header information different from the motion vector but also a motion vector including the motion vector may be used as the motion compensation filter ID.
  • the motion vector is set in the motion compensation unit 107.
  • a decimal part of the motion vector may be set.
  • FIG. 9 is a block diagram showing the configuration of the decoding apparatus according to Embodiment 3 of the present invention.
  • 10 and 11 are examples of information held in the filter coefficient statistical information management table. 9, the same components as those in FIG. 1 are denoted by the same reference numerals, and description thereof is omitted.
  • a decoding apparatus 300 illustrated in FIG. 9 includes a decoding unit 101, a filter coefficient transfer control unit 102, a filter coefficient storage unit 103, a filter coefficient storage state management table 104, a reference image transfer control unit 105, a reference image storage unit 106, and a motion compensation unit. 107, an adder 108, a memory 109, a predecoding unit 301, and a filter coefficient statistical information management table 302.
  • the decoding apparatus 300 shown in FIG. 9 differs from the decoding apparatus 100 according to Embodiment 1 in that it includes a pre-decoding unit 301 and a filter coefficient statistical information management table 302.
  • the pre-decoding unit 301 decodes at least a part of the plurality of motion compensation filter coefficients included in the encoded stream from the encoded stream prior to the decoding unit 101. Specifically, the pre-decoding unit 301 precedes the encoded stream by at least one bit or more than the decoding unit 101, and a part or all of the encoded stream encoded according to the standard of the moving image compression technique. Decrypt.
  • the pre-decoding unit 301 has a function of outputting at least the motion compensation filter coefficient ID.
  • the pre-decoding unit 301 may be configured as a CABAC decoding unit that decodes an arithmetic code such as CABAC (Context-based Adaptive Binary Arithmetic Coding) provided separately in the decoding device 300. Further, it may be provided before the decoding unit 101. That is, the pre-decoding unit 301 does not decode the image, but precedes the encoded stream by at least one bit from the decoding unit 101, decodes the motion compensation filter coefficient ID, and outputs it to the filter coefficient statistical information management table 302. Any configuration may be used.
  • CABAC Context-based Adaptive Binary Arithmetic Coding
  • the filter coefficient statistical information management table 302 corresponds to the statistical information management unit of the present invention, and manages the usage status of each motion compensation filter coefficient decoded by the pre-decoding unit 301 and decoded by the decoding unit 101. Specifically, the filter coefficient statistical information management table 302 receives the motion compensation filter coefficient ID output from the pre-decoding unit 301 as an input, and the motion compensation included in the encoded stream that the decoding unit 101 will decode (hereinafter or in the future). It has a function of outputting the number of times the motion compensation filter is used for each filter coefficient ID.
  • the filter coefficient statistical information management table 302 holds information as shown in FIG. That is, the filter coefficient statistical information management table 302 holds the motion compensation filter coefficient ID included in the header information of the encoded stream decoded by the pre-decoding unit 301 as the filter coefficient ID. In addition, the number of times until the motion compensation filter coefficient specified by the motion compensation filter coefficient ID is referred to in the decoding of the decoding unit 101 is held as the number of references in the future stream. Further, the filter coefficient statistical information management table 302 may hold information as shown in FIG. 11, for example. That is, the filter coefficient statistical information management table 302 may hold the motion compensation filter coefficient ID included in the header information of the encoded stream decoded by the pre-decoding unit 301 as the filter coefficient ID. In addition, the number of times until the motion compensation filter coefficient specified by the motion compensation filter coefficient ID is referred to in decoding by the decoding unit 101 is held as information indicating how many blocks ahead in the future stream are referred to. It may be.
  • the decoding device 300 is configured as described above. Specifically, by managing the appearance frequency of the motion compensation filter coefficient ID to be decoded by the decoding unit 101 using the filter coefficient statistical information management table 302, the probability that the motion compensation filter coefficient ID to be decoded by the decoding unit 101 will appear. Can know in advance. For this reason, it is possible to cause the filter coefficient storage unit 103 to hold a motion compensation filter coefficient having a high appearance probability and discard a motion compensation filter coefficient having a low appearance probability. As a result, not only can the number of accesses to the memory 109 be reduced, but also the memory bandwidth of the filter coefficient storage unit 103 can be reduced.
  • FIGS. 12A and 12B and FIGS. 13A and 13B are diagrams showing how the motion compensation filter coefficients of the filter coefficient storage unit are updated based on the filter coefficient statistical information management table.
  • FIG. 13A and FIG. 13B are temporally continuous with FIG. 12A and FIG. 12B, and show a state when decoding after one macroblock is performed by the decoding unit 101 as compared with FIG. 12A and FIG. 12B. ing.
  • the pre-decoding unit 301 decodes the encoded stream ahead of the decoding unit 101, for example, by two macroblocks.
  • the filter coefficient storage unit 103 has a configuration that can hold only two motion compensation filter coefficients.
  • the pre-decoding unit 301 decodes the encoded stream by, for example, 3 macroblocks ahead of the decoding unit 101, and holds the information shown in FIG. 12B in the filter coefficient statistical information management table 302 is doing.
  • the filter coefficient statistical information management table 302 has a filter coefficient ID (0, 1, 2) that has been decoded so far by the pre-decoding unit 301 with respect to the encoded stream, and refers to how many blocks they are in the future stream Information ( ⁇ , 2, 1) indicating whether or not to be performed.
  • indicates that there is no filter ID of 0 in the two macroblock destinations decoded by the pre-decoding unit 301 prior to the decoding unit 101.
  • a filter coefficient ID of 1 indicates that the decoding unit 101 will refer to it when decoding (one block ahead).
  • the filter ID is 2, it indicates that the decoding unit 101 refers to when decoding is performed two blocks ahead.
  • the filter coefficient transfer control unit 102 refers to the filter coefficient statistical information management table 302 and the filter coefficient storage state management table 104, and sets the filter coefficient ID (2, 2) held in the filter coefficient storage unit 103. Which of the motion compensation filter coefficients corresponding to 1) should be changed is determined.
  • the filter coefficient statistical information management table 302 it can be determined that the area for storing the motion compensation filter coefficient corresponding to the filter coefficient ID 2 should be changed.
  • FIG. 14 is a flowchart showing the decoding processing operation of the decoding device according to Embodiment 3 of the present invention.
  • the decoding unit 101 that has received the encoded stream decodes header information constituting the encoded stream (S301), and outputs at least a motion compensation filter coefficient as the header information. To do. Then, the filter coefficient transfer control unit 102 writes all the motion compensation filter coefficients decoded by the decoding unit 101 in S301 in the memory 109 (S302). Next, the decoding unit 101 determines whether the picture type of the decoding target image is P, B, or I (S303).
  • the decoding unit 101 determines that the picture type of the decoding target image is P or B (in the case of P and B in S303), the pre-decoding unit 301 determines that motion compensation processing is necessary,
  • the encoded stream is decoded prior to the decoding unit 101 (S304), and the filter coefficient statistical information management table 302 is updated (S305).
  • the coded stream is decoded prior to the decoding unit 101, and the appearance frequency of the motion compensation filter coefficient ID in the coded stream that has not been decoded by the decoding unit 101 is managed by the filter coefficient statistical information management.
  • the decoding unit 101 decodes the header information and the prediction residual signal constituting the encoded stream, and outputs at least the motion compensation filter coefficient information ID, the motion vector information, and the prediction residual signal as the header information (S306). .
  • the decoding unit 101 determines that the picture type of the image to be decoded is I (in the case of I in S303), the decoding unit 101 proceeds to S316, performs on-screen decoding, and proceeds to S315.
  • the filter coefficient transfer control unit 102 manages whether or not the filter coefficient storage unit 103 holds the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID decoded by the decoding unit 101 in S306. A check is made with reference to the table 104 (S307).
  • the filter coefficient transfer control unit 102 When the filter coefficient storage unit 103 does not hold the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID (N in S307), the filter coefficient transfer control unit 102 performs the motion indicated by the motion compensation filter coefficient ID from the memory 109. Read compensation filter coefficients. Then, the filter coefficient storage unit 103 writes, for example, an area in which the motion compensation filter coefficient with the smallest reference count is stored (S308).
  • the filter coefficient transfer control unit 102 refers to the filter coefficient statistical information management table 302 and identifies the motion compensation filter coefficient with the smallest number of references while the decoding unit 101 decodes in the future.
  • the filter coefficient transfer control unit 102 updates the filter coefficient storage state management table 104 (S309). Specifically, the filter coefficient transfer control unit 102 changes the storage state of the motion compensation filter coefficient read out of the filter coefficient storage state management table 104 to “hold”, and stores the erased motion compensation filter coefficient storage state. Is changed to "Do not hold".
  • the filter coefficient transfer control unit 102 reads the motion compensation filter coefficient from the memory 109. (No transfer), the process proceeds to S310.
  • the decoding device 300 performs the decoding processing operation.
  • the predecoding unit 301 decodes the stream prior to the decoding unit 101, and the appearance frequency of the motion compensation filter coefficient ID that the decoding unit 101 will decode from now on is displayed in the filter coefficient statistical information management table. 302 is managed.
  • the probability that the motion compensation filter coefficient ID to be decoded by the decoding unit 101 will be known in advance.
  • the filter coefficient transfer control unit 102 reads out the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID from the memory 109 and writes it in the area where the motion compensation filter coefficient with the smallest reference count in the future is stored in the filter coefficient storage unit 103.
  • it is not limited to that. For example, it may be written in an area in which motion compensation filter coefficients that are not used for a while, that is, have a small number of reference times for a predetermined period in the future, are stored.
  • any method can be selected as long as it can reduce access to the memory 109 and can also reduce the capacity of the filter coefficient storage unit 103.
  • the motion compensation filter coefficient ID is described as header information different from the motion vector, but is not limited thereto.
  • a motion vector may be used as the motion compensation filter coefficient ID, and not only header information different from the motion vector but also a motion vector including the motion vector may be used as the motion compensation filter ID.
  • the motion vector is set in the motion compensation unit 107.
  • a decimal part of the motion vector may be set.
  • the decoding apparatus 300 includes the decoding unit 101, the filter coefficient transfer control unit 102, the filter coefficient storage unit 103, the filter coefficient storage state management table 104, the reference image transfer control unit 105, the reference image storage unit 106, the motion compensation. Unit 107, adder 108, memory 109, predecoding unit 301, and filter coefficient statistical information management table 302, but are not limited thereto.
  • the decoding device 300 may include a decoding device unit 350 as a minimum configuration. That is, it is only necessary to include a decoding device unit 350 including a decoding unit 101, a filter coefficient transfer control unit 102, a filter coefficient storage unit 103, a memory 109, and a pre-decoding unit.
  • FIG. 15 is a block diagram showing a minimum configuration of the decoding apparatus according to Embodiment 3 of the present invention.
  • the decoding apparatus unit 350 decodes a plurality of motion compensation filter coefficients used for decoding with motion compensation from the encoded stream, and precedes the decoding unit 101 with a code.
  • a pre-decoding unit 301 that decodes a plurality of motion compensation filter coefficients from the encoded stream, a memory 109 for holding a plurality of motion compensation filter coefficients decoded by the pre-decoding unit 301, and a plurality of pieces of decoding decoded by the decoding unit 101
  • a filter coefficient transfer control unit 102 for holding the partial motion compensation filter coefficients in the filter coefficient storage unit 103;
  • the decoding device unit 350 includes at least the decoding device unit 10 as a minimum configuration, and performs a prefetch analysis using the motion compensation filter coefficient decoded by the pre-decoding unit 301, so that a motion compensation filter used for decoding with motion compensation is used. A part of the coefficients is held in the filter coefficient storage unit 103. As a result, when the filter coefficient storage unit 103 holds the motion compensation filter coefficient stored in the filter coefficient storage unit 103, the number of times of direct access to the memory 109 can be reduced. Play.
  • FIG. 16 is a block diagram showing the configuration of the decoding apparatus according to Embodiment 4 of the present invention.
  • FIG. 15 the same components as those in FIG.
  • a decoding unit 101 includes a decoding unit 101, a filter coefficient transfer control unit 102, a filter coefficient storage unit 103, a reference image transfer control unit 105, a reference image storage unit 106, a motion compensation unit 107, an adder 108, and a memory 109.
  • the decoding apparatus 400 illustrated in FIG. 16 includes the lossless encoding unit 401 and the lossless decoding unit 402, and does not include the filter coefficient storage state management table 104, compared to the decoding apparatus 100 according to Embodiment 1. The configuration is different.
  • the lossless encoding unit 401 performs lossless encoding on a plurality of motion compensation filter coefficients included in the encoded stream. Specifically, the lossless encoding unit 401 has a function of reversibly encoding the motion compensation filter coefficient decoded by the decoding unit 101 and writing it to the memory 109.
  • the lossless decoding unit 402 performs lossless decoding of motion compensation filter coefficients necessary for motion compensation among a plurality of motion compensation filter coefficients losslessly encoded by the lossless encoding unit 401, Write to the filter coefficient storage unit 103 via the coefficient transfer control unit 102.
  • the lossless decoding unit 402 has a function of reading out the motion compensation filter coefficient stored in the memory 109, performing lossless decoding, and writing it into the filter coefficient storage unit 103 via the filter coefficient transfer control unit 102. Note that the lossless decoding unit 402 may write to the filter coefficient storage unit 103 without passing through the filter coefficient transfer control unit 102.
  • FIG. 17 is a flowchart showing the decoding processing operation of the decoding apparatus according to Embodiment 4 of the present invention.
  • the decoding unit 101 that has received the encoded stream decodes header information constituting the encoded stream (S401), and outputs at least a motion compensation filter coefficient as the header information.
  • the lossless encoding unit 401 performs lossless encoding of the motion compensation filter coefficient decoded by the decoding unit 101 (S402).
  • the filter coefficient transfer control unit 102 writes the motion compensation filter coefficient losslessly encoded by the lossless encoding unit 401 in the memory 109 (S403).
  • the decoding unit 101 determines whether the picture type of the image to be decoded is P, B, or I (S404).
  • the decoding unit 101 determines that motion compensation processing is necessary, and includes header information that configures the encoded stream and The prediction residual signal is decoded (S405), and at least motion compensation filter coefficient information ID, motion vector information, and a prediction residual signal are output as header information.
  • the decoding unit 101 determines that the motion compensation process is unnecessary, proceeds to S414, performs in-screen decoding, and performs S413. Proceed to
  • the filter coefficient transfer control unit 102 reads out the losslessly encoded motion compensation filter coefficient indicated by the motion compensation filter coefficient ID from the memory 109 (S406). Subsequently, the lossless decoding unit 402 performs lossless decoding of the loss-compensated motion compensation filter coefficient, and writes it to the filter coefficient storage unit 103 (S407).
  • the decoding device 400 performs the decoding processing operation.
  • the data size of the motion compensation filter coefficient stored in the memory 109 can be reduced by compressing the motion compensation filter coefficient by the lossless encoding unit 401. Thereby, it is possible to reduce the memory capacity related to the motion compensation filter coefficient.
  • the decoding apparatus 400 illustrated in FIG. 16 may include at least the filter coefficient storage state management table 104 described above, and may include the filter coefficient reference history management table 201 or the filter coefficient statistical information management table. In this case, not only the memory capacity relating to the motion compensation filter coefficient can be reduced, but also the memory bandwidth and the memory access latency can be reduced as described above, which is further preferable.
  • the motion compensation filter coefficient is once decoded by the decoding unit 101, re-encoded by the lossless encoding unit 401, stored in the memory 109, and decoded by the lossless decoding unit 402. .
  • the motion compensation filter coefficient part in the encoded stream may be stored in the memory 109 without decoding the motion compensation filter coefficient by the decoding unit 101, and may be decoded by the lossless decoding unit 402.
  • the encoding algorithm used in the lossless encoding unit 401 may be any encoding method as long as it is lossless and the output size is smaller than the input size.
  • the motion compensation filter coefficient ID is described as header information different from the motion vector, but is not limited thereto.
  • a motion vector may be used as the motion compensation filter coefficient ID, and not only header information different from the motion vector but also a motion vector including the motion vector may be used as the motion compensation filter ID.
  • the motion vector is set in the motion compensation unit 107.
  • a decimal part of the motion vector may be set.
  • FIG. 18 is a block diagram showing the configuration of the coding apparatus according to Embodiment 5 of the present invention.
  • An encoding apparatus 500 illustrated in FIG. 18 is an encoding apparatus that performs motion compensation encoding, which is encoding with motion compensation, using an encoding target image and a reference image, and includes a filter coefficient generation unit 501, a filter A coefficient transfer control unit 502, a filter coefficient storage unit 503, a filter coefficient storage state management table 504, a reference image transfer control unit 505, a reference image storage unit 506, a motion detection unit 507, a subtractor 508, a memory 509, and an encoding unit 510 Prepare.
  • the filter coefficient generation unit 501 corresponds to the generation unit of the present invention, and generates a plurality of motion compensation filter coefficients used for motion compensation encoding.
  • the filter coefficient generation unit 501 has a function of generating a motion compensation filter coefficient for variable coefficient motion compensation using an encoding target image as an input or an encoding target image and a reference image as inputs.
  • the filter coefficient generation unit 501 uses a filter coefficient (motion that is used for variable coefficient motion compensation to be included in header information such as a GOP or a picture unit of a sequence of an encoded stream encoded by the encoding unit 510. Compensation filter coefficient).
  • the motion compensation filter coefficient may be generated not only in picture units but also in GOP units or sequence units, or may be generated in slice units or macroblock units. Moreover, you may combine them.
  • the filter coefficient transfer control unit 502 writes a plurality of motion compensation filter coefficients generated by the filter coefficient generation unit 501 to the memory 509, and the filter coefficient storage unit 503 holds motion compensation filter coefficients necessary for motion compensation processing. Only when there is not, the necessary motion compensation filter coefficient is transferred from the memory 509 to the filter coefficient storage unit 503.
  • the filter coefficient transfer control unit 502 has a function of writing the motion compensation filter coefficient generated by the filter coefficient generation unit 501 in the memory 509. Further, it has a function of referring to information in the filter coefficient storage state management table 504 based on information (motion compensation filter coefficient ID) indicating which motion compensation filter coefficient is used for motion compensation determined by the motion detection unit 507.
  • the filter coefficient transfer control unit 502 can confirm whether the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID is held in the filter coefficient storage unit 503 based on the information in the filter coefficient storage state management table 504.
  • the filter compensation transfer control unit 502 determines that the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID is not held in the filter coefficient storage unit 503 if the filter compensation transfer control unit 502 confirms that the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID is not held in the filter coefficient storage unit 503, the filter compensation transfer control unit 502 reads the motion compensation indicated by the motion compensation filter coefficient ID from the memory 509. The filter coefficient is read out and written (transferred) to the filter coefficient storage unit 503. On the other hand, when it is confirmed that the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID is held in the filter coefficient storage unit 503, the filter coefficient transfer control unit 502 does not read the motion compensation filter coefficient from the memory 509 ( Do not forward).
  • the filter coefficient transfer control unit 502 may execute only a command for writing the motion compensation filter coefficient in the memory 509 to the filter coefficient generation unit 501, and the filter coefficient generation unit 501 may write the motion compensation filter coefficient in the memory 509. Similarly, the filter coefficient transfer control unit 502 issues only an instruction for reading the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID from the memory 509 to the filter coefficient storage unit 503, and the filter coefficient storage unit 503 receives the motion compensation filter coefficient from the memory 509. The motion compensation filter coefficient indicated by the coefficient ID may be read and held.
  • the filter coefficient storage unit 503 is for holding a motion compensation filter coefficient necessary for performing motion compensation among a plurality of motion compensation filter coefficients held in the memory 509. Specifically, the filter coefficient storage unit 503 sets at least two types of motion compensation filter coefficients transferred from the memory 509 and the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID in the motion detection unit 507. It has the function to do.
  • the filter coefficient storage state management table 504 manages information indicating whether the filter coefficient storage unit 503 holds the motion compensation filter coefficient specified by the motion compensation filter coefficient ID. Specifically, the filter coefficient storage state management table 504 receives the motion compensation filter coefficient ID as input, and information on whether or not the filter coefficient storage unit 503 holds the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID. It has a function of outputting to the filter coefficient transfer control unit 502. The filter coefficient storage state management table 504 stores a storage state indicating whether or not the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID is held in the filter coefficient storage unit 503, for example, as illustrated in FIG. (Information) is held.
  • the reference image transfer control unit 505 has a function of reading a reference pixel necessary for motion detection from the memory 509 and writing it to the reference image storage unit 506 based on position information of a search area in the reference image used for motion detection.
  • the reference image transfer control unit 505 performs only a command for reading the reference pixels necessary for motion detection from the memory 509 on the reference image storage unit 506 based on the position information of the search area in the reference image used for motion detection, and refers to it.
  • the image storage unit 506 may read out and hold reference pixels necessary for motion compensation from the memory 509.
  • the reference image storage unit 506 has a function of holding the reference pixels transferred from the memory 509.
  • the motion detection unit 507 generates a predicted image by performing motion compensation from the encoding target image and the reference image using the motion compensation filter coefficients necessary for motion compensation held in the filter coefficient storage unit 503. Specifically, the motion detection unit 507 receives a coded image and a reference image as input, determines a motion vector and a motion compensation filter coefficient ID indicating the type of motion compensation filter coefficient used for motion compensation, and performs coding. The function to output to the conversion unit 510 is provided. The motion detection unit 507 has a function of outputting the determined motion compensation filter coefficient ID to the filter coefficient transfer control unit 502.
  • the motion detection unit 507 also includes a reference pixel necessary for motion compensation indicated by the motion vector held by the reference image storage unit 506 and a motion compensation indicated by the motion compensation filter coefficient ID held by the filter coefficient storage unit 503. It has a function of acquiring filter coefficients, performing motion compensation processing using the information, generating a prediction image, and outputting the prediction image to the subtracter 508.
  • FIG. 19 is an example of information held in the filter coefficient storage state management table.
  • FIG. 20 is a diagram for explaining a method in which the motion detection unit 507 determines the motion compensation filter coefficient ID.
  • the filter coefficient storage state management table shows the motion compensation filter coefficient IDs 0 to 100 and the storage states of the motion compensation filter coefficients corresponding to them in the filter coefficient storage unit 503.
  • motion compensation filter coefficients corresponding to motion compensation filter coefficient IDs 70 to 79 are stored in the filter coefficient storage unit 503.
  • the filter coefficient storage unit 503 can hold only 20 motion compensation filter coefficients. That is, the filter coefficient storage unit 503 holds ten motion compensation filter coefficients corresponding to the motion compensation filter coefficient IDs 70 to 79 as shown in FIG. 20A, and stores the remaining ten motion compensation filter coefficients. There is an area that can be retained.
  • the motion detection unit 507 determines a motion compensation filter coefficient ID indicating the type of motion compensation filter coefficient used for motion compensation as follows.
  • the motion detection unit 507 causes the filter coefficient transfer control unit 502 to write motion compensation filter coefficients corresponding to the motion compensation filter coefficient IDs 0 to 9 in the filter coefficient storage unit 503. Then, it is confirmed whether or not the compensation filter coefficient ID is used for motion compensation.
  • the motion detection unit 507 sends the motion compensation filter coefficients corresponding to the motion compensation filter coefficient IDs 10 to 19 to the filter coefficient transfer control unit 502 as shown in FIG. It is written to 503 and it is confirmed whether or not the compensation filter coefficient ID is used for motion compensation.
  • the motion detection unit 507 similarly causes the motion compensation filter coefficients corresponding to the motion compensation filter coefficient IDs 0 to 69 and 80 to 100 to be written in the filter coefficient storage unit 503 and used for motion compensation. It is confirmed whether or not the filter coefficient ID.
  • the motion compensation filter coefficients corresponding to the motion compensation filter coefficient IDs 70 to 79 are stored in the filter coefficient storage unit 503 in advance. Therefore, the filter coefficient transfer control unit 502 does not transfer the motion compensation filter coefficients corresponding to the motion compensation filter coefficient IDs 70 to 79. In this way, it is possible to reduce the memory bandwidth and memory access latency related to the motion compensation filter coefficient.
  • the subtracter 508 has a function of subtracting the input encoded image and the prediction error signal output from the motion detection unit 507 and outputting the result to the encoding unit 510 as a prediction error signal.
  • the memory 509 has a function of holding motion compensation filter coefficients and a reference screen referred to by the motion detection unit 507. Note that the memory 509 may only hold the motion compensation filter coefficient. In that case, the encoding apparatus 500 may include a frame memory that holds a reference screen referred to by the motion detection unit 507.
  • the encoding unit 510 receives at least the prediction error signal output from the subtracter 508, the motion vector output from the motion detection unit 507, and the motion compensation filter coefficient ID, and conforms to the standard of the moving image compression technique. And a function of outputting an encoded stream.
  • the encoding apparatus 500 is configured as described above.
  • FIG. 21 is a flowchart showing an encoding process operation of the encoding apparatus according to the fifth embodiment of the present invention.
  • the filter coefficient generation unit 501 that has received the encoding target image generates and outputs a motion compensation filter coefficient used for subsequent encoding (S501). Then, the filter coefficient transfer control unit 502 writes all the motion compensation filter coefficients generated by the filter coefficient generation unit 501 in S501 in the memory 509 (S502).
  • the encoding apparatus 500 performs both intra prediction in S503 and inter prediction in S504 to S511 for the encoding target image (block). Since the conventional method may be applied to the intra prediction, the description is omitted. Hereinafter, the execution of the inter-screen prediction in S504 to S511 will be described.
  • the reference image transfer control unit 505 reads the reference pixels necessary for motion detection from the memory 509 based on the position information of the search area in the reference image used for motion detection, and writes the reference pixels in the reference image storage unit 506.
  • the motion detection unit 507 receives the encoded image and the reference image as input and outputs information on the pixel position in the reference image having a high correlation with the encoded image as a motion vector (S505), and further reduces the prediction error.
  • a motion compensation filter coefficient is specified and output as a motion compensation filter coefficient ID.
  • the filter coefficient transfer control unit 502 uses the filter coefficient storage state management table 504 to determine whether or not the filter coefficient storage unit 503 holds the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID specified in S506.
  • the reference is examined (S507).
  • the filter coefficient transfer control unit 502 moves from the memory 509.
  • the motion compensation filter coefficient indicated by the compensation filter coefficient ID is read out.
  • the filter coefficient storage unit 503 writes, for example, the oldest motion compensation filter coefficient read from the memory 509 in the area where it is stored (S508).
  • the filter coefficient transfer control unit 502 updates the filter coefficient storage state management table 504 (S509). Specifically, the filter coefficient transfer control unit 502 changes the storage state of the motion compensation filter coefficient read in the filter coefficient storage state management table 504 to “hold” and stores the erased motion compensation filter coefficient storage state. Is changed to "Do not hold".
  • the filter coefficient transfer control unit 502 reads the motion compensation filter coefficient from the memory 509. (No transfer), the process proceeds to S510.
  • the motion detection unit 507 reads out and sets the motion compensation filter coefficient used for motion compensation from the filter coefficient storage unit 503 from the determined motion vector and the identified motion compensation filter coefficient ID (S510). Then, the reference image held in the reference image storage unit 506 is read out, motion compensation processing is performed, a predicted image is generated (S511), and the result is output to the subtracter 508.
  • the encoding apparatus 500 performs intra-screen prediction in S503 on the encoding target image (block), and performs inter-screen prediction in S504 to S511. Then, the encoding unit 510 determines which encoding mode of the encoding efficiency in the case of the inter-screen encoding and the encoding efficiency in the case of the intra-screen encoding from the performed intra-screen prediction and inter-screen prediction. It is determined whether or not the encoding efficiency is better when encoding with. The encoding unit 510 determines the encoding mode (macroblock type) of the image (block) to be encoded as the encoding mode determined to improve the encoding efficiency (S512).
  • the encoding mode macroblock type
  • the subtracter 508 performs subtraction in accordance with the encoding mode of the encoding target image (block) determined in S512. Specifically, when it is determined that the encoding mode of the encoding target image (block) is inter-frame prediction (S512), the prediction image output by the motion detection unit 507 in S511, and the encoding target image Are subtracted (S513), and a prediction residual (prediction error) signal is output. On the other hand, when it is determined that the encoding mode of the encoding target image (block) is intra-frame prediction (S512), the prediction image output in S503 and the encoding target image are subtracted (S513), The subtracted prediction residue (error) signal is output.
  • the encoding unit 510 receives at least the prediction residue (error) signal output from the subtracter 508, the motion vector output from the motion detection unit 507, and the motion compensation filter coefficient ID, and compresses the moving image with respect to them. Encoding is performed according to the technical standard, and an encoded stream is output (S514).
  • the encoding unit 510 determines whether all motion compensation blocks that need to be subjected to motion compensation have been encoded using the motion compensation filter coefficients (S515), and if so (in the case of Y in S515). , Encoding is completed. On the other hand, if there is a motion compensation block that has not been encoded (N in S515), the process returns to S503 and S504 and is repeated.
  • the encoding device 500 performs the encoding processing operation.
  • the motion compensation filter coefficient is set. Do not read from memory 509 (do not transfer). Therefore, the number of accesses to the memory 509 can be reduced. Thereby, it is possible to reduce the memory bandwidth and the memory access latency regarding the motion compensation filter coefficient.
  • the filter coefficient transfer control unit 502 uses the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID from the memory 509. Is read (transferred).
  • the case where the oldest motion compensation filter coefficient read out from the memory 509 of the filter coefficient storage unit 503 is written in the stored area has been described.
  • the present invention is not limited to this. For example, it may be written in an area where motion compensation filter coefficients read from the memory 509 most recently are stored, or an area where filter coefficients are stored may be selected at random and written. Any method may be selected as long as it can reduce access to the memory 109 and can also reduce the capacity of the filter coefficient storage unit 103.
  • the motion compensation filter coefficient ID is described as header information different from the motion vector, but is not limited thereto.
  • the motion vector may be used as the motion compensation filter coefficient ID, and not only the header information different from the motion vector but also the motion vector may be used as the motion compensation filter ID.
  • the encoding apparatus 500 includes the filter coefficient generation unit 501, the filter coefficient transfer control unit 502, the filter coefficient storage unit 503, the filter coefficient storage state management table 504, the reference image transfer control unit 505, the reference image storage unit 506,
  • the motion detection unit 507, the subtracter 508, the memory 509, and the encoding unit 510 are provided, the present invention is not limited thereto.
  • a filter coefficient generation unit 501, a filter coefficient transfer control unit 502, a filter coefficient storage unit 503, a motion detection unit 507, and a memory 509 may be provided.
  • the encoding device 500 is a moving image encoding device that performs motion compensation encoding, which is encoding with motion compensation, using an encoding target image and a reference image.
  • a motion detection unit 507 that generates a predicted image by performing motion compensation from an encoding target image and a reference image using a filter coefficient, and a filter coefficient generation unit Only when the plurality of motion compensation filter coefficients generated by 01 are written in the memory 509 and the filter coefficient storage unit 503 does not hold the necessary motion compensation filter coefficients, the necessary motion is stored in the filter coefficient storage unit 503 from the memory 509.
  • the motion compensation filter indicated by the motion compensation filter coefficient ID exists in the filter coefficient storage unit 503, the motion compensation filter coefficient can not be read from the memory 509. Therefore, the number of accesses to the memory 509 can be reduced. Thereby, it is possible to reduce the memory bandwidth and the memory access latency regarding the motion compensation filter coefficient.
  • FIG. 22 is a block diagram showing the configuration of the coding apparatus according to Embodiment 6 of the present invention. 22, the same components as those in FIG. 18 are denoted by the same reference numerals, and the description thereof is omitted.
  • a filter coefficient generation unit 501 includes a filter coefficient generation unit 501, a filter coefficient transfer control unit 502, a filter coefficient storage unit 503, a filter coefficient storage state management table 504, a reference image transfer control unit 505, a reference image storage unit 506, A motion detection unit 507, a subtracter 508, a memory 509, an encoding unit 510, and a filter coefficient reference history management table 601 are provided.
  • the configuration of encoding apparatus 600 shown in FIG. 22 differs from encoding apparatus 500 according to Embodiment 5 in that it includes a filter coefficient reference history management table 601.
  • the filter coefficient reference history management table 601 manages use history information indicating the number of times of reference from the start of motion compensation for each motion compensation filter coefficient used for motion compensation. Specifically, the filter coefficient reference history management table 601 receives the motion compensation filter coefficient ID as an input, and outputs to the filter coefficient storage unit 503 the number of times the motion compensation filter indicated by the motion compensation filter coefficient ID has been referenced since the start of encoding. Has the function of Note that the information held in the filter coefficient reference history management table 601 is the same as the contents shown in FIGS. 7A and 7B, and thus the description thereof is omitted.
  • FIG. 23 is a flowchart showing an encoding process operation of the encoding apparatus according to the sixth embodiment of the present invention.
  • the filter coefficient generation unit 501 that has received the encoding target image generates and outputs a motion compensation filter coefficient used for subsequent encoding (S601). Note that the processing in S602 is the same as that in S502, and a description thereof will be omitted.
  • the encoding apparatus 600 performs both intra prediction in S603 and inter prediction in S604 to S612 for the image (block) to be encoded.
  • intra prediction a conventional method may be applied as in S503, and the description thereof will be omitted.
  • inter-screen prediction in S604 to S612 will be described.
  • the processing from S604 to S606 is the same as S504 to S506, and the description thereof will be omitted.
  • the filter coefficient transfer control unit 502 performs motion compensation from the memory 509.
  • the motion compensation filter coefficient indicated by the filter coefficient ID is read out.
  • the filter coefficient storage unit 503 writes, for example, the area where the motion compensation filter coefficient with the smallest reference count is stored (S608).
  • the filter coefficient transfer control unit 502 refers to the filter coefficient reference history management table 601 and identifies the motion compensation filter coefficient with the smallest reference count.
  • the filter coefficient transfer control unit 502 updates the filter coefficient reference history management table 601 (S609). Specifically, the reference count of the motion compensation filter coefficient referred to in the filter coefficient reference history management table 601 is increased.
  • the filter coefficient transfer control unit 502 updates the filter coefficient storage state management table 504 (S610). Specifically, the filter coefficient transfer control unit 502 changes the storage state of the read motion compensation filter coefficient to “hold” in the filter coefficient storage state management table 504 and stores the erased motion compensation filter coefficient. Change the state to "not hold”.
  • the filter coefficient transfer control unit 502 reads the motion compensation filter coefficient from the memory 509. (No transfer), the process proceeds to S611.
  • the motion detection unit 507 reads the motion compensation filter coefficient used for motion compensation from the filter coefficient storage unit 503 and sets it from the determined motion vector and the identified motion compensation filter coefficient ID (S611). Note that the processing of S611 is the same as that of S510, and thus the description thereof is omitted.
  • the encoding apparatus 600 performs intra-screen prediction in S603 on the encoding target image (block), and performs inter-screen prediction in S604 to S612. Then, the encoding unit 510 determines which encoding mode of the encoding efficiency in the case of the inter-screen encoding and the encoding efficiency in the case of the intra-screen encoding from the performed intra-screen prediction and inter-screen prediction. It is determined whether or not the encoding efficiency is better when encoding with. The encoding unit 510 determines an encoding mode (macroblock type) of an image (block) to be encoded as the encoding mode determined to improve the encoding efficiency.
  • an encoding mode macroblock type
  • the encoding device 600 performs the encoding processing operation.
  • the motion compensation filter coefficient with the smallest reference count is specified. Then, when the filter coefficient transfer control unit 502 writes in the filter coefficient storage unit 503, the filter coefficient transfer control unit 502 writes in the area where the motion compensation filter coefficient with the smallest number of references is stored. Accordingly, motion compensation filter coefficients that are unlikely to be referenced are not held in the filter coefficient storage unit 503, and motion compensation filter coefficients that are likely to be frequently referenced are held in the filter coefficient storage unit 503. Become. As a result, the number of accesses to the memory 509 can be reduced. In this way, it is possible to reduce the memory bandwidth and memory access latency related to the motion compensation filter coefficient.
  • the filter coefficient storage unit 503 does not hold the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID
  • the motion compensation filter with the smallest reference count can be obtained by referring to the filter coefficient reference history management table 601. Specify the coefficient. Then, the filter coefficient transfer control unit 502 reads the motion compensation filter coefficient indicated by the motion compensation filter coefficient ID from the memory 509, and the filter coefficient storage unit 503 stores the motion compensation filter coefficient with the smallest number of references so far.
  • the present invention is not limited to this.
  • the most recently used motion compensation filter coefficient may be written in an area where the most recently used motion compensation filter coefficient is stored, or the most recently used motion compensation filter coefficient may be written in an area where it has been stored.
  • the motion compensation filter coefficient having the highest reference count may be written in the area where the coefficient is stored. That is, any method may be selected as long as it can reduce access to the memory 109 and can also reduce the capacity of the filter coefficient storage unit 103.
  • the motion compensation filter coefficient ID is described as header information different from the motion vector, but is not limited thereto.
  • the motion vector may be used as the motion compensation filter coefficient ID, and not only the header information different from the motion vector but also the motion vector may be used as the motion compensation filter ID.
  • FIG. 24 is a block diagram showing the configuration of the coding apparatus according to Embodiment 7 of the present invention. 24, the same components as those in FIG. 18 are denoted by the same reference numerals, and description thereof is omitted.
  • the encoding apparatus 700 illustrated in FIG. 24 includes a filter coefficient generation unit 501, a filter coefficient transfer control unit 502, a filter coefficient storage unit 503, a reference image transfer control unit 505, a reference image storage unit 506, a motion detection unit 507, and a subtracter 508. , A memory 509, an encoding unit 510, a lossless encoding unit 701, and a lossless decoding unit 702.
  • the encoding apparatus 700 illustrated in FIG. 24 does not include the filter coefficient storage state management table 504 but includes the lossless encoding unit 701 and the lossless decoding unit 702 as compared to the encoding apparatus 500 according to Embodiment 5. The configuration is different.
  • the lossless encoding unit 701 performs lossless encoding of a plurality of motion compensation filter coefficients. Specifically, the lossless encoding unit 701 has a function of losslessly encoding the motion compensation filter coefficient generated by the filter coefficient generation unit 501 and writing it in the memory 509.
  • the lossless decoding unit 702 performs lossless decoding of necessary motion compensation filter coefficients among the plurality of motion compensation filter coefficients losslessly encoded by the lossless encoding unit 701, and performs lossless decoding of the motion compensation filter coefficients as filter coefficient transfer control. Write to the filter coefficient storage unit 503 via the unit 502. Specifically, the lossless decoding unit 702 has a function of reading the motion compensation filter coefficient stored in the memory 509, performing lossless decoding, and writing it to the filter coefficient storage unit 503 via the filter coefficient transfer control unit 502. Note that the lossless decoding unit 702 may write to the filter coefficient storage unit 503 without going through the filter coefficient transfer control unit 502.
  • FIG. 25 is a flowchart showing an encoding process operation of the encoding apparatus according to the seventh embodiment of the present invention.
  • the filter coefficient generation unit 501 that has received an image to be encoded generates and outputs a motion compensation filter coefficient used for subsequent encoding (S701).
  • the lossless encoding unit 701 performs lossless encoding of the motion compensation filter coefficient generated by the filter coefficient generation unit 501 (S702).
  • the filter coefficient transfer control unit 502 writes the motion compensation filter coefficient losslessly encoded by the lossless encoding unit 701 in S702 to the memory 509 (S703).
  • the encoding apparatus 700 performs both intra prediction in S704 and inter prediction in S705 to S711 for the image (block) to be encoded.
  • intra prediction a conventional method may be applied as in S503, and the description thereof will be omitted.
  • inter-screen prediction in S705 to S711 will be described. Note that the processing from S705 to S707 is the same as S504 to S506, and a description thereof will be omitted.
  • the filter coefficient transfer control unit 502 reads the loss compensation encoded motion compensation filter coefficient indicated by the motion compensation filter coefficient ID from the memory 509 (S708). Then, the lossless decoding unit 702 performs lossless decoding of the lossless-encoded motion compensation filter coefficient and writes it to the filter coefficient storage unit 503 (S709).
  • the motion detection unit 507 reads and sets the motion compensation filter coefficient used for motion compensation from the filter coefficient storage unit 503 from the specified motion compensation filter coefficient ID and the determined motion vector (S710). Then, the reference image held by the reference image storage unit 506 is read out, a motion compensation process is performed, a predicted image is generated (S711), and output to the subtracter 508.
  • the encoding apparatus 700 performs intra-screen prediction in S704 on the encoding target image (block), and performs inter-screen prediction in S705 to S711. Then, the encoding unit 510 determines which encoding mode of the encoding efficiency in the case of the inter-screen encoding and the encoding efficiency in the case of the intra-screen encoding from the performed intra-screen prediction and inter-screen prediction. It is determined whether or not the encoding efficiency is better when encoding with. The encoding unit 510 determines an encoding mode (macroblock type) of an image (block) to be encoded as the encoding mode determined to improve the encoding efficiency.
  • an encoding mode macroblock type
  • the encoding device 700 performs the encoding processing operation.
  • the data size of the motion compensation filter coefficient stored in the memory 509 can be reduced by compressing the motion compensation filter coefficient by the lossless encoding unit 701. As a result, the memory capacity related to the motion compensation filter coefficient can be reduced.
  • the encoding apparatus 700 illustrated in FIG. 23 may include at least the filter coefficient storage state management table 504 described above and a filter coefficient reference history management table 601. In this case, not only the memory capacity relating to the motion compensation filter coefficient can be reduced, but also the memory bandwidth and the memory access latency can be reduced as described above, which is further preferable.
  • the motion compensation filter coefficient is once decoded by the decoding unit 101, re-encoded by the lossless encoding unit 401, stored in the memory 109, and decoded by the lossless decoding unit 402. .
  • the motion compensation filter coefficient portion encoded in the encoded stream by the encoding unit 510 may be stored in the memory 509 and decoded by the lossless decoding unit 702.
  • the encoding algorithm used in the lossless encoding unit 701 may be any encoding method as long as it is lossless and the output size is smaller than the input size.
  • the motion compensation filter coefficient ID is described as header information different from the motion vector, but is not limited thereto.
  • the motion vector may be used as the motion compensation filter coefficient ID, and not only the header information different from the motion vector but also the motion vector may be used as the motion compensation filter ID.
  • a moving picture decoding apparatus capable of reducing the memory bandwidth and the memory access latency of the filter coefficient used when performing the variable coefficient motion compensation inter-picture prediction, A moving image encoding device, a moving image decoding circuit, and a moving image decoding method can be realized.
  • the memory 109, the memory 509, the filter coefficient storage unit 103, and the filter coefficient storage unit 503 are typically configured by DDR, but are not necessarily configured by DDR. It may be composed of SRAM or may be composed of flip-flops. In other words, it may be configured by a memorable element. At this time, it is preferable that the memory 109 and the memory 509 are configured by low-speed storage elements, and the filter coefficient storage unit 103 and the filter coefficient storage unit 503 are configured by high-speed storage elements.
  • the storage medium may be any of a magnetic disk, an optical disk, a magneto-optical disk, an IC card, a semiconductor memory, etc., as long as it can record a program.
  • FIG. 26 is a diagram showing an overall configuration of a content supply system ex100 that realizes a content distribution service.
  • the communication service providing area is divided into a desired size, and base stations ex107 to ex110, which are fixed radio stations, are installed in each cell.
  • a computer ex111 In the content supply system ex100, a computer ex111, a PDA (Personal Digital Assistant) ex112, a camera ex113, a mobile phone ex114, a game machine ex115, etc. are connected to the Internet ex101 via the Internet service provider ex102, the telephone network ex104, and the base stations ex107 to ex110. Each device is connected.
  • a PDA Personal Digital Assistant
  • each device may be directly connected to the telephone network ex104 without going through the base stations ex107 to ex110 which are fixed wireless stations.
  • the devices may be directly connected to each other via short-range wireless or the like.
  • the camera ex113 is a device capable of moving image shooting such as a digital video camera.
  • the camera ex116 is a device such as a digital camera that can shoot still images and movies.
  • the mobile phone ex114 is a GSM (Global System for Mobile Communications) method, a CDMA (Code Division Multiple Access) method, a W-CDMA (Wideband-Code Divide Multiple Access E (LHS) method, or a HighH (Semi-H) system.
  • GSM Global System for Mobile Communications
  • CDMA Code Division Multiple Access
  • W-CDMA Wideband-Code Divide Multiple Access E
  • HighH Semi-H
  • a mobile phone or a PHS (Personal Handyphone System) using Packet Access may be used.
  • the camera ex113 and the like are connected to the streaming server ex103 through the base station ex109 and the telephone network ex104, thereby enabling live distribution and the like.
  • the encoding process described in each of the above embodiments is performed on content (for example, music live video, etc.) captured by the user using the camera ex113, and transmitted to the streaming server ex103.
  • content for example, music live video, etc.
  • the streaming server ex103 streams the content data transmitted to the requested client.
  • the client include a computer ex111, a PDA ex112, a camera ex113, a mobile phone ex114, a game machine ex115, and the like that can decode the encoded data.
  • Each device that has received the distributed data decodes and reproduces the received data.
  • the encoded processing of the captured data may be performed by the camera ex113, the streaming server ex103 that performs the data transmission processing, or may be performed in a shared manner.
  • the decryption processing of the distributed data may be performed by the client, the streaming server ex103, or may be performed in common with each other.
  • the camera ex113 may be transmitted to the streaming server ex103 via the computer ex111.
  • the encoding process in this case may be performed by any of the camera ex116, the computer ex111, and the streaming server ex103, or may be performed in a shared manner.
  • encoding / decoding processes are generally performed in the computer ex111 and the LSI ex500 included in each device.
  • the LSI ex500 may be configured as a single chip or a plurality of chips.
  • moving image encoding / decoding software may be incorporated in any recording medium (CD-ROM, flexible disk, hard disk, etc.) that can be read by the computer ex111 and the like, and the encoding / decoding processing may be performed using the software. Good.
  • moving image data acquired by the camera may be transmitted. The moving image data at this time is data encoded by the LSI ex500 included in the mobile phone ex114.
  • the streaming server ex103 may be a plurality of servers or a plurality of computers, and may process, record, and distribute data in a distributed manner.
  • the encoded data can be received and reproduced by the client.
  • the information transmitted by the user can be received, decrypted and reproduced in real time by the client, and even a user who does not have special rights or facilities can realize personal broadcasting.
  • FIG. 27 is a diagram illustrating an overall configuration of a digital broadcasting system ex200.
  • bit stream of video information is transmitted to the communication or broadcasting satellite ex202 via radio waves.
  • This bit stream is an encoded bit stream encoded by the moving image encoding method described in the above embodiments.
  • the broadcast satellite ex202 transmits radio waves for broadcasting.
  • the antenna ex204 is a home antenna capable of receiving satellite broadcasting, and receives broadcasting radio waves from the broadcasting satellite ex202.
  • a device such as a television (receiver) ex300 or a set top box (STB) ex217 decodes and reproduces a bit stream included in a broadcast radio wave received from the antenna ex204.
  • a television (receiver) ex300 or a set top box (STB) ex217 decodes and reproduces a bit stream included in a broadcast radio wave received from the antenna ex204.
  • the reader / recorder ex218 can read and decode the encoded bitstream recorded on the recording medium ex215 such as DVD or BD. It is also possible to encode and write a video signal on the recording medium ex215.
  • the reader / recorder ex218 implements the moving picture decoding apparatus or moving picture encoding apparatus described in the above embodiments. In this case, the video signal reproduced by the reader / recorder ex218 is displayed on the monitor ex219, and the video signal can be reproduced in another device or system by the recording medium ex215 on which the encoded bitstream is recorded.
  • the set-top box ex217 may be connected to the cable ex203 for cable television or the antenna ex204 for satellite / terrestrial broadcasting, and the video decoding device is mounted in the device itself and displayed on the television monitor ex219. Good. Further, the moving picture decoding apparatus may be incorporated in the television ex300 instead of the set top box ex217.
  • FIG. 28 is a block diagram illustrating a configuration example of the television ex300.
  • the television ex300 uses the moving picture decoding method and the moving picture encoding method described in the above embodiments.
  • the television ex300 obtains or outputs a bit stream of video information via the antenna ex204 or the cable ex203 that receives the broadcast, and the encoded data that demodulates the received encoded data or transmits it to the outside.
  • a modulation / demodulation unit ex302 that modulates the video data and audio data
  • a multiplexing / separation unit ex303 that separates the demodulated video data and audio data or multiplexes the encoded video data and audio data.
  • the television ex300 decodes each of the audio data and the video data, or encodes each information, and outputs a decoded audio signal, and a signal processing unit ex306 including a video signal processing unit ex305 and a video signal processing unit ex305. And an output unit ex309 having a display unit ex308 such as a display for displaying the decoded video signal.
  • the television ex300 includes an interface unit ex317 including an operation input unit ex312 that receives an input of a user operation.
  • the television ex300 includes a control unit ex310 that controls each unit in an integrated manner, and a power supply circuit unit ex311 that supplies power to each unit.
  • the interface unit ex317 includes a bridge ex313 connected to an external device such as a reader / recorder ex218, a slot unit ex314 for allowing a recording medium ex216 such as an SD card to be mounted, and a hard disk A driver ex315 for connecting to an external recording medium such as a modem and a modem ex316 for connecting to a telephone network.
  • the recording medium ex216 is capable of electrically recording information by using a nonvolatile / volatile semiconductor memory element to be stored.
  • Each part of the television ex300 is connected to each other via a synchronous bus.
  • the television ex300 receives a user operation from the remote controller ex220 or the like, and demultiplexes the video data and audio data demodulated by the modulation / demodulation unit ex302 by the multiplexing / separation unit ex303 based on the control of the control unit ex310 having a CPU or the like. . Furthermore, the television ex300 decodes the separated audio data by the audio signal processing unit ex304, and the separated video data is decoded by the video signal processing unit ex305 using the decoding method described in the above embodiments. The decoded audio signal and video signal are output to the outside from the output unit ex309. When outputting, these signals may be temporarily stored in the buffers ex318, ex319, etc. so that the audio signal and the video signal are reproduced in synchronization.
  • the television ex300 may read the encoded bitstream encoded from the recording media ex215 and ex216 such as a magnetic / optical disk and an SD card, not from a broadcast or the like.
  • the television ex300 encodes an audio signal and a video signal and transmits them to the outside or writes them to a recording medium or the like.
  • the television ex300 receives a user operation from the remote controller ex220 or the like, and encodes an audio signal with the audio signal processing unit ex304 based on the control of the control unit ex310, and converts the video signal with the video signal processing unit ex305. Encoding is performed using the encoding method described in (1).
  • the encoded audio signal and video signal are multiplexed by the multiplexing / demultiplexing unit ex303 and output to the outside. When multiplexing, these signals may be temporarily stored in the buffers ex320 and ex321 so that the audio signal and the video signal are synchronized.
  • a plurality of buffers ex318 to ex321 may be provided as shown in the figure, or one or more buffers may be shared. Further, in addition to the illustrated example, data may be stored in the buffer as a buffer material that prevents system overflow and underflow, for example, between the modulation / demodulation unit ex302 and the multiplexing / demultiplexing unit ex303.
  • the television ex300 has a configuration for receiving AV input of a microphone and a camera, and performs encoding processing on the data acquired from them. Also good.
  • the television ex300 has been described as a configuration that can perform the above-described encoding processing, multiplexing, and external output. However, these processing cannot be performed, and only the reception, decoding processing, and external output can be performed. It may be.
  • the decoding process or the encoding process may be performed by either the television ex300 or the reader / recorder ex218,
  • the reader / recorder ex218 may be shared with each other.
  • FIG. 29 shows a configuration of the information reproducing / recording unit ex400 when data is read from or written to the optical disk.
  • FIG. 29 is a block diagram illustrating a configuration example of an information reproducing / recording unit that reads and writes information from and on a recording medium that is an optical disk.
  • the information reproducing / recording unit ex400 shown in FIG. 29 includes elements ex401 to ex407 described below.
  • the optical head ex401 writes information by irradiating a laser spot onto the recording surface of the recording medium ex215 that is an optical disc, and reads information by detecting reflected light from the recording surface of the recording medium ex215.
  • the modulation recording unit ex402 electrically drives a semiconductor laser built in the optical head ex401 and modulates the laser beam according to the recording data.
  • the reproduction demodulator ex403 amplifies the reproduction signal obtained by electrically detecting the reflected light from the recording surface by the photodetector built in the optical head ex401, separates and demodulates the signal component recorded on the recording medium ex215, and is necessary. To play back information.
  • the buffer ex404 temporarily holds information for recording on the recording medium ex215 and information reproduced from the recording medium ex215.
  • the disk motor ex405 rotates the recording medium ex215.
  • the servo control unit ex406 moves the optical head ex401 to a predetermined information track while controlling the rotational drive of the disk motor ex405, and performs a laser spot tracking process.
  • the system control unit ex407 controls the entire information reproduction / recording unit ex400. In the reading and writing processes described above, the system control unit ex407 uses various kinds of information held in the buffer ex404, and generates and adds new information as necessary, as well as the modulation recording unit ex402, the reproduction demodulation unit This is realized by recording / reproducing information through the optical head ex401 while operating the ex403 and the servo control unit ex406 in a coordinated manner.
  • the system control unit ex407 is composed of, for example, a microprocessor, and executes these processes by executing a read / write program.
  • the optical head ex401 is described as irradiating a laser spot.
  • the optical head ex401 may be configured to perform recording with higher density using near-field light.
  • FIG. 30 shows an example of the structure of a recording medium that is an optical disk.
  • FIG. 30 shows a schematic diagram of a recording medium ex215 that is an optical disk.
  • Guide grooves are formed in a spiral shape on the recording surface of the recording medium ex215, and address information indicating the absolute position on the disc is recorded in advance on the information track ex230 by changing the shape of the groove.
  • This address information includes information for specifying the position of the recording block ex231 which is a unit for recording data.
  • a recording block can be specified by reproducing the information track ex230 in a recording or reproducing apparatus and reading this address information.
  • the recording medium ex215 includes a data recording area ex233, an inner peripheral area ex232, and an outer peripheral area ex234.
  • the area used for recording the user data is the data recording area ex233, and the inner circumference area ex232 and the outer circumference area ex234 arranged on the inner circumference or outer circumference of the data recording area ex233 are used for specific purposes other than user data recording. Used.
  • the information reproducing / recording unit ex400 reads / writes encoded audio data, video data, or encoded data obtained by multiplexing these data with respect to the data recording area ex233 of the recording medium ex215.
  • an optical disk such as a single-layer DVD or BD has been described as an example.
  • the present invention is not limited to this, and an optical disk having a multilayer structure and capable of recording other than the surface may be used. It also has a structure that performs multidimensional recording / reproduction, such as recording information using light of various different wavelengths at the same location on the disc, and recording different layers of information from various angles. It may be an optical disk.
  • the car ex210 having the antenna ex205 can receive data from the broadcasting satellite ex202 and the like, and the moving image can be reproduced on a display device such as the car navigation ex211 that the car ex210 has.
  • the configuration of the car navigation ex211 may be, for example, a configuration in which a GPS receiving unit is added in the configuration illustrated in FIG. 28, and the same may be considered for the computer ex111, the mobile phone ex114, and the like.
  • the transmission / reception terminal having both an encoder and a decoder there are three types of terminals such as the mobile phone ex114, such as a transmitting terminal having only an encoder and a receiving terminal having only a decoder. The implementation form of can be considered.
  • the moving picture encoding method or the moving picture decoding method described in each of the above embodiments can be used in any of the above-described devices / systems. Effects can be obtained.
  • FIG. 31 shows a configuration of an LSI ex500 that is made into one chip.
  • FIG. 31 is a block diagram illustrating a configuration example of an integrated circuit that realizes the moving picture coding method and the moving picture decoding method according to each embodiment.
  • the LSI ex500 includes elements ex501 to ex509 described below, and each element is connected via a bus ex510.
  • the power supply circuit unit ex505 starts up to an operable state by supplying power to each unit when the power supply is in an on state.
  • the LSI ex500 when performing an encoding process, inputs an AV signal from the microphone ex117, the camera ex113, and the like by the AV I / Oex 509 based on the control of the control unit ex501 having the CPU ex502, the memory controller ex503, the stream controller ex504, and the like. To do.
  • the input AV signal is temporarily stored in an external memory ex511 such as SDRAM.
  • the accumulated data is divided into a plurality of times as appropriate according to the processing amount and the processing speed and sent to the signal processing unit ex507, where the signal processing unit ex507 encodes an audio signal and / or video. Signal encoding is performed.
  • the encoding process of the video signal is the encoding process described in the above embodiments.
  • the signal processing unit ex507 further performs processing such as multiplexing the encoded audio data and the encoded video data according to circumstances, and outputs the result from the stream I / Oex 506 to the outside.
  • This output bit stream is transmitted to the base station ex107 or written to the recording medium ex215. It should be noted that data should be temporarily stored in the buffer ex508 so that the data is synchronized when multiplexed.
  • FIG. 32 is a block diagram simply showing the encoding process here. That is, FIG. 32 is a block diagram illustrating the moving image encoding processing of each embodiment realized by an integrated circuit.
  • a prediction error signal which is a difference between an input signal and a prediction signal is converted by a conversion unit ex601 and quantized by a quantization unit ex602.
  • the quantized coefficient is entropy encoded by the entropy encoding unit ex606, and an encoded signal is output.
  • the output may be temporarily stored in the buffer ex508 or the memory ex511 for multiplexing with the encoded audio data.
  • the inverse quantization unit ex604, the inverse transform unit ex605, and the prediction unit ex608 operate as a delay unit that enables comparison between a target signal and a prediction signal generated from a previous signal.
  • adjustment may be made so as not to cause an overflow or underflow of processing, for example, by storing a quantization coefficient as a buffer material in the buffer ex508 or the memory ex511.
  • a quantization coefficient as a buffer material in the buffer ex508 or the memory ex511.
  • the data is divided into multiple pieces and processed in parallel, and the processing is adjusted while appropriately storing the data being processed in the recording unit such as an internal or external memory. Good.
  • the above processing is performed based on the control of the control unit ex501.
  • the LSI ex500 when performing decoding processing, temporarily stores the encoded data obtained by reading from the recording medium ex215 via the base station ex107 by the stream I / Oex 506 based on the control of the control unit ex501. It accumulates in ex511 etc. Based on the control of the control unit ex501, the accumulated data is divided into a plurality of times as appropriate according to the processing amount and processing speed and sent to the signal processing unit ex507, where the signal processing unit ex507 decodes audio data and / or video data. Is decrypted.
  • the decoding process of the video signal is the decoding process described in the above embodiments.
  • each signal may be temporarily stored in the buffer ex508 or the like so that the decoded audio signal and the decoded video signal can be reproduced in synchronization.
  • the decoded output signal is output from each output unit such as the mobile phone ex114, the game machine ex115, and the television ex300 through the memory ex511 and the like as appropriate.
  • FIG. 33 is a block diagram simply showing the decoding process here. That is, FIG. 33 is a block diagram showing the moving image decoding process of each embodiment realized by an integrated circuit.
  • the input encoded signal is first entropy-decoded by an entropy decoding unit ex701.
  • the quantized coefficient obtained by entropy decoding is inversely quantized by the inverse quantization unit ex703 and inversely transformed by the inverse transform unit ex704.
  • the inverse transformation here means the transformation in the decoding process, and is not necessarily limited to the inverse of the transformation in the encoding process.
  • the decoded conversion input is output to the outside as a decoded signal by adding the prediction signal.
  • the memory ex511 operates as a delay unit that accumulates the decoded signal and enables reference in decoding of the subsequent encoded signal.
  • the prediction unit ex705 generates a prediction signal based on the decoded signal accumulated in the memory ex511.
  • the configuration is temporarily stored in the buffer ex508 or the external memory ex511 It may be.
  • the quantization coefficients are stored in the buffer ex508 and the memory ex511, and the processing may be performed in parallel while being divided into predetermined processing units so as not to cause an overflow or underflow of the processing. The above processing is performed based on the control of the control unit ex501.
  • the memory ex511 has been described as an external configuration of the LSI ex500.
  • a configuration included in the LSI ex500 may be used.
  • the number of buffers ex508 is not limited to one, and a plurality of buffers may be provided.
  • the LSI ex500 may be made into one chip or a plurality of chips.
  • LSI LSI
  • IC system LSI
  • super LSI ultra LSI depending on the degree of integration
  • the method of circuit integration is not limited to LSI, and implementation with a dedicated circuit or a general-purpose processor is also possible.
  • An FPGA Field Programmable Gate Array
  • a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
  • the moving image encoding device, the moving image decoding device, the moving image encoding method, or the moving image decoding method described in the above embodiments can be applied as an application.
  • each functional block constituting the decoding device 100 shown in FIG. 1 is typically realized as an LSI that is an integrated circuit. These may be further individually chipped like a decoding circuit and an external memory, or may be realized as a single chip, that is, a system integrated in a single LSI so as to include a part or all of them. .
  • each functional block constituting the decoding device 200 shown in FIG. 6 in the second embodiment is typically realized as an LSI which is an integrated circuit.
  • LSI which is an integrated circuit.
  • These may be further individually chipped like a decoding circuit and an external memory, or may be realized as a single chip, that is, a system integrated in a single LSI so as to include a part or all of them. .
  • each functional block constituting the decoding device 300 shown in FIG. 9 in the third embodiment is typically realized as an LSI which is an integrated circuit. These may be further individually chipped like a decoding circuit and an external memory, or may be realized as a single chip, that is, a system integrated in a single LSI so as to include a part or all of them. .
  • each functional block constituting the decoding device 400 shown in FIG. 16 in the fourth embodiment is typically realized as an LSI which is an integrated circuit. These may be further individually chipped like a decoding circuit and an external memory, or may be realized as a single chip, that is, a system integrated in a single LSI so as to include a part or all of them. .
  • each functional block constituting the encoding apparatus 500 shown in FIG. 18 in the fifth embodiment is typically realized as an LSI which is an integrated circuit. These may be further individually formed into chips such as an encoding circuit and an external memory, or may be realized as a system integrated into a single LSI so as to include a part or all of them. good.
  • each functional block constituting the encoding apparatus 600 shown in FIG. 22 in the sixth embodiment is typically realized as an LSI which is an integrated circuit. These may be further individually formed into chips such as an encoding circuit and an external memory, or may be realized as a system integrated into a single LSI so as to include a part or all of them. good.
  • each functional block constituting the encoding apparatus 700 shown in FIG. 24 in the seventh embodiment is typically realized as an LSI which is an integrated circuit. These may be further individually formed into chips such as an encoding circuit and an external memory, or may be realized as a system integrated into a single LSI so as to include a part or all of them. good.
  • the reference image and the motion compensation filter coefficient are stored in the memory 109 or the memory 509.
  • the reference image and the motion compensation filter coefficient are not necessarily stored in the same memory. .
  • the memory 109 and the memory 509 are typically configured by DDR, but are not necessarily configured by DDR, and are configured by SRAM. Alternatively, it may be composed of a flip-flop. In other words, it may be configured by a memorable element.
  • the video decoding device, the video encoding device, the video decoding circuit, and the video decoding method of the present invention have been described based on the embodiment.
  • the present invention is limited to this embodiment. is not. Unless it deviates from the meaning of this invention, the form which carried out the various deformation
  • the present invention can be used for a moving image decoding device, a moving image encoding device, a moving image decoding circuit, and a moving image decoding method, and in particular, a mobile phone, a DVD device, a BD device, a personal computer, a video phone, a set top box, a digital television. It is useful in equipment that decodes or displays pictures constituting moving images, such as automobiles and security systems.

Landscapes

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

Abstract

可変係数動き補償画面間予測を行う際に使用する動き補償フィルタ係数のメモリ帯域及びメモリアクセスレイテンシの低減を可能とする動画像復号装置は、符号化ストリームから、複数の動き補償フィルタ係数を復号する復号部(101)と、符号化ストリームに含まれる複数の動き補償フィルタ係数を保持するためのメモリ(109)と、動き補償を行うときに必要な動き補償フィルタ係数を保持するためのフィルタ係数記憶部(103)と、フィルタ係数記憶部に保持された動き補償フィルタ係数を用いて動き補償を行う動き補償部(107)と、復号部に復号された複数の動き補償フィルタ係数をメモリに書き出し、フィルタ係数記憶部が前記一部の動き補償フィルタ係数を保持していない場合のみ、メモリからフィルタ係数記憶部に、前記一部の動き補償フィルタ係数を転送するフィルタ係数転送制御部(102)とを備える。

Description

動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法
 本発明は、動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法に関し、特に、動画像符号化ストリームを復号するために可変係数動き補償画面間予測で使用するフィルタ係数に関する動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法に関するものである。
 近年、広く利用されている動画像圧縮技術の標準規格がある。例えば、ITU-T(国際電気通信連合 電気通信標準化部門)のH.261及びH.263、ISO/IEC(国際標準化機構 国際電気標準会議)のMPEG(Moving Picture Experts Group)-1、MPEG2及びMPEG4など、並びに、ITU-TとMPEGの合同であるJVT(JointVideoTeam)のH.264(MPEG4-AVC)などがある。更に、次世代の動画像圧縮技術がITU-TやISO/IECなどで検討されている。
 一般に、動画像圧縮技術の重要な要素として、動画像を構成する連続した複数の画面の持つ時間方向の冗長性を削減することで情報量の圧縮を行う動き補償画面間予測がある。ここで、動き補償画面間予測とは、符号化対象画面内のマクロブロック、または、サブマクロブロック(以下、「マクロブロック等」ともいう)が、符号化対象画面の前方または後方に位置する参照画面内のどの方向にどの程度動いたかを検出して、予測画像の作成を行い、得られた予測画像と符号化対象画面との差分値に対して符号化を行う手法である。なお、符号化対象画面内のマクロブロック等が、符号化対象画面の前方または後方に位置する参照画面内のどの方向にどの程度動いたかを示す情報を動きベクトルという。また、その際、参照される画面を参照画面と呼ぶ。
 動き補償画面間予測を用いて符号化された動画像符号化ストリームの復号に際しては、復号した復号画面をフレームメモリに保持し、後の復号画面の復号において参照画面として利用する。
 また、動き補償画面間予測で符号化されたマクロブロックの予測画像生成に際しては、以下のとおりである。まず、動画像符号化ストリーム内の動きベクトルを復号し、動きベクトルが指し示す参照画素領域を参照画面が保持されているフレームメモリから取得し、必要に応じて参照画素領域に対しフィルタリング処理を行うことで予測画像を生成する。そして、整数画素以下の予測画像を生成するために、整数画素に対しフィルタリング処理を行う。
 例えば、H.264では規格で定義された固定のフィルタ係数を用いた6タップのFIRフィルタ(フィルタ係数:1、-5、20、20、-5、1)を用いて1/2画素精度の予測画像を生成し、次に、規格で定義された固定のフィルタ係数を用いた2タップの平均値フィルタ(フィルタ係数:1/2、1/2)により1/4画素精度の予測画像を生成する。このとき、整数画素以下の予測画像を生成するために利用するフィルタ係数は、画像の特性によらず常に同じ値(固定値)が使用される。
 それに対して、より良い符号化効率を実現するために、整数画素以下の予測画像を生成する際のフィルタリングに使用するフィルタ係数を画像の特性などに応じて適応的に変化させる動き補償技術(以下、「可変係数動き補償」ともいう)が提案されている(例えば、非特許文献1、2及び3)。この可変係数動き補償は、ITU-TやISO/IECなどで次世代の動画像圧縮技術、具体的には次世代の動き補償画面間予測技術、として提案されている。
 例えば、非特許文献1には、整数画素以下の予測画像を生成するために利用するフィルタ係数を、従来の固定値ではなく、画像の特性などに応じて適応的に変化させる技術について提案されている。また、例えば、非特許文献2には、動きベクトルの小数部の値毎に、符号化ストリームで定義された異なるフィルタ係数を使用して予測画像を生成する際にフィルタリング処理を実施する技術が提案されている。また、例えば、非特許文献3には、同一ピクチャ内であっても、場所によって最適なフィルタ係数が異なることに注目して、マクロブロック単位で動き補償画面間予測のフィルタリングに利用するフィルタ係数を切り替える技術が提案されている。
特開2005-354673号公報
Thomas Wedi著「ADAPTIVE INTERPOLATION FILTER FOR MOTION COMPENSATED HYBRID VIDEO CODING」 Proc. Picture Coding Symposium(PCS2001)、 Seoul、 Korea、 April 2001 Y.Vatis et al著「Two dimensional no-separatable Apdaptive Wiener Interpolation Filter for H.264/AVC」 ITU - Telecommunications Standardization Sector  STUDY GROUP 16 Question 6 Video Coding Experts Group(VCEG) document VCEG-Z17、 16 Apr 2005 Kai Zhang et al著「Single-Pass Encoding Using Multiple Adaptive Interpolation Filters」 ITU - Telecommunications Standardization Sector  STUDY GROUP 16 Question 6 Video Coding Experts Group(VCEG) document VCEG-AK26、 15-18 Apr 2009
 しかしながら、次世代の動画像圧縮技術に提案されている動き補償画面間予測では、非常に多くのフィルタリング係数候補の中から、フィルタリング係数を頻繁に選択し、予測画像を生成するフィルタリング処理に利用することになる。そのため、フィルタリング係数を保持するメモリのメモリ容量やメモリ帯域、メモリアクセスレイテンシは一般的に極めて大きくなると予想される。
 ところで、動き補償画面間予測を用いて符号化された動画像符号化ストリームの復号すなわち動き補償を伴う復号において、復号画面をフレームメモリへ格納すること、及び、フレームメモリから参照画素領域を読み出すことが必要である。そのため、次世代の動画像圧縮技術に提案されている動き補償画面間予測を用いた場合、復号画面の格納や参照画素領域の読み出しにより、及び、その表示などのアクセスにより、フレームメモリのメモリ帯域及びメモリアクセスレイテンシも一般的に極めて大きくなると予想される。
 それに対して、フレームメモリのメモリ容量、メモリ帯域またはメモリアクセスレイテンシを低減する方法として、これまでに様々な技術が提案されている(例えば特許文献1)。例えば、特許文献1には、動き補償画面間予測を行う場合に、フレームメモリから参照画素領域を複数分局所メモリへまとめて転送した方が効率的なときには、参照画素領域を局所メモリへ一括転送する。それによって複数のブロック間で重複している参照領域をブロック処理ごとに重複して転送する必要がなくなるため、フレームメモリへのアクセス数を減少させることができる。このようにしてフレームメモリのメモリ帯域、メモリアクセスレイテンシ削減及び処理サイクルの削減が実現できる。
 しかしながら、特許文献1では、参照画像を格納するフレームメモリのメモリ帯域及びメモリアクセスレイテンシ削減を実現する構成が開示されているに過ぎない。言い換えると、次世代の動画像圧縮技術に提案されている可変係数動き補償画面間予測で使用するフィルタ係数のメモリアクセスについての記載(開示)はない。そのため、特許文献1に開示される構成では、可変係数動き補償画面間予測を用いた場合のフィルタ係数のメモリ帯域及びメモリアクセスレイテンシの低減はできない。
 そこで、本発明は、上述の事情を鑑みてなされたもので、可変係数動き補償画面間予測を行う際に使用する動き補償フィルタ係数のメモリ帯域の低減及びメモリアクセスレイテンシの低減を可能とする動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法を提供することを目的とする。
 上記従来の課題を解決するために、本発明の動画像復号装置は、動画像が動き補償を用いて符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う動画像復号装置であって、前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を復号する復号部と、前記復号部により復号された前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数を保持するためのメモリと、前記メモリに保持されている複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な動き補償フィルタ係数を保持するためのフィルタ係数記憶部と、前記フィルタ係数記憶部に保持された動き補償フィルタ係数を用いて動き補償を行う動き補償部と、前記復号部により復号された複数の動き補償フィルタ係数を前記メモリに書き出し、前記フィルタ係数記憶部が前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に、前記一部の動き補償フィルタ係数を転送する転送制御部とを備える。
 本構成によって、可変係数動き補償画面間予測を行う際に使用する動き補償フィルタ係数のメモリ帯域の低減及びメモリアクセスレイテンシの低減を可能とする動画像復号装置を実現することができる。
 また、上記従来の課題を解決するために、本発明の動画像符号化装置は、符号化対象画像と参照画像とを用いて、動き補償を伴う符号化である動き補償符号化を行う動画像符号化装置であって、前記動き補償符号化に利用される複数の動き補償フィルタ係数を生成する生成部と、前記生成部より生成された複数の動き補償フィルタ係数を保持するためのメモリと、前記メモリに保持されている複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な動き補償フィルタ係数を保持するためのフィルタ係数記憶部と、前記フィルタ係数記憶部に保持されている前記一部の動き補償フィルタ係数を用いて前記符号化対象画像と前記参照画像とから前記動き補償を行って予測画像を生成する動き検出部と、前記生成部により生成された複数の動き補償フィルタ係数を前記メモリに書き出し、前記フィルタ係数記憶部が前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する転送制御部とを備える。
 本構成によって、可変係数動き補償画面間予測を行う際に使用する動き補償フィルタ係数のメモリ帯域の低減及びメモリアクセスレイテンシの低減を可能とする動画像符号化装置を実現することができる。
 なお、本発明は、装置として実現するだけでなく、このような装置が備える処理手段を備える集積回路として実現したり、その装置を構成する処理手段をステップとする方法として実現したりすることもできる。
 本発明によれば、可変係数動き補償画面間予測を行う際に使用するフィルタ係数のメモリ帯域の低減及びメモリアクセスレイテンシの低減を可能とする動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法を実現することができる。
図1は、本発明の実施の形態1における復号装置の構成を示すブロック図である。 図2Aは、動画像圧縮技術の標準規格に準じて符号化された符号化ストリームの概要を示す図である。 図2Bは、動画像圧縮技術の標準規格に準じて符号化された符号化ストリームの概要を示す図である。 図2Cは、本発明の符号化ストリームの一例を示す図である。 図3は、フィルタ係数記憶状態管理テーブルが保持する情報の一例である。 図4は、本発明の実施の形態1における復号装置の復号処理動作を示すフローチャートである。 図5は、本発明の実施の形態1における復号装置の最小構成を示すブロック図である。 図6は、本発明の実施の形態2における復号装置の構成を示すブロック図である。 図7Aは、本発明のフィルタ係数参照履歴管理テーブルが保持する情報の一例である。 図7Bは、本発明のフィルタ係数参照履歴管理テーブルが保持する情報の一例である。 図8は、本発明の実施の形態2における復号装置の復号処理動作を示すフローチャートである。 図9は、本発明の実施の形態3における復号装置の構成を示すブロック図である。 図10は、フィルタ係数統計情報管理テーブルが保持する情報の一例である。 図11は、フィルタ係数統計情報管理テーブルが保持する情報の一例である。 図12Aは、フィルタ係数統計情報管理テーブルに基づいてフィルタ係数記憶部の動き補償フィルタ係数が更新される様子を示す図である。 図12Bは、フィルタ係数統計情報管理テーブルに基づいてフィルタ係数記憶部の動き補償フィルタ係数が更新される様子を示す図である。 図13Aは、フィルタ係数統計情報管理テーブルに基づいてフィルタ係数記憶部の動き補償フィルタ係数が更新される様子を示す図である。 図13Bは、フィルタ係数統計情報管理テーブルに基づいてフィルタ係数記憶部の動き補償フィルタ係数が更新される様子を示す図である。 図14は、本発明の実施の形態3における復号装置の復号処理動作を示すフローチャートである。 図15は、本発明の実施の形態3における復号装置の最小構成を示すブロック図である。 図16は、本発明の実施の形態4における復号装置の構成を示すブロック図である。 図17は、本発明の実施の形態4における復号装置の復号処理動作を示すフローチャートである。 図18は、本発明の実施の形態5における符号化装置の構成を示すブロック図である。 図19は、フィルタ係数記憶状態管理テーブルが保持する情報の一例である。 図20は、動き検出部が、動き補償フィルタ係数IDを決定する方法を説明するための図である。 図21は、本発明の実施の形態5における符号化装置の符号化処理動作を示すフローチャートである。 図22は、本発明の実施の形態6における符号化装置の構成を示すブロック図である。 図23は、本発明の実施の形態6における符号化装置の符号化処理動作を示すフローチャートである。 図24は、本発明の実施の形態7における符号化装置の構成を示すブロック図である。 図25は、本発明の実施の形態7における符号化装置の構成を示すフローチャートである。 図26は、コンテンツ配信サービスを実現するコンテンツ供給システムの全体構成図である。 図27は、デジタル放送用システムの全体構成図である。 図28は、テレビの構成例を示すブロック図である。 図29は、光ディスクである記録メディアに情報の読み書きを行う情報再生/記録部の構成例を示すブロック図である。 図30は、光ディスクである記録メディアの構造例を示す図である。 図31は、各実施の形態の動画像符号化方法及び動画像復号方法を実現する集積回路の構成例を示すブロック図である。 図32は、集積回路で実現される各実施の形態の動画像符号化処理を示すブロック図である。 図33は、集積回路で実現される各実施の形態の動画像復号処理を示すブロック図である。
 以下、本発明の実施の形態について、図面を参照しながら説明する。
 (実施の形態1)
 図1は、本発明の実施の形態1における復号装置の構成図である。図2A及び図2Bは、動画像圧縮技術の標準規格に準じて符号化された符号化ストリームの概要を示す図である。図2Cは、本発明の符号化ストリームの一例を示す図である。図3は、フィルタ係数記憶状態管理テーブルが保持する情報の一例である。
 図1に示す復号装置100は、動画像が動き補償を用いて符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う動画像復号装置であって、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、フィルタ係数記憶状態管理テーブル104、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108、メモリ109を備える。
 復号部101は、符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を少なくとも復号する。具体的には、復号部101は、動画像圧縮技術の標準規格に準じて符号化されたストリームの復号を行い、少なくともヘッダ情報と予測誤差信号とを出力する機能を有する。
 ここで、動画像圧縮技術の標準規格に準じて符号化されたストリームについて、図2A及び図2Bを用いて説明する。図2Aに示すように、符号化ストリームにおいて、一連の画像(動画像)は階層的な構成を有している。例えば、複数のピクチャを1まとまりにしたシーケンス(若しくは、GOP(Group Of Pictures)という)がある。シーケンスを構成する各ピクチャはスライスに分割され、さらに16x16画素からなるマクロブロックに分割された構成を有する。なお、ピクチャをスライスに分割しない場合もある。そして、復号装置100は、スライスまたはマクロブロックを単位として復号動作を行う。
 また、符号化ストリームでは、図2Bに示すように、これらを階層的に符号化されており、シーケンスを制御するシーケンスヘッダ、ピクチャを制御するピクチャヘッダ、スライスを制御するスライスヘッダ、マクロブロックデータなどから構成されている。マクロブロックデータは、さらに、マクロブロック種別、面内予測(イントラ予測)モード、動きベクトル情報、量子化パラメータなどの符号化情報及び各画素データに対応する係数情報に分けられる。なお、H.264規格では、シーケンスヘッダをSPS(Sequence Parameter Set)、ピクチャヘッダをPPS(Picture Parameter Set)と呼んでいる。
 例えば、図2Cに示すような構造でもよい。すなわち、GOP若しくはシーケンス中のそれぞれのピクチャのヘッダ(ピクチャヘッダ)に、そのピクチャ中で動き補償フィルタ係数と復号するスライスまたはマクロブロックを動き補償する際にどの動き補償フィルタ係数を用いるかを特定する(示す)情報(以下、「動き補償フィルタ係数ID」ともいう)とが全て含まれているとする。そして、ピクチャ中のスライスへッダでは、動き補償フィルタ係数IDのみが含まれているとする。なお、動き補償フィルタ係数IDは、本発明における特定情報に相当する。
 なお、動き補償フィルタ係数と動き補償フィルタ係数IDとはピクチャ単位ではなく、GOP若しくはシーケンス単位でもよい。また、スライス単位で動き補償フィルタ係数と動き補償フィルタ係数IDとを含むとし、マクロブロック単位でそのマクロブロックに用いらる動き補償フィルタ係数IDを含むとしてもよい。つまり、上述したどの組合せを単位としてもよいし、別の組合せを単位としてもよい。
 フィルタ係数転送制御部102は、本発明の転送制御部に相当し、復号部101により復号された複数の動き補償フィルタ係数をメモリ109に書き出し、フィルタ係数記憶部103が動き補償処理に必要な動き補償フィルタ係数を保持していない場合のみ、メモリ109からフィルタ係数記憶部103に、必要な動き補償フィルタ係数を転送する。具体的には、フィルタ係数転送制御部102は、符号化ストリーム中に定義され、動き補償処理に用いるフィルタ係数すなわち動き補償フィルタ係数をメモリ109に書き込む機能を有する。また、フィルタ係数転送制御部102は、復号部101が復号する際の動き補償にどの動き補償フィルタ係数を用いるかを示す情報すなわち、動き補償フィルタ係数IDを元に、フィルタ係数記憶状態管理テーブル104の情報を参照する機能を有する。そして、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104の情報により、動き補償フィルタ係数IDが示す動き補償フィルタ係数がフィルタ係数記憶部103に保持されているかを確認する。
 例えば、フィルタ係数転送制御部102は、動き補償フィルタ係数IDの示す動き補償フィルタ係数がフィルタ係数記憶部103に保持されていないことを確認した場合、メモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出し、フィルタ係数記憶部103に書き込む(転送する)。一方、フィルタ係数転送制御部102は、動き補償フィルタ係数IDが示す動き補償フィルタ係数がフィルタ係数記憶部103に保持(記憶)されていることを確認した場合は、動き補償フィルタ係数をメモリ109から読み出さない(転送しない)。
 なお、フィルタ係数転送制御部102は、動き補償フィルタ係数をメモリ109に書き込む命令のみを復号部101に行い、復号部101が動き補償フィルタ係数をメモリ109に書き込むとしてもよい。同様に、フィルタ係数転送制御部102は、メモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す命令のみをフィルタ係数記憶部103に行い、フィルタ係数記憶部103がメモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出し、保持するとしてもよい。
 フィルタ係数記憶部103は、メモリ109に保持されている複数の動き補償フィルタ係数のうち、動き補償を行うときに必要な動き補償フィルタ係数を保持するためのものである。具体的には、フィルタ係数記憶部103は、メモリ109から転送された動き補償フィルタ係数を少なくとも2種類以上保持する機能と、動き補償フィルタ係数IDが示す動き補償フィルタ係数を動き補償部107に設定する機能とを有する。
 フィルタ係数記憶状態管理テーブル104は、本発明の記憶状態管理部に相当し、動き補償フィルタ係数IDによって特定された動き補償フィルタ係数をフィルタ係数記憶部103が保持しているかどうかを示す情報を管理する。具体的には、フィルタ係数記憶状態管理テーブル104は、動き補償フィルタ係数IDを入力とし、フィルタ係数記憶部103へ動き補償フィルタ係数IDが示す動き補償フィルタ係数を保持しているか否かの情報を出力する機能を有する。フィルタ係数記憶状態管理テーブル104は、例えば、図3に示すような情報を保持している。すなわち、フィルタ係数記憶状態管理テーブル104は、復号部101が復号する符号化ストリームの例えばシーケンスヘッダやピクチャヘッダなどのヘッダ情報に含まれる動き補償フィルタ係数IDすべてをフィルタ係数IDとして保持している。そして、動き補償フィルタ係数IDそれぞれにより特定される動き補償フィルタ係数がフィルタ係数記憶部103に記憶されているか否かを記憶状態として保持している。
 参照画像転送制御部105は、復号部101が出力した動きベクトル及び参照画面情報などを含むヘッダ情報に基づき、動き補償に必要な参照画素をメモリ109から読み出し、参照画像記憶部106に書き込む機能を有する。
 なお、参照画像転送制御部105は、復号部101が出力した動きベクトル及び参照画面情報などを含むヘッダ情報に基づき、動き補償に必要な参照画素をメモリ109から読み出す命令のみを参照画像記憶部106に行い、参照画像記憶部106が動き補償に必要な参照画素をメモリ109から読み出し保持するとしてもよい。
 参照画像記憶部106は、メモリ109から転送された参照画素を保持する機能を有する。
 動き補償部107は、少なくともフィルタ係数記憶部103に保持された動き補償フィルタ係数を用いて動き補償を行う。具体的には、動き補償部107は、復号部101が出力した動きベクトル及び動き補償フィルタ係数IDなどを含むヘッダ情報と、参照画像記憶部106が保持している動きベクトルが指し示す動き補償に必要な参照画素と、フィルタ係数記憶部103が保持している動き補償フィルタ係数IDが示す動き補償フィルタ係数とを取得する機能を有する。そして、動き補償部107は、それらを用いて動き補償処理を行って予測画像生成し、加算器108へ出力する機能を有する。
 加算器108は、復号部101が出力した予測誤差信号、及び、動き補償部107が出力した予測画像を加算し、復号画像として出力する機能、並びに、その復号画像をメモリ109へ転送する機能を有する。
 メモリ109は、復号部101により復号された符号化ストリームに含まれる複数の動き補償フィルタ係数を少なくとも保持するためのものである。具体的には、メモリ109は、動き補償フィルタ係数と、動き補償部107が参照する参照画面を保持する機能を有する。なお、メモリ109は、動き補償フィルタ係数を保持するだけとしてもよい。その場合、動き補償部107が参照する参照画面を保持するフレームメモリを復号装置100が別途備えればよい。
 以上のようにして、復号装置100は構成される。
 次に、この復号装置100の復号処理動作について説明する。図4は、本発明の実施の形態1における復号装置の復号処理動作を示すフローチャートである。
 図4に示すように、復号装置100において、まず、符号化ストリームを受けた復号部101は、符号化ストリームを構成するヘッダ情報を復号し(S101)、ヘッダ情報として少なくとも動き補償フィルタ係数を出力する。そして、フィルタ係数転送制御部102が、S101において復号部101により復号された動き補償フィルタ係数すべてをメモリ109に書き込む(S102)。
 次に、復号部101は、復号対象の画像のピクチャタイプがP若しくはBまたはIであるかを判定する(S103)。復号部101は、復号対象の画像のピクチャタイプが、PまたはBである場合には(S103のP、Bの場合)、動き補償処理が必要と判断して符号化ストリームを構成するヘッダ情報と予測残差信号とを復号し(S104)、ヘッダ情報として少なくとも動き補償フィルタ係数情報ID、動きベクトル情報、予測残差信号を出力する。一方、復号部101は、復号対象の画像のピクチャタイプが、Iである場合には(S103のIの場合)、動き補償処理が不要と判断してS114へ進み、画面内復号を行い、S113へと進む。
 次に、フィルタ係数転送制御部102は、S104にて復号された動き補償フィルタ係数IDが示す動き補償フィルタ係数をフィルタ係数記憶部103が保持しているかどうかを、フィルタ係数記憶状態管理テーブル104を参照して調べる(S105)。
 フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合(S105のNの場合)、メモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部103で例えば最も古くメモリ109から読み出された動き補償フィルタ係数が記憶されている領域に書き込む(S106)。続いて、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104を更新する(S107)。具体的には、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104の読み出した動き補償フィルタ係数の記憶状態を「保持している」に変更し、消去した動き補償フィルタ係数の記憶状態を「保持していない」に変更する。
 一方、フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持している場合(S105のYの場合)、動き補償フィルタ係数をメモリ109から読み出さず、S108へと進む。
 次に、参照画像転送制御部105は、参照画像を取得する(S108)。具体的には、参照画像転送制御部105は、S104にて復号部101が出力した動きベクトル及び参照画面情報などを含むヘッダ情報を元に、メモリ109から動き補償処理に利用する参照画像を読み出す。そして、読み出した参照画像を参照画像記憶部106に書き込む。
 次に、動き補償部107は、S104にて復号部101が出力した動きベクトルを設定する(S109)。次いで、S104にて復号部101が出力した動き補償フィルタ係数IDと動きベクトルとから、動き補償に利用する動き補償フィルタ係数を特定し、フィルタ係数記憶部103から読み出す(S110)。そして、動き補償部107は、参照画像記憶部106が保持している参照画像を読み出して、動き補償処理を行って予測画像生成し、加算器108へ出力する(S111)。
 次に、加算器108は、S111にて動き補償部107が出力した予測画像と、S104にて復号部101が出力した予測残差信号とを加算し出力する(S112)。
 次に、復号部101は、S101で復号した動き補償フィルタ係数を用いて動き補償を行う必要がある動き補償ブロックを全て復号したかを判定し(S113)、そうであるなら(S113のYの場合)、復号を完了する。反対に、まだ、復号していない動き補償ブロックがある場合は(S113のNの場合)、S103に戻り処理を繰り返す。
 以上のようにして、復号装置100は復号処理動作を行う。
 なお、復号装置100は、シーケンスまたはGOPに含まれる画像(ピクチャ)を復号する最初のときには、S102において、ステップS101において復号部101により復号された動き補償フィルタ係数すべてをメモリ109に書き込まれるものの、フィルタ係数記憶状態管理テーブル104には、書き込まれない。その後、S103~S113の処理を繰り返すことにより、フィルタ係数記憶部103に動き補償フィルタ係数の一部が保持される。
 以上、実施の形態1によれば、フィルタ係数記憶状態管理テーブル104を参照した結果、フィルタ係数記憶部103に動き補償フィルタ係数IDの示す動き補償フィルタが存在する場合には、動き補償フィルタ係数をメモリ109から読み出さない。そのため、メモリ109へのアクセス回数を減らすことが可能となる。これにより、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
 なお、上記において、フィルタ係数記憶部103が動き補償フィルタ係数IDが示す動き補償フィルタ係数を保持していない場合、フィルタ係数転送制御部102がメモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部103の最も古くフレームメモリから読み出された動き補償フィルタ係数が記憶されている領域に書き込む場合を説明したが、それに限らない。例えば最も新しくメモリ109から読み出された動き補償フィルタ係数が記憶されている領域に書き込むとしても良いし、フィルタ係数が格納されている領域をランダムに選択して書き込むとしても良い。これは、メモリ109へのアクセスを低減させることができ、かつ、フィルタ係数記憶部103の容量も低減させることができる方法であればいずれを選択しても良い。
 また、上記では、動き補償フィルタ係数IDは、動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを含めたものを動き補償フィルタIDとしても良い。
 また、上記では、動き補償部107に動きベクトルを設定するとしたが、動きベクトルの小数部を設定するとしても良い。
 また、上記では、復号装置100は、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、フィルタ係数記憶状態管理テーブル104、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108及びメモリ109を備えるとしたが、それに限られない。図5に示すように、復号装置100の最小構成として、復号装置部10を備えていればよい。すなわち、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、メモリ109及び動き補償部107を有する復号装置部10を備えていればよい。
 さらに具体的には、この復号装置部10は、動画像が動き補償を用いて符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う動画像復号装置であって、符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を復号する復号部101と、復号部101により復号された符号化ストリームに含まれる複数の動き補償フィルタ係数を保持するためのメモリ109と、メモリ109に保持されている複数の動き補償フィルタ係数のうち、動き補償を行うときに必要な動き補償フィルタ係数を保持するためのフィルタ係数記憶部103と、フィルタ係数記憶部103に保持された動き補償フィルタ係数を用いて動き補償を行う動き補償部107と、復号部101により復号された複数の動き補償フィルタ係数をメモリ109に書き出し、フィルタ係数記憶部103が上記必要な動き補償フィルタ係数を保持していない場合のみ、メモリ109からフィルタ係数記憶部103に、上記必要な動き補償フィルタ係数を転送するフィルタ係数転送制御部102とを備えていればよい。
 復号装置100は、最小構成として復号装置部10を少なくとも備えることにより、メモリ109に記憶され、動き補償を伴う復号に用いられる動き補償フィルタ係数の少なくとも一部がフィルタ係数転送制御部102によりフィルタ係数記憶部に転送され保持される。それにより、メモリ109へ直接アクセスする回数を低減することができる。
 (実施の形態2)
 図6は、本発明の実施の形態2における復号装置の構成図である。図7A及び図7Bは、フィルタ係数参照履歴管理テーブルが保持する情報の一例である。図6において、図1と同じ構成要素については同じ符号を用い、説明を省略する。
 図6に示す復号装置200は、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、フィルタ係数記憶状態管理テーブル104、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108、メモリ109、及び、フィルタ係数参照履歴管理テーブル201を備える。図6に示す復号装置200は、実施の形態1に係る復号装置100に対して、フィルタ係数参照履歴管理テーブル201を備えている点で構成が異なる。
 フィルタ係数参照履歴管理テーブル201は、本発明の参照管理部に相当し、符号化ストリームに含まれる複数の動き補償フィルタ係数毎の、復号開始から参照された回数を示す利用履歴情報を管理する。具体的には、フィルタ係数参照履歴管理テーブル201は、動き補償フィルタ係数IDを入力とし、フィルタ係数記憶部103において、動き補償フィルタ係数IDの示す動き補償フィルタ係数が復号開始から参照された回数を出力する機能を有する。フィルタ係数参照履歴管理テーブル201は、例えば、図7Aに示すような情報を保持している。すなわち、フィルタ係数参照履歴管理テーブル201は、復号部101が復号する符号化ストリームの例えばヘッダ情報に含まれる動き補償フィルタ係数IDをフィルタ係数IDとして保持している。そして、動き補償フィルタ係数IDそれぞれによって特定される動き補償フィルタ係数が復号開始から参照された回数をこれまでのストリームでの参照回数として保持している。
 なお、フィルタ係数参照履歴管理テーブル201は、動き補償フィルタ係数IDを入力とし、フィルタ係数記憶部103において、動き補償フィルタ係数IDの示す動き補償フィルタ係数が現在動き補償部107の行っている動き補償処理の何回前に参照されたかの回数を出力する機能を有するとしてもよい。その場合、フィルタ係数参照履歴管理テーブル201は、例えば、図7Bに示すような情報を保持する。すなわち、フィルタ係数参照履歴管理テーブル201は、復号部101が復号する符号化ストリームの例えばヘッダ情報に含まれる動き補償フィルタ係数IDをフィルタ係数IDとして保持している。そして、動き補償フィルタ係数IDの示す動き補償フィルタ係数が現在動き補償部107の行っている動き補償処理の何回前に参照されたかを示す情報(回数)を、何回前に参照されたかとして保持している。
 次に、以上のように構成される復号装置200の復号処理動作について説明する。図8は、本発明の実施の形態2における復号装置の復号処理動作を示すフローチャートである。
 図8に示すように、復号装置200において、まず、符号化ストリームを受けた復号部101は、符号化ストリームを構成するヘッダ情報を復号し(S201)、ヘッダ情報として少なくとも動き補償フィルタ係数を出力する。そして、フィルタ係数転送制御部102が、復号部101によって復号された動き補償フィルタ係数すべてをメモリ109に書き込む(S202)。
 次に、復号部101は、復号対象の画像のピクチャタイプがP若しくはBまたはIであるかを判定する(S203)。復号部101は、復号対象の画像のピクチャタイプが、PまたはBである場合には(S203のP、Bの場合)、動き補償処理が必要と判断して符号化ストリームを構成するヘッダ情報と予測残差信号とを復号し(S204)、ヘッダ情報として少なくとも動き補償フィルタ係数情報ID、動きベクトル情報、予測残差信号を出力する。一方、復号部101は、復号対象の画像のピクチャタイプが、Iである場合には(S203のIの場合)、動き補償処理が不要と判断してS215へ進み、画面内復号を行い、S214へと進む。
 次に、フィルタ係数転送制御部102が、S204にて復号された動き補償フィルタ係数IDが示す動き補償フィルタ係数をフィルタ係数記憶部103が保持しているかどうかを、フィルタ係数記憶状態管理テーブル104を参照して調べる(S205)。
 フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合(S205のNの場合)、メモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部103で例えばこれまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む(S206)。ここで、フィルタ係数転送制御部102は、フィルタ係数参照履歴管理テーブル201を参照し、最も参照回数が少ない動き補償フィルタ係数を特定している。 
 次いで、フィルタ係数転送制御部102は、フィルタ係数参照履歴管理テーブル201の、参照した動き補償フィルタ係数の参照回数を増やす(S207)。
 また、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104を更新する(S208)。具体的には、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104の読み出した動き補償フィルタ係数の記憶状態を「保持している」に変更し、消去した動き補償フィルタ係数の記憶状態を「保持していない」に変更する。
 一方、フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持している場合(S205のYの場合)、動き補償フィルタ係数をメモリ109から読み出さず、S209へと進む。
 次に、参照画像転送制御部105は、参照画像を取得する(S209)。具体的には、参照画像転送制御部105は、S204にて復号部101が出力した動きベクトル及び参照画面情報などを含むヘッダ情報を元に、メモリ109から動き補償処理に利用する参照画像を読み出す。そして、読み出した参照画像を参照画像記憶部106に書き込む。
 次に、動き補償部107は、S204にて復号部101が出力した動きベクトルを設定する(S210)。次いで、S204にて復号部101が出力した動き補償フィルタ係数IDと動きベクトルとから、動き補償に利用する動き補償フィルタ係数を特定し、フィルタ係数記憶部103から読み出して設定する(S211)。そして、動き補償部107は、参照画像記憶部106が保持している参照画像を読み出して、動き補償処理を行って予測画像生成し、加算器108へ出力する(S212)。
 次に、加算器108は、S212にて動き補償部107が出力した予測画像と、S204にて復号部101が出力した予測残差信号とを加算し出力する(S213)。
 次に、復号部101は、S201で復号した動き補償フィルタ係数を用いて動き補償を行う必要がある動き補償ブロックを全て復号したかを判定し(S214)、そうであるなら(S214のYの場合)、復号を完了する。反対に、まだ、復号していない動き補償ブロックがある場合は(S214のNの場合)、S203に戻り処理を繰り返す。
 以上のようにして、復号装置200は復号処理動作を行う。
 以上、実施の形態2によれば、フィルタ係数参照履歴管理テーブル201を参照することで、最も参照回数が少ない動き補償フィルタ係数を特定する。そして、フィルタ係数転送制御部102がフィルタ係数記憶部103に書き込む際に、これまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む。それにより、参照される可能性の低い動き補償フィルタ係数はフィルタ係数記憶部103に保持されず、頻繁に参照される可能性の高い動き補償フィルタ係数をフィルタ係数記憶部103で保持することが可能となる。その結果、メモリ109へのアクセス回数を減らすことが可能となる。これにより、動き補償フィルタ係数に関するメモリ帯域及びメモリアクセスレイテンシの低減が可能となる。
 なお、上記において、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合、フィルタ係数参照履歴管理テーブル201を参照することで、最も参照回数が少ない動き補償フィルタ係数を特定する。そして、フィルタ係数転送制御部102がメモリ109から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出し、フィルタ係数記憶部103のこれまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込むとしたが、それに限らない。例えば、最近(現在から所定期間の過去)において最も使われていない動き補償フィルタ係数が記憶されている領域に書き込むとしてもよいし、最近において最も使われている動き補償フィルタ係数が記憶されている領域に書き込むとしてもよいし、これまでに最も参照回数が多い動き補償フィルタ係数が記憶されている領域に書き込むとしてもよい。メモリ109へのアクセスを低減させることができ、かつ、フィルタ係数記憶部103の容量も低減させることができる方法であればいずれを選択しても良い。
 また、上記では、動き補償フィルタ係数IDは、動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを含めたものを動き補償フィルタIDとしても良い。
 また、上記では、動き補償部107に動きベクトルを設定するとしたが、動きベクトルの小数部を設定するとしても良い。
 (実施の形態3)
 図9は、本発明の実施の形態3における復号装置の構成を示すブロック図である。図10及び図11は、フィルタ係数統計情報管理テーブルが保持する情報の一例である。図9において、図1と同じ構成要素については同じ符号を用い、説明を省略する。
 図9に示す復号装置300は、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、フィルタ係数記憶状態管理テーブル104、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108、メモリ109、前復号部301、及び、フィルタ係数統計情報管理テーブル302を備える。図9に示す復号装置300は、実施の形態1に係る復号装置100に対して、前復号部301及びフィルタ係数統計情報管理テーブル302を備えている点で構成が異なる。
 前復号部301は、復号部101よりも先行して符号化ストリームから、符号化ストリームに含まれる複数の動き補償フィルタ係数の少なくとも一部を復号する。具体的には、前復号部301は、復号部101より少なくとも1ビット以上符号化ストリームを先行して、動画像圧縮技術の標準規格に準じて符号化された符号化ストリームの一部または全ての復号を行う。ここで、前復号部301は、少なくとも動き補償フィルタ係数IDを出力する機能を有する。
 なお、前復号部301は、復号装置300が別途備える例えばCABAC(Context-based Adaptive Binary Arithmetic Coding)などの算術符号を復号するCABAC復号部に構成されるとしてもよい。また、復号部101の前段に備えられてもよい。すなわち、前復号部301は、画像までは復号せず、復号部101より少なくとも1ビット以上符号化ストリームを先行して、動き補償フィルタ係数IDを復号し、フィルタ係数統計情報管理テーブル302に出力する構成であればよい。
 フィルタ係数統計情報管理テーブル302は、本発明の統計情報管理部に相当し、前復号部301により復号され、かつ、復号部101によりこれから復号される動き補償フィルタ係数毎の利用状況を管理する。具体的には、フィルタ係数統計情報管理テーブル302は、前復号部301が出力した動き補償フィルタ係数IDを入力とし、復号部101がこれから(以後または今後)復号する符号化ストリームに含まれる動き補償フィルタ係数ID毎の動き補償フィルタの利用回数を出力する機能を有する。
 フィルタ係数統計情報管理テーブル302は、例えば、図10に示すような情報を保持している。すなわち、フィルタ係数統計情報管理テーブル302は、前復号部301が復号した符号化ストリームのヘッダ情報に含まれる動き補償フィルタ係数IDをフィルタ係数IDとして保持している。また、今後のストリームでの参照回数として、動き補償フィルタ係数IDにより特定される動き補償フィルタ係数が復号部101の復号で参照されるまでの回数が保持されている。また、フィルタ係数統計情報管理テーブル302は、例えば、図11に示すような情報を保持していてもよい。すなわち、フィルタ係数統計情報管理テーブル302は、前復号部301が復号した符号化ストリームのヘッダ情報に含まれる動き補償フィルタ係数IDをフィルタ係数IDとして保持していてもよい。また、今後のストリーム中において何ブロック先で参照されるかを示す情報として、動き補償フィルタ係数IDにより特定される動き補償フィルタ係数が復号部101の復号で参照されるまでの回数が保持されているとしてもよい。
 以上のようにして、復号装置300は構成される。具体的には、復号部101がこれから復号する動き補償フィルタ係数IDの出現頻度をフィルタ係数統計情報管理テーブル302で管理することで、これから復号部101が復号する動き補償フィルタ係数IDが出現する確率が予め知ることができる。そのため、フィルタ係数記憶部103にこれからの出現確率が高い動き補償フィルタ係数を保持させ、これからの出現確率が低い動き補償フィルタ係数を破棄させることができる。それにより、メモリ109へのアクセス回数を削減することが可能となるだけでなく、フィルタ係数記憶部103のメモリ帯域の低減が可能となる。
 ここで、図10に示される今後のストリーム中において何ブロック先で参照されるかを示す情報と図11に示される今後のストリームでの参照回数を示す情報との効果の違いについて例を挙げて説明する。
 図12A及び図12B並びに図13A及び図13Bは、フィルタ係数統計情報管理テーブルに基づいてフィルタ係数記憶部の動き補償フィルタ係数が更新される様子を示す図である。ここで、図13A及び図13Bは、図12A及び図12Bと時間的に連続しており、図12A及び図12Bに比べて1マクロブロック後の復号が復号部101により行われるときの様子を示している。なお、前復号部301は、符号化ストリームに対して復号部101よりも例えば2マクロブロック分先行して復号するとする。また、フィルタ係数記憶部103は、動き補償フィルタ係数を2つしか保持できない構成であるとする。
 前復号部301は、図12Aに示すように、符号化ストリームに対して復号部101よりも例えば3マクロブロック分先行して復号し、フィルタ係数統計情報管理テーブル302に図12Bに示す情報を保持している。例えば、フィルタ係数統計情報管理テーブル302は、前復号部301が符号化ストリームに対して今まで復号したフィルタ係数ID(0、1、2)と、それらが今後のストリーム中において何ブロック先で参照されるかを示す情報(∞、2、1)とを保持している。ここで、図12Bにおいて、∞は、前復号部301が復号部101に先んじて復号した2マクロブロック先にはフィルタIDが0のものはないことを示している。それに対して、フィルタ係数IDが1のものは、復号部101がこれから(1ブロック先)復号する際に参照することを示している。同様に、フィルタIDが2のものは、復号部101が2ブロック先で復号する際に参照することを示している。
 そのため、フィルタ係数転送制御部102は、フィルタ係数統計情報管理テーブル302と、フィルタ係数記憶状態管理テーブル104とを参照し、フィルタ係数記憶部103に保持されているフィルタ係数ID(0、1)に対応する動き補償フィルタ係数のうち、フィルタ係数IDが0に対応する動き補償フィルタ係数を記憶する領域を変更する。すなわち、フィルタ係数転送制御部102は、フィルタ係数記憶部103に保持されているフィルタ係数ID=0に対応する動き補償フィルタ係数をフィルタ係数ID=2に対応する動き補償フィルタ係数に変更する。
 そして、図13A及び図13Bに示す場合も同様である。具体的には、フィルタ係数転送制御部102は、フィルタ係数統計情報管理テーブル302と、フィルタ係数記憶状態管理テーブル104とを参照し、フィルタ係数記憶部103に保持されているフィルタ係数ID(2、1)に対応する動き補償フィルタ係数のうち、どちらを変更すべきかを決定する。ここでは、フィルタ係数統計情報管理テーブル302を参照することにより、フィルタ係数IDが2に対応する動き補償フィルタ係数を記憶する領域を変更するべきと判断できる。しかし、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104を参照することにより、フィルタ係数記憶部103にフィルタ係数ID=1に対応する動き補償フィルタ係数が保持されているのを確認できる。そのため、フィルタ係数転送制御部102は、フィルタ係数記憶部103に対して変更の必要はないと判断し、フィルタ係数記憶部103に対してなにもしない(転送しない)。
 このようにして、これから復号部101が復号する動き補償フィルタ係数IDが出現する確率を予め知ることにより、メモリ109へのアクセス回数を削減することが可能となる。
 次に、以上のように構成される復号装置300の復号処理動作について説明する。図14は、本発明の実施の形態3における復号装置の復号処理動作を示すフローチャートである。
 図14に示すように、復号装置300において、まず、符号化ストリームを受けた復号部101は、符号化ストリームを構成するヘッダ情報を復号し(S301)、ヘッダ情報として少なくとも動き補償フィルタ係数を出力する。そして、フィルタ係数転送制御部102は、S301にて復号部101により復号された動き補償フィルタ係数すべてをメモリ109に書き込む(S302)。次に、復号部101は、復号対象の画像のピクチャタイプがP若しくはB、または、Iであるかを判定する(S303)。前復号部301は、復号部101により復号対象の画像のピクチャタイプが、PまたはBであると判定された場合には(S303のP、Bの場合)、動き補償処理が必要と判断し、復号部101に先行して符号化ストリームの復号を行い(S304)、フィルタ係数統計情報管理テーブル302を更新する(S305)。具体的には、復号部101に先行して、符号化ストリームの復号を行い、復号部101でまだ復号していない符号化ストリーム内にある動き補償フィルタ係数IDの出現頻度をフィルタ係数統計情報管理テーブル302に書き込む。
 次いで、復号部101は、符号化ストリームを構成するヘッダ情報と予測残差信号とを復号し、ヘッダ情報として少なくとも動き補償フィルタ係数情報ID、動きベクトル情報及び予測残差信号を出力する(S306)。
 なお、復号部101は、復号対象の画像のピクチャタイプが、Iであると判定した場合には(S303のIの場合)、S316へ進み、画面内復号を行い、S315へと進む。
 次に、フィルタ係数転送制御部102は、S306で復号部101によって復号された動き補償フィルタ係数IDが示す動き補償フィルタ係数をフィルタ係数記憶部103が保持しているかどうかを、フィルタ係数記憶状態管理テーブル104を参照して調べる(S307)。
 フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合(S307のNの場合)、メモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部103で例えばこれから最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む(S308)。ここで、フィルタ係数転送制御部102は、フィルタ係数統計情報管理テーブル302を参照し、復号部101が今後復号するうちで最も参照回数が少ない動き補償フィルタ係数を特定している。
 次いで、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104を更新する(S309)。具体的には、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104の読み出した動き補償フィルタ係数の記憶状態を「保持している」に変更し、消去した動き補償フィルタ係数の記憶状態を「保持していない」に変更する。
 一方、フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持している場合(S307のYの場合)、動き補償フィルタ係数をメモリ109から読み出さず(転送せず)、S310へと進む。
 なお、S310~S315の処理は、S209~S214と同様であるので説明を省略する。
 以上のようにして、復号装置300は復号処理動作を行う。
 以上、実施の形態3によれば、前復号部301は復号部101よりも先行してストリームを復号し、復号部101がこれから復号する動き補償フィルタ係数IDの出現頻度をフィルタ係数統計情報管理テーブル302で管理する。それにより、復号部101がこれから復号する動き補償フィルタ係数IDの出現する確率が予め知ることができるようになる。そして、フィルタ係数記憶部103にこれからの出現確率が高い動き補償フィルタ係数を保持することによりメモリ109へのアクセス回数を削減することが可能となり、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
 なお、上記において、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合、フィルタ係数統計情報管理テーブル302を参照することで、今後最も参照回数が少ない動き補償フィルタ係数を特定する。そして、フィルタ係数転送制御部102がメモリ109から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出し、フィルタ係数記憶部103の今後最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込むとしたが、それに限らない。例えば、今後しばらく使われないすなわち、今後所定の期間参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込むとしてもよい。このように、メモリ109へのアクセスを低減させることができ、かつ、フィルタ係数記憶部103の容量も低減させることができる方法であればいずれを選択しても良い。
 また、上記では、動き補償フィルタ係数IDは、動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを含めたものを動き補償フィルタIDとしても良い。
 また、上記では、動き補償部107に動きベクトルを設定するとしたが、動きベクトルの小数部を設定するとしても良い。
 また、上記では、復号装置300は、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、フィルタ係数記憶状態管理テーブル104、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108、メモリ109、前復号部301、及び、フィルタ係数統計情報管理テーブル302を備えるとしたが、それに限られない。図15に示すように、復号装置300の最小構成として、復号装置部350を備えていればよい。すなわち、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、メモリ109及び前復号部を有する復号装置部350を備えていればよい。ここで、図15は、本発明の実施の形態3における復号装置の最小構成を示すブロック図である。
 具体的には、この復号装置部350は、符号化ストリームから、動き補償を伴う復号に利用される複数の動き補償フィルタ係数を復号する復号部101と、復号部101よりも先行して、符号化ストリームから複数の動き補償フィルタ係数を復号する前復号部301と、前復号部301により復号された複数の動き補償フィルタ係数を保持するためのメモリ109と、復号部101により復号された複数の動き補償フィルタ係数のうち、動き補償を行うときに必要な一部の動き補償フィルタ係数を保持するためのフィルタ係数記憶部103と、前復号部301により復号された動き補償フィルタ係数に基づいて、前記一部の動き補償フィルタ係数をフィルタ係数記憶部103に保持させるフィルタ係数転送制御部102と、を備えていればよい。
 復号装置部350は、最小構成として復号装置部10を少なくとも備えることにより、前復号部301により復号された動き補償フィルタ係数により先読み解析を行うことで、動き補償を伴う復号に用いられる動き補償フィルタ係数の一部がフィルタ係数記憶部103に保持される。それにより、フィルタ係数記憶部103に保持されている場合には、フィルタ係数記憶部103に保持されている動き補償フィルタ係数を用いることにより、メモリ109へ直接アクセスする回数を低減することができるという効果を奏する。
 (実施の形態4)
 図16は、本発明の実施の形態4における復号装置の構成を示すブロック図である。図15において、図1と同じ構成要素については同じ符号を用い、説明を省略する。
 図16に示す復号装置400は、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108、メモリ109、可逆符号化部401、可逆復号部402を備える。ここで、図16に示す復号装置400は、実施の形態1に係る復号装置100に対して、可逆符号化部401及び可逆復号部402を備え、フィルタ係数記憶状態管理テーブル104を備えていない点で構成が異なる。
 可逆符号化部401は、符号化ストリームに含まれる複数の動き補償フィルタ係数を可逆符号化する。具体的には、可逆符号化部401は、復号部101が復号した動き補償フィルタ係数を可逆符号化しメモリ109に書き込む機能を有する。
 可逆復号部402は、可逆符号化部401により可逆符号化された複数の動き補償フィルタ係数のうち、動き補償に必要な動き補償フィルタ係数を可逆復号し、可逆復号した動き補償フィルタ係数を、フィルタ係数転送制御部102を介してフィルタ係数記憶部103に書き込む。具体的には、可逆復号部402は、メモリ109に格納された動き補償フィルタ係数を読み出して、可逆復号し、フィルタ係数転送制御部102を介してフィルタ係数記憶部103に書き込む機能を有する。なお、可逆復号部402は、フィルタ係数転送制御部102を介さずに、フィルタ係数記憶部103に書き込むとしてもよい。
 次に、以上のように構成される復号装置400の復号処理動作について説明する。図17は、本発明の実施の形態4における復号装置の復号処理動作を示すフローチャートである。
 図17に示すように、復号装置400において、まず、符号化ストリームを受けた復号部101は、符号化ストリームを構成するヘッダ情報を復号し(S401)、ヘッダ情報として少なくとも動き補償フィルタ係数を出力する。次いで、可逆符号化部401は、復号部101が復号した動き補償フィルタ係数を可逆符号化する(S402)。次いで、フィルタ係数転送制御部102は、可逆符号化部401により可逆符号化された動き補償フィルタ係数をメモリ109に書き込む(S403)。
 次に、復号部101は、復号対象の画像のピクチャタイプがP若しくはBまたはIであるかを判定する(S404)。復号部101は、復号対象の画像のピクチャタイプが、PまたはBである場合には(S404のP、Bの場合)、動き補償処理が必要と判断して符号化ストリームを構成するヘッダ情報と予測残差信号を復号し(S405)、ヘッダ情報として少なくとも動き補償フィルタ係数情報ID、動きベクトル情報、予測残差信号を出力する。一方、復号部101は、復号対象の画像のピクチャタイプが、Iである場合には(S404のIの場合)、動き補償処理が不要と判断してS414へ進み、画面内復号を行い、S413へと進む。
 次に、フィルタ係数転送制御部102は、メモリ109から動き補償フィルタ係数IDの示す可逆符号化された動き補償フィルタ係数を読み出す(S406)。続いて、可逆復号部402は、可逆符号化された動き補償フィルタ係数を可逆復号し、フィルタ係数記憶部103に書き込む(S407)。
 なお、S408~S413の処理は、S108~S112と同様であるので説明を省略する。
 以上のようにして、復号装置400は復号処理動作を行う。
 以上、実施の形態4によれば、可逆符号化部401により動き補償フィルタ係数を圧縮することで、メモリ109へ格納する動き補償フィルタ係数のデータサイズを小さくすることができる。これにより、動き補償フィルタ係数に関するメモリ容量の削減が可能となる。
 なお、図16に示す復号装置400が、上述したフィルタ係数記憶状態管理テーブル104を少なくとも備え、フィルタ係数参照履歴管理テーブル201またはフィルタ係数統計情報管理テーブルを備えるとしてもよい。その場合には、動き補償フィルタ係数に関するメモリ容量の削減だけでなく、上述したように、メモリ帯域の低減及びメモリアクセスレイテンシの低減も可能となり、さらに好ましい。
 また、上記において、復号部101で一度動き補償フィルタ係数を復号し、可逆符号化部401で符号化しなおしてメモリ109に格納し、可逆復号部402で復号する場合を説明したが、それに限らない。例えば、復号部101で動き補償フィルタ係数を復号せずに、符号化ストリーム内の動き補償フィルタ係数部分をメモリ109に格納するとし、可逆復号部402で復号するとしても良い。
 また、可逆符号化部401で利用する符号化アルゴリズムは、可逆で、かつ、入力サイズより出力サイズが小さくなる符号化方法であれば如何なるものでもよい。
 また、上記において、動き補償フィルタ係数IDは、動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを含めたものを動き補償フィルタIDとしても良い。
 また、上記では、動き補償部107に動きベクトルを設定するとしたが、動きベクトルの小数部を設定するとしても良い。
 (実施の形態5)
 図18は、本発明の実施の形態5における符号化装置の構成を示すブロック図である。
 図18に示す符号化装置500は、符号化対象画像と参照画像とを用いて、動き補償を伴う符号化である動き補償符号化を行う符号化装置であって、フィルタ係数生成部501、フィルタ係数転送制御部502、フィルタ係数記憶部503、フィルタ係数記憶状態管理テーブル504、参照画像転送制御部505、参照画像記憶部506、動き検出部507、減算器508、メモリ509及び符号化部510を備える。
 フィルタ係数生成部501は、本発明の生成部に相当し、動き補償符号化に利用される複数の動き補償フィルタ係数を生成する。具体的には、フィルタ係数生成部501は、符号化対象画像を入力として、または、符号化対象画像及び参照画像を入力として、可変係数動き補償の動き補償フィルタ係数を生成する機能を有する。典型的には、フィルタ係数生成部501は、符号化部510が符号化する符号化ストリームの例えばGOPまたはシーケンスのピクチャ単位などのヘッダ情報に含めることになる可変係数動き補償に用いるフィルタ係数(動き補償フィルタ係数)を生成する。ここで、動き補償フィルタ係数は、ピクチャ単位だけでなく、GOP単位若しくはシーケンス単位で生成されたとしてもよいし、スライス単位またはマクロブロック単位で生成されたとしてもよい。また、それらを組み合わせたものであっても構わない。
 フィルタ係数転送制御部502は、フィルタ係数生成部501により生成された複数の動き補償フィルタ係数をメモリ509に書き出し、フィルタ係数記憶部503が、動き補償処理に必要な動き補償フィルタ係数を保持していない場合のみ、メモリ509からフィルタ係数記憶部503に上記必要な動き補償フィルタ係数を転送する。具体的には、フィルタ係数転送制御部502は、フィルタ係数生成部501で生成された動き補償フィルタ係数をメモリ509に書き込む機能を有する。また、動き検出部507が決定した動き補償にどの動き補償フィルタ係数を用いるかを示す情報(動き補償フィルタ係数ID)を元に、フィルタ係数記憶状態管理テーブル504の情報を参照する機能を有する。フィルタ係数転送制御部502は、フィルタ係数記憶状態管理テーブル504の情報により、動き補償フィルタ係数IDの示す動き補償フィルタ係数がフィルタ係数記憶部503に保持されているかを確認することができる。
 例えば、フィルタ係数転送制御部502は、動き補償フィルタ係数IDの示す動き補償フィルタ係数がフィルタ係数記憶部503に保持されていないことを確認した場合、メモリ509から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出し、フィルタ係数記憶部503に書き込む(転送する)。一方、フィルタ係数転送制御部502は、動き補償フィルタ係数IDの示す動き補償フィルタ係数がフィルタ係数記憶部503に保持されていることを確認した場合は、動き補償フィルタ係数をメモリ509から読み出さない(転送しない)。
 なお、フィルタ係数転送制御部502は、動き補償フィルタ係数をメモリ509に書き込む命令のみをフィルタ係数生成部501に行い、フィルタ係数生成部501が動き補償フィルタ係数をメモリ509に書き込むとしてもよい。同様に、フィルタ係数転送制御部502は、メモリ509から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す命令のみをフィルタ係数記憶部503に行い、フィルタ係数記憶部503がメモリ509から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出し、保持するとしてもよい。
 フィルタ係数記憶部503は、メモリ509に保持されている複数の動き補償フィルタ係数のうち、動き補償を行うときに必要な動き補償フィルタ係数を保持するためのものである。具体的には、フィルタ係数記憶部503は、メモリ509から転送された動き補償フィルタ係数を少なくとも2種類以上保持する機能と、動き補償フィルタ係数IDが示す動き補償フィルタ係数を動き検出部507に設定する機能を有する。
 フィルタ係数記憶状態管理テーブル504は、フィルタ係数記憶部503が動き補償フィルタ係数IDにより特定された動き補償フィルタ係数を保持しているかどうかを示す情報を管理する。具体的には、フィルタ係数記憶状態管理テーブル504は、動き補償フィルタ係数IDを入力とし、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持しているか否かの情報をフィルタ係数転送制御部502に出力する機能を有する。フィルタ係数記憶状態管理テーブル504は、例えば、上述した図3に示すように、動き補償フィルタ係数IDの示す動き補償フィルタ係数がフィルタ係数記憶部503に保持されているか否かを示す記憶状態をテーブル(情報)として保持している。
 参照画像転送制御部505は、動き検出に用いる参照画像内の探索領域の位置情報に基づき、動き検出に必要な参照画素をメモリ509から読み出し、参照画像記憶部506に書き込む機能を有する。
 なお、参照画像転送制御部505は、動き検出に用いる参照画像内の探索領域の位置情報に基づき、動き検出に必要な参照画素をメモリ509から読み出す命令のみを参照画像記憶部506に行い、参照画像記憶部506が動き補償に必要な参照画素をメモリ509から読み出し保持するとしてもよい。
 参照画像記憶部506は、メモリ509から転送された参照画素を保持する機能を有する。
 動き検出部507は、フィルタ係数記憶部503に保持されている動き補償に必要な動き補償フィルタ係数を用いて符号化対象画像と前記参照画像とから動き補償を行って予測画像を生成する。具体的には、動き検出部507は、符号化画像、及び、参照画像を入力として、動きベクトルと動き補償に利用する動き補償フィルタ係数の種類を示す動き補償フィルタ係数IDとを決定して符号化部510へ出力する機能を有している。そして、動き検出部507は、決定した動き補償フィルタ係数IDをフィルタ係数転送制御部502へ出力する機能を有している。また、動き検出部507は、参照画像記憶部506が保持している動きベクトルが指し示す動き補償に必要な参照画素と、フィルタ係数記憶部503が保持している動き補償フィルタ係数IDが示す動き補償フィルタ係数とを取得し、それらの情報を用いて動き補償処理を行って予測画像を生成し、減算器508へと出力する機能を有する。
 ここで、動き検出部507が動き補償フィルタ係数IDを決定する方法について一例を挙げて説明する。図19は、フィルタ係数記憶状態管理テーブルが保持する情報の一例である。図20は、動き検出部507が、動き補償フィルタ係数IDを決定する方法を説明するための図である。
 なお、ここで、図19に示すように、フィルタ係数記憶状態管理テーブルは、動き補償フィルタ係数IDが0~100と、それらに対応する動き補償フィルタ係数のフィルタ係数記憶部503における記憶状態とを保持しているとする。また、フィルタ係数記憶部503には、動き補償フィルタ係数ID 70~79に対応する動き補償フィルタ係数が記憶されているとする。さらに、フィルタ係数記憶部503は20個の動き補償フィルタ係数しか保持することができないとする。すなわち、フィルタ係数記憶部503は、図20(a)に示すように動き補償フィルタ係数ID 70~79に対応する動き補償フィルタ係数を10個保持しており、あと10個の動き補償フィルタ係数を保持可能な領域がある。
 この場合において、動き検出部507は、動き補償に利用する動き補償フィルタ係数の種類を示す動き補償フィルタ係数IDを次のように決定する。
 まず、動き検出部507は、図20(b)に示すように、フィルタ係数転送制御部502に、動き補償フィルタ係数ID 0~9に対応する動き補償フィルタ係数をフィルタ係数記憶部503に書き込みさせて、動き補償に利用する補償フィルタ係数IDか否かを確認する。
 次に、動き検出部507は、同様に、図20(c)に示すように、フィルタ係数転送制御部502に、動き補償フィルタ係数ID 10~19に対応する動き補償フィルタ係数をフィルタ係数記憶部503に書き込みさせて、動き補償に利用する補償フィルタ係数IDか否かを確認する。
 このように、動き検出部507は、同様にして、動き補償フィルタ係数ID 0~69および80~100に対応する動き補償フィルタ係数をフィルタ係数記憶部503に書き込みさせて、動き補償に利用する補償フィルタ係数IDか否かを確認する。
 一方、動き補償フィルタ係数ID 70~79に対応する動き補償フィルタ係数は、予めフィルタ係数記憶部503に保持されている。そのため、フィルタ係数転送制御部502は動き補償フィルタ係数ID 70~79に対応する動き補償フィルタ係数を転送しない。このようにして、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
 なお、動き検出部507が動き補償フィルタ係数IDを決定する方法として上記で説明した方法は、一例であり、その他の方法でもよいのは言うまでもない。
 減算器508は、入力された符号化画像と動き検出部507が出力した予測誤差信号とを減算し、予測誤差信号として符号化部510へ出力する機能を有する。
 メモリ509は、動き補償フィルタ係数と、動き検出部507が参照する参照画面とを保持する機能を有する。なお、メモリ509は、動き補償フィルタ係数を保持するだけとしてもよい。その場合、動き検出部507が参照する参照画面を保持するフレームメモリを符号化装置500が別途備えればよい。
 符号化部510は、少なくとも減算器508が出力した予測誤差信号と動き検出部507が出力した動きベクトル、及び、動き補償フィルタ係数IDを入力とし、それらに対し動画像圧縮技術の標準規格に準じて符号化を行い、符号化ストリームを出力する機能を有する。
 以上のようにして、符号化装置500は構成される。
 次に、この符号化装置500の符号化処理動作について説明する。図21は、本発明の実施の形態5における符号化装置の符号化処理動作を示すフローチャートである。
 図21に示すように、符号化装置500において、まず、符号化対象画像を受けたフィルタ係数生成部501は、以後の符号化に用いる動き補償フィルタ係数を生成し出力する(S501)。そして、フィルタ係数転送制御部502は、S501にてフィルタ係数生成部501により生成されたすべての動き補償フィルタ係数をメモリ509に書き込む(S502)。
 次に、符号化装置500は、符号化対象の画像(ブロック)について、S503での画面内予測と、S504~S511での画面間予測との両方を実施する。画面内予測については、従来の方法を適用すればよいので説明を省略する。以下、S504~S511での画面間予測の実施について説明する。
 S504において、参照画像転送制御部505は、動き検出に用いる参照画像内の探索領域の位置情報に基づき、動き検出に必要な参照画素をメモリ509から読み出し、参照画像記憶部506に書き込む。
 次に、動き検出部507は、符号化画像、及び、参照画像を入力として符号化画像と相関の高い参照画像内の画素位置の情報を動きベクトルとして出力し(S505)、更に予測誤差が小さくなるような動き補償フィルタ係数を特定し、動き補償フィルタ係数IDとして出力する。
 次に、フィルタ係数転送制御部502は、S506にて特定された動き補償フィルタ係数IDが示す動き補償フィルタ係数をフィルタ係数記憶部503が保持しているかどうかを、フィルタ係数記憶状態管理テーブル504を参照して調べる(S507)。
 次に、フィルタ係数転送制御部502は、S507にて、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合(S507のNの場合)、メモリ509から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部503で例えば最も古くメモリ509から読み出された動き補償フィルタ係数が記憶されている領域に書き込む(S508)。続いて、フィルタ係数転送制御部502は、フィルタ係数記憶状態管理テーブル504を更新する(S509)。具体的には、フィルタ係数転送制御部502は、フィルタ係数記憶状態管理テーブル504の読み出した動き補償フィルタ係数の記憶状態を「保持している」に変更し、消去した動き補償フィルタ係数の記憶状態を「保持していない」に変更する。
 一方、フィルタ係数転送制御部502は、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持している場合(S507のYの場合)、動き補償フィルタ係数をメモリ509から読み出さず(転送せず)、S510へと進む。
 次に、動き検出部507は、決定した動きベクトルと特定した動き補償フィルタ係数IDとから、動き補償に利用する動き補償フィルタ係数をフィルタ係数記憶部503から読み出して設定する(S510)。そして、参照画像記憶部506の保持している参照画像を読み出して、動き補償処理を行って、予測画像生成し(S511)、減算器508へ出力する。
 このように、符号化装置500は、符号化対象の画像(ブロック)について、S503での画面内予測を実施し、S504~S511での画面間予測を実施する。そして、符号化部510は、実施した画面内予測と画面間予測とから、画面間符号化する場合の符号化効率と画面内符号化する場合の符号化効率とのうち、どちらの符号化モードで符号化する方がより符号化効率が良くなるかを判定する。符号化部510は、符号化効率が良くなると判定した方の符号化モードを符号化対象の画像(ブロック)の符号化モード(マクロブロックタイプ)に決定する(S512)。
 次に、減算器508は、S512で決定された符号化対象の画像(ブロック)の符号化モードに従って減算する。具体的には、符号化対象の画像(ブロック)の符号化モードが画面間予測であると決定された場合(S512)、S511にて動き検出部507が出力した予測画像と、符号化対象画像とを減算し(S513)、予測残差(予測誤差)信号を出力する。一方、符号化対象の画像(ブロック)の符号化モードが画面内予測であると決定された場合(S512)、S503で出力された予測画像と、符号化対象画像とを減算し(S513)、減算した予測残渣(誤差)信号を出力する。
 次に、符号化部510は、少なくとも減算器508が出力した予測残渣(誤差)信号と、動き検出部507が出力した動きベクトル及び動き補償フィルタ係数IDとを入力とし、それらに対し動画像圧縮技術の標準規格に準じて符号化を行い、符号化ストリームを出力する(S514)。
 次に、符号化部510は、動き補償フィルタ係数を用いて動き補償を行う必要がある動き補償ブロックを全て符号化したかを判定し(S515)、そうであるなら(S515のYの場合)、符号化を完了する。反対に、まだ、符号化していない動き補償ブロックがある場合は(S515のNの場合)、S503及びS504に戻り処理を繰り返す。
 以上のようにして、符号化装置500は符号化処理動作を行う。
 以上、実施の形態5によれば、フィルタ係数記憶状態管理テーブル504を参照した結果、フィルタ係数記憶部503に動き補償フィルタ係数IDの示す動き補償フィルタが存在する場合には、動き補償フィルタ係数をメモリ509から読み出さない(転送しない)。そのため、メモリ509へのアクセス回数を減らすことが可能となる。これにより、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
 なお、上記において、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合、フィルタ係数転送制御部502がメモリ509から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出す(転送する)。そして、フィルタ係数記憶部503の最も古くメモリ509から読み出された動き補償フィルタ係数が記憶されている領域に書き込む場合を説明したが、それに限らない。例えば最も新しくメモリ509から読み出された動き補償フィルタ係数が記憶されている領域に書き込むとしても良いし、フィルタ係数が格納されている領域をランダムに選択して書き込むとしても良い。メモリ109へのアクセスを低減させることができ、かつ、フィルタ係数記憶部103の容量も低減させることができる方法であればいずれを選択しても良い。
 また、上記では、動き補償フィルタ係数IDは動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを動き補償フィルタIDとしても良い。
 また、上記では符号化装置500は、フィルタ係数生成部501、フィルタ係数転送制御部502、フィルタ係数記憶部503、フィルタ係数記憶状態管理テーブル504、参照画像転送制御部505、参照画像記憶部506、動き検出部507、減算器508、メモリ509及び符号化部510を備えるとしたが、それに限られない。符号化装置500の最小構成として、フィルタ係数生成部501、フィルタ係数転送制御部502、フィルタ係数記憶部503、動き検出部507及びメモリ509を備えていればよい。
 さらに具体的には、符号化装置500は、符号化対象画像と参照画像とを用いて、動き補償を伴う符号化である動き補償符号化を行う動画像符号化装置であって、動き補償符号化に利用される複数の動き補償フィルタ係数を生成するフィルタ係数生成部501と、フィルタ係数生成部501より生成された複数の動き補償フィルタ係数を保持するためのメモリ509と、メモリ509に保持されている複数の動き補償フィルタ係数のうち、動き補償を行うときに必要な動き補償フィルタ係数を保持するためのフィルタ係数記憶部503と、フィルタ係数記憶部503に保持されている上記必要な動き補償フィルタ係数を用いて符号化対象画像と参照画像とから動き補償を行って予測画像を生成する動き検出部507と、フィルタ係数生成部501により生成された複数の動き補償フィルタ係数をメモリ509に書き出し、フィルタ係数記憶部503が上記必要な動き補償フィルタ係数を保持していない場合のみ、メモリ509からフィルタ係数記憶部503に必要な動き補償フィルタ係数を転送するフィルタ係数転送制御部502とを備えていればよい。
 この最小構成により、フィルタ係数記憶部503に動き補償フィルタ係数IDの示す動き補償フィルタが存在する場合には、動き補償フィルタ係数をメモリ509から読み出さないことができる。そのため、メモリ509へのアクセス回数を減らすことが可能となる。これにより、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
 (実施の形態6)
 図22は、本発明の実施の形態6における符号化装置の構成を示すブロック図である。図22において、図18と同じ構成要素については同じ符号を用い、説明を省略する。
 図22に示す符号化装置600は、フィルタ係数生成部501、フィルタ係数転送制御部502、フィルタ係数記憶部503、フィルタ係数記憶状態管理テーブル504、参照画像転送制御部505、参照画像記憶部506、動き検出部507、減算器508、メモリ509、符号化部510、フィルタ係数参照履歴管理テーブル601を備える。ここで、図22に示す符号化装置600は、実施の形態5に係る符号化装置500に対して、フィルタ係数参照履歴管理テーブル601を備える点で構成が異なる。
 フィルタ係数参照履歴管理テーブル601は、動き補償に利用する動き補償フィルタ係数毎の、動き補償の開始から参照された回数を示す利用履歴情報を管理する。具体的には、フィルタ係数参照履歴管理テーブル601は、動き補償フィルタ係数IDを入力とし、フィルタ係数記憶部503へ動き補償フィルタ係数IDの示す動き補償フィルタが符号化開始から参照された回数を出力する機能を有する。なお、フィルタ係数参照履歴管理テーブル601が保持する情報は、図7A及び図7Bで示した内容と同様であるため、説明を省略する。
 次に、以上のように構成された符号化装置600の符号化処理動作について説明する。図23は、本発明の実施の形態6における符号化装置の符号化処理動作を示すフローチャートである。
 図23に示すように、符号化装置600において、まず、符号化対象画像を受けたフィルタ係数生成部501は、以後の符号化に用いる動き補償フィルタ係数を生成し出力する(S601)。なお、S602の処理は、S502と同様のため説明を省略する。
 次に、符号化装置600は、符号化対象の画像(ブロック)について、S603での画面内予測と、S604~S612での画面間予測との両方を実施する。画面内予測については、S503と同様に従来の方法を適用すればよいので説明を省略する。以下、S604~S612での画面間予測の実施について説明する。ここで、S604からS606の処理は、S504~S506と同様のため説明を省略する。
 次に、S607において、フィルタ係数転送制御部502は、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合(S607のNの場合)、メモリ509から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部503で例えばこれまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む(S608)。ここで、フィルタ係数転送制御部502は、フィルタ係数参照履歴管理テーブル601を参照し、最も参照回数が少ない動き補償フィルタ係数を特定している。
 次いで、フィルタ係数転送制御部502は、フィルタ係数参照履歴管理テーブル601を更新する(S609)。具体的には、フィルタ係数参照履歴管理テーブル601において参照した動き補償フィルタ係数の参照回数を増やす。
 次いで、フィルタ係数転送制御部502は、フィルタ係数記憶状態管理テーブル504を更新する(S610)。具体的には、フィルタ係数転送制御部502は、フィルタ係数記憶状態管理テーブル504において、読み出した動き補償フィルタ係数の記憶状態を「保持している」に変更し、消去した動き補償フィルタ係数の記憶状態を「保持していない」に変更する。
 一方、フィルタ係数転送制御部502は、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持している場合(S607のYの場合)、動き補償フィルタ係数をメモリ509から読み出さず(転送せず)、S611へと進む。
 次に、動き検出部507は、決定した動きベクトルと特定した動き補償フィルタ係数IDとから、動き補償に利用する動き補償フィルタ係数をフィルタ係数記憶部503から読み出して設定する(S611)。なお、S611の処理は、S510と同様のため説明を省略する。
 このように符号化装置600は、符号化対象の画像(ブロック)について、S603で画面内予測を実施し、S604~S612で画面間予測を実施する。そして、符号化部510は、実施した画面内予測と画面間予測とから、画面間符号化する場合の符号化効率と画面内符号化する場合の符号化効率とのうち、どちらの符号化モードで符号化する方がより符号化効率が良くなるかを判定する。符号化部510は、符号化効率が良くなると判定した方の符号化モードを符号化対象の画像(ブロック)の符号化モード(マクロブロックタイプ)に決定する。
 以下のS614~S616の処理は、S513~S515と同様のため説明を省略する。
 以上のようにして、符号化装置600は符号化処理動作を行う。
 以上、実施の形態6によれば、フィルタ係数参照履歴管理テーブル601を参照することで、最も参照回数が少ない動き補償フィルタ係数を特定する。そして、フィルタ係数転送制御部502がフィルタ係数記憶部503に書き込む際に、これまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む。それにより、参照される可能性の低い動き補償フィルタ係数はフィルタ係数記憶部503に保持されず、頻繁に参照される可能性の高い動き補償フィルタ係数がフィルタ係数記憶部503に保持されることになる。その結果、メモリ509へのアクセス回数を減らすことが可能となる。このようにして、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
 なお、上記において、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合、フィルタ係数参照履歴管理テーブル601を参照することで、最も参照回数が少ない動き補償フィルタ係数を特定する。そして、フィルタ係数転送制御部502がメモリ509から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出し、フィルタ係数記憶部503のこれまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む場合を説明としたが、それに限らない。例えば最近最も使われていない動き補償フィルタ係数が記憶されている領域に書き込むとしてもよいし、最近最も使われている動き補償フィルタ係数が記憶されている領域に書き込むとしてもよいし、これまでに最も参照回数が多い動き補償フィルタ係数が記憶されている領域に書き込むとしてもよい。すなわち、メモリ109へのアクセスを低減させることができ、かつ、フィルタ係数記憶部103の容量も低減させることができる方法であればいずれを選択しても良い。
 また、上記では、動き補償フィルタ係数IDは動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを動き補償フィルタIDとしても良い。
 (実施の形態7)
 図24は、本発明の実施の形態7における符号化装置の構成を示すブロック図である。図24において、図18と同じ構成要素については同じ符号を用い、説明を省略する。
 図24に示す符号化装置700は、フィルタ係数生成部501、フィルタ係数転送制御部502、フィルタ係数記憶部503、参照画像転送制御部505、参照画像記憶部506、動き検出部507、減算器508、メモリ509、符号化部510、可逆符号化部701、及び、可逆復号部702を備える。ここで、図24に示す符号化装置700は、実施の形態5に係る符号化装置500に対して、フィルタ係数記憶状態管理テーブル504を備えず、可逆符号化部701及び可逆復号部702を備える点で構成が異なる。
 可逆符号化部701は、複数の動き補償フィルタ係数を可逆符号化する。具体的には、可逆符号化部701は、フィルタ係数生成部501が生成した動き補償フィルタ係数を可逆符号化し、メモリ509に書き込む機能を有する。
 可逆復号部702は、可逆符号化部701により可逆符号化された複数の動き補償フィルタ係数のうち、必要な動き補償フィルタ係数を可逆復号し、可逆復号した動き補償フィルタ係数を、フィルタ係数転送制御部502を介してフィルタ係数記憶部503に書き込む。具体的には、可逆復号部702は、メモリ509に格納された動き補償フィルタ係数を読み出して、可逆復号し、フィルタ係数転送制御部502を介してフィルタ係数記憶部503に書き込む機能を有する。なお、可逆復号部702は、フィルタ係数転送制御部502を介さずに、フィルタ係数記憶部503に書き込むとしてもよい。
 次に、以上のように構成された符号化装置700の符号化処理動作について説明する。図25は、本発明の実施の形態7における符号化装置の符号化処理動作を示すフローチャートである。
 図25に示すように、符号化装置700において、まず、符号化対象画像を受けたフィルタ係数生成部501は、以後の符号化に用いる動き補償フィルタ係数を生成し出力する(S701)。
 次に、可逆符号化部701は、フィルタ係数生成部501が生成した動き補償フィルタ係数を可逆符号化する(S702)。
 次に、フィルタ係数転送制御部502は、S702にて可逆符号化部701により可逆符号化された動き補償フィルタ係数をメモリ509に書き込む(S703)。
 次に、符号化装置700は、符号化対象の画像(ブロック)について、S704での画面内予測と、S705~S711での画面間予測との両方を実施する。画面内予測については、S503と同様に従来の方法を適用すればよいので説明を省略する。以下、S705~S711での画面間予測の実施について説明する。なお、S705からS707の処理は、S504~S506と同様のため説明を省略する。
 次に、S707において、フィルタ係数転送制御部502は、メモリ509から動き補償フィルタ係数IDの示す、可逆符号化された動き補償フィルタ係数を読み出す(S708)。そして、可逆復号部702は、可逆符号化された動き補償フィルタ係数を可逆復号し、フィルタ係数記憶部503に書き込む(S709)。
 次に、動き検出部507は、特定した動き補償フィルタ係数IDと決定した動きベクトルから、動き補償に利用する動き補償フィルタ係数をフィルタ係数記憶部503から読み出て設定する(S710)。そして、参照画像記憶部506が保持している参照画像を読み出して、動き補償処理を行って、予測画像生成し(S711)、減算器508へ出力する。
 このように符号化装置700は、符号化対象の画像(ブロック)について、S704で画面内予測を実施し、S705~S711で画面間予測を実施する。そして、符号化部510は、実施した画面内予測と画面間予測とから、画面間符号化する場合の符号化効率と画面内符号化する場合の符号化効率とのうち、どちらの符号化モードで符号化する方がより符号化効率が良くなるかを判定する。符号化部510は、符号化効率が良くなると判定した方の符号化モードを符号化対象の画像(ブロック)の符号化モード(マクロブロックタイプ)に決定する。
 なお、以下のS713からS715の処理は、S513~S515と同様のため説明を省略する。
 以上のようにして、符号化装置700は符号化処理動作を行う。
 以上、実施の形態7によれば、可逆符号化部701により動き補償フィルタ係数を圧縮することで、メモリ509へ格納する動き補償フィルタ係数のデータサイズを小さくすることができる。これにより、動き補償フィルタ係数に関するメモリ容量の低減が可能となる。
 なお、図23に示す符号化装置700が、上述したフィルタ係数記憶状態管理テーブル504を少なくとも備え、フィルタ係数参照履歴管理テーブル601を備えるとしてもよい。その場合には、動き補償フィルタ係数に関するメモリ容量の削減だけでなく、上述したように、メモリ帯域の低減及びメモリアクセスレイテンシの低減も可能となり、さらに好ましい。
 また、上記において、復号部101で一度動き補償フィルタ係数を復号し、可逆符号化部401で符号化しなおしてメモリ109に格納し、可逆復号部402で復号する場合を説明したが、それに限らない。例えば、符号化部510で符号化ストリーム内へ符号化した動き補償フィルタ係数部分をメモリ509に格納するとし、可逆復号部702で復号するとしても良い。
 また、可逆符号化部701で利用する符号化アルゴリズムは、可逆で、かつ、入力サイズより出力サイズが小さくなるような符号化方法であれば如何なるものでもよい。
 また、上記において、動き補償フィルタ係数IDは、動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを動き補償フィルタIDとしても良い。
 以上のように、実施の形態1~7によれば、可変係数動き補償画面間予測を行う際に使用するフィルタ係数のメモリ帯域の低減及びメモリアクセスレイテンシの低減を可能とする動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法を実現することができる。
 なお、 実施の形態1~7において、メモリ109、メモリ509、フィルタ係数記憶部103及びフィルタ係数記憶部503は、典型的にはDDRで構成されるが、必ずしもDDRで構成される必要はなく、SRAMで構成されていてもよいし、フリップフロップで構成されていても良い。つまり、記憶可能な素子で構成されていれば良い。その際、メモリ109及びメモリ509は、低速な記憶素子から構成され、フィルタ係数記憶部103及びフィルタ係数記憶部503は、高速な記憶素子で構成されるのが好ましい。
 (実施の形態8)
 上記各実施の形態で説明した動画像符号化装置、動画像復号装置、動画像符号化方法または動画像復号方法は、アプリケーションとしても応用できる。
 例えば、上記各実施の形態で示した動画像符号化方法または動画像復号方法を実現するためのプログラムを記憶メディアに記録することにより、上記各実施の形態で示した処理を独立したコンピュータシステムにおいて簡単に実施することが可能となる。なお、記憶メディアは、磁気ディスク、光ディスク、光磁気ディスク、ICカード、半導体メモリ等のいずれでもよく、プログラムを記録できるものであればよい。
 以下、上記各実施の形態で示した動画像符号化方法や動画像復号方法等の応用例とそれを用いたシステムを説明する。
 図26は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示す図である。図26に示すコンテンツ供給システムex100において、通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex107~ex110が設置されている。
 コンテンツ供給システムex100では、インターネットex101にインターネットサービスプロバイダex102、電話網ex104及び基地局ex107~ex110を介して、コンピュータex111、PDA(Personal Digital Assistant)ex112、カメラex113、携帯電話ex114及びゲーム機ex115などの各機器が接続される。
 なお、コンテンツ供給システムex100は、図26のような構成に限定されず、いずれかの要素を組合せて接続するようにしてもよい。また、コンテンツ供給システムex100は、固定無線局である基地局ex107~ex110を介さずに、各機器が電話網ex104に直接接続されてもよい。また、各機器が近距離無線等を介して直接相互に接続されていてもよい。
 例えば、カメラex113は、デジタルビデオカメラ等の動画撮影が可能な機器である。また、カメラex116は、デジタルカメラ等の静止画撮影、動画撮影が可能な機器である。
 携帯電話ex114は、GSM(Global System for Mobile Communications)方式、CDMA(Code Division Multiple Access)方式、W-CDMA(Wideband-Code Division Multiple Access)方式、若しくはLTE(Long Term Evolution)方式、HSPA(High Speed Packet Access)を用いる携帯電話機またはPHS(Personal Handyphone System)であり、いずれでも構わない。
 コンテンツ供給システムex100では、カメラex113等が基地局ex109、電話網ex104を通じてストリーミングサーバex103に接続されることで、ライブ配信等が可能になる。
 具体的には、ライブ配信では、ユーザがカメラex113を用いて撮影するコンテンツ(例えば、音楽ライブの映像等)に対して上記各実施の形態で説明した符号化処理を行い、ストリーミングサーバex103に送信する。一方、ストリーミングサーバex103は要求のあったクライアントに対して送信されたコンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114、ゲーム機ex115等がある。配信されたデータを受信した各機器では、受信したデータを復号処理して再生する。
 なお、撮影したデータの符号化処理は、カメラex113で行っても、データの送信処理をするストリーミングサーバex103で行ってもよいし、これらが互いに分担して行ってもよい。同様に、配信されたデータの復号処理はクライアントで行っても、ストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。
 また、カメラex113に限らず、カメラex116で撮影した静止画像データ及び/または動画像データを、コンピュータex111を介してストリーミングサーバex103に送信してもよい。この場合の符号化処理はカメラex116、コンピュータex111、ストリーミングサーバex103のいずれで行ってもよいし、互いに分担して行ってもよい。
 これら符号化・復号処理は、一般的にコンピュータex111や各機器が有するLSIex500において処理する。ここで、LSIex500は、ワンチップであっても複数チップからなる構成であってもよい。なお、動画像符号化・復号用のソフトウェアをコンピュータex111等で読み取り可能な何らかの記録メディア(CD-ROM、フレキシブルディスク、ハードディスクなど)に組み込み、そのソフトウェアを用いて符号化・復号処理を行うとしてもよい。さらに、携帯電話ex114がカメラ付きである場合には、そのカメラで取得した動画データを送信してもよい。このときの動画データは、携帯電話ex114が有するLSIex500で符号化処理されたデータである。
 また、ストリーミングサーバex103は複数のサーバや複数のコンピュータであって、データを分散して処理したり記録したり配信するものであってもよい。
 以上のようにして、コンテンツ供給システムex100では、符号化されたデータをクライアントが受信して再生することができる。
 このようにコンテンツ供給システムex100では、ユーザが送信した情報をリアルタイムでクライアントが受信して復号し、再生することができ、特別な権利や設備を有さないユーザでも個人放送を実現できる。
 なお、上記各実施の形態の少なくとも動画像符号化装置及び動画像復号装置のいずれかが組み込まれる例としてはコンテンツ供給システムex100の例に限られない。図27に示すように、デジタル放送用システムex200にも、組み込むとしてもよい。以下、それを用いて説明する。図27は、デジタル放送用システムex200の全体構成を示す図である。
 具体的には、放送局ex201では、映像情報のビットストリームが電波を介して通信または放送衛星ex202に伝送される。このビットストリームは上記各実施の形態で説明した動画像符号化方法により符号化された符号化ビットストリームである。
 放送衛星ex202は、これを受けて放送用の電波を発信する。
 アンテナex204は、衛星放送の受信が可能な家庭のアンテナであり、放送衛星ex202からの放送用の電波を受信する。
 テレビ(受信機)ex300またはセットトップボックス(STB)ex217等の装置は、アンテナex204から受信した放送用の電波に含まれるビットストリームを、復号して再生する。
 リーダ/レコーダex218は、DVD、BD等の記録メディアex215に記録された符号化ビットストリームを読み取って復号することが可能である。また記録メディアex215に映像信号を符号化して書き込むことが可能である。ここで、リーダ/レコーダex218は、上記各実施の形態で示した動画像復号装置または動画像符号化装置を実装する。その場合、リーダ/レコーダex218で再生された映像信号はモニタex219に表示され、符号化ビットストリームが記録された記録メディアex215により他の装置やシステムにおいて映像信号を再生することができる。
 なお、セットトップボックスex217は、ケーブルテレビ用のケーブルex203または衛星/地上波放送のアンテナex204に接続され、自装置内に動画像復号装置を実装し、これをテレビのモニタex219で表示するとしてもよい。また、セットトップボックスex217ではなく、テレビex300内に動画像復号装置を組み込んでもよい。
 図28は、テレビex300の構成例を示すブロック図である。
 テレビex300は、上記各実施の形態で説明した動画像復号方法及び動画像符号化方法を用いている。テレビex300は、上記放送を受信するアンテナex204またはケーブルex203等を介して映像情報のビットストリームを取得、または出力するチューナex301と、受信した符号化データを復調する、または外部に送信する符号化データに変調する変調/復調部ex302と、復調した映像データ、音声データを分離する、または符号化された映像データ、音声データを多重化する多重/分離部ex303とを備える。また、テレビex300は、音声データ及び映像データそれぞれを復号する、またはそれぞれの情報を符号化する音声信号処理部ex304及び映像信号処理部ex305を有する信号処理部ex306と、復号した音声信号を出力するスピーカex307及び復号した映像信号を表示するディスプレイ等の表示部ex308を有する出力部ex309とを有する。さらに、テレビex300は、ユーザ操作の入力を受け付ける操作入力部ex312等を有するインタフェース部ex317を有する。さらに、テレビex300は、各部を統括的に制御する制御部ex310、各部に電力を供給する電源回路部ex311を有する。
 なお、インタフェース部ex317は、操作入力部ex312以外に、リーダ/レコーダex218等の外部機器と接続されるブリッジex313と、SDカード等の記録メディアex216を装着可能とするためのスロット部ex314と、ハードディスク等の外部記録メディアと接続するためのドライバex315と、電話網と接続するモデムex316等とを有していてもよい。また、記録メディアex216は、格納する不揮発性/揮発性の半導体メモリ素子により電気的に情報の記録を可能としたものである。テレビex300の各部は同期バスを介して互いに接続されている。
 続いて、まず、テレビex300がアンテナex204等により外部から取得したデータを復号し、再生する構成について説明する。
 テレビex300は、リモートコントローラex220等からのユーザ操作を受け、CPU等を有する制御部ex310の制御に基づいて、変調/復調部ex302で復調した映像データ、音声データを多重/分離部ex303で分離する。さらにテレビex300は、分離した音声データを音声信号処理部ex304で復号し、分離した映像データを映像信号処理部ex305で上記各実施の形態で説明した復号方法を用いて復号する。復号した音声信号、映像信号は、それぞれ出力部ex309から外部に向けて出力される。出力する際には、音声信号と映像信号が同期して再生するよう、バッファex318、ex319等に一旦これらの信号を蓄積するとよい。
 なお、テレビex300は、放送等からではなく、磁気/光ディスク、SDカード等の記録メディアex215、ex216から符号化された符号化ビットストリームを読み出してもよい。
 次に、テレビex300が音声信号や映像信号を符号化し、外部に送信または記録メディア等に書き込む構成について説明する。
 テレビex300は、リモートコントローラex220等からのユーザ操作を受け、制御部ex310の制御に基づいて、音声信号処理部ex304で音声信号を符号化し、映像信号処理部ex305で映像信号を上記各実施の形態で説明した符号化方法を用いて符号化する。符号化した音声信号、映像信号は多重/分離部ex303で多重化され外部に出力される。多重化する際には、音声信号と映像信号が同期するように、バッファex320、ex321等に一旦これらの信号を蓄積するとよい。なお、バッファex318~ex321は図示しているように複数備えていてもよいし、1つ以上のバッファを共有する構成であってもよい。さらに、図示している以外に、例えば変調/復調部ex302や多重/分離部ex303の間等でもシステムのオーバフロー、アンダーフローを避ける緩衝材としてバッファにデータを蓄積することとしてもよい。
 また、テレビex300は、放送等や記録メディア等から音声データ、映像データを取得する以外に、マイクやカメラのAV入力を受け付ける構成を備え、それらから取得したデータに対して符号化処理を行ってもよい。
 なお、ここではテレビex300は上記の符号化処理、多重化、及び外部出力ができる構成として説明したが、これらの処理を行うことはできず、上記受信、復号処理、外部出力のみが可能な構成であってもよい。
 また、リーダ/レコーダex218で記録メディアから符号化ビットストリームを読み出す、または書き込む場合には、上記復号処理または符号化処理はテレビex300、リーダ/レコーダex218のいずれで行ってもよいし、テレビex300とリーダ/レコーダex218が互いに分担して行ってもよい。
 一例として、光ディスクからデータの読み込みまたは書き込みをする場合の情報再生/記録部ex400の構成を図29に示す。図29は、光ディスクである記録メディアに情報の読み書きを行う情報再生/記録部の構成例を示すブロック図である。
 図29に示す情報再生/記録部ex400は、以下に説明する要素ex401~ex407を備える。
 光ヘッドex401は、光ディスクである記録メディアex215の記録面にレーザスポットを照射して情報を書き込み、記録メディアex215の記録面からの反射光を検出して情報を読み込む。
 変調記録部ex402は、光ヘッドex401に内蔵された半導体レーザを電気的に駆動し記録データに応じてレーザ光の変調を行う。
 再生復調部ex403は、光ヘッドex401に内蔵されたフォトディテクタにより記録面からの反射光を電気的に検出した再生信号を増幅し、記録メディアex215に記録された信号成分を分離して復調し、必要な情報を再生する。
 バッファex404は、記録メディアex215に記録するための情報及び記録メディアex215から再生した情報を一時的に保持する。
 ディスクモータex405は記録メディアex215を回転させる。
 サーボ制御部ex406は、ディスクモータex405の回転駆動を制御しながら光ヘッドex401を所定の情報トラックに移動させ、レーザスポットの追従処理を行う。
 システム制御部ex407は、情報再生/記録部ex400全体の制御を行う。上記の読み出しや書き込みの処理はシステム制御部ex407が、バッファex404に保持された各種情報を利用し、また必要に応じて新たな情報の生成・追加を行うと共に、変調記録部ex402、再生復調部ex403、サーボ制御部ex406を協調動作させながら、光ヘッドex401を通して、情報の記録再生を行うことにより実現される。システム制御部ex407は例えばマイクロプロセッサで構成され、読み出し書き込みのプログラムを実行することでそれらの処理を実行する。
 なお、上記では、光ヘッドex401はレーザスポットを照射するとして説明したが、近接場光を用いてより高密度な記録を行う構成であってもよい。
 図30は、光ディスクである記録メディアの構造例を示す図である。図30には、光ディスクである記録メディアex215の模式図が示されている。
 記録メディアex215の記録面には案内溝(グルーブ)がスパイラル状に形成され、情報トラックex230には、予めグルーブの形状の変化によってディスク上の絶対位置を示す番地情報が記録されている。この番地情報は、データを記録する単位である記録ブロックex231の位置を特定するための情報を含む。記録や再生を行う装置において情報トラックex230を再生し、この番地情報を読み取ることで記録ブロックを特定することができる。また、記録メディアex215は、データ記録領域ex233、内周領域ex232、外周領域ex234を含んでいる。ユーザデータを記録するために用いる領域がデータ記録領域ex233であり、データ記録領域ex233より内周または外周に配置されている内周領域ex232と外周領域ex234は、ユーザデータの記録以外の特定用途に用いられる。
 情報再生/記録部ex400は、このような記録メディアex215のデータ記録領域ex233に対して、符号化された音声データ、映像データまたはそれらのデータを多重化した符号化データの読み書きを行う。
 なお、上記では、1層のDVD、BD等の光ディスクを例に挙げ説明したが、これらに限ったものではなく、多層構造であって表面以外にも記録可能な光ディスクであってもよい。また、ディスクの同じ場所にさまざまな異なる波長の色の光を用いて情報を記録したり、さまざまな角度から異なる情報の層を記録したりするなど、多次元的な記録/再生を行う構造の光ディスクであってもよい。
 また、デジタル放送用システムex200において、アンテナex205を有する車ex210で放送衛星ex202等からデータを受信し、車ex210が有するカーナビゲーションex211等の表示装置に動画を再生することも可能である。なお、カーナビゲーションex211の構成は例えば図28に示す構成のうち、GPS受信部を加えた構成が考えられ、同様なことがコンピュータex111や携帯電話ex114等でも考えられる。また、上記携帯電話ex114等の端末は、テレビex300と同様に、符号化器・復号器を両方持つ送受信型端末の他に、符号化器のみの送信端末、復号器のみの受信端末という3通りの実装形式が考えられる。
 このように、上記各実施の形態で示した動画像符号化方法あるいは動画像復号方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記各実施の形態で説明した効果を得ることができる。
 また、本発明はかかる上記実施形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
 (実施の形態9)
 上記各実施の形態で示した動画像符号化方法及び装置、動画像復号方法及び装置は、典型的には集積回路であるLSIで実現される。一例として、図31に1チップ化されたLSIex500の構成を示す。ここで、図31は、各実施の形態の動画像符号化方法及び動画像復号方法を実現する集積回路の構成例を示すブロック図である。
 LSIex500は、以下に説明する要素ex501~ex509を備え、各要素はバスex510を介して接続している。電源回路部ex505は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
 例えば符号化処理を行う場合には、LSIex500は、CPUex502、メモリコントローラex503、ストリームコントローラex504等を有する制御部ex501の制御に基づいて、AV I/Oex509によりマイクex117やカメラex113等からAV信号を入力する。入力されたAV信号は、一旦SDRAM等の外部のメモリex511に蓄積される。制御部ex501の制御に基づいて、蓄積したデータは処理量や処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られ、信号処理部ex507において音声信号の符号化及び/または映像信号の符号化が行われる。ここで映像信号の符号化処理は上記各実施の形態で説明した符号化処理である。信号処理部ex507ではさらに、場合により符号化された音声データと符号化された映像データを多重化するなどの処理を行い、ストリームI/Oex506から外部に出力する。この出力されたビットストリームは、基地局ex107に向けて送信されたり、または記録メディアex215に書き込まれたりする。なお、多重化する際には同期するよう、一旦バッファex508にデータを蓄積するとよい。
 図32は、ここでの符号化処理を簡単に示すブロック図である。すなわち、図32は、集積回路で実現される各実施の形態の動画像符号化処理を示すブロック図である。図32に示すように、まず、入力信号と予測信号との差分である予測誤差信号は変換部ex601で変換され、量子化部ex602で量子化される。量子化係数はエントロピー符号化部ex606でエントロピー符号化され、符号化信号が出力される。この出力は、図28でテレビex300を例に挙げて説明したように、符号化された音声データと多重化するために一旦バッファex508やメモリex511に蓄積される構成であってもよい。逆量子化部ex604、逆変換部ex605、予測部ex608は、対象信号とそれ以前の信号から生成された予測信号の比較を可能とする遅延部として動作する。
 なお、LSIex500上では、緩衝材として量子化係数を一端内部のバッファex508やメモリex511に蓄積するなど、処理のオーバフロー、アンダーフローがおきないように調整するとよい。量子化係数以外にも処理量や処理速度に応じて、データを複数に分けて並列に処理をし、内部や外部のメモリ等の記録部に処理中のデータを適宜蓄積しながら処理を調整するとよい。
 以上の処理は制御部ex501の制御に基づいて行う。
 また、例えば復号処理を行う場合には、LSIex500は、制御部ex501の制御に基づいて、ストリームI/Oex506によって基地局ex107を介して、または記録メディアex215から読み出して得た符号化データを一旦メモリex511等に蓄積する。制御部ex501の制御に基づいて、蓄積したデータは処理量や処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られ、信号処理部ex507において音声データの復号及び/または映像データの復号が行われる。ここで映像信号の復号処理は上記各実施の形態で説明した復号処理である。さらに、場合により復号された音声信号と復号された映像信号を同期して再生できるようそれぞれの信号を一旦バッファex508等に蓄積するとよい。復号された出力信号はメモリex511等を適宜介しながら、携帯電話ex114、ゲーム機ex115、テレビex300等の各出力部から出力される。
 図33は、ここでの復号処理を簡単に示すブロック図である。すなわち、図33は、集積回路で実現される各実施の形態の動画像復号処理を示すブロック図である。
 図33に示すように、まず入力された符号化信号はエントロピー復号部ex701でエントロピー復号される。エントロピー復号により得た量子化係数は逆量子化部ex703で逆量子化され、逆変換部ex704で逆変換される。ここでの逆変換とは、復号処理における変換という意味であり、必ずしも符号化処理における変換の逆に限定されるものではない。復号変換入力は、予測信号を加えて復号信号として外部に出力される。メモリex511は、復号信号を蓄積し、後続の符号化信号の復号における参照を可能とする遅延部として動作する。予測部ex705は、メモリex511に蓄積された復号済みの復号信号に基づいて予測信号を生成する。外部への出力の際には図28でテレビex300を例に挙げて説明したように、復号された音声信号と同期して表示するために、一旦バッファex508や外部のメモリex511に蓄積される構成であってもよい。ここでも量子化係数をバッファex508やメモリex511に蓄積するなど、処理のオーバフロー、アンダーフローがおきないように、所定の処理単位に分割しながら並列に処理を行うとよい。以上の処理は制御部ex501の制御に基づいて行う。
 なお、上記では、メモリex511がLSIex500の外部の構成として説明したが、LSIex500の内部に含まれる構成であってもよい。バッファex508も1つに限ったものではなく、複数のバッファを備えていてもよい。また、LSIex500は1チップ化されてもよいし、複数チップ化されてもよい。
 また、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSIまたはウルトラLSIと呼称されることもある。
 また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
 さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
 以上のように、上記各実施の形態で説明した動画像符号化装置、動画像復号装置、動画像符号化方法または動画像復号方法は、アプリケーションとしても応用できる。
 なお、実施の形態1において図1に示される復号装置100を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに復号回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
 また、同様に、実施の形態2において図6に示される復号装置200を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに復号回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
 また、同様に、実施の形態3において図9に示される復号装置300を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに復号回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
 また、同様に、実施の形態4において図16に示される復号装置400を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに復号回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
 また、同様に、実施の形態5において図18に示される符号化装置500を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに符号化回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
 また、同様に、実施の形態6において図22に示される符号化装置600を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに符号化回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
 また、同様に、実施の形態7において図24に示される符号化装置700を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに符号化回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
 また、実施の形態1~7において、参照画像と動き補償フィルタ係数をメモリ109、または、メモリ509に格納するとしたが、参照画像と動き補償フィルタ係数は必ずしも同じメモリに格納されていなくても良い。
 また、上述したように、実施の形態1~7において、メモリ109、及び、メモリ509は、典型的にはDDRで構成されるが、必ずしもDDRで構成される必要はなく、SRAMで構成されていてもよいし、フリップフロップで構成されていても良い。つまり、記憶可能な素子で構成されていれば良い。
 以上、本発明の動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
 本発明は、動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法に利用でき、特に、携帯電話、DVD装置、BD装置、パソコン、テレビ電話、セットトップボックス、デジタルテレビ、自動車及びセキュリティシステムなど動画像を構成するピクチャを復号あるいは表示する機器において有用である。
  101 復号部
  102、502 フィルタ係数転送制御部
  103、503 フィルタ係数記憶部
  104、504 フィルタ係数記憶状態管理テーブル
  105、505 参照画像転送制御部
  106、506 参照画像記憶部
  107 動き補償部
  108 加算器
  109、509 メモリ
  201、601 フィルタ係数参照履歴管理テーブル
  301 前復号部
  302 フィルタ係数統計情報管理テーブル
  401、701 可逆符号化部
  402、702 可逆復号部
  501 フィルタ係数生成部
  507 動き検出部
  508 減算器
  510 符号化部
  ex100 コンテンツ供給システム
  ex101 インターネット
  ex102 インターネットサービスプロバイダ
  ex103 ストリーミングサーバ
  ex104 電話網
  ex106、ex107、ex108、ex109、ex110 基地局
  ex111 コンピュータ
  ex112 PDA
  ex113 カメラ
  ex114 携帯電話
  ex115 ゲーム機
  ex116 カメラ
  ex117 マイク
  ex200 デジタル放送用システム
  ex201 放送局
  ex202 放送衛星
  ex203 ケーブル
  ex204、ex205 アンテナ
  ex210 車
  ex211 カーナビゲーション
  ex212 再生装置
  ex213 モニタ
  ex215、ex216 記録メディア
  ex217 セットトップボックス
  ex218 リーダ/レコーダ
  ex219 モニタ
  ex230 情報トラック
  ex231 記録ブロック
  ex232 内周領域
  ex233 データ記録領域
  ex234 外周領域
  ex300 テレビ
  ex301 チューナ
  ex302 変調/復調部
  ex303 多重/分離部
  ex304 音声信号処理部
  ex305 映像信号処理部
  ex306 信号処理部
  ex307 スピーカ
  ex308 表示部
  ex309 出力部
  ex310 制御部
  ex311 電源回路部
  ex312 操作入力部
  ex313 ブリッジ
  ex314 スロット部
  ex315 ドライバ
  ex316 モデム
  ex317 インタフェース部
  ex318、ex319 バッファ
  ex400 情報再生/記録部
  ex401 光ヘッド
  ex402 変調記録部
  ex403 再生復調部
  ex404 バッファ
  ex405 ディスクモータ
  ex406 サーボ制御部
  ex407 システム制御部
  ex500 LSI
  ex501 制御部
  ex502 CPU
  ex503 メモリコントローラ
  ex504 ストリームコントローラ
  ex505 電源回路部
  ex506 ストリームI/O
  ex507 信号処理部
  ex508 バッファ
  ex509 AV I/O
  ex510 バス
  ex511 メモリ
  ex601 変換部
  ex602 量子化部
  ex604 逆量子化部
  ex605 逆変換部
  ex606 エントロピー符号化部
  ex608 予測部
  ex701 エントロピー復号部
  ex703 逆量子化部
  ex704 逆変換部
  ex705 予測部

Claims (22)

  1.  動画像が動き補償を用いて符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う動画像復号装置であって、
     前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を復号する復号部と、
     前記復号部により復号された前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数を保持するためのメモリと、
     前記メモリに保持されている複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な一部の動き補償フィルタ係数を保持するためのフィルタ係数記憶部と、
     前記フィルタ係数記憶部に保持された一部の動き補償フィルタ係数を用いて動き補償を行う動き補償部と、
     前記復号部により復号された複数の動き補償フィルタ係数を前記メモリに書き出し、前記メモリから前記フィルタ係数記憶部に、前記一部の動き補償フィルタ係数を転送する転送制御部とを備える
     動画像復号装置。
  2.  前記転送制御部は、前記フィルタ係数記憶部が前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に、前記一部の動き補償フィルタ係数を転送する
     請求項1に記載の動画像復号装置。
  3.  前記復号部は、前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数と、前記一部の動き補償フィルタ係数を特定する特定情報とを少なくとも復号し、
     前記動画像復号装置は、さらに、
     前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記フィルタ係数記憶部が保持しているかどうかを示す情報を管理する記憶状態管理部を備え、
     前記転送制御部は、前記記憶状態管理部が管理する情報に基づいて、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する
     請求項2に記載の動画像復号装置。
  4.  前記転送制御部は、
     前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であって前記メモリから最も古く転送された動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから転送する
     請求項3に記載の動画像復号装置。
  5.  前記転送制御部は、
     前記記憶状態管理部が管理する情報を参照して、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記フィルタ係数記憶部が保持していない場合のみ、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であって前記メモリから最も新しく転送された動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから転送する
     請求項3に記載の動画像復号装置。
  6.  前記転送制御部は、
     前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域をランダムに選択して、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから選択された前記領域に転送する
     請求項3に記載の動画像復号装置。
  7.  前記動画像復号装置は、さらに、
     前記符号化ストリームに含まれる複数の動き補償フィルタ係数毎の、復号開始から参照された回数を示す利用履歴情報を管理する参照管理部を備え、
     前記転送制御部は、前記記憶状態管理部が管理する情報と前記参照管理部が管理する情報とに基づいて、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する
     請求項3に記載の動画像復号装置。
  8.  前記転送制御部は、
     前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記参照管理部が管理する情報を参照して、前記メモリから前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であって最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を転送する
     請求項7に記載の動画像復号装置。
  9.  前記転送制御部は、
     前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記参照管理部が管理する情報を参照して、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であって現在から所定期間の過去に最も利用されていない動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから転送する
     請求項7に記載の動画像復号装置。
  10.  前記転送制御部は、
     前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記参照管理部が管理する情報を参照して、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であって現在から所定期間の過去に最も利用されている動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから転送する
     請求項7に記載の動画像復号装置。
  11.  前記転送制御部は、
     前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記参照管理部が管理する情報を参照して、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であってこれまでに最も参照回数が多い動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから転送する
     請求項7に記載の動画像復号装置。
  12.  前記復号部は、前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数と、前記一部の動き補償フィルタ係数を特定する前記特定情報とを復号し、
     前記動画像復号装置は、さらに、
     前記復号部よりも先行して前記符号化ストリームから、少なくとも前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数の一部を復号する前復号部と、
     前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記フィルタ係数記憶部が保持しているかどうかの情報を管理する記憶状態管理部と、
     前記前復号部により復号され、かつ、前記復号部によりこれから復号される前記動き補償フィルタ係数毎の利用状況を管理する統計情報管理部とを備え、
     前記転送制御部は、
     前記記憶状態管理部が管理する情報と前記統計情報管理部が管理する利用状況とに基づいて、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する
     請求項2に記載の動画像復号装置。
  13.  前記転送制御部は、
     前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記統計情報管理部が管理する利用状況を参照して、前記メモリから前記フィルタ係数記憶部の今後最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を転送する
     請求項12に記載の動画像復号装置。
  14.  前記転送制御部は、
     前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記統計情報管理部が管理する利用状況を参照して、前記メモリから前記フィルタ係数記憶部の今後の所定の期間参照回数が少ない動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を転送する
     請求項12に記載の動画像復号装置。
  15.  前記動画像復号装置は、さらに、
     前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数を可逆符号化する可逆符号化部と、
     前記可逆符号化部により可逆符号化された前記複数の動き補償フィルタ係数のうち、前記一部の動き補償フィルタ係数を可逆復号し、可逆復号した前記一部の動き補償フィルタ係数を前記転送制御部を介して前記フィルタ係数記憶部に書き込む可逆復号部とを備える
     請求項2~14のいずれか1項に記載の動画像復号装置。
  16.  符号化対象画像と参照画像とを用いて、動き補償を伴う符号化である動き補償符号化を行う動画像符号化装置であって、
     前記動き補償符号化に利用される複数の動き補償フィルタ係数を生成する生成部と、
     前記生成部より生成された複数の動き補償フィルタ係数を保持するためのメモリと、
     前記メモリに保持されている複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な一部の動き補償フィルタ係数を保持するためのフィルタ係数記憶部と、
     前記フィルタ係数記憶部に保持されている前記一部の動き補償フィルタ係数を用いて前記符号化対象画像と前記参照画像とから前記動き補償を行って予測画像を生成する動き検出部と、
     前記生成部により生成された複数の動き補償フィルタ係数を前記メモリに書き出し、前記フィルタ係数記憶部が前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する転送制御部とを備える
     動画像符号化装置。
  17.  前記動き検出部は、少なくとも前記動き補償に用いる一部の動き補償フィルタ係数を特定する特定情報を生成し、
     前記動画像符号化装置は、さらに、
     前記フィルタ係数記憶部が前記特定情報により特定された前記一部の動き補償フィルタ係数を保持しているかどうかを示す情報を管理する記憶状態管理部を備え、
     前記転送制御部は、
     前記記憶状態管理部が管理する情報に基づいて、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する
     請求項16に記載の動画像符号化装置。
  18.  前記動き検出部は、少なくとも前記動き補償に用いる一部の動き補償フィルタ係数を特定する特定情報を生成し、
     前記動画像符号化装置は、さらに、
     動き補償に利用する前記動き補償フィルタ係数毎の、前記動き補償の開始から参照された回数を示す利用履歴情報を管理する参照管理部と、
     前記特定情報により特定された前記一部の動き補償フィルタ係数を前記フィルタ係数記憶部が保持しているかどうかを示す情報を管理する記憶状態管理部とを備え、
     前記転送制御部は、
     前記参照管理部が管理する利用履歴情報と前記記憶状態管理部が管理する情報とに基づいて、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する
     請求項16に記載の動画像符号化装置。
  19.  前記動画像符号化装置は、さらに、
     前記複数の動き補償フィルタ係数を可逆符号化する可逆符号化部と、
     前記可逆符号化部により可逆符号化された複数の動き補償フィルタ係数のうち、前記一部の動き補償フィルタ係数を可逆復号し、可逆復号した前記一部の動き補償フィルタ係数を、前記転送制御部を介して前記フィルタ係数記憶部に書き込む可逆復号部とを備え、
     前記転送制御部は、前記可逆符号化された複数の動き補償フィルタ係数を前記メモリに書き出し、前記メモリから前記一部の動き補償フィルタ係数を読み出し、前記可逆復号部に転送する
     請求項16~18のいずれか1項に記載の動画像符号化装置。
  20.  動き補償を用いて動画像が符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う集積回路であって、
     前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を復号する復号部と、
     前記復号部により復号された前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数を保持するためのメモリと、
     前記メモリに保持されている複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な一部の動き補償フィルタ係数を保持するためのフィルタ係数記憶部と、
     前記フィルタ係数記憶部に保持された一部の動き補償フィルタ係数を用いて動き補償を行う動き補償部と、
     前記復号部により復号された複数の動き補償フィルタ係数を前記メモリに書き出し、前記フィルタ係数記憶部が前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する転送制御部とを備える
     動画像復号回路。
  21.  動き補償を用いて動画像が符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う動画像復号方法であって、
     前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を復号する復号ステップと、
     前記復号ステップにおいて復号された前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数をメモリに保持するためのメモリ保持ステップと、
     前記メモリに保持されている前記複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な一部の動き補償フィルタ係数をフィルタ係数記憶部に保持するためのフィルタ係数記憶ステップと、
     前記フィルタ係数記憶部に保持された一部の動き補償フィルタ係数を用いて動き補償を行う動き補償ステップと、
     前記復号ステップにおいて復号された複数の動き補償フィルタ係数を前記メモリに書き出し、前記フィルタ係数記憶部が前記動き補償を行うときに必要な前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に前記動き補償を行うときに必要な前記一部の動き補償フィルタ係数を転送する転送制御ステップとを含む
     動画像復号方法。
  22.  符号化ストリームから、動き補償を伴う復号に利用される複数の動き補償フィルタ係数を復号する復号部と、
     前記復号部よりも先行して、前記符号化ストリームから前記複数の動き補償フィルタ係数を復号する前復号部と、
     前記復号部により復号された前記複数の動き補償フィルタ係数を保持するためのメモリと、
     前記復号部により復号された前記複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な一部の動き補償フィルタ係数を保持するためのフィルタ係数記憶部と、
     前記前復号部により復号された前記動き補償フィルタ係数に基づいて、前記一部の動き補償フィルタ係数を前記フィルタ係数記憶部に保持させる制御部とを備える
     動画像復号装置。
     
     
PCT/JP2011/001234 2010-03-09 2011-03-02 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法 WO2011111341A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201180001378.8A CN102349299B (zh) 2010-03-09 2011-03-02 动态图像解码装置、动态图像编码装置、动态图像解码电路及动态图像解码方法
JP2011534438A JP5659160B2 (ja) 2010-03-09 2011-03-02 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法
US13/255,267 US8995530B2 (en) 2010-03-09 2011-03-02 Moving image decoding apparatus, moving image coding apparatus, moving image decoding circuit, and moving image decoding method
US14/629,747 US9641868B2 (en) 2010-03-09 2015-02-24 Moving image decoding apparatus, moving image coding apparatus, moving image decoding circuit, and moving image decoding method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010052370 2010-03-09
JP2010-052370 2010-03-09

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US13/255,267 A-371-Of-International US8995530B2 (en) 2010-03-09 2011-03-02 Moving image decoding apparatus, moving image coding apparatus, moving image decoding circuit, and moving image decoding method
US14/629,747 Division US9641868B2 (en) 2010-03-09 2015-02-24 Moving image decoding apparatus, moving image coding apparatus, moving image decoding circuit, and moving image decoding method

Publications (1)

Publication Number Publication Date
WO2011111341A1 true WO2011111341A1 (ja) 2011-09-15

Family

ID=44563177

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/001234 WO2011111341A1 (ja) 2010-03-09 2011-03-02 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法

Country Status (4)

Country Link
US (2) US8995530B2 (ja)
JP (2) JP5659160B2 (ja)
CN (1) CN102349299B (ja)
WO (1) WO2011111341A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012137890A1 (ja) * 2011-04-05 2012-10-11 シャープ株式会社 画像フィルタ装置、復号装置、符号化装置、および、データ構造
WO2013105458A1 (ja) * 2012-01-12 2013-07-18 ソニー株式会社 画像処理装置および方法
WO2013105457A1 (ja) * 2012-01-12 2013-07-18 ソニー株式会社 画像処理装置および方法
JP2013529875A (ja) * 2010-06-25 2013-07-22 クゥアルコム・インコーポレイテッド 圧縮ビットストリームへの交換補間フィルタ係数の組み込み
JP2018006829A (ja) * 2016-06-27 2018-01-11 日本電信電話株式会社 映像フィルタリング方法、映像フィルタリング装置及び映像フィルタリングプログラム

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5570363B2 (ja) * 2010-09-22 2014-08-13 Kddi株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム
JP5798375B2 (ja) 2011-05-19 2015-10-21 株式会社トプコン 全周カメラ
US10051289B2 (en) * 2011-11-04 2018-08-14 Qualcomm Incorporated Adaptive center band offset filter for video coding
JP6058963B2 (ja) 2012-10-02 2017-01-11 株式会社トプコン 全周カメラ
CN105165011A (zh) * 2013-02-25 2015-12-16 三星电子株式会社 用于考虑存储器带宽和计算量的可伸缩视频编码的装置和方法以及用于可伸缩视频解码的装置和方法
KR101980537B1 (ko) * 2013-07-11 2019-05-22 삼성전자주식회사 영상 처리 유닛, 초음파 영상 장치 및 영상 처리 방법
CN108974488B (zh) * 2018-08-31 2020-08-04 杭州当虹科技股份有限公司 一种动态批量图文包装系统及使用方法
RU2767973C1 (ru) 2019-03-08 2022-03-22 ДжейВиСиКЕНВУД Корпорейшн Устройство для кодирования видео, способ кодирования видео, устройство для декодирования видео и способ декодирования видео
CN114071158A (zh) * 2020-07-29 2022-02-18 腾讯科技(深圳)有限公司 视频编解码中的运动信息列表构建方法、装置及设备
CN114222118B (zh) * 2021-12-17 2023-12-12 北京达佳互联信息技术有限公司 编码方法及装置、解码方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06260889A (ja) * 1993-03-05 1994-09-16 Sony Corp フィルタ回路
JPH09298753A (ja) * 1996-03-06 1997-11-18 Sony Corp 動画像符号化方法及び動画像符号化装置
JP2003523654A (ja) * 1999-12-07 2003-08-05 ソニー エレクトロニクス インク 時間的に前方及び後方の動きを分類する方法及び装置
JP2004165785A (ja) * 2002-11-11 2004-06-10 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラム,画像復号プログラムおよびそのプログラムを記録した記録媒体

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK2938071T3 (en) 2001-11-29 2018-01-22 Godo Kaisha Ip Bridge 1 METHOD OF REMOVING CODING PREVENTION
CA2435757C (en) 2001-11-29 2013-03-19 Matsushita Electric Industrial Co., Ltd. Video coding distortion removal method and apparatus using a filter
CN1767656B (zh) * 2001-11-29 2013-02-20 松下电器产业株式会社 编码失真消除方法、视频编码方法、视频解码方法、装置
US20040076333A1 (en) * 2002-10-22 2004-04-22 Huipin Zhang Adaptive interpolation filter system for motion compensated predictive video coding
JP4436782B2 (ja) 2004-05-14 2010-03-24 パナソニック株式会社 動き補償装置
US7881376B2 (en) 2004-05-14 2011-02-01 Panasonic Corporation Motion compensation apparatus
CN101543081B (zh) 2006-11-30 2012-02-22 株式会社Ntt都科摩 动态图像编码装置、动态图像编码方法、动态图像解码装置、动态图像解码方法
EP2048886A1 (en) 2007-10-11 2009-04-15 Panasonic Corporation Coding of adaptive interpolation filter coefficients
US8831086B2 (en) * 2008-04-10 2014-09-09 Qualcomm Incorporated Prediction techniques for interpolation in video coding
JP5017181B2 (ja) * 2008-06-03 2012-09-05 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号化装置、動画像復号化方法及び動画像復号化プログラム
JPWO2010038858A1 (ja) 2008-10-03 2012-03-01 ソニー株式会社 画像処理装置および方法
US8411749B1 (en) * 2008-10-07 2013-04-02 Zenverge, Inc. Optimized motion compensation and motion estimation for video coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06260889A (ja) * 1993-03-05 1994-09-16 Sony Corp フィルタ回路
JPH09298753A (ja) * 1996-03-06 1997-11-18 Sony Corp 動画像符号化方法及び動画像符号化装置
JP2003523654A (ja) * 1999-12-07 2003-08-05 ソニー エレクトロニクス インク 時間的に前方及び後方の動きを分類する方法及び装置
JP2004165785A (ja) * 2002-11-11 2004-06-10 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラム,画像復号プログラムおよびそのプログラムを記録した記録媒体

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013529875A (ja) * 2010-06-25 2013-07-22 クゥアルコム・インコーポレイテッド 圧縮ビットストリームへの交換補間フィルタ係数の組み込み
US9154807B2 (en) 2010-06-25 2015-10-06 Qualcomm Incorporated Inclusion of switched interpolation filter coefficients in a compressed bit-stream
WO2012137890A1 (ja) * 2011-04-05 2012-10-11 シャープ株式会社 画像フィルタ装置、復号装置、符号化装置、および、データ構造
WO2013105458A1 (ja) * 2012-01-12 2013-07-18 ソニー株式会社 画像処理装置および方法
WO2013105457A1 (ja) * 2012-01-12 2013-07-18 ソニー株式会社 画像処理装置および方法
JP2018006829A (ja) * 2016-06-27 2018-01-11 日本電信電話株式会社 映像フィルタリング方法、映像フィルタリング装置及び映像フィルタリングプログラム

Also Published As

Publication number Publication date
US9641868B2 (en) 2017-05-02
JPWO2011111341A1 (ja) 2013-06-27
CN102349299A (zh) 2012-02-08
CN102349299B (zh) 2015-10-21
JP2015080238A (ja) 2015-04-23
US8995530B2 (en) 2015-03-31
US20150172723A1 (en) 2015-06-18
JP5659160B2 (ja) 2015-01-28
US20120147959A1 (en) 2012-06-14

Similar Documents

Publication Publication Date Title
JP5659160B2 (ja) 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法
JP5518069B2 (ja) 画像復号装置、画像符号化装置、画像復号方法、画像符号化方法、プログラムおよび集積回路
JP6531924B2 (ja) 動画像復号方法及び動画像復号装置
JP5485983B2 (ja) 動画像符号化方法、動画像復号方法、動画像符号化装置および動画像復号装置
JP5574345B2 (ja) 符号化方法、エラー検出方法、復号方法、符号化装置、エラー検出装置及び復号装置
JP5588438B2 (ja) 画像符号化方法及び画像符号化装置
WO2010087157A1 (ja) 画像符号化方法及び画像復号方法
US8718149B2 (en) Image coding method and image decoding method
WO2010143427A1 (ja) 画像符号化方法、画像復号方法、およびそれらの装置
WO2014050030A1 (ja) 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
JPWO2010026770A1 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、システム、プログラム、及び集積回路
KR102130046B1 (ko) 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치
JP5679980B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
JP5546044B2 (ja) 画像復号装置、画像符号化装置、画像復号回路及び画像復号方法
WO2012114711A1 (ja) 画像符号化方法および画像復号方法
JP5468604B2 (ja) 画像復号装置、集積回路、画像復号方法及び画像復号システム
WO2013076897A1 (ja) 画像処理装置および画像処理方法
JP2011182132A (ja) 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、集積回路およびプログラム
KR102142014B1 (ko) 동화상 부호화 방법, 동화상 복호 방법, 동화상 부호화 장치, 동화상 복호 장치, 및 동화상 부호화 복호 장치
WO2012095930A1 (ja) 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置

Legal Events

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

Ref document number: 201180001378.8

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2011534438

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 13255267

Country of ref document: US

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

Ref document number: 11753007

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11753007

Country of ref document: EP

Kind code of ref document: A1