WO2011089798A1 - 動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置 - Google Patents

動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置 Download PDF

Info

Publication number
WO2011089798A1
WO2011089798A1 PCT/JP2010/072472 JP2010072472W WO2011089798A1 WO 2011089798 A1 WO2011089798 A1 WO 2011089798A1 JP 2010072472 W JP2010072472 W JP 2010072472W WO 2011089798 A1 WO2011089798 A1 WO 2011089798A1
Authority
WO
WIPO (PCT)
Prior art keywords
macroblocks
horizontal
vertical direction
encoding
image
Prior art date
Application number
PCT/JP2010/072472
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 JP2011550808A priority Critical patent/JP5260757B2/ja
Priority to CN201080061815.0A priority patent/CN102714733B/zh
Priority to US13/519,874 priority patent/US20120294373A1/en
Priority to EP10843962.1A priority patent/EP2528331B1/en
Publication of WO2011089798A1 publication Critical patent/WO2011089798A1/ja
Priority to US15/648,180 priority patent/US10986373B2/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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements

Definitions

  • the present invention relates to a moving image encoding method, a moving image decoding method, a moving image encoding device, and a moving image decoding device, and particularly to reduce an increase in storage capacity of a memory for storing peripheral macroblock information. It relates to effective technology.
  • MPEG-2 A general moving picture compression method called MPEG-2 is a standard standardized by ISO / IEC 13818-2.
  • MPEG-2 is based on the principle of reducing video storage capacity and required bandwidth by deleting redundant information from the video stream.
  • MPEG is an abbreviation for Moving
  • the MPEG-2 standard defines only the bitstream syntax (compressed encoded data string rules or encoded data bitstream configuration method) and decoding process, so that satellite broadcasting services, cable television, It is flexible enough to be used in various situations such as interactive television and the Internet.
  • the video signal is sampled and quantized to define the color and luminance components of each pixel of the digital video.
  • a value indicating a component of color and luminance is converted into a frequency value using a discrete cosine transform (DCT: Discrete Cosine Transform).
  • DCT discrete cosine transform
  • the transform coefficients obtained by DCT have different frequencies depending on the brightness and color of the picture.
  • the quantized DCT transform coefficients are encoded by variable length coding (VLC) that further compresses the video stream.
  • VLC variable length coding
  • inter-frame predictive coding is used to achieve high coding efficiency using temporal correlation.
  • Is used.
  • the frame encoding mode can be predicted from an I frame that is encoded without using correlation between frames, a P frame that is predicted from one previously encoded frame, and two frames that are encoded in the past. There are B frames.
  • a motion-compensated reference image (predicted image) is subtracted from the moving image, and a prediction residual by this subtraction is encoded.
  • the encoding process includes processes of orthogonal transform such as DCT (Discrete Cosine Transform), quantization, and variable length encoding.
  • Motion compensation includes processing for spatially moving a reference frame for inter-frame prediction, and motion compensation processing is performed in units of blocks of a frame to be encoded. When there is no motion in the image content, there is no movement and the pixel at the same position as the predicted pixel is used. If there is motion, the most suitable block is searched, and the amount of movement is set as a motion vector.
  • the motion compensation block is a block of 16 pixels ⁇ 16 pixels / 16 pixels ⁇ 8 pixels in the MPEG-2 encoding method, and 16 pixels ⁇ 16 pixels / 16 pixels ⁇ 8 pixels / in the MPEG-4 encoding method. It is a block of 8 pixels x 8 pixels. In the MPEG-4 AVC (H.264) encoding method, it is 16 pixels x 16 pixels / 16 pixels x 8 pixels / 8 pixels x 16 pixels / 8 pixels x 8 pixels / 8 pixels. It is a block of ⁇ 4 pixels / 4 pixels ⁇ 8 pixels / 4 pixels ⁇ 4 pixels.
  • the encoding process described above is performed for each video screen (frame or field), and a block obtained by subdividing the screen (usually 16 pixels ⁇ 16 pixels, called a macro block (MB) in MPEG) is a processing unit. It will be. That is, the most similar block (predicted image) is selected from the reference image that has already been encoded for each block to be encoded, and the difference signal between the encoded image (block) and the predicted image is encoded (orthogonal transform, Quantized). The difference between the relative positions of the block to be encoded and the prediction signal in the screen is called a motion vector.
  • the following non-patent document 1 includes recommendation H.
  • a video encoding technique compliant with H.246 / AVC is described.
  • Video coding according to H.246 / AVC formats a video coding layer (VCL: Video ⁇ ⁇ Coding Layer) designed to effectively represent a video context, and formats a VCL representation of a video, while also transferring data using various transfer layers and storage media. Therefore, it is composed of a network abstraction layer (NCL: Network Abstraction Layer) that provides header information in an appropriate manner.
  • NCL Network Abstraction Layer
  • the following non-patent document 2 includes H.
  • the video coding layer (VCL) according to H.246 / AVC is described as following an approach called block-based hybrid video coding.
  • the VCL design is composed of macroblocks, slices, and slice blocks. Each picture is divided into a plurality of macroblocks of a fixed size, and each macroblock is a luminance picture component corresponding to a rectangular picture area of 16 ⁇ 16 samples. Each of the two color difference components includes a square sample area.
  • a picture can contain one or more slices, each slice is self-inclusive in the sense that it provides an active sequence and a picture parameter set, and the slice representation is basically from other slices. Thus, the syntax element can be analyzed from the bitstream and the value of the sample in the picture area.
  • MPEG-2 is an H.264 standard in the International Telecommunication Union (ITU). It is standardized as 262, and approved as ISO / IEC 13818-2 by the ISO / IEC. Furthermore, MPEG-4 is approved by the ISO / IEC as the international standard ISO / IEC 14496-2. Furthermore, MPEG-4 AVC (Advanced Video Coding) is an H.264 standard in the International Telecommunication Union (ITU). It is standardized as H.264, and is approved as ISO / IEC 14496-10 by ISO / IEC.
  • ITU International Telecommunication Union
  • the present inventors Prior to the present invention, the present inventors have conducted research and development on the next generation international standard video coding system.
  • one video screen of I frame, P frame, or B frame is divided into a plurality of small areas called macroblocks (MB) and is located at the upper left of one video screen.
  • the encoding process is sequentially performed on a plurality of macroblocks (MB) in the right direction and in the downward direction in accordance with the raster scan order starting from the macroblock (MB).
  • moving picture coding moving picture information is compressed using a spatial correlation between macroblocks (MB) in a moving picture screen.
  • one macro block (MB) when one macro block (MB) is processed, one macro block processed from information of the surrounding macro blocks (upward and leftward macroblocks of one video screen) ( MB) information is predicted, and only the difference from the prediction information is encoded in the moving image encoding process.
  • inter-block prediction is executed using the DC component and the AC component of the DCT coefficient as the pixel information of the block.
  • inter-block prediction of MPEG-4 AVC H.264 / AVC
  • inter-block prediction is executed with the DC component and the AC component of the pixel value of the block after the DCT conversion process.
  • a block consisting of an encoding reference block of an encoded frame and a plurality of blocks of a reference frame Matching is performed.
  • a search for a 2-pixel precision motion vector and a 1-pixel precision motion vector are performed on a plurality of macroblocks (MB) around one macroblock (MB) of the 4-pixel precision motion vector searched first.
  • a final motion vector is detected.
  • a total of 8 pixels on the left and right of the block boundary and a total of 8 pixels on the upper and lower sides are set to a predetermined value. It is necessary to rewrite the left and right total 8 pixels and the top and bottom total 8 pixels by executing the filter processing according to the arithmetic expression.
  • next-generation moving image encoding method that tends to increase the image size is required to support the above-described ultra-high-definition images.
  • information on a plurality of macro blocks (MB) around the processed macro block (MB) is necessary as described above. Therefore, it is necessary to integrate a built-in memory (on-chip SRAM) for storing peripheral macroblock information in a semiconductor chip of a moving image encoding / decoding processing device configured by a system large-scale semiconductor integrated circuit (system LSI).
  • system LSI system large-scale semiconductor integrated circuit
  • an external memory constituted by a synchronous dynamic random access memory (SDRAM) or the like is connected to a semiconductor chip of a moving picture encoding / decoding processing device constituted by a system LSI.
  • the external memory can store moving image data before the encoding process or decoding process and moving image data after the encoding process or decoding process.
  • the peripheral macroblock information is stored in the built-in memory (on-chip SRAM).
  • the amount of peripheral macroblock information that needs to be stored in the built-in memory (on-chip SRAM) increases as the image size increases, whereas the memory in the built-in memory (on-chip SRAM). The problem that the capacity is limited has been clarified by studies by the present inventors.
  • the present invention has been made as a result of the examination by the present inventors prior to the present invention as described above.
  • an object of the present invention is to reduce an increase in the storage capacity of a memory for storing peripheral macroblock information.
  • a representative embodiment of the present invention uses a coding processing apparatus (201) to generate a plurality of macroblocks (horizontal width in a moving image on a horizontal screen larger than the vertical width).
  • This is a moving image encoding method for encoding (MB).
  • information of a plurality of already-encoded plurality of macroblocks (MB) around the macroblock (MB) to be encoded is stored in the information processing unit incorporated in the encoding processing device It is stored in the memory (204).
  • a plurality of macroblocks (MB) arranged in the vertical direction at the left end of the horizontal width of the horizontally long screen are first sequentially encoded, so that the left end Encoded information of the plurality of macroblocks (MB) arranged in the vertical direction is stored in the information storage memory (204).
  • the plurality of macroblocks (MB) arranged in the vertical direction next to the right side of the left end of the horizontal width of the horizontal screen. are sequentially encoded (see FIGS. 3, 4, and 5).
  • an increase in the storage capacity of the memory for storing the peripheral macroblock information can be reduced.
  • FIG. 1 is a diagram for explaining a hierarchical structure in a moving image encoding / decoding processing system according to Embodiment 1 of the present invention.
  • FIG. 2 is a diagram showing a configuration of an encoded video stream encoded by the moving image encoding scheme according to Embodiment 1 of the present invention shown in FIG.
  • FIG. 3 is a flowchart showing a processing procedure of moving image encoding / decoding processing according to Embodiment 1 of the present invention. 4 is arranged at the two-dimensional macroblock coordinates (x, y) of one video screen by the processing procedure of the encoding / decoding processing of the moving image according to the first embodiment of the present invention shown in the flowchart of FIG.
  • FIG. 5 shows the moving picture encoding / decoding processing apparatus according to the first embodiment of the present invention capable of executing the processing procedure of the moving picture encoding / decoding process according to the first embodiment of the present invention shown in the flowchart of FIG. It is a figure which shows a structure.
  • FIG. 6 is a diagram showing a data array of a moving image encoded bitstream supplied when the moving image encoding / decoding processing device according to Embodiment 1 of the present invention shown in FIG. 5 operates as a decoding processing device. .
  • FIG. 7 shows a processing target macroblock (MB) 401 and four neighboring macroblocks (MB) used for prediction of the processing target macroblock (MB) 401 when a conventional encoding process different from the present invention is executed.
  • MB processing target macroblock
  • FIG. 8 shows a processing target macroblock (MB) 401 and a processing target macro when the processing procedure of the moving image encoding / decoding processing according to the first embodiment of the present invention described in FIGS. 1 to 6 is executed.
  • FIG. 4 is a diagram showing a relationship with four neighboring macroblocks (MB) 406 to 409 used for prediction of a block (MB) 401.
  • FIG. 9 shows a plurality of macroblocks starting from a macroblock (MB) located at the upper left of one video screen in accordance with the conventional encoding process, and in the order of raster scan of display first in the right direction and then in the lower direction. It is a figure which shows a mode that the encoding process of (MB) is performed.
  • FIG. 10 starts from a macroblock (MB) located at the upper left of one video screen according to the encoding process according to the first embodiment of the present invention described in FIGS. It is a figure which shows a mode that the encoding process of several macroblock (MB) is performed sequentially to a direction.
  • FIG. 11 shows a conventional encoding process for a pair of macroblocks (MB) of two columns in the macroblock adaptive frame / field prediction mode introduced in the MPEG-4 AVC (H.264) encoding method. It is a figure which shows a mode that it encodes according to FIG.
  • FIG. 12 shows the macroblock (MB) pair of the macroblock adaptive frame / field prediction mode introduced in the MPEG-4 AVC (H.264) coding system, which is described in FIGS. It is a figure which shows a mode that it encodes according to the encoding process by Embodiment 1 of.
  • FIG. 13 is a diagram showing a configuration of a moving image encoding / decoding processing device according to Embodiment 2 of the present invention.
  • FIG. 14 is a diagram showing a configuration of a moving image encoding / decoding processing device according to Embodiment 3 of the present invention.
  • FIG. 15 is a diagram showing a configuration of a moving image encoding / decoding processing device according to Embodiment 4 of the present invention.
  • FIG. 16 shows the macroblock coding / decoding processing unit 203 of the moving picture coding / decoding processing device 201 according to the first embodiment of the present invention shown in FIG. 5 or the second embodiment of the present invention shown in FIG.
  • FIG. 11 is a diagram showing a configuration of a device 1750.
  • a typical embodiment of the present invention is that a plurality of macroblocks included in a moving image of a horizontally long screen in which the horizontal width in the horizontal direction is larger than the vertical width in the vertical direction using the encoding processing device (201).
  • This is a moving image encoding method for encoding (MB).
  • information of a plurality of already-encoded plurality of macroblocks (MB) around the macroblock (MB) to be encoded is stored in the information processing unit incorporated in the encoding processing device It is stored in the memory (204).
  • a plurality of macroblocks (MB) arranged in the vertical direction at the left end of the horizontal width of the horizontally long screen are first sequentially encoded, so that the left end Encoded information of the plurality of macroblocks (MB) arranged in the vertical direction is stored in the information storage memory (204).
  • the plurality of macroblocks (MB) arranged in the vertical direction next to the right side of the left end of the horizontal width of the horizontal screen. are sequentially encoded (see FIGS. 3, 4, and 5).
  • the plurality of macroblocks (MB) arranged in the vertical direction on the right side in the horizontal direction at the left end are stored in the information storage memory (204) when sequentially encoded.
  • the encoded information of the plurality of macroblocks (MB) arranged in the vertical direction at the left end is used (see FIGS. 3, 4, and 5).
  • the last or first macroblock is located at the bottom or top of the vertical width. It is characterized in that it is determined by the encoding processing device (201) whether or not it is a macroblock (see FIG. 3: step 104).
  • the plurality of macroblocks (MB) arranged in the vertical direction on the right side in the horizontal direction at the left end of the horizontal width of the horizontal screen are encoded and then encoded. Whether the plurality of macroblocks (MB) are the last plurality of macroblocks positioned at the right end of the horizontal width is determined by the encoding processing device (201) (FIG. 3: step). 106).
  • the encoding processing device (201) determines that each macroblock is not the last or first macroblock located at the lower end or the upper end of the vertical width. Is characterized in that the count value of the vertical counter (205) that displays the position of the next macroblock to be encoded in the vertical direction at the left end is incremented by one (see FIG. 3: step 105). .
  • the encoding processing device (201) determines that the plurality of encoded macroblocks (MB) are not the last plurality of macroblocks positioned at the right end of the horizontal width. In this case, the count value of a horizontal counter (207) that displays the positions of a plurality of macroblocks to be encoded next in the horizontal direction of the horizontal width of the horizontal screen is incremented by one ( (See FIG. 3: Step 107).
  • a typical embodiment of another aspect of the present invention is included in a moving image of a horizontally long screen in which the horizontal width in the horizontal direction is larger than the vertical width in the vertical direction using the decoding processing device (201).
  • This is a moving picture decoding method for decoding a plurality of macroblocks (MB).
  • information of a plurality of decoded macroblocks (MB) around the macroblock (MB) to be decoded is stored in the decoding processing apparatus. It is stored in the memory (204).
  • a plurality of macroblocks (MB) arranged in the vertical direction at the left end of the horizontal width of the horizontally long screen are first sequentially decoded, so that the left end Decoding information of the plurality of macroblocks (MB) arranged in the vertical direction is stored in the information storage memory (204).
  • the plurality of macroblocks (MB) arranged in the vertical direction next to the right side of the left end of the horizontal width of the horizontal screen. are sequentially decoded (see FIGS. 3, 4, and 5).
  • the plurality of macroblocks (MB) arranged in the vertical direction on the right side of the left end are sequentially decoded, they are stored in the information storage memory (204).
  • the decoding information of the plurality of macroblocks (MB) arranged in the vertical direction at the left end is used (see FIGS. 3, 4, and 5).
  • each macroblock is located at the last or first position at the bottom or top of the vertical width.
  • the decoding processing device (201) determines whether or not it is a macroblock (see FIG. 3: step 104).
  • the plurality of macroblocks (MB) arranged in the vertical direction at the right side of the horizontal end of the horizontal width of the horizontal screen are decoded and then decoded.
  • the decoding processing device (201) determines whether or not the plurality of macroblocks (MB) are the last plurality of macroblocks positioned at the right end of the horizontal width (FIG. 3: step). 106).
  • the decoding processing device (201) determines that each macroblock is not the last or first macroblock located at the lower end or the upper end of the vertical width. Is characterized in that the count value of the vertical direction counter (205) indicating the position of the next macroblock to be decoded in the vertical direction at the left end is incremented by 1 (see step 105 in FIG. 3). .
  • the decoding processing device (201) determines that the plurality of decoded macroblocks (MB) are not the last plurality of macroblocks positioned at the right end of the horizontal width. In the case, the count value of a horizontal counter (207) that displays the positions of a plurality of macroblocks to be decoded next in the horizontal direction of the horizontal width of the horizontal screen is incremented by one ( (See FIG. 3: Step 107).
  • a moving image encoding processing apparatus (201) includes an encoding processing unit (203) and an information storage memory (204).
  • information on a plurality of encoded macroblocks (MB) around the macroblock (MB) to be encoded is the information. It is stored in the storage memory (204).
  • a plurality of macroblocks (MB) arranged in the vertical direction at the left end of the horizontal width of the horizontally long screen are sequentially encoded by the encoding processing unit (203).
  • the encoding information of the plurality of macroblocks (MB) arranged in the vertical direction at the left end is stored in the information storage memory (204) by the encoding processing unit (203).
  • the plurality of macroblocks (MB) arranged in the vertical direction next to the right side of the left end of the horizontal width of the horizontal screen. are sequentially encoded by the encoding processing unit (203) (see FIGS. 3, 4, and 5).
  • the encoding processing unit (203) when the plurality of macroblocks (MB) arranged in the vertical direction on the right side of the left end are sequentially encoded by the encoding processing unit (203), The encoded information of the plurality of macroblocks (MB) arranged in the vertical direction at the left end stored in the information storage memory (204) is used (FIGS. 3, 4, and 4). (See FIG. 5).
  • each macroblock is positioned at the lower end or the upper end of the vertical width.
  • the moving picture coding processing device (201) determines whether it is the last or first macro block (see FIG. 3: step 104).
  • the encoding is performed after encoding the plurality of macroblocks (MB) arranged in the vertical direction adjacent to the horizontal right of the left end of the horizontal width of the horizontal screen.
  • the moving picture coding processing device (201) determines whether or not the plurality of macroblocks (MB) that have been determined are the last plurality of macroblocks positioned at the right end of the horizontal width (201). (See FIG. 3: Step 106).
  • the moving picture coding apparatus (201) further includes a vertical direction counter (205) for displaying the position of the next macroblock to be coded in the vertical direction ( (See FIG. 5).
  • the vertical direction counter (205 ) Is incremented by one (see FIG. 3: step 105).
  • the moving picture coding processing apparatus (201) further comprises a horizontal direction counter (207) for displaying the positions of a plurality of macroblocks to be coded next in the horizontal direction. (See FIG. 5).
  • the count value of the counter (207) is incremented by one (see FIG. 3: step 107).
  • the moving image encoding processing device (201) can be connected to an image memory (702, 902, 1302) capable of storing the plurality of macroblocks included in the moving image of the landscape screen. It is said.
  • the horizontally long screen is then stored in the image memory.
  • a plurality of macroblocks arranged in the horizontal direction adjacent to the lower end in the vertical direction of the vertical width can be stored in the image memory (5, 6, 7, 8) (FIG. 13, FIG. 14 and FIG. 15).
  • the moving image encoding processing device (701) reads the landscape screen from the image memory, rotates the image by 90 °, and then writes the generated rotated image to the image memory.
  • An image rotation unit (703) is further provided, and the rotation image stored in the image memory can be read and supplied to the encoding processing unit (704) (see FIG. 13).
  • the moving image coding processing apparatus (201) further includes an image memory interface (903, 906, 1303, 1306, 1309) that can be connected to the image memory. .
  • the image memory interface reads the plurality of macroblocks (9, 5, 1) arranged in the vertical direction at the left end of the horizontal width of the horizontally long screen from the image memory and reads the encoding processing unit (904, 1304), and then reading out a plurality of macroblocks (10, 6, 2) arranged in the vertical direction at the left end of the horizontal width of the horizontal screen and adjacent to the right in the horizontal direction. (904, 1304) (see FIGS. 14 and 15).
  • the moving picture coding processing apparatus includes the plurality of macroblocks (9, 9) arranged in the vertical direction at the left end of the horizontal width of the horizontal screen from the image memory. 5, 1) are read out and supplied to the encoding processing unit (904, 1304), and then a plurality of macroblocks arranged in the vertical direction next to the left end of the horizontal width of the horizontal width at the left end in the horizontal direction It further includes an image read address generation unit (906, 1306) that can read out (10, 6, 2) and supply it to the encoding processing unit (904, 1304) (FIGS. 14 and 15). reference).
  • the moving image coding processing device is configured to rotate each macroblock of the plurality of macroblocks read from the image memory according to an address generated from the image read address generation unit by approximately 90 °.
  • An image rotation unit (903, 1303) that can generate an image and supply it to the encoding processing unit is further provided (see FIGS. 14 and 15).
  • the coding processing units (704, 904, 1304) are operations of a variable length coding unit, an orthogonal transformer / quantizer, and a motion prediction unit. It includes a function (see FIG. 16).
  • Still another representative embodiment of the present invention decodes a plurality of macroblocks (MB) included in a moving image of a horizontally long screen in which the horizontal width in the horizontal direction is larger than the vertical width in the vertical direction.
  • the video decoding processing device (201) includes a decoding processing unit (203) and an information storage memory (204).
  • information on a plurality of decoded macroblocks (MB) around the macroblock (MB) to be decoded is the information. It is stored in the storage memory (204).
  • a plurality of macroblocks (MB) arranged in the vertical direction at the left end of the horizontal width of the horizontally long screen are first sequentially decoded by the decoding processing unit (203).
  • the decoding information of the plurality of macroblocks (MB) arranged in the vertical direction at the left end is stored in the information storage memory (204) by the decoding processing unit (203).
  • the plurality of macroblocks (MB) arranged in the vertical direction next to the right side of the left end of the horizontal width of the horizontal screen. are sequentially decoded by the decoding processing unit (203) (see FIGS. 3, 4, and 5).
  • the decoding processing unit (203) when the plurality of macroblocks (MB) arranged in the vertical direction on the right side of the left end are sequentially decoded by the decoding processing unit (203), The decoding information of the plurality of macroblocks (MB) arranged in the vertical direction at the left end stored in the information storage memory (204) is used (FIGS. 3, 4, and 4). (See FIG. 5).
  • the macroblocks (MB) of the plurality of macroblocks arranged in the vertical direction are decoded, the macroblocks are positioned at the lower end or the upper end of the vertical width.
  • the moving picture decoding apparatus (201) determines whether it is the last or first macro block (see FIG. 3: step 104).
  • the decoding is performed after the plurality of macroblocks (MB) arranged in the vertical direction adjacent to the horizontal right of the left end of the horizontal width of the horizontal screen are decoded.
  • the moving picture decoding processing device (201) determines whether or not the plurality of macroblocks (MB) that have been processed are the last plurality of macroblocks positioned at the right end of the horizontal width (201). (See FIG. 3: Step 106).
  • the moving picture decoding apparatus (201) further includes a vertical direction counter (205) for displaying a position of a macroblock to be decoded next in the vertical direction ( (See FIG. 5).
  • the vertical direction counter (205 ) Is incremented by one (see FIG. 3: step 105).
  • the moving picture decoding apparatus (201) further comprises a horizontal direction counter (207) for displaying the positions of a plurality of macroblocks to be decoded next in the horizontal direction. (See FIG. 5).
  • the count value of the counter (207) is incremented by one (see FIG. 3: step 107).
  • the video decoding processing device (711, 911, 1311) can be connected to an image memory (712, 912, 1312) capable of storing the plurality of macroblocks. It is characterized by that.
  • the moving image encoding processing device (711) reads the horizontally long screen from the image memory, rotates the image by 90 °, and then generates the rotated image generated in the image memory.
  • An image rotation unit (713) for writing is further provided (see FIG. 13).
  • the moving picture coding processing devices (911, 1311) further include external interfaces (913, 916, 918, 1313, 1316, 1318) capable of supplying moving picture coded signals.
  • the external interface is configured to decode the plurality of macroblocks (9, 5, 1) arranged in the vertical direction at the left end of the horizontal width of the horizontally long screen included in the video encoded signal. (914, 1314), and then a plurality of macroblocks (10, 10) arranged in the vertical direction next to the horizontal right of the left end of the horizontal width of the horizontal screen included in the video encoded signal. , 6, 2) can be supplied to the decoding processing unit.
  • the video decoding processing device decodes the plurality of macroblocks arranged in the vertical direction at the left end of the horizontal width of the horizontal screen included in the video encoded signal supplied from the external interface. After processing, a plurality of macroblocks arranged in the vertical direction next to the horizontal right end of the left end of the horizontal width of the horizontal screen included in the moving image encoded signal supplied from the external interface. Decryption process.
  • the moving picture decoding processing apparatus can be connected to an image memory (912, 1312) capable of storing decoded moving picture information in which the horizontal width in the horizontal direction is larger than the vertical width in the vertical direction.
  • the moving picture decoding processing device stores decoding processing information of the plurality of macroblocks arranged in the vertical direction at the left end of the horizontal width of the horizontally long screen in a first storage area (9, 5, 1, )
  • the decoding processing information of the plurality of macroblocks arranged in the vertical direction next to the left end of the horizontal width of the horizontal width of the horizontal screen included in the video encoded signal is next. It can be stored in the second storage area (10, 6, 2) of the image memory.
  • the first storage area and the second storage area of the image memory are arranged in the vertical direction at the left end of the display horizontal width of a horizontally long moving image display screen whose horizontal display width is larger than the vertical display vertical width.
  • the plurality of pieces of image information correspond to the plurality of pieces of image information arranged in the vertical direction adjacent to the left end of the display width in the horizontal direction (see FIGS. 14 and 15).
  • the moving picture decoding processing device stores the decoding processing information of the plurality of macroblocks arranged in the vertical direction at the left end of the horizontal width of the horizontally long screen in the image memory. Decoding of the plurality of macroblocks arranged in the vertical direction next to the right in the horizontal direction at the left end of the horizontal width of the horizontal screen included in the moving image encoded signal after being stored in the first storage area An image write address generation unit (918, 1318) that can store processing information in the second storage area of the image memory is further provided (see FIGS. 14 and 15).
  • the external interface can generate a rotated image obtained by rotating the plurality of macroblocks included in the moving image encoded signal by approximately 90 ° and supply the rotated image to the decoding processing unit. (See FIGS. 14 and 15).
  • the decoding processing units (714, 914, 1314) are variable length decoding units, inverse quantizers / inverse orthogonal transformers, and motion compensation units. An operation function is included (see FIG. 16).
  • FIG. 1 is a diagram for explaining a hierarchical structure in a moving image encoding / decoding processing system according to Embodiment 1 of the present invention.
  • the moving picture coding system is a block (Block) of a processing unit from a sequence (Sequence) 10 corresponding to the entire moving image to a discrete cosine transform (DCT). ) It has a 6-layer structure of 15, 16, and 17. That is, the first layer is a sequence 10, the second layer is a group of pictures (GOP) 11, the third layer is a picture 12, the fourth layer is a slice 13, and the fifth layer is a macroblock. (Macro-block) 14, the sixth layer is blocks (Blocks) 15, 16, and 17.
  • the number of pictures 12 included in the group of pictures (GOP) 11 or the number of macro-blocks 14 included in the slices 13 is relatively flexible.
  • the screen height of the moving image of the picture 12 of the third hierarchy is a horizontally long screen shorter than the screen width of the moving image.
  • the slice 13 is arranged in the horizontal direction of the picture 12 of the third hierarchy, and the macroblock ( (MB) 14 is also subjected to sequential encoding or decoding processing in the horizontal width direction in the slice 13 of the fourth layer arranged in the horizontal width direction.
  • the slice 13 is arranged in the vertical direction of the picture 12 of the third layer and the fourth layer is the fifth layer.
  • the macroblock (MB) 14 is also subjected to sequential encoding or decoding processing in the vertical width direction as indicated by the dashed arrow within the slice 13 of the fourth hierarchy arranged in the vertical width direction.
  • FIG. 2 is a diagram showing a configuration of an encoded video stream encoded by the moving image encoding scheme according to Embodiment 1 of the present invention shown in FIG.
  • the video stream shown in FIG. 2 has a hierarchy in which different levels of sequence level 211, group of picture (GOP) level 221, picture level 231, slice level 241, and macroblock (MB) level 251 are overlapped. Thus, each next level is part of each previous level.
  • the sequence level 211 is a sequence sequence, and each sequence includes a plurality of group of pictures (GOP) groups.
  • a group of group of pictures (GOP) level 221 is a series of groups of pictures, each GOP containing one or multiple pictures.
  • the picture level 231 is a sequence of pictures (including I frames, P frames, and B frames), and each picture 230 includes one or many slices 240.
  • Slice level 242 is a series of slices 240, and each slice 240 includes one or many macroblocks 250.
  • the macroblock (MB) level 251 is a series of macroblocks.
  • each block of data at each level of the video stream generally has a header that includes relevant information related to the encoding and decoding of the video stream.
  • sequence 210 has sequence header 212
  • GOP level 221 has GOP header 222
  • picture level 231 has picture header 232
  • slice level 241 and slice 240 has
  • MB level 251 the macroblock (MB) 250 has a macroblock (MB) header 252.
  • the sequence header 212 includes information such as the width of the picture 12 called a horizontal size (horizontal_size), the height of the picture 12 called a vertical size (vertical_size), and the aspect ratio of a pixel called aspect ratio information (aspect_ratio_information).
  • the GOP header 222 includes a parameter called a time code (time_code) and parameter information describing a GOP structure called a closed GOP (closed_gop) or a broken link (broken_link).
  • the picture header 232 includes information such as a parameter called a picture coding type (picture_coding_type) indicating whether the picture is an I picture, a P picture, or a B picture.
  • the picture header 232 further includes a parameter called F code (f_code) indicating from which picture the motion vector is encoded.
  • the slice header 242 includes information such as a slice start code (slice_start_code) indicating the start of a slice and parameters indicating the vertical position / horizontal position of the first macroblock (MB) of the slice.
  • slice_start_code slice start code
  • the macroblock (MB) header 252 designates a macroblock address, a macroblock type, whether or not the macroblock 250 includes a motion vector and a motion vector type (forward direction, reverse direction) in units of macroblocks. Information on quantizer scale and the like is included. Further, the macroblock (MB) header 252 determines the type of discrete cosine transform (DCT), DCT coefficients, and the like.
  • DCT discrete cosine transform
  • FIG. 3 is a flowchart showing a processing procedure of moving image encoding / decoding processing according to Embodiment 1 of the present invention.
  • bitstream syntax compression coding data string rule or coding data bitstream configuration method
  • the moving image encoding / decoding processing device that performs the processing of the moving image encoding / decoding processing according to Embodiment 1 of the present invention analyzes the above-described syntax, It is determined that the moving image encoding / decoding process should be executed according to the syntax according to the first embodiment of the present invention.
  • step 101 the moving image encoding process or the moving image decoding process of one video screen (picture 12) is started, and in step 102, the coordinates (x, y) is initialized to the origin (0, 0).
  • step 103 one macroblock (MB) located at the macroblock coordinates (x, y) is encoded or decoded.
  • step 104 it is determined whether or not the macro block (MB) processed in step 103 is the lower end of the screen.
  • step 104 If it is determined in step 104 that the processed macro block (MB) is not the lower end of the screen, the vertical coordinate y of the macro block coordinates (x, y) is incremented by one in step 105, The encoding process or decoding process of the macroblock (MB) in step 103 is repeated. If it is determined in step 104 that the processed macro block (MB) is the lower end of the screen, it is determined whether or not the macro block (MB) processed in step 106 is the right end of the screen. .
  • step 106 If it is determined that the macroblock (MB) processed in step 106 is not the right edge of the screen, the horizontal coordinate x of the macroblock coordinates (x, y) is incremented by one in step 107 and After the coordinate y is reset to the initial value (0), the encoding process or decoding process of the macroblock (MB) in step 103 is repeated. If it is determined that the macro block (MB) processed in step 106 is the right edge of the screen, the moving image encoding process or moving image decoding process for one video screen is terminated in step 108. .
  • FIG. 4 is arranged at the two-dimensional macroblock coordinates (x, y) of one video screen by the processing procedure of the encoding / decoding processing of the moving image according to the first embodiment of the present invention shown in the flowchart of FIG. It is a figure which shows a mode that several macroblock (MB) is processed sequentially.
  • MB macroblock
  • the moving direction of the first process is set to the horizontal right direction of the screen according to the raster scan order of display. Instead, it is the vertical down direction of the screen.
  • the processed macro block (MB) reaches the lower end of the video screen according to the moving direction of the processing in the vertical down direction of the screen, it is processed to the macro block (MB) located at the upper end of the right macro block (MB) column. Is moved (the process is repeated), and the moving direction of the process is set to the vertical downward direction of the screen.
  • FIG. 5 shows the moving picture encoding / decoding processing apparatus according to the first embodiment of the present invention capable of executing the processing procedure of the moving picture encoding / decoding process according to the first embodiment of the present invention shown in the flowchart of FIG. It is a figure which shows a structure.
  • an external memory 202 constituted by a synchronous dynamic random access memory is connected to a moving picture encoding / decoding processing device 201 constituted by a system LSI.
  • the semiconductor chip of the moving image encoding / decoding processing device 201 includes a macroblock encoding / decoding processing unit 203, a peripheral macroblock information storage memory 204, a vertical direction macroblock counter 205, a screen lower end determination unit 206, and a horizontal direction macroblock counter. 207, a screen right end determination unit 208, and an AND logic gate circuit 209.
  • the moving image encoding / decoding processing device 201 executes the moving image encoding process using the original image and the reference image stored in the external memory 202 and stores the moving image in the external memory 202. An encoded bit stream and a reference image are output.
  • the moving picture encoding / decoding processing apparatus 201 executes the moving picture decoding process using the moving picture encoded bitstream and the reference image stored in the external memory 202 to execute the external memory 202.
  • the decoded moving image is output to.
  • the macroblock encoding / decoding processing unit 203 executes encoding or decoding processing of a macroblock (MB) located at the macroblock coordinates indicated by the vertical macroblock counter 205 and the horizontal macroblock counter 207. It is.
  • MB macroblock
  • the peripheral macroblock information storage memory 204 stores information on a plurality of macroblocks (MB) in the vertical direction (vertical direction) of the screen output from the macroblock encoding / decoding processing unit 203. Therefore, the macroblock encoding / decoding processing unit 203 reads the macroblock (MB) information in the left column from the peripheral macroblock information storage memory 204 and executes encoding or decoding processing.
  • the count value of the vertical macroblock counter 205 is incremented by one according to the macroblock processing end signal output from the macroblock encoding / decoding processing unit 203.
  • the vertical macroblock position signal of the output signal of the vertical macroblock counter 205 is supplied to the screen lower end determination unit 206.
  • the vertical macro block counter 205 is cleared (reset) to the initial value (0), and the horizontal macro block The count value of the counter 207 is incremented by one.
  • the horizontal macroblock position signal of the output signal of the horizontal macroblock counter 207 is supplied to the screen right edge determination unit 208.
  • the AND logic gate circuit 209 is supplied with the determination result of the screen lower end determination unit 206 and the determination result of the screen right end determination unit 208. Accordingly, a high-level (“1”) screen processing end signal generated from the output of the AND logic gate circuit 209 is supplied to the macroblock encoding / decoding processing unit 203.
  • FIG. 6 is a diagram showing a data array of a moving image encoded bitstream supplied when the moving image encoding / decoding processing device according to Embodiment 1 of the present invention shown in FIG. 5 operates as a decoding processing device. .
  • the macro block (MB (0, 0)) of the macro block coordinates (0, 0) at the upper left end of the screen is first coded.
  • Information 302 is arranged.
  • the macroblock (MB) is encoded in order in the vertical downward direction from the encoded information 303 of the macroblock (MB (0,1)) of the macroblock coordinate (0,1) in the vertical downward direction.
  • Information is arranged.
  • the macroblock coordinates (1, Information 305 in which a macroblock (MB (1, 0)) of 0) is encoded is arranged.
  • information encoded up to the macro block (MB (w-1, h-1)) at the macro block coordinates (w-1, h-1) at the lower right corner of the screen is arranged.
  • the picture header 301 shown in FIG. 6 actually includes the sequence header 212, GOP header 222, picture header 232, slice level 242, and macroblock (MB) header 252 shown in FIG. As a result, by analyzing the picture header 301 shown in FIG.
  • step 106 it is possible to determine that the moving image encoding / decoding process should be executed according to the syntax according to the first embodiment of the present invention. Become. Alternatively, the screen determined in step 104 of the processing procedure of FIG. 3 by analyzing the width of the picture 12 called the horizontal size and the height of the picture 12 called the vertical size included in the sequence header 212 shown in FIG. It becomes possible to know the lower end and the right end of the screen determined in step 106.
  • FIG. 7 shows a processing target macroblock (MB) 401 and four neighboring macroblocks (MB) used for prediction of the processing target macroblock (MB) 401 when a conventional encoding process different from the present invention is executed.
  • MB processing target macroblock
  • MB neighboring macroblocks
  • FIG. 8 shows a processing target macroblock (MB) 401 and a processing target macro when the processing procedure of the moving image encoding / decoding processing according to the first embodiment of the present invention described in FIGS. 1 to 6 is executed.
  • FIG. 4 is a diagram showing a relationship with four neighboring macroblocks (MB) 406 to 409 used for prediction of a block (MB) 401.
  • FIG. 7 since the processing target macroblock (MB) 401 must be processed while the macroblock (MB) 404 located at the upper right of the processing target macroblock (MB) 401 is unprocessed, the reference information decreases. As a result, the prediction accuracy deteriorates.
  • FIG. 8 according to the first embodiment of the present invention, all the four neighboring macroblocks (MB) 406 to 409 are already processed at the processing timing of the processing target macroblock (MB) 401. Deterioration of prediction accuracy due to a decrease in information can be avoided.
  • FIG. 9 shows a plurality of macroblocks starting from a macroblock (MB) located at the upper left of one video screen in accordance with the conventional encoding process, and in the order of raster scan of display first in the right direction and then in the lower direction. It is a figure which shows a mode that the encoding process of (MB) is performed.
  • MB macroblock
  • the storage capacity of the peripheral macroblock information storage memory needs to have a large storage capacity for storing macroblock (MB) information 502 corresponding to the screen width.
  • FIGS. 10 starts from a macroblock (MB) located at the upper left of one video screen according to the encoding process according to the first embodiment of the present invention described in FIGS. It is a figure which shows a mode that the encoding process of several macroblock (MB) is performed sequentially to a direction.
  • MB macroblock
  • the storage capacity of the peripheral macroblock information storage memory has a small storage capacity for storing macroblock (MB) information 504 corresponding to the screen vertical width. Is enough.
  • the screen width of a moving image is shorter than the screen width of the moving image.
  • the QVGA Quadrater Video Graphic Array
  • the Standard size is 720 pixels ⁇ 480 pixels
  • the High Definition HD (High Definition) size is 1920 pixels ⁇ 1080 pixels
  • the 4K ⁇ 2K size is 4096.
  • a pixel ⁇ 2048 pixel, 8K ⁇ 4K size it is 8192 ⁇ 4096 pixels. Therefore, compared with the large capacity corresponding to the screen width required for the conventional encoding process shown in FIG. 9, the peripheral macroblock information required for the encoding process according to the first embodiment of the present invention shown in FIG.
  • the storage capacity of the storage memory is as small as the screen vertical width.
  • FIG. 11 shows a conventional coding process for a pair of macroblocks (MB) in two columns in a macroblock adaptive frame / field prediction mode introduced in the MPEG-4 AVC (H.264) coding method. It is a figure which shows a mode that it encodes according to FIG.
  • the storage capacity of the peripheral macroblock information storage memory needs to have a large storage capacity for storing macroblock (MB) information 602 that is twice the screen width.
  • FIG. 12 shows the macroblock (MB) pair of the macroblock adaptive frame / field prediction mode introduced in the MPEG-4 AVC (H.264) coding system, which is described in FIGS. It is a figure which shows a mode that it encodes according to the encoding process by Embodiment 1 of.
  • MB macroblock
  • H.264 MPEG-4 AVC
  • the storage capacity of the storage memory of the peripheral macroblock information is the macroblock (MB) information 604 corresponding to the vertical width of the screen. Having a small storage capacity to store is enough.
  • FIG. 13 is a diagram showing a configuration of a moving image encoding / decoding processing device according to Embodiment 2 of the present invention.
  • FIG. 13 shows a coding apparatus 701 that executes the moving picture coding process according to the second embodiment of the present invention
  • the lower part of FIG. 13 shows the moving picture decoding process according to the second embodiment of the present invention.
  • a decoding device 711 for executing is shown.
  • the encoding device 701 includes an image rotation unit 703, an encoding processing unit 704, and a peripheral macroblock information storage memory 705.
  • the encoding device 701 outputs a moving image encoded bit stream and a reference image to the external memory 702 by executing a moving image encoding process of the original image stored in the external memory 702.
  • the original image stored in the external memory 702 is supplied to the image rotation unit 703 of the encoding device 701.
  • the image rotation unit 703 rotates the original image to the right by + 90 ° and supplies the rotated image to the external memory 702. Therefore, the horizontal width of the original image stored in the external memory 702 is longer than the vertical width, and a plurality of macroblocks (MB) 1, 2, 3, 4 are arranged, and a plurality of macroblocks (MB) 1, 5, 9 are arranged in the lower vertical direction. That is, the number of macro blocks (MB) 1, 2, 3, 4 arranged in the right horizontal direction of the horizontal width of the original image stored in the external memory 702 is arranged in the vertical direction below the vertical width of the original image. The value is larger than the number of the plurality of macro blocks (MB) 1, 5, 9.
  • the rotated image rotated right by + 90 ° by the image rotation unit 703 and supplied to the external memory 702 includes a small number of macroblocks (MB) 1, 5, and 9 in the horizontal direction of the horizontal width.
  • a large number of macroblocks (MB) 1, 2, 3, 4 are included in the vertical direction.
  • the reference image stored in the external memory 702 includes a small number of macroblocks (MB) 1, 5, and 9 in the horizontal direction and a large number in the vertical direction.
  • a plurality of macroblocks (MB) 1, 2, 3, 4 are included.
  • the encoding processing unit 704 is stored in a small number of macroblocks (MB) 9, 5, 1 and the external memory 702 that are arranged in the horizontal direction of the horizontal width of the rotated image first stored in the external memory 702.
  • a small number of macroblocks (MB) 9, 5, 1 arranged in the horizontal direction of the width of the reference image are sequentially read out, and the moving image encoding process is executed.
  • the encoding processing unit 704 sequentially reads a small number of macroblocks (MB) 10, 6, and 2 that are arranged in the horizontal direction of each horizontal width of the rotated image and the reference image stored in the external memory 702. Then, the moving image encoding process is executed.
  • a moving image encoded bit stream generated by the moving image encoding process is stored in the external memory 702.
  • the storage capacity of the peripheral macroblock information storage memory 705 necessary for the moving image encoding processing is a plurality of macroblocks (MB) 9, 5 arranged in the vertical direction of the vertical width of the original image stored in the external memory 702. 1 is sufficient.
  • the encoding device 701 when configured by a system LSI, it becomes easy to use the peripheral macroblock information storage memory 705 having a relatively small storage capacity as an internal memory (on-chip SRAM) of the system LSI.
  • the external memory 702 that stores the original image, the rotated image, and the moving image encoded bitstream is configured by a synchronous dynamic random access memory (SDRAM).
  • SDRAM synchronous dynamic random access memory
  • the decoding device 711 includes a decoding processing unit 714, a peripheral macroblock information storage memory 715, and an image rotation unit 713.
  • the decoding processing unit 714 stores a small number of macroblocks (MB) 9, 5, 1 and the external memory 712 arranged in the horizontal direction of the horizontal width of the moving image encoded bitstream stored in the external memory 712 first.
  • a small number of macroblocks (MB) 9, 5, and 1 arranged in the horizontal direction of the horizontal width of the stored reference image are sequentially read out, and the moving image decoding process is executed.
  • the decoding processing unit 714 has a small number of macroblocks (MB) 10, 6, 2, which are arranged in the horizontal direction in the horizontal width of each of the moving image encoded bitstream and the reference image stored in the external memory 712. Are sequentially read out and the moving picture decoding process is executed.
  • the moving picture decoding bit stream generated by the moving picture decoding process is stored in the external memory 712.
  • the image rotation unit 713 rotates the moving image decoding bitstream stored in the external memory 712 counterclockwise by 90 °, and supplies it again to the external memory 712 as a final moving image decoding bitstream.
  • the storage capacity of the peripheral macroblock information storage memory 715 necessary for the video decoding process is a plurality of macroblocks (MB) 9 arranged in the horizontal direction of the horizontal width of the video encoded bitstream stored in the external memory 712. The number of 5, 1 is sufficient.
  • the decoding device 711 when configured by a system LSI, it is easy to use the peripheral macroblock information storage memory 715 having a relatively small storage capacity as a built-in memory (on-chip SRAM) of the system LSI.
  • the external memory 712 for storing the moving image encoded bit stream, the rotated image, and the moving image decoded bit stream is configured by a synchronous dynamic random access memory (SDRAM).
  • SDRAM synchronous dynamic random access memory
  • the encoding processing unit 704 and the decoding processing unit 714 can be configured with common hardware resources
  • the peripheral macroblock information storage memory 705 and the peripheral macroblock information storage memory 715 can be configured with common hardware resources.
  • the image rotation unit 703 and the image rotation unit 713 can be configured with common hardware resources.
  • the moving image encoding / decoding processing device configured by the system LSI is arbitrarily operated by both the encoding device 701 and the decoding device 711. It becomes possible.
  • FIG. 14 is a diagram showing a configuration of a moving image encoding / decoding processing device according to Embodiment 3 of the present invention.
  • the moving picture encoding / decoding processing apparatus according to the third embodiment of the present invention shown in FIG. Access frequency can be reduced.
  • FIG. 14 shows a coding apparatus 901 that executes the moving picture coding process according to the third embodiment of the present invention
  • the lower part of FIG. 14 shows the moving picture decoding process according to the third embodiment of the present invention.
  • a decryption device 911 that performs is shown.
  • the encoding device 901 includes a right 90 ° rotation unit 903, an encoding processing unit 904, a peripheral macroblock information storage memory 905, and an image read address generation unit 906.
  • the encoding device 901 outputs a moving image encoded bit stream and a reference image to the external memory 902 by executing a moving image encoding process of the original image stored in the external memory 902.
  • a plurality of macroblocks (MB) of the original image stored in the external memory 902 are supplied to the right 90 ° rotation unit 903 of the encoding device 901 according to the address generated from the image read address generation unit 906 and rotated right 90 °.
  • the unit 903 supplies the encoded image obtained by rotating the supplied macroblock (MB) to the right by + 90 ° to the encoding processing unit 904. That is, the horizontal width of the original image stored in the external memory 902 is longer than the vertical width, and a plurality of macro blocks (MB) 1, 2, 3, 4 are arranged in the right horizontal direction in the raster scan order of the screen display. Are arranged, and a plurality of macroblocks (MB) 1, 5, 9 are arranged in the vertical direction.
  • the number of macro blocks (MB) 1, 2, 3, and 4 arranged in the right horizontal direction of the horizontal width of the original image stored in the external memory 902 is in the vertical direction below the vertical width of the original image.
  • the value is larger than the number of the plurality of macro blocks (MB) 1, 5, 9 arranged.
  • the rotated image rotated by + 90 ° to the right by the image rotating unit 703 and supplied to the encoding processing unit 904 includes a small number of macroblocks (MB) 9, 5, 1 in the horizontal direction.
  • a large number of macroblocks (MB) 1, 2, 3, 4 are included in the vertical direction.
  • the reference image stored in the external memory 902 includes a small number of macroblocks (MB) 9, 5, 1 in the horizontal direction and a large number in the vertical direction.
  • a plurality of macroblocks (MB) 1, 2, 3, 4 are included.
  • the encoding processing unit 904 includes a plurality of macro blocks (MB) 9, 5, 1 and an external memory 902 arranged in the horizontal direction of the horizontal width of the rotated image supplied from the right 90 ° rotating unit 903. A small number of macroblocks (MB) 9, 5, 1 arranged in the horizontal direction of the horizontal width of the reference image stored in are sequentially read out and the moving image encoding process is executed.
  • the encoding processing unit 904 has a small number of macroblocks (MB) arranged in the horizontal direction of each horizontal width of the rotated image supplied from the right 90 ° rotating unit 903 and the reference image stored in the external memory 902. ) 10, 6, and 2 are sequentially read out and the moving image encoding process is executed.
  • a moving image encoded bit stream generated by the moving image encoding process is stored in the external memory 902.
  • the storage capacity of the peripheral macroblock information storage memory 905 necessary for the above-described moving image encoding processing is a plurality of macroblocks (MB) 1 arranged in the vertical direction of the vertical width of the original image stored in the external memory 902, The number of 5 and 9 is sufficient.
  • the encoding device 901 when configured by a system LSI, it is easy to use the peripheral macroblock information storage memory 905 having a relatively small storage capacity as a built-in memory (on-chip SRAM) of the system LSI.
  • the external memory 902 for storing the original image and the moving image encoded bit stream is configured by a synchronous dynamic random access memory (SDRAM).
  • SDRAM synchronous dynamic random access memory
  • the motion vector MV1 encoded by the moving image encoding processing of the encoding device 901 is also rotated by + 90 ° to the right by the right 90 ° rotation unit 903 as compared with the motion vector in the original image stored in the external memory 902. It will be what was done.
  • the decoding device 911 includes a decoding processing unit 914, a peripheral macroblock information storage memory 915, a left 90 ° rotation unit 913, an image read address generation unit 916, a difference image generation unit 917, and an image write address generation unit 918.
  • the decoding processing unit 914 sequentially reads out a small number of macroblocks (MB) 9, 5, 1 arranged in the horizontal direction of the horizontal width of the moving image encoded bitstream stored in the external memory 912 first.
  • a small number of macroblocks (MB) 9, 5, 1 arranged in the horizontal direction of the horizontal width of the moving image coded bit stream sequentially read from the external memory 912 are sent via the difference image generation unit 917. It is supplied to the left 90 ° rotation unit 913.
  • the left 90 ° rotation unit 913 generates a plurality of macroblocks (MB) 9, 5, 1 arranged in the vertical direction of the vertical width and supplies them to the decoding processing unit 914.
  • the image read address generation unit 916 sequentially reads a plurality of macroblocks (MB) 9, 5, and 1 arranged in the vertical direction of the vertical width of the reference image stored in the external memory 712, so that the decoding processing unit 914 A video decoding process is executed using a plurality of macroblocks (MB) 9, 5, 1 of the image-encoded bitstream and a plurality of macroblocks (MB) 9, 5, 1 of the reference image.
  • the moving image decoding bit stream generated from the decoding processing unit 914 by the moving image decoding process is stored in the external memory 712 according to the address generated from the image write address generation unit 918.
  • the storage capacity of the peripheral macroblock information storage memory 915 necessary for the video decoding process is a plurality of macroblocks (MB) 9 arranged in the horizontal direction of the horizontal width of the video encoded bitstream stored in the external memory 912. The number of 5, 1 is sufficient.
  • the decoding device 911 when configured by a system LSI, it becomes easy to use the peripheral macroblock information storage memory 915 having a relatively small storage capacity as an internal memory (on-chip SRAM) of the system LSI.
  • the external memory 912 that stores the moving image encoded bit stream, the reference image, and the moving image decoded bit stream is configured by a synchronous dynamic random access memory (SDRAM).
  • SDRAM synchronous dynamic random access memory
  • the motion vector MV2 decoded by the moving image decoding process in the decoding device 911 uses the x coordinate of the motion vector MV1 encoded by the moving image encoding process of the encoding device 901 as the y coordinate of the motion vector MV2.
  • the coordinate transformation is performed with the y coordinate of the motion vector MV1 as the x coordinate (however, minus sign) of the motion vector MV2.
  • the moving picture coding apparatus 901 and decoding apparatus 911 can integrate a moving picture coding / decoding processing apparatus configured by a system LSI on a semiconductor chip. It is. At this time, the encoding processing unit 904 and the decoding processing unit 914 can be configured with common hardware resources, and the peripheral macroblock information storage memory 905 and the peripheral macroblock information storage memory 915 can be configured with common hardware resources. In addition, the right 90 ° rotation unit 903 and the left 90 ° rotation unit 913 can be configured with common hardware resources.
  • the moving image encoding / decoding processing device configured by the system LSI is arbitrarily operated by both the encoding device 901 and the decoding device 911. It becomes possible.
  • FIG. 15 is a diagram showing a configuration of a moving image encoding / decoding processing device according to Embodiment 4 of the present invention.
  • the moving picture encoding / decoding processing apparatus according to the fourth embodiment of the present invention shown in FIG. It is possible to make the arrangement of the plurality of macro blocks (MB) of the reference image stored in the same as the arrangement of the plurality of macro blocks (MB) of the original image.
  • FIG. 15 shows a coding apparatus 1301 for executing the moving picture coding process according to the fourth embodiment of the present invention
  • the lower part of FIG. 15 shows the moving picture decoding process according to the fourth embodiment of the present invention.
  • a decoding device 1311 for executing is shown.
  • the encoding device 1301 includes a right 90 ° rotation unit 1303, an encoding processing unit 1304, a peripheral macroblock information storage memory 1305, an image read address generation unit 1306, a difference image generation unit 1307, a reference image address generation unit 1308, and a left 90 °.
  • a rotating unit 1309 is included.
  • the encoding device 1301 outputs a moving image encoded bitstream and a reference image to the external memory 1302 by executing a moving image encoding process of the original image stored in the external memory 1302.
  • a small number of macro blocks (MB) 9, 5, 1 arranged in the vertical direction of the vertical width of the original image and the reference screen are sequentially transferred from the external memory 1302. And supplied to the difference image generation unit 1307.
  • the output signal of the difference image generation unit 1307 is supplied to the right 90 ° rotation unit 1303, and the right 90 ° rotation unit 1303 supplies a rotation image obtained by rotating the supplied macroblock (MB) to the right by + 90 ° to the encoding processing unit 1304. To do.
  • the horizontal width of the original image stored in the external memory 1302 is longer than the vertical width, and a plurality of macroblocks (MB) 1, 2, 3, 4 are arranged in the right horizontal direction in the raster scan order of the screen display. Are arranged, and a plurality of macroblocks (MB) 1, 5, 9 are arranged in the lower vertical direction.
  • the number of macroblocks (MB) 1, 2, 3, 4 arranged in the right horizontal direction of the horizontal width of the original image stored in the external memory 1302 is in the vertical direction below the vertical width of the original image. The value is larger than the number of the plurality of macro blocks (MB) 1, 5, 9 arranged.
  • the rotated image rotated 90 ° to the right by the right 90 ° rotating unit 1303 and supplied to the encoding processing unit 1304 includes a small number of macroblocks (MB) 9, 5, and 1 in the horizontal direction.
  • a large number of macroblocks (MB) 1, 2, 3, 4 are included in the width direction.
  • the encoding processing unit 1304 sequentially processes the macroblocks (MB) 9, 5, and 1 of the output signal of the difference image generation unit 1307 supplied from the right 90 ° rotation unit 1303, and executes the moving image encoding processing. .
  • the encoding processing unit 1304 sequentially processes the macroblocks (MB) 10, 6, and 2 of the output signal of the difference image generation unit 1307 supplied from the right 90 ° rotation unit 1303 to perform moving image encoding processing. Execute.
  • a moving image encoded bit stream generated from the output of the encoding processing unit 1304 by this moving image encoding process is stored in the external memory 1302.
  • the output of the encoding processing unit 1304 is supplied to the left 90 ° rotation unit 1309, and the output of the left 90 ° rotation unit 1309 is stored in the external memory 1302 as a reference image according to the reference image address generated from the reference image address generation unit 1308. Is done.
  • the storage capacity of the peripheral macroblock information storage memory 1305 necessary for the moving image encoding processing is a plurality of macroblocks (MB) 1, 5 arranged in the vertical direction of the vertical width of the original image stored in the external memory 1302. , 9 is sufficient.
  • the encoding device 1301 when configured by a system LSI, it becomes easy to use the peripheral macroblock information storage memory 1305 having a relatively small storage capacity as a built-in memory (on-chip SRAM) of the system LSI.
  • the external memory 1302 for storing the original image, the reference image, and the moving image encoded bit stream is configured by a synchronous dynamic random access memory (SDRAM).
  • SDRAM synchronous dynamic random access memory
  • the motion vector MV1 encoded by the moving image encoding process of the encoding device 1301 is also rotated by + 90 ° to the right by the right 90 ° rotation unit 1303 as compared with the motion vector in the original image stored in the external memory 1302. It will be what was done.
  • the decoding device 1311 includes a decoding processing unit 1314, a peripheral macroblock information storage memory 1315, a left 90 ° rotation unit 1313, an image read address generation unit 1316, a difference image generation unit 1317, and an image write address generation unit 1318.
  • the decoding processing unit 1314 sequentially reads out a plurality of small macroblocks (MB) 9, 5, 1 arranged in the horizontal direction of the horizontal width of the moving image encoded bitstream stored in the external memory 1312 first.
  • a plurality of macro blocks (MB) 9, 5, 1 arranged in the horizontal direction of the horizontal width of the moving image coded bit stream sequentially read from the external memory 1312 are sent via the difference image generation unit 1317.
  • the left 90 ° rotation unit 1313 is supplied.
  • the left 90 ° rotation unit 1313 generates a plurality of macro blocks (MB) 9, 5, 1 arranged in the vertical direction of the vertical width, and supplies the generated macro blocks (MB) 9, 5, 1 to the decoding processing unit 1314.
  • the image read address generation unit 1316 sequentially reads a plurality of macroblocks (MB) 9, 5, and 1 arranged in the vertical direction of the vertical width of the reference image stored in the external memory 1312, so that the decoding processing unit 1314 A video decoding process is executed using a plurality of macroblocks (MB) 9, 5, 1 of the image coded bitstream and a plurality of macroblocks (MB) 9, 5, 1 of the reference image.
  • the moving image decoding bit stream generated from the decoding processing unit 1314 by the moving image decoding process is stored in the external memory 1312 according to the address generated from the image write address generating unit 1318.
  • the storage capacity of the peripheral macroblock information storage memory 915 necessary for the video decoding process is a plurality of macroblocks (MB) arranged in the horizontal direction of the horizontal width of the video encoded bitstream stored in the external memory 1312. The number of 9, 5, 1 is sufficient.
  • the decoding device 1311 when configured by a system LSI, it becomes easy to use the peripheral macroblock information storage memory 1315 having a relatively small storage capacity as a built-in memory (on-chip SRAM) of the system LSI.
  • the external memory 1312 for storing the moving image encoded bit stream, the reference image, and the moving image decoded bit stream is configured by a synchronous dynamic random access memory (SDRAM).
  • SDRAM synchronous dynamic random access memory
  • the motion vector MV2 decoded by the moving image decoding process of the decoding device 1311 uses the x coordinate of the motion vector MV1 encoded by the moving image encoding process of the encoding device 1301 as the y coordinate of the motion vector MV2. This is a result of coordinate conversion in which the y coordinate of the motion vector MV1 is the x coordinate (however, minus sign) of the motion vector MV2.
  • the moving picture encoding apparatus 1301 and decoding apparatus 1311 according to the fourth embodiment of the present invention shown in FIG. 15 can be integrated on a semiconductor chip of a moving picture encoding / decoding processing apparatus configured by a system LSI. It is. At this time, the encoding processing unit 1304 and the decoding processing unit 1314 can be configured with common hardware resources, and the peripheral macroblock information storage memory 1305 and the peripheral macroblock information storage memory 1315 can be configured with common hardware resources. The right 90 ° rotation unit 1303 and the left 90 ° rotation unit 1313 can be configured with common hardware resources.
  • the moving image encoding / decoding processing device configured by the system LSI is arbitrarily operated by both the encoding device 1301 and the decoding device 1311. It becomes possible.
  • FIG. 16 shows the macroblock coding / decoding processing unit 203 of the moving picture coding / decoding processing device 201 according to the first embodiment of the present invention shown in FIG. 5 or the second embodiment of the present invention shown in FIG.
  • FIG. 11 is a diagram showing a configuration of a device 1750.
  • a moving image processing apparatus 1750 according to the fifth embodiment of the present invention shown in FIG. 16 includes a variable length coding / decoding unit (VLCS) 1703, a first moving image processing unit (CODEC1) 1719, a second moving image processing unit ( CODEC2) 1729, a memory control unit (MEC) 1714, a local memory controller (LMC) 1724, an overall control unit (CTRL) 1715, a DMA controller (DMAC) 1725, an external bus 1701, and an internal bus 1702.
  • the moving image processing apparatus 1750 is configured in the form of a large-scale semiconductor integrated circuit (LSI: Large Scale Integrated Circuit) formed on one semiconductor substrate such as a single crystal silicon substrate. .
  • LSI Large Scale Integrated Circuit
  • the moving image processing apparatus 1750 according to the fifth embodiment of the present invention shown in FIG. 16 operates arbitrarily in both the encoding apparatus and the decoding apparatus in accordance with the operation mode setting information supplied to the initialization sequence at power-on. It becomes possible to make it.
  • variable length coding / decoding unit (VLCS) 1703 includes moving image coded data from a medium such as a hard disk drive (HDD), an optical disk drive, a large-capacity nonvolatile flash memory, and a wireless LAN (local area network) via the DMA controller 1725.
  • a medium such as a hard disk drive (HDD), an optical disk drive, a large-capacity nonvolatile flash memory, and a wireless LAN (local area network) via the DMA controller 1725.
  • BS bitstream
  • a variable length coding / decoding unit (VLCS) 1703 incorporates a stream analysis unit, and the macro blocks arranged in the first row, the third row,... While being supplied to the unit (CODEC 1) 1719, the macroblocks arranged in the second, fourth,..., Which are even lines, are supplied to the second moving image processing unit (CODEC 2) 1729.
  • a variable length coding / decoding unit (VLCS) 1703 includes a pipeline control unit, and the pipeline control unit uses a first moving image processing unit (CODEC1) 1719 and a second moving image processing unit ( The pipeline operation for the parallel operation with the CODEC 2) 1729 is controlled. That is, a first variable length coding / decoding unit (VLCF1) 1710, a first frequency converting unit (TRF1) 1711, and a first motion compensating unit (which are internal circuits of the first moving image processing unit (CODEC1) 1719 ( The FME1) 1712 and the first deblocking filter (DEB1) 1713 execute a pipeline operation by being controlled by the pipeline control unit of the variable length coding / decoding unit (VLCS) 1703.
  • VLCF1 variable length coding / decoding unit
  • TRF1 first frequency converting unit
  • DEB1 1713 execute a pipeline operation by being controlled by the pipeline control unit of the variable length coding / decoding unit (VLCS) 1703.
  • variable length coding / decoding unit (VLCS) 1703 extracts the macroblock type and the motion vector by performing variable length decoding on the supplied bit stream, and the first moving image processing unit ( The CODEC 1) 1719 and the second moving image processing unit (CODEC 2) 1729 have a function of obtaining values of necessary parameter groups.
  • VLCF1 variable length coding / decoding unit
  • VLCF2 variable length coding / decoding unit
  • VLCS variable length coding / decoding unit
  • the first frequency conversion unit (TRF1) 1711 and the second frequency conversion unit (TRF2) 1721 are a first variable length coding / decoding unit (VLCF1) 710 and a second variable length coding / decoding unit (VLCF2).
  • VLCF1 first variable length coding / decoding unit
  • VLCF2 second variable length coding / decoding unit
  • IQ Inverse Quantization
  • IDCT inverse discrete cosine Transformation
  • the quantized transform coefficient and the quantization parameter as frequency transform information supplied from 1720 are processed, inverse quantization transform is performed to calculate a transform coefficient, and the calculated transform coefficient is subjected to inverse orthogonal transform to obtain a pixel.
  • a reference value supplied from the first motion compensation unit (FME1) 1712 and the second motion compensation unit (FME2) 1722 and the interframe prediction residual are added to obtain a pixel value. Calculate and output the calculated image.
  • the first motion compensation unit (FME1) 1712 and the second motion compensation unit (FME2) 1722 execute a motion compensation process. That is, the first motion compensation unit (FME1) 1712 and the second motion compensation unit (FME2) 1722 are connected via the memory control unit (MEC) 1714, the internal bus 1702, the DMA controller (DMAC) 1725, and the external bus 1701.
  • the motion vector position reference image is calculated by executing the motion search using the reference image supplied from the external memory, and the first frequency conversion unit (TRF1) 1711 and the second frequency conversion unit (TRF2) 1721 are calculated. Output to.
  • the first deblocking filter (DEB1) 1713 and the second deblocking filter (DEB2) 1723 execute deblocking filter processing for reducing block distortion that occurs during image decoding. That is, the first and second deblocking filters (DEB1, DEB2) 1713, 1723 are the processing target macroblocks (MB) supplied from the first and second frequency conversion units (TRF1, TRF2) 1711, 1721. Image data and the image data of the left macroblock (MB) to be processed supplied from the built-in memory in the first and second deblocking filters (DEB1, DEB2) 1713, 1723, and the deblocking filter Execute the process.
  • a memory control unit (MEC) 1714 uses a reference image to be used for inter-frame prediction based on motion vector information supplied from the first and second variable length coding / decoding units (VLCF1, VLCF2) 1710 and 1720.
  • the data is supplied from the external memory to the first and second motion compensation units (FME1, FME2) 1712 and 1722 via the bus 1702, the DMA controller (DMAC) 1725, and the external bus 1701.
  • a general control unit (CTRL) 1715 controls the operation of all internal circuits of the moving image processing apparatus 1750.
  • the overall control unit (CTRL) 1715 generates an operation control signal deb_start that controls the operations of the first and second deblocking filters (DEB1, DEB2) 1713, 1723.
  • the local memory controller (LMC) 1724 is the peripheral macroblock information storage memory 204 of the moving image encoding / decoding processing device (CODEC) 201 according to the first embodiment of the present invention shown in FIG. 5 or the present invention shown in FIG.
  • Write operation of the macroblock information storage memory 1315 Controls the read operation.
  • the local memory controller (LMC) 1724 stores parameters related to the processing result of the first moving image processing unit (CODEC1) 1719 related to the odd-numbered macroblocks (MB) in these peripheral macroblock information storage memories.
  • the parameters relating to the necessary images are transferred to the second moving image processing unit (CODEC2) 1729 relating to the macroblocks (MB) of the even rows.
  • the local memory controller (LMC) 1724 stores parameters related to the processing result of the second moving image processing unit (CODEC2) 1729 relating to the macroblocks (MB) of even-numbered rows in these peripheral macroblock information storage memories.
  • the local memory controller (LMC) 1724 performs operations for storing and reading the peripheral macroblock information to and from the peripheral macroblock information storage memory, and is performed by the system large-scale semiconductor integrated circuit (system LSI). It is connected to a built-in memory (on-chip SRAM) as a peripheral macroblock information storage memory built in a semiconductor chip of the configured moving picture coding / decoding device (CODEC).
  • system LSI system large-scale semiconductor integrated circuit
  • a DMA controller (DMAC: Direct Memory Access Controller) 1725 is connected to an external bus 701 of the moving image processing apparatus 1750, for example, an external memory configured by a synchronous dynamic random access memory (SDRAM), a first and a second memory. It is used for high-speed data transfer between a moving image processing unit 1719 and 1729 for a reference image including a large number of macroblocks (MB) and an encoded bit stream.
  • SDRAM synchronous dynamic random access memory
  • the first variable length coding / decoding unit of the first moving image processing unit (CODEC1) 1719 (VLCF1) 1710, first frequency conversion unit (TRF1) 1711, and first motion compensation unit (FME1) 1712 operate as a variable length decoding unit, an inverse quantizer / inverse DCT converter, and a motion compensation unit, respectively.
  • the variable length decoding unit, the inverse quantizer / inverse DCT converter, and the motion compensation unit respectively operate.
  • the moving image processing apparatus 1750 when the moving image processing apparatus 1750 according to the fifth embodiment of the present invention shown in FIG. 16 operates as an encoding apparatus, the first variable length encoding of the first moving image processing unit (CODEC1) 1719 is performed.
  • the decoding unit (VLCF1) 1710, the first frequency conversion unit (TRF1) 1711, and the first motion compensation unit (FME1) 1712 are a variable length coding unit, a DCT converter / quantization, and a residual coding unit. And a motion prediction unit.
  • VLCF2 variable length coding / decoding unit
  • TRF2 second frequency conversion unit
  • FME2 second motion compensation unit
  • CODEC2 second moving image processing unit
  • the first variable length coding / decoding unit (VLCF1) 1710 and the first frequency conversion unit (TRF1) of the first moving image processing unit (CODEC1) 1719 are used.
  • the second motion compensation unit (FME2) 1722 is not limited to being realized by hardware.
  • These operation functions can also be realized by software processing such as a microprocessor.
  • the peripheral macroblock information storage memories 204, 705, 715, etc. can use a cache memory such as a microprocessor.
  • the moving image encoding / decoding processing apparatus includes a mobile phone, a car navigation system, a DVD / HDD / BD recorder, a digital video camera, a digital camera, a digital television, and a telephone conference. It can be mounted on a system or the like.
  • Encoding device 902 External memory 903 ... Right 90 ° rotation unit 904 ... Encoding processing unit 905 ... Peripheral macroblock information storage memory 906 ... Image lead address raw 911 ... Decoding device 912 ... External memory 913 ... Left 90 ° rotation unit 914 ... Decoding processing unit 915 ... Peripheral macroblock information storage memory 916 ... Image read address generation unit 917 ... Difference image generation unit 918 ... Image write address generation unit 1301 ... Coding device 1302 ... External memory 1303 ... Right 90 ° rotation unit 1304 ... Coding processing unit 1305 ... Peripheral macroblock information storage memory 1306 ... Image read address generation unit 1307 ... Difference image generation unit 1308 ... Reference image address generation unit 1309 ...

Landscapes

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

Abstract

 周辺マクロブロック情報を格納するためのメモリの記憶容量の増大を軽減すること。 動画像符号化方法は、符号化処理装置を使用して水平方向の横幅が垂直方向の縦幅よりも大きな横長画面の動画像に含まれる複数のマクロブロックMBを符号化する。符号化に際して、符号化MBの周辺の複数の符号化済みの複数のMBの情報が内蔵の情報格納メモリ204に格納される。符号化に際して、最初に横長画面の横幅の左端で垂直方向に配列された複数のMBが順次に符号化され、その符号化情報が204に格納される。その後、次に横長画面の横幅の左端の水平方向右隣で垂直方向に配列された複数のMBが順次に符号化される。

Description

動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置
 本発明は、動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置に関し、特に周辺マクロブロック情報を格納するためのメモリの記憶容量の増大を軽減するのに有効な技術に関する。
 MPEG-2と呼ばれる動画像の一般的な圧縮方式は、ISO/IEC 13818-2で標準化された規格である。MPEG-2は、ビデオストリームから冗長な情報を削除することによって、ビデオ記憶容量と必要な帯域幅とを削減すると言う原理に基づいている。尚、MPEGは、Moving Picture Experts Groupの略である。
 MPEG-2の規格はビットストリームのシンタックス(圧縮符号化データ列の規則または符号化データのビットストリームの構成方法)およびデコードプロセスのみを規定しているので、衛星放送・サービス、ケーブルテレビジョン、インターラクティブテレビジョン、インターネット等の種々の状況で十分利用可能なようにフレキシブルなものである。
 MPEG-2のエンコードプロセスでは、最初にデジタルビデオの各画素のカラーと輝度との成分を規定するために、ビデオ信号はサンプルされ量子化される。カラーと輝度との成分を示す値は、離散コサイン変換(DCT:Discrete Cosine Transform)を使用して周波数値に変換される。DCTによって得られる変換係数は、ピクチャーの輝度とカラーで異なった周波数を持つ。量子化されたDCT変換係数は、ビデオストリームを更に圧縮する可変長コーディング(VLC:Variable Length Coding)によってエンコードされる。
 MPEG-2、MPEG-4、MPEG-4 AVC(H.264)等の国際標準動画像符号化方法では、時間方向の相関を使って高い符号化効率を実現するために、フレーム間予測符号化が使用されている。フレームの符号化モードには、フレーム間の相関を使わずに符号化するIフレームと、過去に符号化した1フレームから予測するPフレームと、過去に符号化した2フレームから予測することができるBフレームがある。
 このフレーム間予測符号化では、動画像から動き補償された参照画像(予測画像)が減算され、この減算による予測残差が符号化される。符号化の処理は、DCT(離散コサイン変換)等の直交変換と量子化と可変長符号化との処理を含んでいる。動き補償(動き補正)はフレーム間予測の参照フレームを空間的に移動させる処理を含むものであり、動き補償の処理は被符号化フレームのブロック単位で行われる。画像内容に動きが無い場合には、移動は無く被予測画素と同一位置の画素が使用される。動きが有る場合には、最も適合するブロックが探索され、移動量が動きベクトルとされる。動き補償のブロックは、MPEG-2の符号化方法では16画素×16画素/16画素×8画素のブロックであり、MPEG-4の符号化方法では16画素×16画素/16画素×8画素/8画素×8画素のブロックであり、MPEG-4 AVC(H.264)の符号化方法では16画素×16画素/16画素×8画素/8画素×16画素/8画素×8画素/8画素×4画素/4画素×8画素/4画素×4画素のブロックである。
 上述した符号化処理は映像画面(フレームまたはフィールド)毎に行われるものであり、画面を細分化したブロック(通常は16画素×16画素、MPEGではマクロブロック(MB)と呼ばれる)が処理単位となるものである。すなわち、符号化されるべきブロック毎に既に符号化された参照画像から最も類似したブロック(予測画像)が選択されて、符号化画像(ブロック)と予測画像の差分信号が符号化(直交変換、量子化等)される。画面内での符号化されるブロックと予測信号の相対位置の差が動きベクトルと呼ばれるものである。
 下記非特許文献1には、勧告H.246/AVCに準拠したビデオ符号化技術が記載されている。勧告H.246/AVCによるビデオコーディングは、ビデオコンテキストを有効に表現するように設計されたビデオコーディング層(VCL:Video Coding Layer)と、ビデオのVCL表現をフォーマットするとともに種々の転送層や記憶媒体による転送のために適切な方法でのヘッダ情報を与えるネットワーク抽象層(NCL:Network Abstraction Layer)とから構成されている。
 また、下記非特許文献2には、H.246/AVCによるビデオコーディング層(VCL)は、ブロックベースドハイブリッドビデオコーディングと呼ばれるアプローチに従っていると記載している。VCL設計は、マクロブロック、スライス、スライスブロックから構成されており、各ピクチャーは固定サイズの複数のマクロブロックに分割され、各マクロブロックは輝度成分で16×16サンプルの四角形ピクチャー領域とそれに対応する2つの色差成分のそれぞれに四角形サンプル領域とを含んでいる。1つのピクチャーは1つまたはそれ以上のスライスを含むことができ、各スライスはアクティブシーケンスとピクチャーパラメータセットとを与えると言う意味で自己包含的であり、スライス表現は基本的には他のスライスからの情報を使用することなくデコードされることができるので、シンタックスエレメントはビットストリームとピクチャーの領域のサンプルの値とから解析できる。しかしながら、より完全なデコーディングのために、スライス境界にわたってデブロッキングフィルタを適応するためには、他のスライスからのいくつかの情報が必要となる。また。各スライスはピクチャーの他のスライスと独立にエンコードされデコードされるので、スライスは並列処理に使用できることも、下記非特許文献2に記載されている。
 尚、MPEG-2は、国際電気通信連合(ITU:International Telecommunication Union)においてH.262として規格化され、またISO/IECにより国際標準ISO/IEC 13818-2として承認されている。更に、MPEG-4は、ISO/IECにより国際標準ISO/IEC 14496-2として承認されている。また更に、MPEG-4 AVC(Advanced Video Coding)は、国際電気通信連合(ITU)においてH.264として規格化され、またISO/IECにより国際標準ISO/IEC 14496-10として承認されている。
Thomas Wiegand et al, "Overview of the H.264/AVC Video Coding Standard", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, JULY 2003, PP.1-19. GARY J. SULLIVAN et al,"Video Compression-From Concept to the H.264/AVC Standard" , PROCEEDING OF THE IEEE, VOL.93、 No.1, JANUARY 2005、PP.18-31.
 本発明者等は本発明に先立って、次世代の国際標準動画像符号化方式に関して研究・開発を行ったものである。
 一方、上述したように符号化処理ではIフレーム、PフレームまたはBフレームの1枚の映像画面は複数のマクロブロック(MB)と呼ばれる小領域に分割され、1枚の映像画面の左上に位置するマクロブロック(MB)から開始され表示のラスタスキャンの順序に従って右方向および下方向の複数のマクロブロック(MB)へ順次に符号化処理が実行される。動画像符号化では、動画像画面内のマクロブロック(MB)の空間的な相関関係を利用して動画像情報が圧縮される。すなわち、1個のマクロブロック(MB)を処理する際には、その周辺のマクロブロック(1枚の映像画面の上方向および左方向のマクロブロック)の情報から処理される1個のマクロブロック(MB)の情報が予測され、動画像符号化処理では予測情報との差分のみが符号化される。
 例えば、MPEG-4のイントラ符号化処理では、ブロックの画素情報としてのDCT係数のDC成分およびAC成分でブロック間予測が実行される。またMPEG-4 AVC(H.264/AVC)のブロック間予測では、DCT変換処理後のブロックの画素値のDC成分およびAC成分でブロック間予測が実行される。
 またMPEG-4とMPEG-4 AVC(H.264/AVC)の符号化処理の動きベクトル検出のための動き予測では、被符号化フレームの符号化対照ブロックと参照フレームの複数のブロックとのブロックマッチングが実行される。ブロックマッチングの際に、最初に探索された4画素精度動きベクトルの1個のマクロブロック(MB)の周辺の複数のマクロブロック(MB)で、2画素精度動きベクトルの探索と1画素精度動きベクトルの探索とが実行され、最終的な動きベクトルが検出される。
 また更に、MPEG-4 AVC(H.264/AVC)に準拠して画像復号時に生じるブロック歪を減少するためのデブロッキングフィルタ処理では、ブロック境界の左右合計8画素および上下合計8画素を所定の演算式に従ったフィルタ処理を実行して、左右合計8画素と上下合計8画素とを書き換える必要がある。
 一方、テレビ放送や映像記録等に使用される動画像の画像サイズは拡大の傾向を続けており、近年では、高精細HD(High Definition)サイズの1920画素×1080画素が、主流となっている。従って、今後の動画像の画像サイズは4K×2Kサイズの4096画素×2048画素や8K×4Kサイズの8192画素×4096画素等の超高精細画像も次第に普及するものと推測される。
 このような画像サイズの拡大の傾向にある次世代の動画像符号化方式は、上述の超高精細画像に対応することが必要となっている。ところで、動画像符号化処理と動画像復号化処理とにおいては、上述したように被処理マクロブロック(MB)の周辺の複数のマクロブロック(MB)の情報が必要である。従って、システム大規模半導体集積回路(システムLSI)で構成された動画像符号化/復号処理装置の半導体チップには、周辺マクロブロック情報を格納する内蔵メモリ(オンチップSRAM)が集積化される必要がある。一般的に、システムLSIで構成された動画像符号化/復号処理装置の半導体チップには、同期型ダイナミックランダムアクセスメモリ(SDRAM)等によって構成された外部メモリが接続される。この外部メモリには、符号化処理または復号化処理の前の動画像データおよび符号化処理または復号化処理の後の動画像データが格納可能とされている。しかし、この外部メモリは周辺マクロブロック情報を格納するにはアクセス速度が遅くなるので、周辺マクロブロック情報は内蔵メモリ(オンチップSRAM)に格納されるものである。一方、内蔵メモリ(オンチップSRAM)に格納される必要のある周辺マクロブロック情報量は、画像サイズの増大に対応して増加するものであるのに対して、内蔵メモリ(オンチップSRAM)の記憶容量には限界があると言う問題が、本発明者等による検討によって明らかとされた。
 本発明は、以上のような本発明に先立った本発明者等による検討の結果、なされたものである。
 従って本発明の目的とするところは、周辺マクロブロック情報を格納するためのメモリの記憶容量の増大を軽減することにある。
 本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
 本願において開示される発明のうちの代表的なものについて簡単に説明すれば下記のとおりである。
 すなわち、本発明の代表的な実施の形態は、符号化処理装置(201)を使用して水平方向の横幅が垂直方向の縦幅よりも大きな横長画面の動画像に含まれる複数のマクロブロック(MB)を符号化する動画像符号化方法である。
 前記複数のマクロブロックの符号化に際して、符号化されるべきマクロブロック(MB)の周辺の複数の符号化済みの複数のマクロブロック(MB)の情報が前記符号化処理装置に内蔵された情報格納メモリ(204)に格納される。
 前記複数のマクロブロックの前記符号化に際して、最初に前記横長画面の前記横幅の左端で前記垂直方向に配列された複数のマクロブロック(MB)が順次に符号化されることによって、前記左端で前記垂直方向に配列された前記複数のマクロブロック(MB)の符号化情報が前記情報格納メモリ(204)に格納される。
 前記垂直方向に配列された前記複数のマクロブロックが符号化された後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロック(MB)が順次に符号化されることを特徴とする(図3、図4、図5参照)。
 本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
 すなわち、本発明によれば、周辺マクロブロック情報を格納するためのメモリの記憶容量の増大を軽減することができる。
図1は、本発明の実施の形態1による動画像符号化/復号処理方式における階層構造を説明する図である。 図2は、図1に示した本発明の実施の形態1による動画符号化方式により符号化された符号化ビデオストリームの構成を示す図である。 図3は、本発明の実施の形態1による動画像の符号化/復号処理の処理手順を示すフローチャートである。 図4は、図3のフローチャートに示す本発明の実施の形態1による動画像の符号化/復号処理の処理手順によって1枚の映像画面の2次元マクロブロック座標(x、 y)に配置された複数のマクロブロック(MB)が順次に処理される様子を示す図である。 図5は、図3のフローチャートに示す本発明の実施の形態1による動画像の符号化/復号処理の処理手順を実行可能な本発明の実施の形態1による動画像符号化/復号処理装置の構成を示す図である。 図6は、図5に示す本発明の実施の形態1による動画像符号化/復号処理装置が復号処理装置として動作する際に供給される動画像符号化ビットストリームのデータ配列を示す図である。 図7は、本発明と異なる従来の符号化処理が実行される場合の処理対象マクロブロック(MB)401と処理対象マクロブロック(MB)401の予測に使用される4個の周辺マクロブロック(MB)402~405との関係を示す図である。 図8は、図1乃至図6にて説明した本発明の実施の形態1による動画像の符号化/復号処理の処理手順が実行される場合の処理対象マクロブロック(MB)401と処理対象マクロブロック(MB)401の予測に使用される4個の周辺マクロブロック(MB)406~409との関係を示す図である。 図9は、従来の符号化処理に従って1枚の映像画面の左上に位置するマクロブロック(MB)から開始され表示のラスタスキャンの順序で最初に右方向へ次に下方向へ順次複数のマクロブロック(MB)の符号化処理が実行される様子を示す図である。 図10は、図1乃至図6で説明した本発明の実施の形態1による符号化処理に従って1枚の映像画面の左上に位置するマクロブロック(MB)から開始され最初に下方向へ次に右方向へ順次複数のマクロブロック(MB)の符号化処理が実行される様子を示す図である。 図11は、MPEG-4 AVC(H.264)の符号化方式に導入されたマクロブロック適応型のフレーム・フィールド予測モードの2本の列のマクロブロック(MB)のペアを従来の符号化処理に従って符号化する様子を示す図である。 図12は、MPEG-4 AVC(H.264)の符号化方式に導入されたマクロブロック適応型のフレーム・フィールド予測モードのマクロブロック(MB)のペアを図1乃至図6で説明した本発明の実施の形態1による符号化処理に従って符号化する様子を示す図である。 図13は、本発明の実施の形態2による動画像符号化/復号処理装置の構成を示す図である。 図14は、本発明の実施の形態3による動画像符号化/復号処理装置の構成を示す図である。 図15は、本発明の実施の形態4による動画像符号化/復号処理装置の構成を示す図である。 図16は、図5に示した本発明の実施の形態1による動画像符号化/復号処理装置201のマクロブロック符号化/復号処理部203または図13に示した本発明の実施の形態2による符号化装置701の符号化処理部704と復号装置711の復号処理部714または図14に示した本発明の実施の形態3による符号化装置901の符号化処理部904と復号装置1911の復号処理部1914または図15に示した本発明の実施の形態4による符号化装置1301の符号化処理部1304と復号装置1311の復号処理部1914として使用可能な本発明の実施の形態5による動画像処理装置1750の構成を示す図である。
1.実施の形態の概要
 まず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
 〔1〕本発明の代表的な実施の形態は、符号化処理装置(201)を使用して水平方向の横幅が垂直方向の縦幅よりも大きな横長画面の動画像に含まれる複数のマクロブロック(MB)を符号化する動画像符号化方法である。
 前記複数のマクロブロックの符号化に際して、符号化されるべきマクロブロック(MB)の周辺の複数の符号化済みの複数のマクロブロック(MB)の情報が前記符号化処理装置に内蔵された情報格納メモリ(204)に格納される。
 前記複数のマクロブロックの前記符号化に際して、最初に前記横長画面の前記横幅の左端で前記垂直方向に配列された複数のマクロブロック(MB)が順次に符号化されることによって、前記左端で前記垂直方向に配列された前記複数のマクロブロック(MB)の符号化情報が前記情報格納メモリ(204)に格納される。
 前記垂直方向に配列された前記複数のマクロブロックが符号化された後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロック(MB)が順次に符号化されることを特徴とする(図3、図4、図5参照)。
 前記実施の形態によれば、周辺マクロブロック情報を格納するためのメモリの記憶容量の増大を軽減することができる。
 好適な実施の形態では、前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロック(MB)が順次に符号化される際に、前記情報格納メモリ(204)に格納された前記左端で前記垂直方向に配列された前記複数のマクロブロック(MB)の前記符号化情報が使用されることを特徴とする(図3、図4、図5参照)。
 他の好適な実施の形態では、前記垂直方向に配列された前記複数のマクロブロックの各マクロブロックが符号化された後に、前記各マクロブロックが前記縦幅の下端または上端に位置する最後または最初のマクロブロックであるか否かが前記符号化処理装置(201)によって判定されることを特徴とする(図3:ステップ104参照)。
 より好適な実施の形態は、前記横長画面の前記横幅の前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロック(MB)が符号化された後に、符号化された前記複数のマクロブロック(MB)が前記横幅の右端に位置する最後の複数のマクロブロックであるか否かが前記符号化処理装置(201)によって判定されることを特徴とする(図3:ステップ106参照)。
 他のより好適な実施の形態では、前記各マクロブロックが前記縦幅の前記下端または前記上端に位置する前記最後または前記最初のマクロブロックでないと前記符号化処理装置(201)によって判定された場合は、前記左端の前記垂直方向で次に符号化されるマクロブロックの位置を表示する垂直方向カウンタ(205)のカウント値が1つインクリメントされることを特徴とする(図3:ステップ105参照)。
 具体的な実施の形態は、符号化された前記複数のマクロブロック(MB)が前記横幅の前記右端に位置する前記最後の複数のマクロブロックでないと前記符号化処理装置(201)によって判定された場合は、前記横長画面の前記横幅の前記水平方向で次に符号化される複数のマクロブロックの位置を表示する水平方向カウンタ(207)のカウント値が1つインクリメントされることを特徴とする(図3:ステップ107参照)。
 〔2〕本発明の別の観点の代表的な実施の形態は、復号化処理装置(201)を使用して水平方向の横幅が垂直方向の縦幅よりも大きな横長画面の動画像に含まれる複数のマクロブロック(MB)を復号化する動画像復号化方法である。
 前記複数のマクロブロックの復号化に際して、復号化されるべきマクロブロック(MB)の周辺の複数の復号化済みの複数のマクロブロック(MB)の情報が前記復号化処理装置に内蔵された情報格納メモリ(204)に格納される。
 前記複数のマクロブロックの前記復号化に際して、最初に前記横長画面の前記横幅の左端で前記垂直方向に配列された複数のマクロブロック(MB)が順次に復号化されることによって、前記左端で前記垂直方向に配列された前記複数のマクロブロック(MB)の復号化情報が前記情報格納メモリ(204)に格納される。
 前記垂直方向に配列された前記複数のマクロブロックが復号化された後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロック(MB)が順次に復号化されることを特徴とする(図3、図4、図5参照)。
 前記実施の形態によれば、周辺マクロブロック情報を格納するためのメモリの記憶容量の増大を軽減することができる。
 好適な実施の形態では、前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロック(MB)が順次に復号化される際に、前記情報格納メモリ(204)に格納された前記左端で前記垂直方向に配列された前記複数のマクロブロック(MB)の前記復号化情報が使用されることを特徴とする(図3、図4、図5参照)。
 他の好適な実施の形態では、前記垂直方向に配列された前記複数のマクロブロックの各マクロブロックが復号化された後に、前記各マクロブロックが前記縦幅の下端または上端に位置する最後または最初のマクロブロックであるか否かが前記復号化処理装置(201)によって判定されることを特徴とする(図3:ステップ104参照)。
 より好適な実施の形態は、前記横長画面の前記横幅の前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロック(MB)が復号化された後に、復号化された前記複数のマクロブロック(MB)が前記横幅の右端に位置する最後の複数のマクロブロックであるか否かが前記復号化処理装置(201)によって判定されることを特徴とする(図3:ステップ106参照)。
 他のより好適な実施の形態では、前記各マクロブロックが前記縦幅の前記下端または前記上端に位置する前記最後または前記最初のマクロブロックでないと前記復号化処理装置(201)によって判定された場合は、前記左端の前記垂直方向で次に復号化されるマクロブロックの位置を表示する垂直方向カウンタ(205)のカウント値が1つインクリメントされることを特徴とする(図3:ステップ105参照)。
 具体的な実施の形態は、復号化された前記複数のマクロブロック(MB)が前記横幅の前記右端に位置する前記最後の複数のマクロブロックでないと前記復号化処理装置(201)によって判定された場合は、前記横長画面の前記横幅の前記水平方向で次に復号化される複数のマクロブロックの位置を表示する水平方向カウンタ(207)のカウント値が1つインクリメントされることを特徴とする(図3:ステップ107参照)。
 〔3〕本発明の代表的な他の実施の形態は、水平方向の横幅が垂直方向の縦幅よりも大きな横長画面の動画像に含まれる複数のマクロブロック(MB)を符号化するために符号化処理部(203)と情報格納メモリ(204)とを具備する動画像符号化処理装置(201)である。
 前記符号化処理部(203)による前記複数のマクロブロックの符号化に際して、符号化されるべきマクロブロック(MB)の周辺の複数の符号化済みの複数のマクロブロック(MB)の情報が前記情報格納メモリ(204)に格納される。
 前記複数のマクロブロックの前記符号化に際して、最初に前記横長画面の前記横幅の左端で前記垂直方向に配列された複数のマクロブロック(MB)が前記符号化処理部(203)によって順次に符号化されることによって、前記左端で前記垂直方向に配列された前記複数のマクロブロック(MB)の符号化情報が前記符号化処理部(203)によって前記情報格納メモリ(204)に格納される。
 前記垂直方向に配列された前記複数のマクロブロックが符号化された後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロック(MB)が前記符号化処理部(203)によって順次に符号化されることを特徴とする(図3、図4、図5参照)。
 前記実施の形態によれば、周辺マクロブロック情報を格納するためのメモリの記憶容量の増大を軽減することができる。
 好適な実施の形態では、前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロック(MB)が前記符号化処理部(203)によって順次に符号化される際に、前記情報格納メモリ(204)に格納された前記左端で前記垂直方向に配列された前記複数のマクロブロック(MB)の前記符号化情報が使用されることを特徴とする(図3、図4、図5参照)。
 他の好適な実施の形態では、前記垂直方向に配列された前記複数のマクロブロックの各マクロブロック(MB)が符号化された後に、前記各マクロブロックが前記縦幅の下端または上端に位置する最後または最初のマクロブロックであるか否かが前記動画像符号化処理装置(201)によって判定されることを特徴とする(図3:ステップ104参照)。
 更に他の好適な実施の形態は、前記横長画面の前記横幅の前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロック(MB)が符号化された後に、符号化された前記複数のマクロブロック(MB)が前記横幅の右端に位置する最後の複数のマクロブロックであるか否かが前記動画像符号化処理装置(201)によって判定されることを特徴とする(図3:ステップ106参照)。
 また更に他の好適な実施の形態による前記動画像符号化処理装置(201)は、前記垂直方向で次に符号化されるマクロブロックの位置を表示する垂直方向カウンタ(205)を更に具備する(図5参照)。
 前記各マクロブロックが前記縦幅の前記下端または前記上端に位置する前記最後または前記最初のマクロブロックでないと前記動画像符号化処理装置(201)によって判定された場合は、前記垂直方向カウンタ(205)のカウント値が1つインクリメントされることを特徴とする(図3:ステップ105参照)。
 また更に別の好適な実施の形態による前記動画像符号化処理装置(201)は、前記水平方向で次に符号化される複数のマクロブロックの位置を表示す水平方向カウンタ(207)を更に具備する(図5参照)。
 符号化された前記複数のマクロブロック(MB)が前記横幅の前記右端に位置する前記最後の複数のマクロブロックでないと前記動画像符号化処理装置(201)によって判定された場合は、前水平方向カウンタ(207)のカウント値が1つインクリメントされることを特徴とする(図3:ステップ107参照)。
 より好適な実施の形態による前記動画像符号化処理装置(201)は、前記横長画面の前記動画像に含まれる前記複数のマクロブロックを格納可能な画像メモリ(702、902、1302)と接続可能とされる。
 前記画像メモリに前記横長画面の前記縦幅の前記上端で前記水平方向に配列された複数のマクロブロック(1、2、3、4)が格納された後に、次に前記画像メモリに前記横長画面の前記縦幅の前記上端の垂直方向下隣で前記水平方向に配列された複数のマクロブロックが前記画像メモリ(5、6、7、8)に格納可能とされたことを特徴とする(図13、図14、図15参照)。
 他のより好適な実施の形態では、前記動画像符号化処理装置(701)は、前記画像メモリから前記横長画面を読み出して画像を90°回転した後に、前記画像メモリに生成した回転画像を書き込む画像回転部(703)を更に具備し、前記画像メモリに格納された回転画像を読み出して前記符号化処理部(704)に供給可能とされたことを特徴とする(図13参照)。
 更に他のより好適な実施の形態では、前記動画像符号化処理装置(201)は、前記画像メモリに接続可能とされた画像メモリインターフェース(903、906、1303、1306、1309)を更に具備する。
 前記画像メモリインターフェースは、前記画像メモリから前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロック(9、5、1)を読み出して前記符号化処理部(904、1304)に供給した後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロック(10、6、2)を読み出して前記符号化処理部(904、1304)に供給可能とされたことを特徴とする(図14、図15参照)。
 また別の他のより好適な実施の形態による前記動画像符号化処理装置は、前記画像メモリから前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロック(9、5、1)を読み出して前記符号化処理部(904、1304)に供給した後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロック(10、6、2)を読み出して前記符号化処理部(904、1304)に供給可能とする画像リードアドレス生成部(906、1306)を更に具備することを特徴とする(図14、図15参照)。
 具体的な実施の形態による前記動画像符号化処理装置は、前記画像リードアドレス生成部から生成されるアドレスに従って前記画像メモリから読み出される前記複数のマクロブロックの各マクロブロックを略90°回転した回転画像を生成して前記符号化処理部に供給可能とする画像回転部(903、1303)を更に具備することを特徴とする(図14、図15参照)。
 最も具体的な実施の形態による前記動画像符号化処理装置では、前記符号化処理部(704、904、1304)は可変長符号化部と直交変換器・量子化器と動き予測部の各動作機能を含むことを特徴とする(図16参照)。
 〔4〕本発明の代表的な更に他の実施の形態は、水平方向の横幅が垂直方向の縦幅よりも大きな横長画面の動画像に含まれる複数のマクロブロック(MB)を復号化するために復号化処理部(203)と情報格納メモリ(204)とを具備する動画像復号化処理装置(201)である。
 前記復号化処理部(203)による前記複数のマクロブロックの復号化に際して、復号化されるべきマクロブロック(MB)の周辺の複数の復号化済みの複数のマクロブロック(MB)の情報が前記情報格納メモリ(204)に格納される。
 前記複数のマクロブロックの前記復号化に際して、最初に前記横長画面の前記横幅の左端で前記垂直方向に配列された複数のマクロブロック(MB)が前記復号化処理部(203)によって順次に復号化されることによって、前記左端で前記垂直方向に配列された前記複数のマクロブロック(MB)の復号化情報が前記復号化処理部(203)によって前記情報格納メモリ(204)に格納される。
 前記垂直方向に配列された前記複数のマクロブロックが復号化された後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロック(MB)が前記復号化処理部(203)によって順次に復号化されることを特徴とする(図3、図4、図5参照)。
 前記実施の形態によれば、周辺マクロブロック情報を格納するためのメモリの記憶容量の増大を軽減することができる。
 好適な実施の形態では、前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロック(MB)が前記復号化処理部(203)によって順次に復号化される際に、前記情報格納メモリ(204)に格納された前記左端で前記垂直方向に配列された前記複数のマクロブロック(MB)の前記復号化情報が使用されることを特徴とする(図3、図4、図5参照)。
 他の好適な実施の形態では、前記垂直方向に配列された前記複数のマクロブロックの各マクロブロック(MB)が復号化された後に、前記各マクロブロックが前記縦幅の下端または上端に位置する最後または最初のマクロブロックであるか否かが前記動画像復号化処理装置(201)によって判定されることを特徴とする(図3:ステップ104参照)。
 更に他の好適な実施の形態は、前記横長画面の前記横幅の前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロック(MB)が復号化された後に、復号化された前記複数のマクロブロック(MB)が前記横幅の右端に位置する最後の複数のマクロブロックであるか否かが前記動画像復号化処理装置(201)によって判定されることを特徴とする(図3:ステップ106参照)。
 また更に他の好適な実施の形態による前記動画像復号化処理装置(201)は、前記垂直方向で次に復号化されるマクロブロックの位置を表示する垂直方向カウンタ(205)を更に具備する(図5参照)。
 前記各マクロブロックが前記縦幅の前記下端または前記上端に位置する前記最後または前記最初のマクロブロックでないと前記動画像復号化処理装置(201)によって判定された場合は、前記垂直方向カウンタ(205)のカウント値が1つインクリメントされることを特徴とする(図3:ステップ105参照)。
 また更に別の好適な実施の形態による前記動画像復号化処理装置(201)は、前記水平方向で次に復号化される複数のマクロブロックの位置を表示す水平方向カウンタ(207)を更に具備する(図5参照)。
 復号化された前記複数のマクロブロック(MB)が前記横幅の前記右端に位置する前記最後の複数のマクロブロックでないと前記動画像復号化処理装置(201)によって判定された場合は、前水平方向カウンタ(207)のカウント値が1つインクリメントされることを特徴とする(図3:ステップ107参照)。
 また更に別の好適な実施の形態による前記動画像復号化処理装置(711、911、1311)は、前記複数のマクロブロックを格納可能な画像メモリ(712、912、1312)と接続可能とされたことを特徴とする。
 また更に別の好適な実施の形態では、前記動画像符号化処理装置(711)は、前記画像メモリから前記横長画面を読み出して画像を90°回転した後に、前記画像メモリに生成した回転画像を書き込む画像回転部(713)を更に具備することを特徴とする(図13参照)。
 より好適な実施の形態による前記動画像符号化処理装置(911、1311)は、動画像符号化信号が供給可能な外部インターフェース(913、916、918、1313、1316、1318)を更に具備する。
 前記外部インターフェースは、前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロック(9、5、1)を前記復号化処理部(914、1314)に供給した後に、次に前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロック(10、6、2)を前記復号化処理部に供給可能とされる。
 前記動画像復号化処理装置は、前記外部インターフェースから供給される前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロックを復号処理した後に、次に前記外部インターフェースから供給される前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロックを復号処理する。
 前記動画像復号化処理装置は、水平方向の横幅が垂直方向の縦幅よりも大きな復号動画像情報を格納可能な画像メモリ(912、1312)と接続可能とされる。
 前記動画像復号化処理装置は、前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロックの復号処理情報を前記画像メモリの第1記憶領域(9、5、1)に格納した後、次に前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックの復号処理情報を前記画像メモリの第2記憶領域(10、6、2)に格納可能とされる。
 前記画像メモリの前記第1記憶領域と前記第2記憶領域とは、水平方向の表示横幅が垂直方向の表示縦幅よりも大きな横長の動画像表示画面の前記表示横幅の左端で前記垂直方向に配列された複数の画像情報と前記表示横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数の画像情報とにそれぞれ対応することを特徴とする(図14、図15参照)。
 他のより好適な実施の形態では、前記動画像復号化処理装置は前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロックの復号処理情報を前記画像メモリの前記第1記憶領域に格納した後、次に前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックの復号処理情報を前記画像メモリの前記第2記憶領域に格納可能とする画像ライトアドレス生成部(918、1318)を更に具備することを特徴とする(図14、図15参照)。
 具体的な実施の形態では、前記外部インターフェースは、前記動画像符号化信号中に含まれる前記複数のマクロブロックを略90°回転した回転画像を生成して前記復号化処理部に供給可能とされたことを特徴とする(図14、図15参照)。
 最も具体的な実施の形態による前記動画像復号化処理装置では、前記復号化処理部(714、914、1314)は可変長復号部と逆量子化器・逆直交変換器と動き補償部の各動作機能を含むことを特徴とする(図16参照)。
 2.実施の形態の詳細
 次に、実施の形態について更に詳述する。尚、発明を実施するための最良の形態を説明するための全図において、前記の図と同一の機能を有する部品には同一の符号を付して、その繰り返しの説明は省略する。
 [実施の形態1]
 《動画像符号化/復号処理方式における階層構造》
 図1は、本発明の実施の形態1による動画像符号化/復号処理方式における階層構造を説明する図である。
 図1に示すように、本発明の実施の形態1による動画符号化方式は動画像の全体に対応するシーケンス(Sequence)10から離散コサイン変換(DCT:Discrete Cosine Transform)の処理単位のブロック(Block)15、16、17までの6階層の構造を有している。すなわち、第1階層はシーケンス(Sequence)10、第2階層はグループオブピクチャ(GOP)11、第3階層はピクチャー(Picture)12、第4階層はスライス(Slice)13、第5階層はマクロブロック(Macro-block)14、第6階層はブロック(Block)15、16、17である。グループオブピクチャ(GOP)11に含まれるピクチャー(Picture)12の数もしくはスライス(Slice)13に含まれるマクロブロック(Macro-block)14の数は比較的柔軟となっている。
 図1に示すように、第3階層のピクチャー(Picture)12の動画像の画面縦幅は、動画像の画面横幅分よりも、短い横長の画面となっている。従来のMPEG-2の動画符号化方式/復号処理方式においては、第4階層はスライス(Slice)13は第3階層のピクチャー(Picture)12の横幅方向に配置され、第5階層のマクロブロック(MB)14も横幅方向に配置された第4階層のスライス13の内部で横幅方向に順次符号化または復号の処理がなされるものであった。それに対して、本発明の実施の形態1による動画符号化方式においては、第4階層はスライス(Slice)13は第3階層のピクチャー(Picture)12の縦幅方向に配置され、第5階層のマクロブロック(MB)14も縦幅方向に配置された第4階層のスライス13の内部で破線の矢印に示したように縦幅方向に順次符号化または復号の処理がなされるものでる。
 《符号化ビデオストリームの構成》
 図2は、図1に示した本発明の実施の形態1による動画符号化方式により符号化された符号化ビデオストリームの構成を示す図である。
 図2に示すビデオストリームは、シーケンスレベル211、グループオブピクチャ(GOP)レベル221、ピクチャーレベル231、スライスレベル241、マクロブロック(MB)レベル251の異なったレベルの重ね合った階層となっている。従って、次の各レベルは、以前の各レベルの一部となっている。シーケンスレベル211はシーケンスの連続で、各シーケンスは複数のグループオブピクチャー(GOP)のグループを含んでいる。グループオブピクチャ(GOP)レベル221のグループはピクチャーのグループの連続で、各GOPは1つまたは多数のピクチャーを含んでいる。ピクチャーレベル231はピクチャー(Iフレーム、Pフレーム、Bフレームを含む)の連続で、各ピクチャー230は1つまたは多数のスライス240を含んでいる。スライスレベル242はスライス240の連続で、各スライス240は1つまたは多数のマクロブロック250を含んでいる。マクロブロック(MB)レベル251は、マクロブロックの連続である。
 図2に示すビデオストリームをデコードするためにはビデオストリームに関する確実な情報が必要であり、しばしばこの情報はビデオストリームに含まれるヘッダーに含まれている。従って、ビデオストリームの各レベルのデータの各ブロックは、一般にビデオストリームのエンコーディングとデコーディングに関係する関連情報を含むヘッダーを有している。例えば、シーケンスレベル211でシーケンス210はシーケンスヘッダー212を有し、GOPレベル221でGOP220はGOPヘッダー222を有し、ピクチャーレベル231でピクチャー230はピクチャーヘッダー232を有し、スライスレベル241でスライス240はスライスヘッダー242を有し、MBレベル251ではマクロブロック(MB)250はマクロブロック(MB)ヘッダー252を有している。
 シーケンスヘッダー212は、水平サイズ(horizontal_size)と呼ばれるピクチャー12の幅、垂直サイズ(vertical_size)と呼ばれるピクチャー12の高さ、アスペクトレシオ情報(aspect_ratio_information)と呼ばれる画素のアスペクト比等の情報を含んでいる。
 GOPヘッダー222は、タイムコード(time_code)と呼ばれるパラメータとクローズドGOP(closed_gop)やブロークン・リンク(broken_link)と呼ばれるGOPの構造を記述するパラメータの情報を含んでいる。
 ピクチャーヘッダー232は、ピクチャーがIピクチャーとPピクチャーとBピクチャーとのいずれかを示すピクチャー・コーディングタイプ(picture_coding_type)と呼ばれるパラメータ等の情報を含んでいる。ピクチャーヘッダー232は、更に動きベクトルがどのピクチャーから符号化されたかを示すエフコード(f_code)と呼ばれるパラメータを含んでいる。
 スライスヘッダー242は、スライス開始を示すスライススタートコード(slice_start_code)と、スライスの最初のマクロブロック(MB)の垂直位置・水平位置を示すパラメータ等の情報を含んでいる。
 マクロブロック(MB)ヘッダー252は、マクロブロックアドレスと、マクロブロックのタイプと、マクロブロック250が動きベクトルと動きベクトルのタイプ(順方向、逆方向)を含むか否と、マクロブロック単位で指定する量子化器スケール等との情報を含んでいる。更にマクロブロック(MB)ヘッダー252は、離散コサイン変換(DCT)のタイプと、DCT係数等とを決定する。
 《動画像符号化処理/復号処理の処理手順》
 図3は、本発明の実施の形態1による動画像の符号化/復号処理の処理手順を示すフローチャートである。
 図3に示した本発明の実施の形態1の動画符号化方式によるビットストリームのシンタックス(圧縮符号化データ列の規則または符号化データのビットストリームの構成方法)は、図1と図2とを使用して説明した規則に基づいている。
 図3のステップ101に先立って、本発明の実施の形態1による動画像の符号化/復号処理の処理を実行する動画像符号化/復号処理装置は、上述したシンタックスを解析することによって、本発明の実施の形態1によるシンタックスに従って動画像の符号化/復号処理の処理を実行すべきことを判断する。
 この判断の後に図3において、ステップ101によって1枚の映像画面(ピクチャー12)の動画像符号化処理または動画像復号処理の処理が開始され、ステップ102によってマクロブロック(MB)の座標(x、y)が原点(0、0)へ初期化される。ステップ103によってマクロブロック座標(x、y)に位置する1つのマクロブロック(MB)が符号化処理または復号処理される。ステップ104によって、ステップ103にて処理されたマクロブロック(MB)が画面下端であるか否かが判定される。ステップ104にて、処理されたマクロブロック(MB)が画面下端でないと判定された場合には、ステップ105にてマクロブロック座標(x、y)の縦方向の座標yを1つインクリメントした後に、ステップ103のマクロブロック(MB)の符号化処理または復号処理が反復される。ステップ104にて、処理されたマクロブロック(MB)が画面下端であると判定された場合には、ステップ106にて処理されたマクロブロック(MB)が画面右端であるか否かが判定される。ステップ106で処理されたマクロブロック(MB)が画面右端でないと判定された場合には、ステップ107にてマクロブロック座標(x、 y)の横方向の座標xを1つインクリメントして縦方向の座標yを初期値(0)にリセットした後に、ステップ103のマクロブロック(MB)の符号化処理または復号処理が反復される。ステップ106で処理されたマクロブロック(MB)が画面右端であると判定された場合には、ステップ108にて1枚の映像画面の動画像符号化処理または動画像復号処理の処理が終了される。
 図4は、図3のフローチャートに示す本発明の実施の形態1による動画像の符号化/復号処理の処理手順によって1枚の映像画面の2次元マクロブロック座標(x、y)に配置された複数のマクロブロック(MB)が順次に処理される様子を示す図である。
 図4に示すように、1枚の映像画面の左上に位置するマクロブロック(MB)から開始され、最初の処理の移動方向が、表示のラスタスキャンの順序に従って画面の横右方向とされるのではなく、画面の縦下方向とされる。画面の縦下方向への処理の移動方向によって処理済みのマクロブロック(MB)が映像画面下端まで到達すると、一個右側のマクロブロック(MB)の列の上端に位置するマクロブロック(MB)に処理が移動され(処理が繰り返され)、また処理の移動方向が画面の縦下方向とされる。
 《動画像符号化/復号処理装置の構成》
 図5は、図3のフローチャートに示す本発明の実施の形態1による動画像の符号化/復号処理の処理手順を実行可能な本発明の実施の形態1による動画像符号化/復号処理装置の構成を示す図である。
 図5に示すように、システムLSIで構成された動画像符号化/復号処理装置201には、同期型ダイナミックランダムアクセスメモリによって構成された外部メモリ202が接続される。動画像符号化/復号処理装置201の半導体チップは、マクロブロック符号化/復号処理部203、周辺マクロブロック情報格納メモリ204、垂直方向マクロブロックカウンタ205、画面下端判定部206、水平方向マクロブロックカウンタ207、画面右端判定部208、AND論理ゲート回路209を含む。
 動画像符号化処理時には、動画像符号化/復号処理装置201は、外部メモリ202に格納された原画像と参照画像とを使用して動画像符号化処理を実行して外部メモリ202に動画像符号化ビットストリームおよび参照画像を出力するものである。また、動画像復号処理時に動画像符号化/復号処理装置201は、外部メモリ202に格納された動画像符号化ビットストリームと参照画像とを使用して動画像復号処理を実行して外部メモリ202に復号動画像を出力するものである。
 マクロブロック符号化/復号処理部203は、垂直方向マクロブロックカウンタ205と水平方向マクロブロックカウンタ207とによって示されるマクロブロック座標に位置するマクロブロック(MB)の符号化処理または復号処理を実行するものである。
 周辺マクロブロック情報格納メモリ204は、マクロブロック符号化/復号処理部203から出力される画面の縦下方向(垂直方向)の複数のマクロブロック(MB)の情報を格納する。従って、マクロブロック符号化/復号処理部203は、左側列のマクロブロック(MB)の情報を周辺マクロブロック情報格納メモリ204から読み出して、符号化または復号の処理を実行する。垂直方向マクロブロックカウンタ205は、マクロブロック符号化/復号処理部203から出力されるマクロブロック処理終了信号によってカウント値が1つインクリメントされる。垂直方向マクロブロックカウンタ205の出力信号の垂直方向マクロブロック位置信号は、画面下端判定部206に供給される。画面下端判定部206によるマクロブロック位置の判定結果によってマクロブロック位置が画面下端と判定された場合には、垂直方向マクロブロックカウンタ205は初期値(0)にクリア(リセット)され、水平方向マクロブロックカウンタ207のカウント値が1つインクリメントされる。また水平方向マクロブロックカウンタ207の出力信号の水平方向マクロブロック位置信号は、画面右端判定部208に供給される。画面右端判定部208によるマクロブロック位置の判定結果によってマクロブロック位置が画面右端と判定され、同時に画面下端判定部206によるマクロブロック位置の判定結果によってマクロブロック位置が画面下端と判定された場合には、AND論理ゲート回路209には画面下端判定部206の判定結果と画面右端判定部208の判定結果が供給される。従って、AND論理ゲート回路209の出力から生成されるハイレベル(“1”)の画面処理終了信号が、マクロブロック符号化/復号処理部203へ供給される。
 《動画像符号化ビットストリームのデータ配列》
 図6は、図5に示す本発明の実施の形態1による動画像符号化/復号処理装置が復号処理装置として動作する際に供給される動画像符号化ビットストリームのデータ配列を示す図である。
 図6に示すように、動画像符号化ビットストリームのデータ配列ではピクチャヘッダ301に続き、最初に画面左上端のマクロブロック座標(0、0)のマクロブロック(MB(0、0))が符号化された情報302が配置される。続いて、垂直下方向のマクロブロック座標(0、1)のマクロブロック(MB(0、1))が符号化された情報303から垂直下方向に順番にマクロブロック(MB)の符号化された情報が配置される。画面左下端のマクロブロック座標(0、h-1)のマクロブロック(MB(0、h-1))が符号化された情報304の後に、画面左から2列目のマクロブロック座標(1、0)のマクロブロック(MB(1、0))が符号化された情報305が配置される。以降同様に、画面右下端のマクロブロック座標(w-1、h-1)のマクロブロック(MB(w-1、h-1))まで符号化された情報が配置される。尚、図6に示すピクチャヘッダ301には、実際には図2に示したシーケンスヘッダー212、GOPヘッダー222、ピクチャーヘッダー232、スライスレベル242、マクロブロック(MB)ヘッダー252を含むものである。その結果、図6に示すピクチャヘッダ301を解析することによって、本発明の実施の形態1によるシンタックスに従って動画像の符号化/復号処理の処理を実行すべきことが判断されることが可能となる。まは、図2に示すシーケンスヘッダー212に含まれる水平サイズと呼ばれるピクチャー12の幅と垂直サイズと呼ばれるピクチャー12の高さを解析することによって、図3の処理手順のステップ104で判断される画面下端とステップ106で判断される画面右端とを知ることが可能となる。
 《周辺マクロブロック》
 図7は、本発明と異なる従来の符号化処理が実行される場合の処理対象マクロブロック(MB)401と処理対象マクロブロック(MB)401の予測に使用される4個の周辺マクロブロック(MB)402~405との関係を示す図である。
 図8は、図1乃至図6にて説明した本発明の実施の形態1による動画像の符号化/復号処理の処理手順が実行される場合の処理対象マクロブロック(MB)401と処理対象マクロブロック(MB)401の予測に使用される4個の周辺マクロブロック(MB)406~409との関係を示す図である。
 図7では、処理対象マクロブロック(MB)401の右上に位置するマクロブロック(MB)404が未処理の状態で処理対象マクロブロック(MB)401を処理しなければならないため、参照情報が減少して予測精度が劣化してしまう。それに対して、本発明の実施の形態1による図8では、処理対象マクロブロック(MB)401の処理タイミングでは4個の周辺マクロブロック(MB)406~409の全ては処理済みであるので、参照情報の減少による予測精度の劣化が回避されることが可能となる。
 《周辺マクロブロック情報の格納メモリ》
 図9は、従来の符号化処理に従って1枚の映像画面の左上に位置するマクロブロック(MB)から開始され表示のラスタスキャンの順序で最初に右方向へ次に下方向へ順次複数のマクロブロック(MB)の符号化処理が実行される様子を示す図である。
 図9に示した従来の符号化処理では、周辺マクロブロック情報の格納メモリの記憶容量は、画面横幅分のマクロブロック(MB)情報502を格納する大きな記憶容量を持つ必要が有る。
 図10は、図1乃至図6で説明した本発明の実施の形態1による符号化処理に従って1枚の映像画面の左上に位置するマクロブロック(MB)から開始され最初に下方向へ次に右方向へ順次複数のマクロブロック(MB)の符号化処理が実行される様子を示す図である。
 図10に示した本発明の実施の形態1による符号化処理では、周辺マクロブロック情報の格納メモリの記憶容量は画面縦幅分のマクロブロック(MB)情報504を格納する小さな記憶容量を持つことで十分となる。
 一般的に、動画像の画面縦幅は、動画像の画面横幅分よりも、短い横長である。例えば、QVGA(Quarter Video Graphic Array)サイズでは320画素×240画素、標準(Standard)サイズでは720画素×480画素、高精細HD(High Definition)サイズでは1920画素×1080画素、4K×2Kサイズでは4096画素×2048画素、8K×4Kサイズでは8192画素×4096画素である。従って、図9に示した従来の符号化処理で必要な画面横幅分の大きな容量と比較して、図10に示した本発明の実施の形態1による符号化処理で必要な周辺マクロブロック情報の格納メモリの記憶容量は画面縦幅分の小さな容量となる。
 《マクロブロック適応型のフレーム・フィールド予測モード》
 図11は、MPEG-4 AVC(H.264)の符号化方式に導入されたマクロブロック適応型のフレーム・フィールド予測モードの2本の列のマクロブロック(MB)のペアを従来の符号化処理に従って符号化する様子を示す図である。
 図11に示した従来の符号化処理では、周辺マクロブロック情報の格納メモリの記憶容量は、画面横幅分の2倍のマクロブロック(MB)情報602を格納する大きな記憶容量を持つ必要が有る。
 図12は、MPEG-4 AVC(H.264)の符号化方式に導入されたマクロブロック適応型のフレーム・フィールド予測モードのマクロブロック(MB)のペアを図1乃至図6で説明した本発明の実施の形態1による符号化処理に従って符号化する様子を示す図である。
 図12に示す図1乃至図6で説明した本発明の実施の形態1による符号化処理では、周辺マクロブロック情報の格納メモリの記憶容量は、画面縦幅分のマクロブロック(MB)情報604を格納する小さな記憶容量を持つことで十分となる。
 [実施の形態2]
 《実施の形態2による動画像符号化/復号処理装置》
 図13は、本発明の実施の形態2による動画像符号化/復号処理装置の構成を示す図である。
 図13の上部には本発明の実施の形態2による動画像符号化の処理を実行する符号化装置701が示され、図13の下部には本発明の実施の形態2による動画像復号の処理を実行する復号装置711が示されている。
 符号化装置701は、画像回転部703と符号化処理部704と周辺マクロブロック情報格納メモリ705とを含んでいる。符号化装置701は、外部メモリ702に格納された原画像の動画像符号化処理を実行することによって外部メモリ702に動画像符号化ビットストリームと参照画像とを出力する。
 外部メモリ702に格納された原画像は符号化装置701の画像回転部703に供給され、画像回転部703は原画像を+90°右回転して回転画像を外部メモリ702に供給する。従って、外部メモリ702に格納された原画像の横幅は縦幅よりも長い横長となっており、画面表示のラスタスキャンの順序で右水平方向に複数のマクロブロック(MB)1、2、3、4が配列され、下垂直方向に複数のマクロブロック(MB)1、5、9が配列されている。すなわち、外部メモリ702に格納された原画像の横幅の右水平方向に配列される複数のマクロブロック(MB)1、2、3、4の個数は、原画像の縦幅の下垂直方向に配列される複数のマクロブロック(MB)1、5、9の個数よりも大きな値となっている。
 一方、画像回転部703によって+90°右回転され外部メモリ702に供給された回転画像は、横幅の水平方向には小さな個数の複数のマクロブロック(MB)1、5、9を含み、縦幅の垂直方向には大きな個数の複数のマクロブロック(MB)1、2、3、4を含んでいる。また外部メモリ702に格納された参照画像も回転画像と同様に、横幅の水平方向には小さな個数の複数のマクロブロック(MB)1、5、9を含み、縦幅の垂直方向には大きな個数の複数のマクロブロック(MB)1、2、3、4を含んでいる。
 符号化処理部704は、最初に外部メモリ702に格納された回転画像の横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)9、5、1と外部メモリ702に格納された参照画像の横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)9、5、1とを順次読み出して、動画像符号化処理を実行する。次に、符号化処理部704は、外部メモリ702に格納された回転画像および参照画像の各横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)10、6、2を順次読み出して、動画像符号化処理を実行する。また動画像符号化処理によって生成される動画像符号化ビットストリームは、外部メモリ702に格納される。この動画像符号化処理に必要な周辺マクロブロック情報格納メモリ705の記憶容量は、外部メモリ702に格納された原画像の縦幅の垂直方向に配列された複数のマクロブロック(MB)9、5、1の個数で十分となる。
 従って、符号化装置701をシステムLSIで構成する際、比較的小さな記憶容量の周辺マクロブロック情報格納メモリ705をシステムLSIの内蔵メモリ(オンチップSRAM)とすることが容易となる。また、原画像と回転画像と動画像符号化ビットストリームとを格納する外部メモリ702は、同期型ダイナミックランダムアクセスメモリ(SDRAM)によって構成される。
 復号装置711は、復号処理部714と周辺マクロブロック情報格納メモリ715と画像回転部713とを含んでいる。
 復号処理部714は、最初に外部メモリ712に格納された動画像符号化ビットストリームの横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)9、5、1と外部メモリ712に格納された参照画像の横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)9、5、1とを順次読み出して、動画像復号処理を実行する。次に、復号処理部714は、外部メモリ712に格納された動画像符号化ビットストリームおよび参照画像の各横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)10、6、2を順次読み出して動画像復号処理を実行する。また動画像復号処理によって生成される動画像復号ビットストリームは、外部メモリ712に格納される。更に、画像回転部713は、外部メモリ712に格納された動画像復号ビットストリームを90°左回転して最終的な動画像復号ビットストリームとして外部メモリ712に再度供給する。この動画像復号処理に必要な周辺マクロブロック情報格納メモリ715の記憶容量は、外部メモリ712に格納された動画像符号化ビットストリームの横幅の水平方向に配列された複数のマクロブロック(MB)9、5、1の個数で十分となる。
 従って、復号装置711をシステムLSIで構成する際に、比較的小さな記憶容量の周辺マクロブロック情報格納メモリ715をシステムLSIの内蔵メモリ(オンチップSRAM)とすることが容易となる。また、動画像符号化ビットストリームと回転画像と動画像復号ビットストリームとを格納する外部メモリ712は、同期型ダイナミックランダムアクセスメモリ(SDRAM)によって構成される。
 図13に示した本発明の実施の形態2による動画像の符号化装置701と復号装置711とは、システムLSI)で構成された動画像符号化/復号処理装置の半導体チップへの集積化が可能である。その際に、符号化処理部704と復号処理部714は共通ハードウェアリソースで構成可能であり、周辺マクロブロック情報格納メモリ705と周辺マクロブロック情報格納メモリ715は共通ハードウェアリソースで構成可能であり、画像回転部703と画像回転部713は共通ハードウェアリソースで構成可能である。電源投入時等の初期化シーケンスに供給される動作モード設定情報に従って、システムLSIで構成される動画像符号化/復号処理装置を符号化装置701と復号装置711とのいずれにも任意に動作させることが可能となる。
 [実施の形態3]
 《実施の形態3による動画像符号化/復号処理装置》
 図14は、本発明の実施の形態3による動画像符号化/復号処理装置の構成を示す図である。
 図13に示した本発明の実施の形態2による動画像符号化/復号処理装置と比較すると、図14に示す本発明の実施の形態3による動画像符号化/復号処理装置では、外部メモリ902へのアクセス頻度の低減が可能となる。
 図14の上部には本発明の実施の形態3による動画像符号化の処理を実行する符号化装置901が示され、図14の下部には本発明の実施の形態3による動画像復号の処理を実行する復号装置911が示されている。
 符号化装置901は、右90°回転部903と符号化処理部904と周辺マクロブロック情報格納メモリ905と画像リードアドレス生成部906とを含んでいる。符号化装置901は、外部メモリ902に格納された原画像の動画像符号化処理を実行することによって外部メモリ902に動画像符号化ビットストリームと参照画像とを出力する。
 外部メモリ902に格納された原画像の複数のマクロブロック(MB)は画像リードアドレス生成部906から生成されるアドレスに従って符号化装置901の右90°回転部903に供給されて、右90°回転部903は供給されたマクロブロック(MB)を+90°右回転した回転画像を符号化処理部904に供給する。すなわち、外部メモリ902に格納される原画像の横幅は縦幅よりも長い横長であって、画面表示のラスタスキャンの順序で右水平方向に複数のマクロブロック(MB)1、2、3、4が配列され、下垂直方向に複数のマクロブロック(MB)1、5、9が配列されている。その結果、外部メモリ902に格納された原画像の横幅の右水平方向に配列される複数のマクロブロック(MB)1、2、3、4の個数は、原画像の縦幅の下垂直方向に配列される複数のマクロブロック(MB)1、5、9の個数よりも大きな値となっている。
 一方、画像回転部703によって+90°右回転され符号化処理部904に供給された回転画像は、横幅の水平方向に小さな個数の複数のマクロブロック(MB)9、5、1を含み、縦幅の垂直方向に大きな個数の複数のマクロブロック(MB)1、2、3、4を含んでいる。また外部メモリ902に格納された参照画像も回転画像と同様に、横幅の水平方向には小さな個数の複数のマクロブロック(MB)9、5、1を含み、縦幅の垂直方向には大きな個数の複数のマクロブロック(MB)1、2、3、4を含んでいる。
 符号化処理部904は、最初に、右90°回転部903から供給される回転画像の横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)9、5、1と外部メモリ902に格納された参照画像の横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB) 9、5、1を順次読み出して、動画像符号化処理を実行する。次に符号化処理部904は、右90°回転部903から供給される回転画像および外部メモリ902に格納された参照画像の各横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)10、6、2を順次読み出して、動画像符号化処理を実行する。また動画像符号化処理によって生成される動画像符号化ビットストリームは、外部メモリ902に格納される。上述した動画像符号化処理に必要な周辺マクロブロック情報格納メモリ905の記憶容量は、外部メモリ902に格納された原画像の縦幅の垂直方向に配列された複数のマクロブロック(MB)1、5、9の個数で十分となる。
 従って、符号化装置901をシステムLSIで構成する際、比較的小さな記憶容量の周辺マクロブロック情報格納メモリ905をシステムLSIの内蔵メモリ(オンチップSRAM)とすることが容易となる。また、原画像と動画像符号化ビットストリームを格納する外部メモリ902は、同期型ダイナミックランダムアクセスメモリ(SDRAM)によって構成される。また、符号化装置901の動画像符号化処理によって符号化された動きベクトルMV1も、外部メモリ902に格納された原画像での動きベクトルと比較して右90°回転部903によって+90°右回転されたものとなるものである。
 復号装置911は、復号処理部914と周辺マクロブロック情報格納メモリ915と左90°回転部913と画像リードアドレス生成部916と差分画像生成部917と画像ライトアドレス生成部918とを含んでいる。
 復号処理部914は、最初に外部メモリ912に格納された動画像符号化ビットストリームの横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)9、5、1を順次読み出す。外部メモリ912から順次に読み出された動画像符号化ビットストリームの横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)9、5、1は、差分画像生成部917を介して左90°回転部913に供給される。左90°回転部913は、縦幅の垂直方向に配列された複数のマクロブロック(MB)9、5、1を生成して復号処理部914へ供給する。
 また画像リードアドレス生成部916は外部メモリ712に格納された参照画像の縦幅の垂直方向に配列された複数のマクロブロック(MB)9、5、1を順次読み出すので、復号処理部914は動画像符号化ビットストリームの複数のマクロブロック(MB)9、5、1と参照画像の複数のマクロブロック(MB)9、5、1とを使用して動画像復号処理を実行する。動画像復号処理によって復号処理部914から生成される動画像復号ビットストリームは、画像ライトアドレス生成部918から生成されるアドレスに従って外部メモリ712に格納される。この動画像復号処理に必要な周辺マクロブロック情報格納メモリ915の記憶容量は、外部メモリ912に格納された動画像符号化ビットストリームの横幅の水平方向に配列された複数のマクロブロック(MB)9、5、1の個数で十分となる。
 従って、復号装置911をシステムLSIで構成する際に、比較的小さな記憶容量の周辺マクロブロック情報格納メモリ915をシステムLSIの内蔵メモリ(オンチップSRAM)とすることが容易となる。また、動画像符号化ビットストリームと参照画像と動画像復号ビットストリームとを格納する外部メモリ912は、同期型ダイナミックランダムアクセスメモリ(SDRAM)によって構成される。また、復号装置911での動画像復号処理によって復号される動きベクトルMV2は、符号化装置901の動画像符号化処理によって符号化された動きベクトルMV1のx座標を動きベクトルMV2のy座標とする一方、動きベクトルMV1のy座標を動きベクトルMV2のx座標(ただし、マイナス符号)とする座標変換されたものである。
 図14に示した本発明の実施の形態3による動画像の符号化装置901と復号装置911とは、システムLSIで構成された動画像符号化/復号処理装置の半導体チップへの集積化が可能である。その際に、符号化処理部904と復号処理部914とは共通ハードウェアリソースで構成可能であり、周辺マクロブロック情報格納メモリ905と周辺マクロブロック情報格納メモリ915は共通ハードウェアリソースで構成可能であり、右90°回転部903と左90°回転部913は共通ハードウェアリソースで構成可能である。電源投入時等の初期化シーケンスに供給される動作モード設定情報に従って、システムLSIで構成される動画像符号化/復号処理装置を符号化装置901と復号装置911とのいずれにも任意に動作させることが可能となる。
 [実施の形態4]
 《実施の形態4による動画像符号化/復号処理装置》
 図15は、本発明の実施の形態4による動画像符号化/復号処理装置の構成を示す図である。
 図14に示した本発明の実施の形態3による動画像符号化/復号処理装置と比較すると、図15に示す本発明の実施の形態4による動画像符号化/復号処理装置では、外部メモリ1302に格納される参照画像の複数のマクロブロック(MB)の配列を原画像の複数のマクロブロック(MB)の配列と同一とすることが可能となる。
 図15の上部には本発明の実施の形態4による動画像符号化の処理を実行する符号化装置1301が示され、図15の下部には本発明の実施の形態4による動画像復号の処理を実行する復号装置1311が示されている。
 符号化装置1301は、右90°回転部1303と符号化処理部1304と周辺マクロブロック情報格納メモリ1305と画像リードアドレス生成部1306と差分画像生成部1307と参照画像アドレス生成部1308と左90°回転部1309を含んでいる。符号化装置1301は、外部メモリ1302に格納された原画像の動画像符号化処理を実行することによって外部メモリ1302に動画像符号化ビットストリームと参照画像とを出力する。
 画像リードアドレス生成部1306から生成されるアドレスに従って、外部メモリ1302からは原画像および参照画面の縦幅の垂直方向に配列された小さな個数の複数のマクロブロック(MB)9、5、1が順次に読み出されて差分画像生成部1307に供給される。差分画像生成部1307の出力信号は右90°回転部1303に供給され、右90°回転部1303は供給されたマクロブロック(MB)を+90°右回転した回転画像を符号化処理部1304に供給する。すなわち、外部メモリ1302に格納される原画像の横幅は縦幅よりも長い横長であって、画面表示のラスタスキャンの順序で右水平方向に複数のマクロブロック(MB)1、2、3、4が配列されて、下垂直方向に複数のマクロブロック(MB)1、5、9が配列されている。その結果、外部メモリ1302に格納された原画像の横幅の右水平方向に配列される複数のマクロブロック(MB)1、2、3、4の個数は、原画像の縦幅の下垂直方向に配列される複数のマクロブロック(MB)1、5、9の個数よりも大きな値となっている。
 一方、右90°回転部1303によって+90°右回転され符号化処理部1304に供給される回転画像は横幅の水平方向に小さな個数の複数のマクロブロック(MB)9、5、1を含み、縦幅の垂直方向に大きな個数の複数のマクロブロック(MB)1、2、3、4を含んでいる。
 符号化処理部1304は、右90°回転部1303から供給される差分画像生成部1307の出力信号のマクロブロック(MB)9、5、1を順次処理して、動画像符号化処理を実行する。次に符号化処理部1304は、右90°回転部1303から供給される差分画像生成部1307の出力信号のマクロブロック(MB)10、6、2を順次処理して、動画像符号化処理を実行する。この動画像符号化処理によって符号化処理部1304の出力から生成される動画像符号化ビットストリームは、外部メモリ1302に格納される。また符号化処理部1304の出力は左90°回転部1309に供給され、左90°回転部1309の出力は参照画像アドレス生成部1308から生成される参照画像アドレスに従って参照画像として外部メモリ1302に格納される。この動画像符号化処理に必要な周辺マクロブロック情報格納メモリ1305の記憶容量は、外部メモリ1302に格納された原画像の縦幅の垂直方向に配列された複数のマクロブロック(MB)1、5、9の個数で十分となる。
 従って、符号化装置1301をシステムLSIで構成する際に、比較的小さな記憶容量の周辺マクロブロック情報格納メモリ1305をシステムLSIの内蔵メモリ(オンチップSRAM)とすることが容易となる。また原画像と参照画像と動画像符号化ビットストリームを格納する外部メモリ1302は、同期型ダイナミックランダムアクセスメモリ(SDRAM)によって構成される。また、符号化装置1301の動画像符号化処理によって符号化された動きベクトルMV1も、外部メモリ1302に格納された原画像での動きベクトルと比較して右90°回転部1303によって+90°右回転されたものとなるものである。
 復号装置1311は、復号処理部1314と周辺マクロブロック情報格納メモリ1315と左90°回転部1313と画像リードアドレス生成部1316と差分画像生成部1317と画像ライトアドレス生成部1318とを含んでいる。
 復号処理部1314は、最初に外部メモリ1312に格納された動画像符号化ビットストリームの横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)9、5、1を順次読み出す。外部メモリ1312から順次に読み出された動画像符号化ビットストリームの横幅の水平方向に配列された小さな個数の複数のマクロブロック(MB)9、5、1は、差分画像生成部1317を介して、左90°回転部1313に供給される。左90°回転部1313は、縦幅の垂直方向に配列された複数のマクロブロック(MB)9、5、1を生成して復号処理部1314へ供給する。
 また画像リードアドレス生成部1316は外部メモリ1312に格納された参照画像の縦幅の垂直方向に配列された複数のマクロブロック(MB)9、5、1を順次読み出すので、復号処理部1314は動画像符号化ビットストリームの複数のマクロブロック(MB)9、5、1と参照画像の複数のマクロブロック(MB)9、5、1を使用して動画像復号処理を実行する。動画像復号処理によって復号処理部1314から生成される動画像復号ビットストリームは、画像ライトアドレス生成部1318から生成されるアドレスに従って外部メモリ1312に格納される。この動画像復号処理に必要となる周辺マクロブロック情報格納メモリ915の記憶容量は、外部メモリ1312に格納された動画像符号化ビットストリームの横幅の水平方向に配列された複数のマクロブロック(MB)9、5、1の個数で十分となる。
 その結果、復号装置1311をシステムLSIで構成する際に、比較的小さな記憶容量の周辺マクロブロック情報格納メモリ1315をシステムLSIの内蔵メモリ(オンチップSRAM)とすることが容易となる。また動画像符号化ビットストリームと参照画像と動画像復号ビットストリームとを格納する外部メモリ1312は、同期型ダイナミックランダムアクセスメモリ(SDRAM)によって構成される。また復号装置1311の動画像復号処理によって復号される動きベクトルMV2は、符号化装置1301の動画像符号化処理によって符号化された動きベクトルMV1のx座標を動きベクトルMV2のy座標とする一方、動きベクトルMV1のy座標を動きベクトルMV2のx座標(ただし、マイナス符号)とする座標変換されたものである。
 図15に示した本発明の実施の形態4による動画像の符号化装置1301と復号装置1311とは、システムLSIで構成された動画像符号化/復号処理装置の半導体チップへの集積化が可能である。その際に、符号化処理部1304と復号処理部1314とは共通ハードウェアリソースで構成可能であり、周辺マクロブロック情報格納メモリ1305と周辺マクロブロック情報格納メモリ1315は共通ハードウェアリソースで構成可能であり、右90°回転部1303と左90°回転部1313は共通ハードウェアリソースで構成可能である。電源投入時等の初期化シーケンスに供給される動作モード設定情報に従って、システムLSIで構成される動画像符号化/復号処理装置を符号化装置1301と復号装置1311とのいずれにも任意に動作させることが可能となる。
 [実施の形態5]
 《実施の形態5による動画像処理装置》
 図16は、図5に示した本発明の実施の形態1による動画像符号化/復号処理装置201のマクロブロック符号化/復号処理部203または図13に示した本発明の実施の形態2による符号化装置701の符号化処理部704と復号装置711の復号処理部714または図14に示した本発明の実施の形態3による符号化装置901の符号化処理部904と復号装置1911の復号処理部1914または図15に示した本発明の実施の形態4による符号化装置1301の符号化処理部1304と復号装置1311の復号処理部1914として使用可能な本発明の実施の形態5による動画像処理装置1750の構成を示す図である。
 図16に示す本発明の実施の形態5による動画像処理装置1750は、可変長符号化復号部(VLCS)1703、第1の動画像処理ユニット(CODEC1)1719、第2の動画像処理ユニット(CODEC2)1729、メモリ制御部(MEC)1714、ローカルメモリコントローラ(LMC)1724、全体制御部(CTRL)1715、DMAコントローラ(DMAC)1725、外部バス1701、内部バス1702を具備している。好ましい実施の形態によれば、動画像処理装置1750は、例えば単結晶シリコン基板等の一つの半導体基板に形成された大規模半導体集積回路(LSI:Large Scale Integrated Circuits)の形態で構成されている。また 図16に示す本発明の実施の形態5による動画像処理装置1750は、電源投入時の初期化シーケンスに供給される動作モード設定情報に従って符号化装置と復号装置とのいずれにも任意に動作させることが可能となる。
 《可変長符号化復号部》
 可変長符号化復号部(VLCS)1703には、ハードディスクドライブ(HDD)、光ディスクドライブ、大容量不揮発性フラッシュメモリ、無線LAN(ローカルエリアネットワーク)等のメディアからDMAコントローラ1725を介して動画符号化データがビットストリーム(BS)の形態で供給される。可変長符号化復号部(VLCS)1703の内部にストリーム解析部が内蔵され、このストリーム解析部によって奇数行である1行目、3行目…に配列されたマクロブロックが第1の動画像処理ユニット(CODEC1)1719に供給される一方、偶数行である2行目、4行目…に配列されたマクロブロックが第2の動画像処理ユニット(CODEC2)1729に供給される。
 可変長符号化復号部(VLCS)1703の内部にパイプライン制御部が内蔵され、このパイプライン制御部によってマクロブロックに関する第1の動画像処理ユニット(CODEC1)1719と第2の動画像処理ユニット(CODEC2)1729との並列動作のためのパイプライン動作が制御される。すなわち、第1の動画像処理ユニット(CODEC1)1719の内部回路である第1の可変長符号化復号部(VLCF1)1710と第1の周波数変換部(TRF1)1711と第1の動き補償部(FME1)1712と第1のデブロッキングフィルタ(DEB1)1713とは、可変長符号化復号部(VLCS)1703のパイプライン制御部によって制御されることによってパイプライン動作を実行するものである。また、第2の動画像処理ユニット(CODEC2)1729の内部回路である第2の可変長符号化復号部(VLCF2)1720と第2の周波数変換部(TRF2)1721と第2の動き補償部(FME2)1722と第2のデブロッキングフィルタ(DEB2)1723とは、可変長符号化復号部(VLCS)1703のパイプライン制御部によって制御されることによってパイプライン動作を実行するものである。従って、パイプライン動作を実行する第1の動画像処理ユニット(CODEC1)1719と第2の動画像処理ユニット(CODEC2)1729との並列動作は、図12に示した本発明の実施の形態1によるマクロブロック適応型のフレーム・フィールド予測モードのマクロブロック(MB)のペアの符号化処理もしくは復号処理に好適なものとなる。
 このように、可変長符号化復号部(VLCS)1703は、供給されるビットストリームを可変長復号することによって、マクロブロックタイプと動きベクトルを抽出して、後段の第1の動画像処理ユニット(CODEC1)1719と第2の動画像処理ユニット(CODEC2)1729とで必要なパラメータ群の値を求める機能を有するものである。
 《可変長符号化復号部》
 可変長符号化復号部(VLCS)1703から奇数行と偶数行のマクロブロックがそれぞれ供給される第1の可変長符号化復号部(VLCF1)1710と第2の可変長符号化復号部(VLCF2)1720は、コンテキストベース適応可変長符号化復号を実行することによって、動きベクトル情報やマクロブロックパラメータや周波数変換情報の復号処理を実行するものである。
 《周波数変換部》
 第1の周波数変換部(TRF1)1711と第2の周波数変換部(TRF2)1721とは、第1の可変長符号化復号部(VLCF1)710と第2の可変長符号化復号部(VLCF2)1720から周波数変換情報が供給されることによって、逆量子化(IQ:Inverse Quantization)と逆ディスクリートコサイン変換(IDCT:Inverse Discrete Cosine Transformation)とを実行する。すなわち、第1の周波数変換部(TRF1)1711、第2の周波数変換部(TRF2)1721は、第1の可変長符号化復号部(VLCF1)1710、第2の可変長符号化復号部(VLCF2)1720から供給される周波数変換情報としての量子化変換係数と量子化パラメータとを処理して、逆量子化変換して変換係数を算出して、算出された変換係数を逆直交変換して画素値又はフレーム間予測残差を求め、第1の動き補償部(FME1)1712、第2の動き補償部(FME2)1722から供給される参照画像とフレーム間予測残差を加算して画素値を算出して、算出された画像を出力する。
 《動き補償部》
 第1の動き補償部(FME1)1712と第2の動き補償部(FME2)1722とは、動き補償処理を実行する。すなわち、第1の動き補償部(FME1)1712、第2の動き補償部(FME2)1722は、メモリ制御部(MEC)1714と内部バス1702とDMAコントローラ(DMAC)1725と外部バス1701とを介して外部メモリから供給される参照画像を使用して動き探索の実行によって動きベクトル位置の参照画像を算出して、第1の周波数変換部(TRF1)1711、第2の周波数変換部(TRF2)1721に出力する。
 《デブロッキングフィルタ》
 第1のデブロッキングフィルタ(DEB1)1713と第2のデブロッキングフィルタ(DEB2)1723とは、画像復号時に生じるブロック歪を減少させるためのデブロッキングフィルタ処理を実行するものである。すなわち、第1と第2のデブロッキングフィルタ(DEB1、DEB2)1713、1723は、第1と第2の周波数変換部(TRF1、TRF2)1711、1721から供給される処理対象のマクロブロック(MB)の画像データと第1と第2のデブロッキングフィルタ(DEB1、DEB2)1713、1723中の内蔵メモリから供給される処理対象の左のマクロブロック(MB)の画像データを使用して、デブロッキングフィルタ処理を実行する。
 《メモリ制御部》
 メモリ制御部(MEC)1714は第1と第2の可変長符号化復号部(VLCF1、VLCF2)1710、1720から供給される動きベクトルの情報からフレーム間予測に使用するための参照画像を、内部バス1702とDMAコントローラ(DMAC)1725と外部バス1701とを経由して外部メモリから、第1と第2の動き補償部(FME1、FME2)1712、1722に供給する。
 《全体制御部》
 全体制御部(CTRL)1715は、動画像処理装置1750の全ての内部回路の動作を制御する。例えば、全体制御部(CTRL)1715は、第1と第2のデブロッキングフィルタ(DEB1、DEB2)1713、1723の動作を制御する動作制御信号deb_startを生成する。
 《ローカルメモリコントローラ》
 ローカルメモリコントローラ(LMC)1724は、図5に示した本発明の実施の形態1による動画像符号化/復号処理装置(CODEC)201の周辺マクロブロック情報格納メモリ204または図13に示した本発明の実施の形態2による符号化装置701の周辺マクロブロック情報格納メモリ705と復号装置711の周辺マクロブロック情報格納メモリ715または図14に示した本発明の実施の形態3による符号化装置901の周辺マクロブロック情報格納メモリ905と復号装置1911の周辺マクロブロック情報格納メモリ915または図15に示した本発明の実施の形態4による符号化装置1301の周辺マクロブロック情報格納メモリ1305と復号装置1311の周辺マクロブロック情報格納メモリ1315の書き込み動作と読み出し動作とを制御する。
 例えば、ローカルメモリコントローラ(LMC)1724は、奇数行のマクロブロック(MB)に関する第1の動画像処理ユニット(CODEC1)1719の処理結果と関係するパラメータをこれらの周辺マクロブロック情報格納メモリに格納して、偶数行のマクロブロック(MB)に関する第2の動画像処理ユニット(CODEC2)1729に必要な画像と関係するパラメータを転送する。またローカルメモリコントローラ(LMC)1724は、偶数行のマクロブロック(MB)に関する第2の動画像処理ユニット(CODEC2)1729の処理結果と関係するパラメータをこれらの周辺マクロブロック情報格納メモリに格納して、奇数行のマクロブロック(MB)に関する第1の動画像処理ユニット(CODEC1)1719に必要な画像と関係するパラメータを転送する。このようにして、ローカルメモリコントローラ(LMC)1724は、周辺マクロブロック情報の周辺マクロブロック情報格納メモリへの格納動作と読み出し動作を実行するものであり、システム大規模半導体集積回路(システムLSI)によって構成された動画像符号化復号装置(CODEC)の半導体チップに内蔵された周辺マクロブロック情報格納メモリとしての内蔵メモリ(オンチップSRAM)に接続される。
 《DMAコントローラ》
 DMAコントローラ(DMAC:Direct Memory Access Controller)1725は、動画像処理装置1750の外部バス701に接続される例えば、同期型ダイナミックランダムアクセスメモリ(SDRAM)によって構成される外部メモリと第1と第2の動画像処理ユニット1719、1729の間で大量のマクロブロック(MB)を含む参照画像や符号化ビットストリームの高速データ転送に使用される。
 図16に示した本発明の実施の形態5による動画像処理装置1750が復号装置として動作する際には、第1の動画像処理ユニット(CODEC1)1719の第1の可変長符号化復号部(VLCF1)1710と第1の周波数変換部(TRF1)1711と第1の動き補償部(FME1)1712とは、可変長復号部と逆量子化器・逆DCT変換器と動き補償部としてそれぞれ動作するものである。同様に、第2の動画像処理ユニット(CODEC2)1729の第2の可変長符号化復号部(VLCF2)1720と第2の周波数変換部(TRF2)1721と第2の動き補償部(FME2)1722も、可変長復号部と逆量子化器・逆DCT変換器と動き補償部としてそれぞれ動作するものである。
 一方、図16に示した本発明の実施の形態5による動画像処理装置1750が符号化装置として動作する際には、第1の動画像処理ユニット(CODEC1)1719の第1の可変長符号化復号部(VLCF1)1710と第1の周波数変換部(TRF1)1711と第1の動き補償部(FME1)1712は、残差符号化部を構成する可変長符号化部とDCT変換器・量子化器および動き予測部としてそれぞれ動作するものである。同様に、第2の動画像処理ユニット(CODEC2)1729の第2の可変長符号化復号部(VLCF2)1720と第2の周波数変換部(TRF2)1721と第2の動き補償部(FME2)1722も、残差符号化部を構成する可変長符号化部とDCT変換器・量子化器および動き予測部としてそれぞれ動作するものである。
 以上、本発明者によってなされた発明を種々の実施の形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
 例えば、図16に示した本発明の実施の形態5において、第1の動画像処理ユニット(CODEC1)1719の第1の可変長符号化復号部(VLCF1)1710と第1の周波数変換部(TRF1)1711と第1の動き補償部(FME1)1712と第2の動画像処理ユニット(CODEC2)1729の第2の可変長符号化復号部(VLCF2)1720と第2の周波数変換部(TRF2)1721と第2の動き補償部(FME2)1722とは、ハードウェアによって実現されることに限定されるものではない。これらの動作機能は、例えば、マイクロプロセッサ等のソフトウェア処理によって実現されることも可能である。その際には、周辺マクロブロック情報格納メモリ204、705、715等はマイクロプロセッサ等のキャッシュメモリを使用することも可能である。
 以上説明した本発明の種々の実施の形態による動画像符号化/復号処理装置は、携帯電話、カー・ナビゲーション・システム、DVD/HDD/BDレコーダ、デジタルビデオカメラ、デジタルカメラ、デジタルテレビ、電話会議システム等に搭載されることが可能である。
 201…動画像符号化/復号処理装置
 202…外部メモリ
 203…マクロブロック符号化/復号処理部
 204…周辺マクロブロック情報格納メモリ
 205…垂直方向マクロブロックカウンタ
 206…画面下端判定部
 207…水平方向マクロブロックカウンタ
 208…画面右端判定部
 209…AND論理ゲート回路
 701…符号化装置
 702…外部メモリ
 703…画像回転部
 704…符号化処理部
 705…周辺マクロブロック情報格納メモリ
 711…復号装置
 712…外部メモリ
 713…画像回転部
 714…復号処理部
 715…周辺マクロブロック情報格納メモリ
 901…符号化装置
 902…外部メモリ
 903…右90°回転部
 904…符号化処理部
 905…周辺マクロブロック情報格納メモリ
 906…画像リードアドレス生成部
 911…復号装置
 912…外部メモリ
 913…左90°回転部
 914…復号処理部
 915…周辺マクロブロック情報格納メモリ
 916…画像リードアドレス生成部
 917…差分画像生成部
 918…画像ライトアドレス生成部
 1301…符号化装置
 1302…外部メモリ
 1303…右90°回転部
 1304…符号化処理部
 1305…周辺マクロブロック情報格納メモリ
 1306…画像リードアドレス生成部
 1307…差分画像生成部
 1308…参照画像アドレス生成部
 1309…左90°回転部
 1311…復号装置
 1312…外部メモリ
 1313…左90°回転部
 1314…復号処理部
 1315…周辺マクロブロック情報格納メモリ
 1316…画像リードアドレス生成部
 1317…差分画像生成部
 1318…画像ライトアドレス生成部

