Next Article in Journal
Classification of Sperm Whale Clicks (Physeter Macrocephalus) with Gaussian-Kernel-Based Networks
Next Article in Special Issue
Linear-Time Text Compression by Longest-First Substitution
Previous Article in Journal
Stefan Problem through Extended Finite Elements: Review and Further Investigations
Previous Article in Special Issue
Approximate String Matching with Compressed Indexes
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Multiplication Symmetric Convolution Property for Discrete Trigonometric Transforms

Department of Electrical Engineering, University of Texas at Arlington, Box 19016 Arlington, TX 76019, USA
*
Author to whom correspondence should be addressed.
Algorithms 2009, 2(3), 1221-1231; https://doi.org/10.3390/a2031221
Submission received: 25 June 2009 / Revised: 31 August 2009 / Accepted: 15 September 2009 / Published: 22 September 2009
(This article belongs to the Special Issue Data Compression)

Abstract

:
The symmetric-convolution multiplication (SCM) property of discrete trigonometric transforms (DTTs) based on unitary transform matrices is developed. Then as the reciprocity of this property, the novel multiplication symmetric-convolution (MSC) property of discrete trigonometric transforms, is developed.

1. Introduction

Shen et al. [1] developed fast DCT-domain convolution for time/spatial-domain multiplication using DCT type-2. They exploited symmetry and orthogonality for the fast algorithm. Logo-keying operation in the spatial domain can be done in the DCT domain for compressed image/video editing. However, they have not derived the convolution from the symmetric-convolution multiplication (SCM) property of discrete trigonometric transforms (DTTs), which will be the focus of this paper.
Time-domain symmetric convolution for a linear phase filtering application has been developed by Martucci [2] and is called the symmetric-convolution multiplication property of DTTs. Based on the SCM property, Zou et al. [3] have developed a symmetric convolution for linear phase FIR filtering. Filter coefficients consist of symmetric and asymmetric parts.
Based on those earlier works, Reju et al. [4] have finally developed fast circular convolution using DTTs. The input sequences to be convolved need not be symmetric or asymmetric. Thus fast DCTs and DSTs can be used instead of the FFTs for FIR filtering. Generalized fast convolution using numerous transforms as well as the DFT and DTTs has been studied by Korohoda et al. in [5].
In this paper we show that swapping the forward and inverse transforms in the SCM property [2] yields a multiplication-convolution (MSC) property. That is, the convolution of transformed sequences gives the same results as the forward transform after element-by-element multiplication of the data sequences. The necessary scaling factor M for these new properties has been described in the third line below Eq. (20) in [2], saying “it is possible to swap the usage of the forward and inverse transform; in that case, an extra scaling factor may be required”. Here M is the size of the generalized DFT (GDFT) when a DTT is derived from an M-point GDFT. We can get 40 types of MSCs corresponding to 40 types of SCMs in Tables VI, VII of [2].
In (1) of [6], the formulation of the SCM for the unitary matrices is presented, with only the exception of some of the 40 options mentioned by Martucci [2], because they cannot be expressed with the assumed tools. Here, we fill that gap. Consider the following matrix relationship between convolutional/unnormalized DTTs (denoted with lower-case subscript like C1e) and unitary DTTs (denoted with capital-letter subscript like CIE).
C 1 e = 2 N A 1 1 C 1 E A 1 C 2 e = 2 N A 2 1 C I I E
C 3 e = 2 N C I I I E A 2 C 4 e = 2 N C I V E
S 1 e = 2 N S I E S 2 e = 2 N A 3 1 S I I E
S 3 e = 2 N S I I I E A 3 S 4 e = 2 N S I V E
C 1 o = 2 N 1 A 2 1 C I O A 2 C 2 o = 2 N 1 A 2 1 C I I O A 4
C 3 o = 2 N 1 A 4 1 C I I I O A 2 C 4 o = 2 N 1 C I V O
S 1 o = 2 N 1 S I O S 2 o = 2 N 1 S I I O
S 3 o = 2 N 1 S I I I O S 4 o = 2 N 1 A 4 1 S I V O A 4
Here the fact that scalars commute with matrices is used for C3e and others.
A 1 = [ k n ] N + 1 = [ k m ] N + 1 = diag ( 1 2 , 1 , 1 , , 1 , 1 2 ) , where   m , n = 0 , 1 , , N
A 2 = [ k n ] N = [ k m ] N = diag ( 1 2 , 1 , 1 , , 1 ) , where   m , n = 0 , 1 , , N 1
A 3 = [ k n ] N = [ k m ] N = diag ( 1 , 1 , , 1 , 1 2 ) , where   m , n = 1 , 2 , , N
A 4 = [ l n ] N = [ l m ] N = diag ( 1 , 1 , , 1 , 1 2 ) , where   m , n = 0 , 1 , , N 1
k p = 1 / 2 p = 0 , N   = 1 p = 1 , 2 , , N 1
l p = 1 p = 0 , 1 , , N 2   = 1 / 2 p = N 1
where diag(a11, a11, …, aNN) implies a diagonal matrix with the diagonal elements as (a11, a11, …, aNN). IN is the identity matrix of size N × N.
Let matrices J, K, Q, and R be defined as:
J = ( I N O 1 × N ) K = ( O 1 × N I N ) Q = ( I N 1 O 1 × ( N 1 ) ) R = ( O 1 × ( N 1 ) I N 1 ) ( N + 1 ) × N ( N + 1 ) × N N × ( N 1 ) N × ( N 1 )
where O1×N is the zero row-vector, with N elements, whose entries are all zero. Multiplying one of those matrices with an input vector appends a single zero on the top of the first or under the last element of the vector. Multiplying the transpose of one of those matrices with an input vector discards the first or last element of the vector.

