Vanilla JS library for web-based visualization of DICOM VL Whole Slide Microscopy Image datasets. The library relies on Openlayers for rendering pyramid images and retrieves pyramid tiles (image frames) using DICOMweb WADO-RS.
Install the dicom-microscopy-viewer package using the npm
package manager:
npm install dicom-microscopy-viewer
Build and test code locally:
git clone https://github.com/dcmjs-org/dicom-microscopy-viewer ~/dicom-microscopy-viewer
cd ~/dicom-microscopy-viewer
npm install
npm run build
npm test
We use rollup for bundling and mochify for testing (based on mocha and chai).
The viewer can be embedded in any website.
To this end
-
Create an instance of the
DICOMMicroscopy
viewer. The constructor requires an instance ofDICOMwebClient
for retrieving frames from the archive as well as the Study Instance UID and Series Instance UID. -
Call the
render()
method, passing it the HTML element or the name of the element, which shall contain the viewport.
const url = 'http://localhost:8080/dicomweb';
const client = new DICOMwebClient.api.DICOMwebClient({url});
const studyInstanceUID = '1.2.3.4';
const seriesInstanceUID = '1.2.3.5';
const viewer = new DICOMMicroscopyViewer.api.DICOMMicroscopyViewer({
client,
studyInstanceUID,
seriesInstanceUID
});
viewer.render({container: "viewport"});
This is work-in-progress and should not be used in clinical practice.
The viewer allows visualization of VL Whole Slide Microscopy Image datasets stored in a DICOMweb compatible archive. It leverages the dicomweb-client JavaScript library to retrieve data from the archive.
Currently, the viewer only supports
- baseline JPEG compressed data (transfer syntax "1.2.840.10008.1.2.4.50")
- brightfield illumination (no fluorescence)
- 2D images (no z-stacks)
The developers gratefully acknowledge their reseach support:
- Open Health Imaging Foundation (OHIF)
- Quantitative Image Informatics for Cancer Research (QIICR)
- Radiomics
- The Neuroimage Analysis Center
- The National Center for Image Guided Therapy
- The MGH & BWH Center for Clinical Data Science