Claims (36)

  1.  符号化処理装置を使用して水平方向の横幅が垂直方向の縦幅よりも大きな横長画面の動画像に含まれる複数のマクロブロックを符号化する動画像符号化方法であって、
     前記複数のマクロブロックの符号化に際して、符号化されるべきマクロブロックの周辺の複数の符号化済みの複数のマクロブロックの情報が前記符号化処理装置に内蔵された情報格納メモリに格納され、
     前記複数のマクロブロックの前記符号化に際して、最初に前記横長画面の前記横幅の左端で前記垂直方向に配列された複数のマクロブロックが順次に符号化されることによって、前記左端で前記垂直方向に配列された前記複数のマクロブロックの符号化情報が前記情報格納メモリに格納され、
     前記垂直方向に配列された前記複数のマクロブロックが符号化された後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロックが順次に符号化されることを特徴とする動画像符号化方法。
  2.  前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックが順次に符号化される際に、前記情報格納メモリに格納された前記左端で前記垂直方向に配列された前記複数のマクロブロックの前記符号化情報が使用されることを特徴とする請求項1に記載の動画像符号化方法。
  3.  前記垂直方向に配列された前記複数のマクロブロックの各マクロブロックが符号化された後に、前記各マクロブロックが前記縦幅の下端または上端に位置する最後または最初のマクロブロックであるか否かが前記符号化処理装置によって判定されることを特徴とする請求項2に記載の動画像符号化方法。
  4.  前記横長画面の前記横幅の前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックが符号化された後に、符号化された前記複数のマクロブロックが前記横幅の右端に位置する最後の複数のマクロブロックであるか否かが前記符号化処理装置によって判定されることを特徴とする請求項3に記載の動画像符号化方法。
  5.  前記各マクロブロックが前記縦幅の前記下端または前記上端に位置する前記最後または前記最初のマクロブロックでないと前記符号化処理装置によって判定された場合は、前記左端の前記垂直方向で次に符号化されるマクロブロックの位置を表示する垂直方向カウンタのカウント値が1つインクリメントされることを特徴とする請求項4に記載の動画像符号化方法。
  6.  符号化された前記複数のマクロブロックが前記横幅の前記右端に位置する前記最後の複数のマクロブロックでないと前記符号化処理装置によって判定された場合は、前記横長画面の前記横幅の前記水平方向で次に符号化される複数のマクロブロックの位置を表示する水平方向カウンタのカウント値が1つインクリメントされることを特徴とする請求項5に記載の動画像符号化方法。
  7.  復号化処理装置を使用して水平方向の横幅が垂直方向の縦幅よりも大きな横長画面の動画像に含まれる複数のマクロブロックを復号化する動画像復号化方法であって、
     前記複数のマクロブロックの復号化に際して、復号化されるべきマクロブロックの周辺の複数の復号化済みの複数のマクロブロックの情報が前記復号化処理装置に内蔵された情報格納メモリに格納され、
     前記複数のマクロブロックの前記復号化に際して、最初に前記横長画面の前記横幅の左端で前記垂直方向に配列された複数のマクロブロックが順次に復号化されることによって、前記左端で前記垂直方向に配列された前記複数のマクロブロックの復号化情報が前記情報格納メモリに格納され、
     前記垂直方向に配列された前記複数のマクロブロックが復号化された後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロックが順次に復号化されることを特徴とする動画像復号化方法。
  8.  前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックが順次に復号化される際に、前記情報格納メモリに格納された前記左端で前記垂直方向に配列された前記複数のマクロブロックの前記復号化情報が使用されることを特徴とする請求項7に記載の動画像復号化方法。
  9.  前記垂直方向に配列された前記複数のマクロブロックの各マクロブロックが復号化された後に、前記各マクロブロックが前記縦幅の下端または上端に位置する最後または最初のマクロブロックであるか否かが前記復号化処理装置によって判定されることを特徴とする請求項8に記載の動画像復号化方法。
  10.  前記横長画面の前記横幅の前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックが復号化された後に、復号化された前記複数のマクロブロックが前記横幅の右端に位置する最後の複数のマクロブロックであるか否かが前記復号化処理装置によって判定されることを特徴とする請求項9に記載の動画像復号化方法。
  11.  前記各マクロブロックが前記縦幅の前記下端または前記上端に位置する前記最後または前記最初のマクロブロックでないと前記復号化処理装置によって判定された場合は、前記左端の前記垂直方向で次に復号化されるマクロブロックの位置を表示する垂直方向カウンタのカウント値が1つインクリメントされることを特徴とする請求項10に記載の動画像復号化方法。
  12.  復号化された前記複数のマクロブロックが前記横幅の前記右端に位置する前記最後の複数のマクロブロックでないと前記復号化処理装置によって判定された場合は、前記横長画面の前記横幅の前記水平方向で次に復号化される複数のマクロブロックの位置を表示する水平方向カウンタのカウント値が1つインクリメントされることを特徴とする請求項11に記載の動画像復号化方法。
  13.  水平方向の横幅が垂直方向の縦幅よりも大きな横長画面の動画像に含まれる複数のマクロブロックを符号化するために符号化処理部と情報格納メモリとを具備する動画像符号化処理装置であって、
     前記符号化処理部による前記複数のマクロブロックの符号化に際して、符号化されるべきマクロブロックの周辺の複数の符号化済みの複数のマクロブロックの情報が前記情報格納メモリに格納され、
     前記複数のマクロブロックの前記符号化に際して、最初に前記横長画面の前記横幅の左端で前記垂直方向に配列された複数のマクロブロックが前記符号化処理部によって順次に符号化されることによって、前記左端で前記垂直方向に配列された前記複数のマクロブロックの符号化情報が前記符号化処理部によって前記情報格納メモリに格納され、
     前記垂直方向に配列された前記複数のマクロブロックが符号化された後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロックが前記符号化処理部によって順次に符号化されることを特徴とする動画像符号化処理装置。
  14.  前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックが前記符号化処理部によって順次に符号化される際に、前記情報格納メモリに格納された前記左端で前記垂直方向に配列された前記複数のマクロブロックの前記符号化情報が使用されることを特徴とする請求項13に記載の動画像符号化処理装置。
  15.  記垂直方向に配列された前記複数のマクロブロックの各マクロブロックが符号化された後に、前記各マクロブロックが前記縦幅の下端または上端に位置する最後または最初のマクロブロックであるか否かが前記動画像符号化処理装置によって判定されることを特徴とする請求項14に記載の動画像符号化処理装置。
  16.  前記横長画面の前記横幅の前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックが符号化された後に、符号化された前記複数のマクロブロックが前記横幅の右端に位置する最後の複数のマクロブロックであるか否かが前記動画像符号化処理装置によって判定されることを特徴とする請求項15に記載の動画像符号化処理装置。
  17.  前記動画像符号化処理装置は、前記垂直方向で次に符号化されるマクロブロックの位置を表示する垂直方向カウンタを更に具備して、
     前記各マクロブロックが前記縦幅の前記下端または前記上端に位置する前記最後または前記最初のマクロブロックでないと前記動画像符号化処理装置によって判定された場合は、前記垂直方向カウンタのカウント値が1つインクリメントされることを特徴とする請求項16に記載の動画像符号化処理装置。
  18.  前記動画像符号化処理装置は、前記水平方向で次に符号化される複数のマクロブロックの位置を表示す水平方向カウンタを更に具備して、
     符号化された前記複数のマクロブロックが前記横幅の前記右端に位置する前記最後の複数のマクロブロックでないと前記動画像符号化処理装置によって判定された場合は、前水平方向カウンタのカウント値が1つインクリメントされることを特徴とする請求項17に記載の動画像符号化処理装置。
  19.  前記動画像符号化処理装置は、前記横長画面の前記動画像に含まれる前記複数のマクロブロックを格納可能な画像メモリと接続可能とされ、
     前記画像メモリに前記横長画面の前記縦幅の前記上端で前記水平方向に配列された複数のマクロブロックが格納された後に、次に前記画像メモリに前記横長画面の前記縦幅の前記上端の垂直方向下隣で前記水平方向に配列された複数のマクロブロックが前記画像メモリに格納可能とされたことを特徴とする請求項14に記載の動画像符号化処理装置。
  20.  他のより好適な実施の形態では、前記動画像符号化処理装置は、前記画像メモリから前記横長画面を読み出して画像を90°回転した後に、前記画像メモリに生成した回転画像を書き込む画像回転部を更に具備し、前記画像メモリに格納された回転画像を読み出して前記符号化処理部に供給可能とされたことを特徴とする請求項19に記載の動画像符号化処理装置。
  21.  前記動画像符号化処理装置は、前記画像メモリに接続可能とされた画像メモリインターフェースを更に具備して、
     前記画像メモリインターフェースは、前記画像メモリから前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロックを読み出して前記符号化処理部に供給した後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロックを読み出して前記符号化処理部に供給可能とされたことを特徴とする請求項20に記載の動画像符号化処理装置。
  22.  前記画像メモリから前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロックを読み出して前記符号化処理部に供給した後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロックを読み出して前記符号化処理部に供給可能とする画像リードアドレス生成部を更に具備することを特徴とする請求項21に記載の動画像符号化処理装置。
  23.  前記画像リードアドレス生成部から生成されるアドレスに従って前記画像メモリから読み出される前記複数のマクロブロックの各マクロブロックを略90°回転した回転画像を生成して前記符号化処理部に供給可能とする画像回転部を更に具備することを特徴とする請求項22に記載の動画像符号化処理装置。
  24.  前記符号化処理部は可変長符号化部と直交変換器・量子化器と動き予測部の各動作機能を含むことを特徴とする請求項13乃至請求項23のいずれか1項に記載の動画像符号化処理装置。
  25.  水平方向の横幅が垂直方向の縦幅よりも大きな横長画面の動画像に含まれる複数のマクロブロックを復号化するために復号化処理部と情報格納メモリとを具備する動画像復号化処理装置であって、
     前記復号化処理部による前記複数のマクロブロックの復号化に際して、復号化されるべきマクロブロックの周辺の複数の復号化済みの複数のマクロブロックの情報が前記情報格納メモリに格納され、
     前記複数のマクロブロックの前記復号化に際して、最初に前記横長画面の前記横幅の左端で前記垂直方向に配列された複数のマクロブロックが前記復号化処理部によって順次に復号化されることによって、前記左端で前記垂直方向に配列された前記複数のマクロブロックの復号化情報が前記復号化処理部によって前記情報格納メモリに格納され、
     前記垂直方向に配列された前記複数のマクロブロックが復号化された後に、次に前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロックが前記復号化処理部によって順次に復号化されることを特徴とする動画像復号化処理装置。
  26.  前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックが前記復号化処理部によって順次に復号化される際に、前記情報格納メモリに格納された前記左端で前記垂直方向に配列された前記複数のマクロブロックの前記復号化情報が使用されることを特徴とする請求項25に記載の動画像復号化処理装置。
  27.  前記垂直方向に配列された前記複数のマクロブロックの各マクロブロックが復号化された後に、前記各マクロブロックが前記縦幅の下端または上端に位置する最後または最初のマクロブロックであるか否かが前記動画像復号化処理装置によって判定されることを特徴とする請求項26に記載の動画像復号化処理装置。
  28.  前記横長画面の前記横幅の前記左端の前記水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックが復号化された後に、復号化された前記複数のマクロブロックが前記横幅の右端に位置する最後の複数のマクロブロックであるか否かが前記動画像復号化処理装置によって判定されることを特徴とする請求項27に記載の動画像復号化処理装置。
  29.  前記動画像復号化処理装置は、前記垂直方向で次に復号化されるマクロブロックの位置を表示する垂直方向カウンタを更に具備して、
     前記各マクロブロックが前記縦幅の前記下端または前記上端に位置する前記最後または前記最初のマクロブロックでないと前記動画像復号化処理装置によって判定された場合は、前記垂直方向カウンタのカウント値が1つインクリメントされることを特徴とする請求項28に記載の動画像復号化処理装置。
  30.  前記動画像復号化処理装置は、前記水平方向で次に復号化される複数のマクロブロックの位置を表示す水平方向カウンタを更に具備して、
     復号化された前記複数のマクロブロックが前記横幅の前記右端に位置する前記最後の複数のマクロブロックでないと前記動画像復号化処理装置によって判定された場合は、前水平方向カウンタのカウント値が1つインクリメントされることを特徴とする請求項29に記載の動画像復号化処理装置。
  31.  前記動画像復号化処理装置は、前記複数のマクロブロックを格納可能な画像メモリと接続可能とされたことを特徴とする請求項26に記載の動画像復号化処理装置。
  32.  前記動画像符号化処理装置は、前記画像メモリから前記横長画面を読み出して画像を90°回転した後に、前記画像メモリに生成した回転画像を書き込む画像回転部を更に具備することを特徴とする請求項31に記載の動画像復号化処理装置。
  33.  前記動画像符号化処理装置は、動画像符号化信号が供給可能な外部インターフェースを更に具備して、
     前記外部インターフェースは、前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロックを前記復号化処理部に供給した後に、次に前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロックを前記復号化処理部に供給可能とされ、
     前記動画像復号化処理装置は、前記外部インターフェースから供給される前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロックを復号処理した後に、次に前記外部インターフェースから供給される前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数のマクロブロックを復号処理して、
     前記動画像復号化処理装置は、水平方向の横幅が垂直方向の縦幅よりも大きな復号動画像情報を格納可能な画像メモリと接続可能とされ、
     前記動画像復号化処理装置は、前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロックの復号処理情報を前記画像メモリの第1記憶領域に格納した後、次に前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックの復号処理情報を前記画像メモリの第2記憶領域に格納可能とされ、
     前記画像メモリの前記第1記憶領域と前記第2記憶領域とは、水平方向の表示横幅が垂直方向の表示縦幅よりも大きな横長の動画像表示画面の前記表示横幅の左端で前記垂直方向に配列された複数の画像情報と前記表示横幅の前記左端の水平方向右隣で前記垂直方向に配列された複数の画像情報とにそれぞれ対応することを特徴とする請求項26に記載の動画像復号化処理装置。
  34.  前記動画像復号化処理装置は前記横長画面の前記横幅の前記左端で前記垂直方向に配列された前記複数のマクロブロックの復号処理情報を前記画像メモリの前記第1記憶領域に格納した後、次に前記動画像符号化信号中に含まれる前記横長画面の前記横幅の前記左端の水平方向右隣で前記垂直方向に配列された前記複数のマクロブロックの復号処理情報を前記画像メモリの前記第2記憶領域に格納可能とする画像ライトアドレス生成部を更に具備することを特徴とする請求項33に記載の動画像復号化処理装置。
  35.  前記外部インターフェースは、前記動画像符号化信号中に含まれる前記複数のマクロブロックを略90°回転した回転画像を生成して前記復号化処理部に供給可能とされたことを特徴とする請求項34に記載の動画像復号化処理装置。
  36.  前記復号化処理部は可変長復号部と逆量子化器・逆直交変換器と動き補償部の各動作機能を含むことを特徴とする請求項25乃至請求項35のいずれか1項に記載の動画像復号化処理装置。