2. Symmetric-Convolution Multiplication Property

One of the forty cases of symmetric convolution is proven as an example.
Property.
y = A1−1CIE−1 J C2e CIIE x        [(A8) in Table 3]
Proof.
Equation (A.1) in the appendix of [2] can be rewritten as:
C 1 e = 2 C ^ 1 e [ k n ] N + 1
where C ^ 1 e is the kernel.
C I E = 2 / N [ k m ] N + 1 C ^ 1 e [ k n ] N + 1
( [ k n ] N + 1 ) 1 = [ 1 / k n ] N + 1
From (16), (17) and (18):
C 1 e = [ 2 N / k m ] N + 1 C 1 E [ k n ] N + 1
C 1 e 1 = [ 1 / k n ] N + 1 C I E 1 [ k m / ( 2 N ) ] N + 1
From (1) and (10):
C 2 e 1 = C I I E 1 [ k m / ( 2 N ) ] N
Let x and w be input column vectors in time domain. Let y be an output column vector in time domain. Let C2e be a diagonal matrix defined as C2e = diag([C2e w]T), where superscript T denotes the transpose operator. We rewrite the 8th property in Table VI of [2] as:
y = C 1 e 1 { C 2 e C 2 e x } = C 1 e 1 { C 2 e [ 2 N / k m ] N C I I E x } = [ 1 / k n ] N + 1 C I E 1 [ k m ] N + 1 J { C 2 e [ 1 / k m ] N C I I E x }
The matrix J shows up in the last line of (22) for zero padding. Since C2e and [ 1 / k m ]N are diagonal matrices, they can commute. Thus:
y = [ 1 / k n ] N + 1 C I E 1 J { C 2 e C I I E x } = [ 1 / k n ] N + 1 C I E 1 J { C 2 e C I I E x }
Another example is shown in (11) of [6]. Equation (12) of [6] is expanded to full for our derivation and only results are listed in the first column of Table 3 and Table 4 in the Appendix.

3. Multiplication Symmetric-Convolution Property

