2013-04-10

Announcing TissueStack


TissueStack was originally designed for use in the 3D medical and scientific imaging field for data from 3D micro-CT, MRI and restacked histology data. The viewer has since been used for multiple datasets including museum specimens, coal mining samples and Electron Microscopy data.

The original motivation for TissueStack came from the burgeoning size of micro-MRI and micro-CT datasets in scientific experiments. For a typical mouse brain imaging study this can amount to 12-15GB for a single scan. This problem is only exacerbated when re-stacked optical imaging (Histology) data is added to the analysis as these datasets can be up to 1TB in size. This presents a large barrier to collaborative research as it is difficult to share data between sites and keep collaborators up to date with the latest observations. What was needed was a 3D dataset viewing system that could be viewed remotely and had the ability to federate and overlay datasets from multiple sites, from these set of requirements TissueStack was born.

So far, TissueStack has been used by researchers from UQ (Brisbane) and Curtin (Perth) to collaboratively annotate the highest resolution model of mouse anatomy to date as part of the AMBMC project. Without the abilities of TissueStack to link to specific parts of the data, efforts to identify sub-structures were reduced to lengthy conference calls in which the collaborators attempted to sync their views of the same data.

From a technical standpoint, TissueStack is a web based HTML5 3D dataset viewer that generates image tiles on the fly, the main interface is shown below.

The main TissueStack interface view
The viewer has been designed to mimic web based map viewing sites such that users can easily navigate. A demonstration of TissueStack can be seen here: http://caivm1.qern.qcif.edu.au/ There is also a mobile/tablet version of TissueStack with all the same functionality as the "desktop" version. The appropriate version of the site is loaded based upon the viewers current viewing platform.


Testing methods and Findings

Throughout its development TissueStack has had a group of four testers who have provided feedback. We have summarised the findings of this below and how it influenced our development path.

Our Test Users

User 1: A researcher at Centre for Advanced Imaging with many years experience both using and writing image viewing software. We expected this user to have a knowledge of which features are most useful the largest number of users.

User 2: A Professor at the Montreal Neurological Institute with experience in image analysis and atlasing.

User 3: A Professor of anatomy and one of the authors of the most widely used paper based atlas of mouse neuroanatomy based in Perth and Sydney.

User 4: A post-doc at the Centre for Advanced Imaging with experience in atlas creation and manual brain segmentation.


Common testing outcomes

Test users interacted with all parts of TissueStack excepting parts of the Administrative tab reserved for the upload of data. Given that the user interface has been modelled on the existing web paradigm of online mapping users were all able to rapidly navigate the datasets. Initial testing had users requesting features such as scale bars, dataset overlay, linking of datasets and progress indicators.

These features were then added in subsequent releases and with some refinement are now all in the final release of TissueStack.


Scale Bar/Indicator

Unbeknown to the developers this is a standard feature in nearly all histological datasets as it allows the user to gauge the current image with respect to others of possibly differing scales.

A scale bar is typically not used in 3D MRI or CT data as the image typically covers the entire of the object. This obviously becomes important when viewing a high resolution MRI image in which the entire volume cannot always fit in a single view. As such we added a dynamic scale bar to the main TissueStack view, this bar changes as the user zooms in and out of the view.

Dataset Overlay

A common request was for the ability to overlay two datasets, typically an MRI and optical imaging dataset or an MRI and a segmented image with regions of interest traced. The initial design of TissueStack meant that adding this feature was difficult as we had only planned for the simultaneous browsing of datasets (linked windows). As such a lot discussion regarding the best way to add this was generated in order to both satisfy the user feature request and to also preserve as much as we could of TissueStacks speed and flexibility. 

The feature was added in the final release of TissueStack but it does incur a small performance penalty. User testing of this feature has shown that the small speed drop is worth it for the added functionality. We have added extra functionality beyond the initial user request with an 'overlay control' that appears in the top left window when two datasets are displayed simultaneously.

See this blog post for more details on the implementation specifics.

Linked Datasets

This feature was always planned from the beginning but user requests meant that we had to bring the timeline forward for its implementation ahead of colour mapping and links.

This is probably one of the most used features of TissueStack as it allows the parallel browsing of linked datasets of differing scales. This was one of the primary aims of TissueStack. The link between the datasets is accomplished by storing a voxel to world transformation for all datasets in the TissueStack database.

See this blog post for more details on the implementation specifics

Progress Indicators

Users initially expressed some frustration in that TissueStack gave users no indicator of loading progress when rapidly navigating a dataset. This was especially apparent over slower connections and with larger datasets in which tiling performance is slower than user expectations.

The best way to fix this problem is to speed up the tiling process itself by caching, pre-loading and using preview tiles at a lower resolution. This can be seen when panning around a dataset, in this case lower resolution images are loaded. These are then replaced by higher resolution images when navigation ceases. A tile queue culling algorithm was also implemented to speed rapid browsing.

After a significant amount of effort had been expended in speeding the tiling we went back to the users to gauge their response. The reply was that things were "much better" but still somewhat disorienting for new users. As such we implemented a progress indicator at the bottom centre that shows current drawing progress for the three tri-planar views.


Individual User Experiences

Some issues were specific to our testing users needs for the software. We had to find a balance between their individual needs for extra functionality while keeping TissueStack as generic as possible while maintaining performance.


User 1
User 1 was strongly focussed on the ability to view and link data from multiple datasets, typically MRI, CT and Optical Microscopy. This is a large advantage TissueStack has over previous efforts in this area in which just the viewing needs of a single dataset are addressed.

User 2
User 2 was involved in early testing of TissueStack as it enabled us to test speed from a remote site (Canada). This user was initially impressed with the speed possible from a remote connection as compared to previous efforts he had seen and has remained so. This user primarily loads human neuroimaging data in TissueStack but has an interest in high resolution animal models.

User 3
This user made extensive use of the links into datasets with geographically distant collaborators while annotating a high resolution mouse model. This feature was a large motivation for use of TissueStack and has meant a drive from paper to digital shared atlases in a number of associated projects.

User 4
This user had many feature requests including online manual segmentation, collaborative viewing, scale bars, measurement tools, etc. These were driven by his own research and collaboration needs. Some of these features were implemented and some have been included in the future roadmap of TissueStack (online manual segmentation via SVG overlays). 





Contributors