Test for my discrete Fourier/Hartley-like transform algorithm

Channel:
Subscribers:
3,660
Published on ● Video Link: https://www.youtube.com/watch?v=ZAL2XWqce2o



Duration: 0:17
1,361 views
24


I'm working on an Arduino project which needs to get accelerometer data and find the peaks in the frequency spectrum.

However, the Arduino Uno only has 2048 bytes of SRAM, which is pretty much nothing.

The usual libraries for spectrum analysis use the Fast Hartley Transform, which runs on at most 256 16-bit samples. You need to store them in an array, window, transform then read the results. In total, the damn thing eats up about half of the memory available, and it's super slow considering data keeps pouring in.

This also sucks because that'd mean I could only detect frequencies up to half of the sampling rate. Half of the transform is just redundant, as it is

I needed something faster that can run on any range of frequencies I want and that used less memory. So I came up with some dumb, kinda naive algorithm to do it. It worked really well!

I might write about this later on. Lots of ideas for ways to refine it.

----

This was the result of a prototype, made in Python, of the algorithm running over a sound file, the last few notes of "Magnetic Rag" by Scott Joplin, as played by Alessandra Celletti.

The results compare very well with the abs value of the FFT of the same data, although my algorithm works different than the usual FFT.




Other Videos By 1ucasvb


2017-01-08[60fps] Grzegorz Kwiatek (Greg) - "Misunderstanding" -- Chiptune Visualization / Atari SAP
2017-01-07Tomasz Dajczak - "Eureka (Theme / Song 4)" -- Chiptune Visualization / Atari SAP (NEW ALGORITHM)
2017-01-07[60fps] Łukasz Sychowicz (X-Ray) - "Zizibum" -- Chiptune Visualization / Atari SAP (NEW ALGORITHM!)
2017-01-07Łukasz Sychowicz (X-Ray) - "Overmind (Song 1)" -- Chiptune Visualization / Atari SAP
2017-01-07Łukasz Sychowicz (X-Ray) - "Zbig" -- Chiptune Visualization / Atari SAP (NEW ALGORITHM!)
2017-01-07Jakub Husak - "His Dark Majesty (Song 4)" -- Chiptune Visualization / Atari SAP (NEW ALGORITHM!)
2016-09-18The Weather Man (2005) - "Fast Food" scene
2016-07-09Test run of my Universal Resonator prototype
2016-06-11Lazy Discrete Fourier Transform on the Arduino Uno
2016-05-31Fast Fourier Transform (FFT) vs my "lazy Discrete Fourier Transform" (LDFT)
2016-05-31Test for my discrete Fourier/Hartley-like transform algorithm
2016-04-25Chiptune Orchestra - "Piona" by Łukasz Sychowicz AKA X-Ray (Atari POKEY)
2016-04-16Orchestrated Game Music: "Dawn of City" AKA "10000.mid", by Sue Kasper from the game "SimCity 2000"
2016-04-10General Relativity - Conceptual illustration of time and space distortion
2015-05-05Orchestrated Game Music: "Song 3", by Simeon Peebler, from the game "Warheads SE"
2015-04-09Chiptune Orchestra - "Draconus" by Adam Gilmore (Atari POKEY)
2015-04-02Chiptune Orchestra - "Global War" by Peter Elfinger (Atari POKEY)
2014-06-21Łukasz Sychowicz (X-Ray) - "Maxi 2, Song 2" -- Chiptune Visualization / Atari SAP
2014-06-20Nils Feske (505) - "Short" -- Chiptune Visualization / Atari SAP
2014-06-19Sal Esquivel (Kjmann) / Kenet & Rez - "Unreal Superhero 3" -- Chiptune Visualization / Atari SAP
2014-06-19Krystian Iwaszko (Pinokio) - "THC Kokot" -- Chiptune Visualization / Atari SAP