CN102547285A - 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
CN102547285A
CN102547285A CN2012100040283A CN201210004028A CN102547285A CN 102547285 A CN102547285 A CN 102547285A CN 2012100040283 A CN2012100040283 A CN 2012100040283A CN 201210004028 A CN201210004028 A CN 201210004028A CN 102547285 A CN102547285 A CN 102547285A
Authority
CN
China
Prior art keywords
hexagonal
image
conversion
matrix
processing method
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.)
Granted
Application number
CN2012100040283A
Other languages
Chinese (zh)
Other versions
CN102547285B (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 a forward-hexagonal-transform-based quick processing method is adopted for the forward hexagonal transform of the image or video data; and an inverse-hexagonal-transform-based quick processing method is adopted for the inverse hexagonal transform of the forward hexagonal-transformed data. 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 conversion immediate processing method of image or video coding
Technical field
The present invention relates to the hexagonal conversion immediate processing method of image or video coding.The present invention mainly is at image or video coding end, and image or video data are carried out 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 reverse hexagonal conversion process, recover to obtain original image or video data.Help accelerating to view data or compression of video data and analysis.
Background technology
H.261 traditional video encoding standard such as ITU formulate, H.263, H.263+, the MPEG-1 that organizes to set up of the MPEG of standard and ISO H.264, 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 of taking all factors into consideration prediction, conversion and entropy coding, and following main feature is arranged:
(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).To image or frame of video is that base unit is encoded with the macro block, at first carries out in the frame or the prediction of interframe, then prediction residual is carried out two-dimensional transform, quantification, at last quantization parameter is carried out entropy coding.Because video data and view data have stronger correlation on spatial domain, two-dimensional transform is the key factor that improves coding gain, so two-dimensional transform is the very part and parcel of video coding and image encoding.
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 the 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.Through after the various predictions, variation has taken place in the spatial coherence of the blocks of data of video image, and on statistical significance, the pixel prediction at piece center coupling is better, and prediction residual is less, and the pixel prediction of block edge coupling is relatively poor, and prediction residual is bigger.
The hexagonal conversion can the adaptive prediction residual error statistical property, overcome the weak point of DCT.So-called hexagonal conversion, the conversion that the transformation matrix of promptly deriving according to six angles carries out.If α 1 , α 2 , α 3 , α 4 , α 5 , α 6 Be 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
Then transformation matrix is following:
Figure 2012100040283100002DEST_PATH_IMAGE001
If X is 8 * 8 data blocks of spatial domain, Y is 8 * 8 data blocks of the X transform domain that conversion obtains through the forward hexagonal, and then the conversion of forward hexagonal can be described as
Y?=?T′XT
Reverse hexagonal conversion can be described as
X?=?TYT′
It is thus clear that conversion of forward hexagonal and reverse hexagonal conversion all need be carried out twice matrix multiple computing, and the element in the matrix all is floating number, and amount of calculation is bigger.Can know that through simple statistics each matrix multiple need 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 objective of the invention is defective, the hexagonal conversion immediate processing method of a kind of image or video coding is provided, can obviously reduce the computational complexity of hexagonal conversion, help accelerating image or compression of video data and analysis to the prior art existence.
The present invention adopts following technical scheme:
The hexagonal conversion immediate processing method of a kind of image or video coding is included in image or video coding end, and image or video data are carried out 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 reverse hexagonal conversion process, recover to obtain original image or video data; Image or video data are carried out the immediate processing method that method that positive-going transition handles is based on forward hexagonal conversion
Figure 2012100040283100002DEST_PATH_IMAGE002
; Data after the conversion of forward hexagonal are carried out the immediate processing method that method that transformation by reciprocal direction handles is based on reverse hexagonal conversion
Figure 2012100040283100002DEST_PATH_IMAGE003
.
Transformation matrix T in the above-mentioned immediate processing method obtains as follows:
If α 1 , α 2 , α 3 , α 4 , α 5 , α 6 Be 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 that above-mentioned positive-going transition is handled is based on the immediate processing method of forward hexagonal conversion
Figure 223110DEST_PATH_IMAGE002
; In implementation process, adopt
Figure 2012100040283100002DEST_PATH_IMAGE005
and calculate with convenient; Then positive-going transition can use
Figure 2012100040283100002DEST_PATH_IMAGE006
to replace; Wherein, the immediate processing method of can use following method to realize:
If X i=(x0, x1, x2, x3, x4, x5, x6 is that the i of X is capable x7), Z i=(z0, z1, z2, z3, z4, z5, z6 is that the i of Z is capable z7); Intermediate object program with a [*] expression calculating:
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];
Then Zi obtains with 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 accomplished the calculating of Z=XS, the operation times that needs altogether 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 get
(2Y)′=(S′Z)′=Z′S
Therefore, can calculate with said method (2Y) ', carry out a matrix transpose again and just can obtain 2Y.Required amount of calculation is the same with the amount of calculation of calculating XS basically.
In conjunction with such scheme, just can accomplish 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 Y.This division is not need to calculate separately, can when quantizing, in advance quantization parameter be enlarged 2 times, thereby reach the purpose of convergent-divergent, and not increase amount of calculation.
The method that above-mentioned transformation by reciprocal direction is handled is based on the immediate processing method of reverse hexagonal conversion
Figure 77934DEST_PATH_IMAGE003
; Wherein, Y representes 8 * 8 data block matrixes imported, and X representes 8 * 8 dateout block matrix, and T representes transformation matrix, the transposition of T ' representing matrix T; In implementation process, adopt
Figure 2012100040283100002DEST_PATH_IMAGE008
and calculate with convenient; Then transformation by reciprocal direction can use
Figure 857671DEST_PATH_IMAGE008
to replace; Wherein,
Figure 2012100040283100002DEST_PATH_IMAGE009
immediate processing method can use following method to realize:
If Yi=(x0, x1, x2, x3, x4, x5, x6 is that the i of Y is capable x7), Vi=(v0, v1, v2, v3, v4, v5, v6 is that the i of V is capable v7); Intermediate object program with a [*] expression calculating:
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];
Then Vi obtains with 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 accomplished the calculating of V=YS ', the operation times that needs altogether 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 get
(2X)′=(SV)′=V′S′
Therefore, can calculate with said method (2X) ', carry out a matrix transpose again and just can obtain 2X.Required amount of calculation is the same with the amount of calculation of calculating YS ' basically.
In conjunction with such scheme, just can accomplish 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 X.This division is not need to calculate separately, can when quantizing, in advance quantization parameter be enlarged 2 times, thereby reaches each conversion coefficient divided by 2 purpose, and does not increase amount of calculation.
Provide several kinds of hexagonal conversion quick treatment devices that adopt said method to apply to image or video coding below:
A kind of forward hexagonal conversion quick treatment device that applies to image or video coding comprises:
Input unit is configured to receive the input data of storing positive-going transition;
Forward coefficient deriving means is configured to obtain the coefficient of forward hexagonal transformation matrix;
The positive-going transition device is configured to according to the resulting hexagonal transformation matrix of deriving means coefficient input block carried out quick forward hexagonal conversion process;
Output device is configured to export the data after the conversion of forward hexagonal.
A kind of reverse hexagonal conversion quick treatment device that applies to image or video coding comprises:
Input unit is configured to receive the input data of storing transformation by reciprocal direction;
Reverse coefficient deriving means is configured to obtain the coefficient of reverse hexagonal transformation matrix;
The transformation by reciprocal direction device is configured to according to the resulting hexagonal transformation matrix of deriving means coefficient input block carried out fast reverse hexagonal conversion process;
Output device is configured to export the data after reverse hexagonal conversion.
The present invention has following conspicuous outstanding substantive distinguishing features and marked improvement compared with prior art:
The present invention is at image or video coding end; Image or video data are carried out the immediate processing method that the positive-going transition processing method is based on forward hexagonal conversion
Figure 2012100040283100002DEST_PATH_IMAGE010
; At image or video decode end; Data after the conversion of forward hexagonal are carried out the immediate processing method that the transformation by reciprocal direction processing method is based on reverse hexagonal conversion
Figure 2012100040283100002DEST_PATH_IMAGE011
; Obviously reduced the computational complexity of hexagonal conversion; Reduce the processing time, help accelerating image or compression of video data and analysis.
Description of drawings
Fig. 1 is the sketch map of forward hexagonal conversion immediate processing method;
Fig. 2 is the sketch map of reverse hexagonal conversion immediate processing method;
Fig. 3 is the sketch map of forward hexagonal converting means;
Fig. 4 is the sketch map of reverse hexagonal converting means.
Embodiment
The preferred embodiments of the present invention accompanying drawings is following:
Embodiment one:
The hexagonal conversion immediate processing method of this image or video coding is included in image or video coding end, and image or video data are carried out forward hexagonal conversion process, transforms in the vector space of expressing with forward hexagonal transformation matrix; At image or video decode end; Data after the conversion of forward hexagonal are carried out reverse hexagonal conversion process; Recovery obtains original image or video data, wherein image or video data is carried out the immediate processing method that method that positive-going transition handles is based on forward hexagonal conversion
Figure 190563DEST_PATH_IMAGE010
; Data after the conversion of forward hexagonal are carried out the immediate processing method that method that transformation by reciprocal direction handles is based on reverse hexagonal conversion
Figure 4936DEST_PATH_IMAGE003
.
Embodiment two:
Referring to Fig. 1 and Fig. 2, present embodiment and embodiment one are basic identical, and special feature is following:
Transformation matrix in the hexagonal conversion:
Figure 2012100040283100002DEST_PATH_IMAGE012
Above-mentioned positive-going transition method is based on the immediate processing method of forward hexagonal conversion ; In implementation process, adopt
Figure 530650DEST_PATH_IMAGE008
and calculate with convenient; Then transformation by reciprocal direction can use
Figure 2012100040283100002DEST_PATH_IMAGE013
to replace; Wherein,
Figure 667233DEST_PATH_IMAGE009
immediate processing method can use following method to realize:
If Yi=(x0, x1, x2, x3, x4, x5, x6 is that the i of Y is capable x7), Vi=(v0, v1, v2, v3, v4, v5, v6 is that the i of V is capable v7); Intermediate object program with a [*] expression calculating:
Z then iCan use following method to calculate:
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 then iCalculate with 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 accomplished the calculating of Z=XS, the operation times that needs altogether 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 get
(2Y)′=(S′Z)′=Z′S
Therefore, can calculate with said method (2Y) ', carry out a matrix transpose again and just can obtain 2Y.Required amount of calculation is the same with the amount of calculation of calculating XS basically.
In conjunction with such scheme, just can accomplish 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 Y.This division is not need to calculate separately, can when quantizing, in advance quantization parameter be enlarged 2 times, thereby reach the purpose of convergent-divergent, and not increase amount of calculation.
Above-mentioned transformation by reciprocal direction method is based on the immediate processing method of reverse hexagonal conversion
Figure 336112DEST_PATH_IMAGE003
; In implementation process, adopt
Figure 329476DEST_PATH_IMAGE008
and calculate with convenient; Then transformation by reciprocal direction can use
Figure 21488DEST_PATH_IMAGE013
to replace; Wherein,
Figure 758500DEST_PATH_IMAGE009
immediate processing method can use following method to realize:
If Yi=(x0, x1, x2, x3, x4, x5, x6 is that the i of Y is capable x7), Vi=(v0, v1, v2, v3, v4, v5, v6 is that the i of V is capable v7); Intermediate object program with a [*] expression calculating:
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 then iCalculate with 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 accomplished the calculating of V=YS ', the operation times that needs altogether 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 get
(2X)′=(SV)′=V′S′
Therefore, can calculate with said method (2X) ', carry out a matrix transpose again and just can obtain 2X.Required amount of calculation is the same with the amount of calculation of calculating YS ' basically.
In conjunction with such scheme, just can accomplish 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 X.This division is not need to calculate separately, can when quantizing, in advance quantization parameter be enlarged 2 times, thereby reaches each conversion coefficient divided by 2 purpose, and does not increase amount of calculation.
Embodiment three:
Referring to Fig. 3, the forward hexagonal conversion quick treatment device of present embodiment comprises:
Input unit 710.Input unit 710 is used to receive the input data of storage positive-going transition.
Forward coefficient deriving means 750.Deriving means 750 is used to obtain the coefficient of positive-going transition matrix.Deriving means 750 can perhaps obtain and be stored in wherein from external unit through calculating the coefficient of transformation matrix.
Positive-going transition device 720.Positive-going transition device 720 carries out the positive-going transition processing according to the transformation matrix coefficient of institute's deriving means to said input block.In the present embodiment, positive-going transition device 720 comprises ALU, thereby input block is carried out quick forward hexagonal conversion process.
Output device 740.Data after the output device 740 output forward hexagonal Fast transforms.In the preferred embodiment, output device 740 is the data after the store transformed at first, export again.
Be connected through data/address bus between input unit 710 and the positive-going transition device 720, to transmit said input data.Be connected through data/address bus between forward coefficient deriving means 750 and the positive-going transition device 720, to transmit said positive-going transition matrix coefficient.Be connected through bus between positive-going transition device 720 and the output device 740, to transmit said data after positive-going transition.
Referring to Fig. 4, the transformation by reciprocal direction device of present embodiment comprises:
Input unit 810.Input unit 810 is configured to receive the input data of storage transformation by reciprocal direction.
Reverse coefficient deriving means 860, deriving means 860 is configured to obtain the coefficient of transformation by reciprocal direction matrix.Deriving means 860 can perhaps obtain and be stored in wherein from external unit through calculating the coefficient of transformation matrix.
Transformation by reciprocal direction device 830, its transformation matrix coefficient that is configured to obtain according to said deriving means carries out transformation by reciprocal direction to said input block to be handled.In the present embodiment, transformation by reciprocal direction device 830 ALUs, thus input block is carried out fast reverse hexagonal conversion process.
Output device 840.Data after the reverse hexagonal Fast transforms of output device 840 outputs.In the preferred embodiment, output device 840 is the data after the store transformed at first, export again.
Be connected through data/address bus between input unit 810 and the transformation by reciprocal direction device 830, to transmit said input data.Be connected through data/address bus between reverse coefficient deriving means 860 and the transformation by reciprocal direction device 830, to transmit said transformation by reciprocal direction matrix coefficient.Be connected through bus between transformation by reciprocal direction device 830 and the output device 840, to transmit said data behind transformation by reciprocal direction.

