If you see this, something is wrong
First published on Friday, Oct 30, 2026 and last modified on Friday, Oct 30, 2026 by François Chaplais.
Medical images from computed tomography, magnetic resonance, and positron emission tomography contain far more information than a radiologist can extract with the naked eye. Radiomics extracts quantitative features describing shape, texture and intensity patterns within a region of interest (e.g., a tumor) that can then be used to develop machine learning models for predicting clinical outcomes [1].
However, identifying the most predictive features for a given clinical problem remains a challenge, as large feature sets increase the risk of overfitting and reduce the interpretability of the model, particularly in small datasets [2]. Addressing these challenges often requires programming expertise and familiarity with machine learning methods, limiting the accessibility of radiomics for researchers without specialized technical backgrounds.
To improve the accessibility of radiomics, we present MEDiml (www.mediml.app ), which stands for Medical Image Analysis with Machine Learning. MEDiml is an open-source software available both as a Python package (MEDiml-pkg) and as a desktop application (MEDiml-app). MEDiml covers the full radiomics workflow, including image processing, feature extraction, model training and performance evaluation.
MEDiml is built around complexity minimization [3]. Features are grouped into complexity levels according to how much computation they require, from shape and size, to intensity, to texture, to features from filtered images. Simpler models are less prone to overfitting in small datasets, are more generalizable, and are easier for clinicians to interpret [4]. For this purpose, MEDiml trains a model at each level and compares the levels with statistical tests, such that the simplest level with sufficient predictive performance is retained. Moreover, feature extraction in MEDiml follows international standards for radiomics extraction, set by the Image Biomarker Standardization Initiative (IBSI) guidelines [5, 6], making feature extraction reproducible across studies.
Finally, clinical researchers without programming experience can design and execute radiomics experiments through a graphical interface, while other users can directly interact with the Python package or export interface-generated workflows as executable Python code.
Radiomics has a well-documented reproducibility problem, as feature values can shift substantially depending on image preprocessing choices, discretization parameters, and whether the software follows standardized definitions. A study by Zwanenburg et al. [7] found that only a subset of radiomic features remained robust under image perturbations such as noise addition, rotation and contour variation. Although clear guidelines and standards now exist, the IBSI being the most significant, clinical translation remains poor [8, 9].
The high dimensionality of radiomic feature sets is another significant challenge. Feature sets can exceed 10,000 values per scan, especially when image filters are applied [10]. However, medical imaging datasets are rarely large enough to handle the required ratio of features to patients needed to prevent overfitting in specialized predictive modeling tasks [2]. Furthermore, the predictive value of radiomic features is highly dependent on the clinical context. For example, in lung cancer survival prediction, tumor volume alone has been shown to carry most of the prognostic signal, making texture features redundant [9], whereas wavelet-transformed texture features were able to distinguish tissue subtypes in other applications [11].
Finally, the successful application of radiomics requires bridging the expertise of interdisciplinary teams: clinical researchers who understand the medical context, and computer scientists who can implement the analytical workflows. Nonetheless, tools designed primarily for one group may not meet the needs of the other.
Several radiomics tools exist, ranging from open-source feature extraction libraries to graphical platforms. Their coverage of feature extraction, graphical interaction and predictive modeling varies, as does their reported coverage of the IBSI recommendations (see Table 1 for a comparison with MEDiml).
| Package/Software | Type | Language | IBSI compliance [5, 6] | Own radiomics engine | Machine learning integration | Local execution | Code generation | Open-source |
| PyRadiomics [12] | Library | Python | Partial | ✓ | ✗ | ✓ | N/A | ✓ |
| 3D Slicer (SlicerRadiomics) [13, 12] | GUI (Plugin) | Python | Via PyRadiomics | ✗ | ✗ | ✓ | ✗ | ✓ |
| QuantImage v2 [14] | GUI (web) | Python, JavaScript | Via PyRadiomics | ✗ | ✓ | ✗ | ✗ | ✓ |
| MIRP [15] | Library | Python | IBSI 1 & 2 | ✓ | ✗ | ✓ | N/A | ✓ |
| LIFEx [16] | GUI (Freeware) | Java | Partial | ✗ | ✓ | ✓ | ✗ | Free / Closed Source |
| CERR [17] | Library and GUI | MATLAB | IBSI 1 & 2 | ✓ | Partial | ✓ | ✗ | ✓ |
| MITK [18] | Library and GUI (desktop app) | C++ | Partial | ✓ | Partial | ✓ | ✗ | ✓ |
| PySERA [19] | Library | Python | IBSI 1 & 2 | ✓ | ✓ | ✓ | N/A | ✓ |
| MEDiml [3] | Library and GUI (desktop app) | Python, JavaScript | IBSI 1 & 2 | ✓ | ✓ | ✓ | ✓ | ✓ |
MEDiml’s specific contribution is the combination of IBSI compliance, a zero-code graphical interface, a Python package, integrated machine learning tools, and a code-generation feature that connects the graphical and programmatic options. In many of the reviewed tools, predictive modeling is either absent or limited to isolated functionalities, requiring users to export features to external software for feature selection, model development, or statistical analysis. Moreover, none of these tools connects graphical and programmatic interfaces through code generation.
A key architectural characteristic of MEDiml is that the graphical interface and the Python package run on the same underlying computation, rather than being independent products, to ensure methodological consistency and reproducibility across components.
The default radiomic workflow in MEDiml includes the following steps: feature extraction, feature cleaning to remove constant, quasi-constant, and duplicate features, as well as feature normalization using ComBat [20] to mitigate non-biological batch effects arising from differences in scanner manufacturers, acquisition protocols, or reconstruction settings. Feature selection is then performed using the False Discovery Avoidance (FDA) approach [21] to identify the smallest subset of non-redundant predictive features associated to the clinical outcome. The selected features are subsequently used to train machine learning models using the PyCaret framework [22], with an integrated analysis mode that explains predictive decisions using individual feature importance driving the model’s performance. This workflow is depicted in Figure 1, Block 2.
The MEDiml Python package (MEDiml-pkg) provides the computational framework used by both programmatic analyses and the graphical application. It is compliant with IBSI 1 and IBSI 2 [5, 6], builds upon widely adopted scientific Python libraries, including NumPy [24], Pandas [25] and PyCaret [22], and uses a modular architecture where each stage of the workflow is implemented as an independent component (Figure 1, Block 3, provides a summary of the architecture):
The MEDiml desktop application (MEDiml-app) is a zero-code graphical interface in which every action invokes the same underlying Python package methods (Figure 2A). The application is built using Electron [36], which packages a web-based interface as a native desktop application. Its drag-and-drop, node-based workflow editor is implemented using React Flow [37] (https://reactflow.dev ), a package for constructing graph-based editors, and is organized around three hierarchical concepts. A node represents a specific processing step, such as data loading, feature cleaning, or model training, with configurable parameters and well-defined inputs and outputs. A pipeline is an ordered sequence of connected nodes, making the structure of the experiment explicit. A scene contains one or more pipelines that can be executed and compared simultaneously, and is the unit for saving, sharing and reproducing analyses.
The application exposes the package through four modules that follow the stages of a radiomics study:
The full MEDiml architecture is thoroughly explained in a published reference manual [38].
Since both interfaces rely on the same computational engine, graphical and programmatic workflows are functionally equivalent: a graphically configured pipeline, including its feature extraction settings, machine learning models and cross-validation parameters, is executed by the Python package (see Figure 1, Block 1). Users can therefore export any pipeline directly from the interface as executable Python code in a Jupyter Notebook [23] format, with each node and its configuration converted into code (see Figure 2B).
MEDiml has been applied in two radiomics studies [3, 39], in which the software handled image processing, feature extraction, predictive modeling, and analyses of results. In the first study, MEDiml was applied to five cancer imaging datasets, totaling 2,104 scans; the software successfully identified, for each task, the simplest complexity level achieving optimal predictive performance, focusing on less complex models. The associated results are presented in Table 2.
| Cohort | Clinical Endpoint |
AUC [Confidence Interval] |
Sensitivity | Specificity |
Optimal Feature Type |
| Non-small cell lung cancer (NSCLC) | Histological subtype | 0.76 [0.71, 0.80] | 0.73 | 0.71 | Intensity features |
| Low-grade glioma | IDH1 mutation | 0.68 [0.60, 0.75] | 0.68 | 0.69 | Morphological features |
| Meningioma | Pathological tumor grade | 0.65 [0.59, 0.72] | 0.64 | 0.62 | Morphological features |
| Renal cell carcinoma (RCC) - CECT | Subtype discrimination | 0.82 [0.76, 0.88] | 0.77 | 0.78 | Intensity features |
| Renal cell carcinoma - MRI | Subtype discrimination | 0.72 [0.68, 0.77] | 0.71 | 0.65 | Texture features |
These studies demonstrated the utility of MEDiml’s complexity-minimization framework, emphasizing simpler and interpretable models. For example, in MRI-based RCC subtype classification, texture features were selected as the optimal complexity level (Figure 3A), and the Explanation Tree traced their contribution down to individual features (Figure 3B).
MEDiml started as a tool primarily to support the core developer’s own research, but it has since expanded to serve interdisciplinary teams. The package has been downloaded over 500 times from the Python Package Index (PyPI) to this date, reflecting a growing user base beyond its origins.
To support users, all information about the software is available on the official website: https://mediml.app . Overall, MEDiml provides the following set of resources:
MEDiml is maintained and actively improved by the MEDomicsLab research group (https://www.medomicslab.com ) at McGill University.
We thank Guillaume Blain, Sarah Denis, and Andréanne Allaire for their valuable contributions to the development and enhancement of MEDiml’s user interface. We also thank Corentin Gauthier, Clarisse Cheng, and Anthonin Falk for their valuable contributions to the development of the MEDiml package. Finally, we gratefully acknowledge Martin Lepage for co-supervising a significant portion of this work [3].
Martin Vallières acknowledges the support of Unité de soutien au Système de Santé Apprenant (SSA) Québec.
[1] Radiomics: Extracting more information from medical images using advanced feature analysis European Journal of Cancer 2012 48 4 441–446 mar 10.1016/j.ejca.2011.11.036
[2] Special issue on small data analytics International Journal of Machine Learning and Cybernetics 2023 14 1 1–2 jan 10.1007/s13042-022-01699-0
[3] Unraveling Radiomics Complexity: Strategies for Optimal Simplicity in Predictive Modeling arXiv preprint arXiv:2407.04888 2024 jul 10.48550/arXiv.2407.04888
[4] Externally validated yet undertrained: sample size deficits in machine learning-based radiomics European Radiology 2026 36 9 6950–6962 sep 10.1007/s00330-026-12543-2
[5] The Image Biomarker Standardization Initiative: Standardized Quantitative Radiomics for High-Throughput Image-based Phenotyping Radiology 2020 295 2 328–338 may Publisher: Radiological Society of North America 10.1148/radiol.2020191145
[6] The Image Biomarker Standardization Initiative: Standardized Convolutional Filters for Reproducible Radiomics and Enhanced Clinical Insights Radiology 2024 310 2 e231319 feb Publisher: Radiological Society of North America 10.1148/radiol.231319
[7] Assessing robustness of radiomic features by image perturbation Scientific Reports 2019 9 1 614 jan 10.1038/s41598-018-36938-4
[8] Radiomics in medical imaging—“how-to” guide and critical reflection Insights into Imaging 2020 11 1 91 dec 10.1186/s13244-020-00887-2
[9] Vulnerabilities of radiomic signature development: The need for safeguards Radiotherapy and Oncology 2019 130 2–9 jan 10.1016/j.radonc.2018.10.027
[10] A radiomics model from joint FDG-PET and MRI texture features for the prediction of lung metastases in soft-tissue sarcomas of the extremities Physics in Medicine & Biology 2015 60 14 5471–5496 jun Publisher: IOP Publishing 10.1088/0031-9155/60/14/5471
[11] Lung Tissue Classification Using Wavelet Frames 2007 29th Annual International Conference of the IEEE Engineering in Medicine and Biology Society 2007 6259–6262 IEEE ISSN: 1557-170X 10.1109/IEMBS.2007.4353786
[12] Computational Radiomics System to Decode the Radiographic Phenotype Cancer Research 2017 77 21 e104–e107 nov 10.1158/0008-5472.CAN-17-0339
[13] 3D Magnetic Resonance Imaging 2012 30 9 1323–1341 nov 10.1016/j.mri.2012.05.001
[14] QuantImage European Radiology Experimental 2023 7 1 16 mar 10.1186/s41747-023-00326-z
[15] MIRP Journal of Open Source Software 2024 9 99 6413 jul 10.21105/joss.06413
[16] LIFEx Cancer Research 2018 78 16 4786–4789 aug 10.1158/0008-5472.CAN-18-0125
[17] CERR Medical Physics 2003 30 5 979–985 apr 10.1118/1.1568978
[18] The Medical Imaging Interaction Toolkit Medical Image Analysis 2005 9 6 594–604 dec 10.1016/j.media.2005.04.005
[19] {{PySERA}: {Open}-source standardized python library for automated Computer Methods and Programs in Biomedicine 2026 284 109463 sep 10.1016/j.cmpb.2026.109463
[20] Improved generalized ComBat methods for harmonization of radiomic features Scientific Reports 2022 12 1 19009 nov Number: 1 Publisher: Nature Publishing Group 10.1038/s41598-022-23328-0
[21] An Empirical Approach for Avoiding False Discoveries When Applying High-Dimensional Radiomics to Small Datasets IEEE Transactions on Radiation and Plasma Medical Sciences 2019 3 2 201–209 mar Conference Name: IEEE Transactions on Radiation and Plasma Medical Sciences 10.1109/TRPMS.2018.2880617
[22] {{PyCaret}: {An} open-source 2024
[23] Jupyter Notebooks – a publishing format for reproducible computational workflows {Positioning and {Power} in {Academic} {Publishing}: {Players} IOS Press 2016 Loizides, Fernando and Schmidt, Birgit 87–90 Amsterdam 10.3233/978-1-61499-649-1-87
[24] Array programming with NumPy Nature 2020 585 7825 357–362 sep 10.1038/s41586-020-2649-2
[25] pandas-dev/pandas: Pandas feb 2020 10.5281/zenodo.3509134
[26] Gray Level Co-Occurrence Matrices: Generalisation and Some New Features arXiv preprint arXiv:1205.4831 2012 may 10.48550/arXiv.1205.4831
[27] GPU ACM 2007 6 ACM 10.1145/1281500.1281647
[28] PyCUDA Parallel Computing 2012 38 3 157–174 mar 10.1016/j.parco.2011.09.001
[29] Ray: A Distributed Framework for Emerging AI Applications 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18) 2018 561–577 USENIX Association
[30] A survey of cross-validation procedures for model selection Statistics Surveys 2010 4 40–79 jan 10.1214/09-SS054
[31] Comparing the Areas under Two or More Correlated Receiver Operating Characteristic Curves: A Nonparametric Approach Biometrics 1988 44 3 837–845 sep 10.2307/2531595
[32] Fast Implementation of DeLong’s Algorithm for Comparing the Areas Under Correlated Receiver Operating Characteristic Curves IEEE Signal Processing Letters 2014 21 11 1389–1393 nov Conference Name: IEEE Signal Processing Letters 10.1109/LSP.2014.2337313
[33] Individual Comparisons by Ranking Methods Biometrics Bulletin 1945 1 6 80–83 10.2307/3001968
[34] The Probable Error of a Mean Biometrika 1908 6 1 1–25 10.2307/2331554
[35] Inference for the Generalization Error Machine Learning 2003 52 3 239–281 10.1023/A:1024068626366
[36] {Electron: {Build} cross-platform desktop apps with {JavaScript} 2026
[37] React Flow: A customizable React component for building node-based editors and interactive diagrams 2026
[38] Reference Manual of MEDiml oct 2026 arXiv:2610.29666 [cs.SE] 10.48550/arXiv.2610.29666
[39] Optimizing renal mass histology prediction with artificial intelligence using handcrafted radiomics World Journal of Urology 2026 44 1 200 feb 10.1007/s00345-026-06296-2
[40] An introduction to ROC analysis Pattern Recognition Letters 2006 27 8 861–874 jun 10.1016/j.patrec.2005.10.010