From 5a77ce098c05a58c8ee550253c92e28981cb3031 Mon Sep 17 00:00:00 2001
From: LexvanGastel <l.vangastel@studen.utwente.nl>
Date: Tue, 1 Apr 2025 13:59:28 +0200
Subject: [PATCH] vraag 10

---
 main.py | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/main.py b/main.py
index f9655e4..184dcb8 100644
--- a/main.py
+++ b/main.py
@@ -81,6 +81,13 @@ def info_emg_data(file_path):
 #file_path = "emg_data_walking.mat"
 #info_emg_data(file_path)
 
+def compute_fft(signal, sampling_rate):
+    N = len(signal)
+    fft_values = np.fft.fft(signal)
+    fft_magnitude = np.abs(fft_values[:N//2])
+    freq = np.fft.fftfreq(N, d=1/sampling_rate)[:N//2]
+    return freq, fft_magnitude
+
 def plot_emg_data(file_path):
     sampling_rate, data, num_samples, duration = info_emg_data(file_path)
 
@@ -89,6 +96,9 @@ def plot_emg_data(file_path):
     channel_rectus_femoris = data[chosen_muscles['rectus_fomoris'], :]
     channel_tibialis_anterior = data[chosen_muscles['tibialis_anterior'], :]
 
+    freq_rf, fft_rf = compute_fft(channel_rectus_femoris, sampling_rate)
+    freq_ta, fft_ta = compute_fft(channel_tibialis_anterior, sampling_rate)
+
     plt.figure(figsize=(10,6))
 
     plt.subplot(2, 1, 1)
@@ -96,12 +106,29 @@ def plot_emg_data(file_path):
     plt.title('EMG Data - Rectus femoris')
     plt.xlabel('Time [Seconds]')
     plt.ylabel('Amplitude')
+    plt.legend()
 
     plt.subplot(2, 1, 2)
     plt.plot(time_vector, channel_tibialis_anterior)
     plt.title('EMG Data - Tibialis Anterior')
     plt.xlabel('Time [seconds]')
     plt.ylabel('Amplitude')
+    plt.legend()
+
+    plt.tight_layout()
+    plt.show()
+
+    plt.subplot(2, 2, 3)
+    plt.plot(freq_rf, fft_rf)
+    plt.title('Power Spectrum - Rectus Femoris')
+    plt.xlabel('Frequency [Hz]')
+    plt.ylabel('Magnitude')
+
+    plt.subplot(2, 2, 4)
+    plt.plot(freq_ta, fft_ta)
+    plt.title('Power Spectrum - Tibialis Anterior')
+    plt.xlabel('Frequency [Hz]')
+    plt.ylabel('Magnitude')
 
     plt.tight_layout()
     plt.show()
@@ -111,3 +138,5 @@ plot_emg_data(file_path)
 
 
 
+
+
-- 
GitLab