CN102547285B - Hexagonal transform quick-processing method for image or video coding - Google Patents

Hexagonal transform quick-processing method for image or video coding Download PDF

Info

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
Application number
CN201210004028.3A
Other languages
Chinese (zh)
Other versions
CN102547285A (en
Inventor
王国中
程武
赵海武
李国平
滕国伟
朱洪波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Shanghai for Science and Technology
Original Assignee
University of Shanghai for Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Shanghai for Science and Technology filed Critical University of Shanghai for Science and Technology
Priority to CN201210004028.3A priority Critical patent/CN102547285B/en
Publication of CN102547285A publication Critical patent/CN102547285A/en
Application granted granted Critical
Publication of CN102547285B publication Critical patent/CN102547285B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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

The hexagonal transform quick-processing method of image or Video coding
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:
Figure 2012100040283100002DEST_PATH_IMAGE001
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
Figure 2012100040283100002DEST_PATH_IMAGE002
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
Figure 2012100040283100002DEST_PATH_IMAGE004
The method of above-mentioned positive-going transition processing is to convert based on forward hexagonal
Figure 223110DEST_PATH_IMAGE002
immediate processing method; In implementation process, adopt
Figure 2012100040283100002DEST_PATH_IMAGE005
to facilitate calculating; Positive-going transition can be used
Figure 2012100040283100002DEST_PATH_IMAGE006
replace, wherein,
Figure 2012100040283100002DEST_PATH_IMAGE007
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
Figure 77934DEST_PATH_IMAGE003
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
Figure 2012100040283100002DEST_PATH_IMAGE008
to facilitate calculating; Transformation by reciprocal direction can be used
Figure 857671DEST_PATH_IMAGE008
replace, wherein,
Figure 2012100040283100002DEST_PATH_IMAGE009
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
Figure 2012100040283100002DEST_PATH_IMAGE010
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
Figure 4936DEST_PATH_IMAGE003
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:
Figure 2012100040283100002DEST_PATH_IMAGE012
Above-mentioned positive-going transition method is to convert based on forward hexagonal
Figure 263616DEST_PATH_IMAGE002
immediate processing method, in implementation process, adopt
Figure 530650DEST_PATH_IMAGE008
to facilitate calculating; Transformation by reciprocal direction can be used replace, wherein,
Figure 667233DEST_PATH_IMAGE009
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
Figure 336112DEST_PATH_IMAGE003
immediate processing method, in implementation process, adopt
Figure 329476DEST_PATH_IMAGE008
to facilitate calculating; Transformation by reciprocal direction can be used
Figure 21488DEST_PATH_IMAGE013
replace, wherein,
Figure 758500DEST_PATH_IMAGE009
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
Figure 647778DEST_PATH_IMAGE001
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
Figure 231206DEST_PATH_IMAGE002
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
Figure 403879DEST_PATH_IMAGE004
in processing procedure, adopt to facilitate calculating; Positive-going transition can be used
Figure 722045DEST_PATH_IMAGE006
replace, wherein,
Figure 775451DEST_PATH_IMAGE007
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
Figure 418605DEST_PATH_IMAGE003
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
Figure 615231DEST_PATH_IMAGE002
in processing procedure, adopt
Figure 33574DEST_PATH_IMAGE008
to facilitate calculating; Transformation by reciprocal direction can be used
Figure 326016DEST_PATH_IMAGE009
replace, wherein,
Figure 183113DEST_PATH_IMAGE010
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.
CN201210004028.3A 2012-01-09 2012-01-09 Hexagonal transform quick-processing method for image or video coding Expired - Fee Related CN102547285B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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