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).