Let X and Y be transformed input and output data vectors. Since there are one-to-one correspondences between unitary discrete trigonometric transforms (DTTs), we can exchange the forward transform for inverse one and vice versa as follows. In other words, a pair has the same matrix but has different names. Define h C3e as:
h C3e = diag( [(C3e) −1 W]T )
where C3e will be defined in (27). That is, C2e and h C3e are the same matrix with different names (thus names of DTTs need to change).
Then from (23):
Y = [ 1 / k m ] N + 1 C I E   J   h C 3 e   C I I I E 1   X
Notice the forward transform matrix CIIE is replaced by the inverse transform matrix CIIIE −1 since they are the same matrix, and vice versa. Now this equation represents a SCM of DTTs. A key point of this new property is that we need to redefine convolution forms of DCTs and DSTs. The factor of M is divided for the inverse DCT of the convolution form in [2] whereas it is divided for the forward DCT of the new convolution form. M is 2N for even and 2N – 1 for odd. Now new convolution form for DCT 2 is denoted as C2e:
Forward Inverse ( old ) C 2 e C 2 e 1 = 1 M C 3 e
( new ) C 2 e = 1 M C 2 e ( C 2 e ) 1 = C 3 e   or   ( C 3 e ) 1 = C 2 e
The rest of DTTs can be readily obtained from the appendix of [2].
MSC properties can be described in terms of convolutional / unnormalized DTTs to obtain similar results:
( 11 th  SCM in Table IV of  [ 2 ] ) C 3 e 1 ( C 3 e × C 3 e )
( ours ,   MSC ) M    C 2 e ( ( C 2 e ) 1 × ( C 2 e ) 1 )
Only results are listed. Matrices J, K, Q, and R are required for different index ranges between operands. Link between the index range-based maneuvers described by Martucci [2] and the introduction of the J, K, Q and R matrices is presented in Table 1 and Table 2 for M = 2N and M = 2N − 1, respectively.

4. Applications

For an image resizing (filter) application, one of 40 MSC properties is used. The definition of a normalizing parameter F(k) in [7] needs a minor change as:
F ( k ) = 2 k = 0 1 1 k N 1
Then we can derive one of MSC properties, which is (4) in [7], from our equation as follows:
C I I { x ( n ) × w ( n ) } = C I I { x ( n ) } C 2 e { w ( n ) } = C I I { x ( n ) } 1 2 N C 2 e { w ( n ) }
where the symbol ⊗ denotes symmetric convolution. Since C2e = 2 N A2−1CIIE in (1),
C I I { x ( n ) × w ( n ) } = C I I { x ( n ) } 1 2 N A 2 1 C I I { w ( n ) }
By the associativity of (continuous and discrete) convolution:
C I I { x ( n ) × w ( n ) } = 1 2 N C I I { x ( n ) } A 2 1 C I I { w ( n ) } = 1 2 N A 2 [ A 2 1 C I I { x ( n ) } A 2 1 C I I { w ( n ) } ]
This is shown in block diagram format in Fig. 1(b). Since G(k) and F(k) are A2−1 and 1 2 N A2 in matrix form:
CII{x(n) × w(n)} = G(k) [ F(k) CII{x(n)} ⊗ F(k) CII{w(n)} ]
Convolution has the property of associativity with scalar multiplication. Let F and G be any real sequences. Then:
a(FG) = (aF) ⊗ G = F ⊗ (aG)
for any real (or complex) number a.
For a numerical example, let:
w = (1, 2, 3, 4) T, x = (1, 0, 3, 2) T and N = 4
Then the time domain element-by-element multiplication of the two vectors is:
w × x = (1, 0, 9, 8) T
W = A2−1 CII w = (a0, a1, a2, a3) T
       = (7.071, − 2.230, 0, − 0.159) T
X = A2−1 CII x
         = (4.243, −1.465, 0, 1.689) T
Y = W ⊗ X = (Wt + Wh) X
   = (36, − 19.823, 0, 11.272) T
where:
W = ( W t + W h ) ( a 0 a 1 a 2 a 3 a 1 a 0 a 1 a 2 a 2 a 1 a 0 a 1 a 3 a 2 a 1 a 0 ) + ( 0 a 1 a 2 a 3 0 a 2 a 3 0 0 a 3 0 a 3 0 0 a 3 a 2 )
Equation (32) is [ y ( N ) , t 3 e ] + [ y ( N ) , h 3 e ] in [8, p. 2635], and Wt and Wh are a symmetric Toeplitz matrix and a Hankel matrix [9]. Symmetric convolution is represented in matrix multiplication form of (31) using (32). Since the expression inside the square brackets of (30) is the matrix Y defined in (31):
Y = 2 N A 2 1 C I I   ( w × x )
C I I   ( w × x ) = 1 2 N A 2 Y
Equation (34) corresponds to (30). Thus Y can be computed by using either (33) or (31). In other words, the symmetric convolution of DCT coefficients, Figure 1(b) is an alternative method to computing the DCT of multiplication of two time sequences, Figure 1(a).
Figure 1. For compressed image / video editing, logo-keying operation (alpha blending) can be done in (a) the spatial and (b) transform domains [1]. The symbol × denotes the element-by-element multiplication of the two vectors and ⊗ denotes the symmetric convolution of the two vectors.
Figure 1. For compressed image / video editing, logo-keying operation (alpha blending) can be done in (a) the spatial and (b) transform domains [1]. The symbol × denotes the element-by-element multiplication of the two vectors and ⊗ denotes the symmetric convolution of the two vectors.
Algorithms 02 01221 g001

