OCTooL is a comprehensive software application designed for the export, analysis, and quantification of Optical Coherence Tomography (OCT) images. Developed specifically for dental and medical research applications, OCTooL provides researchers and clinicians with powerful tools to extract quantitative data from OCT imaging studies.
- OCTooL
- Batch Processing: Efficiently process large datasets of OCT images
- Quantitative Analysis: Extract precise measurements from tissue structures
- Interactive Annotation: Manual annotation tools with customizable data types
- Advanced Algorithms: Specialized lesion depth detection algorithms
- Multi-Format RexView: RexView to PNG or TIFF formats with customizable parameters
- Data Integrity: Automated workflows with comprehensive data persistence
- Research-Ready Output: CSV and JSON exports compatible with statistical software
- Operating System: Windows 10/11, macOS 10.15+, or Linux
- Python Version: Python 3.14 or higher
- Memory: Minimum 8GB RAM (16GB recommended for large datasets)
- Storage: At least 2GB free space for installation and temporary files
- Display: Minimum 1920x1080 resolution for optimal interface experience
Install Python 3.14 or higher from python.org.
- Clone or download this repository
- Navigate to the project directory
- Install required packages:
pip install -r requirements.txtpython OCTooL.pyOCTooL is organized into three main functional sections, each designed for specific aspects of OCT image analysis:
The RexView section focuses on data preparation and batch processing capabilities. This module is the primary tool for converting OCT raw data files into standard image formats (PNG or TIFF).
Key Features:
- Batch File Processing: Import and organize large collections of OCT files from folders and subfolders
- Global Processing Parameters: Configure export format, averaging methods, aspect ratio correction, and scale bar preferences
- Custom Settings Per File: Fine-tune slice ranges, dynamic range (dB), dispersion compensation, and refractive index for individual datasets
- Preview Capability: Preview export results before processing entire batches
- Flexible RexView Options: Choose between PNG (smaller files) or TIFF (maximum quality) formats
- Advanced Processing: Apply apodization windows, local filtering, and coherent/incoherent averaging
- Multi-View Support: RexView XZ, YZ, or XY slice orientations
Primary Use Case: Preparing raw OCT data for analysis and converting proprietary OCT formats to standard image files for further processing.
The AnnoLyze section provides comprehensive tools for detailed image analysis and manual annotation. This module enables researchers to perform detailed measurements with full manual oversight and quality control.
Key Features:
- Interactive Image Viewer: Navigate through image stacks with zoom, pan, and overlay controls
- Flexible Annotation Tools: Point-based annotations with line or spline interpolation modes
- Custom Data Columns: Define unlimited custom columns with 8 different data types (Continuous, Percentage, Boolean, Categorical, Ordinal, Integer, Float, Text/String)
- Keyboard Shortcuts: Assign unique key bindings to each column for rapid data entry
- Visual Organization: Color-code columns and annotations for easy identification
- Comprehensive Undo System: Full undo history with selective multi-action undo capability (Ctrl+Z, Ctrl+U)
- Metadata Management: Track operator, measurement session, and imaging system information
- Auto-Save: Automatic data persistence 1.5 seconds after each action
- Results RexView: RexView to CSV format compatible with Excel, R, Python, and statistical software
Primary Use Case: Detailed analysis of individual specimens requiring manual measurements, feature annotation, and quality control with customizable data collection protocols.
The CarlQuant section implements advanced quantitative analysis algorithms specifically developed for OCT lesion depth analysis. This module offers high-throughput automated analysis using validated algorithms.
Key Features:
- Automated Lesion Depth Detection: Four detection algorithms (Combined, Knee Point, Inflection, Shoulder) with intelligent method selection
- Region-of-Interest Extraction: Define sound and lesion tissue regions with configurable region counts (2-10 regions)
- Surface Detection: Automatic tissue surface detection with AIR region-based thresholding
- Batch Processing: Process multiple specimens with consistent parameters in a single workflow
- Interactive A-Scan Viewer: Detailed intensity profile visualization with multiple detection method overlays
- Cavitation Detection: Automatic detection of surface cavitation and material loss
- Multi-Session Analysis: Perform multiple analyses with different parameters without data loss
- Memory Optimization: Efficient memory management for processing hundreds of specimens
- Comprehensive Output: Median intensity values per region, mean lesion depth, and cavitation status
Primary Use Case: High-throughput quantitative analysis of lesion depth and tissue characteristics using validated algorithms for research studies requiring standardized, reproducible measurements.
It is recommended to use a conda environment for development. First, install Miniconda if you haven't already.
# Create conda environment with Python 3.14
conda create -n octdev python=3.14
# Activate conda environment
conda activate octdev
# Install dependencies
pip install -r requirements.txtYou can use any Python IDE or text editor for development. Popular choices include:
- Visual Studio Code with Python extension
- PyCharm
- Jupyter Notebook (for testing individual components)
- Sublime Text or Atom
OCTooL uses PyInstaller to create standalone executables. The build configuration is managed through a spec file.
pip install pyinstallerThe application uses a spec file (OCTooL.spec) that contains all build configurations, including:
- Icon file location (
icons/thumb_6.ico) - Data files (icons, fonts, documentation)
- Build options and optimizations
To build the application:
pyinstaller OCTooL.specThe compiled application will be created in the dist/OCTooL/ directory.
During development, you may want to see console output for debugging. To enable the console window:
- Open
OCTooL.spec - Find the line
console=Falsein theEXEsection - Change it to
console=True - Rebuild with
pyinstaller OCTooL.spec
This will open a terminal window alongside the GUI, displaying error messages and debug output.
The application icon should be in .ico format with multiple resolutions (16, 32, 64, 128, 256 pixels). You can:
- Use the included
png_to_ico_script.pyto convert PNG images to ICO format - Use online tools like RW Designer
Place the icon file in the icons/ folder and reference it in the spec file.
After building:
- The
dist/OCTooL/folder contains the complete application - All required files (icons, fonts, documentation) are automatically included via the spec file
- Distribute the entire
OCTooLfolder to users
Update Tip: If you make changes without adding new dependencies, you can simply replace the OCTooL.exe file in an existing installation to update the software.
Developer: Tobias Meißner
Email: tobias.meissner@medizin.uni-leipzig.de
Institution: University of Leipzig, Department of Cariology, Endodontology and Periodontology
For bug reports, feature requests, or questions, please contact via email or open an issue on GitHub.
This software is developed for academic and research purposes. Please contact the developer for licensing information and usage terms.
OCTooL was developed at the University of Leipzig for dental and medical OCT research applications. Special thanks to all contributors and researchers who provided feedback during development.
For detailed user instructions, please refer to the complete manual:
- HTML Documentation:
HTML_docs/OCTooL_MANUAL.html - Source Documentation:
HTML_docs/OCTooL_MANUAL.qmd
The manual includes comprehensive guides for each section, keyboard shortcuts, troubleshooting tips, and example workflows.