Claims (4)

1. the hexagonal conversion immediate processing method of image or video coding is included in image or video coding end, and image or video data are carried out 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 reverse hexagonal conversion process, recover to obtain original image or video data; It is characterized in that:
Said image or video data are carried out the immediate processing method that method that positive-going transition handles is based on forward hexagonal conversion
Figure 647778DEST_PATH_IMAGE001
; Wherein, X representes 8 * 8 data block matrixes imported; Y representes 8 * 8 dateout block matrix; T representes transformation matrix, the transposition of T ' representing matrix T;
Said data after the conversion of forward hexagonal are carried out the immediate processing method that method that transformation by reciprocal direction handles is based on reverse hexagonal conversion
Figure 231206DEST_PATH_IMAGE002
; Wherein, Y representes 8 * 8 data block matrixes imported; X representes 8 * 8 dateout block matrix; T representes transformation matrix, the transposition of T ' representing matrix T.
2. the hexagonal conversion immediate processing method of image as claimed in claim 1 or video coding is characterized in that: described transformation matrix T obtains as follows: establish α 1 , α 2 , α 3 , α 4 , α 5 , α 6 Be 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
3. the hexagonal conversion immediate processing method of image as claimed in claim 1 or video coding is characterized in that:
(1) in said positive-going transition
Figure 403879DEST_PATH_IMAGE004
processing procedure, adopts
Figure 651321DEST_PATH_IMAGE005
and calculate with convenient; Then positive-going transition can use
Figure 722045DEST_PATH_IMAGE006
to replace; Wherein, the immediate processing method of can use following method to realize:
If X i=(x0, x1, x2, x3, x4, x5, x6 is that the i of X is capable x7), Z i=(z0, z1, z2, z3, z4, z5, z6 is that the i of Z is capable z7); Intermediate object program with a [*] expression calculating:
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 then iObtain with 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) conversion of forward hexagonal need be carried out twice matrix multiple computing, and the element in the matrix all is floating number, and amount of calculation is bigger, and each matrix multiple need carry out 8 * 8 * 8=512 time floating number and multiply each other and 8 * 8 * 7=448 time floating number addition; Forward hexagonal conversion immediate processing method, the operation times that needs 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 obviously reduced the operand of hexagonal conversion.
4. the hexagonal conversion immediate processing method of image as claimed in claim 1 or video coding is characterized in that:
(1) in said transformation by reciprocal direction processing procedure, adopts
Figure 33574DEST_PATH_IMAGE008
and calculate with convenient; Then transformation by reciprocal direction can use
Figure 326016DEST_PATH_IMAGE009
to replace; Wherein, the immediate processing method of
Figure 183113DEST_PATH_IMAGE010
can use following method to realize:
If yi=(y0, y1, y2, y3, y4, y5, y6 is that the i of Y is capable y7): vi=(v0, v1, v2, v3, v4, v5, v6 is that the i of V is capable v7); Intermediate object program with a [*] expression calculating:
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];
Then vi calculates with 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) reverse hexagonal conversion need be carried out twice matrix multiple computing, and the element in the matrix all is floating number, and amount of calculation is bigger, and each matrix multiple need carry out 8 * 8 * 8=512 time floating number and multiply each other and 8 * 8 * 7=448 time floating number addition; Reverse hexagonal conversion immediate processing method, the operation times that needs 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 obviously reduced the operand of hexagonal conversion.
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 true CN102547285A (en) 2012-07-04
CN102547285B 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 (5)

