This chapter presents an architecture for the integration of various algorithms for digital image processing (DIP) into web-based information systems. The proposed environment provides the development of tools for intensive image processing and their integration into information systems by means of JAVA applets. The functionality of the system is shown through a set of tools for biomedical application. The main feature of this architecture is that it allows the application of various types of image processing, with different computational costs, through a web browser and in a transparent and user-friendly way.
The rapid advance of the medical imaging field is revolutionizing medicine. Technologies such as computed axial tomography (CT Scan), magnetic resonance imaging (MRI), Helicoidal CT Scan, and the fusion of CT Scan and positron emission tomography (PET), all provide an effective map of the human anatomy in a non-invasive manner.
Clinical practice usually relies on computing techniques to simplify the diagnosis of the medical expert. Medical imaging is not restricted to the visualization of anatomical structures, it is also used for diagnosis, surgical planning, simulation, radiotherapy planning, etc. These applications enable the clinicians to virtually interact with the anatomical structures and as such achieve the knowledge that enhances their performances. All the aforementioned techniques belong to a discipline known as Digital Image Processing (DIP). Traditionally, the medical DIP applications were carried out in expensive work-stations provided by the CT or PET machine supplier. These kinds of applications have certain drawbacks, such as administration and maintenance, which make them unsuitable for some environments.
The current trend in software development is the creation of applications that can be integrated into a Web environment and enjoy advantages such as placement independence, centralized application maintenance, and the use of firewalls without changing the filter rules. Web applications have proliferated due to their rapid learning and easy use as well as their personalization capability that provides a user-friendly interface. This trend towards Web developments is also being introduced into the medical field, to the detriment of the traditional clinical applications. DIP-related applications have high computational costs and therefore hospitals have to invest heavily in computing equipment in order to provide the clinicians with powerful mainframes. At this point, it seems logical to differentiate between algorithms of low and high computational cost.
It should be borne in mind that, as DIP is not a recent discipline, there exist libraries that include different algorithms for digital image processing. Already implemented algorithms should therefore be reused in new developments.
Key Terms in this Chapter
Common Object Request Broker Architecture: (CORBA): Is a distributed object architecture defined by the Object Management Group. This architecture provides an interface that invokes other CORBA objects across a network.
Client-Server Architecture: The most fundamental distributed architecture. A client-server architecture is simply a client process that request services from a server process.
J2EE: Java 2 Enterprise Edition is a widely used platform for server programming in Java language, used to deploy distributed multi-tier Java software running in an application server. It is also known as Java EE in versions 1.5 and following.
Region Growing: A segmentation technique based on the similarity of adjacent pixels. A region is started with a single pixel (seed pixel) and the adjacent pixels are added to the current region if they are similar to the region.
Digital Imaging and Communication in Medicine: (DICOM): A standard format and application protocol developed by the NEMA (National Electrical Manufacturers Association) to communicate systems over TCP. This protocol allows the integration of PACS, workstations, and TC, MNR, and other image scanners.
Network of Workstations: (NoW): Is a computer network that connects several computer workstations with special software forming a cluster, to act as a distributed supercomputer on a building-wide scale.
.Net Remoting: A distributed-object architecture by Microsoft to develop distributed applications over Microsoft platforms.
Marching Cubes: A computer graphics algorithm for the extraction of a polygonal mesh of a set of volumetric data.
Web Services: Software system designed to support interoperable machine to machine interaction over web. It uses SOAP protocol and XML messages to receive request and offer responses.
Transmission Control Protocol/Internet protocol (TCP-IP): Is the basic family of network protocols for the Internet.
Java Advanced Image (JAI): Is an image-processing toolbox, developed by Sun, that provides an object-oriented interface for the support of high-level programming models that allow images to be easily manipulated in Java applications.
Platform-Independent: An application that can be run on many different server platforms, e.g. Java.
Parallel Virtual Machine: (PVM): Is a software package that allows a heterogeneous collection of computers hooked together by a network to be used as a single large parallel computer.
Picture Archive and Communication System: (PACS): A storage system composed by different computers and networks dedicated to the storage and retrieval of medical images.
SSL: A secure socket layer is a secure protocol that provides secure communication over the internet based on cryptographic techniques. At present it is also known as TLS (Transport Layer Security)