PCT/JP2010/072472 2010-01-19 2010-12-14 動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置 WO2011089798A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2011550808A JP5260757B2 (ja) 2010-01-19 2010-12-14 動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置
CN201080061815.0A CN102714733B (zh) 2010-01-19 2010-12-14 运动图像编码方法、运动图像解码方法、运动图像编码装置以及运动图像解码装置
US13/519,874 US20120294373A1 (en) 2010-01-19 2010-12-14 Moving image encoding method, moving image decoding method, moving image encoding device, and moving image decoding device
EP10843962.1A EP2528331B1 (en) 2010-01-19 2010-12-14 Moving image encoding method, moving image decoding method, and moving image decoding device
US15/648,180 US10986373B2 (en) 2010-01-19 2017-07-12 Moving image encoding method, moving image decoding method, moving image encoding device, and moving image decoding device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010008864 2010-01-19
JP2010-008864 2010-01-19

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US13/519,874 A-371-Of-International US20120294373A1 (en) 2010-01-19 2010-12-14 Moving image encoding method, moving image decoding method, moving image encoding device, and moving image decoding device
US15/648,180 Continuation US10986373B2 (en) 2010-01-19 2017-07-12 Moving image encoding method, moving image decoding method, moving image encoding device, and moving image decoding device

Publications (1)

