Stap 10: "verwerking" van de gegevens
Eerste ding om te doen is het downloaden van verwerking, beschikbaar op http://processing.org. Het vereist geen installatie; uitsluitend unzip de download, open de map, en het stormloop. Download de schets (welke programma's worden genoemd in verwerking) en toegankelijk op opwaarts. Het programma moet goed om te gaan zoals is, en hoewel er voldoende documentatie moet te begrijpen wat er gaande is in de tekening, ik wil een paar opmerkingen maken en geven een algemeen overzicht van wat het doet hier.
Ik moedig u om te sleutelen aan het programma - dingen veranderen, maken van uw eigen, enz. Wees niet bang om het te breken, aangezien een werkende versie altijd hier gevonden worden kan. Als je nieuw voor de programmering, de jongens die verwerking hebben sommige zowaar tof elementaire tutorials hier. Een ding om op te merken is dat de verwerking hoofdlettergevoelig - is als op enig moment die u in de FFTHeight in plaats van FFTheight typt, het programma zal u een vergissing verlenen en neemt u mee naar de lijn waar u hebt getypt in de voormalige. Ik niet elke één functie die ik heb gebruikt - document als u twijfelt over wat een deel van de code doet, u moet opzoeken de functie wordt gebruikt bij processing.org, zodat u kunt zien welke zijn bedoeld om te doen, evenals precies wat het neemt als ingangen en produceert als uitgang. Audio klassen niet zo gemakkelijk er worden gevonden (minim, FFT, AudioInput, enz). Vind documentatie voor die stukken, kijk hier, specifiek op de handleidingen onder het tabblad hulpprogramma's aan de top.
Ook een beetje achtergrond op de FFT. Gegevens kan worden weergegeven in menig opzicht, gemeenschappelijk op twee manieren worden in tijd en frequentie. Die informatie in het frequentiedomein bedraagt meestal waarbij gegevens worden weergegeven als de combinatie van een heleboel sinus golven met verschillende frequenties en amplitudes. Als u een zuivere sinus hebben, zeggen oscillerende 1 Hz, zou u de sinus die we allemaal kennen en liefhebben in het tijdsdomein, maar in de frequentie domein zou gewoon één regel f = 1. Als u had tijdig een golf die werd gemaakt door het toevoegen van een sinusgolf op 1 Hz, en een die was half de amplitude de eerste, maar met 2 Hz, zou u twee regels - één 1 Hz met een hoogte van 1, en één met 2 Hz met een hoogte van 0,5 zien in frequentie.
Hieruit kan u erg ingewikkeld signalen (geen signaal!) als een combinatie van een aantal (soms een oneindig aantal) voor sinusgolven vertegenwoordigen. De gemeenschappelijkste manier om te converteren van signalen van het tijdsdomein naar frequentie is met de FFT (Fast Fourier Transform). Het doet precies wat ik zojuist beschreven--duurt als invoer een gedeelte van het domein tijdsignaal en uitgangen bands overeenkomt met de concentratie van bepaalde adresbereiken frequenties in dat signaal. Deze gegevens kan gemakkelijk worden gevisualiseerd door elke band weer te geven als een bar met een bepaalde hoogte, zoals ik deed in de code.
Dit programma is eigenlijk gewoon een data-acquisitie / visualisatie een. Er zijn een HELEBOEL dingen die je kunt doen met dit circuit--ik moedig u aan echt Speel mee en maak iets van je eigen! De volgende stap is een optioneel een detaillering iets een beetje meer plezier die ik gemaakt heb met het type gegevens in dit programma verworven.
Code beschikbaar hier.