Advanced Radiomics Feature Extraction

An open-source Julia library for extracting quantitative features from medical images with precision and efficiency.

Welcome to Radiomics.jl

Radiomics.jl is a comprehensive Julia library designed for medical imaging researchers and clinicians. Our tool enables the extraction of high-throughput quantitative features from radiological images, supporting advanced research in precision medicine and computer-aided diagnosis.

Navigate through our documentation using the sidebar to explore detailed information about feature extraction methods, installation procedures, and implementation examples.

Why choose Radiomics.jl for your project

  • Full IBSI Compliance: Every feature is calculated according to IBSI 1 - Phase 1 standards—our unit tests are strictly validated against IBSI sample images (go ahead, take a look!).
  • User-Friendly API: Simplify your workflow by extracting features from multiple labels with a single call. Handling 2D slices or multiple planes/slices "in one shot" has never been easier.
  • First-class 2D support: 2D analysis is treated with the same priority as 3D; computing features for a 2D matrix is just as seamless as the 3D case.
  • Deep Insights: While other radiomics libraries focus only on final scalar values, Radiomics.jl also lets you easily get the raw matrices used under the hood for texture feature calculations.
  • No silent failures: If something looks suspicious or ambiguous—like disconnected segmentation islands or oversized binning—the library raises clear warnings.
  • Native Multi-threading: The engine is engineered from the ground up to take full advantage of multi-threaded performance.
  • Cross-language ready: Radiomics.jl delivers a frictionless experience across languages, allowing Python, C++, R, and many other language developers to call Julia’s power with ease.

Quick Start Example

Once installed, you can begin extracting radiomic features with just a few lines of code. The following example demonstrates feature extraction using sample data included with the library:

using NIfTI
using Radiomics

# Load medical image and segmentation mask
ct = niread("Path/to/CT.nii.gz")
mask = niread("Path/to/Mask.nii.gz")

# Extract voxel spacing from image header
spacing = [ct.header.pixdim[2], ct.header.pixdim[3], ct.header.pixdim[4]]

# Extract radiomic features
radiomic_features = Radiomics.extract_radiomic_features(ct.raw, mask.raw, spacing)

Radiomics.jl is a research software package and is not a medical device. Not intended for diagnostic, therapeutic, or clinical use. Results must not be used to inform clinical decisions.

Development Team

Meet the experts behind Radiomics.jl, dedicated to advancing medical image analysis through innovative technology.