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)

Development Team

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