5. Conclusions

For logo-keying operation or alpha blending, one image is scaled by α and the other is scaled by (1 − α), where α is a value between zero and one, and then two images are added up. For compressed image / video editing, multiplication operation in logo-keying operation in the spatial can be done in the DTT domain by convolving the unitary DTT coefficients of the two images. For those applications, we have developed 40 types of the MSC properties for the unitary DTTs (DCTs and DSTs [11,12,13]).

Acknowledgements

The authors wish to thank the reviewers.

Appendix

Table 1. Link between the index range-based maneuvers described by Martucci [2] and the introduction of the J, K, Q and R matrices, M = 2N.
Table 1. Link between the index range-based maneuvers described by Martucci [2] and the introduction of the J, K, Q and R matrices, M = 2N.
SCM (Symmetric-Conv. Mult.) Forward transform Inverse transform
Input
index
range
Output
index
range
Input
index
range
Output
index
range
Input
index
range
Output
index
range
y = SIE−1 (RT JTC1e) SIE x 0→N 1→N−1 RT
JT
y = SIE−1 S1e RT JT CIE (A1 x)0→N1→N−1RT
JT
y = − A1−1CIE−1 J RS1e SIE x1→N−10→N J R
y = CIIE−1C2e JT CIE(A1 x)0→N0→N−1JT
y = SIIE−1S2e KT CIE (A1 x)0→N1→NKT
y = −CIIE−1 R S1e QT SIIE x1→N 1→N−1QT 1→N−1 0→N−1R
y = −CIIE−1R (QT S2e) SIE x 1→N1→N−1QT1→N−10→N−1R
y = A1−1CIE−1 J C2e CIIE x 0→N−1 0→N J
y = SIE−1 (QTS2e) RT CIIE x0→N−1 1→N−1 RT 1→N1→N−1 QT
y = SIE−1 (RTC2e) Q T SIIE x1→N1→N−1QT0→N−1 1→N−1RT
y = − A1−1 CIE−1 K S2e SIIE x 1→N0→N K
Table 2. Link between the index range-based maneuvers described by Martucci [2] and the introduction of the J, K, Q and R matrices, M = 2N − 1.
Table 2. Link between the index range-based maneuvers described by Martucci [2] and the introduction of the J, K, Q and R matrices, M = 2N − 1.
SCM (Symmetric-Conv. Mult.)Forward transformInverse transform
Input
index
range
Output
index
range
Input
index
range
Output
index
range
Input
index
range
Output
index
range
y = SIO−1 (RTC1o) SIO x 0→N−11→N−1RT
y = SIO−1 S1o RT CIO (A2 x)0→N−11→N−1R T
y = − A2−1 CIO−1 R S1o SIO x 1→N−10→N−1R
y = SIIO−1S1o RT CIIO (A4 x)0→N−11→N−1RT
y = SIIO−1 (RTC2o) SIO x 0→N−11→N−1RT
y = SIIO−1 (RTC1o) SIIo x 0→N−11→N−1RT
y = SIIO−1S2o RT CIO (A2 x)0→N−11→N−1RT
y = − A4−1 CIIO−1 R S1o SIIO x 1→N−10→N−1R
y = − A4−1 CIIO−1 R S2o SIO x 1→N−10→N−1R
y = SIO−1 S2o RT CIIO (A4 x)0→N−11→N−1RT
y = SIO−1 (RTC2o) SIIO x 0→N−11→N−1RT
y = − A2−1 CIO−1 R S2o SIIO x 1→N−10→N−1R
y = SIIIO−1 S3o QT CIIIO (A2 x)0→N−10→N−2Q T
y = SIIIO−1 QTC3o Q SIIIO x0→N−20→N−1Q 0→N−10→N−2QT
y = − A2−1 CIIIO−1 Q S3o SIIIO x 0→N−20→N−1Q
y = CIVO−1 (QTC3o) CIVO x 0→N−10→N−2Q T
y = CIVO−1C4o QT CIIIO (A2 x)0→N−10→N−2Q T
y = A4−1 SIVO−1 Q S3o CIVO x 0→N−20→N−1Q
y = A4−1 SIVO−1 Q C4o SIIIO x 0→N−20→N−1Q
y = −CIVO−1S3o QT SIVO (A4 x)0→N−10→N−2QT
y = −CIVO−1 (QTS4o) SIIIO x 0→N−10→N−2QT
y = A2−1 CIIIO−1 Q C4o CIVO x 0→N−20→N−1Q
y = SIIIO−1 (QTS4o) CIVO x 0→N−10→N−2Q T
y = SIIIO−1C4o QT SIVO (A4 x)0→N−10→N−2QT
Table 3. 20 of 40 types of SCM and MSC properties for the DTTs, M = 2N.
Table 3. 20 of 40 types of SCM and MSC properties for the DTTs, M = 2N.
SCM (Symmetric-Conv. Mult.)MSC (Mult. Symmetric-Conv.)
y = A1−1CIE−1C1e CIE (A1 x)Y = A1−1CIE hC1e CIE −1(A1 X)(A1)
y = SIE−1 (RT JT C1e) SIE xY = SIE (RT JT C1e) SIE−1 X(A2)
y = SIE−1 S1e RT JT CIE (A1 x)Y = SIES1e RT JT CIE−1 (A1 X)
y = − A1−1CIE−1 J R S1e SIE xY = − A1−1CIE J RhS1e SIE −1 X(A3)
y = CIIE−1C1e CIIE xY = CIIIE hC1e CIIIE −1 X(A4)
y = CIIE −1C2e JT CIE(A1 x)Y = CIIIE hC3e JT CIE−1(A1 X)
y = SIIE−1S1e CIIE xY = SIIIE hS1e CIIIE−1 X(A5)
y = SIIE−1C2e SIE xY = SIIIE hC3e SIE−1 X
y = SIIE−1C1e SIIE xY = SIIIE hC1e SIIIE−1 X(A6)
y = SIIE−1S2e KT CIE (A1 x)Y = SIIE hS3e KT CIE−1(A1 X)
y = −CIIE−1 R S1e QT SIIE xY = −CIIIE R hS1e QT SIIIE−1 X(A7)
y = −CIIE−1R (QT S2e) SIE xY = −CIIIE R (QT hS3e) SIE−1 X
y = A1−1CIE−1 J C2e CIIE xY = A1−1CIE J h C3e CIIIE −1 X(A8)
y = SIE−1 (QT S2e) RT CIIE xY = SIE (QT h S3e) RT CIIIE−1 X (A9)
y = SIE−1 (RT C2e) Q T SIIE xY = SIE (RT hC3e) Q T SIIIE−1 X
y = − A1−1 CIE−1 K S2e SIIE xY = − A1−1 CIE K h S3e SIIIE −1 X (A10)
y = A2−1 CIIIE−1C3e CIIIE(A2 x)Y = A2−1 CIIE h C2e CIIE−1(A2 X) (A11)
y = A3−1 SIIIE−1S3e CIIIE(A2 x)Y = A3−1 SIIE h S2e CIIE −1(A2 X) (A12)
y = A3−1 SIIIE−1C3e SIIIE(A3 x)Y = A3−1 SIIE h S2e SIIE −1(A3 X)
y = A2−1 CIIIE−1S3e SIIIE(A3 x)Y = A2−1 CIIE h S2e SIIE −1(A3 X)(A13)
y = CIVE−1C3e CIVE xY = CIVE h C2e CIVE−1 X
y = CIVE−1C4e CIIIE(A2 x)Y = CIVE h C4e CIIE−1(A2 X)(A14)
y = SIVE−1S3e CIVE xY = SIVEh S2e CIVE−1X(A15)
y = SIVE−1C4e SIIIE(A3 x)Y = SIVEh C4e SIIE−1(A3 X)
y = SIVE−1C3e SIVE xY = SIVE h C2e SIVE−1 X(A16)
y = SIVE−1S4e CIIIE(A2 x)Y = SIVE h S4e CIIE−1(A2 X)
y = −CIVE−1S3e SIVE xY = −CIVE h S2e SIVE−1 X(A17)
y = −CIVE−1S4e SIIIE(A3 x)Y = −CIVE h S4e SIIE−1 (A3 X)
y = A2−1 CIIIE−1C4e CIVE xY = A2−1 CIIE h C4e CIVE −1 X(A18)
y = A3−1 SIIIE−1S4e CIVE xY = A3−1 SIIE h S4e CIVE−1 X(A19)
y = A3−1 SIIIE−1C4e SIVE xY = A3−1 SIIE h C4e SIVE−1 X
y = − A2−1 CIIIE−1S4e SIVE xY = − A2−1 CIIE h S4e SIVE−1 X(A20)
Table 4. 20 of 40 types of SCM and MSC properties for the DTTs, M = 2N − 1.
Table 4. 20 of 40 types of SCM and MSC properties for the DTTs, M = 2N − 1.
SCM (Symmetric-Conv. Mult.)MSC (Mult. Symmetric-Conv.)
y = A2−1 CIO−1C1o CIO (A2 x)Y = A2−1 CIO h C1o CIO −1(A2 X)(A21)
y = SIO−1 (RTC1o) SIO xY = SIO (RT h C1o) SIO−1 X(A22)
y = SIO−1 S1o RT CIO (A2 x)Y = SIO h S1o RT CIO−1(A2 X)
y = − A2−1 CIO−1 RS1o SIO xY = − A2−1 CIO R h S1o SIO −1 X(A23)
y = A4−1 CIIO−1C1o CIIO (A4 x)Y = A4−1 CIIIO h C1o CIIIO −1 (A4 X)(A24)
y = A4−1 CIIO−1 C2o CIO (A2 x)Y = A4−1 CIIIO h C3o CIO−1(A2 X)
y = SIIO−1S1o RT CIIO (A4 x)Y = SIIIO h S1o RT CIIIO −1 (A4 X)(A25)
y = SIIO−1 (RTC2o) SIO xY = SIIIO (R T h C3o) SIO−1 X
y = SIIO−1 (RTC1o) SIIo xY = SIIIO (RT h C1o) SIIIO−1 X(A26)
y = SIIO−1S2o RT CIO (A2 x)Y = SIIIO h S3o RT CIO−1 (A2 X)
y = − A4−1 CIIO−1 R S1o SIIO xY = − A4−1 CIIIO R h S3o SIO−1 X(A27)
y = − A4−1 CIIO−1 R S2o SIO xY = − A4−1 CIIIO R h S1o SIIIO−1 X
y = A2−1 CIO−1 C2o CIIO (A4 x)Y = A2−1 CIOh C3o CIIIO−1 (A4 X)(A28)
y = SIO−1 S2o RT CIIO (A4 x)Y = SIO h S3o RT CIIIO−1 (A4 X)(A29)
y = SIO−1 (RTC2o) SIIO xY = SIO−1 (RT h C3o) SIIIO X
y = − A2−1 CIO−1 R S2o SIIO xY = − A2−1 CIO R h S3o SIIIO−1 X(A30)
y = A2−1 CIIIO−1 C3o CIIIO(A2 x)Y = A2−1 CIIO h C2o CIIO−1(A2 X)(A31)
y = SIIIO−1 S3o QT CIIIO (A2 x)Y = SIIO h S2o QT CIIO−1(A2 X)(A32)
y = SIIIO−1 QT C3o Q SIIIO xY = SIIO QT h S2o Q SIIO−1 X
y = − A2−1 CIIIO−1 Q S3o SIIIO xY = − A2−1 CIIO Q h S2o SIIO−1 X(A33)
y = CIVO−1 (QT C3o) CIVO xY = CIVO (QT h C2o) CIVO−1 X(A34)
y = CIVO−1C4o QT CIIIO (A2 x)Y = CIVO h C4o QT CIIO−1(A2 X)
y = A4−1 SIVO−1 Q S3o CIVO xY = A4−1 SIVO Q h S2o CIVO−1 X(A35)
y = A4−1 SIVO−1 Q C4o SIIIO xY = A4−1 SIVOQ h C4o SIIO−1 X
y = A4−1 SIVO−1C3o SIVO (A4 x)Y = A4−1 SIVO h C2o SIVO−1 (A4 X)(A36)
y = A4−1 SIVOE−1S4o CIIIO (A2 x)Y = A4−1 SIVOh S4o CIIO−1 (A2 X)
y = − CIVO−1S3o QT SIVO (A4 x)Y = − CIVOh S2o QT SIVO−1 (A4 X)(A37)
y = − CIVO−1 (QTS4o) SIIIO xY = − CIVO (QT h S4o) SIIIO−1 X
y = A2−1 CIIIO−1 Q C4o CIVO xY = A2−1 CIIO Q h C4o CIVO−1 X(A38)
y = SIIIO−1 (QTS4o) CIVO xY = SIIO (QT h S4o) CIVO−1 x(A39)
y = SIIIO−1C4o QT SIVO (A4 x)Y = SIIO−1 h C4o QT SIVO−1 (A4 X)
y = − A2−1 CIIIO−1S4o SIVO (A4 x)Y = − A2−1 CIIO h S4o SIVO−1 (A4 x)(A40)

