diff --git a/Q2main.py b/Q2main.py
index ee85e4a387eb1b9921a15cfcf0200c3ebb203e6e..479cc66ee610b459513763353e21336f8e1fc396 100644
--- a/Q2main.py
+++ b/Q2main.py
@@ -48,7 +48,7 @@ class ImageProcessor:
 
         return red_mask, yellow_mask, green_mask
 
-def detect_blobs(mask, min_sigma=5, max_sigma=50, num_sigma = 10, threshold=0.5):
+def detect_blobs(mask, min_sigma=5, max_sigma=30, num_sigma = 10, threshold=0.2):
     mask = mask.astype(np.float64) / 255.0 
     #print('mask made')
     blobs = blob_log(mask, min_sigma=min_sigma, max_sigma=max_sigma, num_sigma=num_sigma, threshold=threshold)
diff --git a/Q3main.py b/Q3main.py
index 485bda41b96796b4c2e74061e1b3a94d06faafe5..22a504a84a13f4898e6c4f810c5ded577ecff824 100644
--- a/Q3main.py
+++ b/Q3main.py
@@ -1,27 +1,35 @@
 import scipy.io
 
-# Load the .mat file
-mat_file = 'emg_data_walking.mat'
-data = scipy.io.loadmat(mat_file)
+def load_emg_data(file_path):
+    """
+    Laadt EMG-gegevens uit een .mat bestand en retourneert de kanaalnamen.
+    """
+    try:
+        mat_data = scipy.io.loadmat(file_path)
+        emg_data = mat_data.get('emg_data_walking')
+        
+        if emg_data is None:
+            raise KeyError("De verwachte variabele 'emg_data_walking' is niet in het bestand aanwezig.")
+        
+        channel_names = [ch[0] for ch in emg_data['data_headers'][0][0][0]]
+        
+        print("EMG-kanalen:")
+        for idx, name in enumerate(channel_names):
+            print(f"{idx}: {name}")
+        
+        return channel_names
+    except Exception as e:
+        print(f"Fout bij het laden van het EMG-bestand: {e}")
+        return []
 
-# Display the keys in the loaded structure
-print("Keys in the loaded .mat file:", data.keys())
+file_path = "emg_data_walking.mat"
+channel_names = load_emg_data(file_path)
 
-# Analyze the structure of the data (check what is inside the 'data' dictionary)
-# This will help you understand what variables are present
-for key, value in data.items():
-    print(f"Key: {key}, Type: {type(value)}")
-    print(f"Value shape: {value.shape if hasattr(value, 'shape') else 'N/A'}\n")
+# Gekozen spieren met validatie
+chosen_muscles = {
+    'rectus_femoris': 0,
+    'tibialis_anterior': 7
+}
 
-# Now, assuming the EMG channels are contained in a variable called 'emgChannels'
-# You will need to adjust the field name depending on the structure of your file
-if 'emgChannels' in data:
-    emg_channels = data['emgChannels']
-    
-    # If 'emgChannels' contains the names, extract and display them
-    if isinstance(emg_channels, np.ndarray) and emg_channels.ndim == 2:
-        print("\nEMG Channel Names:")
-        for channel in emg_channels.flatten():
-            print(channel)
-else:
-    print("\n'EMG channels' not found in the data. Please check the structure.")
\ No newline at end of file
+valid_muscles = {name: idx for name, idx in chosen_muscles.items() if idx < len(channel_names)}
+print(f"Gekozen spieren: {valid_muscles}")