Publication Number Publication Date
WO2011089798A1 true WO2011089798A1 (ja) 2011-07-28

Family

ID=44306615

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/072472 WO2011089798A1 (ja) 2010-01-19 2010-12-14 動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置

Country Status (6)

Country Link
US (2) US20120294373A1 (ja)
EP (1) EP2528331B1 (ja)
JP (1) JP5260757B2 (ja)
CN (1) CN102714733B (ja)
TW (1) TWI523498B (ja)
WO (1) WO2011089798A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2659675B1 (en) 2010-12-28 2020-07-22 Dolby International AB Method for picture segmentation using columns

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8832412B2 (en) * 2011-07-20 2014-09-09 Broadcom Corporation Scalable processing unit
US9489827B2 (en) 2012-03-12 2016-11-08 Cisco Technology, Inc. System and method for distributing content in a video surveillance network
US9049349B2 (en) * 2012-05-16 2015-06-02 Cisco Technology, Inc. System and method for video recording and retention in a network
EP2814254A1 (en) * 2013-02-21 2014-12-17 ST-Ericsson SA Combined parallel and pipelined video encoder
WO2014156046A1 (ja) * 2013-03-29 2014-10-02 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号装置、画像復号方法及び画像復号プログラム
JP6899053B2 (ja) * 2019-06-24 2021-07-07 Kddi株式会社 画像復号装置、画像復号方法及びプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007510320A (ja) * 2003-10-04 2007-04-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像データを処理する方法及び装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0166725B1 (ko) * 1993-06-30 1999-03-20 김광호 강제인트라-프레임부호화방법
JP3662129B2 (ja) * 1997-11-11 2005-06-22 松下電器産業株式会社 マルチメディア情報編集装置
US6674910B1 (en) * 1998-11-24 2004-01-06 Hyundai Electronics Industries Co., Ltd. Apparatus and method for image-compression encoding and decoding using adaptive transform
WO2005029863A1 (ja) * 2003-09-16 2005-03-31 Fujitsu Limited 画像処理表示装置および画像処理表示方法
EP1534018B1 (en) * 2003-11-21 2008-11-12 Samsung Electronics Co., Ltd. Apparatus and method for generating coded block pattern for alpha channel image and alpha channel image encoding/decoding apparatus and method using the same
JP4252916B2 (ja) * 2004-03-18 2009-04-08 富士通マイクロエレクトロニクス株式会社 動きベクトルの探索範囲を決定する方法
JP2006174415A (ja) * 2004-11-19 2006-06-29 Ntt Docomo Inc 画像復号装置、画像復号プログラム、画像復号方法、画像符号化装置、画像符号化プログラム及び画像符号化方法
JP4763422B2 (ja) * 2004-12-03 2011-08-31 パナソニック株式会社 イントラ予測装置
JP2006203270A (ja) * 2005-01-17 2006-08-03 Nec Electronics Corp 画像圧縮方法および画像圧縮装置
JP2006246431A (ja) * 2005-02-07 2006-09-14 Matsushita Electric Ind Co Ltd 画像符号化装置および画像符号化方法
US7868898B2 (en) * 2005-08-23 2011-01-11 Seiko Epson Corporation Methods and apparatus for efficiently accessing reduced color-resolution image data
JP4927753B2 (ja) * 2005-11-08 2012-05-09 パナソニック株式会社 動画像符号化方法、動画像復号化方法、動画像符号化装置、動画像復号化装置、および半導体装置
US7636497B1 (en) * 2005-12-27 2009-12-22 Advanced Micro Devices, Inc. Video rotation in a media acceleration engine
US8126046B2 (en) * 2006-06-30 2012-02-28 Intel Corporation Flexible macroblock ordering and arbitrary slice ordering apparatus, system, and method
TWI325274B (en) * 2006-10-12 2010-05-21 Ind Tech Res Inst Method for mapping memory addresses, memory accessing apparatus and method thereof
JP4753204B2 (ja) * 2006-11-17 2011-08-24 株式会社ソニー・コンピュータエンタテインメント 符号化処理装置および符号化処理方法
US8233003B2 (en) * 2007-03-12 2012-07-31 Seiko Epson Corporation Image processing device, image processing method, and electronic instrument
JPWO2009001793A1 (ja) 2007-06-26 2010-08-26 株式会社東芝 画像符号化と画像復号化の方法及び装置
JP2009038501A (ja) * 2007-07-31 2009-02-19 Toshiba Corp 復号化装置および復号方法
KR20090097689A (ko) * 2008-03-12 2009-09-16 삼성전자주식회사 영상의 인트라 예측 부호화/복호화 방법 및 장치
KR101456491B1 (ko) * 2008-05-08 2014-11-03 삼성전자주식회사 복수의 참조 픽처에 기초한 영상 부호화, 복호화 방법 및장치
US20100053181A1 (en) * 2008-08-31 2010-03-04 Raza Microelectronics, Inc. Method and device of processing video

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007510320A (ja) * 2003-10-04 2007-04-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像データを処理する方法及び装置

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
GARY J. SULLIVAN ET AL.: "Video Compression-From Concept to the H.264/AVC Standard", PROCEEDING OF THE IEEE, vol. 93, no. 1, January 2005 (2005-01-01), pages 18 - 31
IWATA, K. ET AL.: "A 256mW Full-HD H.264 High- Profile CODECFeaturing Dual Macroblock-Pipeline Architecture in 65nm CMOS", PROC. OF IEEE SYMP. ON VLSI CIRCUITS, 18 June 2008 (2008-06-18), pages 102 - 103, XP031295818 *
IWATA, K. ET AL.: "A 342mW Mobile Application Processor with Full-HDMulti-Standard Video Codec", IEEE INT. SOLID-STATE CIRCUITS CONF. 2009 DIGEST OF TECHNICAL PAPERS, 8 February 2009 (2009-02-08), pages 158 - 159, 159A, XP031742209 *
See also references of EP2528331A4 *
THOMAS WIEGAND ET AL.: "Overview of the H.264/AVC Video Coding Standard", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, July 2003 (2003-07-01), pages 1 - 19

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2659675B1 (en) 2010-12-28 2020-07-22 Dolby International AB Method for picture segmentation using columns
US10986344B2 (en) 2010-12-28 2021-04-20 Dolby Laboratories Licensing Corporation Method and system for picture segmentation using columns
US11356670B2 (en) 2010-12-28 2022-06-07 Dolby Laboratories Licensing Corporation Method and system for picture segmentation using columns
US11582459B2 (en) 2010-12-28 2023-02-14 Dolby Laboratories Licensing Corporation Method and system for picture segmentation using columns
US11949878B2 (en) 2010-12-28 2024-04-02 Dolby Laboratories Licensing Corporation Method and system for picture segmentation using columns