References and Notes

  1. Shen, Bo; Sethi, I.K.; Bhaskaran, V. DCT convolution and its application in compressed domain. IEEE T. Circ. Syst. Vid. 1998, 8, 947–952. [Google Scholar]
  2. Martucci, S.A. Symmetric convolution and the discrete sine and cosine transforms. IEEE Trans. SP 1994, 42, 1038–1051. [Google Scholar] [CrossRef]
  3. Zou, X.; Muramatsu, S.; Kiya, H. The generalized overlap-add and overlap-save methods using discrete sine and cosine transforms for FIR filtering. In Proceedings of the 3rd IEEE Int’l Conf. on Signal Processing, ICSP'96, Beijing, China, October 1996; pp. 91–94.
  4. Reju, V.G.; Koh, S.N.; Soon, I.Y. Convolution using discrete sine and cosine transforms. IEEE Signal Proc. Let. 2007, 14, 445–448. [Google Scholar] [CrossRef]
  5. Korohoda, P.; Dabrowski, A. Generalized convolution as a tool for the multi-dimensional filtering tasks. Multidim. Syst. Sign. P. 2008, 19, 361–377. [Google Scholar] [CrossRef]
  6. Foltz, T.M.; Welsh, B.M.; Holmberg, C.D. Symmetric convolution using unitary transform matrices. IEEE T. Signal Proces. 2000, 48, 2691–2692. [Google Scholar] [CrossRef]
  7. Park, Y.S.; Park, H.W. Design and analysis of an image resizing filter in the block-DCT domain. IEEE T. Circ. Syst. Vid. 2004, 14, 274–279. [Google Scholar]
  8. Sánchez, V.; García, P.; Peinado, A.M.; Segura, J.C.; Rubio, A.J. Diagonalizing properties of the discrete cosine transforms. IEEE T. Signal Proces. 1995, 43, 2631–2641. [Google Scholar] [CrossRef]
  9. Sánchez, V.; García, P.; Peinado, A.M.; Segura, J.C.; Rubio, A.J. Generating matrices for the discrete sine transforms. IEEE T. Signal Proces. 1996, 44, 2644–2646. [Google Scholar] [CrossRef]
  10. Martucci, S.A. Image resizing in the discrete sine and cosine domain. In Proceedings of the IEEE International Conference on Image Processing 1995, Washington, DC, USA, October 1995; Volume 2, pp. 244–247.
  11. Foltz, T.M.; Welsh, B.M. Symmetric convolution of asymmetric multidimensional sequences using discrete trigonometric transforms. IEEE T. Image Proces. 1999, 8, 640–651. [Google Scholar] [CrossRef] [PubMed]
  12. Rao, K.R.; Yip, P. Discrete Cosine Transform: Algorithms, Advantages, And Applications; Academic Press: London, England, 1990. [Google Scholar]
  13. Britanak, V.; Yip, P.; Rao, K.R. Discrete Cosine and Sine Transforms; Academic Press (Elsevier): Orlando, FL, USA, 2007; pp. 32–38. [Google Scholar]

Share and Cite

MDPI and ACS Style

Kim, D.N.; Rao, K.R. Multiplication Symmetric Convolution Property for Discrete Trigonometric Transforms. Algorithms 2009, 2, 1221-1231. https://doi.org/10.3390/a2031221

AMA Style

Kim DN, Rao KR. Multiplication Symmetric Convolution Property for Discrete Trigonometric Transforms. Algorithms. 2009; 2(3):1221-1231. https://doi.org/10.3390/a2031221

Chicago/Turabian Style

Kim, Do Nyeon, and K. R. Rao. 2009. "Multiplication Symmetric Convolution Property for Discrete Trigonometric Transforms" Algorithms 2, no. 3: 1221-1231. https://doi.org/10.3390/a2031221

Article Metrics

Back to TopTop