A versatile DICOM browser with backends for DICOM DIMSE, DICOMWeb and file system written in Rust using egui + eframe.
- Rust 99.8%
- Python 0.2%
|
|
||
|---|---|---|
| .vscode | ||
| doc | ||
| icon | ||
| img | ||
| src | ||
| tools | ||
| .gitignore | ||
| build.rs | ||
| Cargo.toml | ||
| LICENSE | ||
| private_attributes.local.csv.example | ||
| README.md | ||
| sop_class_map.json | ||
DICOM Browser
A DICOM-Query-Browser in Rust using egui / eframe.
Features
- Query:
- Multiple Backends
- Query
- DIMSE
- DICOMweb
- file system
- FHIR
- Query
- Tree View – Query Patient → Study → Series → Instance
- Sidebar – show Query details for all levels
- Instance Level Query – Support instance level query for common attributes of common (RT) modalities
- Search Query Information – Search through all query responses (automatic fetching of missing responses)
- Multiple Backends
- Retrieve:
- Multiple Backends
- Retrieve from
- DIMSE
- DICOMWeb
- file system
- Retrieve from
- Multiple Associations – handle multiple parallel associations (default: 10)
- Multiple Backends
- Attribute Viewer – View DICOM attributes
- ROI Overview – show ROI details for RT Structure Sets
- Beam Overview – show Beam summary for RT Plans
- MLC View - show MLC leaves
- Attribute Differ – View differences between DICOM messages
- Image Series Viewer – View image series in a multi-planar reconstruction (axial, sagittal, coronal)
- RT Viewer - View RT Structure Set ROIs, RT Dose volumes and MLC positions as overlays on the MPR views/reconstructed views
- Structured Report Viewer - View content of SR documents as textual reports
- Registration Viewer - View registration between two Frame of References in a fused view
- View contours from RT Structure Sets (including "HDSS" contours)
- Trans-Move – Move data from any backend (DIMSE / DICOMWeb / file system) to any other backend
- Resolve References - For File System-based queries, resolve references to other instances
Screenshots
Main Window
RT Viewer
Build
cargo run
Next Steps
- WASM-Export:
cargo build --target wasm32-unknown-unknown(eframe supports this out-of-the-box)

