WO2011052913A2 - 벡터 양자화 기반 2차 예측을 통한 동영상 부호화/복호화 장치, 방법 및 기록 매체 - Google Patents
벡터 양자화 기반 2차 예측을 통한 동영상 부호화/복호화 장치, 방법 및 기록 매체 Download PDFInfo
- Publication number
- WO2011052913A2 WO2011052913A2 PCT/KR2010/007028 KR2010007028W WO2011052913A2 WO 2011052913 A2 WO2011052913 A2 WO 2011052913A2 KR 2010007028 W KR2010007028 W KR 2010007028W WO 2011052913 A2 WO2011052913 A2 WO 2011052913A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- signal
- prediction
- prediction error
- center value
- error signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/94—Vector quantisation
Definitions
- An embodiment of the present invention relates to an image data compression technique, and more particularly, to a video encoding / decoding apparatus using vector quantization-based secondary prediction, which reduces prediction error by performing secondary prediction based on vector quantization.
- a recording medium A recording medium.
- H.264 / AVC video encoding technology has improved the compression performance by 2 times compared with the previous standard.
- This technique provides a coding step in the time and space domain based on the hybrid coding technique.
- the encoding step in the temporal domain reduces temporal redundancy through motion compensation prediction from an image of a reference frame.
- the motion compensation prediction is determined by the correlation between the block of the reference frame and the block of the image to be currently encoded, that is, the motion vector, and through this, a prediction image is obtained in units of blocks.
- the prediction error obtained as the difference between the predicted image and the original image is aligned in blocks, transformed into a frequency domain, and then quantized, and then scanned by a zigzag scanning method starting from a coefficient representing a DC value.
- Zigzag scanning produces an array of coefficients and subsequent coding steps can be optimized through CABAC or CAVLC.
- the coding efficiency is high by the DCT transform, which transforms the frequency domain only when the prediction errors in the block correlate with each other, that is, when they exist in the low frequency band.
- efficiency is low when only slightly correlated in the spatial domain.
- [Document 1] adds a method of encoding a prediction error in a spatial domain without performing a DCT transform to a method of encoding a prediction error in a conventional frequency domain, thereby making a prediction.
- a method of adaptively determining whether to convert an error signal into a frequency domain or to maintain a prediction error signal in a spatial domain for encoding is proposed.
- FIG. 1 is a flowchart illustrating a method of adaptively encoding a prediction error in [Document 1].
- a prediction error signal of an image to be encoded is obtained through motion compensation prediction (S101).
- step S101 For the prediction error obtained in step S101, DCT transform is performed, quantization is performed, and then quantization and DCT transform are inversely performed in the frequency domain based on the distortion and the required rate. Obtain the cost of (S102).
- quantization is inversely performed to obtain a cost in the spatial domain based on distortion and a required rate (S103). ).
- the technique of encoding a prediction error signal by the method of FIG. 1 provided a higher encoding performance compared to the H.264 / AVC video encoding technique. However, if the prediction error sample in the block is not only low in the spatial domain but also large and small errors are scattered irregularly, the method is also less efficient.
- An embodiment of the present invention is to solve the above-mentioned conventional problem, and its object is vector quantization for reducing prediction error by performing quadratic prediction based on vector quantization in addition to the existing technology (Document 1).
- the present invention provides a video encoding / decoding method, apparatus, and a recording medium based on second order prediction.
- a video encoding apparatus using vector quantization-based secondary prediction includes a first prediction error signal generation unit generating a first prediction error signal based on an input signal and a prediction signal.
- a first quantizer for adaptively DCT transforming the first prediction error signal and then quantizing the first predictive error signal; an inverse quantizer for inversely quantizing the first quantized signal and then adaptively inverse DCT transforming the output signal of the inverse quantizer
- a second prediction determiner that determines whether a second prediction is necessary in units of blocks based on a distortion value and a predetermined reference value.
- Vector quantization is performed on a first prediction error signal corresponding to one or more corresponding blocks requiring second prediction.
- a center value generator for obtaining a center value of the block based on the first prediction error signal and the center value;
- a second prediction error signal generation unit for generating a signal
- a second quantizer for adaptively DCT transforming the second prediction error signal and then quantizing the second quantization unit and the first quantized signal or the second quantized signal is encoded. It may include an encoder.
- the second prediction determiner is an input signal reconstructor for reconstructing an input signal based on the output signal of the inverse quantizer and the prediction signal distortion comparison to obtain the distortion value based on the reconstructed input signal and the original input signal
- a storage unit for determining and storing a block having a distortion value greater than or equal to the reference value as the corresponding block requiring second prediction.
- the center value generator may set n center values for the first prediction error signals corresponding to the one or more corresponding blocks, calculate a distance between the set center values and the corresponding first prediction error signals, A vector for dividing the corresponding first prediction error signal into n groups based on the calculated center values, and resetting the center value at which the distances of all the first prediction error signals in each group are minimized
- a quantization unit and a group notation unit for generating information on a corresponding group and a corresponding center value of the corresponding block may be included.
- a video encoding method using vector quantization-based secondary prediction includes generating a first prediction error signal based on an input signal and a prediction signal.
- the generating of the center value may include setting n center values for the first prediction error signals corresponding to the one or more corresponding blocks. Computing the distance between each set center value and the corresponding first prediction error signal. And dividing the corresponding first prediction error signals into n groups based on the center values based on the calculated distances. Resetting and generating information on a corresponding group and a corresponding center value of the corresponding block.
- a computer-readable recording medium in which a video encoding method through the vector quantization-based secondary prediction described above is recorded by a program may be provided.
- a video decoding apparatus using vector quantization-based second order prediction may be used to determine whether a group notation is used to determine whether an input signal is a first predictive coded signal or a second predictive coded signal.
- a first inverse quantizer for adaptively inverse DCT transforming after the first inverse quantization of the determined first prediction coded signal and adaptively inverse DCT transforming for second inverse quantization of the determined second prediction coded signal Second Inverse Quantization Unit
- a first prediction coded signal generator and a first inverse quantizer generated based on the second prediction coded signal output from the second inverse quantizer and the corresponding center value received.
- the center value is obtained by performing vector quantization on the first prediction error signal.
- the vector quantization sets n center values for the first prediction error signal, and sets the center values and the set center values. Compute the distance of the corresponding first prediction error signal, divide the corresponding first prediction error signal into n groups based on the center values based on the calculated distance, and calculate all the first prediction errors in each group.
- the center value at which the distance between the signals is minimized may be reset to generate information about the corresponding group and the center value of the corresponding block.
- a video decoding method using vector quantization-based second order prediction may include determining whether an input signal is a first order predictive coded signal or a second order predictive coded signal.
- a first inverse quantization step of adaptively inverse DCT transforming the first predicted coded signal after first inverse quantization and a second inverse DCT transform for adaptive inverse DCT after the second inverse quantization of the determined second prediction coded signal Inverse quantization step
- a first predictive coded signal generation step of generating a first predictive coded signal by adding a corresponding center value to a second predictive coded signal output from the second inverse quantization step, and an output of the first inverse quantization step. And decoding the signal or the output signal of the first predictive encoded signal generating step.
- the center value is obtained by performing vector quantization on the first prediction error signal, wherein the vector quantization sets n center values for the first prediction error signal, and sets the center values and the set center values. Compute the distance of the corresponding first prediction error signal, divide the corresponding first prediction error signal into n groups based on the center values based on the calculated distance, and calculate all the first prediction errors in each group.
- the method may include resetting a center value at which the distance between the signals is minimum, and generating information about the corresponding group and the center value of the corresponding block.
- a computer-readable recording medium in which a video decoding method through the vector quantization based secondary prediction described above is recorded by a program can be provided.
- additional second prediction is performed for the case where the prediction error is large.
- a case where the prediction error is large when performing adaptive coding in the existing frequency domain and the spatial domain is distinguished.
- the distinguishing method according to the present invention is performed by comparing the distortion generated when the prediction error signal is encoded in the frequency and spatial domain with the threshold value K (or referred to as a reference value). If the distortion is smaller than the threshold value K, the prediction error is small and the compression efficiency is judged to be good. Therefore, if the distortion is larger than the threshold value K, the prediction error is determined to be larger. do.
- the prediction error signal with large distortion is stored in a memory for additional second prediction, and the above process is repeated for at least one block or more.
- Vector quantization is a technique of grouping similar prediction error signals for many stored prediction error signals, and expressing the prediction error signals as a center value representative of each classified group.
- vector quantization is performed based on the Lloyd algorithm, and for this, an initial center value is set. Of all the prediction error signals, one random prediction error signal is set as the first center value. Among all the prediction error signals except the prediction error signal set as the first center value, a random prediction error signal is set as the second center value. If the distance between the set first center value and the second center value is larger than the preset reference value M, the second center value is maintained. Otherwise, the setting for the second center value is canceled. The distance is obtained by the least square error and is given by the following equation (1).
- a third center value is randomly set among all prediction error signals except the first and second prediction error signals. If the distance between the set first and third center values and the distance between the second and third center values is greater than the reference value M, the third center value is maintained. Otherwise, the setting for the third center value is Canceled.
- n groups are organized around n center values, and all prediction error signals obtain a distance from the center value of each group as shown in Equation 2 below, and the value thereof is minimized. It is organized into groups.
- the center value of the square of the distance of all prediction error signals in the group may be minimized.
- the distance from all prediction error signals is again determined and the group is minimized.
- the center value is again obtained for the regrouped group.
- signals with similar prediction errors are optimized and grouped together.
- Each group finally classified finds the distance of the prediction error signal samples in the group to obtain a center value representative of that group.
- the center value is sent to the entropy encoder for decoding.
- the prediction error signals and the center value in each group indicate that they belong to the same group for encoding and decoding. All prediction error signals classified into n groups through vector quantization are obtained by performing a difference between the center value of the group and performing additional second prediction and quantizing the obtained second prediction error signal.
- an adaptive encoder is provided to use a complex encoding technique of a prediction error signal.
- the encoder according to the embodiment of the present invention includes a motion compensation predictor for reducing temporal redundancy, encoding in a frequency domain, encoding in a spatial domain, encoding through additional secondary prediction, and the like.
- Adaptive control means for determining the encoding method may be included.
- the adaptive control means calculates the cost of each coding method based on the distortion and the required rate weighted by the Lagrange parameter, and selects the coding method whose cost is minimum.
- the request ratio includes information log 2 n bits for indicating a group to which the group belongs among n groups in addition to the request ratio calculation method of the existing technology.
- side information signals are generated whether to be encoded in the frequency domain, the spatial domain, or after additional secondary prediction.
- 4x4 blocks 4x4 blocks are generated. In order to indicate each encoding method, a total of 8 bits are required, 2 bits each. Pattern information about an encoding method may be used to minimize such side information signals.
- Each of 4 4x4 blocks can be encoded using three methods (frequency domain, spatial domain, and additional secondary prediction method), and thus, there are a total of 81 cases. Instead of the aforementioned 8 bits, 81 patterns can be used to represent a total of 7 bits. This can minimize the side information signal to increase the compression performance.
- a decoding technique corresponding to the above-described encoding technique may be provided. It is determined whether a group of encoded prediction error signals is displayed to determine whether to perform vector quantization based secondary prediction. If there is no display of the group, since the first prediction is only an encoded signal, it is decoded in the same manner as in [Document 1]. If there is an indication of a group, the corresponding signal of the encoded second prediction error signal is found since the binary signal is performed. After finding the corresponding group of the encoded second prediction error signal, the center value of the corresponding second prediction error signal is found, and the inverse quantization is performed after adaptively inverse DCT transformation of the sum of the corresponding center values of the second prediction error signal.
- the encoded second prediction error signal is a signal encoded through vector quantization-based second order prediction, and the sum of the signal and the corresponding center value becomes an encoded signal after the first order prediction. Since the inverse quantized prediction error signal has been decoded according to vector quantization based additional prediction, the remaining decoding process follows the conventional decoding method.
- vector quantization-based secondary prediction which reduces the prediction error by performing secondary prediction based on vector quantization, If the prediction error is still large even after adaptive coding in the frequency domain and the spatial domain, vector quantization based secondary prediction is performed to improve the compression efficiency.
- FIG. 1 is a flowchart illustrating a method of adaptively encoding a prediction error according to the prior art
- FIG. 2 is a block diagram of a video encoding apparatus using vector quantization based secondary prediction, according to an embodiment of the present invention
- FIG. 3 is a detailed block diagram of the vector quantization unit of FIG.
- FIG. 4 is a detailed block diagram of the adaptive control unit 280 of FIG.
- FIG. 5 is a flowchart of a video encoding method using vector quantization based secondary prediction according to an embodiment of the present invention
- FIG. 6 is a detailed flowchart of a center value generating step of FIG. 5;
- FIG. 7 is a diagram illustrating a second order prediction block according to an embodiment of the present invention.
- FIG. 8 is a diagram for explaining vector quantization according to an embodiment of the present invention.
- FIG. 9 is a block diagram of a video decoding apparatus through vector quantization based second order prediction, according to an embodiment of the present invention.
- FIG. 10 is a flowchart illustrating a video decoding method using vector quantization based second order prediction according to an embodiment of the present invention.
- FIG. 2 is a block diagram of a video encoding apparatus through vector quantization-based secondary prediction according to an embodiment of the present invention.
- the first prediction error signal generator 210 and the first quantizer 220, an inverse quantizer 230, a second prediction determiner 240, a center value generator 250, a second prediction error signal generator 260, a second quantizer 270, and an adaptive controller ( 280, and an entropy encoder 290.
- the first prediction error signal generator 210 generates a first prediction error signal by subtracting the prediction signal from the input signal.
- the first quantizer 220 adaptively DCT transforms the first prediction error signal and then first quantizes the DCT converter 221 for DCT transforming the first prediction error signal.
- the inverse quantizer 230 inversely quantizes the first quantized signal and adaptively inverses DCT transforms the inverse quantizer 231 and inverse to quantize the output signal of the quantizer 222.
- the second prediction determiner 240 determines whether the second prediction is necessary in units of blocks based on the distortion value of the output signal of the inverse quantizer 230 and a preset reference value. Similarly, an input signal reconstruction unit 241 for reconstructing an input signal by adding the prediction signal to the output signal of the inverse quantization unit, and comparing the original input signal with the reconstructed input signal to obtain the distortion value as a difference therebetween.
- the distortion comparing unit 242 and the block of the first prediction signal whose distortion value is greater than or equal to the reference value are determined to be corresponding blocks requiring second prediction, and the storage for storing such blocks in a predetermined unit including at least one block.
- a portion 243 is included.
- the center value generator 250 calculates a center value by performing vector quantization on a first prediction error signal corresponding to one or more corresponding blocks requiring second prediction. As shown in FIG. N center values are set for the first prediction error signal stored in the unit 243 in a predetermined unit, and the distance between each set center value and the corresponding first prediction error signal is calculated and based on the calculated distance.
- a vector quantizer 251 for dividing the corresponding first prediction error signal into n groups based on the respective center values, and resetting a center value at which the distance of all first prediction error signals is minimized in each group;
- a group notation unit 252 for generating information on a corresponding group and a corresponding center value of the corresponding block.
- the second prediction error signal generator 260 generates a second prediction error signal by subtracting the center value from the first prediction error signal with respect to the corresponding block.
- the second quantizer 270 adaptively performs a DCT transform on the second prediction error signal and then performs second quantization. As shown in the figure, a DCT transform for DCT transforming the second prediction error signal is shown.
- a unit 271 includes a quantizer 272 for quantizing the DCT transformed signal, and a quantizer 273 for quantizing the second prediction error signal without DCT transform.
- the adaptive controller 280 spatially stores the signal A obtained by quantizing the first prediction error signal in the frequency domain, the signal B quantized the first prediction error signal in the spatial domain, and the second prediction error signal in the spatial domain.
- One of the signal C quantized in the region and the signal D quantized in the frequency domain is selected based on the distortion and the required ratio.
- the entropy encoder 290 is for entropy encoding one signal selected by the adaptive controller 280 among the signals A, B, C, and D.
- FIG. 3 is a detailed block diagram of the vector quantization unit 251 of FIG. 2. As shown in FIG. 2, the initialization unit 301, the distance calculating unit 302, the group setting unit 303, and the middle body value calculating unit 304 are illustrated. , And an optimization determination unit 305.
- the initialization unit 301 sets n center values among the first prediction error signals in a predetermined unit stored in the storage unit 243.
- the distance calculator 302 calculates the distance between the first prediction error signals of the predetermined unit with respect to n center values.
- the group setting unit 303 organizes prediction error signals having a relatively short distance from n center values into n groups.
- the center value calculator 304 newly calculates a center value at which the average of the squares of the distances to all prediction error signals in each group is minimized.
- the optimization determining unit 305 determines whether the new center value is the same as the previous center value. If not, the optimization determining unit 305 determines the distance calculating unit 302, the group setting unit 303, and the center based on the new center value. The process in the value calculator 304 is repeated sequentially, and if it is the same, it is determined that the vector quantization is optimized and ends.
- FIG. 4 is a detailed block diagram of the adaptive control unit 280 of FIG. 2. As shown in the drawing, the first request rate calculating unit 401, the second request rate calculating unit 402, and the third request rate calculating unit 403 are illustrated. ), A first cost calculator 404, a second cost calculator 405, a third cost calculator 406, and a cost comparer 407.
- the first request rate calculator 401 calculates a request rate in the frequency domain
- the second request rate calculator 402 calculates a request rate in the space domain
- the third request rate calculator 403 Calculate the required rate according to the second order prediction.
- the first cost calculator 404 calculates a first cost based on the distortion in the frequency domain and the calculated ratio in the frequency domain
- the second cost calculator 405 calculates the distortion in the spatial domain.
- the third cost is calculated based on the distortion of the second prediction error signal (including distortion in the spatial domain and distortion in the frequency domain).
- the cost comparison unit 407 selects a signal having the lowest cost among the signals A, B, C, and D by comparing the first cost, the second cost, and the third cost.
- FIG. 5 is a flowchart of a video encoding method through vector quantization-based secondary prediction according to an embodiment of the present invention.
- the present invention may be applied to the apparatus of FIG. 2 and will be described in parallel with the operation of the apparatus.
- the first prediction error signal generation step S510, the first quantization step S520, the second prediction determination step S530, the center value generation step S540, A second prediction error signal generation step S550, a second quantization step S560, and an encoding step S570 are included.
- the first prediction error signal generating step (S510) generates a first prediction error signal by subtracting the prediction signal from the input signal through the first prediction error signal generator 210.
- the first prediction error signal is adaptively DCT-converted through the first quantization unit 220 and then quantized. That is, the first prediction error signal is quantized (quantized in the frequency domain) after DCT transform, or quantized (quantized in the spatial domain) without DCT transform.
- the second prediction determining step S530 after inverse quantization of the first quantized signal through the inverse quantization unit 230, the inverse DCT transform is adaptively output and then output through the second prediction determination unit 240. After obtaining the distortion value of the output signal of the inverse quantizer 230, it is determined whether the second prediction is necessary in units of blocks based on the distortion value and the preset reference value. That is, when the distortion of the signal A quantized in the frequency domain and the signal B quantized in the spatial domain is larger than the reference for the first prediction error signal in units of blocks, it is determined that the second prediction is required for the corresponding block.
- the center value generating step (S540) performs a vector quantization on the first prediction error signals corresponding to the one or more corresponding blocks requiring the second prediction through the center value generation unit 250 to group similar signals and to group each group. Find the center value representing. This step will be described in more detail later with reference to FIG. 6.
- the second prediction error signal is subtracted from the first prediction error signal by subtracting the corresponding center value from the corresponding first prediction error signal through the second prediction error signal generator 260. Generate a signal.
- the second prediction error signal is adaptively DCT-transformed through the second quantization unit 270 and then quantized. That is, the second prediction error signal is quantized (quantized in the frequency domain) after DCT transform or quantized (quantized in the spatial domain) without DCT transform.
- the encoding step (S570) is a signal (A) obtained by quantizing the first prediction error signal in the frequency domain through the adaptive control unit 280, a signal (B) by quantizing the first prediction error signal in the spatial domain, One of the signal C quantized in the spatial domain and the signal D quantized in the frequency domain is selected based on the distortion and the required ratio, and an entropy encoding unit ( Through 290, the selected signal of the signals A, B, C, and D is entropy encoded.
- FIG. 6 is a detailed flowchart of the center value generating step S540 of FIG. 5, which is applied to the apparatus of FIG. 3 as an example and will be described in parallel with the operation of the apparatus.
- n center values are set for the first prediction error signal corresponding to the corresponding block requiring the second prediction through the initialization unit 301 (S601), and each of the center values set through the distance calculating unit 302 The distance of the corresponding first prediction error signal is calculated (S602).
- the corresponding first prediction error signal is divided into n groups of similar signals with respect to each center value (S603), and the center value calculating unit 304 Through the reset of the center value of the minimum distance of all the first prediction error signals in each group (S604).
- the optimization determining unit 305 determines whether the previous center value is the same as the reset center value, and if not the same, performs the steps S602 to S605 again based on the reset center value, and if it is the same, reset the center value. It generates information about the center value and the corresponding group of the corresponding block.
- An embodiment of the present invention is based on H.264 / AVC technology, but may be performed in combination with an existing technology.
- the distortion comparison unit 242 presets a distortion value for the quantized first prediction error signal in the frequency domain and a distortion value for the quantized first prediction error signal in the spatial domain.
- the second quantization unit 251 determines whether to perform additional second prediction by comparing with the threshold value K as a reference value, and the vector quantization unit 251 obtains a center value through vector quantization for the first prediction error signal requiring second prediction, and the second prediction.
- the error signal generator 260 generates a second prediction error signal through a difference between the first prediction error signal of the current block and the corresponding center value.
- the input signal undergoes motion estimation and motion compensation prediction is performed based on the motion estimation to provide a prediction signal
- the first prediction error signal generator 210 inputs the prediction signal. Subtract from the signal.
- the first prediction error signal generated therefrom is converted into the frequency domain 101 through the DCT converter 221 and quantized by the quantizer 222.
- the output signal of the quantizer 222 is inverse quantized and inverse DCT transformed by the inverse quantizer 231 and the inverse DCT converter 232 to be used for motion compensation prediction.
- the first prediction error signal is sent to the quantization unit 223 in the spatial domain without converting the first prediction error signal into the frequency domain, quantized in the spatial domain, and then encoded in the frequency domain and the spatial domain.
- the primary prediction error signal is also added to the prediction signal and used for motion compensation and motion estimation.
- additional second prediction is performed only when the distortion of the quantized first prediction error signal in the frequency domain and the quantized first prediction error signal in the spatial domain is larger than the reference.
- the determination of whether to perform the second prediction is performed by the distortion comparator 242, and is determined by comparing the quantized prediction error signal and the threshold value K in the frequency domain and the spatial domain, which are inputs of the distortion comparator 242.
- the threshold K is a criterion for the large and small distortion.
- the second prediction is performed under the determination that the distortion is large and the compression efficiency is lowered to increase the compression efficiency.
- All blocks such as A of FIG. 7 are determined and classified by B as shown in B through the comparison method described above.
- the black block of B represents a block for performing the second prediction because the distortion is large, and the corresponding first prediction error signal is stored in the storage unit 243 for the second prediction.
- A represents randomly distributed first order error signals. These first prediction error signals are sent from the storage unit 243 to the initialization unit 301.
- the initialization unit 301 randomly sets one prediction error signal among all prediction error signals as the first center value. Among all the prediction error signals except the prediction error signal set as the first center value, a random prediction error signal is set as the second center value. If the distance between the set first center value and the second center value is larger than the threshold value M as the preset reference value, the second center value is maintained. Otherwise, the setting for the second center value is canceled. The distance is obtained by the least square error described above.
- a third center value is randomly set among all prediction error signals except the first and second prediction error signals.
- n center values for all stored prediction error signals are set as y in A of FIG.
- the distance calculation unit 302 calculates the distances of all prediction error signals for n center values
- the group setting unit 303 calculates all the prediction error signals in FIG. Likewise, the smallest distance is organized into the same group.
- the center value calculator 303 newly calculates the center value for each group.
- the center value is a point at which the average of the squares of the distances to all prediction error signals in the group through the Lloyd algorithm described above is the minimum.
- the distance calculation unit 302 calculates the distance between the center value and all prediction error signals, and the group is reorganized by the group setting unit 303 as shown in FIG. The center value is again calculated for the regrouped group, and this process is repeated. If the newly obtained center value is the same as the previous center value, the optimization determination unit 305 determines that the vector quantization is optimized, and then ends the above iterative process. Finally, an optimal grouping of all prediction error signals such as H can be performed, and the prediction error signals and the center value for each group indicate that they belong to the same group by the group notation unit 252. In this case, the prediction error signals require log 2 n bits (in n groups) as an additional information signal to indicate the group to which they belong. In this embodiment, since the signal is divided into four groups, each prediction error signal requires two bits for the representation of the group to which it belongs. This is later included in the cost calculation for the second prediction.
- the second prediction signal generator 260 belongs to the same group as the first prediction error to be currently encoded. Second-order prediction is performed by the difference of the center values.
- the second prediction error signal on which the second prediction is performed is quantized by the second quantizer 270 in the frequency domain and the spatial domain.
- the first prediction error is different from the center value of the vector region.
- the second prediction error signal is generated by obtaining the difference, and the second prediction error signal is sent to the quantization unit 270 for adaptive quantization.
- One of the quantized secondary prediction error signals C and D and the quantized primary prediction error signal A in the frequency domain and the quantized primary prediction error signal B in the spatial domain is compared with the cost by the adaptive controller 280. Through adaptive selection.
- the request ratio calculating unit 401 in the frequency domain and the request ratio calculating unit 402 in the space domain in the adaptive controller 280 obtain each request ratio in the same manner as in the conventional technology.
- the cost calculator 404, 405 calculates the cost for each area at the required rate and distortion by the Lagrange parameter.
- the cost of the second prediction includes the cost for representing the membership group described above.
- the sum of the request rate by the request rate calculation unit 403 according to the second prediction and the additional request rate according to the group notation is used as the input of the request rate of the cost calculation unit 406.
- A denotes a first prediction error signal quantized in the frequency domain
- B denotes a first prediction error signal quantized in the spatial domain
- C and D each represent a spatial domain through second prediction according to an embodiment of the present invention.
- a prediction error signal quantized in the frequency domain The adaptive controller 280 selects a prediction error signal that minimizes cost among the prediction error signals A, B, C, and D, and the entropy encoder 290 entropy encodes the selected prediction error signal.
- FIG. 9 is a block diagram of a video decoding apparatus through vector quantization-based second order prediction, which is a decoding apparatus corresponding to the encoding apparatus of FIG. 2, and as shown in FIG. 910, a first inverse quantizer 920, a first predictive coded signal generator 930, a second inverse quantizer 940, and a decoder 950.
- the group notation determining unit 910 determines whether an input signal is a primary predictive encoded signal or a secondary predictive encoded signal, and determines whether there is a display of a group for the current block. The difference is determined by the difference prediction coded signal, and if there is a display of the group, the difference is determined by the second prediction coded signal.
- the first inverse quantization unit 920 adaptively inverses DCT transforms the determined first prediction coded signal after the first inverse quantization. If the corresponding signal is a coded signal quantized in the frequency domain, the first inverse quantization unit 920 corresponds to the inverse quantization.
- the inverse quantizer 923 is outputted after the inverse quantization through the inverse 921, and then outputs the signal A after the inverse DCT conversion through the inverse DCT converter 922, and corresponds to a corresponding signal if the signal is a quantized coded signal in the spatial domain.
- the signal B after inverse quantization is output through.
- the first prediction coded signal generator 930 generates the first prediction coded signal based on the determined second prediction coded signal and the received corresponding center value, and stores the received center value for each group.
- a signal generator 933 for generating one predictive encoded signal.
- the second inverse quantization unit 940 outputs a signal C after inverse quantization through the inverse quantization unit 941 so that the corresponding signal is a quantized coded signal in the spatial domain, and the signal is quantized in the frequency domain. If it is an encoded signal, the signal D after inverse quantization is performed by the inverse quantization unit 942 and inverse DCT conversion is performed by the inverse DCT converter 943.
- the decoder 950 decodes one signal selected by the decoding method selection signal among the signals A, B, C, and D.
- the decoding method selection signal is generated through cost comparison with respect to the signals A, B, C, and D corresponding to the adaptive control unit 280 of FIG. 2.
- the second inverse quantizer 940 is positioned at the tip of the first predictive coded signal generator 930 to inversely quantize the input signal, and adaptively inverse DCT transforms the output signal into one.
- the input of the difference prediction coded signal generator 930 may be performed.
- the center value is obtained by performing vector quantization on a corresponding first prediction error signal during encoding, and the vector quantization is n centers on the corresponding first prediction error signal.
- Set a value calculate a distance between each set center value and the corresponding first prediction error signal, and convert the corresponding first prediction error signal into n groups based on the center values based on the calculated distance. Dividing and resetting the center value at which the distances of all the first prediction error signals are minimized in each group, thereby generating information on the group and the center value of the corresponding block.
- FIG. 10 is a flowchart of a video decoding method using vector quantization-based second order prediction according to an embodiment of the present invention.
- the video decoding method may be applied to the apparatus of FIG. 9.
- the group notation determining unit 910 determines whether an input signal is a primary predictive encoded signal or a secondary predictive encoded signal, and determines whether there is a mark of a group for a current block of the input signal. If there is no display, it is determined as a first order predictive coded signal, and if there is a display of a group, it is determined as a second order predictive coded signal (S1001).
- the first predictive coded signal generator 930 generates the first predictive coded signal based on the determined second predictive coded signal and the received center value, and calculates the center value for each group received from the encoder.
- the group discriminating unit 932 determines a corresponding group of the corresponding block of the 2nd prediction coded signal
- the signal generator 933 generates the 2nd prediction coded signal from the 2nd prediction coded signal.
- the first predictive encoded signal is generated by adding the corresponding center value of the corresponding group (S1002).
- the second inverse quantization unit 940 outputs the signal C after inverse quantization through the inverse quantization unit 941 so as to correspond to the generated first prediction coded signal if it is a quantized coded signal in a spatial domain. If the generated first prediction coded signal is a quantized coded signal in the frequency domain, inverse DCT conversion is performed through an inverse DCT converter 942 and inversely quantized through an inverse quantizer 943 so as to correspond thereto. (S1003).
- the first inverse quantizer 920 adaptively performs inverse DCT transform on the determined first predictive coded signal and then inverse quantizes the first predictive coded signal if the determined first predictive coded signal is a quantized coded signal in a frequency domain.
- the inverse DCT transform is performed through the inverse DCT converter 921 and the inverse quantized signal is output through the inverse quantizer 922, and the determined first prediction coded signal is a quantized coded signal in a spatial domain.
- the signal B after inverse quantization is output through the inverse quantization unit 923 (S1004).
- the decoder 950 decodes one signal selected by the decoding method selection signal from among the signals A, B, C, and D.
- the decoding method selection signal is determined by the adaptive control unit 280 of FIG.
- the signals A, B, C, and D are generated through cost comparison (S1005).
- step S1003 may be performed before step S1002, and then step S1002 may be performed.
- a decoding apparatus and method corresponding to the above-described encoding apparatus and method are provided.
- the encoded prediction error signal is determined by the group notation determining unit 910 to determine whether to display a group, and to determine whether to perform vector quantization based secondary prediction. If there is no display of the group, it is determined as the first prediction coded signal without the second prediction, and is decoded by the first inverse quantization unit 920 in the same manner as in [Document 1]. If there is a display of the group, it is determined as the second prediction coded signal, and the group discriminator 932 finds the group of the current prediction error signal. The center value of the group is found from the center value storage unit 931 storing the center value of each group, and the sum of the prediction error signal and the center value is sent to the second inverse quantizer 940.
- the encoded prediction error signal in this process is a signal encoded through second-order prediction, and the sum of the signal and the corresponding center value becomes the encoded signal after the first-order prediction.
- the inverse quantized prediction error signal is sent to the decoder 950 by a decoding method selection signal to perform motion prediction and compensation to be decoded.
- decoding and scanning according to CABAC or CAVLC are performed by the same method as the existing technology.
- the video decoding method may be implemented as a computer readable recording medium including program instructions for performing operations implemented by various computers.
- the computer readable recording medium may include program instructions, local data files, local data structures, etc. alone or in combination.
- the recording medium may be those specially designed and constructed for the embodiments of the present invention, or may be known and available to those skilled in computer software.
- Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical recording media such as CD-ROMs, DVDs, magnetic-optical media such as floppy disks, and ROM, RAM, flash memory, and the like. Hardware devices specifically configured to store and execute the same program instructions are included.
- the recording medium may be a transmission medium such as an optical or metal wire, a waveguide, or the like including a carrier wave for transmitting a signal specifying a program command, a local data structure, or the like.
- Examples of program instructions may include high-level language code that can be executed by a computer using an interpreter as well as machine code such as produced by a compiler.
- the embodiment of the present invention is applied to the field of image data compression technology, and when the distortion of the first prediction error signal is large, the second prediction is performed based on the vector quantization and the adaptive DCT transformation is performed to predict the prediction. It is a very useful invention that can significantly reduce errors.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명의 실시예는 벡터 양자화를 기반으로 2차 예측을 수행하여 예측 오차를 줄이는, 벡터 양자화 기반 2차 예측을 통한 동영상 부호화/복호화 장치, 방법 및 기록 매체에 관한 것으로, 입력 신호 및 예측 신호를 기반으로 1차 예측 에러 신호를 생성하는 제 1 예측 에러 신호 생성하고, 상기 1차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 1 양자화하며, 상기 제 1 양자화된 신호를 역 양자화한 후 적응적으로 역 DCT 변환하여 구해진 신호의 왜곡값과 기 설정된 기준값에 근거하여 블록 단위로 2차 예측의 필요 여부를 판단하고, 상기 2차 예측이 필요한 하나 이상의 해당 블록에 대응하는 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 중심값을 구하며, 상기 해당 블록에 대하여, 상기 1차 예측 에러 신호 및 상기 중심값을 기반으로 2차 예측 에러 신호를 생성하고, 상기 2차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 2 양자화하며, 상기 제 1 양자화된 신호 또는 상기 제 2 양자화된 신호를 부호화한다.
Description
본 발명의 실시예는 영상 데이터 압축기술에 관한 것으로서, 보다상세하게는 벡터 양자화를 기반으로 2차 예측을 수행하여 예측 오차를 줄이는, 벡터 양자화 기반 2차 예측을 통한 동영상 부호화/복호화 장치, 방법 및 기록 매체에 관한 것이다.
일반적으로, 비디오 압축 기술의 발달은 영상 매체를 보다 효율적으로 사용할 수 있는 방법의 기반을 마련하였다. 특히 H.264/AVC 동영상 부호화 기술은 이전 표준에 비해 2배 정도의 압축 성능이 향상 되었다. 이 기술은 복합형 부호화 기술에 기초하여 시간 및 공간 영역에서의 부호화 단계를 제공한다. 시간적 영역에서의 부호화 단계는 참조 프레임의 이미지로부터의 움직임 보상 예측(Motion Compensated prediction)을 통해 중복성(temporal redundancy)이 감소된다. 움직임 보상 예측은 참조 프레임의 블록과 현재 부호화 하고자 하는 이미지의 블록의 상관관계, 즉 움직임 벡터에 의해 결정되고 이를 통해 블록단위로 예측 이미지를 얻는다. 예측 이미지와 원본 이미지의 차로서 얻어진 예측 에러는 블록 단위로 정렬되고 주파수 영역으로 변환된 후 양자화되어, DC 값을 나타내는 계수에서부터 시작하여 지그재그 스캐닝 방식으로 스캔 된다. 지그재그 스캐닝은 계수 어레이를 생성하게 되고 후속 부호화 단계는 CABAC 이나 CAVLC를 통해 최적화 될 수 있다. 하지만 블록 내의 예측 에러들이 서로 상관관계를 가질 때만, 즉 낮은 주파수 대역에 존재할 경우에만 주파수 영역으로 변환하는 DCT 변환에 의해 부호화 효율이 높다. 반면 공간 영역에서 약간만 상관되어 있는 경우 효율이 낮다.
[문헌 1] Matthias Narroschke, Hans Georg Musmann "Adaptive prediction error coding in spatial and frequency domain for H.264/AVC" VCEG- AB06, 16-20 January, 2006
이러한 문제를 해결하기 위해 [문헌 1]은 기존의 주파수 영역에서 예측 에러(prediction error)를 부호화하는 방법에 DCT 변환을 하지 않고 공간적 영역에서 예측 에러(prediction error)를 부호화하는 방법을 추가하여, 예측 에러 신호를 주파수 영역으로 변환할 것인지, 또는 부호화를 위해 예측 에러 신호를 공간 영역에서 유지할 것인지를 적응적으로 판단하여 사용하는 방법을 제안하였다.
도 1은 [문헌 1]에서 적응적으로 예측 에러(prediction error)를 부호화하는 방법을 나타내는 흐름도이다.
먼저, 움직임 보상 예측을 통해 부호화 하고자 하는 이미지의 예측 에러 신호를 얻는다(S101).
단계 S101에서 얻어진 예측 에러(prediction error)에 대하여, DCT 변환을 수행하고, 양자화를 한 후, 다시 역으로 양자화와 DCT 변환을 수행하여 왜곡(distortion)과 요구비율(rate)을 바탕으로 주파수 영역에서의 비용(cost)를 구한다(S102).
단계 S101에서 얻어진 예측 에러(prediction error)에 대하여, 양자화를 수행한 후, 역으로 양자화를 수행하여 왜곡(distortion)과 요구비율(rate)을 바탕으로 공간적 영역에서의 비용(cost)를 구한다(S103).
마지막으로, 단계 S102 및 S103에서 각각 구해진 주파수 영역에서의 비용과 공간적 영역에서의 비용을 비교하여, 비용이 더 낮은 부호화 방법을 선택하여 예측 에러 신호를 부호화한다(S104).
도 1의 방법에서는 DCT 변환을 수행하지 않을 때, DCT 변환을 할 경우보다 오히려 더 효과적인 경우가 존재한다는 것을 전제로 한다.
도 1의 방법으로 예측 에러(prediction error) 신호를 부호화 하는 기술은, H.264/AVC 동영상 부호화 기술과 비교해 더 높은 부호화 성능을 제공하였다. 그러나 블록 내 예측 에러 샘플이 공간 영역에서 상관성이 낮을 뿐만 아니라 큰 에러와 작은 에러들이 불규칙 적으로 산재되어 있는 경우, 상기 방법 또한 효율성이 떨어진다.
본 발명의 실시예는 상술된 종래의 문제점을 해결하기 위한 것으로, 그 목적은 기존의 기술(문헌 1)에 부가하여, 벡터 양자화를 기반으로 2차 예측을 수행하여 예측 오차를 줄이기 위한, 벡터 양자화 기반 2차 예측을 통한 동영상 부호화/복호화 방법, 장치 및 기록 매체를 제공하기 위한 것이다.
전술한 목적을 달성하기 위하여 본 발명의 일 측면에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 장치는, 입력 신호 및 예측 신호를 기반으로 1차 예측 에러 신호를 생성하는 제 1 예측 에러 신호 생성부 상기 1차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 1 양자화하는 제 1 양자화부 상기 제 1 양자화된 신호를 역 양자화한 후 적응적으로 역 DCT 변환하는 역 양자화부 상기 역 양자화부의 출력 신호의 왜곡값과 기 설정된 기준값에 근거하여 블록 단위로 2차 예측의 필요 여부를 판단하는 제 2 예측 판단부 상기 2차 예측이 필요한 하나 이상의 해당 블록에 대응하는 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 중심값을 구하는 중심값 생성부 상기 해당 블록에 대하여, 상기 1차 예측 에러 신호 및 상기 중심값을 기반으로 2차 예측 에러 신호를 생성하는 제 2 예측 에러 신호 생성부 상기 2차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 2 양자화하는 제 2 양자화부 및 상기 제 1 양자화된 신호 또는 상기 제 2 양자화된 신호를 부호화하는 부호화부를 포함할 수 있다. 또한, 상기 제 2 예측 판단부는 상기 역 양자화부의 출력 신호와 상기 예측 신호에 근거하여 입력 신호를 재구성하는 입력신호 재구성부 상기 재구성된 입력신호 및 상기 원 입력신호에 근거하여 상기 왜곡값을 구하는 왜곡 비교부 및 상기 왜곡값이 상기 기준값 이상인 블록을 2차 예측이 필요한 상기 해당 블록으로 판단하여 저장하는 저장부를 포함할 수 있다. 또한, 상기 중심값 생성부는 상기 하나 이상의 해당 블록에 대응하는 1차 예측 에러 신호에 대해 n개의 중심값을 설정하고, 상기 설정된 각 중심값과 상기 해당 1차 예측 에러 신호의 거리를 연산하며, 상기 연산된 거리에 근거하여 상기 각 중심값을 중심으로 상기 해당 1차 예측 에러 신호를 n개의 그룹으로 나누고, 상기 각 그룹내에서 모든 1차 예측 에러 신호들의 거리가 최소가되는 중심값을 재설정하는 벡터 양자화부 및 상기 해당 블록의 해당 그룹 및 해당 중심값에 대한 정보를 생성하는 그룹 표기부를 포함할 수 있다.
전술한 목적을 달성하기 위하여 본 발명의 다른 측면에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 방법은, 입력 신호 및 예측 신호를 기반으로 1차 예측 에러 신호를 생성하는 제 1 예측 에러 신호 생성 단계 상기 1차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 1 양자화하는 제 1 양자화 단계 상기 제 1 양자화된 신호를 역 양자화한 후 적응적으로 역 DCT 변환하여 구해진 신호의 왜곡값과 기 설정된 기준값에 근거하여 블록 단위로 2차 예측의 필요 여부를 판단하는 제 2 예측 판단 단계 상기 2차 예측이 필요한 하나 이상의 해당 블록에 대응하는 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 중심값을 구하는 중심값 생성 단계 상기 해당 블록에 대하여, 상기 1차 예측 에러 신호 및 상기 중심값을 기반으로 2차 예측 에러 신호를 생성하는 제 2 예측 에러 신호 생성 단계 상기 2차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 2 양자화하는 제 2 양자화 단계 및 상기 제 1 양자화된 신호 또는 상기 제 2 양자화된 신호를 부호화하는 부호화 단계를 포함할 수 있다. 또한, 상기 중심값 생성 단계는, 상기 하나 이상의 해당 블록에 대응하는 1차 예측 에러 신호에 대해 n개의 중심값을 설정하는 단계 상기 설정된 각 중심값과 상기 해당 1차 예측 에러 신호의 거리를 연산하는 단계 상기 연산된 거리에 근거하여, 상기 각 중심값을 중심으로 상기 해당 1차 예측 에러 신호를 n개의 그룹으로 나누는 단계 상기 각 그룹내에서 모든 1차 예측 에러 신호들의 거리가 최소가되는 중심값을 재설정하는 단계 및 상기 해당 블록의 해당 그룹 및 해당 중심값에 대한 정보를 생성하는 단계를 포함할 수 있다.
전술한 목적을 달성하기 위하여 본 발명의 또 다른 측면에 따르면, 상술된 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 방법이 프로그램으로 기록된 컴퓨터로 읽을 수 있는기록 매체가 제공될 수 있다.
전술한 목적을 달성하기 위하여 본 발명의 또 다른 측면에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 장치는, 입력 신호가 1차 예측 부호화 신호인지 또는 2차 예측 부호화 신호인지를 판별하는 그룹표기 판별부 상기 판별된 1차 예측 부호화 신호를 제 1 역 양자화한 후 적응적으로 역 DCT 변환하는 제 1 역 양자화부 상기 판별된 2차 예측 부호화 신호를 제 2 역 양자화한 후 적응적으로 역 DCT 변환하는 제 2 역 양자화부 상기 제 2 역 양자화부로부터 출력된 2차 예측 부호화 신호 및 수신된 해당 중심값에 근거하여 1차 예측 부호화 신호를 생성하는 1차 예측 부호화 신호 생성부 및 상기 제 1 역 양자화부의 출력 신호 또는 상기 1차 예측 부호화 신호 생성부의 출력 신호를 복호화하는 복호화부를 포함할 수 있다. 또한, 상기 중심값은 해당 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 구해진 것으로, 상기 벡터 양자화는 상기 해당 1차 예측 에러 신호에 대해 n개의 중심값을 설정하고, 상기 설정된 각 중심값과 상기 해당 1차 예측 에러 신호의 거리를 연산하며, 상기 연산된 거리에 근거하여 상기 각 중심값을 중심으로 상기 해당 1차 예측 에러 신호를 n개의 그룹으로 나누고, 상기 각 그룹내에서 모든 1차 예측 에러 신호들의 거리가 최소가되는 중심값을 재설정하여, 해당 블록의 해당 그룹 및 해당 중심값에 대한 정보를 생성할 수 있다.
전술한 목적을 달성하기 위하여 본 발명의 또 다른 측면에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 방법은, 입력 신호가 1차 예측 부호화 신호인지 또는 2차 예측 부호화 신호인지를 판별하는 판별 단계 상기 판별된 1차 예측 부호화 신호를 제 1 역 양자화한 후 적응적으로 역 DCT 변환하는 제 1 역 양자화 단계 상기 판별된 2차 예측 부호화 신호를 제 2 역 양자화한 후 적응적으로 역 DCT 변환하는 제 2 역 양자화 단계 상기 제 2 역 양자화 단계로부터 출력된 2차 예측 부호화 신호에 수신된 해당 중심값을 가산하여 1차 예측 부호화 신호를 생성하는 1차 예측 부호화 신호 생성 단계 및 상기 제 1 역 양자화 단계의 출력 신호 또는 상기 1차 예측 부호화 신호 생성 단계의 출력 신호를 복호화하는 복호화 단계를 포함할 수 있다. 또한, 상기 중심값은 해당 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 구하는 것으로, 상기 벡터 양자화는 상기 해당 1차 예측 에러 신호에 대해 n개의 중심값을 설정하고, 상기 설정된 각 중심값과 상기 해당 1차 예측 에러 신호의 거리를 연산하며, 상기 연산된 거리에 근거하여 상기 각 중심값을 중심으로 상기 해당 1차 예측 에러 신호를 n개의 그룹으로 나누고, 상기 각 그룹내에서 모든 1차 예측 에러 신호들의 거리가 최소가되는 중심값을 재설정하여, 해당 블록의 해당 그룹 및 해당 중심값에 대한 정보를 생성하는 단계를 포함할 수 있다.
전술한 목적을 달성하기 위하여 본 발명의 또 다른 측면에 따르면, 상술된 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 방법이 프로그램으로 기록된 컴퓨터로 읽을 수 있는기록 매체가 제공될 수 있다.
본 발명의 실시예에 따르면, 기존의 주파수 영역 및 공간 영역에서의 적응적 부호화를 수행하여도 예측 오차가 큰 경우에 대해 추가적인 2차 예측을 수행한다. 추가적인 2차 예측 수행 여부를 결정하기 위해 기존의 주파수 영역 및 공간 영역에서의 적응적 부호화를 수행 시 예측 오차가 큰 경우를 구별해 낸다. 본 발명에 따른 구별 방법은, 주파수 및 공간 영역에서 예측 오차 신호를 부호화 했을 때 발생하는 왜곡(distortion)과 분계값 K(또는 기준값이라 칭함)와의 비교를 통해 이루어 진다. 분계값 K보다 왜곡이 작을 경우 예측 오차가 작아 압축 효율이 좋다고 판단하여 기존의 방법으로 부호화 하고, 분계값 K보다 왜곡이 클 경우 예측 오차가 크다고 판단하며, 이러한 경우에 대해 추가적인 2차 예측을 수행한다. 왜곡이 큰 예측 오차 신호는 추가적인 2차 예측을 위해 메모리에 저장되며, 적어도 한 블록 이상의 일정 단위에 대하여 위의 과정을 반복 수행한다.
이러한 방법으로 메모리에 저장된 예측 오차 신호들에 대하여 본 발명의 실시예에 따라 벡터 양자화를 수행한다. 벡터 양자화란 저장된 많은 예측 오차 신호들에 대하여 비슷한 예측 오차 신호들로 그룹화 시킨 후 분류된 각 그룹에 대해서 예측 오차 신호들을 대표할 수 있는 중심 값으로 표현하는 기법을 말한다. 본 발명의 실시예에 따르면, 벡터 양자화는 로이드(Lloyd) 알고리즘을 기반으로 수행되며, 이를 위해 초기 중심 값을 설정한다. 모든 예측 에러 신호들 중 무작위로 한 예측 에러 신호를 첫 번째 중심 값으로 설정한다. 첫 번째 중심 값으로 설정된 예측에러 신호를 제외한 모든 예측 에러 신호들 중 무작위로 한 예측 에러 신호를 두 번째 중심 값으로 설정한다. 설정된 첫 번째 중심 값과 두 번째 중심 값의 거리가 기설정된 기준값 M보다 클 경우 두 번째 중심 값은 유지되고 그렇지 못한 경우 두 번째 중심 값에 대한 설정은 취소된다. 거리는 Least square error로 구해지며 다음의 식 (1)과 같다.
첫 번째 및 두 번째 예측 에러 신호를 제외한 모든 예측 에러 신호들 중 무작위로 세 번째 중심 값이 설정된다. 설정된 첫 번째 중심 값과 세 번째 중심 값의 거리와 두 번째 중심 값과 세 번째 중심 값과의 거리가 상기 기준값 M보다 클 경우 세 번째 중심 값은 유지되고 그렇지 못한 경우 세 번째 중심 값에 대한 설정은 취소된다. 이러한 방법을 반복적으로 수행하여, 저장된 모든 예측 에러 신호에 대하여 n개의 초기 중심 값이 설정된다.
본 발명의 실시예에 따르면, n개의 중심 값을 중심으로 n개의 그룹이 편성되고, 모든 예측에러 신호는 다음의 식 (2)와 같이 각 그룹의 중심 값과 거리를 구해 그 값이 최소가 되는 그룹으로 편성된다.
본 발명의 실시예에 따르면, 다음의 식(3)과 같이 편성된 각 그룹에 대하여 그룹 내 모든 예측 에러 신호의 거리에 대한 제곱의 평균이 최소화 될 수 있는 중심 값을 재설정 한다.
중심 값을 재설정한 후 다시 모든 예측 에러 신호와의 거리를 구해 그 값이 최소가 되는 그룹을 재편성 한다. 또한 재편성된 그룹에 대하여 다시 중심 값을 구한다. 위의 과정을 반복하면 비슷한 예측 오차를 가진 신호들끼리 그룹별로 최적화 되어 모아지게 된다. 최종적으로 분류된 각 그룹은, 그룹내의 예측 오차 신호 샘플들의 거리를 구해 그 그룹을 대표할 수 있는 중심 값을 얻는다. 중심 값은 복호화를 위해 엔트로피 부호화기에 보내진다. 각 그룹내의 예측 오차 신호들과 중심 값은 부호화 및 복호화를 위해 같은 그룹에 속해있음을 표시하도록 한다. 벡터 양자화를 통해 n개의 그룹으로 분류된 모든 예측 오차 신호들은 해당 그룹의 중심 값과의 차를 구하여 추가적인 2차 예측을 수행하고 얻어진 2차 예측 에러 신호를 양자화 시킨다.
본 발명의 실시예에 따르면, 예측 오차 신호의 복합형 부호화 기술을 이용하도록 적응 부호화기가 제공된다. 본 발명의 실시예에 따른 부호화기는 시영역 중복성(temporal redundancy)를 감소시키기 위한 움직임 보상 예측부, 주파수 영역에서 부호화 할 것인지, 공간 영역에서 부호화 할 것인지, 추가적 2차 예측을 통해 부호화 할 것인지 등의 부호화 방법을 결정하는 적응 제어 수단을 포함할 수 있다. 적응 제어 수단은 라그랑주(Lagrange) 파라미터에 의해 가중되는 왜곡(distortion)과 요구 비율(rate)에 의해 각 부호화 방법의 비용(cost)이 계산되고, 비용이 최소가 되는 부호화 방법을 선택한다. 추가적 2차 예측 수행 시, 요구 비율은 기존 기술의 요구 비율 연산 방법 외에 추가적으로 n개의 그룹 중 자신이 속한 그룹을 표시하기 위한 정보 log2n 비트를 포함한다.
본 발명의 실시예에 따르면, 주파수 영역에서 부호화 할 것인지, 공간 영역에서 부호화 할 것인지, 혹은 추가적 2차 예측 후 부호화 할 것인지에 대한 사이드 정보 신호가 발생하게 되는데, 8x8 블록에 대하여, 4x4블록 4개에 각각의 부호화 방법을 표기하기 위해 2비트씩 총 8비트가 요구된다. 이러한 사이드 정보 신호를 최소화 하기 위해 부호화 방법에 대한 패턴 정보를 사용할 수 있다. 4개의 4x4블록 마다 각각 세가지 방법(주파수 영역, 공간영역, 추가적 2차 예측 방법)으로 부호화가 가능 하므로 총 81가지의 경우의 수를 가지게 된다. 앞서 언급한 8 비트를 대신하여 81개의 패턴으로 나타내면 총 7비트로 표현 가능하다. 이를 통해 사이드 정보 신호를 최소화하여 압축 성능을 높일 수 있다.
본 발명의 실시예에 따르면, 상술된 부호화 기술에 대응하는 복호화 기술을 제공할 수 있다. 부호화된 예측 에러 신호의 그룹의 표시 여부를 판별하여 벡터 양자화 기반 2차 예측 수행 여부를 판단한다. 그룹의 표시가 없는 경우 1차 예측만 수행된 부호화 신호이므로 [문헌 1]과 같은 방법으로 복호화 된다. 그룹의 표시가 있는 경우 2치 예측이 수행된 부호화 신호이므로 부호화된 2차 예측 에러 신호의 해당 그룹을 찾아낸다. 부호화된 2차 예측 에러 신호의 해당 그룹을 찾은 후 그 해당 그룹의 중심 값을 찾고, 2차 예측 에러 신호화 해당 중심 값의 합을 적응적으로 역 DCT 변환한 후 역 양자화 한다. 부호화된 2차 예측 에러 신호는 벡터 양자화 기반 2차 예측을 통해 부호화된 신호이며, 이 신호와 해당 중심 값의 합은 1차 예측 한 후의 부호화 신호가 된다. 역 양자화된 예측 에러 신호는 벡터 양자화 기반 추가 예측에 따른 복호화 과정이 끝났으므로 남은 복호화 과정은 기존의 복호화 방법을 따른다.
이상과 같은 본 발명의 다양한 측면에 의하면, 벡터 양자화를 기반으로 2차 예측을 수행하여 예측 오차를 줄이는 벡터 양자화 기반 2차 예측을 통한 동영상 부호화/복호화 방법, 장치 및 기록 매체를 제공하여, 기존의 주파수 영역 및 공간 영역에서의 적응적 부호화를 수행 하여도 예측 오차가 여전히 큰 경우에는 벡터 양자화 기반 2차 예측을 수행하여 압축 효율을 향상시키는 효과가 있다.
도 1은 종래 기술에 따라 적응적으로 예측 에러(prediction error)를 부호화하는 방법을 나타내는 흐름도,
도 2는 본 발명의 일 실시예에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 장치의 블록도,
도 3도 2의 벡터 양자화부의 상세 블록도,
도 4는 도 2의 적응적 제어부(280)의 상세 블록도,
도 5는 본 발명의 일 실시예에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 방법의 흐름도,
도 6은 도 5의 중심값 생성 단계의 세부 흐름도,
도 7은 본 발명의 실시예에 따른 2차 예측 블록을 나타내는 도면,
도 8은 본 발명의 일 실시예에 따른 벡터 양자화를 설명하기 위한 도면,
도 9는 본 발명의 일 실시예 따른 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 장치의 블록도,
도 10은 본 발명의 일 실시예 따른 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 방법이 흐름도.
이하, 본 발명의 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
도 2는 본 발명의 일 실시예에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 장치의 블록도로, 동 도면에 도시된 바와 같이, 제 1 예측 에러 신호 생성부(210), 제 1 양자화부(220), 역 양자화부(230), 제 2 예측 판단부(240), 중심값 생성부(250), 제 2 예측 에러 신호 생성부(260), 제 2 양자화부(270), 적응적 제어부(280), 및 엔트로피 부호화부(290)를 포함한다.
상기 제 1 예측 에러 신호 생성부(210)는 입력 신호에서 예측 신호를 감산하여 1차 예측 에러 신호를 생성하는 것이다.
상기 제 1 양자화부(220)는 상기 1차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 1 양자화하는 것으로, 상기 1차 예측 에러 신호를 DCT 변환하는 DCT 변환부(221), 상기 DCT 변환된 신호를 양자화하는 양자화부(222), 및 상기 1차 예측 에러 신호를 DCT 변환 없이 양자화하는 양자화부(223)를 포함한다.
상기 역 양자화부(230)는 상기 제 1 양자화된 신호를 역 양자화한 후 적응적으로 역 DCT 변환하는 것으로, 상기 양자화부(222)의 출력 신호를 역 양자화하는 역 양자화부(231), 상기 역 양자화된 신호를 역 DCT 변환하는 역 DCT 변환부(232), 및 상기 양자화부(223)의 출력 신호를 역 양자화하는 역 양자화부(233)를 포함한다.
상기 제 2 예측 판단부(240)는 상기 역 양자화부(230)의 출력 신호의 왜곡값 및 기 설정된 기준값에 근거하여 블록 단위로 2차 예측의 필요 여부를 판단하는 것으로, 동 도면에 도시된 바와 같이, 상기 역 양자화부의 출력 신호에 상기 예측 신호를 가산하여 입력 신호를 재구성하는 입력신호 재구성부(241), 상기 원 입력신호와 상기 재구성된 입력신호를 비교하여 이들간의 차이로서 상기 왜곡값을 구하는 왜곡 비교부(242), 및 상기 왜곡값이 상기 기준값 이상인 1차 예측 신호의 블록을 2차 예측이 필요한 해당 블록으로 판단하고, 이와 같은 블록을 적어도 하나 이상의 블록을 포함하는 일정 단위로 저장하는 저장부(243)를 포함한다.
상기 중심값 생성부(250)는 2차 예측이 필요한 하나 이상의 해당 블록에 대응하는 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 중심값을 구하기 위한 것으로, 동 도면에 도시된 바와 같이, 상기 저장부(243)에 일정 단위로 저장된 1차 예측 에러 신호에 대해 n개의 중심값을 설정하고, 상기 설정된 각 중심값과 상기 해당 1차 예측 에러 신호의 거리를 연산하며, 상기 연산된 거리에 근거하여 상기 각 중심값을 중심으로 상기 해당 1차 예측 에러 신호를 n개의 그룹으로 나누고, 상기 각 그룹내에서 모든 1차 예측 에러 신호들의 거리가 최소가되는 중심값을 재설정하는 벡터 양자화부(251), 및 상기 해당 블록의 해당 그룹 및 해당 중심값에 대한 정보를 생성하는 그룹 표기부(252)를 포함한다.
상기 제 2 예측 에러 신호 생성부(260)는 상기 해당 블록에 대하여, 상기 1차 예측 에러 신호에서 상기 중심값을 감산하여 2차 예측 에러 신호를 생성한다.
싱기 제 2 양자화부(270)는 상기 2차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 2 양자화하기 위한 것으로, 동 도면에 도시된 바와 같이, 상기 2차 예측 에러 신호를 DCT 변환하는 DCT 변환부(271), 상기 DCT 변환된 신호를 양자화하는 양자화부(272), 및 상기 2차 예측 에러 신호를 DCT 변환 없이 양자화하는 양자화부(273)를 포함한다.
상기 적응적 제어부(280)는 상기 1차 예측 에러 신호를 주파수 영역에서 양자화한 신호(A), 상기 1차 예측 에러 신호를 공간 영역에서 양자화한 신호(B), 상기 2차 예측 에러 신호를 공간 영역에서 양자화한 신호(C), 및 상기 2차 예측 에러 신호를 주파수 영역에서 양자화한 신호(D) 중 하나를 왜곡과 요구비율을 근거로 선택하기 위한 것이다.
상기 엔트로피 부호화부(290)는 상기 신호 A, B, C, D 중 상기 적응적 제어부(280)에 의해 선택된 하나의 신호를 엔트로피 부호화하기 위한 것이다.
도 3은 도 2의 벡터 양자화부(251)의 상세 블록도로, 동 도면에 도시된 바와 같이, 초기화부(301), 거리 연산부(302), 그룹 설정부(303), 중신값 연산부(304), 및 최적화 판단부(305)를 포함한다.
상기 초기화부(301)는 상기 저장부(243)에 저장된 일정 단위의 1차 예측 에러 신호 중에서 n개의 중심값을 설정한다.
상기 거리 연산부(302)는 n개의 중심값에 대한 상기 일정 단위의 1차 예측 에러 신호들간의 거리를 연산한다.
상기 그룹 설정부(303)는 n개의 중심값을 중심으로 상대적으로 거리가 작은 예측 에러 신호들끼리 n개의 그룹으로 편성한다.
상기 중심값 연산부(304)는 각 그룹내의 모든 예측 에러 신호와의 거리에 대한 제곱의 평균이 최소가되는 중심값을 새로 구한다
상기 최적화 판단부(305)는 상기 새로운 중심값이 이전의 중심값과 동일한지 판단하여, 동일하지 않으면 상기 새로운 중심값에 근거하여 상기 거리 연산부(302), 상기 그룹 설정부(303) 및 상기 중심값 연산부(304)에서의 과정을 순차 반복하고, 동일하면 벡터 양자화가 최적화 되었다고 판단하여 종료한다.
도 4는 도 2의 적응적 제어부(280)의 상세 블록도로, 동 도면에 도시된 바와 같이, 제 1 요구비율 연산부(401), 제 2 요구비율 연산부(402), 제 3 요구비율 연산부(403), 제 1 비용 연산부(404), 제 2 비용 연산부(405), 제 3 비용 연산부(406), 및 비용 비교부(407)를 포함한다.
상기 제 1 요구비율 연산부(401)는 주파수 영역에서의 요구 비율을 연산하고, 상기 제 2 요구비율 연산부(402)는 공간 영역에서의 요구 비율을 연산하며, 상기 제 3 요구비율 연산부(403)는 2차 예측에 따른 요구 비율을 연산한다. 상기 제 1 비용 연산부(404)는 주파수 영역에서의 왜곡과 상기 연산된 주파수 영역에서의 요구 비율을 근거로 제 1 비용을 연산하고, 상기 제 2 비용 연산부(405)는 공간 영역에서의 왜곡과 상기 연산된 공간 영역에서의 요구 비율을 근거로 제 2 비용을 연산하며, 상기 제 3 비용 연산부(406) 상기 연산된 2차 예측에 따른 요구 비율에 그룹 표기에 따른 추가 요구 비율을 합산한 요구 비율 및 2차 예측 에러 신호의 왜곡(공간 영역에서의 왜곡 및 주파수 영역에서의 왜곡 포함)을 근거로 제 3 비용을 연산한다. 또한, 상기 비용 비교부(407)는 상기 제 1 비용, 상기 제 2 비용 및 상기 제 3 비용을 비교하여 상기 신호 A, B, C, D 중 가장 비용이 낮은 부호화 방식의 신호를 선택한다.
도 5는 본 발명의 일 실시예에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 방법의 흐름도로서, 일 예로 도 2의 장치에 적용될 수 있으므로 그 장치의 동작과 병행하여 설명한다.
도 5의 방법은, 동 도면에 도시된 바와 같이, 제 1 예측 에러 신호 생성 단계(S510), 제 1 양자화 단계(S520), 제 2 예측 판단 단계(S530), 중심값 생성 단계(S540), 제 2 예측 에러 신호 생성 단계(S550), 제 2 양자화 단계(S560), 및 부호화 단계(S570)를 포함한다.
상기 제 1 예측 에러 신호 생성 단계(S510)는 제 1 예측 에러 신호 생성부(210)를 통해 입력 신호에서 예측 신호를 감산하여 1차 예측 에러 신호를 생성한다.
상기 제 1 양자화 단계(S520)는 제 1 양자화부(220)를 통해 상기 1차 예측 에러 신호를 적응적으로 DCT 변환한 후 양자화한다. 즉, 상기 제 1 예측 에러 신호를 DCT 변환한 후 양자화(주파수 영역에서의 양자화)하거나, DCT 변환없이 양자화(공간 영역에서의 양자화)한다.
상기 제 2 예측 판단 단계(S530)는 역 양자화부(230)를 통해 상기 제 1 양자화된 신호를 역 양자화한 후 적응적으로 역 DCT 변환하여 출력하고, 제 2 예측 판단부(240)를 통해 상기 역 양자화부(230)의 출력 신호의 왜곡값을 구한 후 그 왜곡값과 기 설정된 기준값에 근거하여 블록 단위로 2차 예측의 필요 여부를 판단한다. 즉, 블록 단위로 1차 예측 에러 신호에 대해 주파수 영역에서 양자화한 신호 A와 공간 영역에서 양자화한 신호 B의 왜곡이 기준보다 클 경우 해당 블록에 대해 2차 예측이 필요하다고 판단한다.
상기 중심값 생성 단계(S540)는 중심값 생성부(250)를 통해 상기 2차 예측이 필요한 하나 이상의 해당 블록에 대응하는 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 유사한 신호끼리 그룹화하고 각 그룹을 대표하는 중심값을 구한다. 본 단계는 이후 도 6을 참조로 보다 상세히 설명한다.
상기 제 2 예측 에러 신호 생성 단계(S550)는 제 2 예측 에러 신호 생성부(260)를 통해 2차 예측이 필요한 해당 블록에 대하여 해당 1차 예측 에러 신호에서 해당 중심값을 감산하여 2차 예측 에러 신호를 생성한다.
상기 제 2 양자화 단계(S560)는 제 2 양자화부(270)를 통해 상기 2차 예측 에러 신호를 적응적으로 DCT 변환한 후 양자화한다. 즉, 상기 제 2 예측 에러 신호를 DCT 변환한 후 양자화(주파수 영역에서의 양자화)하거나, DCT 변환없이 양자화(공간 영역에서의 양자화)한다.
상기 부호화 단계(S570)는 적응적 제어부(280)를 통해 상기 1차 예측 에러 신호를 주파수 영역에서 양자화한 신호(A), 상기 1차 예측 에러 신호를 공간 영역에서 양자화한 신호(B), 상기 2차 예측 에러 신호를 공간 영역에서 양자화한 신호(C), 및 상기 2차 예측 에러 신호를 주파수 영역에서 양자화한 신호(D) 중 하나를 왜곡과 요구비율을 근거로 선택하고, 엔트로피 부호화부(290)를 통해 상기 신호 A, B, C, D 중 선택된 하나의 신호를 엔트로피 부호화한다.
도 6은 도 5의 중심값 생성 단계(S540)의 세부 흐름도로서, 일 예로 도 3의 장치에 적용되므로 그 장치의 동작과 병행하여 설명한다.
먼저, 초기화부(301)를 통해 2차 예측이 필요한 해당 블록에 대응하는 1차 예측 에러 신호에 대해 n개의 중심값을 설정하고(S601), 거리 연산부(302)를 통해 상기 설정된 각 중심값과 상기 해당 1차 예측 에러 신호의 거리를 연산한다(S602).
다음, 그룹 설정부(303)를 통해 상기 연산된 거리에 근거하여 상기 각 중심값을 중심으로 상기 해당 1차 예측 에러 신호를 유사한 신호끼리 n개의 그룹으로 나누고(S603), 중심값 연산부(304)를 통해 상기 각 그룹내에서 모든 1차 예측 에러 신호들의 거리가 최소가되는 중심값을 재설정한다(S604).
다음, 최적화 판단부(305)를 통해 이전 중심값이 상기 재설정된 중심값과 동일한지를 판단하여, 동일하지 않다면 상기 재설정된 중심값에 근거하여 상기 단계 S602 내지 S605를 다시 수행하고, 동일하다면 상기 재설정된 중심값에 대한 정보 및 이에 해당하는 블록의 해당 그룹에 대한 정보를 생성한다.
이어, 도 2 내지 도 6을 참조하여 본 발명의 일 실시예에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 장치 및 방법에 대해 부가 설명토록 한다.
본 발명의 실시예는 H.264/AVC 기술을 기본으로 하나, 기존 기술과 결합하여 수행될 수도 있다.
본 발명의 실시예에 따르면, 왜곡 비교부(242)는 주파수 영역에서 양자화된 1차 예측 에러 신호에 대한 왜곡값(distortion)과 공간 영역에서 양자화된 1차 예측 에러 신호에 대한 왜곡값을 기 설정된 기준값으로서의 분계값 K와 비교하여 추가적인 2차 예측의 수행 여부를 결정하고, 벡터 양자화부(251)는 2차 예측이 필요한 1차 예측 에러 신호에 대해 벡터 양자화를 통해 중심값을 구하며, 제 2 예측 에러 신호 생성부(260)는 현재 블록의 1차 예측 에러 신호와 해당 중심값과의 차를 통해 2차 예측 에러 신호를 생성한다.
본 발명의 실시예에 따르면, 입력신호는 움직임 추정을 거치며 예측 신호를 제공하기 위해 상기 움직임 추정에 기반하여 움직임 보상 예측이 수행되고, 제 1 예측 에러 신호 생성부(210)는 상기 예측 신호를 입력 신호로부터 차감한다. 이로부터 생성되는 1차 예측 에러 신호를 DCT 변환부(221)를 통해 주파수 영역(101)으로 변환하며 양자화부(222)를 통해 양자화 한다. 상기 양자화부(222)의 출력 신호는 역 양자화부(231)와 역 DCT 변환부(232)를 역 양자화 및 역 DCT 변환되어 움직임 보상 예측을 위해 이용된다. 본 실시예에 따르면, 1차 예측 에러 신호를 주파수 영역으로 변환하지 않고 공간 영역에서 양자화부(223)로 보내, 공간 영역에서 양자화 한 뒤, 주파수 영역과 공간 영역에서 부호화 한 1차 예측 에러 신호를 적응적으로 선택한다. 또한 1차 예측 에러 신호는 예측 신호에 부가되어 움직임 보상 및 움직임 추정을 위해 이용된다.
본 발명의 실시예에 따르면, 주파수 영역에서 양자화된 1차 예측 에러 신호와 공간 영역에서 양자화된 1차 예측 에러 신호의 왜곡이 기준보다 큰 경우에 한하여 추가적인 2차 예측을 수행한다. 2차 예측 수행 여부 결정은 왜곡 비교부(242)에서 이루어지며, 왜곡 비교부(242)의 입력인 주파수 영역 및 공간 영역에서 양자화된 예측 오차신호와 분계값 K와의 비교를 통해 판단한다. 분계값 K는 왜곡의 크고 적음에 대한 기준이 된다. 양자화된 1차 예측 오차 신호의 왜곡이 분계값 K보다 작은 경우, 왜곡이 적어 압축 효율이 좋다는 판단 하에 기존의 기술과 같은 방법으로 주파수 영역에서 부호화 하거나 공간 영역에서 부호화 한다. 반면 양자화된 1차 예측 오차 신호의 왜곡이 분계값 K보다 큰 경우, 왜곡이 커 압축 효율이 떨어진다는 판단 하에 2차 예측을 수행하여 압축 효율을 높이도록 한다. 도 7의 A와 같은 모든 블록에 대하여 상기 기술한 비교 방법을 통해 B와 같이 2차 예측 여부를 판단하여 분류한다. B의 검은색 블록은 왜곡이 커 2차 예측을 수행할 블록을 의미하며 2차 예측을 위해 해당 1차 예측 에러 신호는 저장부(243)에 저장된다.
본 발명의 실시예에 따르면, 도 8에서 A는 무작위로 분포된 1차 예측 에러 신호들을 나타낸다. 이러한 1차 예측 에러 신호들은 저장부(243)로부터 초기화부(301)로 보내진다. 초기화부(301)에서는 무작위로 모든 예측 에러 신호들 중 한 예측 에러 신호를 첫 번째 중심 값으로 설정한다. 첫 번째 중심 값으로 설정된 예측 에러 신호를 제외한 모든 예측 에러 신호들 중 무작위로 한 예측 에러 신호를 두 번째 중심 값으로 설정한다. 설정된 첫 번째 중심 값과 두 번째 중심 값의 거리가 기 설정된 기준값으로서의 분계 값 M보다 클 경우 두 번째 중심 값은 유지되고 그렇지 못한 경우 두 번째 중심 값에 대한 설정은 취소된다. 거리는 상기 기술한 Least square error로 구하도록 한다. 첫 번째 및 두 번째 예측 에러 신호를 제외한 모든 예측 에러 신호들 중 무작위로 세 번째 중심 값이 설정된다. 설정된 첫 번째 중심 값과 세 번째 중심 값의 거리와 두 번째 중심 값과 세 번째 중심 값과의 거리가 분계 값 M보다 클 경우 세 번째 중심 값은 유지되고 그렇지 못한 경우 세 번째 중심 값에 대한 설정은 취소된다. 이러한 방법을 반복적으로 수행하여, 저장된 모든 예측 에러 신호에 대하여 n개의 중심 값이 도 8의 A에서 y와 같이 설정된다. 벡터 양자화를 위한 초기 설정을 마치면, 거리 연산부(302)에 의하여 n개의 중심 값에 대한 모든 예측 에러 신호의 거리가 계산되고, 그룹 설정부(303)에 의하여 모든 예측 에러 신호는 도 8의 B와 같이 가장 거리가 작은 중심 값과 같은 그룹으로 편성된다. 그룹 설정을 마치면, 중심값 연산부(303)에 의하여 각 그룹에 대한 중심 값이 새로이 연산된다. 중심값은 상술된 Lloyd 알고리즘을 통한 그룹 내 모든 예측 에러 신호와의 거리에 대한 제곱의 평균이 최소가 되는 지점으로 한다. 새로이 중심 값을 구한 뒤 다시 거리 연산부(302)에 의하여 중심 값과 모든 예측 에러 신호들의 거리를 연산한 뒤, 도 8의 D와 같이 그룹 설정부(303)에 의하여 그룹이 재편성 된다. 재편성된 그룹에 대하여 다시 중심 값을 구하게 되며, 이러한 과정을 반복한다. 새로이 구해진 중심 값이 이전의 중심 값과 같으면 최적화 판단부(305)에 의하여 벡터 양자화가 최적화 되었다고 판단한 뒤 위의 반복 과정을 종료한다. 최종적으로 H와 같은 모든 예측 에러 신호에 대한 최적의 그룹화를 할 수 있게 되고, 각 그룹에 대한 예측 에러 신호들과 중심값은 그룹 표기부(252)에 의해 같은 그룹에 속해 있음을 표기한다. 이때 예측 에러 신호들은 자신이 속한 그룹에 대한 표기를 위해 도 7의 C와 같이 log2n 비트(n개의 그룹 시)가 추가 정보 신호로 필요하다. 본 실시 예 에서는 4개의 그룹으로 분할 하였으므로 각 예측 에러 신호들은 자신이 속한 그룹에 대한 표기를 위해 2비트가 필요하다. 이는 후에 2차 예측에 대한 비용(cost) 연산에 포함된다.
본 발명의 실시예에 따르면, 앞서 기술한 과정을 통해 모든 예측 에러 신호들에 대한 그룹화가 완료되면, 제 2 예측 신호 생성부(260)는 현재 부호화 하고자 하는 1차 예측 에러와 같은 그룹에 속해 있는 중심 값의 차를 통해 2차 예측을 한다. 2차 예측이 수행된 2차 예측 에러 신호는 제 2 양자화부(270)로 주파수 영역 및 공간 영역에서 양자화된다.
본 발명의 실시예에 따르면, 주파수 영역에서 양자화된 1차 예측 오차 신호와 공간 영역에서 양자화된 1차 예측 오차 신호의 왜곡이 큰 경우에 한하여 해당 1차 예측 오차는 해당 벡터 영역의 중심값과의 차를 구해 2차 예측 오차 신호가 생성되고, 2차 예측 오차 신호는 적응적 양자화를 위해 양자화부(270)로 보내 진다. 양자화된 2차 예측 오차 신호 C,D와 주파수 영역에서 양자화된 1차 예측 오차 신호 A 및 공간 영역에서 양자화된 1차 예측 오차 신호 B 중 하나는 적응적 제어부(280)에 의한 비용(cost) 비교를 통해 적응적으로 선택된다.
본 발명의 실시예에 따르면, 적응적 제어부(280)에서 주파수 영역에서의 요구 비율 연산부(401) 및 공간 영역에서의 요구 비율 연산부(402)는 기존의 기술과 같은 방법으로 각 요구 비율을 구하며, 라그랑주(Lagrange) 파라미터에 의한 요구비율 및 왜곡으로 비용 연산부(404,405)에 의해 각 영역에 대한 비용을 구한다. 2차 예측에 의한 비용은 상기 기술한 소속 그룹을 표현하기 위한 비용이 포함된다. 2차 예측에 따른 요구 비율 연산부(403)에 의한 요구비율과 그룹 표기에 따른 추가 요구비율의 합이 비용 연산부(406)의 요구비율 입력으로 사용된다.
도 2에서 A는 주파수 영역에서 양자화된 1차 예측 오차 신호, B는 공간 영역에서 양자화된 1차 예측 오차 신호를 나타내며, C와 D는 각각 본 발명의 실시예에 따른 2차 예측을 통해 공간 영역 및 주파수 영역에서 양자화된 예측 오차 신호이다. 적응적 제어부(280)는 예측 에러 신호 A,B,C,D 중에 비용(cost)을 최소로 하는 예측 오차 신호를 선택하고, 엔트로피 부호화기(290)는 선택된 예측 에러 신호를 엔트로피 부호화 한다.
도 9는 본 발명의 일 실시예 따른 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 장치의 블록도로, 도 2의 부호화 장치에 대응하는 복호화 장치이며, 동 도면에 도시된 바와 같이, 그룹표기 판별부(910), 제 1 역 양자화부(920), 1차 예측 부호화 신호 생성부(930), 제 2 역 양자화부(940), 및 복호화부(950)를 포함한다.
상기 그룹표기 판별부(910)는 입력 신호가 1차 예측 부호화 신호인지 또는 2차 예측 부호화 신호인지를 판별하는 것으로, 현재 블록에 대하여 그룹의 표시가 있는지 여부를 판별하여, 그룹의 표시가 없으면 1차 예측 부호화 신호로 판별하고, 그룹의 표시가 있으면 2차 예측 부호화 신호로 판별한다.
상기 제 1 역 양자화부(920)는 상기 판별된 1차 예측 부호화 신호를 제 1 역 양자화한 후 적응적으로 역 DCT 변환하는 것으로, 해당 신호가 주파수 영역에서 양자화된 부호화 신호이면 이에 대응하도록 역 양자화부(921)를 통해 역양자한 후 역 DCT 변환부(922)를 통해 역 DCT 변환한 후의 신호 A를 출력하고, 해당 신호가 공간 영역에서 양자화된 부호화 신호이면 이에 대응하도록 역 양자화부(923)를 통해 역 양자화한 후의 신호 B를 출력 한다.
상기 1차 예측 부호화 신호 생성부(930)는 상기 판별된 2차 예측 부호화 신호 및 수신된 해당 중심값에 근거하여 해당 1차 예측 부호화 신호를 생성하는 것으로, 수신된 그룹별 중심값을 저장하는 그룹별 중심값 저장부(931), 상기 2차 예측 부호화 신호의 해당 블록의 해당 그룹을 판별하는 그룹 판별부(932), 및 상기 2차 예측 부호화 신호에서 상기 해당 그룹의 해당 중심값을 가산하여 제 1 예측 부호화 신호를 생성하는 신호 생성부(933)를 포함한다.
상기 제 2 역 양자화부(940)는 해당 신호가 공간 영역에서 양자화된 부호화 신호이면 이에 대응하도록 역 양자화부(941)를 통해 역 양자화한 후의 신호 C를 출력하고, 해당 신호가 주파수 영역에서 양자화된 부호화 신호이면 이에 대응하도록 역 양자화부(942)를 통해 역양자화하고 역 DCT 변환부(943)를 통해 역 DCT 변환한 후의 신호 D를 출력한다.
상기 복호화부(950)는 상기 신호 A, B, C, D 중에 복호화 방법 선택 신호에 의해 선택된 하나의 신호를 복호화한다. 상기 복호화 방법 선택 신호는 도 2의 적응적 제어부(280)와 대응하게 상기 신호 A, B, C, D에 대한 비용 비교를 통해 생성된다.
한편, 제 2 역 양자화부(940)를 도 9와는 달리 1차 예측 부호화 신호 생성부(930)의 선단에 위치시켜 입력된 신호를 역양자화하고 적응적으로 역 DCT 변환한 후 그 출력 신호를 1차 예측 부호화 신호 생성부(930)의 입력으로 할 수 있다.
도 2의 부호화 장치를 위해 전술된 바와 같이, 상기 중심값은 부호화 시 해당 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 구해진 것이고, 상기 벡터 양자화는 상기 해당 1차 예측 에러 신호에 대해 n개의 중심값을 설정하고, 상기 설정된 각 중심값과 상기 해당 1차 예측 에러 신호의 거리를 연산하며, 상기 연산된 거리에 근거하여 상기 각 중심값을 중심으로 상기 해당 1차 예측 에러 신호를 n개의 그룹으로 나누고, 상기 각 그룹내에서 모든 1차 예측 에러 신호들의 거리가 최소가되는 중심값을 재설정하여, 해당 블록의 해당 그룹 및 해당 중심값에 대한 정보를 생성하는 것을 나타낸다.
도 10은 본 발명의 일 실시예 따른 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 방법이 흐름도로서, 일 예로 도 9의 장치에 적용될 수 있으므로 그 장치의 동작과 병행하여 설명한다.
먼저, 그룹표기 판별부(910)를 통해 입력 신호가 1차 예측 부호화 신호인지 또는 2차 예측 부호화 신호인지를 판별하는데, 입력 신호의 현재 블록에 대하여 그룹의 표시가 있는지 여부를 판별하여, 그룹의 표시가 없으면 1차 예측 부호화 신호로 판별하고, 그룹의 표시가 있으면 2차 예측 부호화 신호로 판별한다(S1001).
다음, 1차 예측 부호화 신호 생성부(930)를 통해 상기 판별된 2차 예측 부호화 신호 및 수신된 해당 중심값에 근거하여 해당 1차 예측 부호화 신호를 생성하는데, 부호화기로부터 수신된 그룹별 중심값을 그룹별 중심값 저장부(931)에 저장하고, 그룹 판별부(932)는 상기 2차 예측 부호화 신호의 해당 블록의 해당 그룹을 판별하며, 신호 생성부(933)는 상기 2차 예측 부호화 신호에서 상기 해당 그룹의 해당 중심값을 가산하여 제 1 예측 부호화 신호를 생성한다(S1002).
다음, 상기 제 2 역 양자화부(940)는, 상기 생성된 제 1 예측 부호화 신호가 공간 영역에서 양자화된 부호화 신호이면 이에 대응하도록 역 양자화부(941)를 통해 역 양자화한 후의 신호 C를 출력하고, 상기 생성된 제 1 예측 부호화 신호가 주파수 영역에서 양자화된 부호화 신호이면 이에 대응하도록 역 DCT 변환부(942)를 통해 역 DCT 변환하고 역 양자화부(943)를 통해 역양자한 후의 신호 D를 출력한다(S1003).
다음, 제 1 역 양자화부(920)를 통해 상기 판별된 1차 예측 부호화 신호를 적응적으로 역 DCT 변환한 후 역 양자화하는데, 상기 판별된 1차 예측 부호화 신호가 주파수 영역에서 양자화된 부호화 신호이면 이에 대응하도록 역 DCT 변환부(921)를 통해 역 DCT 변환하고 역 양자화부(922)를 통해 역양자한 후의 신호 A를 출력하고, 상기 판별된 1차 예측 부호화 신호가 공간 영역에서 양자화된 부호화 신호이면 이에 대응하도록 역 양자화부(923)를 통해 역 양자화한 후의 신호 B를 출력 한다(S1004).
마지막으로, 복호화부(950)를 통해 상기 신호 A, B, C, D 중에 복호화 방법 선택 신호에 의해 선택된 하나의 신호를 복호화하는데, 상기 복호화 방법 선택 신호는 도 2의 적응적 제어부(280)와 대응하게 상기 신호 A, B, C, D에 대한 비용 비교를 통해 생성된다(S1005).
한편, 본 발명의 실시예에 따르면 도 10과는 달리 단계 S1001을 수행한 후, 단계 S1002의 수행전에 단계 S1003을 먼저 수행하고 이후 단계 S1002를 수행하도록 할 수 있다.
이어, 도 9 및 도 10을 참조하여 본 발명의 일 실시예에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 장치의 동작 및 이에 대응하는 방법에 대해 설명토록 한다.
본 발명의 실시예에 따르면, 상술된 부호화 장치 및 방법에 대응하는 복호화 장치 및 방법을 제공한다.
부호화된 예측 에러 신호는 그룹 표기 판별부(910)에 의하여 그룹의 표시 여부를 판별하여 벡터 양자화 기반 2차 예측 수행 여부를 판단한다. 그룹의 표시가 없는 경우 2차 예측이 없는 1차 예측 부호화 신호로 판단하여, 제 1 역 양자화부(920)를 통해 [문헌 1]과 같은 방법으로 복호화 된다. 그룹의 표시가 있는 경우 2차 예측 부호화 신호로 판단하여, 그룹 판별부(932)를 통해 현재 예측 에러 신호의 그룹을 찾아낸다. 그룹별 중심 값을 저장해 놓은 그룹별 중심값 저장부(931)로부터 해당 그룹의 중심값을 찾고, 예측 에러 신호와 해당 중심값의 합을 제 2 역 양자화부(940)로 보낸다. 본 과정에서의 부호화된 예측 에러 신호는 2차 예측을 통해 부호화된 신호이며, 이 신호와 해당 중심값의 합은 1차 예측 한 후의 부호화 신호가 된다. 역 양자화된 예측 에러 신호는 복호화 방법 선택 신호에 의해서 복호화부(950)로 보내져 움직임 예측 및 보상이 수행되어 복호화 된다.
본 발명의 실시예에 따르면, CABAC 또는 CAVLC에 따른 복호화와 스캐닝은 기존 기술과 동일한 방법으로 수행한다.
도 5-6을 참조하여 설명된 본 발명의 실시예에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 방법 및 도 10을 참조하여 설명된 본 발명의 실시예에 따른 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 방법은 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독가능 기록 매체로 구현될 수 있다. 상기 컴퓨터 판독 가능 기록 매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 기록 매체는 본 발명의 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 기록 매체는 프로그램 명령, 로컬 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나 지 않는 범위에서 다양한 수정및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술사상을 한정하기 위한것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와동등한 범위 내에있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
이상 설명한 바와같이, 본 발명의 실시예는 영상데이터 압축 기술 분야에 적용되어, 1차 예측에러 신호의 왜곡이 큰 경우 벡터 양자화를 기반으로 2차 예측을 수행하고 적응적으로 DCT 변환을 수행하여 예측 오차를 현저히 줄일 수 있는 매우 유용한 발명이다.
CROSS-REFERENCE TO RELATED APPLICATION
본 특허출원은 2009년 10월 28일 한국에 출원한 특허출원번호 제 10-2009-0102954 호에 대해 미국 특허법 119(a)조(35 U.S.C § 119(a))에 따라 우선권을 주장하면, 그 모든 내용은 참고문헌으로 본 특허출원에 병합된다. 아울러, 본 특허출원은 미국 이외에 국가에 대해서도 위와 동일한 동일한 이유로 우선권을 주장하면 그 모든 내용은 참고문헌으로 본 특허출원에 병합된다.
Claims (17)
- 입력 신호 및 예측 신호를 기반으로 1차 예측 에러 신호를 생성하는 제 1 예측 에러 신호 생성부;상기 1차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 1 양자화하는 제 1 양자화부;상기 제 1 양자화된 신호를 역 양자화한 후 적응적으로 역 DCT 변환하는 역 양자화부;상기 역 양자화부의 출력 신호의 왜곡값과 기 설정된 기준값에 근거하여 블록 단위로 2차 예측의 필요 여부를 판단하는 제 2 예측 판단부;상기 2차 예측이 필요한 하나 이상의 해당 블록에 대응하는 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 중심값을 구하는 중심값 생성부;상기 해당 블록에 대하여, 상기 1차 예측 에러 신호 및 상기 중심값을 기반으로 2차 예측 에러 신호를 생성하는 제 2 예측 에러 신호 생성부;상기 2차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 2 양자화하는 제 2 양자화부; 및상기 제 1 양자화된 신호 또는 상기 제 2 양자화된 신호를 부호화하는 부호화부;를 포함하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 장치.
- 제 1 항에 있어서,상기 제 2 예측 판단부는,상기 역 양자화부의 출력 신호와 상기 예측 신호에 근거하여 입력 신호를 재구성하는 입력신호 재구성부;상기 재구성된 입력신호 및 상기 원 입력신호에 근거하여 상기 왜곡값을 구하는 왜곡 비교부; 및상기 왜곡값이 상기 기준값 이상인 블록을 2차 예측이 필요한 상기 해당 블록으로 판단하여 저장하는 저장부;를 포함하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 장치.
- 제 1 항에 있어서,상기 중심값 생성부는.상기 하나 이상의 해당 블록에 대응하는 1차 예측 에러 신호에 대해 n개의 중심값을 설정하고, 상기 설정된 각 중심값과 상기 해당 1차 예측 에러 신호의 거리를 연산하며, 상기 연산된 거리에 근거하여 상기 각 중심값을 중심으로 상기 해당 1차 예측 에러 신호를 n개의 그룹으로 나누고, 상기 각 그룹내에서 모든 1차 예측 에러 신호들의 거리가 최소가되는 중심값을 재설정하며, 상기 재설정된 중심값이 이전의 중심값과 다르면 그 재설정된 중심값을 기초로 상기 과정을 반복하고, 같으면 상기 재설정된 중심값을 최적의 중심값으로 설정하는 벡터 양자화부; 및상기 해당 블록의 해당 그룹 및 해당 최적 중심값에 대한 정보를 생성하는 그룹 표기부;를 포함하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 장치.
- 제 1 항에 있어서,상기 벡터 양자화는 로이드 알고리즘(Lloyd algorithm)을 기반으로 수행하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 장치.
- 입력 신호가 1차 예측 부호화 신호인지 또는 2차 예측 부호화 신호인지를 판별하는 그룹표기 판별부;상기 판별된 1차 예측 부호화 신호를 제 1 역 양자화한 후 적응적으로 역 DCT 변환하는 제 1 역 양자화부;상기 판별된 2차 예측 부호화 신호를 제 2 역 양자화한 후 적응적으로 역 DCT 변환하는 제 2 역 양자화부;상기 제 2 역 양자화부로부터 출력된 2차 예측 부호화 신호 및 수신된 해당 중심값에 근거하여 1차 예측 부호화 신호를 생성하는 1차 예측 부호화 신호 생성부; 및상기 제 1 역 양자화부의 출력 신호 또는 상기 1차 예측 부호화 신호 생성부의 출력 신호를 복호화하는 복호화부;를 포함하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 장치.
- 제 5 항에 있어서,상기 중심값은 해당 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 구해진 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 장치.
- 제 6 항에 있어서,상기 벡터 양자화는,상기 해당 1차 예측 에러 신호에 대해 n개의 중심값을 설정하고, 상기 설정된 각 중심값과 상기 해당 1차 예측 에러 신호의 거리를 연산하며, 상기 연산된 거리에 근거하여 상기 각 중심값을 중심으로 상기 해당 1차 예측 에러 신호를 n개의 그룹으로 나누고, 상기 각 그룹내에서 모든 1차 예측 에러 신호들의 거리가 최소가되는 중심값을 재설정하여, 상기 재설정된 중심값이 이전의 중심값과 다르면 그 재설정된 중심값을 기초로 상기 과정을 반복하고, 같으면 상기 재설정된 중심값을 최적의 중심값으로 설정한 후, 해당 블록의 해당 그룹 및 해당 최적 중심값에 대한 정보를 생성하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 장치.
- 제 6 항에 있어서,상기 벡터 양자화는 로이드 알고리즘(Lloyd algorithm)을 기반으로 수행하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 장치.
- 입력 신호 및 예측 신호를 기반으로 1차 예측 에러 신호를 생성하는 제 1 예측 에러 신호 생성 단계;상기 1차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 1 양자화하는 제 1 양자화 단계;상기 제 1 양자화된 신호를 역 양자화한 후 적응적으로 역 DCT 변환하여 구해진 신호의 왜곡값과 기 설정된 기준값에 근거하여 블록 단위로 2차 예측의 필요 여부를 판단하는 제 2 예측 판단 단계;상기 2차 예측이 필요한 하나 이상의 해당 블록에 대응하는 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 중심값을 구하는 중심값 생성 단계;상기 해당 블록에 대하여, 상기 1차 예측 에러 신호 및 상기 중심값을 기반으로 2차 예측 에러 신호를 생성하는 제 2 예측 에러 신호 생성 단계;상기 2차 예측 에러 신호를 적응적으로 DCT 변환한 후 제 2 양자화하는 제 2 양자화 단계; 및상기 제 1 양자화된 신호 또는 상기 제 2 양자화된 신호를 부호화하는 부호화 단계;를 포함하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 방법.
- 제 9 항에 있어서,상기 중심값 생성 단계는상기 하나 이상의 해당 블록에 대응하는 1차 예측 에러 신호에 대해 n개의 중심값을 설정하는 제 1 단계;상기 설정된 각 중심값과 상기 해당 1차 예측 에러 신호의 거리를 연산하는 제 2 단계;상기 연산된 거리에 근거하여, 상기 각 중심값을 중심으로 상기 해당 1차 예측 에러 신호를 n개의 그룹으로 나누는 제 3 단계;상기 각 그룹내에서 모든 1차 예측 에러 신호들의 거리가 최소가되는 중심값을 재설정하는 제 4 단계; 및상기 재설정된 중심값이, 이전의 중심값과 다르면 그 재설정된 중심값을 기초로 상기 제 2 단계 내지 상기 제 4 단계를 반복하고, 같으면 상기 해당 블록의 해당 그룹 및 해당 중심값에 대한 정보를 생성하는 단계;를 포함하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 방법.
- 제 9 항에 있어서,상기 벡터 양자화는 로이드 알고리즘(Lloyd algorithm)을 기반으로 수행하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 방법.
- 입력 신호가 1차 예측 부호화 신호인지 또는 2차 예측 부호화 신호인지를 판별하는 판별 단계;상기 판별된 1차 예측 부호화 신호를 제 1 역 양자화한 후 적응적으로 역 DCT 변환하는 제 1 역 양자화 단계;상기 판별된 2차 예측 부호화 신호를 제 2 역 양자화한 후 적응적으로 역 DCT 변환하는 제 2 역 양자화 단계;상기 제 2 역 양자화 단계로부터 출력된 2차 예측 부호화 신호에 수신된 해당 중심값을 가산하여 1차 예측 부호화 신호를 생성하는 1차 예측 부호화 신호 생성 단계; 및상기 제 1 역 양자화 단계의 출력 신호 또는 상기 1차 예측 부호화 신호 생성 단계의 출력 신호를 복호화하는 복호화 단계;를 포함하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 방법.
- 제 12 항에 있어서,상기 중심값은 해당 1차 예측 에러 신호에 대해 벡터 양자화를 수행하여 구하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 방법.
- 제 12 항에 있어서,상기 벡터 양자화는,상기 해당 1차 예측 에러 신호에 대해 n개의 중심값을 설정하고, 상기 설정된 각 중심값과 상기 해당 1차 예측 에러 신호의 거리를 연산하며, 상기 연산된 거리에 근거하여 상기 각 중심값을 중심으로 상기 해당 1차 예측 에러 신호를 n개의 그룹으로 나누고, 상기 각 그룹내에서 모든 1차 예측 에러 신호들의 거리가 최소가되는 중심값을 재설정하여, 상기 재설정된 중심값이 이전의 중심값과 다르면 그 재설정된 중심값을 기초로 상기 과정을 반복하고, 같으면 상기 재설정된 중심값을 최적의 중심값으로 설정한 후, 해당 블록의 해당 그룹 및 해당 최적 중심값에 대한 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 방법.
- 제 12 항에 있어서,상기 벡터 양자화는 로이드 알고리즘(Lloyd algorithm)을 기반으로 수행하는 것을 특징으로 하는 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 방법.
- 제 9 항 내지 제 11 항 중 어느 한 항의 상기 벡터 양자화 기반 2차 예측을 통한 동영상 부호화 방법이 프로그램으로 기록된 컴퓨터로 읽을 수 있는기록 매체.
- 제 12 항 내지 제 15 항 중 어느 한 항의 상기 벡터 양자화 기반 2차 예측을 통한 동영상 복호화 방법이 프로그램으로 기록된 컴퓨터로 읽을 수 있는기록 매체.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR10-2009-0102954 | 2009-10-28 | ||
| KR1020090102954A KR101614767B1 (ko) | 2009-10-28 | 2009-10-28 | 벡터 양자화 기반 2차 예측을 통한 동영상 부호화/복호화 장치, 방법 및 기록 매체 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2011052913A2 true WO2011052913A2 (ko) | 2011-05-05 |
| WO2011052913A3 WO2011052913A3 (ko) | 2011-10-27 |
Family
ID=43922762
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/KR2010/007028 Ceased WO2011052913A2 (ko) | 2009-10-28 | 2010-10-14 | 벡터 양자화 기반 2차 예측을 통한 동영상 부호화/복호화 장치, 방법 및 기록 매체 |
Country Status (2)
| Country | Link |
|---|---|
| KR (1) | KR101614767B1 (ko) |
| WO (1) | WO2011052913A2 (ko) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2018038554A1 (ko) * | 2016-08-24 | 2018-03-01 | 엘지전자(주) | 이차 변환을 이용한 비디오 신호의 인코딩/디코딩 방법 및 장치 |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100288672B1 (ko) * | 1995-09-18 | 2001-05-02 | 포만 제프리 엘 | 노이즈예측최대근사검출을위한장치및방법 |
| JP3351705B2 (ja) * | 1997-04-25 | 2002-12-03 | 日本ビクター株式会社 | 動き補償符号化装置、動き補償符号化方法、及び記録媒体への記録方法 |
| KR100235356B1 (ko) * | 1997-08-13 | 1999-12-15 | 전주범 | 개선된 움직임 추정 장치 및 그 추정 방법 |
| FI116992B (fi) * | 1999-07-05 | 2006-04-28 | Nokia Corp | Menetelmät, järjestelmä ja laitteet audiosignaalin koodauksen ja siirron tehostamiseksi |
-
2009
- 2009-10-28 KR KR1020090102954A patent/KR101614767B1/ko active Active
-
2010
- 2010-10-14 WO PCT/KR2010/007028 patent/WO2011052913A2/ko not_active Ceased
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2018038554A1 (ko) * | 2016-08-24 | 2018-03-01 | 엘지전자(주) | 이차 변환을 이용한 비디오 신호의 인코딩/디코딩 방법 및 장치 |
Also Published As
| Publication number | Publication date |
|---|---|
| KR101614767B1 (ko) | 2016-04-22 |
| KR20110046106A (ko) | 2011-05-04 |
| WO2011052913A3 (ko) | 2011-10-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2009157669A2 (ko) | 인트라 예측 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
| WO2013002549A2 (ko) | 영상 부호화/복호화 방법 및 장치 | |
| WO2011004986A2 (ko) | 영상 부호화/복호화 방법 및 장치 | |
| WO2011052897A2 (ko) | 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
| WO2013070006A1 (ko) | 스킵모드를 이용한 동영상 부호화 및 복호화 방법 및 장치 | |
| WO2009157665A2 (ko) | 블록 변환을 이용한 인트라 예측 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
| WO2011062392A2 (ko) | 후보 예측 움직임 벡터 집합 선택을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
| WO2012015275A2 (ko) | 블록 분할예측을 이용한 영상 부호화/복호화 방법 및 장치 | |
| WO2013005941A2 (ko) | 영상 부호화 및 복호화 방법과 장치 | |
| WO2012096550A2 (ko) | 양방향 인트라 예측을 이용한 영상 부호화/복호화 방법 및 장치 | |
| WO2009113791A2 (ko) | 영상 부호화장치 및 영상 복호화장치 | |
| WO2013002550A2 (ko) | 고속 코딩 단위(Coding Unit) 모드 결정을 통한 부호화/복호화 방법 및 장치 | |
| WO2012077959A2 (ko) | 노이즈성분을 위한 공간영역에서의 영상 부호화/복호화 방법 및 장치 | |
| WO2011145836A2 (ko) | 인트라 블록 및 인터 블록이 혼합된 코딩블록을 이용하는 영상 부호화/복호화 장치 및 그 방법 | |
| WO2012093854A2 (ko) | 코딩 유닛 단위 병렬 인트라예측을 이용한 부호화/복호화 방법 및 장치 | |
| WO2010120113A2 (ko) | 예측 모드 선택 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
| WO2011145819A2 (ko) | 영상 부호화/복호화 장치 및 방법 | |
| WO2012011714A2 (ko) | 다중 예측 필터를 이용하는 경쟁기반 인트라 예측 부호화/복호화 장치 및 방법 | |
| KR20100081148A (ko) | 블록 모드 부호화/복호화 방법 및 장치와 그를 이용한 영상부호화/복호화 방법 및 장치 | |
| WO2011037337A2 (ko) | 저주파수 성분을 고려한 영상 부호화/복호화 방법 및 장치 | |
| WO2011071254A2 (ko) | 쌍예측을 이용한 멀티 플레인 영상의 부호화/복호화 장치와 방법 및 이를 위한 기록매체 | |
| WO2012081917A2 (ko) | 움직임정보 병합을 이용한 부호움직임정보생성/움직임정보복원 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
| WO2011052990A2 (ko) | 적응적인 해상도 기반의 영상 부호화/복호화 방법 및 장치 | |
| WO2010044559A2 (ko) | 동영상 부호화/복호화 장치 및 그를 위한 가변 단위의 적응적 중첩 블록 움직임 보상 장치 및 방법 | |
| WO2012021040A2 (ko) | 필터링모드 생략가능한 영상 부호화/복호화 방법 및 장치 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10826997 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS (EPO FORM1205A DATED 02-08-2012) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 10826997 Country of ref document: EP Kind code of ref document: A2 |


