--- a
+++ b/convert_mats.py
@@ -0,0 +1,30 @@
+from glob import glob
+from pathlib import Path
+
+import numpy as np
+import nibabel as nib
+from scipy.io import loadmat
+import os
+
+src_dir = '../Datasets/brain_ax_mat'
+dst_dir = '../Datasets/brain_ax'
+
+
+def extract_mask(masks):
+    real_masks = [_ for _ in masks[0] if _ != []]
+    assert len(real_masks) == 1
+    return real_masks[0]
+
+
+for src_scan_path in glob(os.path.join(src_dir, '*.mat')):
+    src_scan = loadmat(src_scan_path)
+
+    scan_dst_dir = os.path.join(dst_dir, Path(src_scan_path).stem)
+    try:
+        Path(scan_dst_dir).mkdir(exist_ok=True)
+        nib.save(nib.Nifti1Pair(extract_mask(src_scan['masks']), np.eye(4)),
+                 os.path.join(scan_dst_dir, 'truth.nii.gz'))
+        nib.save(nib.Nifti1Pair(src_scan['volume'], np.eye(4)),
+                 os.path.join(scan_dst_dir, 'volume.nii.gz'))
+    except AssertionError as e:
+        print(src_scan['UID'])