Real-time medical imaging with Rust + wgpu — is this an underexplored niche?

⚓ Rust    📅 2026-02-10    👤 surdeus    👁️ 8      

surdeus

I'm an orthopedic surgeon, not a professional developer. I built a DICOM medical image viewer (OrthoRay) using Rust + Tauri + wgpu because I was frustrated with the rendering performance of existing tools when working with large CT/MRI datasets (500MB+ series).
Most DICOM viewers in the medical space are either Electron-based, legacy C++/OpenGL, or cloud-rendered. I wanted to explore whether Rust + wgpu could offer something meaningfully different for GPU-accelerated medical rendering — specifically:
Real-time 3D Volume Rendering with custom transfer functions
Multi-Planar Reconstruction (MPR) — coronal, sagittal, axial planes from raw DICOM data
A custom bone visualization algorithm I developed (BoneFidelity) that enhances cortical bone contrast for surgical planning
Some things I learned along the way:
wgpu's compute shaders were surprisingly well-suited for volume raycasting. The abstraction over Vulkan/Metal/DX12 meant I didn't have to pick a graphics backend — it just works cross-platform.
DICOM parsing was handled well by existing Rust crates — the ecosystem is more mature than I expected for such a niche standard. Most vendor-specific quirks were already covered.
The borrow checker was brutal for someone learning Rust via AI assistants, but the resulting memory safety is exactly what you want in software that handles patient data.
What I'm genuinely curious about from this community:
Is Rust + wgpu being used in other scientific/medical visualization projects? I haven't found many examples beyond game engines and creative coding.
For those working with wgpu compute shaders — are there known performance pitfalls I should watch for when scaling to 4K+ slice volumes?
Is there appetite in the Rust ecosystem for a well-documented open-source medical rendering pipeline, or is this too niche?
The project is free and available on the Microsoft Store. Documentation (with technical details): https://orthoarchives.com/en/orthoray/docs/getting-started/what-is-orthoray
I'd appreciate any technical feedback, criticism, or pointers to related work.

3 posts - 2 participants

Read full topic

🏷️ Rust_feed