WO2002080575A1 - Image processing apparatus, image processing method, image processing program, and recording medium - Google Patents

Image processing apparatus, image processing method, image processing program, and recording medium Download PDF

Info

Publication number
WO2002080575A1
WO2002080575A1 PCT/JP2002/003063 JP0203063W WO02080575A1 WO 2002080575 A1 WO2002080575 A1 WO 2002080575A1 JP 0203063 W JP0203063 W JP 0203063W WO 02080575 A1 WO02080575 A1 WO 02080575A1
Authority
WO
WIPO (PCT)
Prior art keywords
activity
act
normalization
image processing
average
Prior art date
Application number
PCT/JP2002/003063
Other languages
English (en)
French (fr)
Inventor
Akira Sugiyama
Original Assignee
Sony Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corporation filed Critical Sony Corporation
Priority to US10/473,494 priority Critical patent/US7289676B2/en
Priority to JP2002577446A priority patent/JPWO2002080575A1/ja
Publication of WO2002080575A1 publication Critical patent/WO2002080575A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4342Demultiplexing isochronously with video sync, e.g. according to bit-parallel or bit-serial interface formats, as SDI
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/112Selection of coding mode or of prediction mode according to a given display mode, e.g. for interlaced or progressive display mode
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/124Quantisation
    • 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/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23602Multiplexing isochronously with the video sync, e.g. according to bit-parallel or bit-serial interface formats, as SDI

