{"id":13745439,"url":"https://github.com/frankkramer-lab/MIScnn","last_synced_at":"2025-05-09T06:30:49.506Z","repository":{"id":40301907,"uuid":"185819852","full_name":"frankkramer-lab/MIScnn","owner":"frankkramer-lab","description":"A framework for Medical Image Segmentation with Convolutional Neural Networks and Deep Learning","archived":false,"fork":false,"pushed_at":"2023-05-10T14:52:31.000Z","size":139503,"stargazers_count":413,"open_issues_count":59,"forks_count":116,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-05-04T00:28:54.634Z","etag":null,"topics":["clinical-decision-support","computer-vision","convolutional-neural-networks","deep-learning","framework","healthcare-imaging","medical-image-analysis","medical-image-processing","medical-image-segmentation","medical-imaging","neural-network","pip","segmentation","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/frankkramer-lab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-05-09T14:53:48.000Z","updated_at":"2025-04-24T11:04:08.000Z","dependencies_parsed_at":"2022-07-16T03:00:44.767Z","dependency_job_id":"dab167db-d59a-494d-aa4c-809a5bab4eaa","html_url":"https://github.com/frankkramer-lab/MIScnn","commit_stats":{"total_commits":511,"total_committers":9,"mean_commits":56.77777777777778,"dds":"0.16829745596868884","last_synced_commit":"d715af62839b7577e61a6a2ce7fc5ff4a21bcc58"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frankkramer-lab%2FMIScnn","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frankkramer-lab%2FMIScnn/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frankkramer-lab%2FMIScnn/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frankkramer-lab%2FMIScnn/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/frankkramer-lab","download_url":"https://codeload.github.com/frankkramer-lab/MIScnn/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253205853,"owners_count":21871158,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clinical-decision-support","computer-vision","convolutional-neural-networks","deep-learning","framework","healthcare-imaging","medical-image-analysis","medical-image-processing","medical-image-segmentation","medical-imaging","neural-network","pip","segmentation","tensorflow"],"created_at":"2024-08-03T06:00:18.460Z","updated_at":"2025-05-09T06:30:44.489Z","avatar_url":"https://github.com/frankkramer-lab.png","language":"Python","funding_links":[],"categories":["Segmentation"],"sub_categories":[],"readme":"![MIScnn workflow](docs/logo_long.png)\n\n[![shield_python](https://img.shields.io/pypi/pyversions/miscnn?style=flat-square)](https://www.python.org/)\n[![shield_build](https://img.shields.io/travis/frankkramer-lab/miscnn/master?style=flat-square)](https://travis-ci.org/github/frankkramer-lab/MIScnn)\n[![shield_coverage](https://img.shields.io/codecov/c/gh/frankkramer-lab/miscnn?style=flat-square)](https://codecov.io/gh/frankkramer-lab/miscnn)\n[![shield_pypi_version](https://img.shields.io/pypi/v/miscnn?style=flat-square)](https://pypi.org/project/miscnn/)\n[![shield_pypi_downloads](https://img.shields.io/pypi/dm/miscnn?style=flat-square)](https://pypistats.org/packages/miscnn)\n[![shield_license](https://img.shields.io/github/license/frankkramer-lab/miscnn?style=flat-square)](https://www.gnu.org/licenses/gpl-3.0.en.html)\n\nThe open-source Python library MIScnn is an intuitive API allowing fast setup of medical image segmentation pipelines with state-of-the-art convolutional neural network and deep learning models in just a few lines of code.\n\n**MIScnn provides several core features:**\n- 2D/3D medical image segmentation for binary and multi-class problems\n- Data I/O, preprocessing and data augmentation for biomedical images\n- Patch-wise and full image analysis\n- State-of-the-art deep learning model and metric library\n- Intuitive and fast model utilization (training, prediction)\n- Multiple automatic evaluation techniques (e.g. cross-validation)\n- Custom model, data I/O, pre-/postprocessing and metric support\n- Based on Keras with Tensorflow as backend\n\n![MIScnn workflow](docs/MIScnn.pipeline.png)\n\n## Resources\n\n- MIScnn Documentation: [GitHub wiki - Home](https://github.com/frankkramer-lab/MIScnn/wiki)\n- MIScnn Tutorials: [Overview of Tutorials](https://github.com/frankkramer-lab/MIScnn/wiki/Tutorials)\n- MIScnn Examples: [Overview of Use Cases and Examples](https://github.com/frankkramer-lab/MIScnn/wiki/Examples)\n- MIScnn Development Tracker: [GitHub project - MIScnn Development](https://github.com/frankkramer-lab/MIScnn/projects/1)\n- MIScnn on GitHub: [GitHub - frankkramer-lab/MIScnn](https://github.com/frankkramer-lab/MIScnn)\n- MIScnn on Zenodo: [Zenodo - MIScnn](https://doi.org/10.5281/zenodo.3970863)\n- MIScnn on PyPI: [PyPI - miscnn](https://pypi.org/project/miscnn/)\n\n## Getting started: 60 seconds to a MIS pipeline\n\n```python\n# Import the MIScnn module\nimport miscnn\n\n# Create a Data I/O interface for kidney tumor CT scans in NIfTI format\nfrom miscnn.data_loading.interfaces import NIFTI_interface\ninterface = NIFTI_interface(pattern=\"case_000[0-9]*\", channels=1, classes=3)\n\n# Initialize data path and create the Data I/O instance\ndata_path = \"/home/mudomini/projects/KITS_challenge2019/kits19/data.original/\"\ndata_io = miscnn.Data_IO(interface, data_path)\n\n# Create a Preprocessor instance to configure how to preprocess the data into batches\npp = miscnn.Preprocessor(data_io, batch_size=4, analysis=\"patchwise-crop\",\n                         patch_shape=(128,128,128))\n\n# Create a deep learning neural network model with a standard U-Net architecture\nfrom miscnn.neural_network.architecture.unet.standard import Architecture\nunet_standard = Architecture()\nmodel = miscnn.Neural_Network(preprocessor=pp, architecture=unet_standard)\n```\n\nCongratulations to your ready-to-use Medical Image Segmentation pipeline including data I/O, preprocessing and data augmentation with default setting.\n\nLet's run a model training on our data set. Afterwards, predict the segmentation of a sample using the fitted model.\n\n```python\n# Training the model with 80 samples for 500 epochs\nsample_list = data_io.get_indiceslist()\nmodel.train(sample_list[0:80], epochs=500)\n\n# Predict the segmentation for 20 samples\npred = model.predict(sample_list[80:100], return_output=True)\n```\n\nNow, let's run a 5-fold Cross-Validation with our model, create automatically evaluation figures and save the results into the directory \"evaluation_results\".\n\n```python\nfrom miscnn.evaluation import cross_validation\n\ncross_validation(sample_list, model, k_fold=5, epochs=100,\n                 evaluation_path=\"evaluation_results\", draw_figures=True)\n```\n\nMore detailed [examples](https://github.com/frankkramer-lab/MIScnn/wiki/Examples) for popular biomedical data sets or diverse [tutorials](https://github.com/frankkramer-lab/MIScnn/wiki/Tutorials) for MIScnn are available as Jupyter Notebooks in this repository.\n\n## Installation\n\nThere are two ways to install MIScnn:\n\n- **Install MIScnn from PyPI (recommended):**\n\nNote: These installation steps assume that you are on a Linux or Mac environment. If you are on Windows or in a virtual environment without root, you will need to remove sudo to run the commands below.\n\n```sh\nsudo pip install miscnn\n```\n\n- **Alternatively: install MIScnn from the GitHub source:**\n\nFirst, clone MIScnn using git:\n\n```sh\ngit clone https://github.com/frankkramer-lab/MIScnn\n```\n\nThen, cd to the MIScnn folder and run the install command:\n\n```sh\ncd MIScnn\nsudo python setup.py install\n```\n\n## Experiments and Results\n\nThe task of the Kidney Tumor Segmentation challenge 2019 (KITS19) was to compute a semantic segmentation of arterial phase abdominal CT scans from 300 kidney cancer patients. Each pixel had to be labeled into one of three classes: Background, kidney or tumor. The original scans have an image resolution of 512x512 and on average 216 slices (highest slice number is 1059).\n\nMIScnn was used on the KITS19 training data set in order to perform a 3-fold cross-validation with a 3D standard U-Net model.\n\n![evaluation plots](docs/kits19_evaluation.png)\n\n![example gif](docs/visualization.case_case_00044.gif)\n\n## Author\n\nDominik Müller\\\nEmail: dominik.mueller@informatik.uni-augsburg.de\\\nIT-Infrastructure for Translational Medical Research\\\nUniversity Augsburg\\\nBavaria, Germany\n\n## How to cite / More information\n\nMüller, D., Kramer, F. MIScnn: a framework for medical image segmentation with convolutional neural networks and deep learning. BMC Med Imaging 21, 12 (2021).  \nDOI: https://doi.org/10.1186/s12880-020-00543-7\n\n```\nArticle{miscnn21,\n  title={MIScnn: a framework for medical image segmentation with convolutional neural networks and deep learning},\n  author={Dominik Müller and Frank Kramer},\n  year={2021},\n  journal={BMC Medical Imaging},\n  volume={21},\n  url={https://doi.org/10.1186/s12880-020-00543-7},\n  doi={10.1186/s12880-020-00543-7},\n  eprint={1910.09308},\n  archivePrefix={arXiv},\n  primaryClass={eess.IV}\n}\n```\n\nThank you for citing our work.\n\n## License\n\nThis project is licensed under the GNU GENERAL PUBLIC LICENSE Version 3.\\\nSee the LICENSE.md file for license rights and limitations.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrankkramer-lab%2FMIScnn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffrankkramer-lab%2FMIScnn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrankkramer-lab%2FMIScnn/lists"}