* 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
US20110097003A1 (en) * 2009-10-28 2011-04-28 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image by using rotational transform
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

Patent Citations (5)

* 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
US20110097003A1 (en) * 2009-10-28 2011-04-28 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image by using rotational transform
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
CN102547285B (en) 2014-05-14

Similar Documents

Publication Publication Date Title
Xiao et al. Lossless image compression based on integer Discrete Tchebichef Transform
Bouguezel et al. Low-complexity 8× 8 transform for image compression
Bouguezel et al. A novel transform for image compression
AU2007204645B2 (en) Transforms with common factors
TW200814738A (en) Reduction of errors during computation of inverse discrete cosine transform
EP1769641A1 (en) Method and apparatus for transcoding input video based on first transformation kernel to output video based on second transformation kernel
US20130195177A1 (en) Method and device for the transformation and method and device for the reverse transformation of images
KR20120098500A (en) Method for transforming and inverse-transforming image, and apparatus using the same
JP2011223068A5 (en)
KR20120098499A (en) Method and apparatus for transforming image, and method and apparatus for inverse-transforming image
TWI286031B (en) Image processing devices and methods
CN102036075A (en) Image and digital video coding and decoding methods
Bouguezel et al. A multiplication-free transform for image compression
CN105163130B (en) A kind of Lossless Image Compression Algorithm method based on discrete Tchebichef orthogonal polynomial
Mechouek et al. Low complexity DCT approximation for image compression in wireless image sensor networks
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
CN206698375U (en) One kind slides block of pixels integer DCT kernel matrixs conversion motion compensator
CN102355580B (en) Hexagonal transformation method and device applied to picture coding and video coding
KR101722215B1 (en) Apparatus and method for discrete cosine transform
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
CN206962992U (en) 3 for digital video decoding multiply 3 Integer DCT Transform quantizers

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