WO1999029112A1 - Image processor, image data processor and variable length encoder/decoder - Google Patents

Image processor, image data processor and variable length encoder/decoder Download PDF

Info

Publication number
WO1999029112A1
WO1999029112A1 PCT/JP1998/005354 JP9805354W WO9929112A1 WO 1999029112 A1 WO1999029112 A1 WO 1999029112A1 JP 9805354 W JP9805354 W JP 9805354W WO 9929112 A1 WO9929112 A1 WO 9929112A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
circuit
decoding
data
image data
Prior art date
Application number
PCT/JP1998/005354
Other languages
English (en)
French (fr)
Inventor
Yoshihisa Nishigori
Tetsuya Imamura
Takayasu Miki
Kenjiro Tsuda
Akira Yoneyama
Takatoshi Nada
Hideyuki Oogose
Hironori Nakano
Yoshimori Nakase
Satoru Inagaki
Yoshimasa Sogou
Original Assignee
Matsushita Electric Industrial Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP33059997A external-priority patent/JPH11164299A/ja
Priority claimed from JP33059897A external-priority patent/JPH11164198A/ja
Application filed by Matsushita Electric Industrial Co., Ltd. filed Critical Matsushita Electric Industrial Co., Ltd.
Priority to US09/355,189 priority Critical patent/US6600785B1/en
Priority to EP98955968A priority patent/EP0957638A4/en
Publication of WO1999029112A1 publication Critical patent/WO1999029112A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4084Transform-based scaling, e.g. FFT domain scaling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Definitions

  • the present invention relates to an image processing device for transforming an image displayed on a display of a personal computer or the like.
  • the present invention also relates to an image data processing device that processes image data of a plurality of images when displaying the plurality of images on a display.
  • the present invention also relates to a variable-length code decoding device that performs variable-length decoding on a plurality of variable-length-encoded MPEG image data.
  • digital image data which is an original image of a computer graphic to be displayed on a display of a personal computer or the like includes coded image data of an orthogonal transform system such as MPEG and DV.
  • the encoded image data of MPEG and DV as shown in FIG. 7 (a) is decoded, and the decoded image 15 is transformed into a display 1 of a personal computer or the like as shown in FIG. 7 (b).
  • a mapping device that is created by computer graphics and maps onto the wall 17 of a room.
  • drawings of a conventional MPEG image mapping device for mapping images from MPEG image data and a DV image mapping device for mapping images from DV image data are shown in order. It will be described with reference to FIG.
  • Fig. 8 shows a block diagram of a conventional MPEG image matching device.
  • the VLD means 1 receives the variable-length encoded MPEG image data and performs variable-length decoding, and the inverse quantization means 2 inversely quantizes the variable-length-decoded VIP EG image data, Means 3 decodes the dequantized MPEG image data.
  • the IDCT means 3 decodes all the MPEG image data for each block of the MPEG image having a plurality of 8 ⁇ 8 DCT coefficients.
  • the IDCT means 3 passes the decoded image through the adding means 7 to perform format conversion. Output to means 12 and output to Frame Buffer 8.
  • the Frame Buffer 8 stores decoded images from the IDCT means 3. '
  • the MPEG image data input by the VLD means 1 is data of an inter-frame forward prediction coded image (hereinafter, referred to as a P picture) or inter-frame bidirectional prediction coded image data
  • the Frame Buffer 8 This means that the I-picture has already been input once, and that the I-picture or the fully decoded picture of the P-picture in which the motion vector and the difference picture are added to the I-picture have already been stored.
  • the IDCT means 3 outputs the motion vector from the inverse quantization means 2 to the motion compensation means 9 via the Frame Buffer 8, and the motion compensation means 9 Only the motion vector is added to the complete image stored in ame Buffer 8 to generate a motion-compensated image in which only the motion vector is compensated.
  • the adding means 7 adds the motion compensated image from the motion compensating means 9 and the decoded difference image from the IDCT means 3 and outputs the added image to the format converting means 12, Output to Frame Buffer 8.
  • the Frame Buffer 8 stores the complete decoded image from the calculating means 7.
  • the format conversion means 12 converts the image in YUV format from the IDCT means 3 or the addition means 7 into an image in RGB format and outputs it to the image transformation means 18.
  • the image deforming means 18 receives the image in RGB format from the format converting means 12 and inputs the information of the degree of enlargement / reduction of each part of the image from the CG original data creating means 4 to the deformation information. Based on the information of the degree of enlargement / reduction input through the creation means 5, the image from the format conversion means 12 is deformed by interpolating or thinning out pixels for each part of the image, and the mapping means 1 Output to 3.
  • the mapping means 13 maps the image from the image deformation means 18 to a predetermined position on a display such as a personal computer based on the mapping position information of the image from the CG original data creating means 4.
  • FIG. 9 shows a block diagram of a conventional DV image matching device.
  • the VLD means 1 receives the variable-length coded DV image data and performs variable-length decoding, and the inverse quantization means 2 inversely quantizes the variable-length-decoded DV image data, and the IDCT means 3 Decodes the inversely quantized DV image data.
  • the IDCT means 3 decodes all DV image data for each block of the DV image having a plurality of 8 ⁇ 8 DCT coefficients. Then, the IDCT unit 3 outputs the partial image decoded for each block to the deshuffling unit 14.
  • the partial image decoded for each block, which is output by the IDCT unit 3 is the entire image composed of the partial images, for example, from the uppermost block to the lowermost block in the left end column, and further from the upper left. They are not output in order, such as from the top block in the second column to the bottom block. That is, the order of the partial images input by the deshuffling means 14 is shuffled. Therefore, the deshuffling means 14 deshuffles the partial images from the IDCT method 3 and arranges them in order to generate a complete DV image.
  • the format conversion means 12 converts the image in the YUV format from the deshuffling means 14 into an image in the RGB format and outputs it to the image transformation means 18.
  • the subsequent operation of the DV image is the same as the operation of the MPEG image matching device described above.
  • the image input by the format conversion means 12 is a full-size image, and the image Pixels are thinned out or thinned out for each part of the image based on information on the degree of scaling for each part of the image.
  • the image input by the format conversion means 12 is transformed at the time of decoding processing based on the information of the degree of enlargement / reduction of each part of the image. It would be more convenient if it was an image.
  • a conventional method for decoding MPEG image data and displaying the image on a display window of a personal computer will be described below. There are two conventional methods, and they are described separately.
  • the first method is to display the image in a window by completely decoding the MPEG image data, reproducing the image, and interpolating or thinning out the pixels to match the size and shape of the window. is there.
  • DCT coefficients of all or a part of the MPEG image data are selected according to the size and shape of the window, and the DCT coefficients are decoded as they are. Or a DCT coefficient with a predetermined number of zeros added to the high-frequency region and decoded, and the decoded image is resized to match the size of the window.
  • This is a method of displaying an image in a window by performing interpolation or thinning.
  • an image data processing device is prepared independently for each image, and each window is provided. The image is reproduced and displayed to match the size and shape of the image.
  • Each of these conventional image data processing apparatuses has a processing capability capable of producing a large image even if the image to be produced is extremely small.
  • the conventional image data processing device cannot simultaneously process two or more MPEG image data.
  • the present invention relates to a case in which a plurality of MPEG image data is reproduced and a plurality of images are simultaneously displayed on a display of a personal computer or the like.
  • the MPEG image data includes variable-length coded data.
  • the variable-length coded data is first subjected to variable-length decoding, and then decoded to an image.
  • variable-length code decoding apparatus that performs variable-length decoding of a plurality of variable-length-encoded MPEG image data will be described with reference to the drawings.
  • FIG. 26 shows a block diagram of a conventional variable-length code decoding device.
  • the conventional variable-length code decoding device includes a first variable-length data decoding circuit 540, a second variable-length data decoding circuit 550, a third variable-length data decoding circuit 560,. It comprises an n-th variable-length data decoding circuit 570, and each of these variable-length data decoding circuits has a shift circuit 58 and a codeword decoding circuit 59.
  • variable-length coded MPEG image data from the first image code source 600, the first MPEG data hierarchical structure decoding circuit 109, the data is subtracted from the motion vector.
  • the format of the data image such as whether it consists of data, is analyzed and input to the first variable-length data decoding circuit 5400.
  • variable-length data decoding circuit 5400 performs variable-length decoding on the variable-length-encoded MPEG image data, and outputs the result to the information source decoder group 1400.
  • the variable length decoding will be described later.
  • the second image code generator 700, the third image code generator 800, The variable-length-encoded MPEG image data from the n image code generator 900 are respectively used as the second MPEG data hierarchical structure decoding circuit 110 and the third MPEG data hierarchy.
  • the EG image data is variable-length decoded and output to the information source decoder group 1400.
  • the information source decoder group 1400 includes a first variable length data decoding circuit 5400, a second variable length data decoding circuit 5500, a third variable length data decoding circuit 5600, ⁇ Decodes variable-length-decoded MPEG image data from each of the n-th variable-length data decoding circuits 570 and generates an image corresponding to the data from each variable-length data decoding circuit.
  • variable length decoding performed by each variable length data decoding circuit will be further described.
  • FIG. 6 shows an example of variable-length encoded MPEG image data input to the variable-length data decoding circuit.
  • Each of A, B, C, and D in FIG. 6 is an n, m, 1, and o bit variable-length coded codeword, and is assumed to be continuous.
  • the shift circuit 58 of the variable-length data decoding circuit inputs a word length enough to accumulate the maximum word length of the variable-length code ( accumulate.
  • temporarily stored data is composed of codewords A, B, C, and D in FIG.
  • the codeword decoding circuit 59 transmits the first codeword of the variable-length code input data inputted by the shift circuit 58 and the codeword thereof. Is detected using a uniquely distinguishable table. That is, the codeword decoding circuit 59 detects the codeword A in FIG. 6 and that the codeword A has a word length of n bits.
  • the codeword decoding circuit 59 performs variable-length decoding on the earliest codeword, outputs the variable-length decoded data to the information source decoder group 1400, and outputs a code of how many bits.
  • the information as to whether the length was long is output to the shift circuit 58. That is, the codeword decoding circuit 59 performs variable-length decoding of the codeword A and outputs it to the information source decoder group 1400, and shifts the information that the output data is n-bit ⁇ : data. Output to circuit 58.
  • the shift circuit 58 inputs the variable length coded data for the word length from the MPEG data hierarchical structure decoding circuit and temporarily stores the data.
  • the data is shifted, for example, by n bits.
  • the head of data temporarily stored in the shift circuit 58 by this shift is the head of the next codeword, that is, the head of codeword B in FIG.
  • variable-length data decoding circuit detects the codeword of the variable-length encoded data and performs variable-length decoding.
  • variable-length code decoding device requires a plurality of variable-length data decoding circuits to perform variable-length decoding on each of a plurality of variable-length-encoded MPEG image data for each data.
  • circuit scale is large. Therefore, tentatively consider the following device as a variable-length code decoding device that overcomes the disadvantage that the circuit scale is large.
  • the device has only one variable-length data decoding circuit. That is, one shift circuit 58 and one codeword decoding circuit 59 described above are provided.
  • the shift circuit 58 includes an IMP EG data hierarchical structure decoding circuit 6, a second MPEG data hierarchical structure decoding circuit 7, a third MP EG data hierarchical structure decoding circuit 8,-
  • the variable-length coded MPEG image data from the decoding circuit 9 is input in a time-division manner.
  • the codeword decoding circuit 59 performs variable length decoding on the first codeword of the data stream from one of the plurality of MPEG data hierarchical structure decoding circuits as described above, and outputs the result.
  • the shift circuit 58 shifts the output data stream by the word length of the data output from the codeword decoding circuit 59 as described above. At this time, no processing is performed on data streams other than the data stream being processed.
  • the codeword decoding circuit 59 sequentially performs variable-length decoding of the first codeword of the data stream from the other MPEG data hierarchical structure decoding circuits and outputs the same, and the shift circuit 58 outputs the output data.
  • the output data stream is shifted by the word length.
  • variable-length code decoding device overcomes the disadvantage that the circuit scale is large, it has a drawback that the speed of variable-length decoding is slow.
  • the codeword decoding circuit 59 does not process data from another MPEG data hierarchical structure decoding circuit while processing data from one MPEG data hierarchical structure decoding circuit.
  • the third aspect of the present invention is to reduce the circuit size of a conventional variable-length code decoding device in consideration of the problem that the circuit size is large and the problem that the speed of variable-length decoding is not reduced. It is another object of the present invention to provide a variable-length code decoding device that performs variable-length decoding at high speed. Disclosure of the invention
  • an image deformation information input unit for inputting information of a degree of enlargement / reduction for each part of an image, and coded image data of the image.
  • Information on the degree of scaling for each part of the image is input, and based on the information on the degree of scaling, the image data is decoded for each part of the image.
  • Decoding means for decoding all of the image data irrespective of the information of the image, an image obtained by decoding all the image data from the decoding means, and each part of the image from the image deformation information input means.
  • Reference image generating means for generating a reference image scaled up and down for each part of the image using information on the degree of expansion and contraction of the image data and a motion vector of the image data;
  • a third aspect of the present invention provides an image transformation information input means for inputting information of a degree of enlargement / reduction for each part of an image, and a step of inputting encoded image data of the image, Decoding means for inputting information on the degree of scaling for each part of the image from the information input means and decoding the image data for each part of the image based on the information on the degree of scaling.
  • scaling information input means for inputting information on the degree of scaling for a plurality of image data, and a plurality of processing units for processing the image data.
  • Image processing means for performing image processing; and inputting the information on the degree of the enlargement / reduction from the enlargement / reduction information input means, and converting all or a part of the processing unit group of the image processing means into the information on the degree of the enlargement / reduction.
  • Allocating means for allocating image data corresponding to the information on the degree of enlargement / reduction, based on the information on the degree of enlargement / reduction.
  • the MPEG image data is time-divided from a plurality of streams having MPEG image data that has been subjected to variable length encoding, so that the amount of data from each stream becomes a predetermined amount.
  • Inputting the predetermined amount of MPEG image data from the input means performing variable length decoding, outputting a predetermined decoded word to the outside of the variable length code decoding device,
  • a variable length decoding means for outputting information on the length of the decoded word to be output to the input means, wherein the variable length decoding means converts the predetermined decoded word into a variable length code decoding device.
  • variable length decoding means Before output to the outside, the variable length decoding means inputs the predetermined amount of MPEG image data from all streams other than the MPEG image data stream of the decoded word to be output, and performs the variable length decoding.
  • Means for said predetermined decoding Output the word to the outside of the variable-length code decoding apparatus, and output the predetermined decoded word of the MPEG image data of the next stream of the MPEG image data stream of the output decoded word until the predetermined input word is output.
  • the means is the variable length decoding means Input the MPEG image data from the same stream as the decoded word MPEG image data stream of the decoded word that was last output to the outside of the variable-length code decoding device using the length information of the output decoded word.
  • a variable-length code decoding device characterized by the following.
  • the high-speed shift circuit 200 as input means of the variable-length code decoding device can shift data at higher speed than the shift circuit 58 of the conventional variable-length code decoding device. it can. Therefore, the variable length decoding means of the variable length code decoding apparatus of the present invention outputs a predetermined decoded word to the outside of the variable length code decoding apparatus, and the input means outputs the same stream as the output stream of the decoded word. In this case, the MPEG image data can be shifted and input by the length of the code word before the decoded word is decoded.
  • FIG. 1 is a block diagram of an image processing apparatus according to a first embodiment of the present invention.
  • FIG. 3 is a diagram for explaining image deformation when the image processing apparatus according to the first embodiment of the present invention deforms an image
  • FIG. 6 is a diagram for explaining decoding of image data when the IDCT means decodes image data according to the first embodiment of the present invention
  • FIG. 1 is a block diagram of an image processing apparatus according to a second embodiment of the present invention.
  • Block diagram of a shape calculation circuit of the image data processing device according to the second embodiment of the present invention.
  • Block diagram of interpolation operation circuit [FIG. 14] An example of a personal computer display used in the second embodiment of the present invention
  • Decoding of the image data processing apparatus according to the second embodiment of the present invention.
  • FIG. 9 is a diagram for explaining processing performed by a scaling circuit group of the image data processing device according to the second embodiment of the present invention.
  • Block diagram of the variable-length code decoding device according to the third embodiment of the present invention.
  • FIG. 1 is a block diagram of a conventional variable-length code decoding device, and a diagram for explaining the operation of the variable-length code decoding device.
  • FIG. 1 shows a block diagram of the image processing apparatus according to the first embodiment of the present invention.
  • the image processing apparatus according to the first embodiment of the present invention comprises: 0 means 1, inverse quantization means 2, IDCT means 3, CG original data creating means 4, deformation information creating means 5, I DCT control means 6, first adding means 7, Frame Buffer 8, motion compensating means 9, correcting means 10, second adding means 11, format converting means 12, mapping means 1 Consists of three.
  • the VLD means 1 is a means for inputting variable-length coded MPEG image data and performing variable-length decoding.
  • the inverse quantization means 2 converts the variable-length decoded MPEG image from the VLD means 1 This is a means for inputting data and performing inverse quantization.
  • the IDCT unit 3 is a unit that receives the inversely quantized MPEG image data from the inverse quantization unit 2 and decodes the MPEG image data for each block described later. The block will be described later in detail.
  • the CG original data creation means 4 displays the MPEG image from the MPEG image data input by the VLD means 1 on a display such as a personal computer, at what position on the display, what shape and size This is a means for receiving an instruction as to whether or not to perform matting from the user and outputting the information to the deformation information creating means 5.
  • the display displays the MPEG image from the image processing device.
  • the deformation information creating means 5 is a means for creating information on the degree of enlargement / reduction for each of a plurality of blocks, which will be described later, based on an instruction to transform the MPEG image from the CG original data creating means 4.
  • the IDCT control means 6 performs the decoding of the MPEG image data for each block by the IDCT means 3 based on the information of the degree of enlargement / reduction for each of the plurality of blocks from the deformation information creation means 5. This is a means for controlling the decoding method.
  • the first adding means 7 outputs the MPEG image data inputted by the VLD means 1 in an inter-frame forward measurement coded image (hereinafter, referred to as a P picture) or an inter-frame bidirectional predictive coded image (hereinafter, B ), The decoded difference image from the IDCT means 3 and the motion compensation image corresponding to the difference image from the motion compensation means 9 in which only the motion vector is compensated. Is a means for adding
  • Frame Buffer 8 contains the I picture decoded by IDCT means 3, the first adder This is a means to temporarily store the complete decoded picture of the P picture or B picture from the stage 7.
  • the motion compensation means 9 stores the data in the Frame Buffer 8 using only the motion vector of the data. This is a means for generating a motion-compensated image in which only the motion vector is compensated from the completely decoded image of the I-picture and / or P-picture.
  • the Frame Buffer 8 has already stored at least I pictures from the IDCT means 3. Similarly, when the MPEG image data input by the VLD means 1 is data of a B picture, the Frame Buffer 8 has already stored the fully decoded image of the I picture and the P picture. This is because P-picture or B-picture data is only difference data and motion vector data, so that a reference image is needed to create a complete image.
  • the correction means 10 compensates for motion from the motion compensation means 9 based on the deformation information from the deformation information creating means 5. This is a means for interpolating or thinning out the pixels of the image and transforming the motion compensated image to generate a reference image.
  • the second adding means 11 When the MPEG image data input to the VLD means 1 is data of a P picture or a B picture, the second adding means 11 outputs the data from the IDCT means 3 based on the deformation information from the deformation information creating means 5. This is a means for adding the decoded difference image and a reference image from the correction means 10 corresponding to the difference image. What If the MPEG image data input by the VLD means 1 is I-picture data, the second adding means 11 passes the I-picture decoded based on the transformation information from the IDCT means 3. Let it.
  • the format conversion unit 12 converts the I-picture from the IDCT unit 3 or the P-picture or the B-picture completely decoded from the second addition unit 11 that has passed through the second addition unit 11 into a YUV format. It is a means of converting an image in that format into an image in RGB format.
  • the mapping means 13 is means for displaying an image from the format conversion means 12 on a display such as a personal computer, based on an instruction of a mapping position from the CG original data creation means 4.
  • the operation of the image processing apparatus differs depending on whether the MPEG image data input to the VLD means 1 is I-picture data or P-picture or B-picture data. I do.
  • the CG original data creating means 4 converts the MPEG image from the MPEG image data input by the VLD means 1 into a display such as a personal computer as shown in FIG. ), And receives an instruction from the user as to how to deform, and outputs the information to the deformation information creating means 5.
  • FIG. 2 (a) shows that the MPEG image data input by the VLD means 1 is an intra-frame encoded image (hereinafter, I-picture). In this case, it is assumed that all the DCT coefficients of the data are the images to be decoded.
  • FIG. 2 (b) is an image obtained by deforming the image of FIG. 2 (a).
  • FIG. 3 (a) is a schematic diagram in which the image of FIG. 2 (a) is divided into 25 blocks, and the blocks are partial images constituting FIG. 3 (a).
  • FIG. 3B shows a schematic diagram in which the image of FIG. 2B is divided into 25 blocks. The numbers given to each block in Fig.
  • each block in FIG. 3 (a) and (b) are for distinguishing each block, and the blocks with the same number in Fig. 3 (a) and (b) Shall correspond.
  • the seventh block in FIG. 3 (a) corresponds to the seventh block in FIG. 3 (b).
  • the image in Fig. 2 (b) is generated from the image in Fig. 2 (a)
  • the image in Fig. 2 (a) is transformed by enlarging or reducing each block in Fig. 3 (a).
  • each block in FIG. 3 (b) is a scaled or equivalent block of FIG. 3 (a).
  • the deformation information creating means 5 determines that the size of each block in FIG.
  • the IDCT control means 6 determines whether the IDCT means 3 decodes the MPEG image data for each block based on the information on the degree of scaling for each of the plurality of blocks from the deformation information creating means 5. Is controlled.
  • the 0 means 1 inputs the variable length coded MPEG image data and performs variable length decoding, and the inverse quantization means 2 inversely quantizes the variable length decoded MPEG image data.
  • the IDCT means 3 outputs the dequantized MPEG image data from the inverse quantization means 2 for each block of the MPEG image.
  • That block that is, each block in FIG. 3A is a partial image in which all 8 ⁇ 8 DCT coefficients are decoded. Therefore, the IDCT means 3 decodes all the 8 ⁇ 8 DCT coefficients for the first to fifth blocks in FIG. 3 (a) as shown in FIG. As shown in Fig. 5 (b), for the block of (5), the low frequency side 6X6 DCT coefficient of the 8X8 DCT coefficient is decoded, and for the 16th to 25th blocks, As shown in FIG.
  • I DCT means 3 outputs the decoded image, that is, the image of FIG. 2B to the format conversion means 12 via the second addition means 11.
  • the IDCT unit 3 converts the inversely quantized VIP EG image data from the inverse quantization unit 2 into any of the MP EG images, regardless of the control of the decoding method from the IDCT control unit 6.
  • the block all 8 ⁇ 8 DCT coefficients are decoded, and the decoded image, that is, the image of FIG.
  • the Frame Buffer 8 temporarily stores the image of FIG. 2 (a). This storage is necessary when the MPEG image data input to the VLD means 1 is P-picture or B-picture data.
  • the format conversion means 12 converts the format of the image from the IDCT means 3 passed through the second addition means 11 from YUV to RGB.
  • the mapping means 13 displays the image from the format conversion means 12 on a display of a personal computer or the like based on the instruction of the mapping position from the CG original data creation means 4.
  • the Frame Buffer 8 has already stored at least I pictures. Also, when the MPEG image data input by the VLD means 1 is B-picture data, the Frame Buffer 8 has already stored fully decoded images of I-pictures and P-pictures. This is because the data of a P picture or a B picture is only difference data and data of a motion vector. Therefore, in order to create a complete image, an image to be used as a reference is required.
  • the CG original data creating means 4 deforms the MPEG image from the MPEG image data input by the VLD means 1 when displaying the MPEG image on a display such as a personal computer.
  • the deformation information creating means 5 performs scaling of each of the plurality of divided blocks of the MPEG image as shown in FIG. 3 (a). Create degree information.
  • the deformation information creating means 5 determines that each block in FIG. 3B has the same size as the corresponding block in FIG. 3A for the first to fifth blocks.
  • the size of the corresponding blocks in Fig. 3 (a) is reduced to 3 Z4 in both the vertical and horizontal directions.
  • both the height and width of the corresponding block in Fig. 3 (a) are reduced to the size of 1Z4 so that both the height and width of the corresponding block are reduced to 1Z2. Then, information on the extent of scaling for each block is created.
  • the IDCT control means 6 determines whether the IDCT means 3 decodes the MPEG image data for each block based on the information on the degree of scaling for each of the plurality of blocks from the deformation information creating means 5. Is controlled.
  • the VLD means 1 inputs the variable-length-encoded MPEG image data and performs variable-length decoding, and the dequantizing means 2 dequantizes the variable-length-decoded MPEG image data.
  • the IDCT means 3 calculates the difference between the inversely quantized MPEG image data from the inverse quantization means 2. Only data is decoded for each block of the MPEG image. In other words, the IDCT means 3 generates an 8 ⁇ 8 DCT coefficient for the first to fifth blocks of the MPEG image as shown in FIG. 3 (a), as shown in FIG. 5 (a). All are decoded, and for the 6th to 10th blocks, as shown in FIG. 5 (b), 6 ⁇ 6 DCT coefficients on the low frequency side are decoded, and for the 1st to 20th blocks, As shown in Fig.
  • the IDCT means 3 outputs a difference image obtained by decoding only the difference data to the second adding means 11 based on the control of the decoding method from the IDCT control means 6.
  • the IDCT means 3 stores only the difference data of the inversely quantized MPEG image data from the inverse quantization means 2 irrespective of the control of the decoding method from the IDCT control means 6, Also, all of the 8 ⁇ 8 DCT coefficients are decoded, and the decoded difference image is output to the first adding means 7.
  • the size of the difference image is the same as the size of the image in Fig. 2 (a).
  • the motion compensating means 9 inputs the motion vector input by the VLD means 1 and a complete image to be referred to the motion vector, for example, an I picture from the Frame Buffer 8, and only the motion vector compensates.
  • a motion compensated image is generated.
  • the dynamic compensation image is an image having the same size as the image in which all the 8 ⁇ 8 DCT coefficients are decoded from the data of the I picture in any block. That is, Figure 2
  • the motion compensating means 9 outputs the motion compensated image to the correcting means 10 and to the first adding means 7.
  • the first adding means 7 has 8 X for every block from IDCT means 3.
  • the difference image obtained by decoding all the 8 DCT coefficients and the motion compensation image corresponding to the difference image from the motion compensation means 9 are added and output to the Frame Buffer 8, and the Frame Buffer 8 performs the first addition.
  • the image obtained by adding the difference image from the means 7 and the motion compensation image is temporarily stored as a complete P-picture or B-picture.
  • the correcting means 10 receives the motion compensated image from the motion compensating means 9 and the blocks in FIG. 3 (a) for the motion compensated image from the deformation information creating means 5 are shown in FIG. 3 (b). Enter the scaling information for each of the 25 blocks when scaling to the corresponding block.
  • the correction means 10 is configured so that the IDCT means 3 has the same size as each block of the difference image obtained by decoding only the difference data based on the control of the decoding method from the IDCT control means 6.
  • the pixel of each block of the motion compensated image corresponding to the difference image is interpolated or thinned out to enlarge or reduce each block.
  • the correction unit 10 sets the 6 ⁇ 6 DCT coefficient of the motion-compensated image. Pixels are thinned out so that the DCT coefficient of the image becomes the same size as the decoded partial image. After that, the correction unit 10 outputs the reference image to the second addition unit 11.
  • the second adding means 11 corresponds to the difference image obtained by decoding only the difference data based on the control of the decoding method of the IDCT control means 6 from the IDCT means 3, and the difference image. Then, the reference image from the correction means 10 is added, and the added image is output to the format conversion means 12. Then, the format conversion means 12 converts the format of the image from the second addition means 11 from YUV to RGB.
  • mapping means 13 displays the image from the format conversion means 12 on a display such as a personal computer based on the mapping position instruction from the CG original data creating means 4.
  • FIG. 6 shows a block diagram of an image processing apparatus according to Embodiment 2 of the present invention.
  • the first embodiment of the image processing apparatus according to the second embodiment of the present invention includes the same constituent units as those included in the image processing apparatus according to the first embodiment. That is, the image processing apparatus according to the second embodiment includes: a first means 1; an inverse quantization means 2; an IDCT means 3; a CG original data creating means 4; a deformation information creating means 5; Means 6, deshuffling means 14, format conversion means 12, and mating means 13 are provided.
  • the VLD means 1 is means for inputting variable-length coded DV image data and performing variable-length decoding.
  • the inverse quantization means 2 is a means for receiving the variable length decoded DV image data from the VLD means 1 and performing inverse quantization.
  • IDCT means 3 receives the inversely quantized DV image data from inverse quantization means 2 and decodes the DV image data for each block as shown in FIG. 3 used in the first embodiment. is there.
  • the CG original data creating means 4 displays a DV image from the DV image data input by the VLD means 1 on a display of a personal computer or the like. This is a means for receiving an instruction from the user as to what position and what shape and size of the display is to be mapped, and outputting the information to the deformation information creating means 5.
  • the display displays DV images from the image processing device.
  • the deformation information creation means 5 determines the degree of enlargement / reduction for each of a plurality of blocks as shown in FIG. 3 used in the first embodiment based on the DV image deformation instruction from the CG original data creation means 4. This is a means for creating information.
  • the IDCT control unit 6 performs the decoding of the DV image data for each block by the IDCT unit 3 based on the information on the degree of enlargement / reduction for each of the plurality of blocks from the deformation information creation unit 5. Means for controlling the decoding method.
  • the deshuffling means 14 is a means for correctly arranging the decoded partial image for each block from the IDCT means 3 and completing the image of that frame for each frame.
  • the format converting means 12 is means for converting the format of the image from the deshuffling means 14 from the YUV format to the RGB format.
  • the mapping means 13 is a means for displaying an image from the format conversion means 12 on a display such as a personal computer based on an instruction of the mapping position from the CG original data creation means 4.
  • the CG original data creation means 4 converts the DV image from the DV image data input by the VLD means 1 into a personal computer as shown in FIG. 2 (a).
  • the image is deformed and displayed on the display such as the data as shown in FIG. 2 (b)
  • an instruction as to how the image is to be deformed is received from the user, and the information is output to the deformation information creating means 5.
  • FIG. 2A is a diagram of an image when all DCT coefficients of DV image data are decoded
  • FIG. 2B is a diagram of FIG. 2A. It is assumed that the image of FIG.
  • FIG. 3 (a) is a schematic diagram in which the image of FIG. 2 (a) is divided into 25 blocks, and the blocks constitute FIG. 3 (a). It is assumed that the image is a partial image.
  • FIG. 3 (b) is a schematic diagram in which the image of FIG. 2 (b) is divided into 25 blocks. The numbers given to each block in Figs.
  • each block in Fig. 3 (b) is a block whose corresponding block in Fig. 3 (a) is scaled or equivalent.
  • the deformation information creating means 5 determines that the size of each block in FIG. 3 (b) is the same as that of the corresponding block in FIG. 3 (a) for the first to fifth blocks.
  • the 6th to 15th blocks are For the 16th to 25th blocks, the height and width of the corresponding block in Fig. 3 (a) are reduced to 1Z2 so that both the height and width of the corresponding block are reduced to 3 Z4. Then, information on the extent of scaling for each block is created. If each block in Fig. 3 (a) is simply reduced, for example, only the size of the 7th and 18th blocks will be reduced as shown in Fig. 4. Will not match the shape of the 7th and 18th blocks. However, here, it is assumed that each block in FIG. 3 (a) is approximated by the corresponding block in FIG. 3 (b) simply by scaling.
  • the IDCT control means 6 decodes the DV image data when the IDCT means 3 decodes the DV image data for each block based on the information on the degree of enlargement / reduction for each of the plurality of blocks from the deformation information creation means 5. Control the way.
  • the VLD means 1 inputs the variable-length-encoded DV image data and performs variable-length decoding, and the dequantizing means 2 dequantizes the variable-length-decoded DV image data.
  • the IDCT means 3 converts the inversely quantized DV image data from the inverse quantization means 2 into the DV image, that is, FIG.
  • the DV image data is decoded for each block in the schematic diagram and output to the deshuffling means 14 in order from the decoded data.
  • the order in which the IDCT means 3 decodes each block in FIG. 3A is as follows: first ⁇ third ⁇ fifth ⁇ seventh ⁇ — ⁇ 21st ⁇ 23rd ⁇ 25th ⁇ 25th It is assumed that the order is 2 ⁇ 4th ⁇ 6th-8th ⁇ ... 20th-22nd ⁇ 24th block.
  • the decoding method is as follows. That is, as shown in FIG. 5A, the IDCT means 3 decodes the 88 0 (all the coefficients of the first to fifth blocks in FIG. As shown in Fig. 5 (b), for the block of (6), the 6X6 DCT coefficient on the lower side of the 8X8 DCT coefficient is decoded, and for the 16th to 25th blocks, Then, as shown in FIG. 5 (c), the 4 ⁇ 4 DCT coefficient on the low frequency side of the 8 ⁇ 8 DCT coefficient is decoded.
  • the deshuffling means 14 correctly arranges the partial images of each block of FIG. 3 (a) decoded for each block from the IDCT means 3 at the positions of the corresponding blocks in the number of FIG. To complete.
  • the partial image of the third block in FIG. 3 (a) is arranged at the position of the third block in FIG. 3 (b), and the partial image of the 21st block in FIG. It is to be placed at the position of the 21st block in b).
  • the deshuffling means 14 outputs the completed image to the format conversion means 12.
  • the format conversion means 12 converts the format of the image from the deshuffling means 14 from YUV to RGB.
  • mapping means 13 displays the image from the format conversion means 12 on a display of a personal computer or the like based on the indication of the mapping position from the CG original data creation means 4.
  • the order in which the IDCT means 3 decodes each block in FIG. 3 (a) is as follows: first to third ⁇ fifth ⁇ seventh ⁇ ⁇ twenty-first ⁇ twenty-third ⁇ twenty-third. It is assumed that the order is from 25th to 2nd to 4th to 6th to 8th ....'— 20th to 22nd to 24th block, but the order is not limited. In short, implementation The IDCT means 3 in the second embodiment does not decode each block in the order of the numbers given to the blocks in FIG. 3 (a).
  • CG original data creating means 4, deformation information creating means 5, and IDCT control means 6 are used as image deformation information input means.
  • VLD means 1, inverse quantization means 2, and IDCT means 3 were used as decoding means.
  • a reference image generating means a first adding means 7, a frame buffer 8, a motion compensating means 9, and a correcting means 10 were used.
  • the second adding means 11 was used as the adding means, and the deshuffling means 14 was used as the rearranging means.
  • the image deformation information input means of the first invention is not limited to the CG original data creation means 4, the deformation information creation means 5, and the IDCT control means 6 described above. All you have to do is input the degree of information.
  • the decoding means of the first invention is a VLD means 1
  • the decoding means of the first invention inputs the coded image data, inputs the information of the degree of scaling for each part of the image from the image deformation information input means, and It is only necessary to decode the image data for each part of the image based on the information of the degree of reduction.
  • the reference image generation means of the first invention is not limited to the first addition means 7, the frame buffer 8, the motion compensation means 9, and the correction means 10, but in short, all the image data from the decoding means.
  • the image is scaled for each part of the image. It is only necessary to generate the reference image.
  • 3 (a) and 3 (b) are schematic diagrams in which the image of FIG. 2 (a) or (b) is divided into 25 blocks. ) The number of blocks when each is divided into blocks is limited to 25. In other words, the first to fifth blocks in FIG. 3 (a) may be regarded as one block. In short, Fig.
  • FIG. 3 (a) shows that even when the image is deformed as shown in Fig. 3 (b), the image is divided into blocks with the same degree of scaling. I'll do it. Also, Fig. 3 (b) only needs to be divided into blocks with the same degree of image enlargement / reduction, corresponding to the block division in Fig. 3 (a). .
  • each block in FIG. 3A may be enlarged according to the degree of deformation of the image. The enlargement is performed, for example, by adding 0-value data to the ninth or higher order high-frequency component of the 88 0 CT coefficients to generate a 10 ⁇ 10 DCT coefficient, and decoding it.
  • the whole image may be reduced so that some blocks in Fig. 3 (a) do not exist in Fig. 3 (b), depending on the degree of the reduction. That is, the reduction ratio of the block may be 100%. In this case, the difference between the block that no longer exists and the next block is needed to create the image, so only the DC component of the 8x8 DCT coefficient Is decrypted.
  • the images from the IDCT means 3, the second adding means 11, and the deshuffling means 14 are assumed to be converted in format by the format converting means 12, but they are not necessarily converted. No need to be done.
  • the format of the image only needs to match the display. Therefore, if the format of the image is not converted by the format conversion means 12, the mapping means 13 should display the image from the IDCT means 3, the second addition means 11 or the deshuffling means 14 on the display. become.
  • the first aspect of the present invention is to decode an image based on information on the degree of scaling for each part of the image when decoding the encoded image data. It is possible to provide an image processing apparatus for performing the processing. Next, a second embodiment of the present invention will be described with reference to the drawings.
  • FIG. 10 is a block diagram of an image data processing device according to the second embodiment of the present invention.
  • the image data processing apparatus according to the second embodiment 1 of the present invention It comprises an IZF circuit 1000, a shape operation circuit 101, an operation amount control circuit 102, a decoding / interpolation operation circuit 110, a memory I / F, and a memory 112. Note that each of the shape calculation circuit 101, the calculation amount control circuit 102, and the decoding / interpolation calculation circuit 110 further includes constituent means for configuring them. This will be explained later.
  • FIG. 14A shows a display 501 of a personal computer.
  • the display 501 of the personal computer is a display for displaying an image from the image data processing device according to the second embodiment of the present invention.
  • the display 501 has five windows 503,
  • 504, 505, 506, and 507 are displayed, and an image is displayed in each window. Also, among these five windows, the images displayed in windows 503, 505, 506, and 507 are assumed to be images from MPEG image data.
  • the shape calculation circuit 101 determines the size and shape of the window based on the information on the size and shape of the window from the user IZF circuit 1000, and performs scaling of the image so as to match the window. These are means for calculating the vertical and horizontal enlargement / reduction ratios of the image. As shown in FIG. 11, the shape calculation circuit 101 includes a size and shape determination circuit 2
  • the size / shape determination circuit 201 of the pasting surface determines the size and shape of the window.
  • the vertical / horizontal ratio calculation circuit 202 calculates the enlargement / reduction ratio.
  • the scaling ratio is defined as the image code source 1106, the image code source 2107, the image code source 3108, or the MPEG from the image code source n109. This is the information required to match an image obtained by decoding all DCT coefficients of image data to the size and shape of the corresponding window for each image.
  • the image code generation sources 1 and 106 are means for generating encoded MPEG image data of an image displayed on a window 503 of a display 501 in FIG. 14A.
  • image code sources 2 and 107, image code sources 3 and 108, '', and image code sources ⁇ and 109 are the windows 505, 506, and 507 of the display 501 in Fig. 14 (a), respectively.
  • This is a means for generating MPEG image data in which the image to be displayed is encoded.
  • n is 4.
  • the arithmetic amount control circuit 102 accurately displays an image in the window of the display 501 in FIG. 14A based on information from the user IZF circuit 1000 and information from the shape arithmetic circuit 101. In this way, when an image is written to the memory 112, this is a means for specifying the writing position of the image.
  • the arithmetic amount control circuit 102 controls the decoding method of the MPEG image data in the decoding and interpolation arithmetic circuit 110 using the two pieces of information described above, and furthermore, the size and shape of the image. Is also a means of controlling so as to match the window.
  • the arithmetic amount control circuit 102 includes a writing position control circuit 302, an image decoding control circuit 304, and a size conversion control circuit 303.
  • the decoding / interpolation operation circuit 110 is coded from the image code generators 1 and 106, the image code generators 2 and 107, the image code generators 3 and 108, and the image code generators ⁇ and 109, respectively.
  • MPEG image data is input, each of the plurality of MPEG image data is decoded, and the decoded image is decimated or pixel-matched to match the corresponding window of the display 501 in FIG. 14 (a).
  • This is a means for performing interpolation.
  • the decoding / interpolation operation circuit 110 includes a processing amount allocating circuit A / 404, an MPEG decoding circuit group 408, a processing amount allocating circuit B / 412, and a scaling circuit group 416. Have.
  • Each of the MPEG decode circuit group 408 and the enlargement / reduction circuit group 416 further includes constituent means for configuring them. This will be explained later.
  • the memory IZF 111 receives a plurality of images from the enlargement / reduction circuit group 416 of the decoding / interpolation operation circuit 110, and outputs information of the write position when each of the images is written to the memory 112. This is a means for inputting from the writing position control circuit 302 of 102 and collecting information of each image and its corresponding writing position.
  • the memory 112 inputs a plurality of pairs of images and corresponding write position information from the memory IZF 111, and displays an image on the display 501 in FIG. 14A based on the input write position information.
  • This is a means for storing the image so that the image is displayed at a predetermined position when the image is displayed.
  • the user's IZF circuit 1000 the user is instructed by the user on the display 501 of FIG. 14 (a) on the size, shape and position of each of the five images to be displayed by the user. It accepts and outputs the information to the size / shape determination circuit 201 of the shape calculation circuit 101 and the write position control circuit 302 of the calculation amount control circuit 102.
  • the size / shape determination circuit 201 of the shape calculation circuit 101 is based on the size and shape information of each of the five windows from the user I / F circuit 1000. Then, the size and shape of these five windows are determined, and the information is output to the aspect ratio arithmetic circuit 202. Then, the vertical-horizontal ratio calculation circuit 202 calculates the enlargement / reduction ratio of the image displayed in each of the five windows based on the information, and uses the calculation result as a component of the calculation amount control circuit 102. Means and a processing amount allocating circuit A-404 of the decoding / interpolation operation circuit 110.
  • the writing position control circuit 302 of the calculation amount control circuit 102 firstly outputs information on the size, shape and position of each of the five windows from the user IZF circuit 100, and the shape calculation circuit. Inputs the information of the scaling ratio of the image displayed in each of the five windows from 102 to 202. Then, based on those two pieces of information, the writing position of the image where the image is written to the memory 112 is specified so that the image is correctly displayed in each of the five windows, and the information is written. Output to memory IZF 1 1 1.
  • the image decoding control circuit 304 of the computation amount control circuit 102 Based on the information on the scaling ratio from the vertical / horizontal ratio calculating circuit 202 of the road 101, the decoding / interpolating calculation is performed so that the image of the size and shape closest to the size and shape of each of the five windows is decoded.
  • the MPEG decoding circuit group 408 of the circuit 110 determines the decoding method of the MPEG image data to be performed. Then, the information of the decoding method is output to the decoding / interpolation operation circuit 110's processing amount allocating circuit A ⁇ 404.
  • FIG. 15 is a diagram for explaining a method of decoding MPEG image data performed by the MPEG decoding circuit group 408 of the decoding / interpolation operation circuit 110.
  • the image decoding control circuit 304 sends the MP code from the image code generation source 1 ⁇ 106 to the MPEG decoding circuit group 408.
  • the decoding method is determined so that all 8 ⁇ 8 DCT coefficients of the EG image data are decoded. That is, as shown in FIG. 15 (a), the MPEG decoding circuit group 408 decodes all DCT coefficients of MPEG image data from the image code generators 1 and 106.
  • the image decoding control circuit 304 sends the image code to the MPEG decoding circuit group 408 6 ⁇ 6 coefficient of lower frequency among DCT coefficients of 8 ⁇ 8 MPEG image data from source 1 ⁇ 106
  • the decoding method is determined so that only the decoding is performed. That is, as shown in FIG. 15 (b), the MPEG decoding circuit group 408 decodes only 6 ⁇ 6 DCT coefficients of MPEG image data from the image code generators 1 ⁇ 106.
  • the image decoding control circuit 304 The decoding method is determined so that the MPEG decoding circuit group 408 decodes only the lower frequency 4 ⁇ 4 DCT coefficient.
  • the image decoding control circuit 304 sends the image code generation source to the MPEG decoding circuit group 408.
  • Decide the decoding method so that a zero coefficient is added as a high frequency component coefficient to the DCT coefficient of the 8 ⁇ 8 MPEG image data from 1/106 and decoded as a 16 ⁇ 16 coefficient. . That is, as shown in FIG. 15 (d), the MPEG decoding circuit group 408 adds a zero coefficient to the DCT coefficient of the 8 ⁇ 8 MPEG image data from the image code generator 1 ⁇ 106. , Decoding as a 16 ⁇ 16 coefficient.
  • the image decoding control circuit 304 Decoding is performed by adding a zero coefficient as a high-frequency component coefficient to the DCT coefficient of 8 ⁇ 8 MPEG image data from the image code source 1106 and decoding it as a coefficient of 8 NX 8 N Decide the method. In this way, when the original drawing of image code source 1 106 is enlarged, it becomes a natural number times.
  • the decoding / interpolation operation circuit 110 determines the decoding method of the MPEG image data performed by the MPEG decoding circuit group 408 of the 110.
  • the size conversion control circuit 303 of the calculation amount control circuit 102 determines the size of the five windows based on the information of the image scaling ratio from the aspect ratio calculation circuit 202 of the shape calculation circuit 101.
  • the size of the image to be scaled by the scaling circuit group 416 of the decoding / interpolation operation circuit 110 is determined so as to match the size and shape of the image.
  • the original image of the MPEG image data from the image code generators 1 and 106 is N times a natural number or a specific size such as 68 or 48. It can only be scaled up or down. Therefore, if the size of each window is not a specific size, such as 2Z5 in the original drawing, the size conversion control circuit 303 determines that the image decoded by the MPEG decoding circuit group 408 matches each window. Next, the scaling circuit group 416 determines an image scaling method for interpolating or thinning out pixels.
  • the size conversion control circuit 303 outputs information on the determined enlargement / reduction method to the processing amount allocation circuits B and 12 of the decoding / interpolation operation circuit 110.
  • Decoding 'Processing amount allocating circuit A404 of interpolation arithmetic circuit 1 10 first, image code generation source 1' 106, image code generation source 2 107, image code generation source 3 108, ' Input encoded MPEG image data from each of the sources n ⁇ 109. Then, information of image enlargement / reduction based on each of the plurality of MPEG image data from the vertical / horizontal ratio calculation circuit 202 of the shape calculation circuit 101 and the plurality of Ms from the image decoding control circuit 304 of the calculation amount control circuit 102 are provided. Contrast with the information on the decoding method of each PEG image data.
  • the processing amount allocating circuit A.404 calculates the arithmetic unit group of the MPEG decoding circuit group 408. Which of them is assigned to decoding of each of the plurality of MPEG image data is determined. The operation unit will be described later.
  • the processing amount allocating circuits A and 404 allow the MP EG decoding circuit group 408 to simultaneously process a plurality of MP EG image data at once based on the processing amount at the time of decoding each of the plurality of MP EG image data.
  • the processing amount allocating circuit A 404 outputs the information of the determined allocation and the image code generators 1 and 106, the image code generator 2 and 107, the image code generator 3.108,.
  • the MPEG image data from each of the sources ⁇ ⁇ 109 is output to the MPEG decoding circuit group 408 of the decoding-interpolation operation circuit 110.
  • allocation information and a plurality of MPEG image data are input from the MPEG decoding circuit group 408 processing amount allocation circuit A ⁇ 404.
  • the MPEG decoding circuit group 408 includes an external interface circuit 2500, a coupling method operation circuit 2509, a variable coupling circuit 2507, an operation unit 12501, and an operation unit 22502.
  • the data temporary storage circuit 2508 inputs a plurality of MPEG image data from the external interface circuit 2500 and temporarily stores them.
  • connection method operation circuit 2509 inputs the allocation information from the external interface circuit 2500 and outputs the information to the variable connection circuit 2507. Thereafter, the variable coupling circuit 2507 converts the plurality of MPEG image data temporarily stored in the data-time storage circuit 2508 based on the assignment information from the coupling method arithmetic circuit 2509 into one of the plurality of arithmetic unit groups. Assign to For example, as described in the description of the decoding method, the MPEG image data corresponding to the large window of the display 501 in FIG. 14A has a large number of DCT coefficients at the time of decoding. Three arithmetic units are assigned as the ones with the highest number.
  • MPEG image data corresponding to a window having a small window size has a small number of DCT coefficients at the time of decoding, so that one operation unit is assigned as a small processing amount.
  • three operation units are allocated, and in Fig. 15 (c), one operation unit is allocated.
  • one or more assigned arithmetic units decode the corresponding MPEG image data.
  • all or a part of the assigned operation unit group decodes a plurality of MPEG image data simultaneously and in parallel.
  • the decoding method is based on the decoding method determined by the image decoding control circuit 304 of the operation amount control circuit 102 described with reference to FIG. This has been discussed above. Here, the description is omitted.
  • the plurality of decoded images are output to the processing amount assignment circuit B • 412 of the decoding / interpolation operation circuit 110 via the external interface circuit 2500.
  • the processing amount allocating circuit B 412 first inputs a plurality of images from the MPEG decoding circuit group 408. Then, the processing amount allocating circuits B and 412 respectively convert the images decoded by the MPEG decoding circuit group 408 based on the information of the image enlargement / reduction method from the size conversion control circuit 303 of the operation amount control circuit 102. The amount of processing for thinning out or interpolating pixels is determined from the image from the MPEG decoder circuit group 408 so as to match the size and shape of the corresponding window.
  • the processing amount allocating circuit B 4 12 12 allows the enlargement / reduction circuit group 416 to simultaneously process a plurality of images at once based on the processing amount of each of the plurality of images from the MPEG decoding circuit group 408. It is determined which of the arithmetic unit groups of the enlargement / reduction circuit group 416 is assigned to the processing of each image so that the processing can be performed. Then, the processing amount allocating circuit B ⁇ 412 outputs the determined allocation information and the plurality of images from the MPEG decoding circuit group 408 to the decoding / compensation operation circuit 110, the enlargement / reduction circuit group 416. .
  • the enlargement / reduction circuit group 416 processing amount allocating circuit B ⁇ 12 inputs the damage information and a plurality of images.
  • the scaling circuit group 416 is the same as the MPEG decoding circuit group 408. In this way, it is composed of an external interface circuit, a coupling operation circuit, a variable coupling circuit, a plurality of operation units, and a data temporary storage circuit.
  • the enlargement / reduction circuit group 416 corresponds to one or a plurality of operation units assigned based on the assignment information from the processing amount assignment circuit B ⁇ 412. Performs thinning or interpolation of image pixels. For example, when reducing the image in Fig. 17 (a) to the image in Fig. 17 (b), pixels are decimated, and the processing to suppress the aliasing distortion that occurs when decimating the pixels is performed by three arithmetic units. Then, one arithmetic unit performs the decimation process, and if color conversion is performed, the conversion process is performed by two arithmetic units.
  • all or a part of the allocated arithmetic unit group performs pixel thinning or interpolation on a plurality of images simultaneously and in parallel. Note that the thinning or interpolation of the pixel is performed so as to match the size and shape of the corresponding window.
  • the plurality of images subjected to the pixel thinning or interpolation are output to the memory IZF 111 via an external interface circuit.
  • the memory IZF 111 inputs the plurality of images from the enlargement / reduction circuit group 416 and the information on the writing position when the image is written to the memory 112 from the writing position control circuit 302 of the operation amount control circuit 102.
  • the information of each image and the corresponding writing position are summarized for each of the five windows of the display 501 shown in FIG. 14A, and the information is combined with a plurality of images from the scaling circuit group 416.
  • the image is displayed on the display 501 in Fig. 14 (a).
  • the image is stored so that the image is accurately displayed at a predetermined position.
  • the image stored in the memory 112 is reproduced, the image is displayed in each window of the display 501 in FIG.
  • a media processor may be used as the MPEG decode circuit group 408 and the scaling circuit group 416.
  • the processing amount allocation circuits A and 404 are separated from the processing amount allocation circuits B and 412, and the MPEG decoding circuit group 408 and the scaling circuit group 416 are separated.
  • the processing amount allocating circuits A and 404 and the processing amount allocating circuit B-412 are separated into one processing amount allocating circuit, and the MPEG decoding circuit group 408 and the scaling circuit group are described.
  • the image data processing circuit may not be separated from the image data 416. In this case, the image data processing circuit decodes the MPEG image data and enlarges / reduces the image in the allocated arithmetic unit according to the instruction of the processing amount allocation circuit.
  • Embodiment 1 has described the case where the images displayed in each window have the same scale of the entire image, as shown in the display 501 (a) of FIG. As in the image displayed in the window 1201 or the window 1203 of the display shown in FIG. 18, the entire image may not be the same in scale and may be partially different. In that case, the MPEG decoding circuit group 408 and the scaling circuit group 416 require a larger amount of processing for an image having a partially different scaling ratio than, for example, producing an image having the same scaling ratio. What is necessary is just to perform the processing in an arithmetic unit according to the processing amount. (Second embodiment of the present invention)
  • the configuration of the image data processing device according to the second embodiment of the present invention is the same as the configuration of the image data processing device according to the first embodiment of the second invention, and the operation thereof is the same as that of the second embodiment.
  • the operation of the image data processing device according to the first embodiment of the present invention is partially different from the operation of the image data processing device.
  • windows # 505 and 506 and windows 506 and 507 are displayed so as to overlap.
  • the user IZF circuit 1000 receives an instruction from the user to display the plurality of windows so that some of the windows overlap, the user IZF circuit 1000 performs the overlapping.
  • the status information is also output to the size / shape determination circuit 201 of the pasting surface of the shape calculation circuit 101.
  • the size / shape determination circuit 201 of the pasting surface also determines the size and shape of the five windows by using the information on the overlapping status from the user IZF circuit 1000.
  • the vertical / horizontal ratio calculation circuit 202 of the shape calculation circuit 101 outputs the information of the enlargement / reduction ratio of the image displayed in each of the five windows of the display 501 in FIG. It outputs to the configuration means and the processing amount allocating circuits A and 404 of the decoding / interpolation operation circuit 110, and also outputs the information on the overlapping state input by the user IZF circuit 1000 to the operation amount control circuit 1 02 and the processing amount allocating circuits A and 404.
  • the writing position control circuit 302 of the arithmetic amount control circuit 102 uses the information on the overlapping state of the windows from the vertical / horizontal ratio arithmetic circuit 202 of the shape arithmetic circuit 101 to store the five images in the memory 112. When writing, specify the writing position of those images.
  • the image decoding control circuit 304 of the arithmetic amount control circuit 102 uses the information on the overlapping state of the windows from the vertical / horizontal ratio arithmetic circuit 202 of the shape arithmetic circuit 101 to perform decoding and interpolation of the MPEG
  • the decoding circuit group 408 determines a decoding method of the MPEG image data so that the overlapping portion is not decoded. That is, with respect to windows 505 and 507 of the display 501 in FIG. 14A, the MP EG image data of only the image of the windows 508 and 509 in FIG.
  • the image decoding control circuit 304 determines a decoding method.
  • the decoding method is determined so that the MPEG image data of the image where the windows 505 and 507 of the display 501 of FIG. 14A are hidden by the window 506 is not decoded. As a result, the processing amount at the time of decoding in the MPEG decoding circuit group 408 is reduced.
  • the size conversion control circuit 303 of the calculation amount control circuit 102 uses the information on the overlapping state of the windows from the vertical / horizontal ratio calculation circuit 202 of the shape calculation circuit 101 to determine the size and the size of each of the five windows.
  • the method of scaling the image decoded by the MPEG decoder circuit group 408 of the decoding / interpolation operation circuit 110 is determined so as to match the shape.
  • the scaling method is determined so that the image of the portion hidden by the window 505 of 501 and the window 506 of 507 is not processed by the scaling circuit group 416 of the decoding / interpolation operation circuit 110. As a result, the processing amount in the scaling circuit group 416 is reduced.
  • the processing amount allocating circuit A 404 of the decoding / interpolation operation circuit 110 uses information on the decoding method from the image decoding control circuit 304 of the operation amount control circuit 102 in consideration of the overlapping state of the windows. Then, it is determined which of the arithmetic unit groups of the MPEG decoding circuit group 408 is to be assigned to decoding of the MPEG image data of a plurality of images. That is, the processing amount allocating circuit 404 determines that the decoding amount of the MPEG image data in the windows 505 and 507 of the display 501 in FIG. The assignment of the operation unit group of the MPEG decoding circuit group 408 is determined so that the number of calculation units is reduced.
  • the decoding / interpolation operation circuit 110 receives the information on the scaling method from the size conversion control circuit 303 of the operation amount control circuit 102 in consideration of the overlapping state of the windows.
  • Any one of the operation units of the scaling circuit group 416 can be used to convert the image from the MPEG decoding circuit group 408 so that the image from the MPEG decoding circuit group 408 matches the size and shape of the corresponding window. Is determined to be assigned to the processing of each of the plurality of images. That is, the processing amount allocating circuits B and 412 determine that the windows 505 and 507 of the display 501 in FIG.
  • the assignment of the operation unit group of the enlargement / reduction circuit group 416 is determined so that the reduction is achieved.
  • the memory IZF 111 inputs a plurality of images from the enlargement / reduction circuit group 416 and information of a writing position when an image is written to the memory 112 from the writing position control circuit 302 of the operation amount control circuit 102, In the windows 505 and 507 of the five windows in FIG. 14A, only the portion shown in FIG. 14B is written in the memory 112.
  • the configuration of the image data processing apparatus according to the second embodiment of the present invention is the same as the configuration of the image data processing apparatus according to the first embodiment of the second invention, and the operation thereof is the same as that of the second embodiment.
  • the operation is partially different from the operation of the image data processing device according to the first or second embodiment of the present invention.
  • Embodiments 1 and 2 have been described assuming that the number of images displayed on the display 501 in FIG. 14A is five. However, when the number of images becomes large, for example, 20, decoding is performed.
  • the MPEG decoding circuit group 408 or the scaling circuit group 416 of the interpolation arithmetic circuit 110 all the arithmetic units in the arithmetic unit group can be processed because the processing amount is too large even if they are individually processed. May not be.
  • the user I / F circuit 1000 inputs information on the priority of the processing of each MPEG image data from the user, and the image decoding control circuit 304 and the size conversion control of the computation amount control circuit 102.
  • the circuit 303 outputs priority information on the processing of each MPEG image data.
  • the image decoding control circuit 304 decodes all the operation units of the MPEG decoding circuit group 408 of the interpolation operation circuit 110 based on the information on the priority of the processing of each image from the user IZF circuit 1000. In order to avoid exceeding the processing amount in the case of processing, only low-frequency parts of DCT coefficients are decoded in order from MPEG image data with low priority, and decoded with a size smaller than the size of the corresponding window Thus, the decoding method of each MPEG image data is determined. That is, the image decoding control circuit 304 reduces the decoding processing amount in order from the MPEG image data having the lower priority.
  • the processing amount allocating circuit A / 404 of the decoding / interpolation operation circuit 110 converts any of the operation units of the MPEG decoding circuit group 408 into a plurality of MPEG units. Decide whether to assign to the decoding of each image data.
  • the size conversion control circuit 303 is a scaling circuit of the decoding / interpolation operation circuit 110 based on information on the priority of processing of each image from the user IZF circuit 1000.
  • MPEG decoding circuit group so as not to exceed the processing amount when all the processing units of group 416 have processed, and to reduce the processing amount in order from the decoded image from MPEG image data with lower priority.
  • the size conversion control circuit 303 outputs the image from the lower priority MPEG image data. Reduce the amount of enlargement / reduction processing in order from the image.
  • the processing amount is reduced by simply arranging the calculated image signal around a predetermined position.
  • the enlarged image looks like a mosaic image.
  • the processing unit group of the scaling circuit group 4 16 Is assigned to the scaling of each of the multiple images.
  • the priority order information on the processing of each MPEG image data is input by the user IZF circuit 1000 from the user.
  • the image decoding control circuit 304 and the size conversion control A rule for determining the priority information may be set in advance in the circuit 303.
  • the image decoding control circuit 304 and the size conversion control circuit 303 may determine the decoding method and the enlargement / reduction method, respectively, based on a predetermined rule.
  • the predetermined rule is a rule that sets the image processing priority of the window at the front of the display to the highest priority and the image processing priority of the window at the rearmost to the lowest priority.
  • the rule may be based on the size of the window, such that a larger window has a higher priority.
  • the rule may have different priorities depending on the signal source of the MPEG image data.
  • the priority of image processing for MPEG image data from a TV tuner as a signal source is MV from digital video or digital video as a signal source.
  • the rule may be that the priority is higher than the priority of image processing of PEG image data.
  • a predetermined rule may be set so that a user can change a setting.
  • the order of precedence according to the pre-determined Lunole is, for example, window 1 is the highest, window 2 is the second, window 3 is the third, and window 4 is the fourth.
  • the user's instructions may override the predetermined rules, so that the user changes the priority so that window 3 is second.
  • the information on the priority of the processing of each MPEG image data may be information for reducing the frame rate of each image.
  • the scaling information input means includes a user IZF circuit 100, a shape calculation circuit 101, and a calculation amount control circuit 102.
  • the image processing means comprises a MPEG decoding circuit group 408 of the decoding / interpolation operation circuit 110 and a scaling circuit group 416.
  • the allocating means is composed of a processing amount allocating circuit A ⁇ 404 of the decoding / interpolation operation circuit 110 and a processing amount allocating circuit B ⁇ 404.
  • the enlargement / reduction information input means of the second invention is not limited to the one composed of the user IZF circuit 100, the shape operation circuit 101, and the operation amount control circuit 102. What is necessary is just to input the information of the degree of enlargement / reduction to.
  • the image processing means is not limited to the one composed of the MPEG decoding circuit group 408 and the scaling circuit group 416 of the decoding-interpolation operation circuit 110, but may be a processing unit for processing a plurality of image data. Enter image data and input image data from the scaling information input means. It is only necessary to perform image processing in accordance with the assignment of the processing unit group from the assignment unit based on the information on the degree of enlargement / reduction of the data.
  • the allocating means is not limited to the processing amount allocating circuit A • 404 and the processing amount allocating circuit B ⁇ 404 of the decoding / interpolation operation circuit 110, and the enlargement / reduction information input.
  • the image data processing apparatus includes When inputting a plurality of images in which the MPEG image data has been completely decoded and enlarging or reducing each of the images, the division of the operation unit group is performed based on the processing amount determined according to the enlargement / reduction ratio. You can determine the application and let the assigned arithmetic unit perform image scaling.
  • the number of images displayed on the display is not limited to five. In short, the number of images displayed on the display only needs to be plural.
  • the second present invention provides a single device for reproducing a plurality of MPEG image data and displaying a plurality of images simultaneously on a display of a personal computer or the like.
  • an image data processing device that flexibly processes a plurality of MPEG image data.
  • variable-length code decoding device according to the third embodiment of the present invention 1 will be described.
  • FIG. 19 shows a block diagram of a variable-length code decoding device according to the third embodiment of the present invention.
  • the variable-length code decoding device M according to the third embodiment of the present invention includes a data multiplexing circuit 100, a high-speed shift circuit 200, a time-division variable-length codeword decoding circuit 300, and a multiplexed data separation circuit 400. And a high-speed clock circuit 500. Note that each of the high-speed shift circuit 200 and the time-division variable-length code native language decoding circuit 300 further includes constituent means for configuring them.
  • a first image code generation source 600 in addition to the above-described variable-length code decoding apparatus M, a first image code generation source 600, a second image code generation source 700, a third image code generation source 800, and an n-th image code generation source 900
  • An IMP EG data hierarchical structure decoding circuit 1099 in addition to the above-described variable-length code decoding apparatus M, a first image code generation source 600, a second image code generation source 700, a third image code generation source 800, and an n-th image code generation source 900
  • An IMP EG data hierarchical structure decoding circuit 1099 in addition to the above-described variable-length code decoding apparatus M, a first image code generation source 600, a second image code generation source 700, a third image code generation source 800, and an n-th image code generation source 900
  • An IMP EG data hierarchical structure decoding circuit 1099 in addition to the above-described variable-length code decoding apparatus M, a first image code generation source 600,
  • first image code generator 600 For convenience of description below, first, first image code generator 600, second image code generator 700, third image code generator 800, nth image code generator 900, first MPEG data hierarchical structure decoding circuit 1099
  • the second MPEG data hierarchical structure decoding circuit 1100, the third MPEG data hierarchical structure decoding circuit 1200, and the n-th MPEG data hierarchical structure decoding circuit 1300 will be described.
  • the first image code generation source 600, the second image code generation source 700, the third image code generation source 800, and the n-th image code generation source 900 are each a personal combination. This is a means for generating variable-length encoded MPEG image data of an image displayed on a display such as a UTA.
  • n is 4.
  • the data streams from the first image code generator 600, the second image code generator 700, the third image code generator 800, and the n-th image code generator 900 are These are the first data stream, the second data stream, the third data stream, and the fourth data stream, respectively.
  • the IMP EG data hierarchical structure decoding circuit 1099 receives the variable length coded MP EG image data from the first image code source 600, that is, the first data stream, and converts the data into a motion vector and a difference. It is a means of analyzing the format of the data image, such as whether it consists of data.
  • the second MPEG data hierarchical structure decoding circuit 1100, the third MPEG data hierarchical structure decoding circuit 1200, and the n-th MPEG data hierarchical structure decoding circuit 1300 are the second, third, and fourth data, respectively. This is a means to input the variable length coded MPEG image data of the stream and analyze the format of the data image.
  • n is 4.
  • the data multiplexing circuit 100 receives the variable-length-encoded MPEG image data of the first, second, third and fourth data streams, and multiplexes the data of the plurality of data streams. is there.
  • the data multiplexing circuit 100 receives a high-speed clock signal from the high-speed clock circuit 500 and multiplexes data at a high speed based on the high-speed clock signal.
  • the high-speed shift circuit 200 is connected to the first and second
  • the high-speed shift circuit 200 is composed of a 1-bit shift circuit 150 0 0, a first selection circuit 160 0 0, a 2-bit shift circuit 170 0 0, and a second selection circuit 1 800, 4-bit shift circuit 190, third selection circuit 200, 8-bit shift circuit 200, fourth selection circuit 220, 16-bit shift circuit 230, A fifth selection circuit 240 and a control circuit 250 are provided. Each component of the high-speed shift circuit 200 shown in FIG. 21 will be described later in detail.
  • the time-division variable-length codeword decoding circuit 300 receives the maximum of each of the variable-length-encoded MPEG image data of the first, second, third, and fourth data streams input by the high-speed shift circuit 200. This is a means for sequentially detecting the earliest code word and the word length of the code word for the preceding 64 bit data, and performing variable length decoding of the code word. As shown in FIG.
  • the time-division variable-length codeword decoding circuit 300 includes a first determination circuit 260, a first register 270, a second determination circuit 280, 2 register 2900, 3rd judgment circuit 30000, 3rd register 3100, polarity adjustment circuit 3200, 4th register 3300, 1st flag memory 3400, It includes a two-flag memory 350, a third flag memory 360, a fourth flag memory 370, a timing measurement circuit 380, and a reset signal generation circuit 390.
  • the multiplexed data demultiplexing circuit 400 outputs the variable-length decoded data of the first, second, third, and fourth data streams from the time-division variable-length codeword decoding circuit 300, This is a means to separate each data stream.
  • the high-speed clock circuit 500 is composed of a data multiplexing circuit 100, data input and multiplexing, a high-speed shift circuit 200, data input and shift, and a time-division variable-length codeword decoding circuit 300. This is a means for controlling to perform variable-length decoding at high speed.
  • the information source decoder group 1400 in FIG. 20 includes the variable length decoded data for each data stream separated by the multiplexing data separation circuit 400 of the variable length code decoding device. These are means for decoding images.
  • the data multiplexing circuit 100 includes a first image code generator 600, a second image code generator 700, a third image code generator 800, and an n-th image code generator 900.
  • the variable-length-encoded MPEG image data from each of them is divided into the IMPEG data hierarchical structure decoding circuit 109, the second MPEG data hierarchical structure decoding circuit 110, and the third MPEG It is input via the data hierarchical structure decoding circuit 130 or the n-th MPEG data hierarchical structure decoding circuit 130 and multiplexed.
  • the data multiplexing circuit 100 multiplexes data at a high speed based on the high-speed clock signal from the high-speed clock circuit 500. That is, the data multiplexing circuit 100 multiplexes the data of the first, second, third, and fourth data streams at a high speed.
  • the high-speed shift circuit 200 receives the input of the data multiplexing circuit 100, Of the variable-length coded MPEG image data of the first, second, third, and fourth data streams, the first 64 bits of data from each data stream are sequentially and successively time-divided. input.
  • the input is further explained with reference to dig 23.
  • FIG. 23 shows that the data of each of the first, second, third, and fourth data streams is subjected to predetermined processing in a high-speed shift circuit 200 or a time-division variable-length codeword decoding circuit 300.
  • FIG. 23 shows that the data of each of the first, second, third, and fourth data streams is subjected to predetermined processing in a high-speed shift circuit 200 or a time-division variable-length codeword decoding circuit 300.
  • FIG. 23 shows that the data of each of the first, second, third, and fourth data streams is subjected to predetermined processing in a high-speed shift circuit 200 or a time-division variable-length codeword decoding circuit 300
  • FIG. 23 means 64 bits of data in the first, second, third or fourth data stream, respectively, and t0, tl, t2, t3, ... indicates timing, that is, time.
  • the high-speed shift circuit 200 first inputs the first 64 bits of data of the first data stream at the timing of t0. After that, similarly, the first 64 bits of data of the second, third, and fourth data streams are input at timings tl, t2, and t3, respectively.
  • FIG. 24 shows an example of the earliest 64 bits of the first data stream input to the high-speed shift circuit 200 at the timing of t0.
  • the 64 bits are composed of codewords A, B, C and D, and the word lengths of codewords A, B, C and D are n, m, 1, and o bits, respectively. Shall be.
  • the earliest codeword of the first 64 bits of data of the first data stream input by the high-speed shift circuit 200 at the timing of t0 is a codeword having a code length of how many bits. I do not know if there is. In other words, at the timing of t O, it is not known that the earliest code word of the first 64 bits of the first data stream is the code word A in FIG. 24 and that the code word A is n bits. .
  • the time-division variable-length codeword decoding circuit 300 calculates the first codeword and the Is detected using a table that can be uniquely distinguished, and the first code word is variable-length decoded, and the number of bits of the first code word is ⁇ .
  • the information is output to the high-speed shift circuit 200. That is, the codeword A is detected and subjected to variable-length decoding, and information indicating that the codeword A is n bits is output to the high-speed shift circuit 200.
  • the time-division variable-length codeword decoding circuit 300 outputs the second, third, and fourth data streams input by the high-speed shift circuit 200 at timings t1, t2, and t3.
  • the first codeword and the S of the codeword are detected using a uniquely distinguishable table, the first codeword is subjected to variable-length decoding, and the number of bits of the first codeword is determined.
  • the information as to whether the length is long is output to the high-speed shift circuit 200.
  • the processing is performed between the timings t2 and t4 in FIG. 23 for the second data stream, and between the timings t3 and t5 in FIG. 23 for the third data stream.
  • the stream is performed between timings t4 and t6 in FIG.
  • the earliest codeword of the second data stream is timing t5, the earliest codeword of the third data stream is timing t6, and the earliest codeword of the fourth data stream is t7.
  • Each code word of the obtained MPEG image data shall be data of up to 16 bits, and the data shall include polarity data regarding positive and negative.
  • the first determination circuit 260 of the time-division variable-length codeword decoding circuit 300 of FIG. 22 uses the above-described uniquely distinguishable table to obtain the first data.
  • the presence / absence of a code word in the first 8-bit data of the stream is detected, and if there is a code word, the code word is subjected to variable-length decoding, and the second determination circuit 28 via the first register 27 00
  • the first flag memory 340 outputs the information of the bit to the control circuit 250 of the high-speed shift circuit 200 in FIG.
  • the first determination circuit 260 outputs the first 8-bit data of the first data stream to the first register 270 as it is, and the first flag memory 340 0 0 does not output any information.
  • the first register 270 00 waits for the 8-bit data during the timing t 1, and then outputs the 8-bit data to the second determination circuit 280 0.
  • the second determination circuit 280 of the time-division variable-length codeword decoding circuit 300 of FIG. 22 performs the following operation.
  • the second judgment circuit 280 0
  • the data is output to the second register 2900 as it is, and no information is output to the first flag memory 3400.
  • the second register 2900 waits for the earliest code word during the timing t2, and then outputs it to the third determination circuit 30000.
  • the second decision circuit 2800 uses the uniquely distinguishable table described above to generate the first 12 bits of the first data stream. The presence / absence of a code word in the data is detected, and if there is a code word, the code word is subjected to variable-length decoding and output to the third decision circuit 30000 via the second register 2900, and Information on how many bits of output data was output to the first flag memory 3400.
  • the first flag memory 340 0 outputs the information of the bit to the control circuit 250 of the high-speed shift circuit 200 in FIG.
  • the second decision circuit 280 0 outputs the first 12 bits of data of the first data stream to the second register 290 0 as it is, and the first flag memory 3 No information is output to 400.
  • the second register 2900 waits for the 12-bit data during the timing t2, and then outputs the data to the third determination circuit 30000.
  • the first decision circuit 260 of the time-division variable-length codeword decoding circuit 300 of FIG. 22 performs the first 8-bit data of the second data stream.
  • the presence / absence of a code word is detected, and if there is a code word, the code word is subjected to variable length decoding and output to the second decision circuit 280 0 via the first register 270 0, and the output data is Information on the number of bits of the data is output to the second flag memory 350.
  • the second flag memory 350 outputs the information of the bit to the control circuit 250 of the high-speed shift circuit 200 in FIG.
  • the first decision circuit 260 0 outputs the first 8-bit data of the second data stream to the first register 270 0 as it is, and the second flag memory 3 No information is output for 500.
  • the first register 270 00 waits for the 8-bit data during the timing t2, Route 2 800 outputs to.
  • the third determination circuit 30000 of the time-division variable-length codeword decoding circuit 300 in FIG. 22 performs the following operation.
  • the third decision circuit 30000 if the earliest codeword of the first data stream is variable-length decoded, the third decision circuit
  • the third decision circuit 30000 detects a code word in the earliest 16-bit data of the first data stream. Then, the codeword is subjected to variable-length decoding and output to the polarity adjustment circuit 3200 via the third register 3100, and information indicating how many bits of output data is stored in the first flag. Output to memory 3400. No.
  • the 1-flag memory 3400 stores the bit information in the high-speed shift circuit 2 in FIG.
  • the control circuit of 0 0 outputs to 250 0.
  • the second determination circuit 280 of 300 performs the same operation as that performed on the data of the first data stream at the above-described timing t2, and performs the same operation on the data of the second data stream. Do it. However, the flag memory in that case corresponds to the second flag memory 350.
  • the first determination circuit 260 of the 300 0 outputs the first data at the timing of t1 described above.
  • An operation similar to the operation performed on the data of the third data stream is performed on the data of the third data stream.
  • the flag memory in that case corresponds to the third flag memory 360.
  • the polarity adjustment circuit 3200 of the time-division variable-length codeword decoding circuit 300 in FIG. 22 is subjected to variable-length decoding by the timing t4 and has been completed.
  • the variable-length decoded data is made positive or negative, and the multiplexed data separation circuit 4 is output via the fourth register 330. 0 Output to 0.
  • the timing measurement circuit 380 0 sends the information that the variable-length decoded data has been output to the multiplexed data separation circuit 400 to the reset signal generation circuit 390. 0, and the reset signal generation circuit 390 0 resets the first flag memory 340 0.
  • the third decision circuit 300, the second decision circuit 280, and the first decision circuit 26 of the time-division variable-length codeword decoding circuit 300 of FIG. 0 0 performs the same operation as that performed on the data of the first data stream at the timing of t3, t2, or t1 described above, respectively, for the data of the second, third, and fourth data streams.
  • the flag memories in that case correspond to the second flag memory 350, the third flag memory 360, and the fourth flag memory 370, respectively.
  • the high-speed shift circuit 200 in FIG. 19 outputs the first code of the first data stream from the first flag memory 340 in FIG. Enter information about how many bits of data the word was. That is, information that the code word A in FIG. 24 has n bits is input. That information In other words, the codeword B in Fig. 24 is the first codestream in the first data stream, so that the codeword following the first codeword is the first codeword in the first data stream.
  • the high-speed shift circuit 200 shifts the data of the first data stream at the timing of t4 so that the code word becomes: In the shift, the high-speed shift circuit 200 inputs data from the data multiplexing circuit 100 so that the data of the first data stream becomes 64 bits. That is, input n bits of data.
  • the shift performed by the high-speed shift circuit 200 will be described with reference to the block diagram of the high-speed shift circuit 200 in FIG.
  • the first selection circuit 16 00, the second selection circuit 180 0, the third selection circuit 200 0 0, the fourth selection circuit 220, and the fifth selection circuit 240 0 0 of FIG. , 1-bit shift circuit 150, 2-bit shift circuit 170, 4-bit shift circuit 190, 8-bit shift circuit 210, and 16-bit shift circuit 230 This is a circuit for instructing whether or not to perform. The instruction is based on the control of the control circuit 250.
  • 1-bit shift circuit 150, 2-bit shift circuit 170, 4-bit shift circuit 190, 8-bit shift circuit 210, and 16-bit shift circuit 230 respectively Is a circuit that shifts each data stream by 1 bit, 2 bits, 4 bits, 8 bits, and 16 bits, respectively.
  • the control circuit 250 is a first selection circuit 160, a second selection circuit 180, a third selection circuit 200, a fourth selection circuit 220, or a fifth selection circuit.
  • the control circuit 250 By controlling each of the 2400, 1-bit shift circuit 1500, 2-bit shift circuit 1700, 4-bit shift circuit 1900, 8-bit shift circuit 2100, 1 This is a circuit for determining whether to use each of the 6-bit shift circuits 230.
  • the control circuit 250 0 outputs the first code word of the first data stream from the first flag memory 3 Input information that codeword A is n-bit data.
  • the control circuit 250 is configured by a first selection circuit 160, a second selection circuit 180, a third selection circuit 200, a fourth selection circuit 220, 1-bit shift circuit 150 0, 2-bit shift circuit 170 0 through all or a part of fifth selection circuit 240 0 so that the number of bits corresponds to
  • the first data stream is shifted by operating all or a part of the 0, 4-bit shift circuit 190, 8-bit shift circuit 210, 16-bit shift circuit 230,000. For example, if the output data is 15-bit data, at the timing of t4, the control circuit 250000 outputs the first selection circuit 1600, the second selection circuit 1800, and the third selection circuit 1803.
  • the first determination circuit 260 of the time-division variable-length codeword decoding circuit 300 of FIG. The same operation as that performed on the first data stream is performed on the shifted first data stream data.
  • the polarity adjustment circuit 3200 of the time-division variable-length codeword decoding circuit 300 in FIG. 22 outputs the second data that has been subjected to variable-length decoding and finished by timing t4.
  • the variable length decoded data is set to positive or negative, and the fourth register The data is output to the multiplexed data separation circuit 400 via the star 330.
  • the timing measurement circuit 380 0 sends the information that the variable-length decoded data has been output to the multiplexed data separation circuit 400 to the reset signal generation circuit 390 0
  • the reset signal generation circuit 3900 resets the second flag memory 3500.
  • the same operation as that performed on the data of the first data stream is performed on the data of the third and fourth data streams, respectively.
  • the flag memories in that case correspond to the third flag memory 3600 and the fourth flag memory 370, respectively.
  • the high-speed shift circuit 200 in FIG. 19 determines the first codeword of the second data stream from the second flag memory 350 in FIG. Input information indicating whether the data was bit data.
  • the high-speed shift circuit 2000 generates the second codeword based on the information so that the codeword next to the first codeword becomes the first codeword of the second data stream. Shift the data in the data stream. The shift is performed at the timing of t4 as if the high-speed shift circuit 200 in FIG. 21 shifted the data of the first data stream.
  • the high-speed shift circuit 200 inputs data from the data multiplexing circuit 100 so that the data of the second data stream has 64 bits.
  • variable-length code decoding apparatus performs the processing of performing tl to t4 on the first data stream as shown in FIG. In a cycle corresponding to 4, at each timing, the earliest codeword of the data of each data stream is variable-length decoded and output, and the data of each data stream is shifted.
  • variable-length code decoding device is the same as that of the variable-length code decoding device according to the first embodiment of the third invention, except that a high-speed shift circuit 20 is provided. Only the configuration and operation of 0 and the operation of the time division variable length codeword decoding circuit 300 are different. Also, in the first embodiment, each codeword of variable-length coded MPEG image data is assumed to be data of up to 16 bits. However, in the second embodiment, one codeword is assigned to each codeword. Shall be data of up to 32 bits. From these facts, in the second embodiment, only the configuration means and operation of the high-speed shift circuit 200 and the operation of the time-division variable-length codeword decoding circuit 300 will be described.
  • FIG. 25 is a block diagram of the high-speed shift circuit 200 of the variable-length code decoding device according to the second embodiment.
  • the high-speed shift circuit 200 includes a 2-bit shift circuit 170, a 4-bit shift circuit 190, a 6-bit shift circuit 40, an 8-bit shift circuit 210, and a 10-bit shift circuit 41.
  • 2-bit shift circuit 17 00, 4-bit shift circuit 19 00, 8-bit shift circuit 210, 0 16-bit shift circuit 23 00, 1-bit shift circuit 15 00, and control circuit 25 00 are the same as those described in the first embodiment.
  • the 30-bit shift circuit 500 0 0 and the 32-bit shift circuit 5 1100 respectively convert each data stream into 6-bit, 10-bit, 12-bit, 14-bit, 18-bit, This circuit shifts 20 bits, 22 bits, 24 bits, 26 bits, 28 bits, 30 bits, and 32 bits.
  • the sixth selection circuit 520 is a circuit for instructing which of the plurality of bit shift circuits is to be used.
  • the seventh selection circuit 530 is a circuit for instructing whether or not to use the one-bit shift circuit 150.
  • the instructions of the sixth selection circuit 520 and the seventh selection circuit 530 are based on the control of the control circuit 2,500.
  • the control circuit 250 controls the sixth selection circuit 520 to use any one of the above-described plurality of bit shift circuits other than the 1-bit shift circuit 150 It is a circuit that determines whether to do. Further, the control circuit 250 controls the seventh selection circuit 530 It is also a circuit that determines whether to use the 1-bit shift circuit 150.
  • the control circuit 2500 inputs information indicating how many bits of the corresponding data stream are to be shifted. That is, information is input as to how many bits the output data from the time-division variable-length codeword decoding circuit 300 was.
  • the control circuit 250 0 is equivalent to the word length of the output data via the sixth selection circuit 5 200 based on the information on the number of bits of the output data.
  • the corresponding data stream is shifted by the number of bits of the output data by operating a bit shift circuit having the same number of bits as the number of bits to be output. In that case, the control circuit 250 does not use the 1-bit shift circuit 150. For example, if the output data is 16-bit data, the control circuit 250 0 operates the 16-bit shift circuit 230 0 via the sixth selection circuit 5200. Shift the corresponding data stream by 16 bits.
  • the control circuit 2500 firstly outputs the data of the output data via the sixth selection circuit 5200 based on the information on the number of bits of the output data.
  • the corresponding data stream is converted by the number of bits smaller than the number of bits of the word length of the output data by one. Shift.
  • the control circuit 2500 activates the 1-bit shift circuit 1500 through the seventh selection circuit 5300, and further shifts by 1 bit. For example, if the output data is 17-bit data, the control circuit 250 first operates the 16-bit shift circuit 230 through the sixth selection circuit 520. , The corresponding data stream is divided by 16 bits, and then the seventh selection circuit The 1-bit shift circuit 1500 is operated via 530 0, and further shifted by 1 bit, for a total of 17-bit shift.
  • the configuration of the time-division variable-length codeword decoding circuit 300 is the same as the configuration shown in FIG. 22 and described in the first embodiment. However, while each codeword in Embodiment 1 has a maximum of 16 bits, each codeword in Embodiment 2 has a maximum of 32 bits of data. The operation of the codeword decoding circuit 300 is different.
  • the 6000 detects the presence or absence of a codeword in the first 16-bit data of each data stream, and if there is a codeword, the first codeword is variable-length decoded and the first register is used. The signal is output to the second judgment circuit 280 00 via 270 00. On the other hand, if there is no codeword, the first determination circuit 260 outputs the first 16-bit data of each data stream to the first register 270 as it is.
  • the second decision circuit 2800 of the time-division variable-length codeword decoding circuit 300 detects the presence or absence of a codeword in the first 24 bits of data of each data stream, and If there is, the first code word is variable-length decoded and output to the third determination circuit 3 00 via the second register 2900. On the other hand, if there is no code word, the second determination circuit 280 0 outputs the first 24 bits of data of each data stream to the second register 290 0 as it is.
  • the third determination circuit 30000 of the time-division variable-length codeword decoding circuit 300 detects the earliest codeword in the earliest 32-bit data of each data stream, The codeword is variable-length decoded and output to the polarity adjustment circuit 3200 via the third register 3100. Further, each of the first determination circuit 260, the second determination circuit 280, and the third determination circuit 300, outputs the first variable-length decoded codeword and outputs Information about the number of bits of data is stored in the first flag memory 3400 for the data in the first data stream, and in the second flag memory 3 for the data in the second data stream.
  • the data of 50,000 and the third data stream are output to the third flag memory 3600, and the data of the fourth data stream are output to the fourth flag memory 370, respectively.
  • Each flag memory outputs the information of the bit to the control circuit 250 of the high-speed shift circuit 200 in FIG.
  • the high-speed shift circuit 200 is used as the input means of the third invention, and the time-division variable-length codeword decoding circuit 300 is used as the variable-length decoding means.
  • the number of data streams is four, but the number of data streams is not limited to four, and it is sufficient if there are a plurality of data streams.
  • the high-speed shift circuit 200 and the time-division variable-length codeword decoding circuit 300 need only be as shown below. That is, first, the high-speed shift circuit 200 sequentially and sequentially inputs the first 64 bits of the variable-length coded MPEG image data of a plurality of data streams at different timings from each other. . The high-speed shift circuit 200 inputs the MPEG image data from one data stream, and then inputs the MPEG image data from the same data stream.
  • the time-division variable-length codeword decoding circuit 300 outputs the decoded word and the high-speed shift Path 200 shifts the MPEG image data of the same length as the decoded codeword with respect to the data stream of the data.
  • each code word of variable-length encoded MPEG image data is up to 16 bits of data
  • each code word is Although it is assumed that the data is a maximum of 32 bits, the maximum word length of each codeword is not limited to 16 bits ⁇ 32 bits.
  • the high-speed shift circuit 200 inputs the earliest 6 bits from each data stream.
  • the high-speed shift circuit 200 is not limited to 64 bits, and the high-speed shift circuit 200 Therefore, it is only necessary to input data so that the amount of data from each stream becomes a predetermined amount.
  • the first determination circuit 260, the second determination circuit 280, and the third determination circuit 300 are the first eight bits and the first two bits of each data stream in the first embodiment. , 16-bit data, the presence or absence of a codeword is detected, and if there is a codeword, the codeword is subjected to variable-length decoding. In the second embodiment, the first 16 bits, 2 The presence or absence of a codeword in the 4-bit or 32-bit data was detected, and if there was a codeword, the codeword was variable-length decoded.
  • the first determination circuit 260, the second determination circuit 280, and the third determination circuit 30000 are not limited to the above-described ones.
  • the number of the determination circuits is not limited to three of the first determination circuit 260, the second determination circuit 280, and the third determination circuit 300, and may be any number as long as it is plural.
  • the high-speed shift circuit 200 has a plurality of bit shift circuits for shifting data of a predetermined number of bits such as 1 bit or 4 bits for each data stream.
  • the high-speed shift circuit 200 is not limited to the above-described number of bits, such as 1 bit / 4 bits. In short, the bit shift circuit shifts data of a predetermined number of bits for each data stream. Only need to be provided.
  • the third present invention can provide a variable-length code decoding device that has a small circuit size and performs variable-length decoding at high speed.
  • the first aspect of the present invention performs, when decoding coded image data, deformation of an image based on information on the degree of enlargement / reduction of each part of the image.
  • An image processing device can be provided.
  • the second present invention provides a method for flexibly reproducing a plurality of MPEG image data with one apparatus even when reproducing a plurality of MPEG image data and simultaneously displaying a plurality of images on a display such as a personal computer.
  • An image data processing device for processing can be provided.
  • the third invention can provide a variable-length code decoding device which has a small circuit scale and performs variable-length decoding at high speed.

