Diff of /create_batch_scripts.py [000000] .. [6fe801]

Switch to side-by-side view

--- a
+++ b/create_batch_scripts.py
@@ -0,0 +1,74 @@
+from utils.elastix import excute_cmd
+from utils.logger import logger
+from utils.filemanager import extract_parameter
+
+if __name__ == '__main__':
+    # list down the parameters files to create a batch script for each
+    parameters_base_path = 'elastix-parameters'
+
+    single_parameters_to_script = [
+        # Par0003
+        f'{parameters_base_path}/Par0003/Par0003.affine.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R1-fg.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R1-ug.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R2-fg.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R2-ug.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R3-fg.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R3-ug.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R4-fg.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R4-ug.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R5-fg.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R6-fg.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R6-ug.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R7-fg.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R7-ug.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R8-fg.txt',
+        f'{parameters_base_path}/Par0003/Par0003.bs-R8-ug.txt',
+        
+        # Par0007
+        f'{parameters_base_path}/Par0007/Parameters.MI.Coarse.Bspline_tuned.txt',
+        f'{parameters_base_path}/Par0007/Parameters.MI.Fine.Bspline_tuned.txt',
+        f'{parameters_base_path}/Par0007/Parameters.MI.RP.Bspline_tuned.txt',
+
+        # Par0011
+        f'{parameters_base_path}/Par0011/Parameters.Par0011.affine.txt',
+        f'{parameters_base_path}/Par0011/Parameters.Par0011.bspline1_s.txt',
+        f'{parameters_base_path}/Par0011/Parameters.Par0011.bspline2_s.txt',
+
+        # Par0049
+        f'{parameters_base_path}/Par0049/Par0049_stdT-advanced.txt',
+        f'{parameters_base_path}/Par0049/Par0049_stdT2000itr.txt',
+        f'{parameters_base_path}/Par0049/Par0049_stdTL-advanced.txt',
+        f'{parameters_base_path}/Par0049/Par0049_stdTL.txt'
+    ]
+
+    # create a batch script for each parameters file
+    experiment_name = 'CLAHE+UseMasks3+SingleParamFile'
+    dataset_path    = 'dataset_processed/CLAHE/train'
+    print(f"Experiment name: {experiment_name}...")
+    print(f"Dataset path: {dataset_path}... \n")
+
+    # create a batch script for each parameters file
+    for idx, param_path in enumerate(single_parameters_to_script):
+        logger.info(f"[{idx+1}/{len(single_parameters_to_script)}] Creating batch script for {param_path}.")
+
+        # create the script
+        command = f'python create_script.py \
+            --dataset_path "{dataset_path}" \
+            --experiment_name "{experiment_name}" \
+            --parameters_path "{param_path}" \
+            --use_masks'
+        excute_cmd(command)
+
+        # run the script
+        # {param_path.split("/")[-1].replace(".txt", "")} was taken from create_script.py for a single command passed
+        command = f'call output/{experiment_name}/{param_path.split("/")[-1].replace(".txt", "")}/elastix_transformix.bat'
+        excute_cmd(command)
+
+        # evaluate the script
+        command = f'python evaluate_transformation.py \
+            --experiment_name "{experiment_name}" \
+            --reg_params_key "{param_path.split("/")[-1].replace(".txt", "")}" \
+            --dataset_path "{dataset_path}"\
+            --generate_report'
+        excute_cmd(command)