Stap 6: Het creëren van een Specgram
De specgram functie van matlab neemt een verzameling van gegevenspunten van het wav-bestand en voert een Fourier Transform over de punten te bepalen van de frequenties die aanwezig zijn in het signaal. Voor dit instructable, is het niet belangrijk om te weten hoe een Fourier Transform werkt, gewoon weten dat het specgram zal uitzetten welke frequenties aanwezig zijn, en hoe sterk ze zijn met betrekking tot tijd. De functie percelen tijd op de x-as en de frequentie op de Y-as. De sterkte van elke frequentie wordt weergegeven door de kleur.
In dit geval het wav-bestand is een geluidsopname van een stuk metaal wordt geslagen, en vervolgens de trillingen van het metaal worden vastgelegd als geluid. Met behulp van de specgram, kunnen we gemakkelijk de resonant frequentie van het stuk metaal, bepalen want dat zal de frequentie die langst met tijd blijft bestaan.
Lees het wav-bestand met behulp van de volgende code voor het uitvoeren van deze taak, eerst hebben matlab:
[x,fs]=wavread('flex4.wav');
In dit geval flex4.wav is de titel van onze wav-bestand, de variabele x is de gegevenspunten in het bestand, en fs verwijst naar de bemonsteringsfrequentie.
Voor het uitvoeren van de specgram, typ de volgende code:
specgram [x(:.1), 256, fs];
De 256 komt overeen met de frequentie die de FFT op bij het analyseren van de gegevens is uitgevoerd. MATLAB is in principe het geluidsbestand hakken in brokken en het nemen van een FFT op elk stuk die The 256 vertelt hoe groot elke Brok moet zijn. De details hiervan zijn niet belangrijk, en 256 is een veilige waarde te gebruiken voor de meeste toepassingen.
Nu als u de programmacode uitvoert, ziet u een figuur knal opwaarts zoals te zien in de tweede foto. Hieruit is het gemakkelijk te zien dat de resonant frequentie komt met de rode piek in de bodem rechterbovenhoek van de figuur overeen. Dit is de berg die langste met betrekking tot tijd voortduurt.