A python package to query the National Biomedical Imaging Archive (NBIA) database.
Project description
NBIA Toolkit
A python package that provides programmatic access to query and download images from the National Biomedical Imaging Archive (NBIA) and The Cancer Imaging Archive (TCIA) databases.
Features
[!TIP] For a thorough description of the package and its available features, please refer to the Documentation at NBIA-Toolkit Read The Docs
-
Programmatic access to the National Biomedical Imaging Archive (NBIA) and The Cancer Imaging Archive (TCIA) databases
- Use NBIA Guest account to access public data OR authenticate using OAuth with user credentials for limited access data (requires approved data access).
- Custom
OAuth2
class for NBIA, TCIA, including special handling for dedicated server for the NLST collection.
-
Query NBIA database for metadata on collections, patients, studies, series, and images
-
Download images from NBIA
- Validate doownloads with MD5 checksums for downloaded images
- Auto-sort DICOM files using a user-defined pattern of DICOM tags with specialized DICOMSorter class
Installation
[!WARNING]
nbiatoolkit
is currently under development and is not guaranteed to be stable.
It is made available via PyPI and can be installed using pip:
pip install nbiatoolkit
CLI Usage
For quick access to the NBIA, the toolkit also provides a command line interface (CLI)
> NBIAToolkit --version
_ ______ _______ ______ ____ _ __
/ | / / __ )/ _/ |/_ __/___ ____ / / /__(_) /_
/ |/ / __ |/ // /| | / / / __ \/ __ \/ / //_/ / __/
/ /| / /_/ // // ___ |/ / / /_/ / /_/ / / ,< / / /_
/_/ |_/_____/___/_/ |_/_/ \____/\____/_/_/|_/_/\__/
Version: 0.27.0
Available CLI tools:
getCollections [-h] [-u USERNAME] [-pw PASSWORD] [-p PREFIX]
[-o OUTPUTFILE] [--version]
getBodyPartCounts [-h] [-u USERNAME] [-pw PASSWORD] [-c COLLECTION]
[-o OUTPUTFILE] [--version]
getPatients [-h] [-u USERNAME] [-pw PASSWORD] -c COLLECTION
[-o OUTPUTFILE] [--version]
getNewPatients [-h] [-u USERNAME] [-pw PASSWORD] -c COLLECTION -d DATE
[-o OUTPUTFILE] [--version]
getStudies [-h] [-u USERNAME] [-pw PASSWORD] -c COLLECTION
[-p PATIENTID] [-s STUDYINSTANCEUID] [-o OUTPUTFILE]
[--version]
getSeries [-h] [-u USERNAME] [-pw PASSWORD] [-c COLLECTION]
[-p PATIENTID] [-m MODALITY] [-study STUDYINSTANCEUID]
[--seriesInstanceUID SERIESINSTANCEUID]
[--bodyPartExamined BODYPARTEXAMINED]
[--manufacturerModelName MANUFACTURERMODELNAME]
[--manufacturer MANUFACTURER] [-o OUTPUTFILE] [--version]
getNewSeries [-h] [-u USERNAME] [-pw PASSWORD] -d DATE [-o OUTPUTFILE]
[--version]
downloadSingleSeries [-h] [-u USERNAME] [-pw PASSWORD] --seriesUID
SERIESUID --downloadDir DOWNLOADDIR
[--filePattern FILEPATTERN] [--overwrite]
dicomsort [-h] [-u USERNAME] [-pw PASSWORD]
[--targetPattern TARGETPATTERN] [--truncateUID]
[--sanitizeFilename] [--overwrite] [--nParallel NPARALLEL]
sourceDir destinationDir
Contributing
Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.
License
nbiatoolkit
was created by Jermiah Joseph. It is licensed under the terms of the MIT license.
User Agreements and Disclaimers
[!IMPORTANT] The NBIA-toolkit is NOT a product of the National Cancer Institute (NCI) and is not endorsed by the NCI. Users of the NBIA-toolkit are required to abide by the NBIA REST API Terms of Service and the NBIA Data Usage Policies and Restrictions The NBIA-toolkit is provided as an open-source tool based on the NBIA REST API and is provided "AS IS" without warranty of any kind. In no event shall the authors or contributors be liable for any claim, damages or other liability, arising from, out of or in connection with the NBIA-toolkit or the use or other dealings in the NBIA-toolkit.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file nbiatoolkit-0.28.0.tar.gz
.
File metadata
- Download URL: nbiatoolkit-0.28.0.tar.gz
- Upload date:
- Size: 21.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 19058bd7535c358ab2e004827308c7091f17195646fc643ff207952bad8fea0b |
|
MD5 | 08b3cb0d0a63d865dc1db97d44c5f9bb |
|
BLAKE2b-256 | 1f8af8a84bcf83fb975c1dde053383bbed260141b885ba8926eb4901fbdc012a |
File details
Details for the file nbiatoolkit-0.28.0-py3-none-any.whl
.
File metadata
- Download URL: nbiatoolkit-0.28.0-py3-none-any.whl
- Upload date:
- Size: 24.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b685632b398f2a56087d3807fe448d0d7b5bddbb822d0e47dbad0cbf916b149b |
|
MD5 | 454db4fec4bf0eedd4495ad9c222550e |
|
BLAKE2b-256 | 759d820702ce8c02646f18ccfc9bd5f764c42f7b8a7de38f8de0f082ff50cdb8 |