Web application based on vtk.js

This is really cool…

The application illustrated on the video was developed by integrating vtk.js like it was done in the ParaView Glance application.

cc: @forrest.li

Yes, although web viewers are still extremely limited compared to what you can do on desktop, there are many applications for that they are sufficient. They can be also used for patient browsing, quick preview, and launch desktop app on the selected data set. We work together with OHIF, dcmjs, etc. communities to make sure there is good synergy between desktop/web/server backend.

Just one remark.

The application in the video runs on localhost and everything is smooth.

In the health center here, there’s one such web based application (Zero FootPrint) that allows to list patient exams, view slices , see volume rendered views and much more. It’s on a 1Gb/s LAN and despite that, it’s not as useful as running a desktop application. The bottleneck is network lag, and there’s not much to do about it.

How much work should developers be doing in this direction ?


There is clearly a trend to run more and more software in the browser. The more complicated question is where to do the processing.

For simple visualization of small data sets (patient browser, smaller images, etc.) local rendering/processing is easily doable and since it runs locally it is smooth and fast.

For larger data sets, network transfer time becomes a major hurdle, and complex visualizations and processing are still much harder to achieve using web technologies. For these cases, server-side processing and remote desktop access (or at least remote rendering) makes more sense. An example is the zero-foot-print viewer mentioned above, which is a desktop application (similar to Slicer) accessed via remote desktop. Network latency plays a somewhat different role in this case - it just makes everything a bit laggy.

Work is being done in both aspects:

  1. We collaborate with web developers on playing nicely with their tools (e.g., run Slicer on the cloud, integrating it with OHIF viewer, Kheops, ePad, etc. via DICOMweb, docker containers, etc.).
  2. We make Slicer available in the browser - there are multiple docker containers that can be started on a server and allow you to run Slicer in the web browser. See this example of a Slicer instance that you can run in your web browser right now. It uses the free “binder” service, so it may take 1-2 minutes to start up and processing speed mediocre, but if you pay to a cloud service provider then you can get instantaneous startup and supercomputer performance.