Also Published As

Publication number Publication date
JP5260757B2 (ja) 2013-08-14
TW201140557A (en) 2011-11-16
US10986373B2 (en) 2021-04-20
CN102714733A (zh) 2012-10-03
US20120294373A1 (en) 2012-11-22
EP2528331B1 (en) 2021-05-05
CN102714733B (zh) 2015-09-16
EP2528331A4 (en) 2016-01-20
JPWO2011089798A1 (ja) 2013-05-23
US20170311001A1 (en) 2017-10-26
TWI523498B (zh) 2016-02-21
EP2528331A1 (en) 2012-11-28

Similar Documents

Publication Publication Date Title
US10986373B2 (en) Moving image encoding method, moving image decoding method, moving image encoding device, and moving image decoding device
JP4789200B2 (ja) 動画符号化と動画復号とのいずれかを実行する機能モジュールおよびそれを含む半導体集積回路
JP6100904B2 (ja) 動画像符号化装置およびその動作方法
JP6120707B2 (ja) 動画像符号化装置およびその動作方法
US20130089149A1 (en) Image decoding apparatus, image decoding method, integrated circuit, and program
US10158869B2 (en) Parallel video decoding processing apparatus and operating method thereof
JP5253312B2 (ja) 動画像処理装置およびその動作方法
JPWO2008120434A1 (ja) 復号化回路、復号化方法、符号化回路及び符号化方法
US20160050431A1 (en) Method and system for organizing pixel information in memory
US8879629B2 (en) Method and system for intra-mode selection without using reconstructed data
JP5580541B2 (ja) 画像復号化装置および画像復号化方法
JP2007258882A (ja) 画像復号装置
US11509940B1 (en) Video apparatus with reduced artifact and memory storage for improved motion estimation
US10334262B2 (en) Moving-picture decoding processing apparatus, moving-picture coding processing apparatus, and operating method of the same
JP2011039660A (ja) メモリコントローラ、画像処理システムおよびメモリアクセスの制御方法
JP2009290387A (ja) エンコーダ、デコーダ、及び記録再生装置
KR100933331B1 (ko) 비디오 복호화 장치
JP2012043191A (ja) 画像処理装置およびその動作方法

Legal Events

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

Ref document number: 201080061815.0

Country of ref document: CN

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

Ref document number: 10843962

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011550808

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 13519874

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2010843962

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE