{"id":28550140,"url":"https://github.com/tio-ikim/twixmrianonymizer","last_synced_at":"2026-02-15T21:01:52.922Z","repository":{"id":227080437,"uuid":"770376136","full_name":"TIO-IKIM/TwixMRIAnonymizer","owner":"TIO-IKIM","description":"Lightweight anonymization tool for Siemens twix MRI dataformat (.dat)","archived":false,"fork":false,"pushed_at":"2025-01-21T11:31:16.000Z","size":41,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-10-11T11:04:40.162Z","etag":null,"topics":["anonymization","mri","raw-data","siemens","twix"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TIO-IKIM.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-11T12:54:07.000Z","updated_at":"2025-06-08T15:53:16.000Z","dependencies_parsed_at":"2024-03-11T14:49:36.380Z","dependency_job_id":"fe826e83-542c-4e45-a7ea-7c6de33a99de","html_url":"https://github.com/TIO-IKIM/TwixMRIAnonymizer","commit_stats":null,"previous_names":["tio-ikim/twixmrianonymizer"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/TIO-IKIM/TwixMRIAnonymizer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIO-IKIM%2FTwixMRIAnonymizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIO-IKIM%2FTwixMRIAnonymizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIO-IKIM%2FTwixMRIAnonymizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIO-IKIM%2FTwixMRIAnonymizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TIO-IKIM","download_url":"https://codeload.github.com/TIO-IKIM/TwixMRIAnonymizer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIO-IKIM%2FTwixMRIAnonymizer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29489328,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-15T19:29:10.908Z","status":"ssl_error","status_checked_at":"2026-02-15T19:29:10.419Z","response_time":118,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["anonymization","mri","raw-data","siemens","twix"],"created_at":"2025-06-10T03:07:58.119Z","updated_at":"2026-02-15T21:01:52.916Z","avatar_url":"https://github.com/TIO-IKIM.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TwixMRIAnonymizer\n\n[![Python 3.11.2](https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12-blue)](https://www.python.org/downloads/release/python-3120/) \n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![License](https://img.shields.io/badge/License-MIT-green.svg)](./LICENSE)\n[![DOI](https://img.shields.io/badge/DOI-j.cmpb.2023.107912-blue)](https://doi.org/10.48550/arXiv.2410.12402)\n\n\u003cdiv align=\"center\"\u003e\n\n[Getting started](#getting-started) • [Usage](#usage) • [Roadmap](#roadmap) • [Citation](#citation) • [Credits](#credits)\n\n\u003c/div\u003e\n\n---\n\n\u003e **Update 17.10.2024**:\n\u003e\n\u003e :bangbang: The TwixMRIAnonymizer tool is now integrated in our new holistic de-identification tool. Check out the corresponding repository: https://github.com/TIO-IKIM/medical_image_deidentification :bangbang:\n\u003e\n\u003e Note: The TwixMRIAnonymizer includes some functionality not yet available in the de-identification tool mentioned above.\n\n---\n\n**Twix MRI Anonymizer** is a lightweight Python anonymization-tool for Siemens MRI raw data format twix. \n\nTwix data contains multiple headers. while the dicom header, often saved as ['hdr'] is easily anonymizable, the much larger header ['hdr_string'] is often overlooked, but contains all the same information as the general header, as well as a detailed overview of the scan settings.\n\nIf anonymization is performed only on the first header, all the information contained in the latter will be pasted back into ['hdr'] when saving the \"anonymized\" file. \nThis brings up the necessity and chances of the following code, which scans the ['hdr_string'] for all informations which need to be anonymized and additionaly can save useful metadata for further tasks.\n\nWhile the main focus lies on the anonymization of MRI twix files, this tool also allows researchers to extract important metadata, such as sequence name, TR/TI and acceleration factor, for a large amount of data and saved in a csv overview.\n\n## Getting started\n1. Clone repository:\n   \n       git clone https://github.com/TIO-IKIM/TwixMRIAnonymizer.git\n\n2. Create a conda environment with Python version 3.11.2 and install the necessary dependencies:\n   \n       conda env create -n anonymizer -f requirements.txt\n    In case of installation issues with conda, use pip install -r requirements.txt to install the dependecies.\n\n3. Activate your new environment:\n\n       conda activate anonymizer\n\n4. Run the script with the corresponding cli parameter, e.g.:\n\n       python3 anonymize.py --i your/input/path --o your/output/path\n\nAlternative pip installation from inside the repository folder:\n\n       pip install -e .\n\n## Usage\n**Anonymization CLI**\n```\nusage: anonymize.py [-h] [--i I] [--o O] [--f] [--meta_only]\n\noptions:\n  -h, --help   show this help message and exit\n  --i I        The path to the TWIX file or directory containing TWIX files to be anonymized.\n  --o O        The path to save the anonymized files.\n  --f          If set, force overwrite existing files. Defaults to False.\n  --a          Anatomies to be anonymized. If chosen, all other anatomies will be ignored. Defaults to all. Example: Brain Knee\n  --meta_only  If set, only save the metadata, but do not write anonymized file. Defaults to False.\n```\n\n## Roadmap\n\n#### Pip Package\n\nScript will be wrapped into a package and published on pip.\n\n## Citation\n\nIf you use our code in your work, please cite us with\n```latex\n@misc{rempe2024deidentificationmedicalimagingdata,\n      title={De-Identification of Medical Imaging Data: A Comprehensive Tool for Ensuring Patient Privacy}, \n      author={Moritz Rempe and Lukas Heine and Constantin Seibold and Fabian Hörst and Jens Kleesiek},\n      year={2024},\n      eprint={2410.12402},\n      archivePrefix={arXiv},\n      primaryClass={eess.IV},\n      url={https://arxiv.org/abs/2410.12402}, \n}\n```\n\n## Credits\n\nParts of the code of TwixAnonymizer is based on the great package [*Suspect*](https://suspect.readthedocs.io/en/#) by Ben Rowland, et al. for MRS processing.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftio-ikim%2Ftwixmrianonymizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftio-ikim%2Ftwixmrianonymizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftio-ikim%2Ftwixmrianonymizer/lists"}