This repository provides an automated workflow for batch processing focus stacking tasks using Helicon Focus software. It also includes scripts to parse metadata from folder structures and save it for downstream processing.
-
Folder Validation:
- Python script identifies valid folders containing
.ARW
files. - It excludes invalid folders (e.g., those with
CaptureOne
subdirectories).
- Python script identifies valid folders containing
-
Batch Processing:
- A
.bat
script processes valid folders, generating.dng
stacked images. - Each
.dng
file is saved at the parent folder level with a robust name.
- A
-
Metadata Extraction:
- A second Python script extracts metadata from processed folders and saves it to a CSV file.
- Metadata includes:
- Collection object or photographer.
- Hash value (if available).
- Species name.
- View type (e.g., dorsal, lateral).
- Extra details (e.g., magnification).
|-- [INPUT_DIR]**.ARW |-- generate_valid_folders.py # Validates folders and generates folders_to_process.txt |-- process_folders_master.bat # Master batch script orchestrating Python and .bat scripts |-- process_valid_folders.bat # Processes folders using Helicon Focus |-- postprocess_file_metadata.py # Parses metadata from processed folders |-- folders_to_process.txt # List of valid folders (generated) |-- parsed_metadata.csv # Final metadata in tabular format (output)
Install "HeliconFocus" and the "Adobe DNG Converter" plugin from the [Helicon Soft website][https://www.heliconsoft.com/software-downloads/]
Activate the licence with a valid licence key for the software.
LICENSE_KEY=12345678 :: Replace with your activation key
HF_EXE="C:\Program Files\Helicon Software\Helicon Focus 8\HeliconFocus.exe" :: Define path to Helicon Focus executable and main directory containing subfolders
%HF_EXE% --activationCode %LICENSE_KEY% --register-global
Step 2: generate valid folders to batch process them for Focus stacking within the .ARW images in those folders.
Run the following command to generate a folders_to_process.txt
file within the [INPUT_DIR] :
process_folders_master.bat -d [INPUT_DIR]
[INPUT_DIR]: Root directory containing subfolders with .ARW files.
Helicon Focus processes the folders listed in folders_to_process.txt. Output .dng files are saved in the parent folder.
Step 3: Extract Metadata (Unfinished) Run the postprocess_file_metadata.py script to parse folder metadata:
python postprocess_file_metadata.py