Description

明 細 書 画像処理装置、 画像データ処理装置及び可変長符号復号装置 技術分野 本発明は、 パーソナルコンピュータ等のディスプレイに表示する画像の変 形を行う画像処理装置に関するものである。
また、 本発明は、 さらに、 複数の画像をディスプレイに表示するさいの、 それら複数の画像の画像データを処理する画像データ処理装置に関するもの である。
また、 本発明は、 可変長符号化された MP EG画像データ複数個を可変長 復号する可変長符号復号装置に関するものである。 背景技術
(1) 従来、 パーソナルコンピュータ等のディスプレイに表示するコンビ ユータグラフィックの原画となるディジタルデータとして、 MPEG、 DV といつた直交変換系の符号化された画像データというものがある。
図 7 (a) に示すような、 MPEG、 D Vの符号化画像データを復号し、 その復号された画像 1 5を変形して、 図 7 (b) に示すような、 パーソナル コンピュータ等のディスプレイ 1 6の、 コンピュータグラフィックで作成さ れた、 例えば部屋の壁 1 7にマッピングするマッピング装置が存在する。 以下に、 このような従来の MP EG画像データからの画像をマツビングす る MP E G画像のマッビング装置と、 D V画像デ一タからの画像をマッピン グする DV画像のマッピング装置とを、 順に図面を参照して説明する。
先ず、 従来の MP EG画像のマッピング装置を説明する。
図 8に、 従来の MP EG画像のマツビング装置のブロック図を示す。
VLD手段 1は、 可変長符号化された MP EG画像データを入力して可変 長復号し、 逆量子化手段 2は、 その可変長復号化された] VIP EG画像データ を逆量子化し、 I DCT手段 3は、 その逆量子化された MP EG画像データ を復号する。 その復号のさい、 I DCT手段 3は、 MPEG画像の、 複数の 、 8 X 8の DC T係数を有するブロック毎に、 全ての MP EG画像データを 復号する。
VLD手段 1が入力した MP EG画像データがフレーム内符号化画像 (以 下、 I ピクチャとする) のデータである場合、 I DCT手段 3は、 復号した 画像を加算手段 7を通過させてフォーマツト変換手段 1 2に出力するととも に、 Frame Buff er 8に出力する。 その Frame Buffer8は、 I DCT手段 3力 らの復号された画像を蓄積する。 '
他方、 V L D手段 1が入力した MP E G画像データがフレーム間順方向予 測符号化画像 (以下、 Pピクチャとする) 、 または、 フレーム間双方向予測 符号化画像のデータである場合、 Frame Buffer8は、 既に一度は Iピクチャ を入力し、 その Iピクチャ、 または、 その I ピクチャに動きベク トルおよび 差分画像が付加された、 Pピクチャの完全復号画像を既に蓄積していること になる。 そのさい、 I DCT手段 3は、 逆量子化手段 2からの動きベク トル を Frame Buffer 8を介して動き補償手段 9に出力し、 動き補償手段 9は、 Fr ame Buffer 8に蓄積されている完全な画像に、 動きべク トルのみを付加して 、 動きべク トルのみが補償された動き補償画像を生成する。 そして、 加算手 段 7は、 動き補償手段 9からの動き補償画像と、 I DCT手段 3からの復号 された差分画像とを加算し、 加算した画像をフォーマツト変換手段 1 2に出 力するとともに、 Frame Buffer 8に出力する。 なお、 Frame Buffer8は、 力 D 算手段 7からの完全な復号画像を蓄積する。
次に、 フォーマット変換手段 1 2は、 I DCT手段 3または加算手段 7か らの YUVフォーマツトの画像を、 RGBフォーマツトの画像に変換して、 画像変形手段 1 8に出力する。
画像変形手段 1 8は、 フォーマツ ト変換手段 1 2からの RGBフォーマツ トの画像を入力するとともに、 CG元データ作成手段 4からの、 その画像の 各部分に対する拡大縮小の程度の情報を、 変形情報作成手段 5を介して入力 し、 その拡大縮小の程度の情報に基づいて、 フォーマット変換手段 1 2から の画像を、 その画像の各部分毎に画素の補間または間引きを行って変形し、 マッビング手段 1 3に出力する。
マッピング手段 1 3は、 CG元データ作成手段 4からの画像のマッピング 位置情報に基づいて、 画像変形手段 1 8からの画像を、 パーソナルコンビュ ータ等のディスプレイの所定の位置にマツビングする。
次に、 従来の DV画像のマッピング装置を説明する。
図 9に、 従来の DV画像のマツビング装置のブロック図を示す。
VLD手段 1は、 可変長符号化された DV画像データを入力して可変長復 号し、 逆量子化手段 2は、 その可変長復号化された DV画像データを逆量子 化し、 I DCT手段 3は、 その逆量子化された DV画像データを復号する。 その復号のさい、 I DCT手段 3は、 DV画像の、 複数の、 8 X 8の DCT 係数を有するブロック毎に、 全ての DV画像データを復号する。 そして、 I DCT手段 3は、 ブロック毎に復号した部分画像を、 デシャフリング手段 1 4に出力する。
その I DCT手段 3が出力する、 ブロック毎に復号された部分画像は、 そ の部分画像から構成される全体画像の、 例えば、 左端列の最上部のブロック から最下部のブロック、 さらに、 左上から 2番目の列の最上部のブロックか ら最下部のプロックというように順序よく出力されるものではない。 つまり 、 デシャフリング手段 14が入力する部分画像の順序は、 シャフリングされ ているということである。 そこで、 デシャフリング手段 14は、 I DCT手 段 3からの部分画像をデシャフリングして、 順序よく配列し、 完全な DV画 像を生成する。
次に、 フォーマット変換手段 1 2は、 デシャフリング手段 14からの YU Vフォーマッ トの画像を、 RGBフォーマッ トの画像に変換して、 画像変形 手段 18に出力する。 その後の DV画像の動作については、 上述した MPE G画像のマツビング装置の動作と同様である。
上述したように、 従来の MP EG画像のマッピング装置、 および、 DV画 像のマッピング装置では、 フォーマット変換手段 1 2が入力する画像は、 フ ルサイズの画像であって、 画像変形手段 18において、 その画像の各部分に 対する拡大縮小の程度の情報に基づいて、 その画像の各部分毎に画素の捕間 または間引きが行われている。
しかしながら、 フォーマット変換手段 1 2が入力する画像は、 その画像の 各部分に対する拡大縮小の程度の情報に基づいて、 復号処理時に変形された 画像であった方が都合がよレ、。
第一の本発明は、 従来では、 符号化された画像データを復号するさい、 上 述のような画像の変形は行われなかったという課題を考慮し、 符号化された 画像データを復号するさい、 その画像の各部分に対する拡大縮小の程度の情 報に基づいて、 画像の変形を行う画像処理装置を提供することを目的とする。
(2) また一方、 上述したように、 近年、 MPEG画像データを再生して 、 パーソナルコンピュータ等のディスプレイに画像を表示することがますま す重要になってきている。 この MPEG画像データを画像として表示するま での復号等の処理量は、 非常に大きい。 そのため現在では、 そのような、 M PEG画像データの処理を行う装置は、 一時に、 一つの MP EG画像データ を処理することで精一杯である。
以下に、 MP EG画像データを復号して、 パーソナルコンピュータのディ スプレイのウィンドウに画像を表示するさいの、 従来の方法を説明する。 そ の従来の方法としては、 2通りあるので、 それらを区別して説明する。
第一の方法は、 MPEG画像データを完全に復号して画像を再生し、 ウイ ンドウの大きさおよび形状に合致させるように、 画素の補間または間引きを 行って、 画像をウィンドウに表示する方法である。
第二の方法は、 MPEG画像データを復号する前に、 ウィンドウの大きさ および形状に応じて、 その MPEG画像データの全部または一部の D C T係 数を選択し、 その DC T係数をそのまま復号する力、 または、 全部の DC T 係数に高周波数領域に所定の数のゼロを付加して復号し、 その復号された画 像を、 ウィンドウの大きさおょぴ形状に合致させるように、 画素の補間また は間引きを行って、 画像をウィンドウに表示する方法である。 ところで、 複数の MP E G画像データを復号して、 パーソナルコンビユー タ等のディスプレイに、 同時に複数の画像を表示するウィンドウシステムが 普及してきている。 例えば、 パーソナルコンピュータのディスプレイに、 D V Dからの画像を表示しながら、 同時に、 C D— R OMからの画像を、 同じ ディスプレイ上に表示するといつたことである。
このように、 同時に複数の画像を同じディスプレイに表示する場合、 上述 した、 第一の方法または第二の方法では、 それぞれの画像に対して、 独立に 画像データ処理装置を用意し、 それぞれのウィンドウの大きさおよび形状に 合致させるように、 画像を再生し表示している。 それら従来の画像データ処 理装置は、 作りだそうとする画像が極めて小さくても、 大きな画像を作り出 すことのできる処理能力をそれぞれ有するものであった。
上述したように、 従来の画像データ処理装置は、 同時に、 二以上の M P E G画像データを処理することができない。
したがって、 複数の MP E G画像データを再生して、 パーソナルコンビュ ータ等のディスプレイに、 同時に複数の画像を表示しょうとすると、 表示画 像の数と同じ数の画像データ処理装置が必要となってくる。 つまり、 表示画 像それぞれの大きさおよび形状に応じた、 M P E G画像データの処理量の多 少にかかわらず、 画像の数と同じ数の、 しかもそれぞれ処理能力が大きい画 像データ処理装置が必要となっているということである。
第二の本発明は、 従来では、 複数の M P E G画像データを再生して、 パー ソナルコンピュータ等のディスプレイに、 同時に複数の画像を表示する場合
、 それら画像の数と同じ数の、 しかもそれぞれ処理能力が大きい画像データ 処理装置が必要となっているという課題を考慮して、 複数の M P E G画像デ ータを再生して、 パーソナルコンピュータ等のディスプレイに、 同時に複数 の画像を表示する場合でも、 一つの装置で、 複数の M P E G画像データを柔 軟に処理する画像デ一タ処理装置を提供することを目的とするものである。
( 3 ) また、 一方、 複数のデータストリームからの MP E G面像データを 復号し、 パーソナルコンピュータ等のディスプレイに複数の画像を表示する ことが行われている。 その MP E G画像データのなかには、 可変長符号化さ れたデータが含まれており、 その可変長符号化データは、 先ず可変長復号さ れた後、 画像に復号される。
以下に、 このような従来の、 可変長符号化された M P E G画像データ複数 個を可変長復号する可変長符号復号装置を図面を参照して説明する。
図 2 6に、 従来の可変長符号復号装置のブロック図を示す。 従来の可変長 符号復号装置は、 第 1可変長データ復号回路 5 4 0 0、 第 2可変長データ復 号回路 5 5 0 0、 第 3可変長データ復号回路 5 6 0 0、 ···, 第 n可変長デー タ復号回路 5 7 0 0から構成され、 それら可変長データ復号回路それぞれは 、 シフト回路 5 8および符号語復号回路 5 9を有している。
第 1画像符号発生源 6 0 0からの、 可変長符号化された MP E G画像デー タ、 第 1 MP E Gデ一タ階層構造復号回路 1 0 9 9において、 そのデータが 動きべク トルと差分データからなるものかなど、 データの画像のフォーマツ トが解析されて、 第 1可変長データ復号回路 5 4 0 0に入力される。
そして、 第 1可変長データ復号回路 5 4 0 0は、 可変長符号化された MP E G画像データを可変長復号して情報源復号器群 1 4 0 0に出力する。 その 可変長復号については、 後に説明する。
同様に、 第 2画像符号発生源 7 0 0、 第 3画像符号発生源 8 0 0、 · ·、 第 n画像符号発生源 9 0 0力 らの、 可変長符号化された MP E G画像データそ れぞれは、 第 2 MP E Gデータ階層構造復号回路 1 1 0 0、 第 3 MP E Gデ ータ階層構造復号回路 1 2 0 0、 ·、 第 n MP E Gデータ喈層構造復号回路 1 3 0 0において、 データの画像のフォーマットが解析されて、 第 2可変長 データ復号回路 5 5 0 0、 第 3可変長データ復号回路 5 6 0 0、 ·· ·、 第 n可 変長データ復号回路 5 7 0 0に入力される。
そして、 第 2可変長データ復号回路 5 5 0 0、 第 3可変長データ復号回路 5 6 0 0、 ··、 第 n可変長データ復号回路 5 7 0 0それぞれは、 可変長符号 化された MP E G画像データを可変長復号して情報源復号器群 1 4 0 0に出 力する。
その後、 情報源復号器群 1 4 0 0は、 第 1可変長データ復号回路 5 4 0 0 、 第 2可変長データ復号回路 5 5 0 0、 第 3可変長データ復号回路 5 6 0 0 、 ···、 第 n可変長データ復号回路 5 7 0 0それぞれからの、 可変長複号化 M P E G画像データを復号して、 それぞれの可変長データ復号回路からのデー タに対応する画像を生み出す。
次に、 それぞれの可変長データ復号回路が行う可変長復号について、 さら に説明する。
その説明のだめに、 図 6に、 可変長データ復号回路が入力する、 可変長符 号化された MP E G画像データの一例を示す。 図 6の A、 B、 Cおよび Dそ れぞれは、 n、 m、 1、 oビットの可変長符号化された符号語であり、 連続 しているものとする。
さて、 可変長データ復号回路のシフト回路 5 8は、 可変長符号(匕された M P E G画像データの最大語長を十分に蓄積できるだけの語長を入力し、 一時 蓄積する。 説明の便宜上、 一時蓄積されるデータは、 図 6の符号語 A、 B、 Cおよび Dから構成されもであるとする。
それぞれの符号語は、 何ビットの符号長であるかがわからないので、 符号 語復号回路 5 9は、 シフト回路 5 8が入力した可変長符号ィ匕データの最先の 符号語と、 その符号語の^とを、 一意に区別可能な表を用いて検出する。 つまり、 符号語復号回路 5 9は、 図 6の符号語 Aと、 その符号語 Aが nビッ トの語長であることを検出する。
そして、 符号語復号回路 5 9は、 最先の符号語を可変長復号して、 その可 変長復号データを情報源復号器群 1 4 0 0に出力するとともに、 出力データ が何ビットの符号長であったのかという情報を、 シフト回路 5 8に出力する。 すなわち、 符号語復号回路 5 9は、 符号語 Aを可変長復号して情報源復号器 群 1 4 0 0に出力するとともに、 出力データが nビットの^:のデータであ つたという情報をシフト回路 5 8に出力する。
その後、 シフト回路 5 8は、 例えば nビットという出力データの語長の情 報に基づいて、 その語長分の可変長符号化データを M P E Gデータ階層構造 復号回路から入力し、 一時蓄積しているデータを例えば nビット分シフトす る。 このシフトによりシフト回路 5 8に一時蓄積されるデータの先頭は、 次 の符号語、 つまり図 6の符号語 Bの先頭となる。
このように、 可変長データ復号回路は、 々と可変長符号化データの符号 語を検出し、 可変長復号する。
し力 しながら、 従来の可変長符号復号装置は、 可変長符号化された MP E G画像データ複数個それぞれを、 データ毎に可変長復号するため、 複数の可 変長データ復号回路を必要とし、 回路規模が大きいという欠点がある。 そこで、 その回路規模が大き 、という欠点を克服した可変長符号復号装置 として以下の装置を仮に考えてみる。
その装置とは、 可変長データ復号回路を 1個のみ備えるものである。 すな わち、 上述したシフト回路 5 8および符号語復号回路 5 9を 1個づっ備える ものである。
そのシフト回路 5 8は、 第 I MP E Gデータ階層構造復号回路 6、 第 2 M P E Gデータ階層構造復号回路 7、 第 3 MP E Gデータ階層構造復号回路 8 、 -··、 第 n MP E Gデータ階層構造復号回路 9からの、 可変長符号化された MP E G画像データそれぞれを時分割で入力する。 そして、 符号語復号回路 5 9は、 複数の MP E Gデータ階層構造復号回路のうちのひとつからのデー タストリームについて、 上述したような動作で最先の符号語を可変長復号し て出力する。 さらに、 シフト回路 5 8は、 符号語復号回路 5 9が出力したデ ータの語長分、 その出力データのストリームを、 上述したようにシフトする。 そのさい、 処理されているデータストリーム以外のデータストリームについ ては、 なんらの処理も施されない。 その後、 順次同様に、 符号語復号回路 5 9は、 他の MP E Gデータ階層構造復号回路からのデータストリームの最先 の符号語を可変長復号して出力し、 シフト回路 5 8は、 出力データの語長分 、 その出力データのストリームをシフトするというものである。
しかしながら、 上述した仮に考えた可変長符号復号装置は、 回路規模が大 きいという欠点を克服してはいるものの、 可変長復号の速度が遅レ、という欠 点がある。 つまり、 符号語復号回路 5 9は、 ひとつの MP E Gデータ階層構 造復号回路からのデータを処理している間については、 他の M P E Gデータ 階層構造復号回路からのデータを処理しないという欠点がある。 第三の本発明は、 従来の可変長符号復号装置は、 回路規模が大きかったと いう課題と、 また、 可変長復号の速度が遅くならないようにするという課題 とを考慮して、 回路規模が小さく、 可変長復号を高速で行う可変長符号復号 装置を提供することを目的とするものである。 発明の開示
第一の本発明は、 画像の各部分に対する拡大縮小の程度の情報を入力する 画像変形情報入力手段と、 前記画像の符号化された画像データを入力すると ともに、 前記画像変形情報入力手段から前記画像の各部分に対する拡大縮小 の程度の情報を入力し、 その拡大縮小の程度の情報に基づいて、 前記画像デ ータを、 前記画像の各部分毎に復号し、 また、 前記拡大縮小の程度の情報と は無関係に前記画像データ全てを復号する復号化手段と、 前記復号化手段か らの前記全ての画像データが復号された画像と、 前記画像変形情報入力手段 からの前記画像の各部分に対する拡大縮小の程度の情報と、 前記画像データ の動きべク トルとを利用して、 前記画像の各部分毎に拡大縮小された参照画 像を生成する参照画像生成手段と、 前記複号化手段からの前記画像の各部分 毎に復号された画像と、 前記参照画像生成手段からの参照画像とを加算する 加算手段とを備えたことを特徴とする画像処理装置である。
さらに、 また、 第三の本発明は、 画像の各部分に対する拡大縮小の程度の 情報を入力する画像変形情報入力手段と、 前記画像の符号化された画像デー タを入力するとともに、 前記画像変形情報入力手段から前記画像の各部分に 対する拡大縮小の程度の情報を入力し、 その拡大縮小の程度の情報に基づい て、 前記画像データを、 前記画像の各部分毎に復号する複号化手段とを備え たことを特徴とする画像処理装置である。
第二の本発明は、 複数の画像データに対する拡大縮小の程度の情報を入力 する拡大縮小情報入力手段と、 画像データを処理する処理ュニッ トを複数個 有し、 複数の画像データを入力して画像処理する画像処理手段と、 前記拡大 縮小情報入力手段から前記拡大縮小の程度の情報を入力し、 前記画像処理手 段の処理ュニット群の全部または一部を、 前記拡大縮小の程度の情報に基づ いて、 その拡大縮小の程度の情報に対応する画像データの拡大縮小処理に割 り当てる割り当て手段とを備え、 前記画像処理手段は、 前記拡大縮小の程度 の情報に基づき、 前記処理ユニット群の割り当てにしたがって、 複数の画像 データを処理することを特徴とする画像データ処理装置である。
第三の本発明は、 可変長符号化された MP E G画像データを有する、 複数 のストリームから、 それぞれのストリームからのデータ量が所定の量となる ように、 前記 MP E G画像データを、 時分割で順次連続的に入力する入力手 段と、 前記入力手段から前記所定の量の MP E G画像データを入力して可変 長復号し、 所定の復号語を可変長符号復号装置外部に出力するとともに、 そ の出力される復号語の長さの情報を前記入力手段に出力する可変長複号化手 段とを備え、 前記可変長複号化手段が前記所定の復号語を可変長符号復号装 置外部に出力するまでに、 前記可変長復号化手段は、 その出力する復号語の MP E G画像データのストリーム以外のストリーム全てから前記所定の量の MP E G画像データを入力し、 前記可変長復号化手段が前記所定の復号語を 可変長符号復号装置外部に出力するとともに、 その出力された復号語の MP E G画像データのストリームの次のストリームの MP E G画像データのうち の所定の復号語を出力するまでに、 前記入力手段は、 前記可変長複号化手段 が最後に可変長符号復号装置外部に出力した復号語の MP E G画像データの ストリームと同じストリームから、 その出力された復号語の長さの情報を利 用して MP E G画像データを入力することを特徴とする可変長符号復号装置 である。
第三の本発明の可変長符号復号装置の入力手段としての高速シフト回路 2 0 0は、 従来の可変長符号復号装置のシフト回路 5 8に比べて、 データのシ フトを高速に行うことができる。 したがって、 本発明の可変長符号復号装置 の可変長複号化手段が所定の復号語を可変長符号復号装置外部に出力すると ともに、 前記入力手段は、 その出力された復号語のストリームと同じストリ ームから、 その復号語の復号される前の符号語の長さ分の MP E G画像デー タをシフトし、 入力することができる。 図面の簡単な説明
【図 1】
第一の本発明の実施の形態 1の画像処理装置のブロック図
【図 2】
第一の本発明の実施の形態の画像処理装置が画像を変形するさいの、 その 画像変形を説明するための図
【図 3】
図 2の画像を 2 5個のプロックに分割した模式図
【図 4】
図 3のプロックを単に縮小した図
【図 5】 第一の本発明の実施の形態の画像処理装置 I D C T手段が画像データを復 号するさいの、 その復号を説明するための図
【図 6】
第一の本発明の実施の形態 2の画像処理装置のブロック図
【図 7】
復号画像を変形して、 パーソナルコンピュータ等のディスプレイの、 コン ピュータグラフィックで作成された、 部屋の壁にマッピングするさいの、 そ のマツビングを説明するための図
【図 8】
従来の M P E G画像のマツビング装置のブロック図
【図 9】
従来の D V画像のマッピング装置のブロック図
【図 1 0】
第二の本発明の実施の形態の画像データ処理装置のブロック図
【図 1 1】
第二の本発明の実施の形態の画像データ処理装置の形状演算回路のプロッ ク図
【図 1 2】
第二の本発明の実施の形態の画像データ処理装置の演算量制御回路のブロ ック図
【図 1 3】
第二の本発明の実施の形態の画像データ処理装置の復号 .補間演算回路の ブロック図 【図 1 4】 第二の本発明の実施の形態で用いられるパーソナルコンピュータのデイス プレイの一例
【図 1 5】
第二の本発明の実施の形態の画像データ処理装置の復号 .補間演算回路の M P E Gデコード回路群が行う M P E G画像データの復号方法を説明するた めの図
【図 1 6】
第二の本発明の実施の形態の画像データ処理装置の復号 .補間演算回路の MP E Gデコード回路群のブロック図
【図 1 7】
第二の本発明の実施の形態の画像データ処理装置の拡大縮小回路群が行う 処理を説明するための図
【図 1 8】
図 1 4の場合以外の本発明の実施の形態で用いられるパーソナルコンビュ —タのディスプレイの例
【図 1 9】
第三の本発明の実施の形態の可変長符号復号装置のプロック図
【図 2 0】
第三の本発明の実施の形態の可変長符号復号装置の動作を説明するための 図
【図 2 1】
第三の本発明の実施の形態 1の可変長符号復号装置の高速シフト回路のブ ロック図 【図 22】
第三の本発明の実施の形態の可変長符号復号装置の時分割可変長符号語復 号回路のブロック図
【図 23】
第三の本発明の実施の形態の可変長符号復号装置の高速シフト回路および 時分割可変長符号語復号回路の動作を説明するための図
【図 24】
可変長符号化データの一例を示す図
【図 25】
第三の本発明の実施の形態 2の可変長符号復号装置の高速シフト回路のブ ロック図
【図 26】
従来の可変長符号復号装置のブロック図、 および、 その可変長符号復号装 置の動作を説明するための図
【符号の説明】
1 VLD手段
2 逆量子化手段
3 I DCT手段
4 CG元データ作成手段
5 変形情報作成手段
6 I DCT制御手段
7 第 1加算手段、 加算手段
8 Frame Buffer 動き補償手段
補正手段
第 2加算手段
フォーマツト変換手段
マツビング手段
デシャフリング手段
画像
ディスプレイ
画像変形手段
ユーザー I Z F回路
形状演算回路
演算量制御回路
画像符号発生源 1
画像符号発生源 2
画像符号発生源 3
画像符号発生源 n
復号 ·補間演算回路
メモリ I ZF
メモリ
貼り付け面の大きさ '形状決定回路 縦,横比率演算回路
書き出し位置制御回路 303 サイズ変換制御回路
304 画像復号制御回路
404 処理量割り当て回路 A
408 MP EGデコード回路群
41 2 処理量割り当て回路 B
4 16 拡大縮小回路群
501 ディスプレイ
503、 504、 505、 506、 507、 508、 509、 1 201
1 202、 1 203 ウィンドウ
2500 外部インタフェース回路
2501 演算ュニット 1
2502 演算ユニット 2
2503 演算ユニッ ト 3
2504 演算ユニット 4
2505 演算ユニット 5
2506 演算ュニット n
2507 可変結合回路
2508 データー時記憶回路
2509 結合方式演算回路
100 データ多重化回路
200 高速シフト回路
300 時分割可変長符号語復号回路
400 多重化データ分離回路 500 高速クロック回路
600 第 1画像符号発生源
700 第 2画像符号発生源
800 第 3画像符号発生源
900 第 n画像符号発生源
1099 第 IMP EGデータ階層構造復号回路 1100 第 2 MP EGデータ階層構造復号回路
1200 第 3 MP EGデータ階層構造復号回路
1300 第 nMPEGデータ階層構造復号回路
1400 情報源復号器群
1500 1ビットシフト回路
1600 第 1選択回路
1700 2ビッ トシフト回路
1800 第 2選択回路
1900 4ビットシフト回路
2000 第 3選択回路
2100 8ビットシフト回路
2200 第 4選択回路
2300 16ビットシフト回路
2400 第 5選択回路
2500 制御回路
2600 第 1判定回路
2700 第 1レジスタ 2 8 0 0 第 2判定回路
2 9 0 0 第 2レジスタ
3 0 0 0 第 3判定回路
3 1 0 0 第 3レジスタ
3 2 0 0 極性調整回路
3 3 0 0 第 4レジスタ
3 4 0 0 第 1フラグメモリ 3 5 0 0 第 2フラグメモリ 3 6 0 0 第 3フラグメモリ 3 7 0 0 第 4フラグメモリ 3 8 0 0 タイミング計測回路
3 9 0 0 リセット信号発生回路
4 0 0 0 6ビットシフト回路
4 1 0 0 1 0ビットシフト回路 4 2 0 0 1 2ビットシフト回路 4 3 0 0 1 4ビットシフト回路 4 4 0 0 1 8ビットシフト回路
4 5 0 0 2 0ビットシフト回路
4 6 0 0 2 2ビットシフト回路
4 7 0 0 2 4ビットシフト回路
4 8 0 0 2 6ビットシフト回路
4 9 0 0 2 8ビットシフト回路
5 0 0 0 3 0ビットシフト回路 5100 32ビットシフト回路
5200 第 6選択回路
5300 第 7選択回路
5400 第 1可変長データ復号回路
5500 第 2可変長データ復号回路
5600 第 3可変長データ復号回路
5700 第 n可変長データ復号回路
5800 シフト回路
5900 符号語復号回路 発明を実施するための最良の形態
以下に、 第一の本発明の実施の形態を図面を参照して説明する。
(第一の本発明の実施の形態 1 )
先ず、 第一の本発明の実施の形態 1の画像処理装置の構成を述べる。
図 1に、 第一の本発明の実施の形態 1の画像処理装置のプロック図を示す。 第一の本発明の実施の形態 1の画像処理装置は、 0手段1 と、 逆量子化 手段 2と、 I DCT手段 3と、 CG元データ作成手段 4と、 変形情報作成手 段 5と、 I DCT制御手段 6と、 第 1加算手段 7と、 Frame Buff er8と、 動 き補償手段 9と、 補正手段 10と、 第 2加算手段 1 1と、 フォーマツ ト変換 手段 1 2と、 マッピング手段 1 3から構成される。
VLD手段 1は、 可変長符号化された MPEG画像データを入力し、 可変 長復号する手段である。
逆量子化手段 2は、 V L D手段 1からの可変長複号化された M P E G画像 データを入力し、 逆量子化する手段である。
I DCT手段 3は、 逆量子化手段 2からの逆量子化された MP EG画像デ ータを入力し、 後述するブロック毎に MPEG画像データを復号する手段で ある。 なお、 そのブロックについては、 後に詳しく説明する。
CG元データ作成手段 4は、 VLD手段 1が入力する MPEG画像データ からの MP E G画像を、 パーソナルコンピュータ等のディスプレイに表示す るさレ、、 そのディスプレイのどの位置に、 どのような形状およびサイズで、 マツビングするのかという指示をユーザから受け付けて、 その情報を変形情 報作成手段 5に出力する手段である。 なお、 ディスプレイは、 画像処理装置 からの MP EG画像を表示するものである。
変形情報作成手段 5は、 C G元データ作成手段 4からの M P E G画像の変 形の指示に基づいて、 後述する複数のプロックそれぞれに対する拡大縮小の 程度の情報を作成する手段である。
I DC T制御手段 6は、 変形情報作成手段 5からの、 複数のブロックそれ ぞれに対する拡大縮小の程度の情報に基づいて、 I DCT手段 3がプロック 毎に MP EG画像データを復号するさいの復号方法を制御する手段である。 第 1加算手段 7は、 V L D手段 1が入力した MP E G画像データがフレー ム間順方向 測符号化画像 (以下、 Pピクチャとする) 、 または、 フレーム 間双方向予測符号化画像 (以下、 Bピクチャとする) のデータである場合、 I DCT手段 3からの復号された差分画像と、 その差分画像に対応する、 動 き補償手段 9からの、 動きべクトルのみが補償された動き補償画像とを加算 する手段である。
Frame Buffer 8は、 I D C T手段 3で復号された Iピクチャ、 第 1加算手 段 7からの Pピクチャや Bピクチャの完全復号画像を一時蓄積する手段であ る。
動き補償手段 9は、 V L D手段 1が入力した MP E G画像データが Pピク チヤまたは Bピクチャのデータである場合、 そのデータのうちの動きべク ト ルのみを利用して、 Frame Buffer 8に蓄積されている Iピクチャおよび ま たは Pピクチャの完全復号画像から動きべク トルのみが補償された動き補償 画像を生成する手段である。
なお、 V L D手段 1が入力した M P E G画像データが Pピクチャのデータ である場合、 Frame Buffer 8は、 I DCT手段 3から、 既に少なくとも I ピ クチャを蓄積していることになる。 同様に、 VLD手段 1が入力した MPE G画像データが Bピクチャのデータである場合、 Frame Buffer8は、 既に I ピクチャおよび Pピクチャの完全復号画像を蓄積していることになる。 なぜ なら、 Pピクチャまたは Bピクチャのデータは、 差分データと動きベク トル のデータのみであるので、 完全画像を作り出すためには、 それらの参照とな る画像が必要だからである。
補正手段 10は、 VLD手段 1が入力した MPEG画像データが Pピクチ ャまたは Bピクチャのデータである場合、 変形情報作成手段 5からの変形情 報に基づいて、 動き捕償手段 9からの動き補償画像の画素の補間や間引きを 行って、 その動き補償画像を変形して参照画像を生成する手段である。
第 2加算手段 1 1は、 VLD手段 1が入力した MPEG画像データが Pピ クチャまたは Bピクチャのデータである場合、 変形情報作成手段 5からの変 形情報に基づいた、 I DCT手段 3からの復号された差分画像と、 その差分 画像に対応する、 補正手段 10からの参照画像とを加算する手段である。 な お、 VLD手段 1が入力した MP EG画像データが I ピクチャのデータであ る場合、 第 2加算手段 1 1は、 I DC T手段 3からの変形情報に基づいて復 号された Iピクチャを通過させる。
フォーマツ ト変換手段 1 2は、 第 2加算手段 1 1を通過した、 I DCT手 段 3からの Iピクチャや、 第 2加算手段 1 1からの Pピクチャまたは Bピク チヤの完全復号画像が YUVフォーマツトの画像であるので、 そのフォーマ ットの画像を、 RGBフォーマツトの画像に変換する手段である。
マッピング手段 1 3は、 CG元データ作成手段 4からのマッピングの位置 の指示に基づいて、 フォーマット変換手段 1 2からの画像を、 パーソナルコ ンピュータ等のディスプレイに表示する手段である。
次に、 このような第一の本発明の実施の形態 1の画像処理装置の動作を述 ベる。
その画像処理装置の動作は、 VLD手段 1が入力する MP EG画像データ が Iピクチャのデータである場合と、 Pピクチャまたは Bピクチャのデータ である場合とで異なるので、 以下にそれらを区別して説明する。
先ず、 VLD手段 1が入力する MPEG画像データが Iピクチャのデータ である場合の画像処理装置の動作を述べる。
はじめに、 CG元データ作成手段 4は、 図 2 (a) に示すような、 VLD 手段 1が入力する MP EG画像データからの MPEG画像を、 パーソナルコ ンピュ一タ等のディスプレイに、 図 2 (b) に示すように変形して表示する さい、 どのように変形させるのかをという指示をユーザから受け付けて、 そ の情報を変形情報作成手段 5に出力する。 なお、 図 2 (a) は、 VLD手段 1が入力した MP EG画像データがフレーム内符号化画像 (以下、 I ピクチ ャとする) のデータである場合の、 そのデータの全ての DC T係数が復号さ れたさいの画像であるものとする。 それに対して、 図 2 (b) は、 図 2 (a ) の画像を変形した画像であるものとする。
そして、 変形情報作成手段 5は、 CG元データ作成手段 4からの MPEG 画像の変形の指示に基づいて、 図 2 (a) の画像から図 2 (b) の画像を生 成するように、 図 2 (a) に対応する図 3 (a) の複数のブロックそれぞれ に対する拡大縮小の程度の情報を作成する。 その図 3 (a) は、 図 2 (a) の画像を 25個のブロックに分割した模式図であり、 また、 ブロックは、 そ の図 3 (a) を構成する部分画像である。 同様に、 図 3 (b) に、 図 2 (b ) の画像を 25個のブロックに分割した模式図を示す。 図 3 (a) および ( b) の各ブロックに付されている数は、 それぞれのブロックを区別するため のものであり、 図 3 (a) と (b) の数の一致するブロックは、 互いに対応 するものとする。 例えば、 図 3 (a) の第 7ブロックは、 図 3 (b) の第 7 ブロックに対応するということである。 また、 図 2 (a) の画像から図 2 ( b) の画像を生み出すさい、 図 3 (a) の各ブロック毎に拡大縮小を行うこ とで、 図 2 (a) の画像を変形して図 2 (b) の画像を生成するものとする。 つまり、 図 3 (b) の各ブロックは、 図 3 (a) の対応するブロックが拡大 縮小されたもの、 または同等のものであるものとする。 ここでは、 変形情報 作成手段 5は、 図 3 (b) の各ブロックの大きさそれぞれが、 第 1〜5のブ ロックについては、 図 3 (a) の対応するブロックの大きさと同一になるよ うに、 第 6〜1 5のブロックについては、 図 3 (a) の対応するブロックの 縦横とも 3/4の大きさに縮小されるように、 第 16〜25のブロックにつ いては、 図 3 (a) の対応するブロックの縦横とも 1Z2の大きさに縮小さ れるように、 ブロックそれぞれに対する拡大縮小の程度の情報を作成する。 なお、 図 3 (a) の各ブロックを単に縮小すると、 例えば、 第 7ブロックや 第 18ブロックは、 図 4に示すように、 サイズのみが縮小されることになり 、 図 3 (b) の第 7ブロックや第 1 8ブロックの形状と合致しなくなる。 し かしここでは、 図 3 (a) の各ブロックを単に拡大縮小することにより、 そ れら各ブロックそれぞれは、 図 3 (b) の対応するブロックに近似されるも のとする。
その後、 I DCT制御手段 6は、 変形情報作成手段 5からの、 複数のプロ ックそれぞれに対する拡大縮小の程度の情報に基づいて、 I DCT手段 3が プロック毎に MP EG画像データを復号するさいの復号方法を制御する。 他方、 0手段1は、 可変長符号化された MP EG画像データを入力し て可変長復号し、 逆量子化手段 2は、 その可変長復号化された MP EG画像 データを逆量子化する。
そして、 I DCT手段 3は、 I DC T制御手段 6からの復号方法の制御に 基づいて、 逆量子化手段 2からの逆量子化された MP EG画像データを、 そ の MP EG画像のブロック毎に復号する。 そのブロックは、 つまり、 図 3 ( a) の各ブロックは、 それぞれ 8 X 8の DCT係数が全て復号された部分画 像であるものとする。 したがって、 I DCT手段 3は、 図 3 (a) の第 1〜 5のブロックについては、 図 5 (a) に示すように、 8 X 8の DC T係数全 てを復号し、 第 6〜 15のブロックについては、 図 5 (b) に示すように、 8 X 8の DC T係数のうちの低域側の 6 X 6の DC T係数を復号し、 第 1 6 〜 25のブロックについては、 図 5 (c) に示すように、 8 X 8の DC T係 数のうちの低域側の 4 X4の DC T係数を復号する。 その後、 I DCT手段 3は、 復号した画像、 つまり、 図 2 (b) の画像を、 第 2加算手段 1 1を介 してフォーマツト変換手段 1 2に出力する。
また、 I DCT手段 3は、 I DCT制御手段 6からの復号方法の制御とは 無関係に、 逆量子化手段 2からの逆量子化された] VIP EG画像データを、 そ の MP EG画像のどのブロックについても、 8 X 8の DC T係数全てを復号 し、 その復号した画像、 つまり、 図 2 (a) の画像を、 Frame Buffer 8に出 力する。 そして、 Frame Buffer 8は、 図 2 (a) の画像を一時蓄積する。 そ の蓄積は、 VLD手段 1が入力する MPEG画像データが Pピクチヤまたは Bピクチャのデータである場合に、 必要となってくるためである。
さて次に、 フォーマット変換手段 12は、 第 2加算手段 1 1を通過した、 I DCT手段 3からの画像のフォーマツトを YUVから RGBに変換する。 最後に、 マッピング手段 1 3は、 CG元データ作成手段 4からのマツピン グの位置の指示に基づいて、 フォーマット変換手段 1 2からの画像を、 パー ソナルコンピュータ等のディスプレイに表示する。
次に、 VLD手段 1が入力する MP EG画像データが Pピクチャまたは B ピクチャのデータである場合の画像処理装置の動作を述べる。
ところで、 VLD手段 1が入力する MPEG画像データが Pピクチャのデ ータである場合、 Frame Buffer 8は既に少なくとも Iピクチャを蓄積してい ることになる。 また、 VLD手段 1が入力する MP EG画像データが Bピク チヤのデータである場合、 Frame Buffer8は既に I ピクチャと Pピクチャの 完全復号画像を蓄積していることになる。 なぜなら、 Pピクチャまたは Bピ クチャのデータは、 差分データと動きベク トルのデータのみであるから、 完 全画像を作り出すためには、 それらの参照となる画像が必要だからである。 さて、 上述したようにして、 CG元データ作成手段 4は、 VLD手段 1が 入力する MP EG画像データからの MP EG画像を、 パーソナルコンビユー タ等のディスプレイに表示するさい、 どのように変形させるのかをという指 示をユーザから受け付けて、 その情報を変形情報作成手段 5に出力する。 そして、 変形情報作成手段 5は、 CG元データ作成手段 4からの MPEG 画像の変形の指示に基づいて、 図 3 (a) のような MP EG画像の分割され た複数のプロックそれぞれに対する拡大縮小の程度の情報を作成する。 ここ では、 変形情報作成手段 5は、 図 3 (b) の各ブロックの大きさそれぞれが 、 第 1〜5のブロックについては、 図 3 (a) の対応するブロックの大きさ と同一になるように、 第 6〜10のブロックについては、 図 3 (a) の対応 するブロックの縦横とも 3 Z4の大きさに縮小されるように、 第 1 1〜20 のブロックについては、 図 3 (a) の対応するブロックの縦横とも 1 Z 2の 大きさに縮小されるように、 第 21〜25のブロックについては、 図 3 (a ) の対応するブロックの縦横とも 1Z4の大きさに縮小されるように、 ブロ ックそれぞれに対する拡大縮小の程度の情報を作成する。
その後、 I DCT制御手段 6は、 変形情報作成手段 5からの、 複数のプロ ックそれぞれに対する拡大縮小の程度の情報に基づいて、 I DCT手段 3が ブロック毎に MP EG画像データを復号するさいの復号方法を制御する。 他方、 VLD手段 1は、 可変長符号化された MP EG画像データを入力し て可変長復号し、 逆量子化手段 2は、 その可変長復号化された MP EG画像 データを逆量子化する。
そして、 I DCT手段 3は、 I DCT制御手段 6からの復号方法の制御に 基づいて、 逆量子化手段 2からの逆量子化された M P E G画像データの差分 データのみを、 その MP EG画像のブロック毎に復号する。 つまり、 I DC T手段 3は、 例えば、 図 3 (a) のような MP EG画像の第 1〜5のブロッ クについては、 図 5 (a) に示すように、 8 X 8の DC T係数全てを復号し 、 第 6〜10のブロックについては、 図 5 (b) に示すように、 低域側の 6 X 6の DC T係数を復号し、 第 1 1〜20のブロックについては、 図 5 (c ) に示すように、 低域側の 4 X 4の DCT係数を復号し、 第 2 1〜25のブ ロックについては、 図 5 (d) に示すように、 低域側の 2 X 2の DCT係数 を復号する。 その後、 I DCT手段 3は、 I DC T制御手段 6からの復号方 法の制御に基づいて、 差分データのみを復号した差分画像を、 第 2加算手段 1 1に出力する。
また、 I DC T手段 3は、 I DC T制御手段 6からの復号方法の制御とは 無関係に、 逆量子化手段 2からの逆量子化された MP E G画像データの差分 データのみを、 どのブロックについても、 8 X 8の DC T係数全てを復号し 、 その復号した差分画像を第 1加算手段 7に出力する。 その差分画像の大き さは、 図 2 (a) の画像と同じ大きさとなる。
次に、 動き補償手段 9は、 VLD手段 1が入力した動きべク トノレと、 その 動きべクトルの参照となる完全画像、 例えば Iピクチャを Frame Buffer 8か ら入力し、 動きベク トルのみが補償された動き補償画像を生成する。 その動 きネ 償画像は、 Iピクチャのデータを、 どのブロックについても 8 X 8の D CT係数全てが復号された画像と同等な大きさの画像である。 つまり、 図 2
(a) の画像と同じ大きさとなる。 そして、 動き補償手段 9は、 動き補償画 像を補正手段 10に出力するとともに、 第 1加算手段 7に出力する。
第 1加算手段 7は、 I DCT手段 3からのどのブロックについても、 8 X 8の DCT係数全てが復号された差分画像と、 その差分画像に対応する、 動 き補償手段 9からの動き補償画像とを加算し、 Frame Buffer8に出力し、 Fr ame Buffer 8は、 第 1加算手段 7からの差分画像と動き補償画像とが加算さ れた画像を、 Pピクチャまたは Bピクチャの完全画像として一時蓄積する。 一方、 補正手段 10は、 動き補償手段 9からの動き補償画像を入力すると ともに、 変形情報作成手段 5からの、 動き補償画像についての、 図 3 (a) の各ブロックが図 3 (b) の対応するブロックに拡大縮小されるさいの、 2 5個のブロックそれぞれに対する拡大縮小の程度の情報を入力する。 そして 、 その拡大縮小の程度の情報に基づいて、 動き補償画像の画素の補間や間引 きを行って、 その動き補償画像を変形して参照画像を生成する。 つまり、 I D C T手段 3が I D C T制御手段 6からの復号方法の制御に基づいて差分デ ータのみを復号した差分画像の各プロックの大きさそれぞれと同等の大きさ となるように、 補正手段 10は、 その差分画像に対応する、 動き補償画像の 各ブロックの画素の補間や間引きを行って、 各ブロックを拡大縮小する。 例 えば、 I DCT手段 3が、 第 7のブロックについて、 低域側の 6 X 6の DC T係数を復号する場合、 補正手段 10は、 動き補償画像の第 7のブロックに ついて、 6 X 6の DC T係数が復号された部分画像と同等の大きさとなるよ うに、 画素の間引きを行う。 その後、 補正手段 10は、 参照画像を第 2加算 手段 1 1に出力する。
次に、 第 2加算手段 1 1は、 I DCT手段 3からの、 I DCT制御手段 6 の復号方法の制御に基づいた、 差分データのみが復号された差分画像と、 そ の差分画像に対応する、 補正手段 10からの参照画像とを加算し、 その加算 した画像をフォーマツト変換手段 12に出力する。 そして、 フォーマット変換手段 1 2は、 第 2加算手段 1 1からの画像のフ ォーマツトを YUVから RGBに変換する。
最後に、 マッピング手段 1 3は、 CG元データ作成手段 4からのマツピン グの位置の指示に基づいて、 フォーマット変換手段 1 2からの画像を、 パー ソナノレコンピュータ等のディスプレイに表示する。
(第一の本発明の実施の形態 2 )
先ず、 第一の本発明の実施の形態 2の画像処理装置の構成を述べる。
図 6に、 第一の本発明の実施の形態 2の画像処理装置のブロック図を示す。 第一の本発明の実施の形態 2の画像処理装置は、 実施の形態 1の画像処理装 置が備えている構成手段と同様の構成手段を備えている。 すなわち、 実施の 形態 2の画像処理装置は、 し0手段1と、 逆量子化手段 2と、 I DCT手 段 3と、 CG元データ作成手段 4と、 変形情報作成手段 5と、 I DCT制御 手段 6と、 デシャフリング手段 14と、 フォーマツト変換手段 1 2と、 マツ ビング手段 1 3から構成される。
VLD手段 1は、 可変長符号化された DV画像データを入力し、 可変長復 号する手段である。
逆量子化手段 2は、 VLD手段 1からの可変長復号化された DV画像デー タを入力し、 逆量子化する手段である。
I DCT手段 3は、 逆量子化手段 2からの逆量子化された DV画像データ を入力し、 実施の形態 1で用いた図 3に示すようなブロック毎に、 DV画像 データを復号する手段である。
CG元データ作成手段 4は、 VLD手段 1が入力する DV画像データから の DV画像を、 パーソナルコンピュータ等のディスプレイに表示するさレ、、 そのディスプレイのどの位置に、 どのような形状おょぴサイズで、 マツピン グするのかという指示をユーザから受け付けて、 その情報を変形情報作成手 段 5に出力する手段である。 なお、 ディスプレイは、 画像処理装置からの D V画像を表示するものである。
変形情報作成手段 5は、 CG元データ作成手段 4からの DV画像の変形の 指示に基づいて、 実施の形態 1で用いた図 3に示すような複数のブロックそ れぞれに対する拡大縮小の程度の情報を作成する手段である。
I DCT制御手段 6は、 変形情報作成手段 5からの、 複数のブロックそれ ぞれに対する拡大縮小の程度の情報に基づいて、 I DC T手段 3がプロック 毎に DV画像デ一タを復号するさいの復号方法を制御する手段である。
デシャフリング手段 14は、 I DCT手段 3からのプロック毎に復号され た部分画像を正しく配置し、 1フレーム毎に、 そのフレームの画像を完成す る手段である。
フォーマット変換手段 1 2は、 デシャフリング手段 14からの画像のフォ 一マツトを YUVフォーマツトから RGBフォーマツトに変換する手段であ る。
マッピング手段 13は、 CG元データ作成手段 4からのマッピングの位置 の指示に基づいて、 フォーマット変換手段 1 2からの画像を、 パーソナルコ ンピュータ等のディスプレイに表示する手段である。
次に、 このような第一の本発明の実施の形態 1の画像処理装置の動作を述 ベる。
はじめに、 CG元データ作成手段 4は、 図 2 (a) に示すような、 VLD 手段 1が入力する DV画像データからの DV画像を、 パーソナルコンビユー タ等のディスプレイに、 図 2 (b) に示すように変形して表示するさい、 ど のように変形させるのかをという指示をユーザから受け付けて、 その情報を 変形情報作成手段 5に出力する。 なお、 実施の形態 2では、 図 2 (a) は、 DV画像データの全ての DC T係数が復号されたさいの画像の図であるもの とし、 図 2 (b) は、 図 2 (a) の画像を変形した画像の図であるものとす る。
そして、 変形情報作成手段 5は、 CG元データ作成手段 4からの DV画像 の変形の指示に基づいて、 図 2 (a) の画像から図 2 (b) の画像を生成す るように、 図 2 (a) に対応する図 3 (a) の複数のブロックそれぞれに対 する拡大縮小の程度の情報を作成する。 実施の形態 2でも、 図 3 (a) は、 図 2 (a) の画像を 25個のブロックに分割した模式図であるものとし、 ま た、 ブロックは、 その図 3 (a) を構成する部分画像であるものとする。 同 様に、 図 3 (b) は、 図 2 (b) の画像を 25個のブロックに分割した模式 図であるものとする。 図 3 (a) および (b) の各ブロックに付されている 数は、 それぞれのブロックを区別するためのものであり、 図 3 (a) と (b ) の数の一致するブロックは、 互いに対応するものとする。 また、 図 2 (a ) の画像から図 2 (b) の画像を生み出すさい、 図 3 (a) の各ブロック毎 に拡大縮小を行うことで、 図 2 (a) の画像を変形して図 2 (b) の画像を 生成するものとする。 つまり、 図 3 (b) の各ブロックは、 図 3 (a) の対 応するプロックが拡大縮小されたもの、 または同等のものであるものとする。 ここでは、 変形情報作成手段 5は、 図 3 (b) の各ブロックの大きさそれぞ れが、 第 1〜5のブロックについては、 図 3 (a) の対応するブロックの大 きさと同一になるように、 第 6〜 1 5のブロックについては、 図 3 (a) の 対応するブロックの縦横とも 3 Z4の大きさに縮小されるように、 第 16〜 25のブロックについては、 図 3 (a) の対応するブロックの縦横とも 1 Z 2の大きさに縮小されるように、 プロックそれぞれに対する拡大縮小の程度 の情報を作成する。 なお、 図 3 (a) の各ブロックを単に縮小すると、 例え ば、 第 7ブロックや第 18ブロックは、 図 4に示すように、 サイズのみが縮 小されることになり、 図 3 (b) の第 7ブロックや第 18ブロックの形状と 合致しなくなる。 しかしここでは、 図 3 (a) の各ブロックを単に拡大縮小 することにより、 それら各ブロックそれぞれは、 図 3 (b) の対応するプロ ックに近似されるものとする。
その後、 IDCT制御手段 6は、 変形情報作成手段 5からの、 複数のプロ ックそれぞれに対する拡大縮小の程度の情報に基づいて、 I DCT手段 3が ブロック毎に DV画像データを復号するさいの復号方法を制御する。
他方、 VLD手段 1は、 可変長符号化された DV画像データを入力して可 変長復号し、 逆量子化手段 2は、 その可変長復号化された DV画像データを 逆量子化する。
そして、 IDCT手段 3は、 I DCT制御手段 6からの復号方法の制御に 基づいて、 逆量子化手段 2からの逆量子化された DV画像データを、 その D V画像、 つまり、 図 3 (a) の模式図のブロック毎に、 DV画像データを復 号し、 復号したものから順番に、 デシャフリング手段 14に出力する。 なお 、 実施の形態 2では、 IDCT手段 3が図 3 (a) の各ブロックを復号する 順序は、 第 1→第 3→第 5→第 7→—→第 21→第 23→第 25→第 2→第 4→第 6—第 8→…一第 20—第 22→第 24のブロックの順序であるもの とする。 また、 図 3 (a) の各ブロックは、 それぞれ 8 X 8の DC T係数が 全て復号された部分画像であるものとする。 その復号方法については、 以下 に示す通りである。 すなわち、 I DCT手段 3は、 図 3 (a) の第 1〜 5の ブロックについては、 図 5 (a) に示すように、 8 8の0( 丁係数全てを 復号し、 第 6〜1 5のブロックについては、 図 5 (b) に示すように、 8 X 8の DC T係数のうちの低域側の 6 X 6の DC T係数を復号し、 第 1 6〜2 5のブロックについては、 図 5 (c) に示すように、 8 X 8の DC T係数の うちの低域側の 4 X 4の D C T係数を復号する。
その後、 デシャフリング手段 14は、 I DCT手段 3からのブロック毎に 復号された、 図 3 (a) の各ブロックの部分画像を、 図 (b) の数の対応 するブロックの位置に正しく配置し画像を完成する。 例えば、 図 3 (a) の 第 1 3ブロックの部分画像を、 図 3 ( b ) の第 1 3ブロックの位置に配置し 、 図 3 (a) の第 21ブロックの部分画像を、 図 3 (b) の第 21ブロック の位置に配置するということである。 そして、 デシャフリング手段 14は、 完成した画像をフォーマツト変換手段 1 2に出力する。
次に、 フォーマット変換手段 12は、 デシャフリング手段 14からの画像 のフォーマツトを YUVから RGBに変換する。
最後に、 マッピング手段 13は、 CG元データ作成手段 4からのマツピン グの位置の指示に基づいて、 フォーマツト変換手段 1 2からの画像を、 パー ソナルコンピュータ等のディスプレイに表示する。
なお、 実施の形態 2では、 I DC T手段 3が図 3 (a) の各ブロックを復 号する順序は、 第 1—第 3→第 5→第 7→—→第 21→第 23→第 25→第 2→第 4→第 6→第 8→··'—第 20—第 22→第 24のブロックの順序であ るものとするとしたが、 その順序に限定するものではない。 要するに、 実施 の形態 2の I DCT手段 3は、 図 3 (a) のブロックに付されている数の順 に、 各ブロックを復号するものではないということである。
なお、 第一の本発明では、 画像変形情報入力手段として、 CG元データ作 成手段 4と、 変形情報作成手段 5と、 I DCT制御手段 6を用いた。 復号化 手段として、 VLD手段 1と、 逆量子化手段 2と、 I DCT手段 3を用いた。 参照画像生成手段として、 第 1加算手段 7と、 Frame Buffer8と、 動き補償 手段 9と、 補正手段 10を用いた。 また、 加算手段として第 2加算手段 1 1 を、 並べ替え手段としてデシャフリング手段 14をを用いた。 しかしながら 、 第一の本発明の画像変形情報入力手段は、 上述した CG元データ作成手段 4、 変形情報作成手段 5および I DCT制御手段 6に限らず、 要するに、 画 像の各部分に対する拡大縮小の程度の情報を入力するものでありさえすれば よい。 また、 第一の本発明の復号化手段は、 VLD手段 1
、 逆量子化手段 2および I DCT手段 3に限らず、 要するに、 符号化された 画像データを入力するとともに、 画像変形情報入力手段から画像の各部分に 対する拡大縮小の程度の情報を入力し、 その拡大縮小の程度の情報に基づい て、 画像データを、 画像の各部分毎に復号し、 また、 拡大縮小の程度の情報 とは無関係に前記画像データ全てを復号するものでありさえすればよい。 ま たは、 第一の本発明の複号化手段は、 符号化された画像データを入力すると ともに、 画像変形情報入力手段から画像の各部分に対する拡大縮小の程度の 情報を入力し、 その拡大縮小の程度の情報に基づいて、 画像データを、 画像 の各部分毎に復号するものでありさえすればよい。 さらに、 第一の本発明の 参照画像生成手段は、 第 1加算手段 7、 Frame Buffer 8、 動き補償手段 9お よび補正手段 1 0に限らず、 要するに、 複号化手段からの全ての画像データ が復号された画像と、 画像変形情報入力手段からの画像の各部分に対する拡 大縮小の程度の情報と、 画像データの動きべク トルとを利用して、 画像の各 部分毎に拡大縮小された参照画像を生成するものでありさえすればよい。 また、 図 3 (a) および (b) それぞれは、 図 2 (a) または (b) の画 像を 25個のブロックに分割した模式図であるとしたが、 図 3 (a) および (b) それぞれがブロックに分割されるさいのブロック数は、 25に限らな レ、。 つまり、 図 3 (a) の第 1〜第 5を一つのブロックとしてもよレ、。 要す るに、 図 3 (a) は、 図 3 (b) に画像が変形されるさいの、 その画像の拡 大縮小の程度が同一である部分毎にブロック分割されているものでありさえ すればよレ、。 また、 図 3 (b) は、 図 3 (a) のブロック分割に対応するよ うに、 画像の拡大縮小の程度が同一である部分毎にブロック分割されている ものでありさえすればよレ、。
また、 図 2 (a) の画像が図 2 (b) の画像に変形されるさい、 図 3 (a ) の各ブロック力 同等の大きさとなるように、 または、 縮小されるように 復号される場合についての例を示したが、 図 3 (a) の各ブロックは、 画像 の変形の程度に応じて拡大されてもよい。 その拡大は、 例えば、 8 8の0 CT係数の 9次以上の高域成分に 0値のデータを付加して 10 X 10の DC T係数を生成し、 それを復号することによって行われる。
また、 画像が縮小されるさい、 その縮小の程度に応じて、 図 3 (a) のい くつかのブロックが図 3 (b) で存在しないように、 画像全体が縮小される ことがある。 つまり、 ブロックの縮小率が 1 00%の場合がある。 この場合 については、 画像を作り出すさレ、、 その存在しなくなるブロックと、 となり のブロックとの差分が必要になるので、 8 X 8の DC T係数の DC成分のみ は、 復号される。
また、 上述した実施の形態では、 I D C T手段 3、 第 2加算手段 1 1、 デ シャフリング手段 1 4からの画像は、 フォーマッ ト変換手段 1 2において、 フォーマットが変換されるとしたが、 必ずしも変換される必要はない。 要す るに、 第一の本発明の画像処理装置からの画像を、 パーソナルコンピュータ 等のディスプレイに表示するさい、 その画像のフォーマツトがディスプレイ に合致しさえすればよい。 したがって、 フォーマット変換手段 1 2で画像の フォ一マットが変換されない場合は、 マッピング手段 1 3は、 I D C T手段 3、 第 2加算手段 1 1またはデシャフリング手段 1 4からの画像をディスプ レイに表示することになる。
さらに、 上述した実施の形態では、 パーソナルコンピュータ等のディスプ レイに表示される画像が一つである場合について説明してきたが、 ディスプ レイに表示される画像が複数あれば、 それら複数の画像それぞれについて、 上述したようにして、 画像をブロック分割して、 画像データを復号するさい に、 ブロック毎に拡大縮小を行い、 画像を変形しさえすればよい。
以上説明したところから明らかなように、 第一の本発明は、 符号化された 画像デ タを復号するさい、 その画像の各部分に対する拡大縮小の程度の情 報に基づいて、 画像の変形を行う画像処理装置を提供することができる。 次に、 第二の本発明の実施の形態を図面を参照して説明する。
(第二の本発明の実施の形態 1 )
先ず、 第二の本発明の実施の形態 1の画像データ処理装置の構成を述べる。 図 1 0に、 第二の本発明の実施の形態 1の画像データ処理装置のブロック 図を示す。 第二の本発明の実施の形態 1の画像データ処理装置は、 ユーザー IZF回路 1000と、 形状演算回路 101と、 演算量制御回路 102と、 復号 ·補間演算回路 110と、 メモリ Iノ F i l lと、 メモリ 112から構 成される。 なお、 形状演算回路 101、 演算量制御回路 102および復号 · 補間演算回路 1 10それぞれは、 さらにそれらを構成する構成手段を備えて いる。 それについては、 後に説明する。
次に、 図 14 (a) に、 パーソナルコンピュータのディスプレイ 501を 示す。 パーソナルコンピュータのディスプレイ 501は、 第二の本発明の実 施の形態 1の画像データ処理装置からの画像を表示するディスプレイである。 実施の形態 1では、 そのディスプレイ 501に、 5つのウィンドウ 503、
504、 505、 506および 507が表示され、 それぞれのウィンドウに 画像が表示されるものとする。 また、 それら 5つのウィンドウのうち、 ウイ ンドウ 503、 505、 506および 507に表示される画像が、 MPEG 画像データからの画像であるものとする。
さて、 ユーザー I ZF回路 1000は、 図 14 (a) のディスプレイ 50
1に、 ユーザ一が表示しょうとする画像のウィンドウの大きさ、 形状および 位置の指示を、 ユーザーから受け付ける手段である。
形状演算回路 101は、 ユーザー I ZF回路 1000からのウィンドウの 大きさおよび形状の情報に基づいて、 ウィンドウの大きさおよび形状を決定 し、 そのウィンドウに合致するように、 画像を拡大縮小するさいの、 その画 像の縦方向と横方向の拡大縮小比率を演算する手段である。 なお、 図 11に 示すように、 形状演算回路 101は、 貼り付け面の大きさ ·形状決定回路 2
01と、 縦 ·横比率演算回路 202を備えており、 具体的には、 貼り付け面 の大きさ ·形状決定回路 201が、 ウィンドウの大ぎさおよび形状を決定し 、 縦 ·横比率演算回路 202が、 拡大縮小比率を演算する。 また、 拡大縮小 比率とは、 画像符号発生源 1 · 106、 画像符号発生源 2 · 1 07、 画像符 号発生源 3 · 108、 ···、 または画像符号発生源 n · 1 09からの MPEG 画像データの DC T係数全部を復号した画像を、 それぞれの画像について、 対応するウィンドウの大きさおよび形状に合致させるために必要とする情報 である。
画像符号発生源 1 · 106は、 図 14 (a) のディスプレイ 501のウイ ンドウ 503に表示される画像の符号化された MP EG画像データを発生す る手段である。 同様に、 画像符号発生源 2 · 107、 画像符号発生源 3 · 1 08、 ·'·、 画像符号発生源 η · 109それぞれは、 図 14 (a) のディスプ レイ 501のウィンドウ 505、 506または 507それぞれに表示される 画像の符号ィヒされた MP EG画像データを発生する手段である。 なお、 実施 の形態 1では、 nは 4であるものとする。
演算量制御回路 102は、 ユーザ一 IZF回路 1000からの情報と、 形 状演算回路 101からの情報とに基づいて、 図 14 (a) のディスプレイ 5 01のウィンドウに、 正確に画像が表示されるように、 画像がメモリ 1 1 2 に書き込まれるさいの、 画像の書き込み位置を特定する手段である。 また、 演算量制御回路 102は、 上述した 2つの情報を用いて、 復号 .補間演算回 路 1 1 0での MPEG画像データの復号方法を制御し、 さらに、 その画像の 大きさおよぴ形状をウィンドウに合致させるように制御する手段でもある。 それら画像の書き込み位置の特定、 MP EG画像データの復号方法、 および 、 画像の大きさと形状の制御については、 後に、 第二の本発明の実施の形態 1の画像データ処理装置の動作を述べるさいに説明する。 なお、 図 1 2に示 すように、 演算量制御回路 102は、 書き出し位置制御回路 302と、 画像 復号制御回路 304と、 サイズ変換制御回路 303を備えている。
復号 ·補間演算回路 110は、 画像符号発生源 1 · 106、 画像符号発生 源 2 · 107、 画像符号発生源 3 · 108、 ···、 画像符号発生源 η · 109 それぞれから、 符号化された MP EG画像データを入力し、 それら複数の M PEG画像データそれぞれを復号し、 その復号された画像を、 図 14 (a) のディスプレイ 501の対応するウィンドウに合致させるように、 画素の間 引きまたは補間を行う手段である。 なお、 図 13に示すように、 復号 '補間 演算回路 110は、 処理量割り当て回路 A · 404と、 MP EGデコード回 路群 408と、 処理量割り当て回路 B · 412と、 拡大縮小回路群 416を 備えている。 また、 MP EGデコード回路群 408および拡大縮小回路群 4 16それぞれは、 さらにそれらを構成する構成手段を備えている。 それにつ いては、 後に説明する。
メモリ IZF 111は、 復号 ·補間演算回路 110の拡大縮小回路群 41 6から複数の画像を入力するとともに、 それら画像それぞれが、 メモリ 11 2に書き込まれるさいの書き込み位置の情報を、 演算量制御回路 102の書 き出し位置制御回路 302から入力し、 それぞれの画像とそれに対応する書 き込み位置の情報をまとめる手段である。
メモリ 112は、 メモリ IZF 111からの、 画像とそれに対応する書き 込み位置の情報の組を複数個入力し、 入力した書き込み位置の情報に基づい て、 図 14 (a) のディスプレイ 501に画像が表示されるさいに、 所定の 位置に画像が表示されるように、 画像を記憶する手段である。
次に、 このような第二の本発明の実施の形態 1の画像データ処理装置の動 作を述べる。
先ず、 ユーザー I Z F回路 1 0 0 0力;、 図 1 4 ( a ) のディスプレイ 5 0 1に、 ユーザーが表示しようとする 5つの画像それぞれのウィンドウの大き さ、 形状および位置の指示を、 ユーザーから受け付け、 その情報を形状演算 回路 1 0 1の貼り付け面の大きさ ·形状決定回路 2 0 1と、 演算量制御回路 1 0 2の書き出し位置制御回路 3 0 2とに出力する。
次に、 形状演算回路 1 0 1の貼り付け面の大きさ ·形状決定回路 2 0 1が 、 ユーザー I / F回路 1 0 0 0からの 5つのウィンドウそれぞれの大きさお よび形状の情報に基づいて、 それら 5つのウィンドウの大きさおよび形状を 決定し、 その情報を縦 ·横比率演算回路 2 0 2に出力する。 そして、 縦 -横 比率演算回路 2 0 2が、 その情報に基づいて、 5つのウィンドウそれぞれに 表示される画像の拡大縮小比率を演算し、 その演算結果を演算量制御回路 1 0 2の各構成手段と、 復号 ·補間演算回路 1 1 0の処理量割り当て回路 A - 4 0 4とに出力する。
その後、 演算量制御回路 1 0 2の書き出し位置制御回路 3 0 2が、 先ず、 ユーザー I Z F回路 1 0 0 0からの 5つのウィンドウそれぞれの大きさ、 形 状およ 位置の情報と、 形状演算回路 1 0 1の縦 ·横比率演算回路 2 0 2か らの 5らのウィンドウそれぞれに表示される画像の拡大縮小比率の情報とを 入力する。 そして、 それら 2つの情報に基づいて、 5つのウィンドウそれぞ れに、 正確に画像が表示されるように、 画像がメモリ 1 1 2に書き込まれる さいの 画像の書き込み位置を特定し、 その情報をメモリ I Z F 1 1 1に出 力する。
同時に、 演算量制御回路 1 0 2の画像復号制御回路 3 0 4が、 形状演算回 路 101の縦 .横比率演算回路 202からの拡大縮小比率の情報に基づいて 、 5つのウィンドウそれぞれの大きさおよび形状に最も近い大きさおよび形 状の画像を復号するように、 復号 ·補間演算回路 1 1 0の MP EGデコード 回路群 408が行う MPEG画像データの復号方法を決定する。 そして、 そ の復号方法の情報を復号 ·補間演算回路 1 1 0の処理量割り当て回路 A · 4 04に出力する。
ここで、 画像復号制御回路 304が決定する復号方法を、 具体的に説明す る。 その説明のために、 画像符号発生源 1 ■ 106からの MPEG画像デー タの DCT係数を全て復号した図を、 画像符号発生源 1 · 106の原図とし 、 その原図の拡大縮小図を図 14 (a) のディスプレイ 501のウィンドウ 503に表示するものとする。 また、 図 15に、 復号 ·補間演算回路 1 10 の MP EGデコード回路群 408が行う MP EG画像データの復号方法を説 明するための図を示す。
さて、 画像符号発生源 1 · 106の原図とウィンドウ 503との大きさが 一致するかそれに近ければ、 画像復号制御回路 304は、 MPEGデコード 回路群 408に、 画像符号発生源 1 · 106からの MP EG画像データの 8 X 8の DC T係数を全て復号させるように、 復号方法を決定する。 つまり、 MPEGデコード回路群 408は、 図 1 5 (a) に示すように、 画像符号発 生源 1 · 106からの MPEG画像データの DC T係数を全て復号する。 次に、 ウィンドウ 503の大きさ力 画像符号発生源 1 · 1 06の原図の 縦方向、 横方向ともに 3 4程度であれば、 画像復号制御回路 304は、 M PEGデコード回路群 408に、 画像符号発生源 1 · 106からの 8 X 8の MPEG画像データの DCT係数のうちの、 周波数の低い方の 6 X 6の係数 のみを復号させるように、 復号方法を決定する。 つまり、 MPEGデコード 回路群 408は、 図 1 5 (b) に示すように、 画像符号発生源 1 · 1 06力 らの MPEG画像データの 6 X 6の DCT係数のみを復号する。 同様に、 ゥ インドウ 503の大きさが、 画像符号発生源 1 · 106の原図の縦方向、 横 方向ともに 1Z2程度であれば、 図 1 5 (c) に示すように、 画像復号制御 回路 304は、 MP EGデコード回路群 408に、 周波数の低い方の 4 X 4 の DC T係数のみを復号させるように、 復号方法を決定する。
また、 ウィンドウ 503の大きさが、 画像符号発生 ¾¾1 · 106の原図の 縦方向、 横方向ともに 2倍程度であれば、 画像復号制御回路 304は、 MP EGデコード回路群 408に、 画像符号発生源 1 · 106からの 8 X 8の M P EG画像データの DC T係数に、 高周波数成分の係数としてゼロの係数を 追加して、 16 X 1 6の係数として復号させるように、 復号方法を決定する。 つまり、 MPEGデコード回路群 408は、 図 1 5 (d) に示すように、 画 像符号発生源 1 · 106からの 8 X 8の MP EG画像データの DC T係数に ゼロの係数を追加して、 16 X 16の係数として復号する。 同様に、 ウィン ドウ 503の大きさが、 画像符号発生 ¾¾1 · 106の原図の縦方向、 横方向 ともに自然数 N倍程度であれば、 画像復号制御回路 304は、 MPEGデコ ―ド回路群 408に、 画像符号発生源 1 · 106からの 8 X 8の MPEG画 像データの DCT係数に、 周波数の高い成分の係数としてゼロの係数を追加 して、 8 NX 8 Nの係数として復号させるように、 復号方法を決定する。 こ のように、 画像符号発生源 1 ■ 106の原図を拡大する場合は、 自然数倍と なる。
以上説明したように、 演算量制御回路 102の画像復号制御回路 304は 、 復号 ·補間演算回路 1 1 0の MPEGデコード回路群 408が行う MPE G画像デーダの復号方法を決定する。
さらに、 その決定と同時に、 演算量制御回路 102のサイズ変換制御回路 303が、 形状演算回路 101の縦 ·横比率演算回路 202からの画像の拡 大縮小比率の情報に基づいて、 5つのウィンドウそれぞれの大きさおよび形 状に合致するように、 復号 ·補間演算回路 1 10の拡大縮小回路群 41 6で 拡大縮小される、 画像の拡大縮小方法を決定する。
上述した復号方法の説明より、 MP EGデコード回路群 408では、 画像 符号発生源 1 · 106等からの MPEG画像データの原図は、 自然数 N倍、 または、 6 8や 4 8といった特定の大きさになるようにしか拡大または 縮小されない。 したがって、 それぞれのウィンドウの大きさが、 原図の 2Z 5というような、 特定の大きさでない場合、 サイズ変換制御回路 303は、 MPEGデコード回路群 408で復号される画像がそれぞれのウィンドウに 合致するように、 拡大縮小回路群 41 6に、 画素の補間または間引きをさせ る、 画像の拡大縮小方法を決定する。
そして、 サイズ変換制御回路 303は、 決定した拡大縮小方法の情報を復 号 ·補間演算回路 1 10の処理量割り当て回路 B · 12に出力する。
復号 '補間演算回路 1 10の処理量割り当て回路 A · 404は、 先ず、 画 像符号発生源 1 ' 106、 画像符号発生源 2 · 107、 画像符号発生源 3 · 108、 '··、 画像符号発生源 n · 109それぞれから、 符号化された MP E G画像データを入力する。 そして、 形状演算回路 101の縦 ·横比率演算回 路 202からの複数の MPEG画像データそれぞれに基づく画像の拡大縮小 の情報と、 演算量制御回路 102の画像復号制御回路 304からの複数の M PEG画像データそれぞれの復号方法の情報とを対照する。 さらに、 処理量 割り当て回路 A . 404は、 上述した 2つの情報からの、 複数の MP EG画 像データそれぞれの復号のための処理量に基づいて、 MP EGデコード回路 群 408が有する演算ュニット群のいずれを、 複数の MP EG画像データそ れぞれの復号に割り当てるかを決定する。 その演算ユニットについては、 後 に説明する。 つまり、 処理量割り当て回路 A · 404は、 複数の MP EG画 像データそれぞれの復号時の処理量に基づいて、 MP EGデコード回路群 4 08が複数の MP EG画像データを、 一度に、 並列的に復号することができ るように、 それぞれの MP EG画像データの復号に、 MPEGデコード回路 群 408の演算ユニット群のいずれを割り当てるかを決定する。 そして、 処 理量割り当て回路 A · 404は、 決定した割り当ての情報と、 画像符号発生 源 1 · 106、 画像符号発生源 2 · 107、 画像符号発生源 3 . 108、 ··· 、 画像符号発生源 η · 1 09それぞれからの MP EG画像データとを、 復号 -補間演算回路 1 10の MPEGデコード回路群 408に出力する。
その後、 MPEGデコード回路群 408力 処理量割り当て回路 A · 40 4から割り当て情報と、 複数の MP EG画像データとを入力する。
ところで、 MPEGデコード回路群 408は、 図 1 6に示すように、 外部 インタフェース回路 2500と、 結合方式演算回路 2509と、 可変結合回 路 2507と、 演算ュニット 1 · 2501と、 演算ュニット 2 · 2502と 、 演算ュニット 3 · 2503と、 演算ュニット 4 · 2504と、 演算ュニッ ト 5 · 2505と、 '··、 演算ュニット n · 2506と、 データ一時記憶回路 2508力 ら構成される。
したがって、 MP EGデコード回路群 408に入力される、 割り当て情報 と複数の MP EG画像データは、 実際には、 外部インタフェース回路 250 0に入力されることになる。
そして、 データ一時記憶回路 2508が、 外部インタフェース回路 250 0力 ら、 複数の MP EG画像データを入力し、 一時蓄積する。
他方、 結合方式演算回路 2509は、 外部インタフェース回路 2500力、 ら、 割り当て情報を入力し、 その情報を可変結合回路 2507に出力する。 その後、 可変結合回路 2507が、 結合方式演算回路 2509からの割り 当て情報に基づいて、 データー時記憶回路 2508に一時蓄積されていた、 複数の MP EG画像データを、 複数の演算ュニット群のいずれかに割り当て る。 例えば、 図 14 (a) のディスプレイ 501のウィンドウの大きさが大 きいものに対応する MP EG画像データは、 復号方法の説明時に述べたよう に、 復号するさいの DCT係数が多いので、 処理量が多いものとして 3つの 演算ユニットを割り当てる。 それに対し、 ウィンドウの大きさが小さいもの に対応する MP E G画像データは、 復号するさいの D C T係数が少ないので 、 処理量が少ないものとして 1つの演算ュニットを割り当てるといった具合 である。 具体的には、 図 1 5 (a) では、 3つの演算ユニットを割り当て、 図 1 5 (c) では、 1つの演算ユニットを割り当てるといった具合である。 そして、 割り当てられた一つまたは複数の演算ユニットが、 対応する MP EG画像データを復号する。 そのさい、 可変結合回路 2507の割り当てに したがって、 割り当てられた演算ユニット群の全部または一部が、 複数の M PEG画像データを、 同時に、 並列的に復号する。 なお、 その復号の方法は 、 図 1 5を用いて説明した、 演算量制御回路 102の画像復号制御回路 30 4が決定した復号方法に基づくものである。 これについては、 上述したので 、 ここでは省略する。 それら復号された複数の画像は、 外部インタフェース 回路 2500を介して、 復号 ·補間演算回路 1 10の処理量割り当て回路 B • 41 2に出力される。
次に、 処理量割り当て回路 B · 41 2が、 先ず、 MP EGデコード回路群 408から複数の画像を入力する。 そして、 処理量割り当て回路 B · 412 は、 演算量制御回路 102のサイズ変換制御回路 303からの画像の拡大縮 小方法の情報に基づいて、 MP EGデコード回路群 408で復号された画像 それぞれが、 対応するウィンドウの大きさおよび形状に合致するように、 M PEGデコ一ド回路群 408からの画像から、 画素を間引いたり補間するた めの処理量を判断する。 さらに、 その判断に基づいて、 拡大縮小回路群 41 6の演算ュニット群のいずれを、 MPEGデコード回路群 408からの複数 の画像それぞれの処理に割り当てるかを決定する。 その演算ユニットは、 上 述した、 MPEGデコード回路群 408の演算ュニットと同様なものである。 つまり、 処理量割り当て回路 B · 4 1 2は、 MP EGデコード回路群 408 からの複数の画像それぞれの処理量に基づいて、 拡大縮小回路群 41 6が複 数の画像を一度に、 並列的に処理することができるように、 それぞれの画像 の処理に、 拡大縮小回路群 416の演算ュニット群のいずれを割り当てるか を決定する。 そして、 処理量割り当て回路 B · 41 2は、 決定した割り当て の情報と、 MPEGデコード回路群 408からの複数の画像とを、 復号 .補 間演算回路 1 1 0の拡大縮小回路群 416に出力する。
その後、 拡大縮小回路群 416力 処理量割り当て回路 B · 1 2力ゝら害 ϋ り当て情報と、 複数の画像とを入力する。
ところで、 拡大縮小回路群 416は、 MP EGデコード回路群 408と同 様に、 外部インタフユース回路と、 結合方式演算回路と、 可変結合回路と、 複数の演算ュニットと、 データ一時記憶回路から構成される。
したがって、 MPEGデコード回路群 408と同様に、 拡大縮小回路群 4 16は、 処理量割り当て回路 B · 412からの割り当て情報に基づいて、 割 り当てられた一つまたは複数の演算ュニットが、 対応する画像の画素の間引 きまたは補間を行う。 例えば、 図 17 (a) の画像を、 同図 (b) の画像へ 縮小する場合、 画素の間引きが行われるが、 その画素の間引き時に発生する 折り返し歪みの発生を抑える処理を 3つの演算ュニットが行い、 間引き処理 を 1つの演算ユニットが行い、 さらに、 カラー変換するのであれば、 その変 換処理を 2つの演算ユニットが行うといった具合である。 このように、 処理 量割り当て回路 B · 412からの割り当て情報にしたがって、 割り当てられ た演算ユニット群の全部または一部が、 複数の画像について、 同時に、 並列 的に画素の間引きまたは補間を行う。 なお、 その画素の間引きまたは補間は 、 対応するウィンドウの大きさおよび形状に合致するように行われる。 それ ら画素の間引きまたは補間が施された複数の画像は、 外部インタフェース回 路を介して、 メモリ IZF 111に出力される。
次に、 メモリ IZF 111が、 拡大縮小回路群 416からの複数の画像と 、 演算量制御回路 102の書き出し位置制御回路 302からのメモリ 112 に画像が書き込まれるさいの書き込み位置の情報とを入力し、 それぞれの画 像とそれに対応する書き込み位置の情報を、 図 14 (a) のディスプレイ 5 01の 5つのウィンドウそれぞれについてまとめ、 その情報を、 拡大縮小回 路群 416からの複数の画像のとともに、 メモリ 1 12に出力する。
最後に、 メモリ 1 12力;、 図 14 (a) のディスプレイ 501に画像が表 示されるさいに、 所定の位置に正確に画像が表示されるように、 画像を記憶 する。 メモリ 1 12に記憶される画像が再生されると、 図 14 (a) のディ スプレイ 501のそれぞれのウィンドウに画像が表示されることになる。 なお、 MPEGデコード回路群 408および拡大縮小回路群 41 6として 、 メディア処理プロセッサを用いてもよい。
また、 実施の形態 1では、 処理量割り当て回路 A · 404と処理量割り当 て回路 B · 412とが分離され、 また、 MP EGデコード回路群 408と拡 大縮小回路群 41 6とが分離された場合について述べてきたが、 処理量割り 当て回路 A · 404と処理量割り当て回路 B - 412とを分離せずに一つの 処理量割り当て回路とし、 また、 MPEGデコード回路群 408と拡大縮小 回路群 416とを分離せずに一つの画像データ処理回路としてもよい。 この 場合、 画像データ処理回路は、 処理量割り当て回路の指示にしたがって、 割 り当てられた演算ユニットにおいて、 MPEG画像データの復号、 および、 画像の拡大縮小を行えばょレ、。
さらに、 実施の形態 1では、 図 14のディスプレイ 501 (a) に示すよ うに、 各ウィンドウに表示される画像は、 その画像全体の拡大縮小率が同一 のものである場合について述べてきたが、 図 18 示すディスプレイのウイ ンドウ 1201やウィンドウ 1203に表示される画像のように、 その画像 全体の拡大縮小率が同一でなく、 部分的に異なる画像であってもよい。 その 場合、 MP EGデコード回路群 408および拡大縮小回路群 41 6は、 部分 的に拡大縮小率が異なる画像については、 例えば、 拡大縮小率が同 の画像 を作り出す場合に比べて、 処理量が多いものとして、 その処理量に応じた演 算ユニットにおいて、 その処理を行えばよい。 (第二の本発明の実施の形態 2 )
第二の本発明の実施の形態 2の画像データ処理装置の構成をその動作とと もに述べる。
第二の本発明の実施の形態 2の画像データ処理装置の構成は、 第二の本発 明の実施の形態 1の画像データ処理装置の構成と同一であって、 その動作が 、 第二の本発明の実施の形態 1の画像データ処理装置の動作と一部異なる。
したがって、 実施の形態 2では、 実施の形態 1で説明したところと異なる 部分についてのみ説明する。
図 14 (a) のディスプレイ 501の 5つのウィンドウのうち、 ウィンド ゥ 505と 506、 および、 ウィンドウ 506と 507は、 重なるように表 示されている。 このように、 ユーザー I ZF回路 1000が、 ユーザーから 、 複数のウィンドウのうちの一部が重なるように、 それら複数のウィンドウ を表示させる旨の指示を受け付けた場合、 ユーザー IZF回路 1000は、 その重複状況の情報をも形状演算回路 101の貼り付け面の大きさ ·形状決 定回路 201に出力する。
このとき、 貼り付け面の大きさ ·形状決定回路 201は、 ユーザー IZF 回路 1000からの重複状況の情報をも利用して、 5つのウィンドウの大き さおよび形状を決定する。
その後、 形状演算回路 101の縦 ·横比率演算回路 202は、 図 14 (a ) のディスプレイ 501の 5つのウィンドウそれぞれに表示される画像の拡 大縮小比率の情報を、 演算量制御回路 102の各構成手段と、 復号 ·補間演 算回路 110の処理量割り当て回路 A · 404とに出力するとともに、 ユー ザ一 IZF回路 1000が入力した重複状況の情報をも、 演算量制御回路 1 02の各構成手段と、 処理量割り当て回路 A · 404とに出力する。
そして、 演算量制御回路 102の書き出し位置制御回路 302は、 形状演 算回路 101の縦 '横比率演算回路 202からのウィンドウの重複状況の情 報をも利用して、 5つの画像がメモリ 112に書き込まれるさいの、 それら 画像の書き込み位置を特定する。
また、 演算量制御回路 102の画像復号制御回路 304は、 形状演算回路 101の縦 '横比率演算回路 202からのウィンドウの重複状況の情報をも 利用して、 復号 ·補間演算回路 1 10の MPEGデコード回路群 408が M PEG画像データを復号するさいに、 重複部分が復号されないように、 MP EG画像データの復号方法を決定する。 つまり、 図 14 (a) のディスプレ ィ 501のウィンドウ 505および 507については、 それぞれ同図 (b) のウィンドウ 508、 509の部分の画像のみの MP EG画像データが MP EGデコード回路群 408で復号されるように、 画像復号制御回路 304は 、 復号方法を決定する。 いいかえると、 図 14 (a) のディスプレイ 501 のウィンドウ 505および 507がウィンドウ 506に隠れる部分の画像の MPEG画像データについては、 復号されないように、 復号方法は決定され る。 この結果、 MP EGデコード回路群 408での復号時の処理量は低減す る。
ざらに、 演算量制御回路 102のサイズ変換制御回路 303は、 形状演算 回路 101の縦 '横比率演算回路 202からのウィンドウの重複状況の情報 をも利用して、 5つのウィンドウそれぞれの大きさおよび形状に合致するよ うに、 復号 ·補間演算回路 110の MP EGデコ一ド回路群 408で復号さ れる画像の拡大縮小方法を決定する。 つまり、 図 14 (a) のディスプレイ 501のウィンドウ 505および 507のウィンドウ 506に隠れる部分の 画像については、 復号 ·補間演算回路 1 10の拡大縮小回路群 41 6で処理 されないように、 拡大縮小方法は決定される。 この結果、 拡大縮小回路群 4 16での処理量は低減する。
次に、 復号 ·補間演算回路 1 10の処理量割り当て回路 A · 404は、 演 算量制御回路 102の画像復号制御回路 304からの、 ウィンドウの重複状 況が考慮された復号方法の情報を利用して、 複数の画像の MP EG画像デー タの復号に、 MP EGデコード回路群 408の演算ュニット群のいずれを割 り当てるかを決定する。 つまり、 処理量割り当て回路 Α · 404は、 図 14 (a) のディスプレイ 501のウィンドウ 505および 507については、 ウィンドウ 506に隠れる部分だけ、 MP EG画像データの復号量が実施の 形態 1の場合に比べて削減されるように、 MP EGデコード回路群 408の 演算ュニット群の割り当てを決定する。
そして、 復号 ·補間演算回路 1 1 0の処理量割り当て回路 B · 41 2は、 演算量制御回路 102のサイズ変換制御回路 303からの、 ウィンドウの重 複状況が考慮された拡大縮小方法の情報を利用して、 MP EGデコード回路 群 408からの画像が対応するウィンドウの大きさおよび形状に合致するよ うに、 拡大縮小回路群 41 6の演算ュニット群のいずれを、 MP EGデコー ド回路群 408からの複数の画像それぞれの処理に割り当てるかを決定する。 つまり、 処理量割り当て回路 B · 412は、 図 14 (a) のディスプレイ 5 01のウィンドウ 505および 507については、 ウィンドウ 506に隠れ る部分だけ、 画像の拡大縮小量が実施の形態 1の場合に比べて削減されるよ うに、 拡大縮小回路群 41 6の演算ュニット群の割り当てを決定する。 さらに、 メモリ I ZF 111は、 拡大縮小回路群 416から複数の画像と 、 演算量制御回路 102の書き出し位置制御回路 302からのメモリ 112 に画像が書き込まれるさいの書き込み位置の情報とを入力し、 図 14 (a) の 5つのウィンドウのうち、 ウィンドウ 505と 507については、 図 14 (b) に示す部分のみを、 メモリ 1 12に画像を書き込ませる。
以上の結果、 メモリ 112に記憶される画像が再生されると、 実施の形態 1と同様に、 図 14 (a) のディスプレイ 501のそれぞれのウィンドウに 画像が表示されることになる。
(第二の本発明の実施の形態 3 )
第二の本発明の実施の形態 3の画像データ処理装置の構成をその動作とと もに述べる。
第二の本発明の実施の形態 3の画像データ処理装置の構成は、 第二の本発 明の実施の形態 1の画像データ処理装置の構成と同一であって、 その動作が 、 第二の本発明の実施の形態 1または 2の画像データ処理装置の動作と一部 異なる。
したがって、 実施の形態 3では、 実施の形態 1または 2で説明したところ と異なる部分についてのみ説明する。
実施の形態 1および 2では、 図 14 (a) のディスプレイ 501に表示さ れる画像の数は、 5であるものとして説明してきたが、 画像の数が例えば 2 0というように多数になると、 復号 ·補間演算回路 110の MP EGデコー ド回路群 408または拡大縮小回路群 416では、 演算ュニッ ト群の全ての 演算ュニットが、 それぞれ処理をしても処理量が多すぎて処理することがで きない場合がある。 その場合、 ュ一ザ一 I /F回路 1000は、 ユーザーザから各 MP EG画 像データの処理についての優先順位の情報を入力し、 演算量制御回路 102 の画像復号制御回路 304およびサイズ変換制御回路 303に、 各 MP EG 画像データの処理についての優先順位の情報を出力する。
画像復号制御回路 304は、 ユーザー IZF回路 1000からの、 各画像 の処理についての優先順位の情報に基づいて、 復号 '補間演算回路 1 10の MP EGデコ一ド回路群 408の全ての演算ュニットが処理した場合の処理 量を超えないように、 優先順位の低い MP EG画像データから順に、 DCT 係数の周波数の低い部分のみ復号され、 対応するウィンドウの大きさよりも 縮小された大きさで復号されるように、 各 MP EG画像データの復号方法を 決定する。 つまり、 画像復号制御回路 304は、 優先順位の低い MPEG画 像データから順に、 復号処理量を削減する。 その場合、 復号 ·補間演算回路 1 10の処理量割り当て回路 A · 404は、 画像復号制御回路 304の復号 方法の決定に基づいて、 MPEGデコード回路群 408の演算ュニット群の いずれを、 複数の MPEG画像データそれぞれの復号に割り当てるのかを決 定する。
サイズ変換制御回路 303は、 画像復号制御回路 304と同様に、 ユーザ 一 I ZF回路 1000からの、 各画像の処理についての優先順位の情報に基 づいて、 復号 ·補間演算回路 110の拡大縮小回路群 416の全ての演算ュ ニットが処理した場合の処理量を超えないように、 また、 優先順位の低い M PEG画像データからの復号画像から順に処理量を削減するように、 MPE Gデコード回路群 408からの各画像の拡大縮小方法を決定する。 つまり、 サイズ変換制御回路 303は、 優先順位の低い MP EG画像データからの画 像から順に、 拡大縮小処理量を削減する。 この場合、 例えば、 優先順位の低 い M P E G画像データから復号された画像を拡大するさい、 単純に計算され た画像信号を所定の位置の周囲に配置することで処理量を削減する。 ただし 、 拡大された画像は、 モザイク画像のようになる。 そして、 復号 '補間演算 回路 1 1 0の処理量割り当て回路 B · 4 1 2は、 サイズ変換制御回路 3 0 3 の拡大縮小方法の決定に基づいて、 拡大縮小回路群 4 1 6の演算ュニット群 のいずれを、 複数の画像それぞれの拡大縮小に割り当てるのかを決定する。 なお、 実施の形態 3では、 各 MP E G画像データの処理についての優先順 位の情報は、 ユーザー I Z F回路 1 0 0 0がユーザーから入力するとしたが 、 画像復号制御回路 3 0 4およびサイズ変換制御回路 3 0 3に、 優先順位の 情報を決定するルールをあらかじめ設定してもよい。 そして、 画像復号制御 回路 3 0 4およびサイズ変換制御回路 3 0 3は、 あらかじめ決められたルー ルに基づいて、 それぞれ復号方法、 拡大縮小の方法を決定するとしてもよい。 そのあらかじめ決められたルールとは、 ディスプレイの一番手前にあるウイ ンドゥの画像処理の優先順位を最も高いものとし、 一番奥にあるウィンドウ の画像処理の優先順位を最も低いものとするルールであってもよいし、 一番 最後に操作されたウィンドウの画像処理の優先順位を最も高いものとし、 一 番最先に操作されたウィンドウの画像処理の優先順位を最も低いものとする ルールであってもよレ、。 または、 大きなウィンドウほど優先順位が高いもの とするなど、 ウィンドウの大きさに基づいたルールであってもよい。 または 、 M P E G画像データの信号源によつて優先順位が異なるルールであつても よい。 例えば、 信号源としての T Vチューナーからの MP E G画像データの 画像処理の優先順位は、 信号源としての D VDやディジタルビデオからの M P E G画像データの画像処理の優先順位より高いとするルールであつてもよ い。 また、 あらかじめ決められたルールは、 ユーザーが設定を変えることが できるようにしてもよい。 さらに、 あらかじめ決められたルーノレによる優先 順位が、 例えば、 ウィンドウ 1は 1番高く、 ウィンドウ 2は 2番目、 ウィン ドウ 3は 3番目、 ウィンドウ 4は 4番目となる場合であっても、 ウィンドウ 2を 3番目、 ウィンドウ 3を 2番目となるように、 ユーザーが優先順位を変 更するように、 ユーザーの指示が、 あらかじめ決められたルールに優先する としてもよい。
また、 実施の形態 3では、 各 MP E G画像データの処理についての優先順 位の情報は、 各画像それぞれのフレームレートを低下させる情報であっても よい。
なお、 第二の本発明の拡大縮小情報入力手段は、 ユーザー I Z F回路 1 0 0 0と、 形状演算回路 1 0 1と、 演算量制御回路 1 0 2から構成される。 画 像処理手段は、 復号 ·補間演算回路 1 1 0の MP E Gデコード回路群 4 0 8 と拡大縮小回路群 4 1 6から構成される。 割り当て手段は、 復号 ·補間演算 回路 1 1 0の処理量割り当て回路 A · 4 0 4と処理量割り当て回路 B ■ 4 0 4から構成される。 しかしながら、 第二の本発明の拡大縮小情報入力手段は 、 ユーザー I Z F回路 1 0 0 0と、 形状演算回路 1 0 1と、 演算量制御回路 1 0 2から構成されるものに限らず、 画像データに対する拡大縮小の程度の 情報を入力するものでありさえすればよい。 また、 画像処理手段は、 復号 - 補間演算回路 1 1 0の M P E Gデコード回路群 4 0 8と拡大縮小回路群 4 1 6から構成されるものに限らず、 複数の画像データを処理する処理ュニット を複数個有し、 画像データを入力して、 拡大縮小情報入力手段から画像デー タに対する拡大縮小の程度の情報に基づき、 割り当て手段からの処理ュニッ ト群の割り当てにしたがって、 画像処理するものでありさえすればよい。 さ らに、 割り当て手段は、 復号 ·補間演算回路 1 1 0の処理量割り当て回路 A • 4 0 4と処理量割り当て回路 B · 4 0 4から構成されるものに限らず、 拡 大縮小情報入力手段から画像データに対する拡大縮小の程度の情報を入力し 、 画像処理手段の処理ユニット群の全部または一部を、 画像データに対する 拡大縮小の程度の情報に基づいて、 その拡大縮小の程度の情報に対応する画 像データの拡大縮小処理に割り当てるものでありさえすればよい。
また、 上述した実施の形態では、 符号化された MP E G画像データを復号 し、 その画像を拡大縮小する場合について述べてきたが、 第二の本発明の画 像データ処理装置は、 符号化された M P E G画像データが完全に復号された 画像を複数個入力し、 それら画像それぞれを拡大縮小するさいにおいても、 その拡大縮小率に応じて決定される処理量に基づいて、 演算ュニット群の割 り当てを決定し、 割り当てられた演算ユニットに、 画像の拡大縮小処理をさ せてもよレ、。
さらに、 上述した実施の形態 1および 2では、 1つのディスプレイに 5の 画像が表示される場合について説明してきたが、 ディスプレイに表示される 画像の数は、 5に限ったものではない。 要するに、 ディスプレイに表示され る画像の数は、 複数でありさえすればよい。
以上説明したところから明らかなように、 第二の本発明は、 複数の M P E G画像デ一タを再生して、 パーソナルコンピュータ等のディスプレイに、 同 時に複数の画像を表示する場合でも、 一つの装置で、 複数の M P E G画像デ ータを柔軟に処理する画像データ処理装置を提供することができる。 次に、 第三の本発明の実施の形態を図面を参照して説明する。
(第 3の本発明の実施の形態 1 )
はじめに、 第三の本発明の実施の形態 1の可変長符号復号装置の構成を述 ベる。
図 19に、 第三の本発明の実施の形態 1の可変長符号復号装置のブロック 図を示す。 第三の本発明の実施の形態 1の可変長符号復号装置 Mは、 データ 多重化回路 100と、 高速シフト回路 200と、 時分割可変長符号語復号回 路 300と、 多重化データ分離回路 400と、 高速クロック回路 500から 構成される。 なお、 高速シフト回路 200および時分割可変長符母語復号回 路 300それぞれは、 さらにそれらを構成する構成手段を備えている。
図 20に、 上述した可変長符号復号装置 Mに加えて、 第 1画像符号発生源 600と、 第 2画像符号発生源 700と、 第 3画像符号発生源 800と、 第 n画像符号発生源 900と、 第 IMP EGデータ階層構造復号回路 1099 と、 第 2MPEGデータ階層構造復号回路 1 100と、 第 3MPEGデータ 階層構造復号回路 1200と、 第 nMPEGデータ階層構造復号回路 130 0と、 情報源復号器群 1400とを示す。
以下の説明の便宜上、 先ず、 第 1画像符号発生源 600、 第 2画像符号発 生源 700、 第 3画像符号発生源 800、 第 n画像符号発生源 900、 第 1 MP EGデータ階層構造復号回路 1099、 第 2MP EGデータ階層構造復 号回路 1 100、 第 3 MP EGデータ階層構造復号回路 1200および第 n MPEGデータ階層構造復号回路 1300を説明する。
第 1画像符号発生源 600、 第 2画像符号発生源 700、 第 3画像符号発 生源 800および第 n画像符号発生源 900それぞれは、 パーソナルコンビ ユータ等のディスプレイに表示される画像の、 可変長符号化された MP EG 画像データを発生する手段である。 なお、 実施の形態 1では、 nは 4である ものとする。 また、 以下の説明の簡単化のために、 第 1画像符号発生源 60 0、 第 2画像符号発生源 700、 第 3画像符号発生源 800および第 n画像 符号発生源 900からのデータストリームを、 それぞれ第 1データストリー ム、 第 2データストリーム、 第 3データストリーム、 第 4データストリーム とする。
第 IMP EGデータ階層構造復号回路 1099は、 第 1画像符号発生源 6 00からの可変長符号化された MP EG画像データ、 すなわち第 1データス トリームを入力し、 そのデータが動きべク トルと差分データからなるものか など、 データの画像のフォーマットを解析する手段である。 同様に、 第 2M PEGデータ階層構造復号回路 1 100、 第 3 MP EGデータ階層構造復号 回路 1 200および第 nMPEGデータ階層構造復号回路 1300は、 それ ぞれ第 2、 第 3、 第 4デ一タストリームの可変長符号化された MPEG画像 データを入力し、 データの画像のフォーマットを解析する手段である。 なお 、 実施の形態 1では、 nは 4であるものとする。
さて、 データ多重化回路 100は、 第 1、 第 2、 第 3および第 4データス トリームの可変長符号化された M PEG画像データを入力し、 それら複数の データストリームのデータを多重化する手段である。 また、 データ多重化回 路 100は、 高速クロック回路 500からの高速クロック信号を入力し、 デ ータの多重化を、 その高速ク口ック信号に基づいた高速度で行うものである。 高速シフト回路 200は、 データ多重化回路 100が入力した、 第 1、 第
2、 第 3および第 4データストリームの可変長符号化された MP EG画像デ ータのうち、 それぞれのデータストリームから最先の 6 4ビットのデータを 、 時分割で順次連続的に入力する手段である。 そして、 後述する時分割可変 長符号語復号回路 3 0 0の指示に基づいて、 データをシフトする手段である。 そのシフ卜については、 可変長符号復号装置の動作を述べるさいに詳述する。 なお、 高速シフト回路 2 0 0は、 図 2 1に示すように、 1ビッ トシフト回路 1 5 0 0、 第 1選択回路 1 6 0 0、 2ビットシフト回路 1 7 0 0、 第 2選択 回路 1 8 0 0、 4ビットシフト回路 1 9 0 0、 第 3選択回路 2 0 0 0、 8ビ ットシフト回路 2 0 0 1、 第 4選択回路 2 2 0 0、 1 6ビットシフト回路 2 3 0 0、 第 5選択回路 2 4 0 0および制御回路 2 5 0 0を備えている。 それ ら図 2 1に示した、 高速シフト回路 2 0 0の各構成手段についても、 後に詳 述する。
時分割可変長符号語復号回路 3 0 0は、 高速シフト回路 2 0 0が入力した 、 第 1、 第 2、 第 3および第 4データストリームの可変長符号化された MP E G画像データそれぞれの最先の 6 4ビットのデータについて、 順次、 最先 の符号語と、 その符号語の語長を検出し、 また、 その符号語を可変長復号す る手段である。 なお、 時分割可変長符号語復号回路 3 0 0は、 図 2 2に示す ように、 第 1判定回路 2 6 0 0、 第 1レジスタ 2 7 0 0、 第 2判定回路 2 8 0 0、 第 2レジスタ 2 9 0 0、 第 3判定回路 3 0 0 0、 第 3レジスタ 3 1 0 0、 極性調整回路 3 2 0 0、 第 4レジスタ 3 3 0 0、 第 1フラグメモリ 3 4 0 0、 第 2フラグメモリ 3 5 0 0、 第 3フラグメモリ 3 6 0 0、 第 4フラグ メモリ 3 7 0 0、 タイミング計測回路 3 8 0 0およびリセット信号発生回路 3 9 0 0を備えている。 それら図 2 2に示した、 時分割可変長符号語復号回 路 3 0 0の各構成手段についても、 後に詳述する。 多重化データ分離回路 4 0 0は、 時分割可変長符号語復号回路 3 0 0から の、 第 1、 第 2、 第 3および第 4データス トリームの可変長復号ィ匕されたデ ータを、 それぞれのデータス トリーム毎に分離する手段である。
高速クロック回路 5 0 0は、 データ多重化回路 1 0 0のデータ入力おょぴ 多重化と、 高速シフ ト回路 2 0 0のデータ入力およびシフトと、 時分割可変 長符号語復号回路 3 0 0の可変長復号とを、 高速度で行わせるための制御を する手段である。
なお、 図 2 0の情報源復号器群 1 4 0 0は、 可変長符号復号装置の多重ィ匕 データ分離回路 4 0 0で分離された、 データス トリーム毎の可変長復号化デ ータを、 それぞれ画像に復号する手段である。
次に、 このような第三の本発明の実施の形態 1の可変長符号復号装置の動 作を述べる。
先ず、 データ多重化回路 1 0 0は、 第 1画像符号発生源 6 0 0、 第 2画像 符号発生源 7 0 0、 第 3画像符号発生源 8 0 0および第 n画像符号発生源 9 0 0それぞれからの、 可変長符号化された MP E G画像データを、 それぞれ 第 I MP E Gデータ階層構造復号回路 1 0 9 9、 第 2 MP E Gデータ階層構 造復号回路 1 1 0 0、 第 3 MP E Gデータ階層構造復号回路 1 2 0 0または 第 n MP E Gデータ階層構造復号回路 1 3 0 0を介して入力し、 多重化する。 なお、 データ多重化回路 1 0 0は、 高速クロック回路 5 0 0からの高速クロ ック信号に基づいた高速度で、 データの多重化を行う。 つまり、 データ多重 化回路 1 0 0は、 第 1、 第 2、 第 3および第 4データス トリームのデータを 、 高速度で多重化する。
そして、 高速シフト回路 2 0 0は、 データ多重化回路 1 0 0が入力した、 第 1、 第 2、 第 3および第 4データストリームの可変長符号化された MP E G画像データのうち、 それぞれのデータストリームから最先の 6 4ビットづ つのデータを、 時分割で順次連続的に入力する。 その入力を掘 2 3を参照し てさらに説明する。 図 2 3は、 第 1、 第 2、 第 3およぴ第 4データストリー ムそれぞれのデータが高速シフト回路 2 0 0または時分割可変長符号語復号 回路 3 0 0において所定の処理がなされるさい、 その処理がどのタイミング でなされるのかを示す図である。 図 2 3の各ブロックは第 1、 第 2、 第 3ま たは第 4デ一タストリ一ムそれぞれの 6 4ビットのデータを意味するものと し、 t 0、 t l、 t 2、 t 3、 …は、 タイミング、 つまり時刻を示すものと する。 図 2 3に示すように、 高速シフト回路 2 0 0は、 先ず、 第 1データス トリームの最先の 6 4ビットのデータを t 0のタイミングで入力する。 その 後同様に、 第 2、 第 3、 第 4データストリームの最先の 6 4ビッ トのデータ を、 それぞれ t l、 t 2、 t 3のタイミングで入力する。 ここで、 図 2 4に 、 t 0のタイミングで、 高速シフト回路 2 0 0が入力する、 第 1データスト リームの最先の 6 4ビットの一例を示す。 その 6 4ビットは、 符号語 A、 B 、 Cおよび Dから構成されるものであり、 符号語 A、 B、 Cおよび Dそれぞ れの語長は、 n、 m、 1、 oビットであるものとする。
ところで、 高速シフト回路 2 0 0が t 0のタイミングで入力した、 第 1デ 一タストリームの最先の 6 4ビッ卜のデータの最先の符号語は、 何ビットの 符号長の符号語であるかがわからない。 つまり、 t Oのタイミングでは、 第 1データストリームの最先の 6 4ビットの最先の符号語が図 2 4の符号語 A であることと、 その符号語 Aが nビットであることはわからない。
そこで、 時分割可変長符号語復号回路 3 0 0は、 その最先の符号語と、 そ の符号語の語長とを、 一意に区別可能な表を用いて検出し、 その最先の符号 語を可変長復号するとともに、 その最先の符号語が何ビットの^であるの かという情報を高速シフト回路 2 0 0に出力する。 つまり、 符号語 Aを検出 して可変長復号するとともに、 その符号語 Aが nビットであるという情報を 高速シフト回路 2 0 0に出力する。 それらの処理は、 図 2 3のタイミング t l〜t 3の間で行われる。 そして、 可変長復号化された、 第 1データストリ 一ムの最先の符号語は、 t 4のタイミングで多重化データ分離回路 4 0 0に 出力される。
同様に、 時分割可変長符号語復号回路 3 0 0は、 高速シフト回路 2 0 0が t 1、 t 2および t 3のタイミングで入力した、 第 2、 第 3および第 4デー タストリームの最先の符号語と、 その符号語の Sとを、 一意に区別可能な 表を用いて検出し、 その最先の符号語を可変長復号するとともに、 その最先 の符号語が何ビットの語長であるのかという情報を高速シフト回路 2 0 0に 出力する。 それらの処理は、 第 2データストリームについては図 2 3のタイ ミング t 2〜 t 4の間で、 第 3データストリームについては図 2 3のタイミ ング t 3〜 t 5の間で、 第 4データストリームについては図 2 3のタイミン グ t 4〜 t 6の間で行われる。 そして、 第 2データストリームの最先の符号 語は t 5のタイミングで、 第 3データストリームの最先の符号語は t 6のタ イミングで、 第 4データストリームの最先の符号語は t 7のタイミングで、 それぞれ多重化データ分離回路 4 0 0に出力される。
次に、 図 2 3のタイミング t l〜t 5の間で行われる時分割可変長符号語 復号回路 3 0 0の動作、 および高速シフト回路 2 0 0の動作を、 図 2 1およ び 4を参照して、 さらに説明する。 その説明をするために、 可変長符号化さ れた MP E G画像データの符号語 1個づっは、 最大 1 6ビットまでのデータ であるものとし、 そのデータには、 正負に関する極性データが含まれている ものとする。
さて、 t 1のタイミングで、 図 2 2の、 時分割可変長符号語復号回路 3 0 0の第 1判定回路 2 6 0 0は、 上述した一意に区別可能な表を用いて、 第 1 データストリームの最先の 8ビットのデータのなかの符号語の有無を検出し 、 符号語があればその符号語を可変長復号して第 1 レジスタ 2 7 0 0を介し て第 2判定回路 2 8 0 0に出力するとともに、 出力データが何ビットのデ一 タであったのかという情報を第 1フラグメモリ 3 4 0 0に出力する。 第 1フ ラグメモリ 3 4 0 0は、 そのビットの情報を図 2 1の高速シフト回路 2 0 0 の制御回路 2 5 0 0に出力する。 他方、 符号語がなければ、 第 1判定回路 2 6 0 0は、 第 1データストリームの最先の 8ビットのデータを、 そのまま第 1 レジスタ 2 7 0 0に出力し、 第 1フラグメモリ 3 4 0 0には、 いかなる情 報も出力しない。 第 1レジスタ 2 7 0 0は、 タイミング t lの間、 その 8ビ ットのデータを待機させた後、 第 2判定回路 2 8 0 0に出力する。
次に、 t 2のタイミングで、 図 2 2の、 時分割可変長符号語復号回路 3 0 0の第 2判定回路 2 8 0 0は、 以下の動作を行う。 t lのタイミングで第 1 判定回路 2 6 0 0において、 第 1データストリームの最先の符号語が可変長 復号されておれば、 第 2判定回路 2 8 0 0は、 その最先の符号語をそのまま 第 2レジスタ 2 9 0 0に出力し、 第 1フラグメモリ 3 4 0 0にはいかなる情 報も出力しない。 第 2レジスタ 2 9 0 0は、 タイミング t 2の間、 最先の符 号語を待機させた後、 第 3判定回路 3 0 0 0に出力する。 それに対して、 t 1のタイミングで第 1判定回路 2 6 0 0において、 第 1データストリームの 最先の符号語が可変長復号されていなければ、 第 2判定回路 2 8 0 0は、 上 述した一意に区別可能な表を用いて、 第 1データストリームの最先の 1 2ビ ットのデータのなかの符号語の有無を検出し、 符号語があればその符号語を 可変長復号して第 2レジスタ 2 9 0 0を介して第 3判定回路 3 0 0 0に出力 するとともに、 出力データが何ビットのデータであったのかという情報を第 1フラグメモリ 3 4 0 0に出力する。 第 1フラグメモリ 3 4 0 0は、 そのビ ットの情報を図 2 1の高速シフト回路 2 0 0の制御回路 2 5 0 0に出力する。 他方、 符号語がなければ、 第 2判定回路 2 8 0 0は、 第 1データストリーム の最先の 1 2ビットのデータを、 そのまま第 2レジスタ 2 9 0 0に出力し 、 第 1フラグメモリ 3 4 0 0にはいかなる情報も出力しない。 第 2レジスタ 2 9 0 0は、 タイミング t 2の間、 その 1 2ビットのデータを待機させた後 、 第 3判定回路 3 0 0 0に出力する。
同じ t 2のタイミングで、 図 2 2の、 時分割可変長符号語復号回路 3 0 0 の第 1判定回路 2 6 0 0は、 第 2データストリームの最先の 8ビットのデ一 タのなかの符号語の有無を検出し、 符号語があればその符号語を可変長復号 して第 1レジスタ 2 7 0 0を介して第 2判定回路 2 8 0 0に出力するととも に、 出力データが何ビッ卜のデータであったのかという情報を第 2フラグメ モリ 3 5 0 0に出力する。 第 2フラグメモリ 3 5 0 0は、 そのビットの情報 を図 2 1の高速シフト回路 2 0 0の制御回路 2 5 0 0に出力する。 他方、 符 号語がなければ、 第 1判定回路 2 6 0 0は、 第 2データストリームの最先の 8ビットのデータを、 そのまま第 1レジスタ 2 7 0 0に出力し、 第 2フラグ メモリ 3 5 0 0には、 いかなる情報も出力しない。 第 1レジスタ 2 7 0 0は 、 タイミング t 2の間、 その 8ビッ トのデータを待機させた後、 第 2判定回 路 2 8 0 0に出力する。
同様に、 t 3のタイミングで、 図 2 2の、 時分割可変長符号語復号回路 3 0 0の第 3判定回路 3 0 0 0は、 以下の動作を行う。 t 1または t 2のタイ ミングで第 1判定回路 2 6 0 0または第 2判定回路 2 8 0 0において、 第 1 データストリームの最先の符号語が可変長復号されておれば、 第 3判定回路
3 0 0 0は、 その最先の符号語をそのまま第 3レジスタ 3 1 0 0に出力し、 第 1フラグメモリ 3 4 0 0にはいかなる情報も出力しない。 第 3レジスタ 3
1 0 0は、 タイミング t 3の間、 最先の符号語を待機させた後、 極性調整回 路 3 2 0 0に出力する。 それに対して、 t 1または t 2のタイミングで、 第
1データストリームの最先の符号語が可変長復号されていなければ、 第 3判 定回路 3 0 0 0は、 第 1データストリームの最先の 1 6ビットのデータのな かの符号語を検出し、 その符号語を可変長復号して第 3レジスタ 3 1 0 0を 介して極性調整回路 3 2 0 0に出力するとともに、 出力データが何ビットの データであったのかという情報を第 1フラグメモリ 3 4 0 0に出力する。 第
1フラグメモリ 3 4 0 0は、 そのビットの情報を図 2 1の高速シフト回路 2
0 0の制御回路 2 5 0 0に出力する。
また、 同じ t 3のタイミングで、 図 2 2の、 時分割可変長符号語復号回路
3 0 0の第 2判定回路 2 8 0 0は、 上述した t 2のタイミングで、 第 1デー タストリームのデータに対して行った動作と同様の動作を、 第 2データスト リームのデータに対して行う。 ただし、 その場合のフラグメモリは、 第 2フ ラグメモリ 3 5 0 0に対応する。
さらに同じ t 3のタイミングで、 図 2 2の、 時分割可変長符号語復号回路
3 0 0の第 1判定回路 2 6 0 0は、 上述した t 1のタイミングで、 第 1デー タストリームのデータに対して行った動作と同様の動作を、 第 3データスト リームのデータに対して行う。 ただし、 その場合のフラグメモリは、 第 3フ ラグメモリ 3 6 0 0に対応する。
その後、 t 4のタイミングで、 図 2 2の、 時分割可変長符号語復号回路 3 0 0の極性調整回路 3 2 0 0は、 タイミング t 4までに可変長複号化され終 わっている第 1データストリームの最先の符号語の正負に関する極性のデー タにしたがって、 その可変長復号化されたデータを正または負にして、 第 4 レジスタ 3 3 0 0を介して多重化データ分離回路 4 0 0に出力する。 それと 同じ t 4のタイミングで、 タイミング計測回路 3 8 0 0は、 可変長復号化さ れたデ一タが多重化データ分離回路 4 0 0に出力されたという情報をリセッ ト信号発生回路 3 9 0 0に出力し、 リセット信号発生回路 3 9 0 0は、 第 1 フラグメモリ 3 4 0 0をリセットする。
同じ t 4のタイミングで、 図 2 2の、 時分割可変長符号語復号回路 3 0 0 の第 3判定回路 3 0 0 0、 第 2判定回路 2 8 0 0およぴ第 1判定回路 2 6 0 0それぞれは、 上述した t 3、 t 2または t 1のタイミングで、 第 1データ ストリームのデータに対して行った動作と同様の動作を、 それぞれ第 2、 第 3、 第 4データストリームのデータに対して行う。 ただし、 その場合のフラ グメモリは、 それぞれ第 2フラグメモリ 3 5 0 0、 第 3フラグメモリ 3 6 0 0、 第 4フラグメモリ 3 7 0 0に対応する。
ところで、 図 1 9の高速シフト回路 2 0 0は、 タイミング t 1〜3までの 間に、 図 2 2の第 1フラグメモリ 3 4 0 0力 ら、 第 1デ一タストリームの最 先の符号語が何ビットのデータであったのかという情報を入力する。 つまり 、 図 2 4の符号語 Aが nビットであったという情報を入力する。 その情報に 基づいて、 その最先の符号語の次の符号語が第 1データストリームの最先の 符号語となるように、 いいかえると、 図 2 4の符号語 Bが第 1データストリ 一ムの最先の符号語となるように、 t 4のタイミングで、 高速シフ ト回路 2 0 0は、 第 1データス トリームのデータをシフトさせる。 そのシフトともに 、 高速シフト回路 2 0 0は、 第 1データストリームのデータが 6 4ビッ トに なるように、 データ多重化回路 1 0 0からデータを入力する。 つまり nビッ ト分のデータを入力する。 以下に、 高速シフ ト回路 2 0 0が行うシフ トを、 図 2 1の高速シフト回路 2 0 0のブロック図を参照して説明する。
図 2 1の第 1選択回路 1 6 0 0、 第 2選択回路 1 8 0 0、 第 3選択回路 2 0 0 0、 第 4選択回路 2 2 0 0および第 5選択回路 2 4 0 0それぞれは、 1 ビッ トシフト回路 1 5 0 0、 2ビッ トシフト回路 1 7 0 0、 4ビッ トシフト 回路 1 9 0 0、 8ビッ トシフ ト回路 2 1 0 0、 1 6ビッ トシフト回路 2 3 0 0それぞれを使用するか否かを指示する回路である。 その指示は、 制御回路 2 5 0 0の制御に基づくものである。 また、 1ビットシフト回路 1 5 0 0、 2ビッ トシフト回路 1 7 0 0、 4ビッ トシフ ト回路 1 9 0 0、 8ビッ トシフ ト回路 2 1 0 0および 1 6ビットシフト回路 2 3 0 0それぞれは、 各データ ス トリームを、 それぞれ 1ビット、 2ビット、 4ビット、 8ビット、 1 6ビ ットシフトさせる回路である。 制御回路 2 5 0 0は、 第 1選択回路 1 6 0 0 、 第 2選択回路 1 8 0 0、 第 3選択回路 2 0 0 0、 第 4選択回路 2 2 0 0ま たは第 5選択回路 2 4 0 0それぞれを制御して、 1ビットシフト回路 1 5 0 0、 2ビッ トシフ ト回路 1 7 0 0、 4ビッ トシフ ト回路 1 9 0 0、 8 ビッ ト シフト回路 2 1 0 0、 1 6ビッ トシフト回路 2 3 0 0それぞれを使用するか 否かを判断する回路である。 さて、 制御回路 2 5 0 0は、 タイミング t 1〜3までの間に、 上述したよ うに、 第 1フラグメモリ 3 4 0 0力 ら、 第 1データストリームの最先の符号 語、 つまり出力データである符号語 Aが nビットのデータであったという情 報を入力する。 その情報に基づいて、 制御回路 2 5 0 0は、 第 1選択回路 1 6 0 0、 第 2選択回路 1 8 0 0、 第 3選択回路 2 0 0 0、 第 4選択回路 2 2 0 0、 第 5選択回路 2 4 0 0の全部または一部を介して、 その出力データの |¾に相当するビット数となるように、 1ビットシフト回路 1 5 0 0、 2ビ ッ トシフト回路 1 7 0 0、 4ビットシフト回路 1 9 0 0、 8ビットシフト回 路 2 1 0 0 , 1 6ビットシフト回路 2 3 0 0の全部または一部を動作させて 、 第 1データストリームをシフトさせる。 例えば、 出力データが 1 5ビット のデータであった場合、 t 4のタイミングで、 制御回路 2 5 0 0は、 第 1選 択回路 1 6 0 0、 第 2選択回路 1 8 0 0、 第 3選択回路 2 0 0 0および第 4 選択回路 2 2 0 0を介して、 1ビッ トシフト回路 1 5 0 0、 2ビットシフト 回路 1 7 0 0、 4ビットシフト回路 1 9 0 0および 8ビッ トシフト回路 2 1 0 0を動作させて、 第 1データストリームを、 1 5ビット分シフトさせる。 次に、 t 5のタイミングで、 図 2 2の、 時分割可変長符号語復号回路 3 0 0の第 1判定回路 2 6 0 0は、 上述した t 1のタイミングで、 第 1デ一タス トリームのデータに対して行った動作と同様の動作を、 シフトされた第 1デ 一タストリームのデータに対して行う。
同じ t 5のタイミングで、 図 2 2の、 時分割可変長符号語復号回路 3 0 0 の極性調整回路 3 2 0 0は、 タイミング t 4までに可変長復号化され終わつ ている第 2データストリームの最先の符号語の正負に関する極性のデータに したがって、 その可変長復号化されたデータを正または負にして、 第 4レジ スタ 3 3 0 0を介して多重化データ分離回路 4 0 0に出力する。 それと同じ t 5のタイミングで、 タイミング計測回路 3 8 0 0は、 可変長復号化された データが多重化データ分離回路 4 0 0に出力されたという情報をリセット信 号発生回路 3 9 0 0に出力し、 リセット信号発生回路 3 9 0 0は、 第 2フラ グメモリ 3 5 0 0をリセットする。
また同じ t 5のタイミングで、 図 2 2の、 時分割可変長符号語復号回路 3 0 0の第 3判定回路 3 0 0 0および第 2判定回路 2 8 0 0それぞれは、 上述 した t 3または t 2のタイミングで、 第 1データストリームのデータに対し て行った動作と同様の動作を、 それぞれ第 3、 第 4データストリームのデー タに対して行う。 ただし、 その場合のフラグメモリは、 それぞれ第 3フラグ メモリ 3 6 0 0、 第 4フラグメモリ 3 7 0 0に対応する。
ところで、 図 1 9の高速シフト回路 2 0 0は、 タイミング t 2〜4までの 間に、 図 2 2の第 2フラグメモリ 3 5 0 0から、 第 2データストリームの最 先の符号語が何ビットのデータであったのかという情報を入力する。 その情 報に基づいて、 その最先の符号語の次の符号語が第 2データストリームの最 先の符号語となるように、 t 5のタイミングで、 高速シフト回路 2 0 0は、 第 2データストリームのデータをシフトさせる。 そのシフトは、 t 4のタイ ミングで、 図 2 1の高速シフト回路 2 0 0が第 1データストリームのデータ をシフトさせたように行われる。 そのシフトとともに、 高速シフト回路 2 0 0は、 第 2データストリームのデータが 6 4ビットになるように、 データ多 重化回路 1 0 0からデータを入力する。
t 6のタイミング以降同様にして、 可変長符号復号装置は、 図 2 3に示す ように、 第 1データストリームに t l〜t 4まで行う処理を、 その t l〜t 4に相当するサイクルで、 各タイミングにおいて、 各データストリームのデ 一タの最先の符号語を可変長復号し、 出力し、 また、 各データストリームの データをシフトさせる。
(第三の本発明の実施の形態 2 )
第三の本発明の実施の形態 2の可変長符号復号装置の構成をその動作とと もに述べる。
第三の本発明の実施の形態 2の可変長符号復号装置の構成は、 第三の本発 明の実施の形態 1の可変長符号復号装置の構成と同様であるが、 高速シフト 回路 2 0 0の構成および動作と、 時分割可変長符号語復号回路 3 0 0の動作 のみが異なる。 また、 実施の形態 1では、 可変長符号化された MP E G画像 データの符号語 1個づっは最大 1 6ビットまでのデータであるものとしたが 、 実施の形態 2では、 符号語 1個づっは最大 3 2ビットまでのデータである ものとする。 これらのこと力 ら、 実施の形態 2では、 高速シフト回路 2 0 0 の構成手段および動作と、 時分割可変長符号語復号回路 3 0 0の動作のみを 説明する。
図 2 5に、 実施の形態 2の可変長符号復号装置の高速シフト回路 2 0 0の ブロック図を示す。 その高速シフト回路 2 0 0は、 2ビットシフト回路 1 7 0 0、 4ビットシフト回路 1 9 0 0、 6ビットシフト回路 4 0、 8ビットシ フト回路 2 1 0 0、 1 0ビットシフト回路 4 1 0 0、 1 2ビットシフト回路 4 2 0 0、 1 4ビッ トシフト回路 4 3 0 0、 1 6ビットシフト回路 2 3 0 0 、 1 8ビットシフト回路 4 4 0 0、 2 0ビットシフト回路 4 5 0 0、 2 2ビ ッ トシフト回路 4 6 0 0、 2 4ビットシフト回路 4 7 0 0、 2 6ビッ トシフ ト回路 4 8 0 0、 2 8ビッ トシフト回路 4 9 0 0、 3 0ビットシフト回路 5 0 0 0、 3 2ビッ トシフト回路 5 1 0 0、 第 6選択回路 5 2 0 0、 1ビット シフト回路 1 5 0 0、 第 7選択回路 5 3 0 0、 および制御回路 2 5 0 0を備 えている。
2ビットシフト回路 1 7 0 0、 4ビットシフト回路 1 9 0 0、 8ビットシ フト回路 2 1 0 0、 1 6ビットシフト回路 2 3 0 0、 1ビットシフト回路 1 5 0 0および制御回路 2 5 0 0それぞれは、 実施の形態 1で説明したものと 同じものである。 6ビットシフト回路 4 0 0 0、 1 0ビットシフト回路 4 1 0 0、 1 2ビットシフト回路 4 2 0 0、 1 4ビットシフト回路 4 3 0 0、 1 8ビットシフト回路 4 4 0 0、 2 0ビットシフト回路 4 5 0 0、 2 2ビット シフト回路 4 6 0 0、 2 4ビットシフト回路 4 7 0 0、 2 6ビットシフト回 路 4 8 0 0、 2 8ビットシフト回路 4 9 0 0、 3 0ビットシフト回路 5 0 0 0、 3 2ビットシフト回路 5 1 0 0それぞれは、 各データストリームを、 そ れぞれ 6ビット、 1 0ビット、 1 2ビット、 1 4ビット、 1 8ビット、 2 0 ビット、 2 2ビット、 2 4ビット、 2 6ビット、 2 8ビット、 3 0ビット、 3 2ビットシフトさせる回路である。 第 6選択回路 5 2 0 0は、 上述した複 数のビットシフト回路のうちの、 いずれのビットシフト回路を使用するのか を指示する回路である。 第 7選択回路 5 3 0 0は、 1ビットシフト回路 1 5 0 0を使用する力否かを指示する回路である。 それら第 6選択回路 5 2 0 0 および第 7選択回路 5 3 0 0の指示は、 制御回路 2 5 0 0の制御に基づくも のである。 制御回路 2 5 0 0は、 第 6選択回路 5 2 0 0を制御して、 1ビッ トシフト回路 1 5 0 0以外の、 上述した複数のビットシフト回路のうちの、 いずれのビットシフト回路を使用するのかを判断する回路である。 また、 制 御回路 2 5 0 0は、 第 7選択回路 5 3 0 0を制御して 、 1ビットシフ ト回路 1 5 0 0を使用するのかを判断する回路でもある。 さて、 高速シフト回路 2 0 0が各データストリームをシフトするまでに、 制御回路 2 5 0 0は、 対応するデータストリームを何ビットシフトするのか という情報を入力する。 つまり時分割可変長符号語復号回路 3 0 0からの出 カデータが何ビットのデータであったのかという情報を入力する。
出力データのビット数が偶数である場合、 出力データのビット数の情報に 基づいて、 制御回路 2 5 0 0は、 第 6選択回路 5 2 0 0を介して、 その出力 データの語長に相当するビット数と同じのビット数のビットシフト回路を動 作させて、 対応するデータストリームを、 出力データのビット数分シフトさ せる。 その場合、 制御回路 2 5 0 0は、 1ビットシフト回路 1 5 0 0を用い ない。 例えば、 出力データが 1 6ビッ トのデータであった場合、 制御回路 2 5 0 0は、 第 6選択回路 5 2 0 0を介して、 1 6ビットシフト回路 2 3 0 0 を動作させて、 対応するデータストリームを、 1 6ビットシフト分させる。 他方、 出力データのビット数が奇数である場合、 出力データのビット数の 情報に基づいて、 制御回路 2 5 0 0は、 先ず、 第 6選択回路 5 2 0 0を介し て、 その出力データの語長のビット数より 1小さいビット数に相当するビッ ト数と同じのビット数のビットシフト回路を動作させて、 対応するデータス トリームを、 出力データの語長のビット数より 1小さいビット数分シフトさ せる。 次に、 制御回路 2 5 0 0は、 第 7選択回路 5 3 0 0を介して 1ビット シフ ト回路 1 5 0 0を動作させ、 さらに 1 ビッ ト分シフ トする。 例えば、 出 力データが 1 7ビットのデータであった場合、 制御回路 2 5 0 0は、 先ず、 第 6選択回路 5 2 0 0を介して 1 6ビットシフト回路 2 3 0 0を動作させて 、 対応するデータス トリームを 1 6ビッ トシフ ト分し、 次に、 第 7選択回路 5 3 0 0を介して 1ビットシフト回路 1 5 0 0を動作させて、 さらに 1ビッ ト分シフトし、 合計で 1 7ビットシフトする。
他方、 時分割可変長符号語復号回路 3 0 0の構成は、 図 2 2に示し、 実施 の形態 1で述べた構成と同様である。 しかしながら、 実施の形態 1での各符 号語が最大 1 6ビットまでであつたのに対し、 実施の形態 2での各符号語は 最大 3 2ビットまでのデータであるので、 時分割可変長符号語復号回路 3 0 0の動作が異なる。
つまり、 図 2 2の、 時分割可変長符号語復号回路 3 0 0の第 1判定回路 2
6 0 0は、 各データストリ一ムの最先の 1 6ビットのデータのなかの符号語 の有無を検出し、 符号語があれぱ最先の符号語を可変長復号して第 1レジス タ 2 7 0 0を介して第 2判定回路 2 8 0 0に出力する。 他方、 符号語がなけ れば、 第 1判定回路 2 6 0 0は、 各データストリームの最先の 1 6ビットの データを、 そのまま第 1レジスタ 2 7 0 0に出力する。
同様に、 時分割可変長符号語復号回路 3 0 0の第 2判定回路 2 8 0 0は、 各データストリームの最先の 2 4ビットのデータのなかの符号語の有無を検 出し、 符号語があれば最先の符号語を可変長復号して第 2レジスタ 2 9 0 0 を介して第 3判定回路 3ひ 0 0に出力する。 他方、 符号語がなければ、 第 2 判定回路 2 8 0 0は、 各データストリームの最先の 2 4ビットのデータを、 そのまま第 2レジスタ 2 9 0 0に出力する。
さらに同様に、 時分割可変長符号語復号回路 3 0 0の第 3判定回路 3 0 0 0は、 各データストリームの最先の 3 2ビットのデータのなかの最先の符号 語を検出し、 その符号語を可変長復号して第 3レジスタ 3 1 0 0を介して極 性調整回路 3 2 0 0に出力する。 また、 第 1判定回路 2 6 0 0、 第 2判定回路 2 8 0 0およぴ第 3判定回路 3 0 0 0それぞれは、 最先の可変長復号化された符号語を出力するとともに 、 出力データが何ビットのデータであったのかという情報を、 第 1データス トリームのデータに対しては第 1フラグメモリ 3 4 0 0、 第 2データストリ ームのデータに対しては第 2フラグメモリ 3 5 0 0、 第 3データストリーム のデータに対しては第 3フラグメモリ 3 6 0 0、 第 4データストリームのデ ータに対しては第 4フラグメモリ 3 7 0 0に、 それぞれ出力する。 各フラグ メモリは、 そのビットの情報を図 2 1の高速シフト回路 2 0 0の制御回路 2 5 0 0に出力する。
なお、 第三の本発明の入力手段として高速シフト回路 2 0 0、 可変長復号 化手段として時分割可変長符号語復号回路 3 0 0を用いた。
また、 上述した実施の形態では、 データストリームの数は 4であるものと したが、 データストリームの数は 4に限らず、 複数でありさえすればよい。 要するに、 高速シフト回路 2 0 0および時分割可変長符号語復号回路 3 0 0 は、 以下に示すようなものでありさえすればよい。 すなわち、 高速シフト回 路 2 0 0は、 先ず、 複数のデータストリームの可変長符号化された MP E G 画像データの最先の 6 4ビットづつのデータを、 互いに異なるタイミングで 順次連続的に入力する。 高速シフト回路 2 0 0がーつのデータストリーム力 らの MP E G画像データを入力し、 次に同じデータストリームからの MP E G画像データを入力するまでに、 時分割可変長符号語復号回路 3 0 0は、 そ のデータストリームからの最先の符号語を可変長復号するとともに、 その最 先の符号語の語長の情報を高速シフト回路 2 0 0に出力する。 そして、 時分 割可変長符号語復号回路 3 0 0が復号語を出力するとともに、 高速シフト回 路 2 0 0は、 復号された符号語と同じ長さの M P E G画像データを、 そのデ —タのデータストリームについてシフトする。
また、 実施の形態 1では、 可変長符号化された MP E G画像データの符号 語 1個づっは最大 1 6ビットまでのデータであるものとし、 実施の形態 2で は、 符号語 1個づっは最大 3 2ビットまでのデータであるものとしたが、 そ れら符号語 1個づつの最大語長は、 1 6ビットゃ 3 2ビッ卜に限るものでは ない。
また、 実施の形態 1では、 高速シフト回路 2 0 0は、 各データストリーム から最先の 6 ビットを入力するとしたが、 6 4ビットに限らず、 高速シフ ト回路 2 0 0は、 各データストリームから、 それぞれのストリームからのデ —タ量が所定の量となるように、 データ入力しさえすればよい。
また、 第 1判定回路 2 6 0 0、 第 2判定回路 2 8 0 0、 第 3判定回路 3 0 0 0それぞれは、 実施の形態 1では、 各データストリームの最先の 8ビット 、 1 2ビット、 1 6ビットのデータのなかの符号語の有無を検出し、 符号語 があればその符号語を可変長復号し、 実施の形態 2では、 各データストリー ムの最先の 1 6ビット、 2 4ビット、 3 2ビットのデータのなかの符号語の 有無を検出し、 符号語があればその符号語を可変長復号するとした。 しかし ながら、 第 1判定回路 2 6 0 0、 第 2判定回路 2 8 0 0、 第 3判定回路 3 0 0 0それぞれは、 上述したものに限らず、 要するに、 互いに異なる長さのデ ータのなかの符号語の有無を検出し、 符号語があればその符号語を可変長復 号しさえすればよい。 また、 判定回路の数は、 第 1判定回路 2 6 0 0、 第 2 判定回路 2 8 0 0、 第 3判定回路 3 0 0 0の 3に限らず、 複数でありさえす ればよい。 さらに、 高速シフト回路 2 0 0は、 上述した実施の形態では、 1ビットや 4ビット等の所定のビット数のデータを、 それぞれのデータストリーム毎に 、 シフトさせるビットシフト回路を複数個有するものであるとしたが、 高速 シフト回路 2 0 0は、 上述した 1ビットゃ 4ビット等のビット数に限らず、 要するに、 所定のビット数のデータを、 それぞれのデータストリーム毎に、 シフトさせるビットシフト回路を複数個有しさえすればよい。
以上説明したところから明らかなように、 第三の本発明は、 回路規模が小 さく、 可変長復号を高速で行う可変長符号復号装置を提供することができる。 産業上の利用可能性
以上説明したところから明らかなように、 第一の本発明は、 符号化された 画像データを復号するさい、 その画像の各部分に対する拡大縮小の程度の情 報に基づいて、 画像の変形を行う画像処理装置を提供することができる。 また、 第二の本発明は、 複数の M P E G画像データを再生して、 パーソナ ルコンピュータ等のディスプレイに、 同時に複数の画像を表示する場合でも 、 一つの装置で、 複数の M P E G画像データを柔軟に処理する画像データ処 理装置を提供することができる。
また、 第三の本発明は、 回路規模が小ざく、 可変長復号を高速で行う可変 長符号復号装置を提供することができる。

Claims

請 求 の 範 囲
1 . 画像の各部分に対する拡大縮小の程度の情報を入力する画像変形情報 入力手段と、 前記画像の符号化された画像データを入力するとともに、 前記 画像変形情報入力手段から前記画像の各部分に対する拡大縮小の程度の情報 を入力し、 その拡大縮小の程度の情報に基づいて、 前記画像データを、 前記 画像の各部分毎に復号し、 また、 前記拡大縮小の程度の情報とは無関係に前 記画像データ全てを復号する復号化手段と、 前記復号化手段からの前記全て の画像デ一タが復号された画像と、 前記画像変形情報入力手段からの前記画 像の各部分に対する拡大縮小の程度の情報と、 前記画像データの動きべク ト ルとを利用して、 前記画像の各部分毎に拡大縮小された参照画像を生成する 参照画像生成手段と、 前記復号化手段からの前記画像の各部分毎に復号され た画像と、 前記参照画像生成手段からの参照画像とを加算する加算手段とを 備えたことを特徴とする画像処理装置。
2 . 前記画像データがフレーム內符号化画像のデータである場合、 前記加 算手段は、 前記参照画像生成手段からの参照画像を利用しないことを特徴と する請求項 1記載の画像処理装置。
3 . 画像の各部分に対する拡大縮小の程度の情報を入力する画像変形情報 入力手段と、 前記画像の符号化された画像データを入力するとともに、 前記 画像変形情報入力手段から前記画像の各部分に対する拡大縮小の程度の情報 を入力し、 その拡大縮小の程度の情報に基づいて、 前記画像データを、 前記 画像の各部分毎に復号する復号化手段とを備えたことを特徴とする画像処理
4 . 前記復号化手段からの、 前記画像の各部分毎に復号された部分画像を 、 所定の順序に並べ替える並べ替え手段を備えたことを特徴とする請求項 3 記載の画像処理装置。
5 . 前記複号化手段、 前記加算手段、 または、 前記並べ替え手段からの画 像のフォーマツトを変換するフォーマツト変換手段を備えたことを特徴とす る請求項 1から 4のいずれかに記載の画像処理装置。
6 . 前記複号化手段、 前記加算手段、 前記並べ替え手段、 または、 前記フ ォーマッ ト変換手段からの画像を所定の画面の所定の位置にマッビングする マッピング手段を備えたことを特徴とする請求項 1から 5のいずれかに記載 の画像処理装置。
7 . 複数の画像データに対する拡大縮小の程度の情報を入力する拡大縮小 情報入力手段と、 画像データを処理する処理ュニッ トを複数個有し、 複数の 画像データを入力して画像処理する画像処理手段と、 前記拡大縮小情報入力 手段から前記拡大縮小の程度の情報を入力し、 前記画像処理手段の処理ュニ ット群の全部または一部を、 前記拡大縮小の程度の情報に基づいて、 その拡 大縮小の程度の情報に対応する画像データの拡大縮小処理に割り当てる割り 当て手段とを備え
、 前記画像処理手段は、 前記拡大縮小の程度の情報に基づき、 前記処理ュニ ッ 卜群の割り当てにしたがって、 複数の画像データを処理することを特徴と する画像データ処理装置。
8 . 前記画像データは、 複数個の画像について、 それぞれ符号化された M P E G画像データであり、 前記拡大縮小情報入力手段は、 複数個の前記 M P E G画像データに対するそれぞれの拡大縮小の程度の情報を入力し、 前記割 り当て手段は、 前記画像処理手段の処理ユニット群の全部または一部を、 前 記複数個の MP E G画像データに対するそれぞれの拡大縮小の程度の情報に 基づいて、 前記複数個の M P E G画像データの復号および拡大縮小処理に割 り当て、 前記画像処理手段は、 前記複数個の M P E G画像データを入力し、 前記処理ュニッ ト群の割り当てにしたがって、 前記複数個の MP E G画像デ 一タそれぞれにつレ、て、 全部または一部のデータを復号して拡大縮小処理す ることを特徴とする請求項 7記載の画像データ処理装置。
9 . 前記複数個の画像のうちのいずれかが重複して表示される場合、 前記 拡大縮小情報入力手段は、 その画像の重複状況の情報を入力し、 前記割り当 て手段は、 前記画像処理手段の処理ユニッ ト群のいずれもを、 前記画像の重 複状況の情報に基づいて、 画像が隠れる部分の M P E G画像データの復号お よび拡大縮小処理に割り当てないことを特徴とする請求項 8記載の画像デー タ処理装置。
1 0 . 前記拡大縮小情報入力手段は、 前記複数の画像データに対する処理 の優先順位の情報を入力し、 前記割り当て手段は、 前記画像処理手段の処理 ュニッ卜の全部または一部を、 前記複数の画像データに対する処理の優先順 位の情報をも考慮して、 前記複数の画像データの処理に割り当てることを特 徴とする請求項 7から 9のいずれかに記載の画像データ処理装置。
1 1 . 前記画像処理手段は、 メディア処理プロセッサであることを特徴と する請求項 7から 1 0のいずれかに記載の画像データ処理装置。
1 2 . 可変長符号化された MP E G画像データを有する、 複数のストリー ムから、 それぞれのストリームからのデータ量が所定の量となるように、 前 記 MP E G画像データを、 時分割で順次連続的に入力する入力手段と、 前記入力手段から前記所定の量の MP E G画像データを入力して可変長復 号し、 所定の復号語を可変長符号復号装置外部に出力するとともに、 その出 力される復号語の長さの情報を前記入力手段に出力する可変長復号化手段と を備え、
前記可変長複号化手段が前記所定の復号語を可変長符号復号装置外部に出 力するまでに、 前記可変長復号化手段は、 その出力する復号語の MP E G画 像データのストリーム以外のストリーム全てから前記所定の量の MP E G画 像データを入力し、
前記可変長複号化手段が前記所定の復号語を可変長符号復号装置外部に出 力するとともに、 その出力された復号語の MP E G画像データのストリーム の次のストリームの MP E G画像データのうちの所定の復号語を出力するま でに、 前記入力手段は、 前記可変長複号化手段が最後に可変長符号復号装置 外部に出力した復号語の MP E G画像データのストリームと同じストリーム から、 その出力された復号語の長さの情報を利用して MP E G画像データを 入力することを
特徴とする可変長符号復号装置。
1 3 . 前記可変長複号化手段は、 異なる語長の符号語を可変長復号する復 号回路を複数個有し、 それら複数個の復号回路それぞれは、 同一のタイミン グに、 互いに異なるストリームからの前記所定の量の MP E G画像データを 可変長復号することを特徴とする請求項 1 2記載の可変長符号復号装置。
1 4 . 前記入力手段は、 異なる長さの MP E G画像データをシフトするシ フト回路を複数個有し、 前記可変長複号化手段が前記所定の復号語を可変長 符号復号装置外部に出力するさいに、 前記入力手段は、 前記複数個のシフト 回路の全部または一部を利用して、 前記所定の復号語の語長分の MP E G画 像データをシフ卜することを特徴とする請求項 1 2または 1 3記載の可変長 符号復号装置。
PCT/JP1998/005354 1997-12-01 1998-11-27 Image processor, image data processor and variable length encoder/decoder WO1999029112A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US09/355,189 US6600785B1 (en) 1997-12-01 1998-11-27 Image processor, image data processor and variable length encoder/decoder
EP98955968A EP0957638A4 (en) 1997-12-01 1998-11-27 Image data processor and variable length coder and decoder

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP33059997A JPH11164299A (ja) 1997-12-01 1997-12-01 可変長符号復号装置
JP9/330599 1997-12-01
JP9/330598 1997-12-01
JP33059897A JPH11164198A (ja) 1997-12-01 1997-12-01 画像データ処理装置

Publications (1)

Publication Number Publication Date
WO1999029112A1 true WO1999029112A1 (en) 1999-06-10

Family

ID=26573582

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1998/005354 WO1999029112A1 (en) 1997-12-01 1998-11-27 Image processor, image data processor and variable length encoder/decoder

Country Status (4)

Country Link
US (1) US6600785B1 (ja)
EP (1) EP0957638A4 (ja)
CN (1) CN1138420C (ja)
WO (1) WO1999029112A1 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7046852B2 (en) * 2001-09-13 2006-05-16 Sharp Laboratories Of America, Inc. Fast image decompression via look up table
US6882685B2 (en) * 2001-09-18 2005-04-19 Microsoft Corporation Block transform and quantization for image and video coding
US6904176B1 (en) * 2001-09-19 2005-06-07 Lightsurf Technologies, Inc. System and method for tiled multiresolution encoding/decoding and communication with lossless selective regions of interest via data reuse
US7242713B2 (en) * 2002-05-02 2007-07-10 Microsoft Corporation 2-D transforms for image and video coding
US7379496B2 (en) * 2002-09-04 2008-05-27 Microsoft Corporation Multi-resolution video coding and decoding
JP4069818B2 (ja) * 2003-07-17 2008-04-02 株式会社日立製作所 帯域監視方法及び帯域監視機能を備えたパケット転送装置
US7822123B2 (en) * 2004-10-06 2010-10-26 Microsoft Corporation Efficient repeat padding for hybrid video sequence with arbitrary video resolution
US7649539B2 (en) * 2004-03-10 2010-01-19 Microsoft Corporation Image formats for video capture, processing and display
US7487193B2 (en) * 2004-05-14 2009-02-03 Microsoft Corporation Fast video codec transform implementations
US8442108B2 (en) 2004-07-12 2013-05-14 Microsoft Corporation Adaptive updates in motion-compensated temporal filtering
US8340177B2 (en) * 2004-07-12 2012-12-25 Microsoft Corporation Embedded base layer codec for 3D sub-band coding
US8374238B2 (en) * 2004-07-13 2013-02-12 Microsoft Corporation Spatial scalability in 3D sub-band decoding of SDMCTF-encoded video
US8243820B2 (en) * 2004-10-06 2012-08-14 Microsoft Corporation Decoding variable coded resolution video with native range/resolution post-processing operation
US7839933B2 (en) * 2004-10-06 2010-11-23 Microsoft Corporation Adaptive vertical macroblock alignment for mixed frame video sequences
US9071847B2 (en) * 2004-10-06 2015-06-30 Microsoft Technology Licensing, Llc Variable coding resolution in video codec
US7689052B2 (en) * 2005-10-07 2010-03-30 Microsoft Corporation Multimedia signal processing using fixed-point approximations of linear transforms
US7956930B2 (en) 2006-01-06 2011-06-07 Microsoft Corporation Resampling and picture resizing operations for multi-resolution video coding and decoding
US8880571B2 (en) * 2006-05-05 2014-11-04 Microsoft Corporation High dynamic range data format conversions for digital media
US8942289B2 (en) * 2007-02-21 2015-01-27 Microsoft Corporation Computational complexity and precision control in transform-based digital media codec
US8054886B2 (en) 2007-02-21 2011-11-08 Microsoft Corporation Signaling and use of chroma sample positioning information
US8107571B2 (en) * 2007-03-20 2012-01-31 Microsoft Corporation Parameterized filters and signaling techniques
US8953673B2 (en) * 2008-02-29 2015-02-10 Microsoft Corporation Scalable video coding and decoding with sample bit depth and chroma high-pass residual layers
KR100939917B1 (ko) 2008-03-07 2010-02-03 에스케이 텔레콤주식회사 움직임 예측을 통한 부호화 시스템 및 움직임 예측을 통한부호화 방법
US8711948B2 (en) * 2008-03-21 2014-04-29 Microsoft Corporation Motion-compensated prediction of inter-layer residuals
US9571856B2 (en) 2008-08-25 2017-02-14 Microsoft Technology Licensing, Llc Conversion operations in scalable video encoding and decoding
US8213503B2 (en) 2008-09-05 2012-07-03 Microsoft Corporation Skip modes for inter-layer residual video coding and decoding
US10771783B2 (en) 2018-06-11 2020-09-08 Google Llc Transforms for large video and image blocks

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04250773A (ja) * 1991-01-28 1992-09-07 Murata Mach Ltd 復号化装置
JPH0564175A (ja) * 1991-09-03 1993-03-12 Nec Corp 適応多重化方式
JPH06233271A (ja) * 1993-02-05 1994-08-19 Ricoh Co Ltd 動画像復号化方法
JPH06237386A (ja) * 1993-02-10 1994-08-23 Ricoh Co Ltd 画像処理装置
JPH07222151A (ja) * 1994-02-01 1995-08-18 Canon Inc 画像処理方法及び装置
JPH08275148A (ja) * 1994-12-30 1996-10-18 Samsung Electron Co Ltd 映像圧縮ビットストリームのスタートコード検出装置
JPH0916160A (ja) * 1995-06-29 1997-01-17 Seiko Epson Corp コンピュータシステム
JPH0993139A (ja) * 1995-09-28 1997-04-04 Ikegami Tsushinki Co Ltd 可変長符号の復号方法および装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5173948A (en) * 1991-03-29 1992-12-22 The Grass Valley Group, Inc. Video image mapping system
JP3428033B2 (ja) * 1992-02-19 2003-07-22 株式会社日立製作所 ディジタルvtr
JP3093494B2 (ja) * 1992-11-18 2000-10-03 株式会社東芝 多様性信号処理装置
DE69516734T2 (de) * 1994-02-01 2000-09-28 Canon Kk Bildverarbeitungsverfahren und -gerät
US5812787A (en) * 1995-06-30 1998-09-22 Intel Corporation Video coding scheme with foreground/background separation
KR100219144B1 (ko) * 1996-05-14 1999-09-01 김광호 비디오데이타 복호화장치

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04250773A (ja) * 1991-01-28 1992-09-07 Murata Mach Ltd 復号化装置
JPH0564175A (ja) * 1991-09-03 1993-03-12 Nec Corp 適応多重化方式
JPH06233271A (ja) * 1993-02-05 1994-08-19 Ricoh Co Ltd 動画像復号化方法
JPH06237386A (ja) * 1993-02-10 1994-08-23 Ricoh Co Ltd 画像処理装置
JPH07222151A (ja) * 1994-02-01 1995-08-18 Canon Inc 画像処理方法及び装置
JPH08275148A (ja) * 1994-12-30 1996-10-18 Samsung Electron Co Ltd 映像圧縮ビットストリームのスタートコード検出装置
JPH0916160A (ja) * 1995-06-29 1997-01-17 Seiko Epson Corp コンピュータシステム
JPH0993139A (ja) * 1995-09-28 1997-04-04 Ikegami Tsushinki Co Ltd 可変長符号の復号方法および装置

Non-Patent Citations (1)

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

Also Published As

Publication number Publication date
EP0957638A4 (en) 2008-06-04
CN1251724A (zh) 2000-04-26
EP0957638A1 (en) 1999-11-17
US6600785B1 (en) 2003-07-29
CN1138420C (zh) 2004-02-11

Similar Documents

Publication Publication Date Title
WO1999029112A1 (en) Image processor, image data processor and variable length encoder/decoder
CN102769728B (zh) 共享存储器多视频频道显示装置和方法
US5790110A (en) System and method for generating video in a computer system
CN102523372B (zh) 共享存储器的多视频频道显示装置和方法
KR100201981B1 (ko) 메모리제어장치 및 그것을 사용한 화상디코더
JP3189031B2 (ja) データレート変換方法及び装置
CN101485198B (zh) 共享存储器多视频频道显示装置和方法
US20060008154A1 (en) Video compression and decompression to virtually quadruple image resolution
JP6719200B2 (ja) デジタル信号の伝送装置及びデジタル信号の伝送方法
US5528315A (en) Image processing memory integrated circuit
CN102474589B (zh) 在图像处理系统中变换图像的设备和方法
US6501508B1 (en) Video format converter for digital receiving system
KR19990060489A (ko) 에이치디티브이 비디오 디코더
WO2000065830A1 (fr) Dispositif et procede de conversion d'image
KR100575179B1 (ko) 화상데이타처리장치
CN101461233A (zh) 共享存储器多视频通道显示装置和方法
US20020176503A1 (en) Image processing apparatus , image processing method, and supplying medium
JP2010276686A (ja) 画像制御装置
JP2001339722A (ja) マルチチャネル画像符号化装置、復号化表示装置、符号化方法および復号化表示方法
WO2000067480A1 (fr) Dispositif et procede de conversion d'un signal d'image
JPH077732A (ja) 画像処理装置
JP2007336239A (ja) デジタル放送受信装置及びデジタル放送信号の保存・再生方法
JPH11164198A (ja) 画像データ処理装置
JP2011091590A (ja) 復号化装置
JPH11146400A (ja) 画像処理装置

Legal Events

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

Ref document number: 98803742.4

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): CN US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

WWE Wipo information: entry into national phase

Ref document number: 09355189

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 1998955968

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWP Wipo information: published in national office

Ref document number: 1998955968

Country of ref document: EP