A Client/Server Based Online Environment for Manual Segmentation of Medical Images Daniel Wild∗ Maximilian Webery Jan Eggerz Institute of Computer Graphics and Vision Graz University of Technology Graz / Austria Computer Algorithms for Medicine Lab Graz / Austria Abstract 1 Introduction Segmentation is a key step in analyzing and processing Image segmentation is an important step in the analysis medical images. Due to the low fault tolerance in medical of medical images. It helps to study the anatomical struc- imaging, manual segmentation remains the de facto stan- ture of body parts and is useful for treatment planning and dard in this domain. Besides, efforts to automate the seg- monitoring of diseases over time. Segmentation can ei- mentation process often rely on large amounts of manu- ther be done manually by outlining the regions of an im- ally labeled data. While existing software supporting man- age by hand or with the help of semi-automatic or au- ual segmentation is rich in features and delivers accurate tomatic algorithms. A lot of research focuses on semi- results, the necessary time to set it up and get comfort- automatic and automatic algorithms, as manual segmenta- able using it can pose a hurdle for the collection of large tion can be quite tedious and time-consuming work. But datasets. even for the development of automated segmentation sys- This work introduces a client/server based online envi- tems, some ground truth has to be found, telling the system ronment, referred to as Studierfenster, that can be used to what exactly constitutes a correct segmentation. As the perform manual segmentations directly in a web browser. avoidance of errors is of especially high importance in the The aim of providing this functionality in the form of a medical domain, this ground truth is typically delivered web application is to ease the collection of ground truth by physicians, as they have the necessary expert knowl- segmentation datasets. Providing a tool that is quickly ac- edge to reliably decide what should be part of a segmen- cessible and usable on a broad range of devices, offers the tation and what not. To form the ground truth physicians potential to accelerate this process. The manual segmen- can make use of manual or semi-automated segmentation tation workflow of Studierfenster consists of dragging and techniques. dropping the input file into the browser window and slice- Software supporting such techniques usually requires a by-slice outlining the object under consideration. The final local installation on the computer of the user and some segmentation can then be exported as a file storing its con- training time to get comfortable with the extensive features tours and as a binary segmentation mask. available. This necessary preparation time can be a hurdle arXiv:1904.08610v1 [cs.CV] 18 Apr 2019 In order to evaluate the usability of Studierfenster, a user for the collection of a big amount of data, which is typi- study was performed. The user study resulted in a mean of cally needed to develop a robust automated segmentation 6.3 out of 7.0 possible points given by users, when asked algorithm. Web-based tools have the advantage that they about their overall impression of the tool. The evaluation require no installation time and can be adapted quickly to also provides insights into the results achievable with the the needs of a particular data collection task, without hav- tool in practice, by presenting two ground truth segmenta- ing to distribute updates to each user individually. tions performed by physicians. This work describes the development of a client/server based online environment for manual segmentation, re- Keywords: Segmentation, Web Application, Medical ferred to as Studierfenster (www.studierfenster. Image Analysis at or http://studierfenster.tugraz.at) in ∗[email protected] the rest of the work, that can be used directly in a web [email protected] browser. Thus there is no need to install any software, [email protected] as the tool is readily available in the web browser of the Proceedings of CESCG 2019: The 23rd Central European Seminar on Computer Graphics user. Another advantage is the platform independence of Studierfenster, which keeps its potential user base as big as possible. Following this first outline of the motivation behind the development of Studierfenster, Section 2 briefly discusses related work. Sections 3 and 4 then go into more detail on the implementation of Studierfenster. The expert eval- uation described in Section 5 and the user study described in Section 6 constitute the evaluation of the tool. The fi- nal Section 7 gives a short conclusion and suggests areas of improvement and approaches for future work. Figure 1: An architectural model of the mask generation process. 2 Related Work seen in Figure 1. In the following, this conversion pro- There is a wide range of offline software tools available cess will be used to describe the architecture behind the that offer sophisticated medical image analysis and pro- segmentation tool in more detail. cessing capabilities, including tools for manual segmenta- tion. Examples include 3D Slicer [4] and MeVisLab [3], [5]. The drawback of these tools is that they require a lo- 3.1 Client cal installation and are thus not readily available on any device. The process starts on the client side with the user opening Examples of actively supported web-based tools up a web browser and navigating to the domain that hosts useable for medical imaging include the OHIF the HTML, CSS and JavaScript files of the segmentation Viewer (https://viewer.ohif.org), Par- tool. These files are then transferred to the user so that the aview Glance (https://kitware.github.io/ segmentation tool can be used directly in the web browser. paraview-glance) and Slice:Drop [7], the medical Now the user is able to load a volume file in the viewer image viewer used as the basis for the development of and carry out a segmentation of some area of interest. The Studierfenster. While some tools, like the OHIF Viewer, resulting segmentation contours are all stored in JavaScript provide simple analysis tools like a ruler for length variables for now. If the user decides to save the seg- measurements or annotation tools, others, like Paraview mentation contours directly as a file in the Visualization Glance and Slice:Drop, provide only visualization ca- Toolkit (VTK) [10] format and without conversion to an pabilities. What is missing is a tool that provides more NRRD volume mask, no additional communication with sophisticated analysis tools or even processing routines the server is necessary. The process of carrying out a seg- directly in the web-browser. mentation and saving only its contours as a VTK file thus makes no use of the server backend. 3 Software Architecture 3.2 Server This section gives a high-level overview of the architec- The primary component of the server backend is the tural model behind the segmentation tool developed in this Python Flask server instance, as it is responsible for han- work. dling all the communication with the client. The first mo- Slice:Drop, which is the medical image viewer this tool ment this Python Flask server comes into play is during is built upon, uses a purely client-oriented approach. This the process of converting the segmentation contours to an means that all the necessary computations for visualiza- NRRD volume mask. If the user decides to do so, the seg- tion are carried out on the client using JavaScript and no mentation contours are internally written to a VTK file on files have to be uploaded to the host server. The most re- the client. This file is then immediately uploaded to the cent version of Slice:Drop at the time of writing is lim- server, however. To be able to construct an NRRD volume ited in its functionality, however. While it does provide mask with the same size, spacing, and orientation as the a volume rendering view and three 2D views in the ax- original file, the corresponding information of the original ial, sagittal and coronal direction, it does not provide any file has to be uploaded additionally. In order to not having image processing capabilities. For the presented segmen- to upload the entire original file, this metadata is extracted tation extension of Slice:Drop, an additional server back- from the file on the client and then uploaded to the server end was developed. An exemplary use case of the server as a small separate JSON file. backend is the conversion of the segmentation contours to Once the segmentation and the metadata file are both a filled Nearly Raw Raster Data (NRRD) volume mask. uploaded, the client asks the server to invoke the C++ The architectural scheme behind this conversion can be volume mask generation program, which is explained in Proceedings of CESCG 2019: The 23rd Central European Seminar on Computer Graphics more detail in Section 4.3. During the conversion process, the C++ program continuously reports the progress to the Python Flask server, which then hands over the progress information to the client. As soon as the conversion is finished, the C++ program writes the NRRD volume to the file system of the server, from where it is handed over by the Python Flask server to the client for downloading. Due to the modular design of the server backend, it is also possible to integrate other processing capabilities into it. An exemplary additional server module, which was in- tegrated to prove said modularity, is a volume file con- verter. The converter takes volume files as input and pro- duces a volume file in the NRRD file format.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages8 Page
-
File Size-