A CLI tool for detecting flagellar motor coordinates in tomography data
Project description
Tomo-Detect
A command-line tool for detecting motor coordinates in tomography data using deep learning models.
Installation
pip install tomo-detect
Folder Structure
tomo-detect-cli/
│
├── scripts/
│ └── run_visualizations.py
│
├── tomo_detect/
│ ├── __init__.py
│ ├── cli.py
| ├── inference.py
│ ├── models_manager.py
│ ├── models_manifest.json
│ └── postprocess.py
│ └── utils.py
│ └── visualizations.py
|
├── .gitignore
├── MANIFEST.in
├── SETUP.md
├── requirements.txt
├── setup.py
└── README.md
Usage
Basic usage:
tomo-detect input_path_A
tomo-detect input_path_A input_path_B
The input path can be either:
- A .npy file containing tomography data
- A zip file containing multiple tomography files
- A directory containing .npy or .mrc files
Options
tomo-detect --help # Show help message and usage information
tomo-detect input.npy --debug # Enable debug logging
tomo-detect input.zip --test # Run test mode with additional validations
tomo-detect input.npy --output path # Specify custom output directory
tomo-detect input.npy --detailed # Outputs visualizations for the inputs
tomo-detect input.npy --batch-size 4 # Set custom batch size for inference
tomo-detect input.npy --device cpu/gpu # Force CPU inference
Output Files
The tool generates several output files:
motor_detections_submission.csv- Contains motor coordinates (primary output)motor_detections_detailed.csv- Includes additional detection informationpredictions.npy- Raw probability mapsmasks.npy- Binary masks derived from predictionssummary.json- Detection summary and statistics
Example
# Process a single .npy file
tomo-detect sample.npy
# Process multiple files in a zip
tomo-detect samples.zip
# Enable debug mode for detailed logging
tomo-detect sample.npy --debug
Tips and Tricks
-
Input Preparation:
- Ensure input files are properly formatted numpy arrays
- For .mrc files, they will be automatically converted
- Zip files should contain only supported file types
- Supports multiple inputs and enbales parallel processing based on the system specs
-
Performance Optimization:
- Use GPU acceleration when available
- Adjust batch size based on your memory capacity
- For large datasets, consider processing in chunks
- It is advised to provide unzipped files so as to not bottleneck the cpu performance
- Run it using --test to confirm the working of the model and save time
-
Troubleshooting:
- Enable --debug mode for detailed logging
- Check system requirements before running
- Verify input file formats and dimensions
- --detailed consumes lot of cpu memory
System Requirements
- Python 3.8 or higher
- CUDA-capable GPU (optional but recommended)
- Minimum 8GB RAM
- 2GB disk space for models
License
MIT License
Project details
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tomo_detect-0.1.6.tar.gz.
File metadata
- Download URL: tomo_detect-0.1.6.tar.gz
- Upload date:
- Size: 31.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dc4210438f001aca90cd2f2a7d994528d006a78d6d7a08cc92df5698224ee5bb
|
|
| MD5 |
b78d014d85870c0f530b50f5f2f3e1e9
|
|
| BLAKE2b-256 |
7230b7112ef4a1aace128a800d289e517ba623a4a3fc29df0887fe511e2bcc0f
|
File details
Details for the file tomo_detect-0.1.6-py3-none-any.whl.
File metadata
- Download URL: tomo_detect-0.1.6-py3-none-any.whl
- Upload date:
- Size: 32.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
748dc1aa6346ac7ceff914b0548fad9ae713e685ebe3e04b64b0a05182609cb1
|
|
| MD5 |
35baa8ec14f0a07ae6f66307881ce133
|
|
| BLAKE2b-256 |
c4f7b59416c6c73c386ca6664cb4cea833c7aeb302dcd8bfb9ea1c7e9c24c58f
|