Imaging as a service: Two significant web-based browsers

From two major academic centres come a pair of web browser-native medical image viewers that are leading the way to web-based imaging.

BrainBrowser

brainbrowser_3 _250BrainBrowser comes from the neuroscience department at McGill University, well-known for their neuroimaging tools and the MINC file format.  BrainBrowser is distributed as a Javascript library that is installed on a web server, and uses familiar Web technologies such as HTML5, CSS, JavaScript and WebGL to provide 3D surface and volume rendering of neuroimage data sets within your browser.  Data can come from the server, or BrainBrowser can read local data sets, in which case no information leaves your computer.

The project comprises two components. VolumeViewer can perform slice-by-slice display of volumetric data, which currently must be in the MINC format.  It can display multiple volumes through time (an important feature for functional neuroimaging) and renders a multiplanar view of the data volume.  SurfaceViewer loads surface datasets such as generated by FreeSurfer or MNI software, and has many of the features you’d expect from an installed application – only you don’t need to install it.  Both of these applications have an extensible plug-in architecture so can be expanded to other file formats.

The fully-documented source code is available at GitHub, and several presentations demonstrate the architecture and technologies used in the project.  You can approach this software at several levels.  Run from the project’s servers, BrainBrowser can act as a Web Service, rendering your local data within your browser, no data transfer occurs in either direction.  For a locally-hosted and customizable installation, download the source code and install it on a local server.

BrainBrowser is a serious application from a major university.  While the demos appeal to everyone, the advanced features of this specialized software will be of particular benefit to researchers in the brain imaging field.

Slice:Drop

slicedrop_slicedrop_github_comSliceDrop makes imaging about as simple as it can be: drag and drop some image files on your browser, and they are rendered on the spot.  Impatient?  Download these MRI files and drop them on the SliceDrop window from the link above.  There’s more to the application than this, of course, but it demonstrates how easy it can be.  There are other pre-packaged demos on the project’s home page.

SliceDrop comes from Boston Children’s Hospital, and it’s built on their X Toolkit, which is a heavy-hitting scientific visualisation application using WebGL for 2D and 3D rendering in browser-based JavaScript apps.  Xtk reads a wide variety of file formats for volumetric, mesh, and fibre data, and SliceDrop inherits this ability.  Being web-native means that SliceDrop will run on a portable OS, though given the lack of a local file system, it will require data to be downloaded rather than loaded locally.

The technologies behind SliceDrop include WebGL, HTML5 Canvas, and JavaScript.  If you’re a developer, source code can be forked from GitHub.

BrainBrowser and SliceDrop are terrific examples of what is capable with standard web technologies.  Either of these applications can have you viewing images in less than a minute, no software required.  For many needs, web-based imaging is the way forward.

Live demos in your browser

A new page devoted to live demonstrations of web-based viewers is here:

http://idoimaging.com/demo/

 As medical imaging moves to the Web, there will be ever more programs available to try immediately in your browser, with no installation required.  We’ll bring them to you through our Live Demo page.

A variety of technologies are used to bring imaging into the browser; the demonstration programs include use of JavaScript, HTML5, WebGL, and Java Web Start.  All the demo programs originate from a server and are displayed in your browser, but the data can take different paths.  Sometimes the images are transferred to you as original DICOM files, sometimes as image files (in JPG or another format), sometimes all the data stays within your computer, and yet other times the rendering is done remotely and the original image files never leave the server.  Web-based imaging is a new and rapidly-changing technology, there’s going to be much more development in this field.

Neuro Debian: An Impression

I’ve seen a lot of imaging software packaged for the Debian Linux distribution, so I decided to set up a machine to try it out.  Debian is a popular choice for scientific software, known for its stability and the massive library of pre-built packages available for easy installation through its package management system.

Neuro Debian is a six year old project to make high quality software readily available to researchers everywhere (a full description is found in this recent publication by the principal authors).  It places strong emphasis on the correctness and interoperability of the software packages, resulting in applications that install automatically and produce reproducible results.  In practice, it’s employed as a supplementary repository for specialist software packages, that integrates completely into Debian’s existing package manager. There’s the promise of entire compatible software systems to be installed in a few clicks.  Let’s see how it fares.

Downloading Debian was straightforward.  There are a variety of installation techniques – live network installation, DVD and CD images to download and burn, torrents, and live test images to try the OS from a disc or stick.  I made up a Parallels partition on my Mac for the new virtual machine, giving it 2 GB RAM and 2 cores, and installed directly from the minimal 440 MB image I’d downloaded.  Been a while since I saw an installation that small, but I’m sure the packages will be much larger.  I enjoyed the old-timey non GUI installation screen, once upon a time we called this a ‘user interface’, now it’s coming back into fashion like an 8-bit video game.

It’s also been a while since I saw an OS start and stop as quickly as a stripped-down Debian installation.  We get so used to Mac OS and Windows loading…and loading…all sorts of essential something.  Debian gets to the point, and does it in a few seconds.

I started the Software Centre to see what imaging software is available right out of the box. Cool!  Searching for ‘DICOM’ shows several alternatives.

I installed both and had to hunt through the menus to find them filed under ‘Graphics’, which is fair enough, I suppose.  Some of the other programs I later installed made it on to the ‘Science’ menu.

Configuring Debian to use the Neuro Debian repository is a simple case of copying two commands into a terminal window, adding ‘NeuroDebian’ as a source in the package manager.  The installations proceeded very quickly, and although not every package is available for each OS variant on every software repository, there’s a very wide range of software available.
For the OS I’m running (Debian 6), there were over 110 applications and libraries available in the ‘Imaging’ category alone.

The other category I was particularly interested in was Imaging Development, and as you may expect it’s pretty technical.  Lots here for the software developer.  Exploring the other categories is left as an exercise for the reader (it’s not called “I Do Psychophysics”).

Installed software has a short summary in the package manager.  Running the programs again reminded me of just how quick computers can be when you strip away the extraneous extras.  The applications jumped onto the screen and were ready within a second.  This particularly reinforced the advantage of having a dedicated system – even one running as a virtual machine, as here – over running imaging software on your regular desktop computer.  Fewer distractions, too.

Overall, I was highly impressed.  A new user could download and install an entire operating system, plus imaging applications, and be up and working within half an hour.  Some experience with Linux software is of course useful, and some of these applications would also benefit from some command line experience.  But since the software is downloaded and installed as binary executables, with all dependencies handled, there’s no chance of it not compiling correctly.  Neuro Debian bills itself as the “Ultimate platform for neuroscience” and I think they have a case.  Great packages that install themselves and work out of the box: this is free software done right.