# Medicraft
## About
The medical imaging analysis using machine learning encounters challenges such as limited and imbalanced datasets, often constrained by privacy concerns related to patient information. The Medicraft project addresses these limitations by developing software capable of generating synthetic and diverse medical datasets from imaging information. In cooperation with the University Clinical Hospital in Poznan this tool utilizes OCT eye scans, featuring images with abnormalities like tumors and melanomas. To reduce the scarcity of real data, for medically rare cases, the solution uses diffusion models (Denoising Diffusion Probabilistic Model) to create synthetic balanced datasets which can facilitate better research and education in machine learning for medical image analysis and classification. The project uses a data-driven learning approach focused on analyzing the generated data, where synthetic images are analyzed for accuracy with the medical team, in order to achieve the best possible result.
## Documentation
The documentation for the project can be found [here](https://drfifonz.github.io/medicraft/index.html).
## Installation
### Using conda (recomended)
Create an environment from the `environment.yml` file:
```bash
conda env create -f environment.yml
```
### Using pip
Install the required packages using pip:
```bash
pip install -r requirements.txt
```
### As a package (torch dependencies needs to be solved manually)
To install the project as a package, run the following command:
```bash
pip install medicraft
```
## Post-Installation Steps
After successfully installing Medicraft, it is highly recommended to familiarize yourself with the documentation. You can find the detailed documentation [here](https://drfifonz.github.io/medicraft/index.html).
## Usage
To learn how to run the project, refer to the usage instructions provided in the documentation [here](https://drfifonz.github.io/medicraft/usage.html).
For running a project create `config.yml` file and run the following command:
```bash
python src/main.py -f config.yml
```
See config examples here: [configs](https://drfifonz.github.io/medicraft/examples.html#example-section)
For more information on how to install the project, please refer to the [installation guide](https://drfifonz.github.io/medicraft/installation.html).
---
### The conference poster provides information about the project. You can find it [here](docs/conference_poster.pdf).
Raw data
{
"_id": null,
"home_page": "https://github.com/drfifonz/medicraft",
"name": "medicraft",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.11",
"maintainer_email": null,
"keywords": "diffusion, generating, medical, images, synthetic dataset, pytorch, torch, diffusion, denoising",
"author": "Filip Patyk",
"author_email": "fp.patyk@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/4c/3e/1e318e6b3828218021fd0d3b1ae3b4626287fefa87360505e3b0e08d2529/medicraft-0.9.3.tar.gz",
"platform": null,
"description": "# Medicraft\n\n\n## About \n\nThe medical imaging analysis using machine learning encounters challenges such as limited and imbalanced datasets, often constrained by privacy concerns related to patient information. The Medicraft project addresses these limitations by developing software capable of generating synthetic and diverse medical datasets from imaging information. In cooperation with the University Clinical Hospital in Poznan this tool utilizes OCT eye scans, featuring images with abnormalities like tumors and melanomas. To reduce the scarcity of real data, for medically rare cases, the solution uses diffusion models (Denoising Diffusion Probabilistic Model) to create synthetic balanced datasets which can facilitate better research and education in machine learning for medical image analysis and classification. The project uses a data-driven learning approach focused on analyzing the generated data, where synthetic images are analyzed for accuracy with the medical team, in order to achieve the best possible result.\n\n\n## Documentation\nThe documentation for the project can be found [here](https://drfifonz.github.io/medicraft/index.html).\n\n## Installation\n\n### Using conda (recomended)\n Create an environment from the `environment.yml` file:\n ```bash\n conda env create -f environment.yml\n```\n### Using pip\nInstall the required packages using pip:\n```bash\npip install -r requirements.txt\n```\n\n### As a package (torch dependencies needs to be solved manually)\nTo install the project as a package, run the following command:\n```bash\npip install medicraft\n```\n\n## Post-Installation Steps\nAfter successfully installing Medicraft, it is highly recommended to familiarize yourself with the documentation. You can find the detailed documentation [here](https://drfifonz.github.io/medicraft/index.html).\n\n## Usage\nTo learn how to run the project, refer to the usage instructions provided in the documentation [here](https://drfifonz.github.io/medicraft/usage.html).\n\nFor running a project create `config.yml` file and run the following command:\n```bash\npython src/main.py -f config.yml\n```\nSee config examples here: [configs](https://drfifonz.github.io/medicraft/examples.html#example-section)\n\n\n\n\nFor more information on how to install the project, please refer to the [installation guide](https://drfifonz.github.io/medicraft/installation.html).\n\n---\n ### The conference poster provides information about the project. You can find it [here](docs/conference_poster.pdf).\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Medicraft synthetic dataset generator",
"version": "0.9.3",
"project_urls": {
"Documentation": "https://drfifonz.github.io/medicraft/",
"Homepage": "https://github.com/drfifonz/medicraft",
"Repository": "https://github.com/drfifonz/medicraft"
},
"split_keywords": [
"diffusion",
" generating",
" medical",
" images",
" synthetic dataset",
" pytorch",
" torch",
" diffusion",
" denoising"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "55633ec7d8b9d5066ca1a0f4ac3c2f6c8c3c2ff223c27db00affb6275348b3d5",
"md5": "0f2158902c6b4160511db240c00ac497",
"sha256": "72eb1e61ba488444f2c000229d53fe6e75848a2930bfece8856a7a6f2d9d27d5"
},
"downloads": -1,
"filename": "medicraft-0.9.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0f2158902c6b4160511db240c00ac497",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.11",
"size": 43137,
"upload_time": "2024-06-04T23:20:29",
"upload_time_iso_8601": "2024-06-04T23:20:29.959849Z",
"url": "https://files.pythonhosted.org/packages/55/63/3ec7d8b9d5066ca1a0f4ac3c2f6c8c3c2ff223c27db00affb6275348b3d5/medicraft-0.9.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4c3e1e318e6b3828218021fd0d3b1ae3b4626287fefa87360505e3b0e08d2529",
"md5": "d68c7ff797dcb8b61f2ef8f3caaf57b2",
"sha256": "276c252b9085c379eb2f935a93f5d183f986b17b6a9dee9b012ded6826f6e55f"
},
"downloads": -1,
"filename": "medicraft-0.9.3.tar.gz",
"has_sig": false,
"md5_digest": "d68c7ff797dcb8b61f2ef8f3caaf57b2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.11",
"size": 31716,
"upload_time": "2024-06-04T23:20:31",
"upload_time_iso_8601": "2024-06-04T23:20:31.921900Z",
"url": "https://files.pythonhosted.org/packages/4c/3e/1e318e6b3828218021fd0d3b1ae3b4626287fefa87360505e3b0e08d2529/medicraft-0.9.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-06-04 23:20:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "drfifonz",
"github_project": "medicraft",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "denoising_diffusion_pytorch",
"specs": [
[
"==",
"1.9.4"
]
]
},
{
"name": "ema_pytorch",
"specs": [
[
"==",
"0.3.1"
]
]
},
{
"name": "lightning",
"specs": [
[
"==",
"2.2.1"
]
]
},
{
"name": "matplotlib",
"specs": [
[
"==",
"3.8.4"
]
]
},
{
"name": "pandas",
"specs": [
[
"==",
"2.2.2"
]
]
},
{
"name": "Pillow",
"specs": [
[
"==",
"10.3.0"
]
]
},
{
"name": "pydantic",
"specs": [
[
"==",
"2.7.2"
]
]
},
{
"name": "PyYAML",
"specs": [
[
"==",
"6.0.1"
]
]
},
{
"name": "scikit_learn",
"specs": [
[
"==",
"1.4.2"
]
]
},
{
"name": "seaborn",
"specs": [
[
"==",
"0.13.2"
]
]
},
{
"name": "torch",
"specs": [
[
"==",
"2.3.0"
]
]
},
{
"name": "torchmetrics",
"specs": [
[
"==",
"1.3.1"
]
]
},
{
"name": "torchvision",
"specs": [
[
"==",
"0.18.0"
]
]
},
{
"name": "tqdm",
"specs": [
[
"==",
"4.66.2"
]
]
},
{
"name": "umap_learn",
"specs": [
[
"==",
"0.5.5"
]
]
},
{
"name": "wandb",
"specs": [
[
"==",
"0.16.3"
]
]
}
],
"lcname": "medicraft"
}