BioOCT
BioOCT is a napari plugin for quantitative analysis of 3D optical coherence tomography (OCT) images, built around the Thorlabs .oct file format. It is suited for biofilm and some scaling variants.
It bundles a domain-specific set of processing functions, interactive widgets, and a reproducible batch-processing pipeline into a toolbox — designed for OCT/biofilm researchers without requiring programming expertise.
The main use cases are:
- segmenting biofilm or scaling from surrounding fixtures (substratum, optical window, feed spacer, bulk medium) in OCT image stacks with a (near-)planar substratum geometry
- recording an image processing pipeline once on a representative image, then reproducibly replaying it on a single image or across a full folder/timeseries of
.octfiles - exporting raw and segmented data with preserved voxel geometry and physical spacing, suitable as training data for volumetric ML segmentation models
Features
- Dedicated reader for Thorlabs
.octfiles - Filtering (Median, Gaussian, Sobel) and contrast enhancement (gamma, percentile clipping, CLAHE)
- Substratum/window detection with gap interpolation, ROI selection, and reflection/area-masking tools
- Thresholding via multiple standard algorithms (Otsu, Yen, Li, Mean, Isodata, Triangle, or manual value) with live preview
- Post-processing (small-object removal) and quantitative evaluation: height maps, biovolume maps, and growth/roughness/porosity metrics export
- Export to TIFF and NIfTI with voxel spacing and affine metadata preserved
- Pipeline Manager: records processing steps as human-readable YAML, with single-layer and batch-folder replay for reproducible analysis
Getting Started
-
Installation Guide (Windows) Setup instructions for users.
-
Usage Guide Overview and guidance to plugin usage and napari.
-
Contribute Best practice workflow for contributing to the project.
Sample Data & Example Pipelines
Three example datasets covering structurally distinct image classes are available via
File > Open Sample > BioOCT
directly in napari, or on Zenodo (DOI: doi.org/10.5281/zenodo.20758173):
- Membrane with Spacer: membrane substratum with embedded feed spacer fixtures
- Rough Electrode: electrode substratum with rough surface topology
- Smooth Electrode with Shadowing: planar electrode substratum with signal shadowing caused by thick biofilm growth
Matching pipeline YAML files for each image class are also available in the above Zenodo dataset, or via the repository in docs/examples/, demonstrating a complete processing workflow from raw .oct to segmentation and metrics export. Load them via the Pipeline Manager widget (Load → Replay Single).
License
MIT License - see LICENSE for details.
Metadata
Release files for bio_oct 0.4.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| bio_oct-0.4.2.tar.gz | 360.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bio_oct-0.4.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 394.2 kB
Release files / bio_oct-0.4.2.tar.gz
| Download URL | bio_oct-0.4.2.tar.gz |
|---|---|
| Size | 360.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1efeb257c9bb92493918be9ecd28a5ad8558163f00756a2172ffd9a1bd4b9bb1
|
|
BLAKE2b-256 checksum How to use checksums |
5dee947fb73702e1344d9cc5b141c28fbedb843fc58d50d18c1047855f664667
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / bio_oct-0.4.2-py3-none-any.whl
| Download URL | bio_oct-0.4.2-py3-none-any.whl |
|---|---|
| Size | 33.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a6dace8dcc284b2f57b12c9c8bf43e8c15101a9e68c9d494693d2cec2e580887
|
|
BLAKE2b-256 checksum How to use checksums |
0294d294f928bfcf9b7830df5b081384e39faab4cb5c61036aa2efbfe48f3a72
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|