Med3Web: Free, Open source Browser-based DICOM viewer for 2D/ 3D Medical Visualization
The project is released and maintained by web development agency (Epam.com) among other open source projects for medical and research usage.
Though Med3Web could be packed as a desktop app, using Electron/ NW projects, however, it was designed and released to be portable, or hosted on the cloud on a web server to be used from browsers. That might be tricky from users with no web developing experience and limited hacking skills, but we will list detailed steps to install it.
Currently, only Chrome, Firefox, Safari, Opera browsers are supported. Other browsers can be used with some performance slowdown and other rendering artifacts. Mobile browsers are not currently supported, but some of them can be used with performance/rendering problems and so on.
- Modern system
- Modern browsers (Google Chrome, Chromium, Firefox, Opera, Safari)
- WebGL support
- Basic knowledge of coding (NodeJS, NPM) to install
- Open source & Free
- Read data from the local machine, or from a remote server
- Built with HTML5 compatible with all modern browsers
- Works on Modern browsers with WebGL support
- Supports Android Chrome with enabled WebGL
- DICOM, NIfTI, KTX, and HDR formats support.
- Real-time adjustment of isosurface and transfer function levels in 3D views.
- Measurement of distances, angles, and areas in 2D views.
- DICOM tag browser
- Real-time volume clipping to open areas of interest
- Automatic volume segmentation
- 5 Mode view support
- Semi-automatic methods for areas of interest opening/selection.
- Segmentation data visualization.
- Advanced 3D visualization (Isosurface Visualization, Volume Visualization, Max Intensity Projection (MIP), Segmented Data Visualization)
- Opens local data and remote data
- 2D DICOM viewer
- 3D DICOM viewer
- 3D Volume rendering
- Turbo 3D mode
- Easy setup
- Works without a Server
- Works smoothly on legacy web servers
- dicomParser: DICOM parser by cornerstone library, It parses DICOM Part 10 data
- Xtk: a Scientific and a medical visualization Toolkit/ framework that utilizes WebGL for advanced 3D medical visualization.
- NodeJS > 6.10.3
Setup & Install
Open your desktop Terminal
Check for installed NodeJS version, If not installed, please install it
Clone the project repo
git clone https://github.com/epam/med3web.git
npm install -g gulp-cli
Running the app
npm run start
The app will run quickly and start smoothly even on old machines on those ports
Local: http://localhost:9000 External: http://192.168.1.103:9000
Building for production
Building a static web version, That can be used from the local machine (local server), or installed on a web server.
npm run build
It will build the application in dist directory, however, the static files can't work easily on the local machine, you will need a local server, I would recommend using zero-footprint quick run-up server like http-server,
npm install -g http-server cd dist http-server
The app will be ready at port: 8080 "http://127.0.0.1:8080/"
I have tested that on different machines and operating systems including Linux (Solus Linux) with a quite powerful machine with WebGL support, Mac OSX (2011 build with poor WebGL), and on Windows on fairly new gaming PC, It performs very well on modern machines, but poorly on old ones.
Licensed under the Apache License, Version 2.0.
- Github's page
- Demo app
- Xtk: The X Toolkit: WebGL™ for Scientific Visualization
- ThreeJS: WebGL powered 3D browser based visualization framework for
- ePam.com The company behind this project