CN102547285B - Hexagonal transform quick-processing method for image or video coding - Google Patents
Hexagonal transform quick-processing method for image or video coding Download PDFInfo
- Publication number
- CN102547285B CN102547285B CN201210004028.3A CN201210004028A CN102547285B CN 102547285 B CN102547285 B CN 102547285B CN 201210004028 A CN201210004028 A CN 201210004028A CN 102547285 B CN102547285 B CN 102547285B
- Authority
- CN
- China
- Prior art keywords
- hexagonal
- image
- processing method
- matrix
- transform
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
The invention relates to a hexagonal transform quick-processing method for image or video coding. The method comprises the following steps of: performing forward hexagonal transform on image or video data to transform the image or video data into a vector space expressed by a forward hexagonal transform matrix at an image or video coding end; and performing inverse hexagonal transform on the forward hexagonal-transformed data to recover original image or video data at an image or video decoding end, wherein the forward hexagonal transform of the image or video data is a quick processing method based on forward-hexagonal-transform Y=T'XT, and the inverse hexagonal transform of the forward hexagonal-transformed data is a quick processing method based on inverse-hexagonal-transform X=TYT'. The computational complexity of hexagonal transform is reduced, processing time is shortened, and the acceleration of the compression or analysis of the image or video data is facilitated.
Description
Technical field
The present invention relates to the hexagonal transform quick-processing method of image or Video coding.The present invention is mainly at image or Video coding end, and image or video data are carried out to forward hexagonal conversion process, transforms in the vector space of expressing with forward hexagonal transformation matrix; At image or video decode end, the data after the conversion of forward hexagonal are carried out to reverse hexagonal conversion process, recover to obtain original image or video data.Be conducive to accelerate compression and the analysis to view data or video data.
Background technology
H.261 traditional video encoding standard is formulated as ITU, H.263, H.263+, the MPEG-1 that H.264 MPEG of standard and ISO organizes to set up, MPEG-2, MPEG-4 etc. are based upon on hybrid coding (Hybrid Coding) framework.So-called hybrid encoding frame is a kind of method frame that considers prediction, conversion and entropy coding, has following main feature:
(1) utilize prediction to remove the redundancy of time-domain;
(2) utilize conversion to remove the redundancy of spatial domain;
(3) utilize entropy coding to remove statistical redundancy.
Above-mentioned video encoding standard all has intracoded frame (I frame) and inter-frame encoding frame (P/B frame).Image or frame of video are encoded take macro block as base unit, first carry out in frame or the prediction of interframe, then prediction residual is carried out to two-dimensional transform, quantification, finally quantization parameter is carried out to entropy coding.Because video data and view data have stronger correlation in spatial domain, two-dimensional transform is the key factor that improves coding gain, and therefore two-dimensional transform is the very part and parcel of Video coding and Image Coding.
Discrete cosine transform (DCT) is generally used for the block transform coding of vedio data, and this is because for various signals, and discrete cosine transform is similar to the best Karhunen-Loeve transformation of statistics very much.Discrete cosine transform is widely used in various video/image coding standards.A shortcoming of discrete cosine transform is that each locational data of data block to be transformed are put on an equal footing, and the regularity of distribution of prediction residual does not match.After various predictions, there is variation in the spatial coherence of the blocks of data of video image, and in statistical significance, better, prediction residual is less for the pixel prediction coupling at piece center, and the pixel prediction of block edge coupling is poor, and prediction residual is larger.
Hexagonal conversion can adaptive prediction residual error statistical property, overcome the weak point of DCT.So-called hexagonal conversion, the conversion that the transformation matrix of deriving according to six angles carries out.If
α 1 ,
α 2 ,
α 3 ,
α 4 ,
α 5 ,
α 6 six angles, order
C=cos
α 1 ,
D=sin
α 1 ,
E=cos
α 2 ,
F=sin
α 2 ,
G=cos
α 3 ,
H=sin
α 3 ,
I=cos
α 4 ,
J=sin
α 4 ,
K=cos
α 5 ,
L=sin
α 5 ,
M=cos
α 6 ,
N=sin
α 6 ;
Transformation matrix is as follows:
If X is 8 × 8 data blocks of spatial domain, Y is X converts the transform domain obtaining 8 × 8 data blocks through forward hexagonal, and the conversion of forward hexagonal can be described as
Y?=?T′XT
Reverse hexagonal conversion can be described as
X?=?TYT′
Visible, forward hexagonal conversion and reverse hexagonal convert all needs to carry out twice matrix multiple computing, and element in matrix is all floating number, and amount of calculation is larger.The simple statistics of process is known, and each matrix multiple need to carry out 8 × 8 × 8=512 time floating number and multiply each other and 8 × 8 × 7=448 time floating number addition.The present invention will provide a kind of fast algorithm, can obviously reduce the operand of hexagonal conversion.
Summary of the invention
The object of the invention is the defect existing for prior art, the hexagonal transform quick-processing method of a kind of image or Video coding is provided, can obviously reduce the computational complexity of hexagonal conversion, be conducive to accelerate compression and the analysis to image or video data.
The present invention adopts following technical scheme:
A hexagonal transform quick-processing method for image or Video coding, is included in image or Video coding end, and image or video data are carried out to forward hexagonal conversion process, transforms in the vector space of expressing with forward hexagonal transformation matrix; At image or video decode end, the data after the conversion of forward hexagonal are carried out to reverse hexagonal conversion process, recover to obtain original image or video data; The method of image or video data being carried out to positive-going transition processing is to convert based on forward hexagonal
immediate processing method; The method of the data after the conversion of forward hexagonal being carried out to transformation by reciprocal direction processing is based on reverse hexagonal conversion
immediate processing method.
Transformation matrix T in above-mentioned immediate processing method obtains as follows:
If
α 1 ,
α 2 ,
α 3 ,
α 4 ,
α 5 ,
α 6 six selected angles, order
C=cos
α 1 ,
D=sin
α 1 ,
E=cos
α 2 ,
F=sin
α 2 ,
G=cos
α 3 ,
H=sin
α 3 ,
I=cos
α 4 ,
J=sin
α 4 ,
K=cos
α 5 ,
L=sin
α 5 ,
M=cos
α 6 ,
N=sin
α 6 ;
The method of above-mentioned positive-going transition processing is to convert based on forward hexagonal
immediate processing method; In implementation process, adopt
to facilitate calculating; Positive-going transition can be used
replace, wherein,
immediate processing method can realize with the following method:
If X
i=(x0, x1, x2, x3, x4, x5, x6, x7) is that the i of X is capable, Z
i=(z0, z1, z2, z3, z4, z5, z6, z7) is that the i of Z is capable; With a[*] represent calculate intermediate object program:
a[0]?=?x0?+?x7;
a[7]?=?x0?-?x7;
a[1]?=?x1?+?x6;
a[6]?=?x1?-?x6;
a[2]?=?x2?+?x5;
a[5]?=?x2?-?x5;
a[3]?=?x3?+?x4;
a[4]?=?x3?-?x4;
a[10]?=?C?*?a[0]?+?D?*?a[3];
a[13]?=?D?*?a[0]?-?C?*?a[3];
a[11]?=?E?*?a[1]?+?F?*?a[2];
a[12]?=?F?*?a[1]?-?E?*?a[2];
a[?8]?=?H?*?a[6]?-?G?*?a[5];
a[?9]?=?G?*?a[6]?+?H?*?a[5];
a[14]?=?H?*?a[4]?+?G?*?a[8];
a[15]?=?G?*?a[4]?-?H?*?a[8];
a[16]?=?D?*?a[7]?-?C?*?a[9];
a[17]?=?C?*?a[7]?+?D?*?a[9];
Zi obtains by following processing method:
z0?=?G?*?a[10]?+?H?*?a[11];
z4?=?H?*?a[10]?-?G?*?a[11];
z2?=?J?*?a[13]?+?I?*?a[12];
z6?=?I?*?a[13]?-?J?*?a[12];
z1?=?L?*?a[17]?+?K?*?a[14];
z7?=?K?*?a[17]?-?L?*?a[14];
z5?=?N?*?a[16]?+?M?*?a[15];
z3?=?M?*?a[16]?-?N?*?a[15];
Above-mentioned same computational process is carried out in each provisional capital of matrix X and matrix Z, just completed the calculating of Z=XS, the operation times altogether needing is 36 × 8=288 time floating number multiplication, 18 × 8=144 time floating number addition and subtraction, 8 × 8=64 time integer addition and subtraction.Compare 512 floating number multiplication and 448 floating number addition and subtractions that direct matrix multiplies each other, amount of calculation has reduced a lot.
In addition, according to the character of matrix operation, can obtain,
(2Y)′=(S′Z)′=Z′S
Therefore, can calculate with said method (2Y) ', then carry out a matrix transpose and just can obtain 2Y.Required amount of calculation is the same with the amount of calculation of calculating XS substantially.
In conjunction with such scheme, just can complete 2Y=S ' XS, and required amount of calculation and direct matrix multiply each other compare reduce over half.Each coefficient of 2Y, divided by 2, is just obtained to Y.This division is not need to calculate separately, can, in the time quantizing, in advance quantization parameter be expanded to 2 times, thereby reach the object of convergent-divergent, and not increase amount of calculation.
The method of above-mentioned transformation by reciprocal direction processing is based on reverse hexagonal conversion
immediate processing method; Wherein, Y represents 8 × 8 data block matrixes of input, and X represents 8 × 8 output block matrixes, and T represents transformation matrix, the transposition of T ' representing matrix T; In implementation process, adopt
to facilitate calculating; Transformation by reciprocal direction can be used
replace, wherein,
immediate processing method can be realized with the following method:
If Yi=(x0, x1, x2, x3, x4, x5, x6, x7) is that the i of Y is capable, Vi=(v0, v1, v2, v3, v4, v5, v6, v7) is that the i of V is capable; With a[*] represent calculate intermediate object program:
a[14]?=?K?*?y1?-?L?*?y7;
a[17]?=?L?*?y1?+?K?*?y7;
a[15]?=?M?*?y5?-?N?*?y3;
a[16]?=?N?*?y5?+?M?*?y3;
a[10]?=?G?*?y0?+?H?*?y4;
a[11]?=?H?*?y0?-?G?*?y4;
a[12]?=?I?*?y2?-?J?*?y6;
a[13]?=?J?*?y2?+?I?*?y6;
a[0]?=?C?*?a[10]?+?D?*?a[13];
a[3]?=?D?*?a[10]?-?C?*?a[13];
a[1]?=?E?*?a[11]?+?F?*?a[12];
a[2]?=?F?*?a[11]?-?E?*?a[12];
a[4]?=?H?*?a[14]?+?G?*?a[15];
a[8]?=?G?*?a[14]?-?H?*?a[15];
a[9]?=?D?*?a[17]?-?C?*?a[16];
a[7]?=?C?*?a[17]?+?D?*?a[16];
a[5]?=?H?*?a[?9]?-?G?*?a[?8];
a[6]?=?G?*?a[?9]?+?H?*?a[?8];
Vi obtains by following processing method:
v0?=?a[0]?+?a[7];
v7?=?a[0]?-?a[7];
v1?=?a[1]?+?a[6];
v6?=?a[1]?-?a[6];
v2?=?a[2]?+?a[5];
v5?=?a[2]?-?a[5];
v3?=?a[3]?+?a[4];
v4?=?a[3]?-?a[4];
Above-mentioned same computational process is carried out in each provisional capital of matrix Y and matrix V, just completed the calculating of V=YS ', the operation times altogether needing is 36 × 8=288 time floating number multiplication, 26 × 8=208 time floating number addition and subtraction.Compare 512 floating number multiplication and 448 floating number addition and subtractions that direct matrix multiplies each other, amount of calculation has reduced a lot.
In addition, according to the character of matrix operation, can obtain,
(2X)′=(SV)′=V′S′
Therefore, can calculate with said method (2X) ', then carry out a matrix transpose and just can obtain 2X.Required amount of calculation is the same with the amount of calculation of calculating YS ' substantially.
In conjunction with such scheme, just can complete 2X=SYS ', and required amount of calculation and direct matrix multiply each other compare reduce over half.Each coefficient of 2X, divided by 2, is just obtained to X.This division is not need to calculate separately, can, in the time quantizing, in advance quantization parameter be expanded to 2 times, thereby reaches each conversion coefficient divided by 2 object, and does not increase amount of calculation.
Provide the hexagonal conversion quick treatment device that several employing said methods apply to image or Video coding below:
A forward hexagonal conversion quick treatment device that applies to image or Video coding, comprising:
Input unit, is configured to receive the input data of storing positive-going transition;
Forward coefficient acquisition device, is configured to obtain the coefficient of forward hexagonal transformation matrix;
Positive-going transition device, the hexagonal transformation matrix coefficient that is configured to obtain according to acquisition device carries out quick forward hexagonal conversion process to input block;
Output device, is configured to the data of output after the conversion of forward hexagonal.
A reverse hexagonal conversion quick treatment device that applies to image or Video coding, comprising:
Input unit, is configured to receive the input data of storing transformation by reciprocal direction;
Reverse coefficient acquisition device, is configured to obtain the coefficient of reverse hexagonal transformation matrix;
Transformation by reciprocal direction device, the hexagonal transformation matrix coefficient that is configured to obtain according to acquisition device carries out fast reverse hexagonal conversion process to input block;
Output device, is configured to the data of output after reverse hexagonal conversion.
The present invention compared with prior art, has following apparent outstanding substantive distinguishing features and marked improvement:
The present invention is at image or Video coding end, and it is to convert based on forward hexagonal that image or video data are carried out to positive-going transition processing method
immediate processing method, at image or video decode end, it is based on reverse hexagonal conversion that the data after forward hexagonal conversion are carried out to transformation by reciprocal direction processing method
immediate processing method, obviously reduced the computational complexity of hexagonal conversion, reduce the processing time, be conducive to accelerate compression and the analysis of image or video data.
Accompanying drawing explanation
Fig. 1 is the schematic diagram of forward hexagonal transform quick-processing method;
Fig. 2 is the schematic diagram of reverse hexagonal transform quick-processing method;
Fig. 3 is the schematic diagram of forward hexagonal converting means;
Fig. 4 is the schematic diagram of reverse hexagonal converting means.
Embodiment
The preferred embodiments of the present invention accompanying drawings is as follows:
Embodiment mono-:
The hexagonal transform quick-processing method of this image or Video coding, is included in image or Video coding end, and image or video data are carried out to forward hexagonal conversion process, transforms in the vector space of expressing with forward hexagonal transformation matrix; At image or video decode end, the data after forward hexagonal conversion are carried out to reverse hexagonal conversion process, recover to obtain original image or video data, the method for wherein image or video data being carried out to positive-going transition processing is to convert based on forward hexagonal
immediate processing method; The method of the data after the conversion of forward hexagonal being carried out to transformation by reciprocal direction processing is based on reverse hexagonal conversion
immediate processing method.
Embodiment bis-:
Referring to Fig. 1 and Fig. 2, the present embodiment and embodiment mono-are basic identical, and special feature is as follows:
Transformation matrix in hexagonal conversion:
Above-mentioned positive-going transition method is to convert based on forward hexagonal
immediate processing method, in implementation process, adopt
to facilitate calculating; Transformation by reciprocal direction can be used
replace, wherein,
immediate processing method can be realized with the following method:
If Yi=(x0, x1, x2, x3, x4, x5, x6, x7) is that the i of Y is capable, Vi=(v0, v1, v2, v3, v4, v5, v6, v7) is that the i of V is capable; With a[*] represent calculate intermediate object program:
Z
ican calculate with the following method:
a[0]?=?x0?+?x7;
a[7]?=?x0?-?x7;
a[1]?=?x1?+?x6;
a[6]?=?x1?-?x6;
a[2]?=?x2?+?x5;
a[5]?=?x2?-?x5;
a[3]?=?x3?+?x4;
a[4]?=?x3?-?x4;
a[10]?=?C?*?a[0]?+?D?*?a[3];
a[13]?=?D?*?a[0]?-?C?*?a[3];
a[11]?=?E?*?a[1]?+?F?*?a[2];
a[12]?=?F?*?a[1]?-?E?*?a[2];
a[?8]?=?H?*?a[6]?-?G?*?a[5];
a[?9]?=?G?*?a[6]?+?H?*?a[5];
a[14]?=?H?*?a[4]?+?G?*?a[8];
a[15]?=?G?*?a[4]?-?H?*?a[8];
a[16]?=?D?*?a[7]?-?C?*?a[9];
a[17]?=?C?*?a[7]?+?D?*?a[9];
Z
icalculate with the following method:
z0?=?G?*?a[10]?+?H?*?a[11];
z4?=?H?*?a[10]?-?G?*?a[11];
z2?=?J?*?a[13]?+?I?*?a[12];
z6?=?I?*?a[13]?-?J?*?a[12];
z1?=?L?*?a[17]?+?K?*?a[14];
z7?=?K?*?a[17]?-?L?*?a[14];
z5?=?N?*?a[16]?+?M?*?a[15];
z3?=?M?*?a[16]?-?N?*?a[15];
Above-mentioned same computational process is carried out in each provisional capital of matrix X and matrix Z, just completed the calculating of Z=XS, the operation times altogether needing is 36 × 8=288 time floating number multiplication, 18 × 8=144 time floating number addition and subtraction, 8 × 8=64 time integer addition and subtraction.Compare 512 floating number multiplication and 448 floating number addition and subtractions that direct matrix multiplies each other, amount of calculation has reduced a lot.
In addition, according to the character of matrix operation, can obtain,
(2Y)′=(S′Z)′=Z′S
Therefore, can calculate with said method (2Y) ', then carry out a matrix transpose and just can obtain 2Y.Required amount of calculation is the same with the amount of calculation of calculating XS substantially.
In conjunction with such scheme, just can complete 2Y=S ' XS, and required amount of calculation and direct matrix multiply each other compare reduce over half.Each coefficient of 2Y, divided by 2, is just obtained to Y.This division is not need to calculate separately, can, in the time quantizing, in advance quantization parameter be expanded to 2 times, thereby reach the object of convergent-divergent, and not increase amount of calculation.
Above-mentioned transformation by reciprocal direction method is based on reverse hexagonal conversion
immediate processing method, in implementation process, adopt
to facilitate calculating; Transformation by reciprocal direction can be used
replace, wherein,
immediate processing method can be realized with the following method:
If Yi=(x0, x1, x2, x3, x4, x5, x6, x7) is that the i of Y is capable, Vi=(v0, v1, v2, v3, v4, v5, v6, v7) is that the i of V is capable; With a[*] represent calculate intermediate object program:
a[14]?=?K?*?y1?-?L?*?y7;
a[17]?=?L?*?y1?+?K?*?y7;
a[15]?=?M?*?y5?-?N?*?y3;
a[16]?=?N?*?y5?+?M?*?y3;
a[10]?=?G?*?y0?+?H?*?y4;
a[11]?=?H?*?y0?-?G?*?y4;
a[12]?=?I?*?y2?-?J?*?y6;
a[13]?=?J?*?y2?+?I?*?y6;
a[0]?=?C?*?a[10]?+?D?*?a[13];
a[3]?=?D?*?a[10]?-?C?*?a[13];
a[1]?=?E?*?a[11]?+?F?*?a[12];
a[2]?=?F?*?a[11]?-?E?*?a[12];
a[4]?=?H?*?a[14]?+?G?*?a[15];
a[8]?=?G?*?a[14]?-?H?*?a[15];
a[9]?=?D?*?a[17]?-?C?*?a[16];
a[7]?=?C?*?a[17]?+?D?*?a[16];
a[5]?=?H?*?a[?9]?-?G?*?a[?8];
a[6]?=?G?*?a[?9]?+?H?*?a[?8];
V
icalculate with the following method:
v0?=?a[0]?+?a[7];
v7?=?a[0]?-?a[7];
v1?=?a[1]?+?a[6];
v6?=?a[1]?-?a[6];
v2?=?a[2]?+?a[5];
v5?=?a[2]?-?a[5];
v3?=?a[3]?+?a[4];
v4?=?a[3]?-?a[4];
Above-mentioned same computational process is carried out in each provisional capital of matrix Y and matrix V, just completed the calculating of V=YS ', the operation times altogether needing is 36 × 8=288 time floating number multiplication, 26 × 8=208 time floating number addition and subtraction.Compare 512 floating number multiplication and 448 floating number addition and subtractions that direct matrix multiplies each other, amount of calculation has reduced a lot.
In addition, according to the character of matrix operation, can obtain,
(2X)′=(SV)′=V′S′
Therefore, can calculate with said method (2X) ', then carry out a matrix transpose and just can obtain 2X.Required amount of calculation is the same with the amount of calculation of calculating YS ' substantially.
In conjunction with such scheme, just can complete 2X=SYS ', and required amount of calculation and direct matrix multiply each other compare reduce over half.Each coefficient of 2X, divided by 2, is just obtained to X.This division is not need to calculate separately, can, in the time quantizing, in advance quantization parameter be expanded to 2 times, thereby reaches each conversion coefficient divided by 2 object, and does not increase amount of calculation.
Embodiment tri-:
Referring to Fig. 3, the forward hexagonal conversion quick treatment device of the present embodiment, comprising:
Input unit 710.Input unit 710 is for receiving the input data of storage positive-going transition.
Forward coefficient acquisition device 750.Acquisition device 750 is for obtaining the coefficient of positive-going transition matrix.Acquisition device 750 can be by calculating the coefficient of transformation matrix, or obtain and be stored in wherein from external unit.
Positive-going transition device 720.Positive-going transition device 720 carries out positive-going transition processing according to the transformation matrix coefficient of institute's acquisition device to described input block.In the present embodiment, positive-going transition device 720 comprises ALU, thereby input block is carried out to quick forward hexagonal conversion process.
Output device 740.Output device 740 is exported the data after forward hexagonal Fast transforms.In preferred embodiment, output device 740 is the data after store transformed first, then export.
Between input unit 710 and positive-going transition device 720, be connected by data/address bus, to transmit described input data.Between forward coefficient acquisition device 750 and positive-going transition device 720, be connected by data/address bus, to transmit described positive-going transition matrix coefficient.Between positive-going transition device 720 and output device 740, be connected by bus, to transmit described data after positive-going transition.
Referring to Fig. 4, the transformation by reciprocal direction device of the present embodiment, comprising:
Input unit 810.Input unit 810 is configured to receive the input data of storage transformation by reciprocal direction.
Reverse coefficient acquisition device 860, acquisition device 860 is configured to obtain the coefficient of transformation by reciprocal direction matrix.Acquisition device 860 can be by calculating the coefficient of transformation matrix, or obtain and be stored in wherein from external unit.
Transformation by reciprocal direction device 830, its transformation matrix coefficient that is configured to obtain according to described acquisition device carries out transformation by reciprocal direction processing to described input block.In the present embodiment, transformation by reciprocal direction device 830 ALUs, thus input block is carried out to fast reverse hexagonal conversion process.
Output device 840.Output device 840 is exported the data after reverse hexagonal Fast transforms.In preferred embodiment, output device 840 is the data after store transformed first, then export.
Between input unit 810 and transformation by reciprocal direction device 830, be connected by data/address bus, to transmit described input data.Between reverse coefficient acquisition device 860 and transformation by reciprocal direction device 830, be connected by data/address bus, to transmit described transformation by reciprocal direction matrix coefficient.Between transformation by reciprocal direction device 830 and output device 840, be connected by bus, to transmit described data after transformation by reciprocal direction.
Claims (2)
1. a hexagonal transform quick-processing method for image or Video coding, is included in image or Video coding end, and image or video data are carried out to forward hexagonal conversion process, transforms in the vector space of expressing with forward hexagonal transformation matrix; At image or video decode end, the data after the conversion of forward hexagonal are carried out to reverse hexagonal conversion process, recover to obtain original image or video data; It is characterized in that:
The described method that image or video data are carried out to positive-going transition processing is to convert based on forward hexagonal
immediate processing method, wherein, X represent input 8 × 8 data block matrixes, Y represents 8 × 8 output block matrixes, T represents transformation matrix, the transposition of T ' representing matrix T;
The described method that data after forward hexagonal conversion are carried out to transformation by reciprocal direction processing is based on reverse hexagonal conversion
immediate processing method, wherein, Y represent input 8 × 8 data block matrixes, X represents 8 × 8 output block matrixes, T represents transformation matrix, the transposition of T ' representing matrix T;
Concrete grammar is:
(1) described positive-going transition
in processing procedure, adopt
to facilitate calculating; Positive-going transition can be used
replace, wherein,
immediate processing method can realize with the following method:
If X
i=(x0, x1, x2, x3, x4, x5, x6, x7) is that the i of X is capable, Z
i=(z0, z1, z2, z3, z4, z5, z6, z7) is that the i of Z is capable; With a[*] represent calculate intermediate object program:
a[0]?=?x0?+?x7;
a[7]?=?x0?-?x7;
a[1]?=?x1?+?x6;
a[6]?=?x1?-?x6;
a[2]?=?x2?+?x5;
a[5]?=?x2?-?x5;
a[3]?=?x3?+?x4;
a[4]?=?x3?-?x4;
a[10]?=?C?*?a[0]?+?D?*?a[3];
a[13]?=?D?*?a[0]?-?C?*?a[3];
a[11]?=?E?*?a[1]?+?F?*?a[2];
a[12]?=?F?*?a[1]?-?E?*?a[2];
a[?8]?=?H?*?a[6]?-?G?*?a[5];
a[?9]?=?G?*?a[6]?+?H?*?a[5];
a[14]?=?H?*?a[4]?+?G?*?a[8];
a[15]?=?G?*?a[4]?-?H?*?a[8];
a[16]?=?D?*?a[7]?-?C?*?a[9];
a[17]?=?C?*?a[7]?+?D?*?a[9];
Z
iobtain by following processing method:
z0?=?G?*?a[10]?+?H?*?a[11];
z4?=?H?*?a[10]?-?G?*?a[11];
z2?=?J?*?a[13]?+?I?*?a[12];
z6?=?I?*?a[13]?-?J?*?a[12];
z1?=?L?*?a[17]?+?K?*?a[14];
z7?=?K?*?a[17]?-?L?*?a[14];
z5?=?N?*?a[16]?+?M?*?a[15];
z3?=?M?*?a[16]?-?N?*?a[15];
(2) forward hexagonal conversion need to be carried out twice matrix multiple computing, and element in matrix is all floating number, and amount of calculation is larger, and each matrix multiple need to carry out 8 × 8 × 8=512 time floating number and multiply each other and 8 × 8 × 7=448 time floating number addition; Forward hexagonal transform quick-processing method, the operation times needing is 36 × 8=288 time floating number multiplication, 18 × 8=144 time floating number addition and subtraction, 8 × 8=64 time integer addition and subtraction, has obviously reduced the operand that hexagonal converts;
Described transformation matrix T obtains as follows: establish
α 1 ,
α 2 ,
α 3 ,
α 4 ,
α 5 ,
α 6 six selected angles, order
C=cos
α 1 ,
D=sin
α 1 ,
E=cos
α 2 ,
F=sin
α 2 ,
G=cos
α 3 ,
H=sin
α 3 ,
I=cos
α 4 ,
J=sin
α 4 ,
K=cos
α 5 ,
L=sin
α 5 ,
M=cos
α 6 ,
N=sin
α 6 ;
2. the hexagonal transform quick-processing method of image as claimed in claim 1 or Video coding, is characterized in that:
(1) described transformation by reciprocal direction
in processing procedure, adopt
to facilitate calculating; Transformation by reciprocal direction can be used
replace, wherein,
immediate processing method can realize with the following method:
If yi=(y0, y1, y2, y3, y4, y5, y6, y7) is that the i of Y is capable: vi=(v0, v1, v2, v3, v4, v5, v6, v7) is that the i of V is capable; With a[*] represent calculate intermediate object program:
a[14]?=?K?*?y1?-?L?*?y7;
a[17]?=?L?*?y1?+?K?*?y7;
a[15]?=?M?*?y5?-?N?*?y3;
a[16]?=?N?*?y5?+?M?*?y3;
a[10]?=?G?*?y0?+?H?*?y4;
a[11]?=?H?*?y0?-?G?*?y4;
a[12]?=?I?*?y2?-?J?*?y6;
a[13]?=?J?*?y2?+?I?*?y6;
a[0]?=?C?*?a[10]?+?D?*?a[13];
a[3]?=?D?*?a[10]?-?C?*?a[13];
a[1]?=?E?*?a[11]?+?F?*?a[12];
a[2]?=?F?*?a[11]?-?E?*?a[12];
a[4]?=?H?*?a[14]?+?G?*?a[15];
a[8]?=?G?*?a[14]?-?H?*?a[15];
a[9]?=?D?*?a[17]?-?C?*?a[16];
a[7]?=?C?*?a[17]?+?D?*?a[16];
a[5]?=?H?*?a[?9]?-?G?*?a[?8];
a[6]?=?G?*?a[?9]?+?H?*?a[?8];
Vi calculates with the following method:
v0?=?a[0]?+?a[7];
v7?=?a[0]?-?a[7];
v1?=?a[1]?+?a[6];
v6?=?a[1]?-?a[6];
v2?=?a[2]?+?a[5];
v5?=?a[2]?-?a[5];
v3?=?a[3]?+?a[4];
v4?=?a[3]?-?a[4];
(2) conversion of reverse hexagonal need to be carried out twice matrix multiple computing, and element in matrix is all floating number, and amount of calculation is larger, and each matrix multiple need to carry out 8 × 8 × 8=512 time floating number and multiply each other and 8 × 8 × 7=448 time floating number addition; Reverse hexagonal transform quick-processing method, the operation times needing is 36 × 8=288 time floating number multiplication, 18 × 8=144 time floating number addition and subtraction, 8 × 8=64 time integer addition and subtraction, has obviously reduced the operand that hexagonal converts.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210004028.3A CN102547285B (en) | 2012-01-09 | 2012-01-09 | Hexagonal transform quick-processing method for image or video coding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210004028.3A CN102547285B (en) | 2012-01-09 | 2012-01-09 | Hexagonal transform quick-processing method for image or video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102547285A CN102547285A (en) | 2012-07-04 |
CN102547285B true CN102547285B (en) | 2014-05-14 |
Family
ID=46353084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210004028.3A Expired - Fee Related CN102547285B (en) | 2012-01-09 | 2012-01-09 | Hexagonal transform quick-processing method for image or video coding |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102547285B (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1564602A (en) * | 2004-03-18 | 2005-01-12 | 华中科技大学 | Integral conversing matrix selection method of video coding and related integral conversion method |
CN101977321A (en) * | 2010-11-04 | 2011-02-16 | 深圳市融创天下科技发展有限公司 | Integer transformation method for video coding |
CN102355580A (en) * | 2011-08-19 | 2012-02-15 | 上海国茂数字技术有限公司 | Hexagonal transformation method and device applied to picture coding and video coding |
CN102413331A (en) * | 2011-12-01 | 2012-04-11 | 上海大学 | Coding method for images or videos |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110045949A (en) * | 2009-10-28 | 2011-05-04 | 삼성전자주식회사 | Method and apparatus for encoding and decoding image by using rotational transform |
-
2012
- 2012-01-09 CN CN201210004028.3A patent/CN102547285B/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1564602A (en) * | 2004-03-18 | 2005-01-12 | 华中科技大学 | Integral conversing matrix selection method of video coding and related integral conversion method |
CN101977321A (en) * | 2010-11-04 | 2011-02-16 | 深圳市融创天下科技发展有限公司 | Integer transformation method for video coding |
CN102355580A (en) * | 2011-08-19 | 2012-02-15 | 上海国茂数字技术有限公司 | Hexagonal transformation method and device applied to picture coding and video coding |
CN102413331A (en) * | 2011-12-01 | 2012-04-11 | 上海大学 | Coding method for images or videos |
Also Published As
Publication number | Publication date |
---|---|
CN102547285A (en) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xiao et al. | Lossless image compression based on integer Discrete Tchebichef Transform | |
Bouguezel et al. | A novel transform for image compression | |
CA2633897C (en) | Transforms with common factors | |
TW201301902A (en) | Fast computing of discrete cosine and sine transforms of types VI and VII | |
EP1769641A1 (en) | Method and apparatus for transcoding input video based on first transformation kernel to output video based on second transformation kernel | |
TW201122846A (en) | 8-point transform for media data coding | |
CN105474642A (en) | Re-encoding image sets using frequency-domain differences | |
KR20120098500A (en) | Method for transforming and inverse-transforming image, and apparatus using the same | |
JP2011223068A5 (en) | ||
TWI286031B (en) | Image processing devices and methods | |
CN102036075A (en) | Image and digital video coding and decoding methods | |
TW200833115A (en) | Apparatus and method for compressing data | |
Bouguezel et al. | A multiplication-free transform for image compression | |
Yang et al. | A low complexity block-based adaptive lossless image compression | |
Zheng et al. | Research in a fast DCT algorithm based on JPEG | |
CN102547285B (en) | Hexagonal transform quick-processing method for image or video coding | |
CN102413331A (en) | Coding method for images or videos | |
KR20130006578A (en) | Residual coding in compliance with a video standard using non-standardized vector quantization coder | |
CN102355580B (en) | Hexagonal transformation method and device applied to picture coding and video coding | |
CN101193285A (en) | Method and device for image compression coding and decoding | |
CN106954070A (en) | One kind slides block of pixels integer DCT kernel matrixs conversion motion compensator and method | |
CN101729886B (en) | Method, system and device for decoding videos | |
TWI573440B (en) | Advanced video coding and decoding chip and advanced video coding and decoding method | |
Katsigiannis et al. | A GPU vs CPU performance evaluation of an experimental video compression algorithm | |
CN103748885A (en) | Method and device for the transformation and method and device for the reverse transformation of images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140514 Termination date: 20170109 |
|
CF01 | Termination of patent right due to non-payment of annual fee |