Computing a DCT using an FFT, Signal analysis |
Computing a DCT using an FFT, Signal analysis |
Dec 9 2005, 06:40
Post
#1
|
|
|
Group: Members Posts: 23 Joined: 15-April 04 From: Australia Member No.: 13509 |
I am trying to make sense of the output of the FFT when used to calculate a type-2 DCT (DCT-II). I managed to scrape together enough documentation that infomed me that, if I wanted to perform a DCT-II using an FFT algorithm, then the data should be arranged to be real even symmetric, with every even indexed data element set to zero.
No problem there. In addition, the outputs are correct, but half the expected value (I can see the output needs scaling by 2 to compensate for the fact that every second sample of the input is zero). However, I am tyring to figure out how the output comes to be what it is? In particular, where the zero comes from (term 4 & term 12) [counting from 0]. Input Real : 0 x0 0 x1 0 x2 0 x3 0 x3 0 x2 0 x1 0 x0 Imag : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Output Real : ya yb yc yd 0 -yd -yc -yb -ya -yb -yc -yd 0 yd yc yb Imag : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 [grumble: looks good in fixed width font, but spaces are not turning out here] In my real application, I am using a 16 point DCT, which equates to a 64 point FFT, but the above is representative. Any hints? PS: I know there are better ways of doing DCTs, but in my implementation, I only have access to an FFT routine. Cheers,Owen. |
|
|
|
![]() |
Jan 13 2006, 06:49
Post
#2
|
|
![]() Group: Members Posts: 1593 Joined: 24-March 02 From: Revere, MA Member No.: 1607 |
http://www.ee.columbia.edu/~marios/courses...%20(Thesis).pdf
Here is another paper for reference describing faster way's to compute a DCT using an FFT. -------------------- College student/IT Assistant
|
|
|
|
Jan 13 2006, 10:03
Post
#3
|
|
![]() Server Admin Group: Admin Posts: 4808 Joined: 24-September 01 Member No.: 13 |
QUOTE (HotshotGG @ Jan 13 2006, 07:49 AM) http://www.ee.columbia.edu/~marios/courses...%20(Thesis).pdf Here is another paper for reference describing faster way's to compute a DCT using an FFT. The paper is about the MDCT, not the DCT. And the MDCT is based on a type 4 DCT, while he needs a type 2 DCT. This post has been edited by Garf: Jan 13 2006, 10:04 |
|
|
|
Mustardman Computing a DCT using an FFT Dec 9 2005, 06:40
Garf Use code or codebox to get it looking right.
Do y... Dec 9 2005, 12:57
Mustardman QUOTE (Garf @ Dec 9 2005, 03:57 AM)Use code o... Dec 9 2005, 21:32
QuantumKnot I agree that there is often not enough documentati... Dec 12 2005, 01:13
Mustardman Hi QuantumKnot,
Thanks for your reply. Indeed I h... Dec 13 2005, 23:25
QuantumKnot QUOTE (Mustardman @ Dec 14 2005, 08:25 AM)App... Dec 14 2005, 00:08
Mustardman QUOTE (QuantumKnot @ Dec 13 2005, 03:08 PM)Th... Dec 15 2005, 00:51
QuantumKnot QUOTE (Mustardman @ Dec 15 2005, 09:51 AM)edi... Jan 16 2006, 06:59
oruanaidh % use FFT to commute DCT and then invert DCT using... Mar 30 2006, 21:04
hamze60 I think the solution which is mentioned in below a... Jun 20 2012, 15:31![]() ![]() |
|
Lo-Fi Version | Time is now: 20th May 2013 - 17:12 |