Coding apparatus and method for orientation interpolator node
First Claim
1. An encoding apparatus for an orientation interpolator node which provides information on the rotation of an object in a 3-dimensional space, the encoding apparatus comprising:
- a field data input unit for extracting field data to be encoded at present from a key which indicates information on a position on a time axis where a change of rotational and translational movement occurs and key values which indicate rotation information corresponding to the position information, by parsing the orientation interpolator node;
an adaptive differential pulse code modulation (ADPCM) processing unit for converting the key value data into a quaternion, and then ADPCM processing the quaternion using rotation differentiation, and differential pulse code modulation (DPCM) processing for the key data; and
a quantizing unit for quantizing the key data and key value data and outputting the quantized data.
1 Assignment
0 Petitions
Accused Products
Abstract
An encoding apparatus and method for an orientation interpolator node are provided. The encoding apparatus for an orientation interpolator node, which provides information on the rotation of an object in a 3-dimensional space, includes a field data input unit for extracting field data to be encoded at present from a key which indicates information on a position on a time axis where a change of a rotational movement on a time axis occurs and key values which indicate rotation information corresponding to the position information, by parsing the orientation interpolator node; an adaptive differential pulse code modulation (ADPCM) processing unit for converting the key value data into a quaternion, and then ADPCM processing the quaternion using a rotation differential converting matrix, and differential pulse code modulation (DPCM) processing the key data; and a quantizing unit for quantizing the key data and key value data and outputting the quantized data.
-
Citations
25 Claims
-
1. An encoding apparatus for an orientation interpolator node which provides information on the rotation of an object in a 3-dimensional space, the encoding apparatus comprising:
-
a field data input unit for extracting field data to be encoded at present from a key which indicates information on a position on a time axis where a change of rotational and translational movement occurs and key values which indicate rotation information corresponding to the position information, by parsing the orientation interpolator node;
an adaptive differential pulse code modulation (ADPCM) processing unit for converting the key value data into a quaternion, and then ADPCM processing the quaternion using rotation differentiation, and differential pulse code modulation (DPCM) processing for the key data; and
a quantizing unit for quantizing the key data and key value data and outputting the quantized data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
a quaternion converting unit for converting the key value data extracted by the field data input unit into a quaternion;
a DPCM unit for calculating a difference value between a previously restored key and a key to be encoded at present for the key data extracted in the field data input unit; and
a rotation differential converting unit for producing a rotation differential converting matrix in which the key value data converted into a quaternion is represented by a shortest rotational movement distance of the object, and, when new key value data is generated based on the rotation differential converting matrix, making the differential code converting unit reflect the generation of key data corresponding to the new key value data.
-
-
3. The encoding apparatus for an orientation interpolator node of claim 2, wherein the rotation differential converting unit comprises:
-
a rotation differential converting matrix generating unit for producing a rotation differential converting matrix which is a product of key value data to be encoded at present and complex conjugated data obtained by accumulating rotation differential converting matrices which are previously restored;
an element adjusting unit for redefining the rotation differential converting matrix so as to satisfy a condition that the value of the first element of a quaternion is always the largest in all the elements of the quaternion, and outputting the rotation differential converting matrix;
a delay unit for storing a rotation differential converting matrix which is restored at present in response to the output from the element adjusting unit, and providing a rotation differential converting matrix which is restored and stored previously; and
an accumulating unit for sequentially receiving rotation differential converting matrices, which are previously stored, from the delay unit, and outputting data obtained by accumulating the rotation differential converting matrices which are restored previously.
-
-
4. The encoding apparatus for an orientation interpolator node of claim 3, wherein the element adjusting unit comprises:
-
a condition unit for determining whether or not the value of the first element of a quaternion is the largest among all the elements of the rotation differential converting matrix; and
a key value generating unit for generating new key value data by arbitrarily defining a rotation position which may have a shortest rotational movement distance of the object if the determination of the condition unit indicates that the value of the first element is not the largest, and making the DPCM unit reflect the generation of key data corresponding to the new key value data.
-
-
5. The encoding apparatus for an orientation interpolator node of claim 1, further comprising:
an entropy encoding unit for arithmetic encoding quantized key and key value data.
-
6. The encoding apparatus for an orientation interpolator node of claim 5, further comprising:
-
an output unit for outputting the arithmetic encoded data as binary format stream data, wherein in the structure of stream data, key data and key value data are separately formed.
-
-
7. The encoding apparatus for an orientation interpolator node of claim 6, further comprising:
-
an output unit for outputting the arithmetic encoded data as binary format stream data, wherein in the structure of stream data, key data and key value data form a unit pair sequentially.
-
-
8. The encoding apparatus for an orientation interpolator node of claim 1, further comprising:
a distortion measuring unit for, measuring visual quality distortion of restored data from original information when output data is restored, before encoding with respect to rotation differential values.
-
9. An encoding method for an orientation interpolator node which provides information on the rotation of an object in a 3-dimensional space, the encoding method comprising the steps of:
-
(a) extracting field data to be encoded at present from a key which indicates information on a position on a time axis where a change of rotational and translational movement occurs and key values which indicate rotation information corresponding to the position information, by parsing the orientation interpolator node;
(b) converting the key value data into a quaternion, and then adaptive differential pulse code modulation (ADPCM) processing the quaternion using a rotation differential converting matrix, and differential pulse code modulation (DPCM) processing the key data; and
(c) quantizing the key data and key value data and outputting the quantized data. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
(b1) converting the key value data extracted in step (a) into a quaternion;
(b2) producing a rotation differential converting matrix in which the key value data converted into a quaternion is represented by a shortest rotational movement distance of the object;
(b3) when new key value data is generated based on the rotation differential converting matrix, generating key data corresponding to the new key value data; and
(b4) for the key data extracted in step (a) and key data generated in step (b3), calculating a difference value of a previously restored key and a key to be encoded at present.
-
-
11. The encoding method for an orientation interpolator node of claim 10, wherein in step (b2) the rotation differential converting matrix (Qi′
- ) is defined by the following equation 6;
- ) is defined by the following equation 6;
-
12. The encoding method for an orientation interpolator node of claim 10, after step (b2) further comprising the steps of:
-
(b2-1) determining whether or not the condition that the value of the first element of a quaternion is always the largest in all the elements of the quaternion(=rotation differential converting matrix) is satisfied;
(b2-2) redefining the rotation differential converting matrix and outputting the rotation differential converting matrix to step (c) if the condition is not satisfied; and
(b2-3) outputting the rotation differential converting matrix without change if the condition is satisfied.
-
-
13. The encoding method for an orientation interpolator node of claim 12, wherein in step (b2-2), if the condition is not satisfied, the rotation differential converting matrix is redefined by generating new key value data using the following equation 7:
-
Here, P denotes new key value data, B denotes the original key value data to be encoded at present, A denotes previous key value data, Ω
denotes the rotation angle between A and B, and θ
denotes the rotation angle between A and P.
-
-
14. The encoding method for an orientation interpolator node of claim 10, wherein in step (b3), the new key data is generated using the following equation 9:
-
Here, Ki denotes key data to be encoded at present, Ki−
1 denotes previous key data, Ω
denotes the rotation angle between previous key value data and the original key value data to be encoded at present, and θ
denotes the rotation angle between previous key value data and the new key value data.
-
-
15. The encoding method for an orientation interpolator node of claim 9, further comprising the step of:
(d) arithmetic encoding quantized key and key value data.
-
16. The encoding method for an orientation interpolator node of claim 15, further comprising the step of:
-
(e) outputting arithmetic encoded data as binary format stream data, wherein in the structure of stream data, key data and the key value data are separately formed.
-
-
17. The encoding method for an orientation interpolator node of claim 15, further comprising the step of:
-
(e) outputting arithmetic encoded data as binary format stream data, wherein in the structure of stream data, key data and the key value data form a unit pair sequentially.
-
-
18. The encoding method for an orientation interpolator node of claim 9, after step (c) further comprising the step of:
when output data is restored, measuring visual quality distortion of restored data from original information before encoding with respect to rotation differential values.
-
19. The encoding method for an orientation interpolator node of claim 18, wherein RMS(Dm) of a quantization error and the maximum error (Dp) which are bases for measuring the visual quality distortion are calculating using the following equations 15 or equations 16:
-
Here, Q denotes key value data of information before encoding, the key value data which is converted into a quaternion, and Q′
denotes key value data of decoded information, the key value data which is converted into a quaternion.
-
-
20. An encoding apparatus for encoding rotation information including rotation time, rotation axes, and rotation angle which are needed to rotate a 3-dimensional object in a 3-dimensional space, the encoding apparatus comprising:
-
a quaternion converting unit for converting an input key value into a quaternion expression value which is expressed by one real number and three imaginary numbers;
a key frame removing unit for selecting some input keys and the key values from the total keys and key values within an allowable error limit;
a linear/rotational differential unit for linear differential processing the selected key and rotational differential processing the selected key values;
a quantizing unit for quantizing differential processed key and key values;
an inverse quantizing unit for inverse quantizing the differential values of the quantized key and key values in order to compensate for quantization errors of key and key values which are input at the next time point;
a linear/rotational integrating(or accumulating) unit for accumulating inverse quantized key and key values;
a linear differential unit for linear differential processing the quantized key values; and
an entropy encoding unit for arithmetic quantizing key and key values. - View Dependent Claims (21, 22, 23, 24)
-
-
22. The encoding apparatus of claim 20, wherein the linear/rotational differential processing unit includes a rotation direction correction unit for performing a rotation direction correction function which makes the object rotate in the same direction as the rotation direction indicated by the original rotation information.
-
23. The encoding apparatus of claim 22, wherein the rotation direction correction unit comprises:
-
a rotation direction saturating unit for generating saturated rotation information and outputting the information;
a determining unit for determining whether or not the rotation direction changed; and
a selecting unit for selectively receiving and outputting the output of the linear/rotational differential unit or the output of the rotation direction saturating unit, based on the result of determining by the determining unit.
-
-
24. The encoding apparatus of claim 23, wherein when the result of determining by the determining unit indicates that the rotation direction changed, the selecting unit receives and outputs the output of the rotation direction saturating unit instead of a rotation differential value output from the linear/rotational differential processing unit, and otherwise the selecting unit receives and outputs a rotation differential value output from the linear/rotational differential processing unit.
-
25. An encoding method for encoding rotation information after receiving a key and key values, the encoding method comprising the steps of:
-
(a) obtaining a linear differential value by linear differential processing a selected key and obtaining rotation differential values by rotational differentiating selected key values; and
(b) in order to reduce the number of bits to be encoded, encoding only three components excluding the first component in four components forming the rotation differential value, and decoding the remaining first component using the three components which are decoded in a decoding unit using the following equation 39;
-
Specification