Difference between revisions of "Hilbert-Huang Transform"

From Jeskola Buzz Wiki
Jump to: navigation, search
(How to do it (in plain english))
Line 5: Line 5:
 
# Do a "nice" interpolation between all the valleys. Let's call this the "min curve".
 
# Do a "nice" interpolation between all the valleys. Let's call this the "min curve".
 
# Create a resulting "mean curve" by averaging min and max: mean = (min+max)/2
 
# Create a resulting "mean curve" by averaging min and max: mean = (min+max)/2
# Save the resulting "mean curve" as the first (or second or third) iteration.
+
# Save the difference between the original signal and the new "mean curve" as the first (or second or third) iteration.
# Subtract the mean from the original audio data, and jump back to 1.
+
# Overwrite the original signal with the new "mean curve" and jump back to 1.
  
 
Repeat this 4 to 8 times (According to Professor Huang.)
 
Repeat this 4 to 8 times (According to Professor Huang.)

Revision as of 23:24, 22 November 2010

How to do it (in plain english)

  1. Start by finding all local peaks and valleys of the audio data. The trick is: Everytime you see a sample that is taller than both the next and the previous sample, it's a peak. Everytime you see a sample that is lower than both the next and the previous sample, it's a valley.
  2. Do a "nice" interpolation between all the peaks. Let's call this the "max curve".
  3. Do a "nice" interpolation between all the valleys. Let's call this the "min curve".
  4. Create a resulting "mean curve" by averaging min and max: mean = (min+max)/2
  5. Save the difference between the original signal and the new "mean curve" as the first (or second or third) iteration.
  6. Overwrite the original signal with the new "mean curve" and jump back to 1.

Repeat this 4 to 8 times (According to Professor Huang.)