Definitions

  • the present invention compresses and encodes an image signal by quantizing the image signal in block units, and in this case, controls the generated code amount so that the code amount for each frame is equal to or less than a certain amount.
  • the present invention relates to a processing device, an image processing method, an image processing program, and a recording medium. Background art
  • a method of compressing and encoding image data by quantizing the image data in units of blocks each having a predetermined number of pixels has been known.
  • MPEG2 Motion Pictures Experts Group 2
  • image data is compression-coded by performing DCT (Discrete Cosine Transform) on the image data in block units each having a predetermined number of pixels, and performing quantization on the obtained DCT coefficients.
  • DCT Discrete Cosine Transform
  • MPEG2 the quantization step at the time of quantization is specified by the quantization scale, and compression encoding of the DC C coefficient is performed.
  • an index called Activity indicating the complexity and smoothness of the image to be compressed is calculated, and the image quality is optimized using adaptive quantization based on this activity.
  • Activity an index indicating the complexity and smoothness of the image to be compressed is calculated, and the image quality is optimized using adaptive quantization based on this activity.
  • This is a method of finely quantizing using a high quantization scale, and conversely, in a region where the image in which image quality degradation is not conspicuous is complicated, coarse quantization is performed using a quantization scale with a coarse quantization step. This is an effective method for optimizing the image quality within the specified code amount.
  • the region of each image is divided into pixel blocks of a predetermined size, and quantization and DCT are performed for each block.
  • a block of 8 pixels ⁇ 8 lines is defined as a minimum processing unit. It is defined that DCT is performed on the block of 8 pixels ⁇ 8 lines, and the DCT coefficient obtained by the DCT is quantized in units of macroblocks of 16 pixels ⁇ 16 lines.
  • adaptive quantization means that the quantization scale Q j is set so that quantization is performed using a different quantization scale Q j depending on the image state, for example, in order to control the amount of code generated in one frame.
  • High image quality is achieved by changing the activity of each macroblock. For example, in a flat region of an image in which image quality degradation is visually conspicuous, quantization is performed using a quantization scale Q j having finer quantization steps, and a complex image region of a pattern in which image quality degradation is relatively inconspicuous Then, the quantization scale Q j is changed by the activity so that quantization is performed using the quantization scale Q j having a coarser quantization step.
  • the activity uses the pixel values of the luminance signal in the original image instead of the prediction error, and a total of eight blocks of four blocks in the frame DCT coding mode and four blocks in the field DCT coding mode are used. It is calculated using the pixel value of the mark. For example, for the j-th macroblock, by performing the operations given by the following equations (1) to (3) in the order of equation (3), equation (2), and equation (1), the activity actj becomes Desired.
  • P k is the pixel value in the luminance signal block of the original image
  • equation (3) the sum of 64 pixel values in the 8 ⁇ 8 block is divided by 64 to obtain the value in the block. seeking the average value Pavg pixel value P k.
  • equation (2) the difference between the average value Pavg and the pixel value P k is calculated, and the average difference value var_sblk in the 8 ⁇ 8 block is calculated.
  • equation (1) the minimum value of the average difference value va and sblk is adopted, and the activity actj of the j-th macroblock is obtained.
  • the minimum value is adopted because if there is a flat portion even in a part of the macroblock, it is necessary to finely quantize the macroblock.
  • avg_act is the average value (average activity) of the activity actj in the frame encoded immediately before the frame (picture) currently being processed.
  • the quantization scale mquantj considering the visual characteristics is given by the following equation (5) based on the quantization scale Qj separately obtained for controlling the generated code amount of one frame.
  • the normalization activity Nactj is obtained by the above-described equation (4).
  • the normalization range is “0.5” to “2.0”, regardless of the picture frame. Therefore, for example, in a frame with a flat picture, there is a problem that the quantization value between the macroblocks is too different.
  • an object of the present invention is to provide an image processing apparatus, an image processing method, an image processing program, and an image processing method capable of normalizing an activity in accordance with the characteristics of a picture of a frame and optimizing image quality by adaptive quantization.
  • the present invention provides an average activity calculating means for calculating an average activity from image data, and operates a normalization range according to the average activity calculated by the average activity calculating means. Means for calculating the normalized activity using the average activity based on the normalized range, and image data using the normalized activity calculated by the normalized activity calculating means.
  • An image processing apparatus comprising: a quantization unit that performs quantization.
  • the present invention also provides a step of calculating an average activity from image data, and a step of dynamically setting a normalization range according to the average activity calculated in the step of calculating the average activity. Calculates the normalized activity using the average activity based on the normalized range, and quantizes the image data using the normalized activity calculated in the normalized activity calculation step.
  • This is an image processing method characterized by having the following quantization steps.
  • the present invention also provides an image processing program for causing a computer to execute an image processing method for quantizing image data, the image processing method comprising: calculating an average activity from input image data; Normalization that dynamically sets the normalization range according to the average activity calculated in the step and the average activity calculation step, and calculates the normalized activity using the average activity based on the normalization range.
  • An image processing program comprising: an activity calculation step; and a quantization step of quantizing an image data using the normalized activity calculated in the normalization activity calculation step. is there.
  • the present invention provides a recording medium in which an image processing program for causing a computer to execute an image processing method for quantizing image data is provided, wherein the image processing method calculates an average activity from input image data.
  • the normalization range is dynamically set according to the average activity calculated in the average activity calculation step and the average activity calculated in the average activity calculation step, and the normalized activity is calculated using the average activity based on the normalization range.
  • the present invention dynamically sets a normalization range in accordance with the average activity calculated from the input image data, and uses the average activity based on the normalization range. Since the activity is calculated and the image data is quantized using the calculated normalization activity, quantization can be performed according to the characteristics of the image.
  • FIG. 1 is a graph showing the characteristics of an example of the expression representing the normalization according to the second example.
  • FIG. 2 is a graph showing the characteristics of an example of the normalization according to MPEG TM5.
  • Fig. 4 shows an example of a mixture of complex and flat patterns
  • Fig. 5 shows an example of an image composed of entirely flat patterns.
  • a schematic diagram showing an example of a normalization activity when the normalization by MPEG TM5 is used shows the normalization according to the present invention for an image composed of an entirely flat pattern.
  • Fig. 7 is a schematic diagram showing an example of the normalization activity when using a complex pattern.
  • FIG. 8 is a schematic diagram illustrating an example of a normalization activity when using normalization
  • FIGS. 9A and 9B are schematic diagrams showing examples of activities
  • FIG. 10A is a block diagram showing an example of the configuration of a digital VTR to which an embodiment of the present invention is applied.
  • FIG. 10B and FIG. 10C are block diagrams showing the configuration of an example of the MPEG encoder more specifically
  • FIGS. 12A, 12B and 12C are schematic diagrams showing an example of the configuration of a stream transferred in each section of the MPEG encoder
  • FIGS. 13A and 13B are schematic diagrams showing an example of the configuration of a stream to be transferred.
  • FIGS. 14A and 14B are schematic diagrams showing an example of the configuration of a stream transferred in each unit of the MPEG encoder
  • FIGS. , FIG. 15B and FIG. 15C are schematic diagrams showing an example of the configuration of a stream transferred in each unit of the MPEG encoder
  • FIG. 17 is a schematic diagram showing a configuration example of a stream transferred in each unit of the MPEG encoder.
  • FIG. 1 is a block diagram showing an example of a structure for calculating a normalized activity according to the present invention.
  • the normalized activity of the target area is determined by the characteristics of the image of the target area, for example, the flatness and complexity of the picture of the target area, that is, the average activity. Is obtained by dynamically changing the normalization range based on. Based on the thus obtained normalized activity, the image of the target range is quantized.
  • the normalization range of the activity is narrowed for an image having a flat frame as a whole.
  • quantization can be performed using activities that are nearly uniform in the entire image, and uniform flatness can be ensured in the entire image, and high image quality can be obtained.
  • the range of activity normalization is increased.
  • a large amount of code is allocated to a flat area of a pattern in which noise is conspicuous, and fine quantization is performed. A high quality image can be obtained.
  • norm_act [m] ⁇ norm_gainxact [m] + avg_act ⁇
  • the equation (7) is a coefficient “2” of the equation (4) in the method for calculating the normalized activity by the TM 5 of MPEG, which has already been described in the related art.
  • the activity act [m] is a very large value for the average activity avg_act, then the normalized activity norm_act [m] approaches the value norm_gain. That is, the normalization activity norm-act [m] for each macroblock is normalized to the range of 1 / norn to gain power, norm-gain.
  • the value norm_gain is proportional to the average activity avg_act, as shown in equation (6). Therefore, a frame with a small average activity, avg_act, and a flat picture has a narrower range of normalization, and the quantization value between macroblocks is not much different.
  • the activity of a complex frame with a large avg_act pattern has a wide range of normalization, positively differentiates the quantization value between macroblocks, and performs fine quantization on flat macroblocks. Complex macroblocks are coarsely quantized.
  • Equations (8) and (9) show how to calculate the normalized activity norm-act [m] for each macroblock according to the second example.
  • Equations (8) and (9) the meaning of each value is the same as in Equations (6) and (7) described above.
  • norm_gain at txavg_ac t + 1
  • Equations (8) and (9) in the second example as in Equations (6) and (7) in the first example described above, the normalization activity for each macroblock norm—act [m] [Well, it is normalized to the range of l / norm_gain force, norm-gain. Therefore, as in the first example described above, in an image with a small average activity avg_act and a flat pattern, quantization is performed uniformly, and in an image with a large average activity avg_act and a complex image, a macroblock is used. The difference between the quantization values between them can be positively differentiated.
  • the activity act [m] on the dividend side and the average activity avg-act [m] on the divisor side are respectively squared with respect to the first example described above. Therefore, the difference in the normalized activity norm_act [m] with respect to the change in the value of the average activity avg_act and the value of the activity act [m] for each macroblock can be more remarkable than the result of the first example, More favorable results are obtained.
  • the second example will be mainly described.
  • FIG. 1 is a graph showing the characteristics of an example of the equations (8) and (9) representing the normalization according to the second example described above.
  • FIG. 2 is a graph showing a characteristic of an example of the normalization equation (4) of the MPEG using TM5 described in the background art.
  • the X axis, the Y axis, and the Z axis indicate the average activity avg_act, the activity act [m], and the normalized activity norm—act [m], respectively.
  • the ranges “female”, “N ISE”, “sheep” and “turf” shown in FIGS.
  • the range of the normalized activity norm-act [in] in the corresponding part of the sample images shown in FIGS. 3 and 4 is shown.
  • Fig. 3 is an example of an image composed entirely of flat pictures.
  • the pictures presented in the background are composed of figures each painted in a single color or several colors.
  • the “turf” and “sheep” parts, which can be said to be simple configurations, are both part of the background painting.
  • Fig. 4 is an example of an image in which a complex picture and a flat picture are mixed. It consists of a “female” framed with a circle in the center and a “N ⁇ I S E” part around it.
  • the “female” part is a relatively flat pattern, as in Fig. 3, but the surrounding “NO ISE” part has low correlation with the adjacent part when viewed at the pixel level, and is a complicated pattern. It is.
  • g is izb as norm_gainfe, rate.
  • the activity act [in] is displayed only up to 64, so it is difficult to understand.
  • the normalized activity norm_act [m] is 1 / It can be seen that it is distributed in the normalized range of norm_act [m] ⁇ 2.
  • the normalized activity norm_act [m] is broad for "NO ISE” which is a complicated pattern in the same image. It can be seen that a narrow range is assigned to “female”, whose area is a relatively flat pattern.
  • the range of the normalized activity norm_act [in] of “N ⁇ ISE” and “female” is equally divided for “N ⁇ ISE” and “female” respectively. Has been applied.
  • the range of the normalized activity norm-act [m] is larger than that of MPEG TM5 in FIG. Figure 1 is smaller.
  • FIGS. 5 to 8 show the normalized activity norm_act [m] by the MPEG TM 5 and the normalized activity according to the present invention in each of the sample images shown in FIGS. 3 and 4 described above. Shows the distribution of norm_act [in] in the image. In Fig. 5 to Fig. 8, the " ⁇ " (black circle) in the figure indicates that the diameter is the relative value of the normalization activity norm_act [m] at the corresponding position (macroblock) in the image. Shown in 5 and 6 correspond to FIG. 3 described above, and FIGS. 7 and 8 correspond to FIG. 4 described above.
  • FIG. 5 shows an example of the normalization activity no rm_act [m] when the image shown in FIG. 3 described above is used by using the conventional technique of normalizing MPEG by TM5.
  • a macroblock that contains a flat image eg, a portion of the calendar without text, the front side of the train
  • a complex image eg, a picture of a calendar
  • Macro-blocks including the part and the tree in the upper left are obtained as a large-valued normalized activity norm_act [m].
  • the normalized activity norm_act [m] changes greatly for each macro block. You can see that it is.
  • FIG. 6 shows an example of the normalization activity norm-act [m] when the normalization according to the present invention is used for the image shown in FIG. 3 described above.
  • the variation of the size of "same (black circle)" is small, and the value of the normalized activity norm_act [m] is relatively uniform over the entire image.
  • Adaptive quantization quantizes with a quantization value proportional to the value of the normalization activity norm_act [m], so that the entire image is relatively uniformly quantized.
  • FIG. 7 shows an example of the normalization activity norm_act [m] in the case of using the normalization of MPEG by TM5, which is a conventional technique, with respect to the image of FIG. 4 described above.
  • the ratio of the diameter of “Hata (black circle)” indicating the value of the normalized activity norm_act [m] is changed from that of FIG. 5 described above.
  • a macroblock including a flat image has a small-valued normalization activity norm_act [m], and a complex image (“NO The macro block including the “ISE” part) is obtained as a large-valued normalized activity norm_act [m], and it can be seen that the normalized activity norm_act [m] changes for each macro block.
  • the code amount is taken in a macroblock including a very complicated image such as a noise (N ⁇ ISE) part, and relatively,
  • the code amount of a macroblock including a flat image is limited.
  • the image quality of a macroblock including a flat image which is visually noticeable, deteriorates.
  • FIG. 8 shows an example of the normalized activity norm_act [m] when the normalization according to the present invention is used for the image shown in FIG. 4 described above.
  • the range is set to be larger than that of an image having a smaller average activity avg-act, for example, l / 3 ⁇ norm_act [m] ⁇ 3, and is set as a wide normalized range.
  • a macroblock containing a flat image has a smaller normalization activity norm_act [m]
  • a macroblock containing a very complex image such as a noise portion has a larger normalization activity norm—act [ m].
  • the adaptive quantization is changed according to the characteristics of an image such as a picture, and it is possible to achieve an image quality optimal for the characteristics of the image in terms of visual characteristics.
  • FIGS. 9A and 9B show an example of the configuration of a digital VTR to which an embodiment of the present invention is applied.
  • the digital VTR enables a digital video signal compressed and encoded by the MPEG method to be directly recorded on a recording medium.
  • the signals input from the outside to this recording system are two types of serial digital interface signal, analog interface signal, and control signal, SDI (Serial Data Interface) signal and SDTI (Serial Data Transport Interface) signal. Is the external reference signal REF.
  • SDI Serial Data Interface
  • SDTI Serial Data Transport Interface
  • SDI is an interface specified by SMPTE for transmitting (4: 2: 2) component video signals, digital audio signals, and additional data.
  • the SDTI is an interface for transmitting an MPEG elementary stream (hereinafter, MPEGES), which is a stream in which a digital video signal is compression-encoded by the MPEG method.
  • MPEGES MPEG elementary stream
  • MPEGES is separated into access units, and packed in frame-unit packets.
  • SDTI The CP uses ample transmission bandwidth (27 MHz or 36 MHz at clock rate, 270 Mbps or 360 Mbps at stream bit rate), and takes 1 frame period It is possible to send ES in burst.
  • the SDI signal transmitted by SDI is input to the SDI input unit 101. Further, an analog input signal composed of an analog video signal is input to the analog input section 120.
  • the analog input section 120 converts the input analog input signal into a digital signal, and maps the signal to, for example, the above-mentioned SDI format and outputs the signal.
  • the SDI signal converted from the analog input signal and mapped to the SDI format is input to the SDI input section 10 Supplied to 1.
  • the SDI input section 101 converts the supplied SDI signal from a serial signal to a parallel signal and outputs it. At the same time, it extracts the input synchronization signal, which is the phase reference of the input contained in the SDI signal, and generates a timing generator Output to
  • the SDI input unit 101 separates a video signal and an audio signal from the converted parallel signal.
  • the separated video input signal and audio input signal are output to the MPEG encoder 103 and the delay circuit 104, respectively.
  • the timing generator TG102 extracts a reference synchronization signal from the input external reference signal REF.
  • the timing generator TG synchronizes the reference synchronizing signal and the input synchronizing signal supplied from the SDI input section 101 with a predetermined reference signal to generate the evening signal necessary for this digital VTR. Generate and supply to each block as evening pulse.
  • the MPEG encoder 103 converts the input video input signal into coefficient data by DCT conversion, quantizes the coefficient data, and then performs variable length coding.
  • the variable length coded (VLC) data output from the MPEG encoder 103 is an elementary stream (ES) compliant with MPEG2. This output is supplied to one input terminal of a recording-side multi-format converter (hereinafter, referred to as recording-side MFC) 106.
  • recording-side MFC recording-side multi-format converter
  • the delay circuit 104 functions as a delay line for adjusting the input audio input signal to the processing delay of the video signal in the MPEG encoder 103 without any compression. .
  • the audio signal delayed by the delay circuit 104 is output to the ECC encoder 107. This is a directory according to this embodiment. This is because audio signals are treated as uncompressed signals in digital VTRs.
  • the SDTI signal transmitted and supplied from outside by the SDTI is input to the SDTI input unit 105.
  • the SDTI signal is synchronously detected by the SDTI input section 105. Then, it is temporarily stored in the buffer, and the elementary stream is extracted.
  • the extracted elementary stream is supplied to the other input terminal of the MFC 106 on the recording side.
  • the synchronization signal obtained by the synchronization detection is supplied to the above-described timing generator TG102 (not shown).
  • the SDTI input section 105 further extracts a digital audio signal from the input SDTI signal.
  • the extracted digital audio signal is supplied to the ECC encoder 107.
  • the digital VTR according to the embodiment can directly input MPEGES independently of the baseband video signal input from the SDI input unit 101.
  • the recording-side MFC circuit 106 has a stream converter and a selector, and any one of the MPEGES supplied from the SDI input unit 101 and the SDTI input unit 105 is selected.
  • the DCT coefficients of the selected MPEGES are collected for each frequency component through a plurality of DCT blocks constituting one macroblock, and the collected frequency components are sorted in order from the low frequency component.
  • the stream in which the coefficients of MPEGES are rearranged is hereinafter referred to as a conversion element stream. By rearranging MPEGES in this way, as many DC coefficients and low-order AC coefficients as possible during search playback are picked up, contributing to the improvement of the quality of search images.
  • the conversion element stream is supplied to the ECC encoder 107.
  • the ECC encoder 107 is connected to a large-capacity main memory. No), a packing and shuffling unit, an outer code encoder for audio, an outer code encoder for video, an inner code encoder, an audio shuffling unit and a video shuffling unit are built-in. Also,
  • the ECC encoder 109 includes a circuit for adding an ID in sync block units and a circuit for adding a synchronization signal.
  • a product code is used as an error correction code for a video signal and an audio signal.
  • the product code encodes an outer code in the vertical direction of a two-dimensional array of video signals or audio signals, encodes an inner code in the horizontal direction, and double-codes data symbols.
  • a Reed-Solomon code can be used as the outer and inner codes.
  • the conversion element output stream output from the MFC circuit 106 is supplied to the ECC encoder 107, and the audio signal output from the SDT I input section 105 and the delay circuit 104 is supplied to the ECC encoder 107. Is supplied.
  • the ECC encoder 107 performs shuffling and error correction coding on the supplied converted elementary stream and audio signal, adds an ID and a synchronization signal for each sync block, and outputs the data as recording data.
  • the recording data output from the ECC encoder 107 is converted into a recording RF signal by an equalizer EQ 108 including a recording amplifier.
  • the recording RF signal is supplied to a rotating drum 109 provided with a rotating head in a predetermined manner, and is recorded on a magnetic tape 110.
  • a plurality of magnetic heads having different azimuths of heads forming adjacent tracks are attached to the rotating drum 109.
  • the scramble processing may be performed on the recording data as needed. Also, digital modulation may be performed at the time of recording. Response class 4 and video code may be used. Note that the equalizer 108 includes both a configuration on the recording side and a configuration on the reproduction side.
  • a reproduction signal reproduced by the rotating drum 109 from the magnetic tape 110 is supplied to a reproduction-side configuration of an equalizer 108 including a reproduction amplifier and the like.
  • the equalizer 108 performs equalization and waveform shaping on the reproduced signal. Demodulation of digital modulation, video decoding, etc. are performed as necessary.
  • the output of the equalizer 108 is supplied to the ECC decoder 111.
  • the ECC decoder 111 performs processing reverse to that of the ECC encoder 107 described above, and has a large-capacity main memory, an inner code decoder, a deshuffling unit for audio and video, and an outer code decoder. including. Further, the ECC decoder 111 includes a deshuffling and depacking unit and a data interpolation unit for video. Similarly, for audio, it includes an audio AUX separation unit and a data interpolation unit.
  • the ECC decoder 1 1 1 detects synchronization for the playback data, detects the synchronization signal added to the head of the sync block, and cuts out the sync block.
  • the reproduced data is subjected to inner code error correction for each sync block, and then the sync block is subjected to ID interpolation processing.
  • the reproduction data with the interpolated ID is separated into video data and audio data.
  • Video data and audio data are each subjected to deshuffling processing, and the order of shuffled data during recording is restored. Error correction of the outer code is performed for each deshuffling event.
  • an error flag is set for data having an error that exceeds the error correction capability and cannot be corrected.
  • a signal ERR indicating data containing the error is output.
  • the reproduced audio data whose error has been corrected is supplied to the SDTI output unit 115, and is also supplied to the SDI output unit 116 with a predetermined delay given by the delay circuit 114.
  • the delay circuit 114 is provided to absorb a delay caused by processing of video data in the MPEG decoder 113 described later.
  • the error-corrected video data is supplied to the reproduction-side MFC circuit 112 as a reproduction conversion element stream.
  • the above-mentioned signal ERR is also supplied to the reproduction-side MFC circuit 112.
  • the reproduction-side MFC 112 performs the reverse processing of the recording-side MFC 106 described above, and includes a stream converter. In the stream converter, the reverse process is performed with the stream converter on the recording side. That is, the DCT coefficients arranged for each frequency component across the DCT blocks are rearranged for each DCT block. As a result, the reproduced signal is converted into an elementary stream compliant with MPEG2. At this time, if the signal E RR is supplied from the ECC decoder 111, the corresponding data is replaced with a signal completely compliant with MPEG2 and output.
  • the MPEGES output from the reproduction-side MFC circuit 112 is supplied to the MPEG decoder 113 and the SDTI output unit 115.
  • the MPEG decoder 113 decodes the supplied MPEGES and restores the original uncompressed video signal. That is, the MPEG decoder 113 performs an inverse quantization process and an inverse DCT process on the supplied MPEGES.
  • the decoded video signal is supplied to the SDI output section 116.
  • the audio data separated from the video data by the ECC decoder 111 is sent to the output unit 113 via the delay 114. Supplied.
  • the SDI output unit 116 maps the supplied video data and audio data into an SDI format, and converts the data into an SDI signal having an SDI format data structure. This SDI signal is output to the outside.
  • the SDTI output unit 115 is supplied with the audio data separated from the video data by the ECC decoder 111 as described above.
  • the SDTI output section 115 maps the supplied video data and audio data as elementary streams into SDTI format, and generates an SDTI signal having a data structure of SDTI format. This SDTI signal converted to is output to the outside.
  • the system controller 117 (abbreviated as syscon 117 in FIGS. 9A and 9B) consists of, for example, a microcomputer, and communicates with each block using the signal SY-IO. Controls the overall operation of the digital VTR.
  • the Servo 118 communicates with the system controller 117 using the signal SY-SV, and controls the running of the magnetic tape 110 and the drive of the rotating drum 109 using the signal SV-IO. .
  • FIG. 10A, FIG. 10B and FIG. 10C more specifically show an example of the configuration of the MPEG encoder 103 described above.
  • the configuration examples of the streams transferred in the respective units of FIG. 10A, FIG. 10B and FIG. 10C are shown in FIG. 11A, FIG. 11B and FIG. FIGS. 12A, 12B and 12C, 13A and 13B, 14A and 14B, 15A, 15A 15 B and 15 C, 16 C, 16 A, 16 B and 16 (:, and Figure 17 shows the ⁇ MPEG encoder 103 Activity averaging processing section 103 A, Priencod processing section 103 B and Encoding section 1 Consists of 0 3 C.
  • the average value of the activity of the input video data is obtained, and the calculated average value is passed to the pre-coding processing section 103B.
  • the pre-code processing unit 103B estimates the amount of code generated by quantifying the input video data using the average value of this activity. Based on the estimation result, in the encoding unit 103C, actual quantization is performed on the input video data while controlling the code amount, and the quantized video data is further subjected to variable-length encoding, and MPEG encoding is performed. Output as ES.
  • the timing generator TG 222 is based on the horizontal synchronizing signal HD, the vertical synchronizing signal VD, and the field synchronizing signal FLD supplied from the timing generator TG 103 shown in FIGS. 9A and 9B, for example. Generates and outputs timing signals required in the EG encoder 103.
  • the CPU I ZF block 221 is an interface with the system controller 117 shown in FIGS. 9A and 9B, and is controlled by control signals and data exchanged via the CPU I ZF block 221. The operation of the MPEG encoder 103 is controlled.
  • Video data output from the SDI input unit 101 and input to the MPEG encoder 103 is supplied to the input unit 201 and converted into an interface suitable for storing in the main memory 203.
  • a quality check is performed.
  • the video data output from the input unit 2 0 1 is supplied to the header generation unit 2 0 2, in the MPEG and the like vertical blanking interval and for ⁇ 1 J, sequence-header, quantizer -matrix, each such gop_header
  • the header is extracted. Each extracted header is stored in the main memory 203. These headers are mainly specified from the CPU I ZF block 221. Also, the header creation section 202
  • the video data supplied from the input unit 201 is stored in the main memory 203 outside the vertical blanking interval.
  • the main memory 203 is a frame memory for images, and performs rearrangement of video data and absorption of a system delay.
  • the rearrangement of the video data is performed, for example, by controlling the read address from the main memory 203 by an address controller (not shown).
  • 8 lines, 0.5 frame and 1 frame described in the block of the main memory 203 are delay values, and indicate the read timing from the main memory 203. These are appropriately controlled based on the command of the timing generator TG220.
  • the last scan Z block scan conversion unit 204 cuts out the video data stored in the main memory 203 for each line for each macro block handled by MPEG and sends it to the activity unit 205 at the subsequent stage.
  • the macroblock output from the RAS scan-no-block scan conversion unit 204 is used for the video of the first field. Consists of data.
  • the stream output as output data from the raster scan / block scan converter 204 has, as shown in FIG. 11A, an example in which the vertical and horizontal macroblock address information is allocated at the top.
  • the image data for one macroblock is stored behind the free space of the predetermined size.
  • the stream has a data length of 576, for example, with 8 bits as one mode, and the last 512 words (called the data part) store image data for one macroblock. Assigned to the area you want.
  • the first 64 words (referred to as the header section) start with the macro block Address information is stored, and the other parts are made empty areas for data and flags to be embedded in the subsequent parts.
  • the macroblock handled by MPEG is a matrix of 16 pixels ⁇ 16 lines.
  • the processing for obtaining the activity using only the first field is performed. Therefore, the processing can be started when up to eight lines of the first field are stored in the main memory 203. Actually, the processing is appropriately started by a command from the timing generator TG220.
  • the activity section 205 calculates an activity for each macroblock.
  • the activity is calculated only from the first field, and the calculation result is output as a field activity signal field_act.
  • the signal field_act is supplied to an averaging unit 206, where the signal fied is integrated for one field, and an average value avg-act is obtained.
  • the average value avg—act is supplied to an activity unit 209 of a pre-encoding processing unit 103 B described later. In the activity unit 209, the precoding process is performed using both the average value avg_act of the first and second fields.
  • the raster scan scan-no-block scan converter 207A basically performs the same processing as the above-described raster scan block-scan converter 204. However, since the raster scan block scan conversion unit 207A is performed for the Priencode processing for estimating the code amount, the first field And both fields of video data are required. Therefore, in the raster scan Z block scan converter 207A, when up to eight lines of the second field are stored in the main memory 203, a macro of 16 pixels x 6 lines sized by MPEG is used. Blocks can be configured, and processing can be started at this point. Actually, the processing is appropriately started by a command from the timing generator TG220.
  • the video output from the Z-block scan converter 207 A is supplied to the DCT mode unit 208.
  • the DCT mode section 208 determines which of the field DCT coding mode and the frame DCT coding mode is used for coding.
  • the sum of the absolute value of the difference value between the pixels adjacent in the vertical direction is calculated in the field DCT coding mode and the one calculated in the frame DCT coding mode.
  • the comparison is made and the encoding mode with the smaller value is selected.
  • the selection result is temporarily inserted as a flag into the stream as a DCT mode type data dc and typ, and transmitted to the subsequent stage.
  • the DCT mode type data dc is stored at the rear end of the empty area in the header.
  • the activity unit 209 performs basically the same processing as the activity unit 205 described above. However, in the activity section 209, as described above, the pre-encoding processing is performed, and the data of the first field and the second field are used together, and Is calculated.
  • the activity section 209 first obtains the activity act and stores it following the macroblock address in the header section as shown in FIG. 11C. Next, this activity ac t and the averaging described above Using the average value avg-act of the field activity obtained from the part 206, the normalized activity norm-act according to the present invention is obtained based on the above-described equations (8) and (9). The configuration of the activity unit 209 for calculating the normalized activity norm-act according to the present invention will be described later.
  • the obtained normalization activity norm-act is temporarily inserted as a flag in the header of the stream as shown in Fig. 12A and transmitted to the subsequent stage.
  • the above-mentioned activity act is overwritten on the normalized activity data norm_act in the stream.
  • the output of the activity unit 209 is supplied to the DCT unit 210A.
  • the supplied macroblock is divided into a DCT block composed of 8 pixels ⁇ 8 pixels, and two-dimensional DCT is performed on the DCT block to generate a DCT coefficient.
  • the DCT coefficients are stored in the data part of the stream as shown in FIG. 12B and supplied to the quantization table part 211A.
  • quantization table section 211A quantization is performed on the DCT coefficients converted by the DCT section 210A using a quantizer matrix.
  • the DCT coefficient quantized by the quantization table section 211 A is stored in the data section of the stream and output as shown in FIG. 12C.
  • the output of the quantization table section 2 11 A is divided into multiple Q-n (quantization) sections 2 1 2, 2 1 2, '.', ⁇ section 2 1 3, 2 1 3, ⁇ ⁇ 2 14, 2 14,..., And an integrating section ⁇ 2 15, 2 15,.
  • the DCT coefficient quantized by the quantization table section 211 A is quantized in multiple stages by the multi-step quantization section.
  • the DCT coefficient is Q n part 2 1 2, 2 1 2, Quantization is performed using a different quantization scale (quantizer_scale) Q.
  • quantizer_scale the value of the quantization scale Q is predetermined according to, for example, the standard of MPEG2, and ⁇ 3—11 parts 2 12, 2, 12,... It is composed of one quantizer.
  • n 31, and the Q-n parts 2 1 2, 2 12, ⁇ are the Q-parts 1, Q- 2 parts, ⁇ , Q-31 parts.
  • the quantization of the DCT coefficients is performed for a total of 31 steps using the quantization scale Qn assigned to each quantizer.
  • the quantization scale value corresponding to each of the Q—n parts 2 12, 2 12,... Is referred to as a quantization scale Q n value.
  • Quantization is performed using the respective quantization scale Q n values.
  • the DCT coefficients for each quantization scale Qn that have been adaptively quantized in the n part 2 1 2, 2 1 2,... are stored in the data section of the stream as shown in Fig. 13A. , And supplied to the slicing parts 2 13, 2 13,.
  • the DCT coefficients for each quantization scale Qn are subjected to scanning, such as zigzag scanning, in the VLC units 2 13, 2 13, ', and refer to the VLC table based on 2D Huffman codes, etc. And are subjected to variable length coding.
  • variable-length coded data in the VLC units 2 13, 2 13,... are stored in the data portion of the stream as shown in FIG. 13B and output respectively.
  • the outputs of the VLC units 2 13, 2 13,... are supplied to the corresponding integrators 2, 2, 2,.
  • the generated code amount is integrated.
  • 31 types of quantizers are used as described above, 31 types of generated code amounts corresponding to each type are obtained for each macroblock.
  • the generated code amount for each macroblock is calculated by adding the generated code amount accumulated in the integrating units ⁇ 2 14, 2 14,. Is stored. That is, the amount of code generated by the quantization of each of the Q-1 section 211 to the Q-n section 212 is stored in the header section of the stream for each macroblock. The data part of the stream is deleted. The stream for each macroblock is supplied to the main memory 203.
  • the generated code amount for each macro block output from the integrating units # 2, 14, 2, 14, ... is supplied to the integrating units # 2, 15, 2, 15, ... respectively.
  • the value integrated for each frame in each of the quantization scales Q 2 15, 2 15,..., Is the amount of code generated in that frame (frame rate overnight rate). 4 As shown in FIG. B, it is supplied to a rate control unit 217 described later as an n-word stream.
  • a rate control unit 217 described later as an n-word stream.
  • the amount of code generated by Q1 part 4 2 1 2 is obtained as follows.
  • the encoding unit 103C performs final encoding processing. As described above, in the pre-code processing unit 103B, the generated code amount for one frame when various quantizations are performed is estimated. The encoding unit 103C performs encoding based on the generated code amount estimated for one frame so as not to exceed a preset target generated code amount, and outputs MPEGES.
  • the data used in the encoder processing unit 103C is already stored in the main memory 203, but as described above, when various quantization is performed by the pre-encoding processing unit 103B. Processing can be started when the amount of generated code in one frame is estimated. The processing in each section of the encoding processing section 103C is appropriately started based on a command from the timing generator TG220 as described above.
  • the video data read from the main memory 203 is subjected to the same processing as the above-mentioned raster scan / no-block scan conversion unit 200 A in the raster scan / no-block scan conversion unit 207 B, and 16 pixels xl A 6-line macroblock is cut out.
  • the cut-out macro block is stored in the data section corresponding to the header section shown in FIG. 14A described above, as shown in FIG. 15A, and is stored in the DCT mode section 216. Supplied.
  • the DCT mode section 216 similarly to the above-described DCT mode section 208, it is determined which of the field DCT coding mode and the frame DCT coding mode is used for coding. At this time, the encoding mode has already been determined in the DCT mode unit 208, and the result is temporarily inserted into the stream as DCT type data dc (see FIG. 15A).
  • the DCT mode section 216 detects the DCT type dc from the stream and detects typ, and switches between the field coding mode and the frame coding mode based on the detected DCT type data dct-typ.
  • the output of the DCT mode section 2 16 is shown in Figure 15B.
  • the macroblock output from the DCT mode section 216 is supplied to the DCT section 210B, and in the same manner as the DCT section 210A described above, a two-dimensional DC block is generated in units of 8-pixel x 8-pixel DCT blocks. Is done.
  • the two-dimensional DCT DCT coefficient is added to the data part in the stream as shown in Fig. 15C. It is stored and output from DCT section 210B.
  • the quantization table section 211B can be configured in the same way as the above-described quantization table section 211A, and a quantization matrix is applied to the DCT coefficients converted by the DCT section 210B. Is performed.
  • the DCT coefficients quantized by the quantization table section 211 B are stored in the data section of the stream and supplied to the rate control section 217 as shown in Fig. 16A. Is done.
  • the quantization scale for each macroblock is stored as a qauntiser-scale at the end of the header in the stream, and transmitted to the quantization unit 218.
  • the maximum generated code amount per frame is set by, for example, the system controller 117 and transmitted to the late control unit 217 via the CPU I / F 221.
  • the quantization scale (mqaunt) for each macroblock obtained from the normalized activity data norm_act inserted in the stream described above.
  • the value of the quantization scale (mquant) can be reduced by one size for each macroblock within a range that does not exceed the difference from the raw code amount. As a result, it is possible to approach the maximum generated code amount per frame set by the system controller 117 and transmitted via the CPU IZF 221 to realize high image quality.
  • the quantizing section 218 extracts the quantizing scale specified by the rate control section 217 as described above from the stream, and performs quantization based on the extracted quantizing scale.
  • the quantization of the DCT coefficient quantized in the table section 211B is performed.
  • the quantization scale given from the rate control section 217 is the value of the quantization scale (mquant) obtained from the normalized activity data norm_act, the adaptive quantization taking into account the visual characteristics is performed. Will be performed.
  • the DCT coefficient quantized by the quantization unit 218 is stored in the data portion in the stream as shown in FIG. 16C, and is supplied to the VLC unit 219.
  • the quantized DCT coefficients supplied to the VLC section 219 are subjected to scanning such as zigzag scanning, and are subjected to variable-length coding with reference to a VLC table based on a two-dimensional Huffman code. Further, the variable length code is bit-shifted so as to be aligned in byte units, and output as MPGES.
  • the header section which constituted the first half of the stream up to the VLC section 219, stores the header information of the MPEG below the slice layer as shown in FIG. Is output after being replaced.
  • the variable length code is stored in the data part of the latter half of the stream.
  • FIG. 18 shows an example of a configuration for calculating the normalized activity norm-act according to the present invention in the activity unit 209 described above.
  • the normalized activity norm_act is represented by the above formula ( 8) and formula It shall be calculated by (9).
  • the activity section 209 first obtains the activity act. This activity act is supplied to one and the other input terminals of the multiplier 301, and actxact is calculated. The calculation result is supplied to one input terminal of the multiplier 311 via the registers 310 and 307, and to one input terminal of the adder 318 via the register 315. Supplied to the end.
  • the average activity avg_act output from the averaging unit 206 is supplied to one step of the multiplier 302 and the other input terminal, and avg_actxavg-act is calculated.
  • the calculation result is supplied to one input terminal of the multiplier 312 via the resistors 3105 and 3108, and is further supplied to one input terminal of the adder 317 via the register 3130. Supplied to the end.
  • the average activity avg_act output from the averaging unit 206 is also supplied to one input terminal of the multiplier 303.
  • the other input of the multiplier 303 is supplied with the parameter att.
  • the parameter att is set, for example, by the system controller 117 and supplied via the CPU I / F 221.
  • the calculation result of the multiplier 303 is supplied to one input terminal of the adder 310 via the register 310.
  • the constant "1" is supplied to the other input terminal of the adder 310.
  • At txavg_act + 1 is calculated by the multiplier 303 and the adder 310 to obtain norm-gain. norm-gain is supplied to the other input of each of the multipliers 311 and 312 via the register 309.
  • norm-gainx (actxact) is calculated, and the calculation result is supplied to the other input terminal of the adder 317 through the register 314.
  • avg—actxavg—act + norm—gainx (actxact) force is calculated.
  • the calculation result is supplied to the dividend input terminal of the divider 3 2 1 via the register 3 19. Paid.
  • norm_gainx (avg-actxavg-act) is calculated, and the calculation result is supplied to the other input terminal of the adder 318 via the register 316.
  • norm_gainx (avg—actxavg_act) + actxact is calculated.
  • the calculation result is supplied to the divisor input terminal of the divider 32 1 via the register 32 0.
  • ⁇ avg—actxavg—act + norm—gainx (actxact) ⁇ ⁇ ⁇ norm_gainx (avg_actxavg_act) + actxact ⁇ is calculated. That is, the output of the divider 3221 is used as the normalization activity norm_act according to the embodiment of the present invention.
  • the normalized activity norm_act output from the divider 321 is output via the selector 325 and the register 324. Then, the normalization activity norm_act is overwritten with the above-mentioned 11C activity act in the stream, and is embedded in the stream and transmitted to the subsequent stage as shown in FIG. 12A.
  • the value (divisor) supplied to the register 320 is monitored. If the divisor is “0”, for example, a flag indicating that is supplied to the selector 325 via the register 326.
  • the selector 325 has one input terminal supplied with the output of the divider 321 described above, and the other input terminal supplied with a constant “1”. When the flag supplied from the comparator 3 2 2 indicates that the divisor is “0”, the constant “1” is selected by the selector and output as the normalization activity norm—act.
  • the processing in the MPEG encoder 103 has been described as being performed by hardware, but this is not limited to this example.
  • the processing of the MPEG encoder 103 can also be realized by software.
  • a computer device can send a video signal
  • a digital and digital input interface is provided, and can be executed using software mounted on a computer using a CPU and memory.
  • the configuration may be such that the MPEG encoder 103 is replaced with a CPU and a memory.
  • This software is provided by being recorded as a program on a recording medium such as a CD-RCompM (Compact Disc-Read Only Memory).
  • a recording medium such as a CD-RCompM (Compact Disc-Read Only Memory).
  • FIG. 19 is a flowchart showing an example of the case where the processing of the MPEG encoder 103 is performed by software.
  • the processing by this flowchart is the same as the processing by the hardware described above, so that it will be schematically described below in consideration of the processing by the hardware described above.
  • ⁇ Steps S1 to S7 Corresponds to the processing by the input field activity averaging processing section 103A.
  • Steps S11 to S21 correspond to the above-described pre-encoding processing section 103B.
  • Steps S31 to S38 correspond to the above-described encoding unit 103C.
  • step S1 video data is captured.
  • step S2 each header in the MPEG is extracted from the captured video data and stored in the memory in a vertical blanking interval. Outside the vertical blanking interval, the captured video data is stored in memory.
  • step S3 the video data is converted from raster scan to block scan, and macro blocks are cut out. This is, for example, This is done by controlling the read address when reading video data stored in memory.
  • step S4 the activity calculation using the first field is performed on the video data cut into macroblocks, the activity Actibity (act) of the calculation result is integrated in step S5, and the integrated value sum is stored as a memory. Is stored in The processing of steps S3 to S5 is repeated until it is determined in step S6 that the processing of the last macroblock of the first field has been completed. That is, the integrated value sum is the sum of the activities of the macroblock for one field.
  • step S7 the integrated value sum stored in the memory is divided by the number of macroblocks of one field, and an error of one field is obtained.
  • the average value of the field activity with averaged activity, Acti bity (avg_act) is obtained and stored in the memory.
  • step S 11 When the average value of the field activities Actibity (avg-act) is obtained, the process proceeds to step S11.
  • step S 1 similarly to the scan Tetsupu S 3 described above, the video data stored in the memory is converted from Rasutasukiya down to block scanning, a t following the macro proc is cut out in Step S 1 2, D CT Is performed in the field DCT coding mode or the frame DCT coding mode, and the selection result is stored in the memory as DCT mode type data dct_typ.
  • step S13 the first and second fields are used together to calculate an activity act for each macroblock. Then, using this activity act and the average value Actibity (avg-act) of the field activity obtained in step S7 and stored in the memory, based on the above equations (8) and (9), Normalization key according to the present invention Activity Actibity (norm_act) is required. The obtained normalization activity Actibity (norm_act) is stored in the memory.
  • Equations (8) and (9) described above can be expressed in terms of software using, for example, a C-language expression that is a programming language.
  • MB_num is the total number of macroblocks in one frame.
  • step SI3 normalized activity (; "1) (1101" 111_3 (: 0) is obtained based on such a program.
  • step S14 the macroblock cut out from the video data in the above step S11 is divided into a DCT block consisting of 8 pixels x 8 pixels, and a two-dimensional DCT is applied to this DCT block. Done.
  • the DCT coefficient obtained by transforming the DCT block by the two-dimensional DCT is quantized by a quantization table in step S15, and the process proceeds to step S16.
  • step S17 the DCT coefficient quantized by referring to the VLC table is It is transformed.
  • step S18 the generated code amount in the macroblock by the variable length coding is calculated, and in step S19, the generated code amount for each macroblock obtained in step S18 is one frame, Multiplied.
  • step S20 it is determined whether or not there is a next quantization scale Qn. If it is determined that there is a next quantization scale Qn, the process returns to step S16, where the next quantization scale Qn is obtained. Processing based on Q n is performed. The generated code amount for one frame for each quantization scale Qn is stored in the memory.
  • step S21 If it is determined in step S20 that the integrated value of the generated code amount in the frame has been obtained for all the values of the quantization scale Qn, in step S21, the processing is performed up to the last macroblock (MB) of one frame. It is determined whether or not the processing has been completed, and if the processing up to the final macroblock has not been completed, the processing returns to step S11. When the processing up to the last macroblock is completed and the amount of generated code for one frame is estimated, the flow shifts to step S31 to perform the actual encoding processing.
  • MB macroblock
  • step S31 as in step S11 described above, the video data stored in the memory is converted from raster scan to block scan, and macroblocks are cut out.
  • step S32 the DCT coding mode is set based on the DCT mode type data dc and typ stored in the memory in step S12.
  • step S33 the macroblock cut out from the video data in step S31 is divided into DCT blocks each including 8 pixels ⁇ 8 pixels, and dimensional DCT is performed on the DCT blocks.
  • 2D DCT The DCT coefficient obtained by transforming the DCT block is quantized by a quantization table (quan tizer_table) in step S34, and the process proceeds to step S35.
  • step S35 based on the generated code amount for one frame for each quantization scale Qn estimated in steps S11 to S21 described above, the code amount generated in the actual encoding process is calculated.
  • a quantization scale Qn used in step S36 described later is set for each macroblock.
  • step S36 in which the quantization scale Qn set in step S35 is used to quantize the DCT coefficient quantized using the quantization table in step S34. Is performed.
  • the DCT coefficient quantized in step S36 is subjected to variable-length encoding by referring to the VLC table in the next step S37.
  • step S38 it is determined whether or not processing has been performed up to the last macroblock of one frame. If it is determined that processing has not been performed up to the last macroblock of one frame, processing is performed in step S3. The value is returned to 1, and quantization processing and variable length coding processing for the next macroblock are performed. On the other hand, if it is determined in step S37 that processing has been performed up to the final macroblock of one frame, it is determined that encoding processing for one frame has been completed.
  • steps S11 to S21 and the encoding processing of steps S31 to S38 are described as separate processing. Not limited.
  • steps S11 to S21 the data obtained by estimating the amount of generated codes is stored in a memory, and the data obtained by actual encoding processing is selected and extracted therefrom. I do.
  • steps S31 to S38 is incorporated as a loop included in the processing of steps S11 to S21. be able to.
  • the value of the parameter a t t was set to “0.125”. However, this is not limited to this example, and another value may be used. By changing the value of this parameter a t t, it is possible to support adaptive quantization suitable for various compression ratios.
  • the normalization activity when calculating the normalization activity, is normalized according to characteristics such as flatness and complexity of the target image, that is, the average activity of the image. Is changed.
  • the range of activity normalization can be reduced, and quantization can be performed using activities that are nearly uniform over the entire image. Therefore, it is possible to secure uniform flatness over the entire image and obtain high image quality.

Landscapes

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

Description

明 細 画像処理装置、 画像処理方法、 画像処理プログラムおよび記録媒体 技術分野
この発明は、 画像信号に対してブロック単位で量子化することで画像 信号の圧縮符号化を行い、 その際に、 フレーム毎の符号量が一定量以下 になるように発生符号量を制御する画像処理装置、 画像処理方法、 画像 処理プログラムおよび記録媒体に関する。 背景技術
従来から、 画像データの圧縮符号化方式として、 画像データを所定画 素数から成るブロック単位で量子化を行うことで圧縮符号化するものが 知られている。 例えば M P E G 2 (Moving Pictures Experts Group 2) では、 このような圧縮符号化方式が採用されている。 MP EG 2では、 画像データを所定画素数から成るブロック単位で D C T (Discrete Cosi ne Transform)し、 得られた D C T係数に対して量子化を行うことで、 画像データを圧縮符号化する。 MP E G 2では、 量子化の際の量子化ス テツプが量子化スケールにより指定されて、 D C Τ係数の圧縮符号化が 行われる。
従来より、 例えばこの MP EG 2の圧縮符号化において、 圧縮する画 像の複雑さや滑らかさを示すァクティビティ(Activity)という指数を算 出し、 このアクティビティに基づく適応量子化を用いて画質の最適化を 図る方法が知られている。
これは、 圧縮処理による画質劣化が視覚的に目立ちやすい、 画像が単 調で滑らかな領域 (以下、 平坦領域という) では、 量子化ステップの細 かい量子化スケールを用いて細かく量子化し、 これと反対に、 画質劣化 の目立ちにくい画像が複雑な領域では、 量子化ステップの粗い量子化ス ケールを用いて粗く量子化を行なう手法であり、 限られた符号量の中で 画質の最適化を図る有効な手法である。
ところで、 画像データの圧縮を行なう場合、 上述したように、 各画像 の領域を所定サイズの画素ブロックに分割し、 各ブロック毎に量子化や D C Tを行なうことになる。 M P E G 2による規格では、 8画素 x 8ラ ィンのブロックが最小処理単位として規定される。 この 8画素 X 8ライ ンのブロックで D C Tを行ない、 この D C Tにより得られた D C T係数 を、 1 6画素 X 1 6ラインのマクロブロック単位で量子化するように規 定されている。
一方、 上述したアクティビティの算出を行なう単位としては、 明確な 規定はないものの、 M P E G 2の T M 5 (Tes t Mode l 5)においては、 D C Tブロックと同様の 8画素 x 8ラインのサブブロックで処理すること が提案されている。
以下、 M P E G 2の T M 5で採用された 「視覚特性を考慮した適応量 子化」 におけるアクティビティの算出方法について説明する。
先ず、 適応量子化とは、 例えば 1フレーム内での発生符号量を制御す るために、 画像の状態によって異なる量子化スケール Q j を用いて量子 化を行うように、 量子化スケール Q j を各マクロブロック毎のァクティ ビティにより変化させて、 高画質を達成するものである。 例えば、 視覚 的に画質劣化の目立ちやすい画像の平坦領域では、 より細かい量子化ス テツプを有する量子化スケール Q j を用いて量子化を行い、 画質劣化の 比較的目立ちにくい絵柄の複雑な画像領域で、 より粗い量子化ステップ を有する量子化スケール Q j を用いて量子化を行うように、 ァクテイビ ティにより量子化スケール Q j を変化させる。 アクティビティは、 予測誤差でなく、 原画における輝度信号の画素値 を用い、 フレーム D C T符号化モードにおける 4個のブロックと、 フィ ールド D CT符号化モードにおける 4個のブロックとの合計 8個のプロ ックの画素値を用いて算出される。 例えば、 j番目のマクロブロックに ついて、 以下の式 ( 1 ) 〜式 (3) で与えられる演算を、 式 (3) 、 式 (2) 、 式 ( 1 ) の順に行なうことにより、 アクティビティ actjが求め られる。
act) = 1 + min[sblk=l, 8] (var_sblk) · · · ( 1 )
var_sblk = 1/64 ∑ [k=l, 64] (Pk ― Pavg)2 - · · (2)
Pavg = 1/64 ∑ [k=l, 64] Pk · · · ( 3 )
ここで、 Pkは、 原画の輝度信号ブロック内の画素値であり、 式 (3 ) では 8x8のブロック内の 6 4個の画素値を合計し、 これを 6 4で割る ことにより、 ブロック内の画素値 Pkの平均値 Pavgを求めている。 次に、 式 ( 2 ) では、 平均値 Pavgと画素値 Pkそれぞれとの差分をとり、 8x8 のブロック内の平均差分値 var_sblkを算出している。 さらに、 式 ( 1 ) において、 平均差分値 vaし sblkの最小値を採用し、 j番目のマクロプロ ックのアクティビティ actjを求める。 なお、 ここで最小値を採用するの は、 マクロブロック内の一部だけでも平坦な部分のある場合には、 この マクロブロックに対する量子化を細かくする必要があるからである。 そして、 MP E G 2の TM 5では、 以上のようにして求めた各マクロ ブロックのアクティビティ actjから、 「2. 0」 〜 「 0. 5」 の範囲の 値をとる正規化アクティビティ Nactj を、 次の式 (4) より求める。 Nactj = (2xact; + avg_ac t) / c t; + 2xavg_act) · · · (4)
ここで、 「avg_act」 は、 現在処理中のフレーム (ピクチャ) の 1つ 前に符号化したフレームにおけるアクティビティ actjの平均値 (平均ァ クテイビティ) である。 そして、 視覚特性を考慮した量子化スケール mquantj は、 1フレーム の発生符号量を制御するために別途求められた量子化スケール Qj に基 づいて、 次の (5 ) 式で与えられる。
Figure imgf000006_0001
Q jxNactj · · · 、5 )
このような量子化スケール mquantjを用いて各マクロブロックの量子 化を行なうことにより、 1フレームの全体の符号量を所定の範囲内に保 ちながら、 そのフレームにおける画像の平坦度や複雑度に応じた最適な 量子化を行ない、 限られた符号量を有効に用いて画像の品位をできるだ け劣化させることなく効率的な画像圧縮を行なう。
上述した MP E G 2の TM 5による正規化では、 正規化ァクティビテ ィ Nactjは、 上述した式 (4 ) で求められる。 つまり、 どのような絵柄 のフレームであろうと、 正規化の範囲は、 「0. 5」 〜 「2. 0」 とな る。 したがって、 例えば平坦な絵柄のフレームでは、 各マクロブロック 間の量子化値に差がつきすぎてしまうという問題点があった。
一方、 複雑な絵柄のフレームでは、 絵柄が複雑な部分のマクロブロッ クに符号量をとられて、 相対的に絵柄が平坦な部分のマクロブロックの 符号量が制限される。 そのため、 視覚的に劣化の目立ちやすい平坦なマ クロブロックの画質が劣化するという問題点があつた。
この画質劣化は、 特に圧縮率が低く符号量に比較的余裕のある場合に. 画像全体が高画質になることにより、 顕著になる。
したがって、 この発明の目的は、 フレームの絵柄の特性に応じてァク ティビティの正規化を行い、 適応量子化による画質の最適化を行うこと ができる画像処理装置、 画像処理方法、 画像処理プログラムおよび記録 媒体を提供することにある。 発明の開示 この発明は、 上述した課題を解決するために、 画像データから平均ァ クテイビティを算出する平均ァクティビティ算出手段と、 平均ァクティ ビティ算出手段により算出された平均ァクティビティに応じて正規化範 囲を動的に設定し、 正規化範囲に基づき平均ァクティビティを用いて正 規化アクティビティを算出する正規化アクティビティ算出手段と、 正規 化ァクティビティ算出手段により算出された正規化ァクティビティを用 いて画像データを量子化する量子化手段とを有することを特徴とする画 像処理装置である。
また、 この発明は、 画像データから平均アクティビティを算出する平 均アクティビティ算出のステップと、 平均アクティビティ算出のステツ プにより算出された平均ァクティビティに応じて正規化範囲を動的に設 定し、 正規化範囲に基づき平均ァクティビティを用いて正規化ァクティ ビティを算出する正規化ァクティビティ算出のステップと、 正規化ァク ティビティ算出のステップにより算出された正規化ァクティビティを用 いて画像データを量子化する量子化のステツプとを有することを特徴と する画像処理方法である。
また、 この発明は、 画像データを量子化する画像処理方法をコンビュ 一夕装置に実行させる画像処理プログラムにおいて、 画像処理方法は、 入力された画像データから平均ァクティビティを算出する平均ァクティ ビティ算出のステップと、 平均アクティビティ算出のステップにより算 出された平均ァクティビティに応じて正規化範囲を動的に設定し、 正規 化範囲に基づき平均ァクティビティを用いて正規化ァクティビティを算 出する正規化ァクティビティ算出のステップと、 正規化ァクティビティ 算出のステツプにより算出された正規化ァクティビティを用いて画像デ 一夕を量子化する量子化のステップとを有することを特徴とする画像処 理プログラムである。 また、 この発明は、 画像データを量子化する画像処理方法をコンビュ 一夕装置に実行させる画像処理プログラムが記録された記録媒体におい て、 画像処理方法は、 入力された画像データから平均アクティビティを 算出する平均ァクティビティ算出のステップと、 平均アクティビティ算 出のステップにより算出された平均ァクティビティに応じて正規化範囲 を動的に設定し、 正規化範囲に基づき平均ァクティビティを用いて正規 化ァクティビティを算出する正規化ァクティビティ算出のステップと、 正規化ァクティビティ算出のステップにより算出された正規化ァクティ ビティを用いて画像データを量子化する量子化のステップとを有するこ とを特徴とする記録媒体である。
上述したように、 この発明は、 入力された画像デ一夕から算出された 平均ァクティビティに応じて正規化範囲を動的に設定し、 正規化範囲に 基づき平均ァクティビティを用いて正規化ァクティビティを算出し、 算 出された正規化ァクティビティを用いて画像データを量子化するように しているため、 画像の特性に応じて量子化を行うことができる。 図面の簡単な説明
第 1図は、 第 2の例による正規化を表す式の一例の特性を示すグラフ, 第 2図は、 M P E Gの T M 5による正規化の一例の特性を示すグラフ、 第 3図は、 全体的に平坦な絵柄から構成される一例の図、 第 4図は、 複 雑な絵柄と平坦な絵柄とが混在する一例の図、 第 5図は、 全体的に平坦 な絵柄から構成される画像に対して M P E Gの T M 5による正規化を用 いた場合の正規化アクティビティの例を示す略線図、 第 6図は、 全体的 に平坦な絵柄から構成される画像に対してこの発明による正規化を用い た場合の正規化アクティビティの例を示す略線図、 第 7図は、 複雑な絵 柄と平坦な絵柄とが混在する画像に対して M P E Gの T M 5による正規 化を用いた場合の正規化ァクティビティの例を示す略線図、 第 8図は、 複雑な絵柄と平坦な絵柄とが混在する画像に対してこの発明による正規 化を用いた場合の正規化ァクティビティの例を示す略線図、 第 9図 Aお よび第 9図 Bは、 この発明の実施の一形態が適用されたディジタル VT Rの一例の構成を示すブロック図、 第 1 0図 A、 第 1 0図 Bおよび第 1 0図 Cは、 MP E Gエンコーダの一例の構成をより具体的に示すブロッ ク図、 第 1 1図 A、 第 1 1図 Bおよび第 1 1図 Cは、 MP EGェンコ一 ダの各部において転送されるストリームの構成例を示す略線図、 第 1 2 図 A、 第 1 2図 Bおよび第 1 2図 Cは、 MP E Gエンコーダの各部にお いて転送されるストリームの構成例を示す略線図、 第 1 3図 Aおよび第 1 3図 Bは、 MP E Gエンコーダの各部において転送されるストリーム の構成例を示す略線図、 第 1 4図 Aおよび第 1 4図 Bは、 MP E Gェン コーダの各部において転送されるストリームの構成例を示す略線図、 第 1 5図 A、 第 1 5図 Bおよび第 1 5図 Cは、 MP EGエンコーダの各部 において転送されるストリームの構成例を示す略線図、 第 1 6図 A、 第 1 6図 Bおよび第 1 6図 Cは、 MP E Gエンコーダの各部において転送 されるストリームの構成例を示す略線図、 第 1 7図は、 MPEGェンコ —ダの各部において転送されるストリームの構成例を示す略線図、 第 1 8図は、 この発明による正規化ァクティビティを計算するための一例の 構成を示すブロック図、 第 1 9図は、 MP E Gエンコーダの処理をソフ トウエアで行う場合の一例のフローチヤ一トである。 発明を実施するための最良の形態
以下、 この発明の実施の一形態について説明する。 この発明では、 対 象となる範囲の正規化アクティビティを、 その対象範囲の画像の特性、 例えば対象範囲の絵柄の平坦さや複雑さ、 すなわち平均ァクティビティ に基づき正規化範囲を動的に変更して求める。 こうして求められた正規 化ァクティビティに基づき、 対象範囲の画像を量子化する。
一例として、 対象範囲をフレームとすると、 フレーム全体が平坦な絵 柄の画像については、 アクティビティの正規化の範囲を狭くする。 これ により、 画像全体で均一に近いアクティビティを用いて量子化を行なう ことができ、 画像全体で均一な平坦度を確保し、 高画質を得ることが可 能となる。 逆に、 1フレーム内に絵柄の複雑な領域と平坦領域が混在す るような画像については、 ァクティビティの正規化の範囲を広くする。 これにより、 ノイズの目立ちやすい絵柄の平坦な領域にはより大きい符 号量を割り当てて精細な量子化を行ない、 ノイズの目立ちにくい、 絵柄 の複雑な領域には粗い量子化を行なうことにより、 視覚的に良質な画像 を得ることができる。
より具体的には、 第 1の例として、 1フレームの平均アクティビティ を avg— ac t 、 マクロブロックアドレス mのマクロブロックのァクテイビ ティを act [m]とした場合、 正規化アクティビティ norm_ac t [m]を、 以 下に示す式 (6) および式 (7) により算出する。
no r m_ga in=at txavg_act + 1 · · ·
(6)
norm_ac t [m] = {norm_gainxact [m] + avg_act}
÷ {act [m] + norm_gainxavg_ac t } · · · (7) なお、 式 (6 ) および式 (7) において、 act [m]および avg_act が共 に 0になると、 分母が 0になってしまうので、 この場合は、 norm_act 1として扱うものとする。 また、 attは、 パラメータであり、 例え ば att = 0.125を与える。
ここで、 式 ( 7) は、 従来技術で既に説明した、 MP E Gの TM 5に よる正規化アクティビティの算出方法における式 (4) の係数 「2」 を、 値 norm— gainに置き換えたものである。 式 ( 7 ) によれば、 ァクテイビ ティ act [m] = 0であれば、 正規化ァクティビティ norm_act [m] = l/norm— gainとなる。 一方、 アクティビティ act [m]が平均アクティビティ avg_ac tに対して非常に大きな値であれば、 正規化ァクティビティ norm_act [m] は、 値 norm_gainに近づく。 すなわち、 マクロブロック毎の正規化ァク ティビティ norm— act [m]は、 1/nornし gain力、ら norm— gainの範囲に正規ィ匕 されることになる。
値 norm_gainは、 式 (6) に示されるように、 平均アクティビティ avg _actに比例する。 したがって、 平均アクティビティ avg_actの小さい、 絵柄の平坦なフレームは、 正規化の範囲が狭くなり、 マクロブロック間 の量子化値にあまり差を付けず、 フレームで均一的に量子化が行われる 一方、 平均アクティビティ avg_actの大きい、 絵柄の複雑なフレームは、 正規化の範囲が広くなり、 マクロブロック間の量子化値に対して積極的 に差を付けられ、 平坦なマクロブロックでは細かな量子化がなされ、 複 雑なマクロプロックでは粗く量子化がなされる。
第 2の例として、 上述の第 1の例による式 ( 7) における被除数側の アクティビティ act [m]および除数側の平均ァクティビティ avg— actをそ れぞれ二乗した式を用いることもできる。 この第 2の例によるマクロブ ロック毎の正規化アクティビティ norm— act [m]の算出方法を、 式 (8 ) および式 (9) に示す。 なお、 式 (8 ) および式 (9) において、 各値 の意味は、 上述の式 (6) および式 (7) と同一である。
norm_gain= at txavg_ac t + 1 · · ·
(8)
norm— act [m] = { (norm_gainxact [m] xac t [m] ) + (avg_ac txavg_ac t) }
÷ { (act [mjxact [m]) + (norm_gainxavg_actxavR act) } ( 9)
なお、 式 (8) および式 (9) において、 act [m]および avg_act が共 に 0になると、 分母が 0になってしまうので、 この場合は、 norm— act [m] = 1として扱うものとする。 また、 attは、 パラメ一夕であり、 例え ば att = 0.125を与える。
この第 2の例の式 (8) および式 (9 ) によっても、 上述した第 1の 例による式 (6) および式 (7) と同様に、 マクロブロック毎の正規化 ァクティビティ norm— ac t [m]【ま、 l/norm_gain力、ら norm—gainの範囲に正 規化されることになる。 したがって、 上述の第 1の例と同様に、 平均ァ クテイビティ avg_actの小さい、 絵柄の平坦な画像では、 均一的に量子 化が行われ、 平均アクティビティ avg_actの大きい、 絵柄の複雑な画像 では、 マクロブロック間の量子化値に対して積極的に差を付けられる。
この第 2の例では、 上述の第 1の例に対して被除数側のァクティビテ ィ act [m]および除数側の平均ァクティビティ avg— act [m]がそれぞれ二乗 されている。 そのため、 第 1の例による結果よりも、 平均ァクティビテ ィ avg_actの値およびマクロブロック毎のァクティビティ act [m]の値の 変化に対する正規化ァクティビティ norm_act[m]の差を顕著にすること でき、 より好ましい結果が得られる。 以下では、 この第 2の例を中心に 説明する。
第 1図は、 上述した第 2の例による正規化を表す式 ( 8) および式 (9) の一例の特性を示すグラフである。 また、 第 2図は、 従来の技術 で説明した MP E Gの TM 5による正規化の式 (4) の一例の特性を示 すグラフである。 第 1図および第 2図において、 X軸、 Y軸、 Z軸は、 それぞれ平均アクティビティ avg_act、 アクティビティ act [m]、 正規化 アクティビティ norm— act [m]を示す。 また、 第 1図および第 2図中に示 される範囲 「女性」 、 「N〇 I S E」 、 「羊」 および 「芝」 は、 それぞ れ第 3図および第 4図に示されるサンプル画像の、 対応する部分におけ る正規化ァクティビティ norm— act [in]の範囲を示す。
なお、 第 3図は、 全体的に平坦な絵柄から構成される画像の例である 特に、 背景に掲げられる絵柄は、 それぞれが単一若しくは数色により塗 り潰された図形より構成され、 画像としては簡単な構成であるといえる 「芝」 および 「羊」 部分は、 共に背景の絵の一部である。 一方、 第 4図 は、 複雑な絵柄と平坦な絵柄とが混在する画像の例である。 中央部に円 で縁取りされて表示される 「女性」 と、 周囲の 「N〇 I S E」 部分から なる。 「女性」 部分は、 第 3図と同様に、 比較的平坦な絵柄であるが、 周囲の 「NO I S E」 部分は、 画素レベルで見たときの部隣接との相関 性が低く、 複雑な絵柄である。
第 1図において、 平均アクティビティ avg—act= 0では、 正規化ァク ティビティ norm_act= 1であり、 平均ァクティビティ avg_act= 1 6の とき norm— gain= 3となり、 正規化アクティビティ norm_act [m]は、 1/3 <norm— act [m]<3の範囲に分布することが分かる。 なお、 第 1図では、 norm_gainfe, rateとして g己 izbされてレ る。
一方、 第 2図では、 アクティビティ act [in]が 64までしか表示されて いないので、 わかりにくいが、 平均アクティビティ avg_actがどのよう な値をとつても、 正規化アクティビティ norm_act [m]は、 1/2く norm_ac t [m]<2の正規化範囲に分布するのが分かる。
第 1図と第 2図とを対比させると、 この発明が適用された第 1図では, 正規化ァクティビティ norm_act [m]は、 同一画像内の複雑な絵柄である 「NO I S E」 には広い範囲が、 比較的平坦な絵柄である 「女性」 には 狭い範囲が割り当てられているのが分かる。 これに対して、 MP EGの TM 5が適用された第 2図では、 「N〇 I S E」 および 「女性」 に対し て、 それぞれ同程度の正規化ァクティビティ norm_act[in]の範囲が割り 当てられている。 一方、 平坦な絵柄である 「羊」 および 「芝」 に対して は、 正規化アクティビティ norm— act [m]の範囲は、 M P E Gの TM 5に よる第 2図に比して、 この発明による第 1図の方が小さく抑えられてい る。
第 5図〜第 8図は、 上述の第 3図および第 4図に示すサンプル画像の それぞれにおける、 MP E Gの TM 5による正規化ァクティビティ norm _act [m]と、 この発明による正規化ァクティビティ norm_act [in]の画像内 での分布を示す。 これら第 5図〜第 8図において、 図中の 「· (黒 丸) 」 は、 その直径が、 画像内の対応する位置 (マクロブロック) の正 規化アクティビティ norm_act [m]の値を相対的に示す。 また、 第 5図お よび第 6図が上述の第 3図に対応し、 第 7図および第 8図が上述の第 4 図に対応する。
なお、 上述した第 3図に示される画像の平均ァクティビティ avg_act は、 avg_act= 3程度である。 また、 上述した第 4図に示される画像の 平均アクティビティ avg_actは、 avg— ac t = 1 6程度である。
第 5図は、 上述の第 3図に示される画像について、 従来の技術である MP E Gの TM 5による正規化を用いた場合の正規化ァクティビティ no rm_act [m]の例を示す。 平坦な画像 (例えばカレンダーの文字の無い部 分、 列車の手前側の部分) を含むマクロブロックは、 小さな値の正規化 アクティビティ norm— act [m]となり、 複雑な画像 (例えばカレンダ一の 絵の部分、 左上部の木の部分) を含むマクロブロックは大きな値の正規 化アクティビティ norm_act [m]として求められ、 画像全体としては、 マ クロブロック毎に正規化ァクティビティ norm_act [m]が大きく変化して いることが分かる。
これは、 特に圧縮率が低く、 符号量に比較的余裕がある場合には、 マ クロブロック間の量子化値に大きな差が生じてしまう。 そのため、 画像 全体が高画質になった分、 マクロプロック間の画質の差が顕著に観測さ れることになる。
第 6図は、 上述の第 3図に示される画像ついて、 この発明による正規 化を用いた場合の正規化ァクティビティ norm— act [m]の例を示す。 上述 の第 5図と比べて、 「參 (黒丸) 」 の大きさのバラツキが少なく、 正規 化ァクティビティ norm_act [m]の値が画像全体で比較的に均一化されて いることが分かる。 すなわち、 平坦な画像を含むマクロブロックも、 複 雑な画像を含むマクロブロックも、 第 5図の例に比べて、 正規化ァクテ ィビティ norm_act [m]の値にそれ程、 差が付けられていないことが分か る。 適応量子化は、 正規化アクティビティ norm_act [m]の値に比例した 量子化値で量子化されるため、 画像全体が比較的均一に量子化されるこ とになる。
平均ァクティビティ avg_actが大きい第 4図の例について説明する。 第 7図は、 上述の第 4図の画像について、 従来の技術である MP E Gの TM 5による正規化を用いた場合の正規化ァクティビティ norm_act [m] の例を示す。 なお、 この第 7図は、 上述の第 5図に対して、 正規化ァク テイビティ norm_act [m]の値を示す 「秦 (黒丸) 」 の直径の比率が変更 されている。
第 7図では上述の第 5図と同様に、 平坦な画像 (例えば 「女性」 の部 分) を含むマクロブロックは、 小さな値の正規化アクティビティ norm_a ct[m]となり、 複雑な画像 ( 「NO I S E」 の部分) を含むマクロプロ ックは、 大きな値の正規化ァクティビティ norm_act [m]として求められ、 マクロプロック毎に正規化ァクティビティ norm_act [m]が変化している ことが分かる。
しかしながら、 第 7図の例では、 ノイズ (N〇 I S E) 部分のように 非常に複雑な画像を含むマクロブロックに符号量をとられて、 相対的に, 平坦な画像を含むマクロブロックの符号量が制限されてしまう。 そのた め、 視覚的に劣化の目立ち易い平坦な画像を含むマクロブロックの画質 が劣化してしまう。
第 8図は、 上述の第 4図に示される画像について、 この発明による正 規化を用いた場合の正規化アクティビティ norm_act [m]の例を示す。 こ の発明では、 画像の平均ァクティビティ avg_actに応じて正規化ァクテ ィビティ norm— act [m]の正規化範囲を動的に変更している。 そのため、 第 4図のように、 画像が複雑で、 平均アクティビティ avg_actの値が大 きい (第 4図の例では acし avg= 1 6程度) 場合には、 正規化ァクティ ビティ norm_act [m]の範囲は、 例えば l/3<norm_act [m]<3というように、 平均ァクティビティ avg— actが小さい画像に比して大きくされ、 広い正 規化範囲とされる。
そのため、 平坦な画像を含むマクロブロックは、 より小さな正規化ァ クティビティ norm_act [m]とされ、 ノイズ部分のように非常に複雑な画 像を含むマクロブロックは、 より大きな正規化アクティビティ norm— act [m]の値とされる。 第 8図の例では、 平坦な画像を含む部分と非常に複 雑な画像を含む部分とで、 正規化ァクティビティ norm_act [m]の値に大 きな差が付けられていることが分かる。
このように、 この発明を用いることにより、 絵柄などの画像の特性に 応じて適応量子化が変更され、 視覚特性上その画像の特性に最適な画質 を達成することが可能とされる。
次に、 この発明の実施の一形態を実際の構成に適用した例について説 明する。 第 9図 Aおよび第 9図 Bは、 この発明の実施の一形態が適用さ れたディジタル VT Rの一例の構成を示す。 このディジタル VT Rは、 MP E G方式により圧縮符号化されたディジ夕ルビデオ信号を記録媒体 に直接的に記録することができるようにしたものである。 先ず、 このディジタル VTRにおける記録系の構成および処理動作に ついて説明する。 この記録系に外部より入力される信号は、 SD I (Ser ial Data Interface)信号および S D T I (Serial Data Transport Inte rface)信号の 2種類のシリアルディジ夕ルイン夕ーフェイス信号、 アナ ログインターフェイス信号および制御信号である外部基準信号 R E Fで ある。
なお、 SD Iは、 (4 : 2 : 2 ) コンポーネントビデオ信号とデイジ 夕ルオーディォ信号と付加的データとを伝送するために、 SMP TEに よって規定されたインターフェイスである。 また、 SDT Iは、 デイジ タルビデオ信号が MP E G方式で圧縮符号化されたストリームである M P E Gエレメンタリストリーム (以下、 MP EG E Sと称する) が伝 送されるイン夕一フェイスである。 E Sは、 4 : 2 : 2のコンポ一ネン トであり、 また、 上述したように、 全て I ピクチャのストリームであり、 1 GO P = 1ピクチャの関係を有する。 S D T I — C P (Content Packa ge)のフォーマッ トでは、 M P E G E Sがアクセスユニッ トへ分離さ れ、 また、 フレーム単位のパケッ トにパッキングされている。 S DT I — C Pでは、 十分な伝送帯域 (クロックレートで 2 7 MHzまたは 3 6 M Hz、 ストリームビッ トレートで 2 7 0 M bpsまたは 3 6 0 M bps) を使 用しており、 1フレーム期間で、 バースト的に E Sを送ることが可能で ある。
S D Iにより伝送される S D I信号は、 S D I入力部 1 0 1に入力さ れる。 また、 アナログビデオ信号からなるアナログ入力信号がアナログ 入力部 1 2 0に入力される。 アナログ入力部 1 2 0では、 入力されたァ ナログ入力信号をディジ夕ル信号に変換し、 例えば上述の SD I フォー マッ トにマッピングして出力する。 アナログ入力信号が変換され S D I フォーマツ 卜にマツビングされたこの S D I信号は、 S D I入力部 1 0 1に供給される。
S D I入力部 1 0 1では、 供給された S D I信号をシリアル信号から パラレル信号に変換して出力すると共に、 S D I信号に含まれる入力の 位相基準である入力同期信号を抽出し、 タイミングジェネレータ TG 1 02に出力する。
また、 SD I入力部 1 0 1は、 変換したパラレル信号からビデオ信号 とオーディォ信号とを分離する。 分離されたビデオ入力信号とオーディ ォ入力信号は、 それぞれ MP E Gエンコーダ 1 0 3とディレイ回路 1 0 4に出力される。
タイミングジェネレータ TG 1 0 2は、 入力された外部基準信号 RE Fから基準同期信号を抽出する。 タイミングジェネレータ TGでは、 こ の基準同期信号と S D I入力部 1 0 1から供給された入力同期信号との うち、 所定に指定された基準信号に同期して、 このディジタル VTRで 必要な夕イミング信号を生成し、 夕イミングパルスとして各ブロックに 供給する。
MP E Gエンコーダ 1 0 3は、 入力されたビデオ入力信号を、 D CT 変換して係数データに変換し、 係数デ一夕を量子化した後、 可変長符号 化する。 MP EGエンコーダ 1 0 3から出力される可変長符号化 (VL C) データは、 MP E G 2に準拠したエレメン夕リストリーム (E S) である。 この出力は、 記録側のマルチフォーマッ トコンバータ (以下、 記録側 MF Cと称する) 1 0 6の一方の入力端に供給される。
ディレイ回路 1 04は、 入力されたオーディオ入力信号を、 非圧縮デ 一夕のままで、 MP EGエンコーダ 1 0 3でのビデオ信号に対する処理 のディレイに合わせるためのディレイラインの働きをするものである。 このディ レイ回路 1 04で所定に遅延されたオーディオ信号は、 E C C エンコーダ 1 0 7に出力される。 これは、 この実施の一形態によるディ ジタル VTRにおいて、 オーディォ信号が非圧縮信号として扱われるた めである。
外部から SDT Iにより伝送され供給された SDT I信号は、 S DT I入力部 1 0 5に入力される。 SDT I信号は、 S DT I入力部 1 0 5 で同期検出される。 そして、 バッファに一旦溜め込まれ、 エレメンタリ ストリームが抜き出される。 抜き出されたエレメン夕リストリ一ムは、 記録側 MF C 1 0 6の他方の入力端に供給される。 同期検出されて得ら れた同期信号は、 上述したタイミングジェネレータ TG 1 02に供給さ れる (図示しない) 。
なお、 S DT I入力部 1 0 5では、 さらに、 入力された SDT I信号 からディジタルオーディォ信号を抽出する。 抽出されたディジ夕ルオー ディォ信号は、 E C Cエンコーダ 1 0 7に供給される。
このように、 この実施の一形態によるディジタル VTRは、 S D I入 力部 1 0 1から入力されるベースバンドのビデオ信号と独立して、 MP EG E Sを直接的に入力することができる。
記録側 MF C回路 1 0 6は、 ストリームコンバータとセレクタとを有 し、 SD I入力部 1 0 1および SDT I入力部 1 0 5から供給された M P EG E Sのうち、 何れかが選択され、 選択された MP EG E Sの DCT係数を、 1マクロブロックを構成する複数の DC Tブロックを通 して周波数成分毎にまとめ、 まとめた周波数成分を低周波数成分から順 に並び替える。 MP EG E Sの係数が並べ替えられたストリームを、 以下、 変換エレメン夕リストリームと称する。 このように MP EG E Sを再配置することにより、 サーチ再生時にもなるベく多くの D C係数 と低次の AC係数を拾い、 サーチ画の品位向上に貢献している。 変換ェ レメン夕リストリームは、 E C Cエンコーダ 1 0 7に供給される。
E C Cエンコーダ 1 0 7は、 大容量のメインメモリが接続され (図示 しない) 、 パッキングおよびシャフリング部、 オーディオ用外符号ェン コーダ、 ビデオ用外符号エンコーダ、 内符号エンコーダ、 オーディオ用 シャフリング部およびビデオ用シャフリング部などを内蔵する。 また、
E C Cエンコーダ 1 0 9は、 シンクブロック単位で I Dを付加する回路 や、 同期信号を付加する回路を含む。 なお、 実施の第 1の形態では、 ビ デォ信号およびオーディォ信号に対するエラー訂正符号としては、 積符 号が使用される。 積符号は、 ビデオ信号またはオーディオ信号の 2次元 配列の縦方向に外符号の符号化を行い、 その横方向に内符号の符号化を 行い、 データシンボルを 2重に符号化するものである。 外符号および内 符号としては、 リードソロモンコード(Reed-Solomon code) を使用でき る。
E CCエンコーダ 1 0 7には、 MF C回路 1 0 6から出力された変換 エレメン夕リストリ一ムが供給されると共に、 SDT I入力部 1 0 5お よびディレイ回路 1 04から出力されたオーディオ信号が供給される。 E C Cエンコーダ 1 0 7では、 供給された変換エレメン夕リストリーム 及びオーディォ信号に対してシャフリング及びエラ一訂正符号化を施し, シンクブロック毎に I Dおよび同期信号を付加し記録データとして出力 する。
E CCエンコーダ 1 0 7から出力された記録データは、 記録アンプを 含むイコライザ E Q 1 0 8で記録 R F信号に変換される。 記録 RF信号 は、 回転ヘッドが所定に設けられた回転ドラム 1 0 9に供給され、 磁気 テープ 1 1 0上に記録される。 回転ドラム 1 0 9には、 実際には、 隣接 するトラックを形成するへッ ドのアジマスが互いに異なる複数の磁気へ ッドが取り付けられている。
記録データに対して必要に応じてスクランブル処理を行っても良い。 また、 記録時にディジタル変調を行っても良く、 さらに、 パーシャル ' レスポンスクラス 4とビ夕ビ符号を使用しても良い。 なお、 イコライザ 1 0 8は、 記録側の構成と再生側の構成とを共に含む。
次に、 このディジタル V T Rにおける再生系の構成および処理動作に ついて説明する。 再生時には、 磁気テープ 1 1 0から回転ドラム 1 0 9 で再生された再生信号が再生アンプなどを含むィコライザ 1 0 8の再生 側の構成に供給される。 イコライザ 1 0 8では、 再生信号に対して、 等 化や波形整形などがなされる。 また、 ディジタル変調の復調、 ビ夕ビ復 号等が必要に応じてなされる。 イコライザ 1 0 8の出力は、 E C Cデコ —ダ 1 1 1に供給される。
E C Cデコーダ 1 1 1は、 上述した E C Cエンコーダ 1 0 7と逆の処 理を行うもので、 大容量のメインメモリと、 内符号デコーダ、 オーディ ォ用およびビデオ用それぞれのデシャフリング部ならびに外符号デコー ダを含む。 さらに、 E C Cデコーダ 1 1 1は、 ビデオ用として、 デシャ フリングおよびデパッキング部、 データ補間部を含む。 同様に、 オーデ ィォ用として、 オーディオ A U X分離部とデ一夕補間部を含む。
E C Cデコーダ 1 1 1では、 再生デ一夕に対して同期検出を行い、 シ ンクブ口ックの先頭に付加されている同期信号を検出してシンクブロッ クを切り出す。 再生データは、 シンクブロック毎の内符号のエラー訂正 がなされ、 その後、 シンクブロックに対して I D補間処理がなされる。 I Dが補間された再生データは、 ビデオデータとオーディオデータとに 分離される。 ビデオデータおよびオーディオデータは、 それぞれデシャ フリング処理され、 記録時にシャフリングされたデ一夕順が元に戻され る。 デシャフリングされたデ一夕は、 それぞれ外符号のエラー訂正が行 われる。
E C Cデコーダ 1 1 1において、 エラー訂正能力を超え、 訂正できな いエラーがあるデータに関しては、 エラ一フラグがセットされる。 ここ で、 ビデオデータのエラーに関しては、 エラーを含むデータを指し示す 信号 ERRが出力される。
エラ一訂正された再生オーディォデ一夕は、 S DT I出力部 1 1 5に 供給されると共に、 ディ レイ回路 1 14で所定の遅延を与えられて S D I出力部 1 1 6に供給される。 ディレイ回路 1 1 4は、 後述する MP E Gデコーダ 1 1 3でのビデオデータの処理による遅延を吸収するために 設けられる。
一方、 エラ一訂正されたビデオデータは、 再生変換エレメン夕リスト リームとして再生側 MF C回路 1 1 2に供給される。 上述した信号 ER Rも、 再生側 MF C回路 1 1 2に供給される。 再生側 MF C 1 1 2は、 上述した記録側 MF C 1 0 6と逆の処理を行うものであって、 ストリー ムコンバータを含む。 ストリームコンバータでは、 記録側のストリーム コンバータと逆の処理がなされる。 すなわち、 DCTブロックに跨がつ て周波数成分毎に並べられていた D CT係数を、 DCTブロック毎に並 び替える。 これにより、 再生信号が MP E G 2に準拠したエレメンタリ ストリームに変換される。 このとき、 E C Cデコーダ 1 1 1から信号 E RRが供給された場合は、 対応するデータを MP EG 2に完全に準拠す る信号に置き換えて出力する。
再生側 MF C回路 1 1 2から出力された MP EG E Sは、 MP EG デコーダ 1 1 3および S DT I出力部 1 1 5に供給される。 MP E Gデ コーダ 1 1 3は、 供給された MP EG E Sを復号し、 非圧縮の元のビ デォ信号に戻す。 すなわち、 MP EGデコーダ 1 1 3は、 供給された M P EG E Sに対して逆量子化処理と、 逆 DCT処理とを施す。 復号さ れたビデオ信号は、 S D I出力部 1 1 6に供給される。
上述したように、 30 1出カ部 1 1 6には、 E CCデコーダ 1 1 1で ビデオデータと分離されたオーディオデータがディレイ 1 14を介して 供給されている。 S D I出力部 1 1 6では、 供給されたビデオデータと オーディオデータとを、 SD Iのフォーマットにマッピングし、 S D I フォーマツトのデ一夕構造を有する S D I信号へ変換される。 この S D I信号が外部に出力される。
一方、 S DT I出力部 1 1 5には、 上述したように、 E CCデコーダ 1 1 1でビデオデータと分離されたオーディオデータが供給されている。 S DT I出力部 1 1 5では、 供給された、 エレメンタリストリームとし てのビデオデータと、 オーディオデータとを S D T Iのフォーマツトに マッピングし、 S DT I フォーマツ卜のデータ構造を有する S DT I信 号へ変換されるこの SDT I信号が外部に出力される。
なお、 システムコントローラ 1 1 7 (第 9図 Aおよび第 9図 B中では, シスコン 1 1 7と略記する) は、 例えばマイクロコンピュー夕からなり, 信号 S Y— I Oにより各プロックと通信を行うことにより、 このディジ タル VT Rの全体の動作を制御する。 サーポ 1 1 8は、 信号 SY— SV によりシステムコントローラ 1 1 7と互いに通信を行いながら、 信号 S V— I Oにより、 磁気テープ 1 1 0の走行制御や回転ドラム 1 0 9の駆 動制御などを行う。
第 1 0図 A、 第 1 0図 Bおよび第 1 0図 Cは、 上述した MP EGェン コーダ 1 03の一例の構成を、 より具体的に示す。 また、 第 1 0図 A、 第 1 0図 Bおよび第 1 0図 Cの各部において転送されるストリームの構 成例を、 第 1 1図 A、 第 1 1図 Bおよび第 1 1図 C、 第 1 2図 A、 第 1 2図 Bおよび第 1 2図 C、 第 1 3図 Aおよび第 1 3図 B、 第 1 4図 Aお よび第 1 4図 B、 第 1 5図 A、 第 1 5図 Bおよび第 1 5図 C、 第 1 6図 A、 第 1 6図 Bおよび第 1 6図(:、 ならびに、 第 1 7図にそれぞれ示す < MP E Gエンコーダ 1 0 3は、 入力フィールドアクティビティ平均化 処理部 1 0 3 A、 プリェンコ一ド処理部 1 0 3 Bおよびェンコ一ド部 1 0 3 Cからなる。 入力フィールドアクティビティ平均化処理部 1 0 3 A では、 入力されたビデオデータのァクティビティの平均値が求められて プリェンコ一ド処理部 1 0 3 Bに渡される。 プリェンコ一ド処理部 1 0 3 Bでは、 このアクティビティの平均値を用いて入力ビデオデータの量 子化による発生符号量が見積もられる。 この見積もり結果に基づき、 ェ ンコード部 1 0 3 Cにおいて、 符号量制御しながら入力ビデオデータに 対する実際の量子化が行われ、 量子化されたビデオデータに対しさらに 可変長符号化がなされ、 MPEG E Sとされて出力される。
なお、 タイミングジェネレータ TG 2 2 0は、 例えば第 9図 Aおよび 第 9図 Bのタイミングジェネレータ TG 1 0 3から供給された水平同期 信号 HD、 垂直同期信号 VDおよびフィールド同期信号 F LDに基づき, MP EGエンコーダ 1 0 3内で必要とされるタイミング信号を生成し出 力する。 また、 C PU I ZFブロック 2 2 1は、 第 9図 Aおよび第 9 図 Bのシステムコントローラ 1 1 7とのインターフェイスであり、 C P U I ZFブロック 22 1を介してやりとりされた制御信号やデータに より、 MP EGエンコーダ 1 0 3における動作が制御される。
先ず、 入力フィールドァクティ ビティ平均化処理部 1 0 3 Aの処理に ついて説明する。 S D I入力部 1 0 1から出力され MP EGエンコーダ 1 0 3に入力されたビデオデータは、 入力部 2 0 1に供給され、 メイン メモリ 2 03に格納するのに適したィンターフェイスに変換されると共 に、 ノ、 °リティチェックがなされる。 入力部 2 0 1から出力されたビデオ データは、 ヘッダ作成部 2 0 2に供給され、 垂直ブランキング区間など を禾1 J用して M P E Gにおける、 sequence—header 、 quantizer—matrix, gop_header などの各ヘッダが抽出される。 抽出された各ヘッダは、 メ インメモリ 2 0 3に格納される。 これらのヘッダは、 主に、 C PU I ZFブロック 2 2 1から指定される。 また、 ヘッダ作成部 20 2におい て、 垂直ブランキング区間以外では、 入力部 2 0 1から供給されたビデ ォデ一夕がメインメモリ 2 0 3に格納される。
メインメモリ 2 0 3は、 画像のフレームメモリであり、 ビデオデータ の再配列やシステムディ レイの吸収などが行われる。 ビデオデータの再 配列は、 例えば図示されないアドレスコントローラによりメインメモリ 2 0 3からの読み出しァドレスを制御されることによりなされる。 なお、 図中、 メインメモリ 2 0 3のブロック中に記載される 8ライン、 0 . 5 フレームおよび 1フレームは、 ディ レイ値であり、 メインメモリ 2 0 3 からのリードタイミングが示される。 これらは、 タイミングジエネレー 夕 T G 2 2 0の指令に基づき適切に制御される。
ラス夕スキャン Zブロックスキャン変換部 2 0 4は、 ライン毎にメイ ンメモリ 2 0 3に格納されたビデオデータを、 M P E Gで扱うマクロブ ロック毎に切り出して後段のァクティビティ部 2 0 5に送る。 この実施 の一形態では、 第 1フィ一ルドだけを用いてァクティビティの計算を行 うため、 ラス夕スキャンノブロックスキャン変換部 2 0 4から出力され るマクロブロックは、 第 1フィールド分のビデオデータにより構成され る。
ラス夕スキャン/ブロックスキャン変換部 2 0 4から出力データとし て出力されたストリームは、 第 1 1図 Aに一例が示されるように、 垂直 および水平方向のマクロブロックのアドレス情報が先頭に配され、 所定 サイズの空き領域の後ろに、 1マクロブロック分の画像デ一夕が格納さ れる。
なお、 ストリームは、 例えば 8ビッ トを 1ヮードとして、 5 7 6ヮ一 ドのデータ長を有し、 後半の 5 1 2ワード (データ部と称する) が 1マ クロブロック分の画像データを格納する領域に割り当てられている。 前 半の 6 4ワード (ヘッダ部と称する) は、 先頭に上述のマクロブロック のアドレス情報が格納され、 その他の部分は、 後段の各部にて埋め込ま れるデータやフラグなどのため空き領域とされる。
M P E Gで扱うマクロブロックは、 1 6画素 X 1 6ラインのマトリク スである。 一方、 この M P E Gエンコーダ 1 0 3では、 第 3図を用いて 上述したように、 第 1フィールドだけによるアクティ ビティを求める処 理を行う。 そのため、 第 1フィールドの 8ラインまでがメインメモリ 2 0 3に格納された時点で処理を開始することができる。 なお、 実際には, タイミングジェネレータ T G 2 2 0からの指令にて処理が適切に開始さ れる。
アクティビティ部 2 0 5は、 マクロブロック毎のアクティビティを計 算する。 この M P E Gエンコーダ 1 0 3においては、 第 1フィールドだ けからァクティビティが計算され、 その計算結果がフィールドァクティ ビティ信号 f i e l d_ac tとして出力される。 信号 f i e l d_ac tは、 平均化部 2 0 6に供給され、 1フィールド分が積算され、 その平均値 avg— ac tが求 められる。 平均値 avg— ac tは、 後述するプリエンコード処理部 1 0 3 B のアクティビティ部 2 0 9に供給される。 アクティビティ部 2 0 9では, 第 1および第 2フィールドの平均値 avg_ac tを共に用いてプリェンコ一 ド処理が行われる。
したがって、 第 1フィールドにおけるァクティ ビティの平均値 avg_ac tが判明した後、 その平均値を用いて、 適応量子化を考慮したプリェン コード処理を行うことが可能となる。
次に、 プリエンコード処理部 1 0 3 Bについて説明する。 ラス夕スキ ヤンノブロックスキャン変換部 2 0 7 Aは、 上述したラス夕スキャン ブロックスキャン変換部 2 0 4と基本的には同様の処理を行う。 但し、 このラスタスキャン ブロックスキャン変換部 2 0 7 Aは、 符号量の見 積もりを行うプリェンコ一ド処理のために行われるため、 第 1フィール ドおよび第 2フィールドのビデオデータが共に必要とされる。 そのため、 ラス夕スキャン Zブロックスキャン変換部 2 0 7 Aでは、 第 2フィール ドの 8ラインまでがメインメモリ 2 0 3に格納された時点で、 M P E G で扱う 1 6画素 x l 6ラインのサイズのマクロブロックを構成すること が可能となり、 この時点で処理を開始することができる。 なお、 実際に は、 タイミングジェネレータ T G 2 2 0からの指令によって、 処理が適 切に開始される。
ラス夕スキャン Zブロックスキャン変換部 2 0 7 Aから出力されたビ デォデ一夕は、 D C Tモード部 2 0 8に供給される。 D C Tモード部 2 0 8は、 フィールド D C T符号化モードおよびフレーム D C T符号化モ 一ドの何れを用いて符号化するかを決める。
ここでは、 実際に符号化するのではなく、 垂直方向に隣接した画素間 差分値の絶対値和をフィ一ルド D C T符号化モードで計算したものと、 フレーム D C T符号化モードで計算したものとが比較され、 その値が小 さい符号化モードが選択される。 選択結果は、 D C Tモードタイプデー 夕 dcし typとしてストリーム中に一時的にフラグとして挿入され、 後段 に伝えられる。 D C Tモードタイプデ一夕 dcし typは、 第 1 1図 Bに示 されるように、 ヘッダ部中の空き領域の後端側に格納される。
アクティビティ部 2 0 9は、 上述したアクティビティ部 2 0 5と、 基 本的には同様の処理を行う。 ただし、 このアクティビティ部 2 0 9では, 上述のように、 プリエンコード処理を行うためのもので、 第 1フィ一ル ドおよび第 2フィ一ルドのデ一夕が共に用いられて、 マクロブロック毎 のァクティビティが計算される。
アクティビティ部 2 0 9により、 先ず、 アクティ ビティ ac tが求めら れ、 第 1 1図 Cに示されるように、 ヘッダ部のマクロブロックアドレス に続けて格納される。 次に、 このアクティビティ ac tと上述した平均化 部 2 0 6から得られるフィールドァクティビティの平均値 avg— actとを 用いて、 上述した式 (8) および式 (9) に基づき、 この発明による正 規化ァクティビティ norm— actが求められる。 このアクティビティ部 2 0 9における、 この発明による正規化ァクティビティ norm— actを計算する 構成については、 後述する。
求められた正規化ァクティビティ norm— actは、 第 1 2図 Aに示される ように、 ストリーム中のヘッダ部に一時的にフラグとして挿入され、 後 段に伝えられる。 なお、 上述のアクティビティ actは、 ストリーム中で、 正規化ァクティビテイデー夕 norm_actに上書きされる。
アクティビティ部 2 0 9の出力は、 D CT部 2 1 0 Aに供給される。 DCT部 2 1 O Aでは、 供給されたマクロブロックを 8画素 X 8画素か らなる D C Tブロックに分割し、 D C Tブロックに対して 2次元 D C T が行われ、 DCT係数が生成される。 DCT係数は、 第 1 2図 Bに示さ れるように、 ストリームのデータ部に格納され、 量子化テーブル部 2 1 1 Aに供給される。
量子化テーブル部 2 1 1 Aでは、 D C T部 2 1 0 Aで変換された D C T係数に対して量子化マトリクス(quantizer— matrix)による量子化が行 われる。 量子化テーブル部 2 1 1 Aで量子化された D C T係数は、 第 1 2図 Cに示されるように、 ストリームのデータ部に格納され、 出力され る。 量子化テーブル部 2 1 1 Aの出力は、 複数の Q— n (量子化) 部 2 1 2、 2 1 2、 ' . '、 〇部 2 1 3、 2 1 3、 · · · 、 積算部∑ 2 14、 2 14、 · · ·、 ならびに、 積算部∑ 2 1 5、 2 1 5、 · · · と からなる多段階の量子化部に供給される。 量子化テーブル部 2 1 1 Aで 量子化された D C T係数は、 この多段階ステップの量子化部で多段階に 量子化される。
DCT係数は、 Q n部 2 1 2、 2 1 2、 · · · において、 それぞれ 異なった量子化スケール(quant izer_scale) Qを用いて量子化される。 なお、 量子化スケール Qの値は、 例えば MP EG 2の規格によって予め 決められており、 <3—11部2 1 2、 2 1 2、 · · · は、 この規格に基づ き、 例えば 3 1個の量子化器で構成される。 このとき、 n = 3 1であつ て、 Q— n部 2 1 2、 2 1 2、 · · · は、 Q— 1部、 Q— 2部、 · · ·、 Q— 3 1部である。 そして、 各量子化器がそれぞれに割り振られた量子 化スケール Qnを用いて、 DCT係数の量子化が合計で 3 1ステップ、 行われる。 以下では、 Q— n部 2 1 2、 2 1 2、 · · · のそれぞれに対 応する量子化スケール値を量子化スケール Q n値とする。
Q— n部 2 1 2、 2 1 2、 · · · において、 それぞれの量子化スケー ル Q n値により量子化が行われる。 このとき、 上述のアクティビティ部 2 0 9で得られた正規化ァクティビティデ一夕 norm_actを用いて mqaunt =Q— nxnorm_actにより求めた、 視覚特性を考慮した量子化スケール である mqauntにより適応量子化が行われる。
Q— n部 2 1 2、 2 1 2、 · · · において適応量子化された、 量子化 スケール Qn毎の DCT係数は、 それぞれ第 1 3図 Aに示されるように ストリーム中のデータ部に格納され、 し〇部2 1 3、 2 1 3、 · · · にそれぞれ供給される。 量子化スケール Qn毎の DCT係数は、 VL C 部 2 1 3、 2 1 3、 · · ' において、 ジグザグスキャンなどのスキヤ二 ングが施され、 2次元ハフマンコードなどに基づく VL Cテーブルが参 照されてそれぞれ可変長符号化される。
VL C部 2 1 3、 2 1 3、 · · ·で可変長符号化されたデータは、 第 1 3図 Bに示されるようにストリーム中のデータ部に格納され、 それぞ れ出力される。 VL C部 2 1 3、 2 1 3、 · · · の出力は、 それぞれ対 応する積算部∑ 2 14、 2 14、 · · · に供給される。
積算部∑ 2 14、 2 1 4、 · · ·では、 それぞれマクロブロック毎に 発生符号量が積算される。 上述のように 3 1種類の量子化器を用いる場 合には、 それぞれに対応する 3 1種類の発生符号量がマクロブロック毎 に得られることになる。 マクロブロック毎の発生符号量は、 第 1 4図 A に示されるように、 積算部∑ 2 1 4、 2 1 4、 · · · において積算され た発生符号量がストリーム中のヘッダ部に、 各々格納される。 すなわち, Q— 1部 2 1 2〜Q— n部 2 1 2のそれぞれの量子化による発生符号量 が、 マクロブロック毎に、 ストリームのヘッダ部に格納される。 なお、 ストリームのデータ部は、 削除される。 このマクロブロック毎のストリ ームは、 メインメモリ 2 0 3に供給される。
また、 積算部∑ 2 1 4、 2 1 4、 · · ·から出力されたマクロブロッ ク毎の発生符号量は、 それぞれ積算部∑ 2 1 5、 2 1 5、 · · · に供給 される。 積算部∑ 2 1 5、 2 1 5、 · · · は、 上述した視覚特性を考慮 した quantizer_scale ( = mquant) で量子化した場合のマクロブロック 毎の発生符号量に対応する符号量を、 積算部∑ 2 1 4で求めたマクロブ ロック毎の発生符号量の中から選択し、 それをフレーム分積算する。
積算部∑ 2 1 5、 2 1 5、 · · ·で量子化スケール Q n毎にそれぞれ フレーム分積算された値は、 そのフレームにおける発生符号量 (フレー ムデ一夕レート) とされて、 第 1 4図 Bに示されるように、 nワードの ストリ一ムとして後述するレートコントロール部 2 1 7に供給される。 なお、 上述のように 3 1種類の量子化器を用いる場合には、 それぞれに 対応する 3 1種類の発生符号量がフレーム毎に得られることになる。
発生符号量を求める方法を、 より具体的に説明する。 例えば、 「Q一 4部 2 1 2による発生符号量」 は、 次のようにして求められる。
例えば、
norm— act [1]=1.3
norm ac t [2] =1.5 norm—act [3] =0.8
norm— act [4] =1.0 である場合、
mqaunt [l]=4xl.3=5.2
: Q— 5部 2 1 2による発生符号量を、 第 1 4図 Aのヘッダ部から求め る。
mqaunt [2]=4xl.5 = 6.0
: Q— 6部 2 1 2による発生符号量を、 第 1 4図 Aのヘッダ部から求め る。
mqaunt [3]=4x0.8=3.2
: Q— 3部 2 1 2による発生符号量を、 第 1 4図 Aのヘッダ部から求め る。
mqaunt [4]=4xl.0=4.0
: Q_4部 2 1 2による発生符号量を、 第 1 4図 Aのヘッダ部から求め る。 以上を、 1フレーム分、 積算する。 これを、 Q— 1部 2 1 2〜Q— n部 2 1 2に対してそれぞれ行い、 1フレーム分の発生符号量を求める。
次に、 エンコード処理部 1 0 3 Cについて説明する。 エンコード処理 部 1 0 3 Cでは、 最終的なエンコード処理が行われる。 上述したように. プリェンコ一ド処理部 1 0 3 Bにおいて、 様々な量子化を行った場合の 1フレーム分の発生符号量が見積もられる。 エンコード処理部 1 0 3 C では、 この 1フレーム分で見積もられた発生符号量に基づき、 予め設定 された目標発生符号量を絶対に超えないようにエンコードが行われ、 M P E G E Sが出力される。 ェンコ一ド処理部 1 0 3 Cで用いられるデータは、 既にメインメモリ 2 0 3に格納されているが、 上述したように、 プリエンコード処理部 1 0 3 Bにより様々な量子化を行った場合の 1フレームにおける発生符号 量が見積もられた時点で処理を開始することができる。 エンコード処理 部 1 0 3 Cの各部における処理は、 上述と同様に、 タイミングジエネレ —夕 TG 2 2 0からの指令に基づき適切に開始される。
メインメモリ 20 3から読み出されたビデオデ一夕は、 ラスタスキヤ ンノブロックスキヤン変換部 20 7 Bにおいて、 上述のラス夕スキャン ノブロックスキャン変換部 2 0 7 Aと同様の処理をされて 1 6画素 xl 6ラインのマクロブロックが切り出される。 切り出されたマクロブロッ クは、 第 1 5図 Aに示されるように、 上述した第 1 4図 Aに示されるへ ッダ部に対応するデータ部に格納され、 D CTモード部 2 1 6に供給さ れる。
D C Tモード部 2 1 6では、 、 上述の D C Tモード部 2 08と同様に. フィールド D C T符号化モードおよびフレーム D C T符号化モードのう ち何れを用いて符号化するかが決められる。 このとき、 既に DCTモー ド部 2 0 8において符号化モードが決められ、 その結果が DC Tタイプ データ dcし typとしてストリーム中に一時的に挿入されている (第 1 5 図 A参照) 。 DCTモード部 2 1 6では、 ストリームからこの D C T夕 ィプデ一夕 dcし typを検出し、 検出された D C Tタイプデータ dct— typに 基づきフィールド符号化モードおよびフレーム符号化モードを切り換え る。 D C Tモード部 2 1 6の出力を第 1 5図 Bに示す。
DCTモード部 2 1 6から出力されたマクロブロックは、 DCT部 2 1 0 Bに供給され、 上述の DCT部 2 1 0 Aと同様にして 8画素 x8画 素の D C Tブロック単位で 2次元 D C丁される。 2次元 DCTされた D CT係数は、 第 1 5図 Cに示されるように、 ストリーム中のデータ部に 格納されて、 DCT部 2 1 0 Bから出力される。
量子化テーブル部 2 1 1 Bは、 上述の量子化テーブル部 2 1 1 Aと同 様に構成することができ、 D CT部 2 1 0 Bで変換された D CT係数に 対して量子化マトリクスによる量子化が行われる。 量子化テーブル部 2 1 1 Bで量子化された D C T係数は、 第 1 6図 Aに示されるように、 ス トリ一ム中のデ一夕部に格納されてレートコントロール部 2 1 7に供給 される。
レートコントロール部 2 1 7では、 上述したプリエンコード処理部 1 0 3 Bにおいて積算部∑ 2 1 5、 2 1 5、 · · ·で得られた、 各量子化 スケール Q n毎のフレームデータレートの中から、 システムコント口一 ラ 1 1 7により設定される 1フレーム当たりの最大発生符号量を超えな いもので、 且つ、 最も設定値に近いものが選択される。 そして、 選択さ れたフレームデータレ一トに対応する量子化器において用いられたマク ロブロック毎の量子化スケール(mquant)が、 ストリーム中に挿入された 正規化アクティビティデータ norm_actから再度求められ、 量子化部 2 1 8に供給される。
マクロブロック毎の量子化スケールは、 第 1 6図 Bに示されるように, ストリーム中のへッダ部の後端側に qauntiser— scaleとして格納され、 量子化部 2 1 8に伝えられる。
なお、 1フレーム当たりの最大発生符号量は、 例えばシステムコント ローラ 1 1 7により設定され、 C PU I /F 2 2 1を介してレ一トコ ントロール部 2 1 7に伝えられる。
また、 この際、 システムコントローラ 1 1 7で設定され C P U I /
F 2 2 1を介して伝えられる、 1フレームあたりの最大発生符号量と、 上述したストリーム中に挿入された正規化ァクティビティデータ norm_a ctから求められたマクロブロック毎の量子化スケール(mqaunt)による発 生符号量との差分を超えない範囲で、 マクロブロック毎に量子化スケー ル(mquant)の値を 1サイズ小さくするようにできる。 これにより、 シス テムコントローラ 1 1 7で設定され C P U I ZF 2 2 1を介して伝え られる 1フレーム当たりの最大発生符号量に近付け、 高画質を実現する ことが可能である。
量子化部 2 1 8では、 レ一トコントロール部 2 1 7により上述のよう にして指定される量子化スケール(quantizes— scale)をストリーム中か ら取り出し、 取り出された量子化スケールに基づき量子化テーブル部 2 1 1 Bで量子化された D C T係数の量子化が行われる。 このとき、 レー トコントロール部 2 1 7から与えられる量子化スケールは、 正規化ァク ティビティデータ norm_actから求められた量子化スケール(mquant)の値 であるため、 視覚特性が考慮された適応量子化が行われることになる。 量子化部 2 1 8で量子化された DCT係数は、 第 1 6図 Cに示される ようにストリ一ム中のデータ部に格納され、 VL C部 2 1 9に供給され る。 量子化され V L C部 2 1 9に供給された D C T係数は、 ジグザグス キャンなどのスキヤンニングが施され、 2次元ハフマンコードに基づく VL Cテーブルが参照されてそれぞれ可変長符号化される。 さらに、 可 変長符号に対して、 バイ ト単位で整列するようにビットシフ卜が施され, MP EG E Sとされて出力される。
このとき、 V L C部 2 1 9までストリームの前半部を構成していたへ ッダ部が第 1 7図に示されるようにスライス層以下の MP EGのヘッダ 情報が格納される MP E Gのヘッダ部にすげ替えられて出力される。 可 変長符号は、 ストリームの後半側のデータ部に格納される。
第 1 8図は、 上述したアクティビティ部 2 0 9における、 この発明に よる正規化ァクティビティ norm— actを計算するための一例の構成を示す < なお、 正規化アクティ ビティ norm_actは、 上述の式 ( 8 ) および式 (9) により計算されるものとする。
上述したように、 アクティビティ部 2 0 9により、 先ず、 ァクテイ ビ ティ actが求められる。 このアクティ ビティ actが乗算器 3 0 1の一方お よび他方の入力端に供給され、 actxactが計算される。 計算結果は、 レ ジス夕 3 04および 3 0 7を介して乗算器 3 1 1の一方の入力端に供給 されると共に、 レジスタ 3 1 5をさらに介して加算器 3 1 8の一方の入 力端に供給される。
平均化部 2 0 6から出力された平均ァクティ ビティ avg_actが乗算器 3 0 2の一歩および他方の入力端に供給され、 avg_actxavg— actが計算 される。 計算結果は、 レジス夕 3 0 5および 3 0 8を介して乗算器 3 1 2の一方の入力端に供給されると共に、 レジス夕 3 1 3をさらに介して 加算器 3 1 7の一方の入力端に供給される。
平均化部 2 0 6から出力された平均ァクティ ビティ avg_actは、 乗算 器 3 0 3の一方の入力端にも供給される。 乗算器 3 0 3の他方の入力端 には、 パラメータ attが供給される。 なお、 パラメ一夕 attは、 例えばシ ステムコントローラ 1 1 7で設定され C P U I /F 2 2 1を介して供 給される。 乗算器 3 0 3の計算結果は、 レジス夕 3 0 6を介して加算器 3 1 0の一方の入力端に供給される。 加算器 3 1 0の他方の入力端には, 定数 「 1」 が供給される。 乗算器 3 0 3および加算器 3 1 0により、 at txavg_act+ 1が計算され、 norm— gainが求められる。 norm— gainは、 レ ジス夕 3 0 9を介して乗算器 3 1 1および 3 1 2それぞれの他方の入力 端に供給される。
乗算器 3 1 1では、 norm— gainx(actxact)が計算され、 計算結果がレ ジス夕 3 1 4を介して加算器 3 1 7の他方の入力端に供給される。 加算 器 3 1 7では、 avg— actxavg— act + norm— gainx(actxact)力計算される' 計算結果は、 レジスタ 3 1 9を介して除算器 3 2 1の被除数入力端に供 給される。
同様に、 乗算器 3 1 2では、 norm_gainx(avg— actxavg— act)が計算さ れ、 計算結果がレジス夕 3 1 6を介して加算器 3 1 8の他方の入力端に 供給される。 加算器 3 1 8では、 norm_gainx(avg— actxavg_act) + actx actが計算される。 計算結果は、 レジスタ 3 2 0を介して除算器 3 2 1 の除数入力端に供給される。
除算器 3 2 1では、 {avg— actxavg— act + norm— gainx(actxact) } ÷ { norm_gainx (avg_ac txavg_ac t) + ac txac t } 力計算される。 すなわち、 この除算器 3 2 1の出力がこの発明の実施の一形態による正規化ァクテ イビティ norm_actとされる。 除算器 3 2 1から出力された正規化ァクテ ィ ピティ norm_actは、 セレクタ 3 2 5およびレジスタ 3 2 4を介して出 力される。 そして、 この正規化アクティビティ norm_actは、 ストリーム において、 上述の第 1 1 Cのァクティ ビティ actに上書きされ、 第 1 2 図 Aのようにストリーム中に埋め込まれて後段に伝えられる。
なお、 比較部 3 2 2において、 レジス夕 3 2 0に供給された値 (除 数) が監視される。 若し、 除数が 「0」 であれば、 例えばその旨示すフ ラグがレジスタ 3 2 6を介してセレクタ 3 2 5に供給される。 セレクタ 3 2 5は、 一方の入力端に上述の除算器 3 2 1の出力が供給され、 他方 の入力端には、 定数 「 1」 が供給される。 比較器 3 2 2から供給された フラグにより、 除数が 「 0」 であることが示されると、 セレクタにより 定数 「 1」 が選択され、 正規化アクティビティ norm— actとして出力され る。
なお、 上述では、 MP E Gエンコーダ 1 0 3における処理がハードウ エアにより行われるように説明したが、 これはこの例に限定されない。 MP E Gエンコーダ 1 0 3の処理は、 ソフトウェアによっても同様に実 現可能なものである。 例えば、 コンピュータ装置にビデオ信号のアナ口 グおよびディジタルの入カイン夕ーフェイスを設け、 コンピュータ上に 搭載されたソフトウエアにより C PUおよびメモリなどを利用して実行 することができる。 また、 上述のディジタル VT Rの構成において、 M P EGエンコーダ 1 0 3を C PUおよびメモリに置き換えたような構成 としてもよい。
このソフトウェアは、 例えば C D— R〇M (Compact Disc-Read Only Memory)といった記録媒体にプログラムデ一夕として記録されて提供さ れる。 このソフトウエアが記録された記録媒体をコンピュータ装置に装 填し、 所定の操作を行うことで当該ソフトウェアがコンピュータ装置に インストールされ、 当該ソフトウェアによる処理を実行することが可能 な状態とされる。 なお、 コンピュータ装置の構成は、 極めて周知である ため、 ここでは説明を省略する。
第 1 9図は、 MP EGエンコーダ 1 0 3の処理をソフトウエアで行う 場合の一例のフローチヤ一トである。 このフローチャートによる処理は, 上述したハードウェアによる処理と同様なものであるので、 以下では、 上述したハードウエアにおける処理を考慮しながら、 概略的に説明する < ステップ S 1〜S 7は、 上述の入カフィールドアクティビティ平均化処 理部 1 0 3 Aによる処理に対応する。 ステップ S 1 1〜S 2 1は、 上述 のプリエンコード処理部 1 0 3 Bに対応する。 また、 ステップ S 3 1〜 S 38は、 上述のエンコード処理部 1 0 3 Cに対応する。
最初のステップ S 1で、 ビデオデータが取り込まれる。 次のステップ S 2で、 取り込まれたビデオデ一夕から、 垂直ブランキング区間で MP E Gにおける各へッダが抽出されメモリに格納される。 垂直ブランキン グ区間以外では、 取り込まれたビデオデータがメモリに格納される。
ステップ S 3では、 ビデオデ一夕がラスタスキャンからブロックスキ ヤンへと変換され、 マクロブロックが切り出される。 これは、 例えばメ モリに格納されたビデオデータを読み出す際の読み出しァドレスを制御 することでなされる。 ステップ S 4で、 マクロブロックに切り出された ビデオデータに対して第 1フィールドによるァクティ ビティ計算がなさ れ、 計算結果のァクティ ビティ Actibity(act)がステップ S 5で積算さ れ、 積算値 sumとしてメモリに格納される。 これらステップ S 3〜S 5 までの処理は、 ステップ S 6において第 1 フィールドの最終マクロブ口 ックの処理が終了したと判断されるまで繰り返される。 すなわち、 積算 値 sumは、 1 フィールド分のマクロブロックのァクティ ビティの合計と なる。
ステップ S 6において 1フィールドの最終マクロブロックまで処理が 終了したと判断されたら、 ステップ S 7で、 メモリに格納された積算値 sumが 1フィールド分のマクロブロック数で除され、 1フィールド分の ァクティビティが平均化されたフィ一ルドアクティビティの平均値 Acti bity(avg_act)が求められ、 メモリに格納される。
フィールドアクティ ビティの平均値 Actibity(avg— act)が求められる と、 処理はステップ S 1 1に移行する。 ステップ S 1 1では、 上述のス テツプ S 3と同様に、 メモリに格納されたビデオデータがラスタスキヤ ンからブロックスキャンへと変換され、 マクロプロックが切り出される t 次のステップ S 1 2で、 D CTをフィールド D C T符号化モードおよび フレーム D CT符号化モードの何れで行うかが選択され、 選択結果が D C Tモードタイプデータ dct_typとしてメモリに格納される。
ステツプ S 1 3では、 第 1および第 2フィールドが共に用いられて、 先ず、 マクロブロック毎のアクティ ビティ actが計算される。 そして、 このァクティ ビティ actと、 上述のステツプ S 7で求められメモリに格 納されたフィールドアクティビティの平均値 Actibity(avg— act)とを用 いて、 上述した式 (8) および ( 9) に基づきこの発明による正規化ァ クティビティ Actibity(norm_act)が求められる。 求められた正規化ァク ティビティ Actibity(norm_act)は、 メモリに格納される。
上述した式 (8) および式 (9) は、 ソフトウェア的には、 例えばプ ログラミング言語である C言語的な表現を用いて次のように表すことが できる。 なお、 「MB_num」 は、 1フレームのマクロブロックの総数であ る。 また、 パラメータ attは、 常数であって、 例えば att = 0.125とする c norm— gain = at txavg_act + 1
for ( m == 0: m く MB_num; m†+ ) {
if (( act[m] == 0 ) M ( avg— act == 0 ))
norm_act [m] = 1
else
norm— act [m] = ( ( norm_gainxac t [m]xact [m] ) + ( avg_ac tx avg_act))÷(( act [m]xact [m] ) + ( norm— gainxavg—actxavg— act )) } /* next macroblock */
ステップ S I 3では、 例えばこのようなプログラムに基づき正規化ァ クティビティ (;"1) (1101"111_3(:0が求められる。
次のステップ S 1 4で、 上述のステップ S 1 1でビデオデータから切 り出されたマクロブ口ックが 8画素 x8画素からなる D C Tブロックに 分割され、 この D C Tブロックに対して 2次元 D C Tが行われる。 2次 元 D C Tにより D C Tブロックが変換された D C T係数は、 ステップ S 1 5で量子化テーブル(quantizer— table)による量子化がなされ、 処理 はステツプ S 1 6に移行される。
ステップ S 1 6〜S 2 0の処理を、 量子化スケール(quantizeし seal e)Q n値それぞれについて行うように繰り返すことで、 上述の Q— n部 2 1 2、 2 1 2、 ' ' ^ VL C部 2 1 3、 2 1 3、 · · · 、 積算部∑ 2 1 4、 2 1 4、 · · · 、 ならびに、 積算部∑ 2 1 5、 2 1 5、 · · · に相当する処理が行われる。 すなわち、 ステップ S 1 6で、 D C T係数 に対して量子化スケール Q == 1での量子化が行われ、 ステップ S 1 7で、 V L Cテーブルが参照されて量子化された D C T係数が可変長符号化さ れる。 そして、 ステップ S 1 8で可変長符号化によるマクロブロックに おける発生符号量が計算され、 ステップ S 1 9で、 ステップ S 1 8で求 められたマクロプロック毎の発生符号量が 1フレーム分、 積算される。 ステップ S 2 0で次の量子化スケール Q nがあるか否かが判断され、 次 の量子化スケール Q nがあると判断されたら、 処理はステップ S 1 6に 戻され、 次の量子化スケール Q nに基づく処理が行われる。 量子化スケ ール Q n毎の 1フレーム分の発生符号量は、 それぞれメモリに格納され る。
ステップ S 2 0で、 全ての量子化スケール Q nの値についてフレーム における発生符号量の積算値が求められたとされれば、 ステップ S 2 1 で、 1フレームの最終マクロブロック (M B ) まで処理が終了したかど うかが判断され、 最終マクロブロックまでの処理が終了していなければ、 処理がステツプ S 1 1に戻される。 最終マクロブロックまでの処理が終 了され 1フレーム分の発生符号量が見積もられれば、 ステップ S 3 1に 移行され、 実際のエンコード処理が行われる。
ステップ S 3 1では、 上述のステツプ S 1 1 と同様に、 メモリに格納 されたビデオデ一夕がラスタスキャンからブロックスキャンへと変換さ れ、 マクロブロックが切り出される。 次のステップ S 3 2では、 上述の ステップ S 1 2でメモリに格納された D C Tモードタイプデータ dcし t y pに基づき D C T符号化モードが設定される。
ステップ S 3 3では、 ステップ S 3 1でビデオデータから切り出され たマクロブロックが 8画素 X 8画素からなる D C Tブロックに分割され、 この D C Tブロックに対して次元 D C Tが行われる。 2次元 D C Tによ り D C Tブロックが変換された D C T係数は、 ステツプ S 3 4で量子化 テーブル(quan t i zer_t ab l e)による量子化がなされ、 処理はステツプ S 3 5に移行される。
ステツプ S 3 5では、 上述したステツプ S 1 1〜 S 2 1において見積 もられた、 量子化スケール Q n毎の 1フレーム分の発生符号量に基づき、 実際のエンコード処理において発生される符号量の制御を行うために、 後述するステップ S 3 6で用いられる量子化スケール Q nがマクロブロ ック毎に設定される。
そして、 処理はステップ S 3 6に移行され、 ステップ S 3 5で設定さ れた量子化スケール Q nを用いて、 ステップ S 3 4で量子化テーブルを 用いて量子化された D C T係数の量子化が行われる。 ステップ S 3 6で 量子化された D C T係数は、 次のステツプ S 3 7で V L Cテーブルが参 照され可変長符号化される。 そして、 ステップ S 3 8で 1フレームの最 終マクロブロックまで処理が行われたか否かが判断され、 1フレームの 最終マクロブロックまで処理されていないと判断されれば、 処理がステ ップ S 3 1に戻され、 次のマクロブロックに対する量子化処理および可 変長符号化処理が行われる。 一方、 ステップ S 3 7で、 1フレームの最 終マクロプロックまで処理が行われたと判断されれば、 1フレーム分の エンコード処理が終了したとされる。
なお、 上述では、 ステップ S 1 1〜 S 2 1までのプリエンコード処理 と、 ステップ S 3 1〜S 3 8までのェンコ一ド処理とを別々の処理とし て説明したが、 これはこの例に限定されない。 例えば、 ステップ S 1 1 〜S 2 1において発生符号量の見積もりにより得られたデ一夕をメモリ に格納し、 そこから実際のェンコ一ド処理により得られるデ一夕を選択 して取り出すようにする。 これにより、 ステップ S 3 1〜 S 3 8の処理 をステップ S 1 1〜S 2 1による処理に含まれるループとして組み込む ことができる。
なお、 上述では、 パラメ一夕 a t tの値を 「0 . 1 2 5」 としたが、 こ れはこの例に限定されず、 他の値とすることができる。 このパラメ一夕 a t tの値を変更することで、 様々な圧縮率に適した適応量子化に対応す ることが可能とされる。
以上説明したように、 この実施の一形態では、 正規化アクティビティ を算出する際に、 対象となる画像の平坦さや複雑さといった特性、 すな わち、 当該画像の平均ァクティビティに応じて正規化の範囲を変更する ようにしている。
そのため、 全体的に平坦な画像については、 アクティビティの正規化 の範囲を小さくし、 画像全体で均一に近いァクティビティを用いて量子 化を行うことができる。 そのため、 画像全体で均一な平坦度を確保し、 高画質を得ることが可能となる。
一方、 複雑な領域と平坦な領域とが混在するような画像については、 アクティビティの正規化の範囲を大きくし、 複雑な領域にはより大きい 符号量を割り当てて精細な量子化を行い、 平坦な領域では粗い量子化を 行うことにより、 視覚的に良質な画像を得ることができる。

Claims

請 求 の 範 囲
1 . 画像データから平均ァクティビティを算出する平均アクティビティ 算出手段と、
上記平均ァクティビティ算出手段により算出された上記平均ァクティ ビティに応じて正規化範囲を動的に設定し、 該正規化範囲に基づき該平 均ァクティビティを用いて正規化ァクティビティを算出する正規化ァク ティビティ算出手段と、
上記正規化ァクティビティ算出手段により算出された上記正規化ァク ティビティを用いて上記画像データを量子化する量子化手段と を有することを特徴とする画像処理装置。
2 . 請求の範囲第 1項に記載の画像処理装置において、
上記正規化ァクティビティ算出手段は、 上記平均ァクティビティが小 さいときは、 上記正規化範囲をより狭く設定し、 上記平均ァクティビテ ィが大きいときは、 上記正規化範囲をより広く設定するようにしたこと を特徴とする画像処理装置。
3 . 請求の範囲第 1項に記載の画像処理装置において、
上記正規化ァクティビティ算出手段は、 上記画像デ一夕を分割したブ ロック毎に上記正規化ァクティビティを算出するようにされ、
上記平均ァクティビティに比例する係数に上記プロック毎のァクティ ビティを乗じた結果に上記平均アクティビティを加算した値を、 上記係 数に上記平均ァクティビティを乗じた結果に上記ブロック毎のァクティ ビティを加算した値で除した値を、 上記ブロック毎の上記正規化ァクテ ィビティとすることを特徴とする画像処理装置。
4 . 請求の範囲第 3項に記載の画像処理装置において、
上記正規化アクティビティ算出手段は、 上記ブロック毎のァクテイビ ティの値および上記平均ァクティビティの値が共に 0であれば、 上記正 規化ァクティ ビティの値を 1 として算出するようにしたことを特徴とす る画像処理装置。
5 . 請求の範囲第 1項に記載の画像処理装置において、
上記正規化ァクティビティ算出手段は、 上記画像データを分割したブ ロック毎に上記正規化ァクティビティを算出するようにされ、
上記平均ァクティ ビティに比例する係数に上記ブロック毎のァクティ ビティを二乗した値を乗じた結果に上記平均ァクティビティを加算した 値を、 上記係数に上記平均ァクティビティを二乗した値を乗じた結果に 上記ブロック毎のアクティ ビティを加算した値で除した値を、 上記プロ ック毎の上記正規化ァクティビティとすることを特徴とする画像処理装
6 . 請求の範囲第 5項に記載の画像処理装置において、
上記正規化ァクティビティ算出手段は、 上記ブロック毎のァクテイビ ティの値および上記平均ァクティビティの値が共に 0であれば、 上記正 規化ァクティ ビティの値を 1 として算出するようにしたことを特徴とす る画像処理装置。
7 . 請求の範囲第 1項に記載の画像処理装置において、
上記正規化ァクティビティ算出手段は、 1フレームの上記平均ァクテ イビティを、 該 1フレームの第 1 フィールドの画像データから算出する ようにしたことを特徴とする画像処理装置。
8 . 画像データから平均ァクティ ビティを算出する平均アクティ ビティ 算出のステップと、
上記平均ァクティ ビティ算出のステツプにより算出された上記平均ァ クティビティに応じて正規化範囲を動的に設定し、 該正規化範囲に基づ き該平均ァクティ ビティを用いて正規化ァクティビティを算出する正規 化アクティビティ算出のステップと、 上記正規化ァクティビティ算出のステップにより算出された上記正規 化ァクティビティを用いて上記画像データを量子化する量子化のステツ プと
を有することを特徴とする画像処理方法。
9 . 画像データを量子化する画像処理方法をコンピュータ装置に実行さ せる画像処理プログラムにおいて、
上記画像処理方法は、
入力された画像デ一夕から平均ァクティ ビティを算出する平均ァクテ ィビティ算出のステップと、
上記平均ァクティビティ算出のステップにより算出された上記平均ァ クティビティに応じて正規化範囲を動的に設定し、 該正規化範囲に基づ き該平均ァクティビティを用いて正規化ァクティビティを算出する正規 化アクティビティ算出のステップと、
上記正規化ァクティビティ算出のステップにより算出された上記正規 化ァクティビティを用いて上記画像データを量子化する量子化のステツ プと
を有することを特徴とする画像処理プログラム。
1 0 . 画像データを量子化する画像処理方法をコンピュータ装置に実行 させる画像処理プログラムが記録された記録媒体において、
上記画像処理方法は、
入力された画像データから平均ァクティビティを算出する平均ァクテ イビティ算出のステップと、
上記平均ァクティビティ算出のステップにより算出された上記平均ァ クティビティに応じて正規化範囲を動的に設定し、 該正規化範囲に基づ き該平均ァクティビティを用いて正規化ァクティ ビティを算出する正規 化アクティビティ算出のステップと、 上記正規化ァクティビティ算出のステツプにより算出された上記正規 化アクティビティを用いて上記画像データを量子化する量子化のステツ プと
を有することを特徴とする記録媒体。
PCT/JP2002/003063 2001-03-29 2002-03-28 Image processing apparatus, image processing method, image processing program, and recording medium WO2002080575A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US10/473,494 US7289676B2 (en) 2001-03-29 2002-03-28 Image processing apparatus, image processing method, image processing program, and recording medium
JP2002577446A JPWO2002080575A1 (ja) 2001-03-29 2002-03-28 画像処理装置、画像処理方法、画像処理プログラムおよび記録媒体

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2001095298 2001-03-29
JP2001-95298 2001-03-29
JP2001156818 2001-05-25
JP2001-156818 2001-05-25

Publications (1)

Publication Number Publication Date
WO2002080575A1 true WO2002080575A1 (en) 2002-10-10

Family

ID=26612508

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP2002/003060 WO2002080572A1 (en) 2001-03-29 2002-03-28 Image processing apparatus, image processing method, image processing program, and recording medium
PCT/JP2002/003063 WO2002080575A1 (en) 2001-03-29 2002-03-28 Image processing apparatus, image processing method, image processing program, and recording medium

Family Applications Before (1)

Application Number Title Priority Date Filing Date
PCT/JP2002/003060 WO2002080572A1 (en) 2001-03-29 2002-03-28 Image processing apparatus, image processing method, image processing program, and recording medium

Country Status (3)

Country Link
US (2) US20040131116A1 (ja)
JP (2) JPWO2002080572A1 (ja)
WO (2) WO2002080572A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007235291A (ja) * 2006-02-28 2007-09-13 Victor Co Of Japan Ltd 適応量子化装置及び適応量子化プログラム
JP2009533900A (ja) * 2006-04-07 2009-09-17 マイクロソフト コーポレーション テクスチャレベルに基づく量子化調整
US8897359B2 (en) 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
US9967561B2 (en) 2006-05-05 2018-05-08 Microsoft Technology Licensing, Llc Flexible quantization

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8126283B1 (en) * 2005-10-13 2012-02-28 Maxim Integrated Products, Inc. Video encoding statistics extraction using non-exclusive content categories
JP4908943B2 (ja) * 2006-06-23 2012-04-04 キヤノン株式会社 画像符号化装置及び画像符号化方法
CN102567961B (zh) * 2010-12-30 2016-05-18 意法半导体研发(深圳)有限公司 感知块屏蔽估算系统
US9787989B2 (en) * 2013-06-11 2017-10-10 Blackberry Limited Intra-coding mode-dependent quantization tuning

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0795564A (ja) * 1993-09-20 1995-04-07 Toshiba Corp 動画像符号化装置
JPH0818959A (ja) * 1994-07-04 1996-01-19 Matsushita Electric Ind Co Ltd 画像信号符号化方法及び画像信号符号化装置
JP2000138938A (ja) * 1998-10-30 2000-05-16 Sony Corp 画像圧縮符号化方法及び装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05167998A (ja) * 1991-12-16 1993-07-02 Nippon Telegr & Teleph Corp <Ntt> 画像の符号化制御処理方法
KR100213015B1 (ko) * 1994-03-31 1999-08-02 윤종용 양자화 방법 및 회로
US5506844A (en) * 1994-05-20 1996-04-09 Compression Labs, Inc. Method for configuring a statistical multiplexer to dynamically allocate communication channel bandwidth
JPH0965339A (ja) * 1995-08-18 1997-03-07 Mitsubishi Electric Corp 画像ブロック動き検出装置
US6192075B1 (en) * 1997-08-21 2001-02-20 Stream Machine Company Single-pass variable bit-rate control for digital video coding
US6885702B1 (en) * 1997-10-06 2005-04-26 Telediffusion De France Method for spatial synchronization of a digitally coded video image and/or for identification of the syntax of a video sequence
US5978029A (en) * 1997-10-10 1999-11-02 International Business Machines Corporation Real-time encoding of video sequence employing two encoders and statistical analysis
JPH11346365A (ja) 1998-04-03 1999-12-14 Matsushita Electric Ind Co Ltd 符号化圧縮方法、および符号化圧縮装置
US6480539B1 (en) * 1999-09-10 2002-11-12 Thomson Licensing S.A. Video encoding method and apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0795564A (ja) * 1993-09-20 1995-04-07 Toshiba Corp 動画像符号化装置
JPH0818959A (ja) * 1994-07-04 1996-01-19 Matsushita Electric Ind Co Ltd 画像信号符号化方法及び画像信号符号化装置
JP2000138938A (ja) * 1998-10-30 2000-05-16 Sony Corp 画像圧縮符号化方法及び装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007235291A (ja) * 2006-02-28 2007-09-13 Victor Co Of Japan Ltd 適応量子化装置及び適応量子化プログラム
JP4529919B2 (ja) * 2006-02-28 2010-08-25 日本ビクター株式会社 適応量子化装置及び適応量子化プログラム
JP2009533900A (ja) * 2006-04-07 2009-09-17 マイクロソフト コーポレーション テクスチャレベルに基づく量子化調整
US9967561B2 (en) 2006-05-05 2018-05-08 Microsoft Technology Licensing, Llc Flexible quantization
US8897359B2 (en) 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
US9185418B2 (en) 2008-06-03 2015-11-10 Microsoft Technology Licensing, Llc Adaptive quantization for enhancement layer video coding
US9571840B2 (en) 2008-06-03 2017-02-14 Microsoft Technology Licensing, Llc Adaptive quantization for enhancement layer video coding
US10306227B2 (en) 2008-06-03 2019-05-28 Microsoft Technology Licensing, Llc Adaptive quantization for enhancement layer video coding

Also Published As

Publication number Publication date
JPWO2002080575A1 (ja) 2004-07-22
JPWO2002080572A1 (ja) 2004-07-22
WO2002080572A1 (en) 2002-10-10
US20040131116A1 (en) 2004-07-08
US20040114816A1 (en) 2004-06-17
US7289676B2 (en) 2007-10-30

Similar Documents

Publication Publication Date Title
US5990955A (en) Dual encoding/compression method and system for picture quality/data density enhancement
US8411741B2 (en) Picture processing apparatus, picture processing method, picture processing program and recording medium
US6862402B2 (en) Digital recording and playback apparatus having MPEG CODEC and method therefor
CA2688249C (en) A buffer-based rate control exploiting frame complexity, buffer level and position of intra frames in video coding
US5416604A (en) Image compression method for bit-fixation and the apparatus therefor
EP0663778B1 (en) Image coding method and apparatus therefor
US7065138B2 (en) Video signal quantizing apparatus and method thereof
US20070164892A1 (en) Method and device for controlling quantization scales of a video encoding bit stream
JP2002359853A (ja) 画像処理装置、画像処理方法、画像処理プログラムおよび記録媒体
JPWO2002080573A1 (ja) 量子化装置、量子化方法、量子化プログラムおよび記録媒体
WO2002080575A1 (en) Image processing apparatus, image processing method, image processing program, and recording medium
JP3900155B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム、ならびに、量子化制御装置、量子化制御方法および量子化制御プログラム
JP2004056677A (ja) 画像情報符号化装置及び画像情報符号化方法
JP3763276B2 (ja) 信号処理装置および方法、記録装置および方法、ならびに、記録再生装置および方法
JP3765129B2 (ja) 符号化装置および符号化方法
JP3038022B2 (ja) 電子カメラ装置
JP3922581B2 (ja) 可変転送レート符号化方法および装置
JP2002290914A (ja) 記録再生装置及びそのバックサーチ方法
KR100335435B1 (ko) 영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법
JP2003169330A (ja) 信号処理装置および方法、記録装置および方法、ならびに、記録再生装置および方法
JP2000152172A (ja) 電子カメラ再生装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP US

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2002577446

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 10473494

Country of ref document: US