Open access peer-reviewed chapter

A High-Performance System Architecture for Medical Imaging

Written By

Tassadaq Hussain, Amna Haider, Muhammad Shafique and Abdelmalik Taleb-Ahmed

Submitted: 06 November 2017 Reviewed: 17 December 2018 Published: 24 July 2019

DOI: 10.5772/intechopen.83581

From the Edited Volume

Medical Imaging and Image-Guided Interventions

Edited by Ronnie A. Sebro

Chapter metrics overview

1,005 Chapter Downloads

View Full Metrics

Abstract

Medical imaging is classified into different modalities such as ultrasound, X-ray, computed tomography (CT), positron emission tomography (PET), magnetic resonance imaging (MRI), single-photon emission tomography (SPECT), nuclear medicine (NM), mammography, and fluoroscopy. Medical imaging includes various imaging diagnostic and treatment techniques and methods to model the human body, and therefore, performs an essential role to improve the health care of the community. Medical imaging, scans (such as X-Ray, CT, etc.) are essential in a variety of medical health-care environments. With the enhanced health-care management and increase in availability of medical imaging equipment, the number of global imaging-based systems is growing. Effective, safe, and high-quality imaging is essential for the medical decision-making. In this chapter, we proposed a medical imaging-based high-performance hardware architecture and software programming toolkit called high-performance medical imaging system (HPMIS). The HPMIS can perform medical image registration, storage, and processing in hardware with the support of C/C++ function calls. The system is easy to program and gives high performance to different medical imaging applications.

Keywords

  • visual processing system
  • image processing
  • FPGA
  • embedded computer vision

1. Introduction

In medical imaging, high-performance graphics systems are being used for early diagnosing, planning treatment, and observing the problems. The medical imaging system plays an important role in disease diagnostic time and cost. Therefore, to manage the industry demands, the medical health-care industry is looking for high-performance imaging system that can predict and identify the disease in an early stage without the support of an expert. As the performance of these devices grows, application-specific and high-performance hardware are required to run complicated/complex medical applications.

Precisely managing the medical information from multiple imaging equipment, processing them, and then displaying the result using various visual approaches give more detailed knowledge of understanding a disease state. The visual presentation performs multiple alignments and registration techniques using the complex and multi-dimensional images. The arrangement and registration of complex medical images having sparse data and control flow is a hard process. A medical imaging machine (e.g. radiological imaging) consumes 75% of processing time while aligning and registering, whereas a CT scan aligns images having a sample space of three-dimension with the reasonable isotropic resolution. These complex imaging applications have to follow anatomical and pathological structures while performing image acquisition, which demands efficient high-performance imaging hardware.

Medical imaging system uses different processing hardware such as reduced instruction set computer (RISC), application-specific instruction set processor (ASIP), single instruction multiple data (SIMD) processor, graphical processing units (GPUs), and field programmable gate arrays (FPGAs) [1, 2]. GPUs architecture uses advance vector processor architecture with dedicated memory and multiple stream multiprocessor (SM) having SIMD. The processing cores perform floating point operations. This high-end computing capability allows medical imaging applications to render complex medical images. In the past years, the GPU programming tools are grown and become competent in solving complex medical algorithm. On the other side, the performance of GPUs processing cores also increased, which allows medical imaging applications to give better results while diagnosing a problem.

Medical imaging is consistently held to be one of the most important advances in the history of medicine and has become an integral part of the diagnosis and treatment of patients around the globe. The medical statistic [3, 4] confirms that the early stage disease prediction, for example, breast, colorectal and lung cancers, etc., can save lives. This demands an improvement in diagnosis of the disease and screening techniques that generate high class, multidimensional images. With the development of medical imaging technology, the complexity of images also increased. It needs a high-performance computing architecture for real environment application processing. Existing medical imaging processing architectures face different issues and limitations related to hardware and software. Therefore, an efficient, scalable, and easily programmable high-performance medical imaging hardware architecture is required to solve complex imaging problems.

In this chapter, we proposed a high-performance medical imaging system (HPMIS) for medical applications. The proposed system works as a standalone device that processes images taken from different medical imaging equipment in real time. The HPMIS architecture is a standalone heterogeneous system, which can perform image registration, storage, and processing in real-time environment. A software programming model is also proposed, which facilitates the medical scientists to write their imaging application without going into details of hardware. The proposed system is efficient in terms of performance and consumes low power due to the best utilization of hardware-software approach.

Advertisement

2. Related work

Imaging applications for clinical methods and pathology study need high performance and efficiency. Several image processing environments and processing architectures exist for the medical imaging application, but to the best of our information, a programmable and high-performance scalable processing system is required for medical imaging applications.

Ibanez et al. [5] designed an open-source medical imaging toolkit called the Insight Toolkit (ITK). The developed toolkit supports a number of platforms and gives programmers with an extended C++ framework of software tools for image understanding.

Schroeder et al. [6] developed an open-source Visualization ToolKit (VTK) for three-dimensional processing and visualization. VTK toolkit assists C++ libraries and algorithms for different parallel processing technologies and provides an interface to integrate with different databases.

Wolf et al. [7] introduced Medical Imaging Interaction Toolkit (MITK) that assists to program medical image-based clinical software. The MITK gives an application programming framework that links with the ITK and the VTK libraries. The proposed HPMIS provides a medical imaging programming model, which supports data registration, memory management, and processing in hardware, and is easy to program. The HPMIS programming model is scalable for different architectures having reduced instruction set computing (RISC) multi-processors, application specific hardware cores, and vector processors.

Bakalash et al. [8] suggested the MediCube system for 3D medical imaging. The system gives the reconstruction and visualization of three-dimension complex medical images. The processing system of the MediCube uses a RISC processor that performs the parallel processing for real-time voxel representation, whereas the HPMIS handles 3D medical imaging using a specialized local memory system and uses reconfigurable processing cores to process the incoming data. Bluetechnix [9] Black camera boards use specialized DSP processors and provide excellent image processing abilities at the expense of power, price, and complexity. Lee et al. [10] proposed a SONY DSP processing-based system.

Jinghong et al. [11] proposed image processing system having heterogeneous (DSP and FPGA) processing cores. The HPMIS uses FPGA accelerators for high-speed data acquisition from single or multiple sensors. The HPMIS processing architecture uses multi-processor core architecture, each core using 32-bit RISC instruction set architecture (ISA) is integrated with the design for programmability, average performance, and low-cost systems.

Pratx et al. [12] proposed a method for processing line-projection tasks to process the PET image reconstruction. The proposed method uses Nvidia processing cores and the CUDA programming model. Owens et al. [13] addressed the implementation of RISC processors on GPU cores-based processing system architecture. The authors showed the value of GPU for the tremendous compute capacity that reproduces the CT images and presents them on screen.

Jiang et al. [14] suggested processing of 3D discrete transformation using hardware accelerator. The proposed system decreases the size of the accelerators lookup tables. The accelerators are developed in hardware description language and examined on Xilinx Virtex-E FPGA board.

Coric et al. [15] displayed a CT-based parallel beam back-projection algorithm and tested on FPGA-based hardware architecture. The FPGA-based system obtains the speedups up to 100× against the software running on a 1 GHz Pentium.

Tassadaq et al. proposed programmable graphics controller [16, 17] for low-cost and low-power graphics system. The system takes two-dimensional images to process applications. Tassadaq et al. [18] also have proposed a visual processing system called ViPS for medical applications. The ViPS uses multiple RISC, vector processor, and multiple FPGA-based hardware accelerators. The ViPS gives a high performance by using advanced hardware architectural support such as registration system, memory system, and processing system.

Advertisement

3. High-performance medical imaging system

Imaging has become an essential tool in modern medicine science. Numerous powerful platforms to register, store, analyze, and process medical imaging applications have appeared in recent years. However, these systems are developed for a specific imaging application problem [19, 20, 21] and do not support generalized problems [22], which includes an indigenous system that could be customized according to the local needs. Moreover, the cost of such systems is on higher side that contributes to the increase in expenses of each scan. This results in discouraging patients, who could not afford these high costs and therefore compromise on their health. Also, in many medical imaging systems such as MRI, temporal resolution has been reported to be a major concern, which causes discomfort to patients with severe illness/pain as they have to be motionless for a longer period of time. In this chapter, a high-performance medical imaging system (HPMIS) is proposed that registers stores and processes complex and multi-dimensional medical imaging application in real-time. The high-performance medical imaging system provides a user-friendly programming environment and high-performance architecture to perform imaging data acquisition, registration, storage, analysis, and performs segmentation, filtering, and recognition for complex real-time complex and multidimensional medical images or videos. The proposed system is highly reliable concerning cost, performance, and power. High-performance medical imaging system architecture (shown in Figure 1) is implemented and tested on advanced heterogeneous multi-core and GPU-based systems.

Figure 1.

High-performance medical imaging system.

Figure 2.

High-performance specialized medical memory.

The proposed high-performance medical imaging system (HPMIS) has five sub systems: registration system, memory system, processing system, programming toolkit, and test applications.

3.1. Registration system

The registration system (RS) deals with a number of medical imaging devices with various interfaces. The RS supports multidimensional and scattered graphics data. The RS manages X-ray radiography, ultrasonic images, etc. and complex images such as MRI, CT, etc. The RS utilizes a RISC core and FPGA accelerator to access data from medical imaging devices. The RISC core is employed to obtain medical images having a complex structure, whereas the FPGA core is used to gather data having fixed data flow patterns. The registration system aligns images reasonably isotropic resolution and do not distort or deform the anatomical and pathological structures of images. The system is designed for navigation and visualization of multimodality and multidimensional images for 2D/3D, 4D Cardiac-CT and 5D Cardiac-PET-CT displays. The registration system supports all DICOM Files (mono-frame, multi-frames), the MRI/CT multi-frame format, JPEG Lossy, Lossless, LS and 2000, RLE, Monochrome1, Monochrome2, RGB, YBR, Planar and Palettes. The system supports 32-bit pixel resolution and is directly linked with memory system.

3.2. Memory system

The HPMIS memory system uses three types of memories: the program memory, the specialized medical memory, and the main memory. The HPMIS program memory utilizes the memory access descriptors [APMC][PPMC][PMC] that contain the knowledge of imaging data registration, data transfers, storage device, and processing cores. The descriptors provide the medical imaging programmer to choose a processing core for image processing and explain the complicated image structure.

3.2.1. High-performance specialized imaging memory

The HPMIS high-performance specialized imaging memory (shown in Figure 2) is directly connected to the processing system and provides single cycle data access. The high-performance specialized imaging memory holds the complex medical image data pattern to speed up the data transfer accesses. The high-performance specialized imaging memory has parameterizable and programmable 3D memory structure. Depending upon the available on-chip memory, the high-performance specialized medical memory can be organized into multiple frames. To exploit parallelism better, the frames of high-performance specialized medical memory are arranged physically into a multi-dimensional (1D/2D/3D) architecture to map the kernel access pattern on the high-performance specialized imaging memory.

3.2.2. Main memory

The slowest type of memory in the HPMIS architecture is main memory and is accessible by the whole system. The main memory has SDRAM, SD/SDHC memories, etc. interfaces to read/write data.

3.2.3. Permanent memory

The permanent memory of high-performance medical imaging system is used to store dense and large size of medical images in a nonvolatile memory permanently.

3.3. Processing system

The processing system is used to perform image processing on images stored in memory system. The medical application-specific hardware accelerator, vector processor, and the multi RISC processor cores are used in the HPMIS processing system.

3.4. Programming

The HPMIS Medical Application Programming Model (MAPM) helps medical application programmers to develop applications without acknowledging hardware arrangements and details. The MAPM uses image processing functions for image segmentation, reconstruction, features extraction, and computation; and it also provides memory management and registration task and separate task for visualization. The MAPM presents various function calls, which include medical imaging flow, control, and processing. The MAPM data transfer tasks help disordered, random, strider 1D, 2D, 3D, and automated blocking for image/video transfer processes and move data between the medical imaging devices and the HPMIS memory system. The HPMIS MAPM intelligently pipeline, overlap, and parallelize image processing tasks based on hardware processing and memory resources. Table 1 presents functions that are used to develop the applications for the HPMIS architecture. The HPMIS incorporates 100 function calls for medical applications. The application calls are written in C/C++. The function allows the programmer to execute the function on RISC or Vector processors.

Table 1.

C/C++ device drivers to program/operate HPMIS.

3.5. Test applications

To validate the HPMIS system, different medical applications are executed. The medical applications includes segmentation, K-mean clustering, object detection, object recognition, features extraction, 3D-Stereo filtering, ultrasonic image reconstruction, time domain filtering, frequency domain filtering, alpha blending, and Iris-based disease recognition.

Advertisement

4. Results

The high-performance medical imaging system is tested with the test applications discussed in Section 3.5. The results show that HPMIS-based architecture draws low power and gives high performance for the test applications. While executing test application on multi-RISC and FPGA cores of HPMIS, the results show that the HPMIS FPGA-cores improve the application performance 2.4 times compared to multi-core RISC system. The HPMIS performs real-time complex images reconstruction at higher rate.

Advertisement

5. Conclusion

In this chapter, we have introduced and developed a high-performance medical imaging system (HPMIS) for medical imaging applications. The HPMIS has the capability to register multi-dimensional, complex, and high-resolution images, and processes the application on different heterogeneous multi-core processors. The HPMIS system gives efficient imaging access from multiple medical equipment. The HPMIS provides a medical programming environment that includes different function calls for the development of medical imaging application. The programming environment provides the data structure to present medical images or videos.

References

  1. 1. OGRE: Object-Oriented Graphics Rendering Engine. http://www.ogre3d.org/
  2. 2. Alzaabi A et al. Tcct: A GUI table comparison computer tool. In: Emerging Trends in Computing, Informatics, Systems Sciences, and Engineering. Springer; 2013
  3. 3. Siegel R, DeSantis C, Jemal A. Colorectal cancer statistics. CA: A Cancer Journal for Clinicians. 2014;64(2):104-117
  4. 4. Siegel RL, Miller KD, Jemal A. Cancer statistics, 2016. CA: A Cancer Journal for Clinicians. 2016;66(1):7-30
  5. 5. Ibanez L, Schroeder W, Ng L, Cates J. The Itk Software Guide; 2003
  6. 6. Schroeder WJ, Avila LS, Hoffman W. Visualizing with vtk: A tutorial. Computer Graphics and Applications, IEEE. 2000;20(5):20-27
  7. 7. Wolf I, Vetter M, Wegner I, Nolden M, Bottger T, Hastenteufel M, et al. The medical imaging interaction toolkit (mitk): A toolkit facilitating the creation of interactive software by extending vtk and itk. In: Medical Imaging 2004, Pages 16-27. International Society for Optics and Photonics; 2004
  8. 8. Bakalash R, Kaufman A. Medicube: A 3d medical imaging architecture. Computers & Graphics. 1989;13(2):151-157
  9. 9. Bluetechnix Black DSP. http://www.xbow.com
  10. 10. June-Sok L, Jung Y-Y, Kim B-S, Ko S-J. An advanced video camera system with robust AF, AE, and AWB control. IEEE Transactions on Consumer Electronics. 2001;47(3):694-699
  11. 11. Jinghong D, Yaling D, Kun L. Development of image processing system based on DSP and FPGA. In: Electronic Measurement and Instruments; 2007. ICEMI’07
  12. 12. Pratx G, Cui J-Y, Prevrhal S, Levin CS. 3-d tomographic image reconstruction from randomly ordered lines with cuda. W. Mei Hwu (Morgan Kaufmann, San Francisco, CA 2011). pp. 679-691
  13. 13. Owens JD, Luebke D, Govindaraju N, Harris M, Krüger J, Lefohn AE, Purcell TJ. A survey of general-purpose computation on graphics hardware. In: Computer Graphics Forum. Vol. 26. Wiley Online Library; 2007. pp. 80-113
  14. 14. Jiang RM, Crookes D. Fpga implementation of 3d discrete wavelet transform for real-time medical imaging. In: Circuit Theory and Design, 2007. ECCTD 2007. 18th European Conference on. IEEE; 2007. pp. 519-522
  15. 15. Coric S, Leeser M, Miller E, Trepanier M. Parallel-beam backprojection: An fpga implementation optimized for medical imaging. In: Proceedings of the 2002 ACM/SIGDA Tenth International Symposium on Field-Programmable Gate Arrays. ACM;2002. pp. 217-226
  16. 16. Hussain T, Palomar O, Cristal A, Unsal O, Ayguady E, Valero M, et al. Stand-alone memory controller for graphics system. In: The 10th International Symposium on Applied Reconfigurable Computing (ARC 2014). ACM; 2014
  17. 17. Hussain T, Haider A. PGC: A pattern-based graphics controller. The International Journal of Circuits and Architecture Design. 2014
  18. 18. Hussain T, Palomar O, Cristal A, Ayguadé E, Amna H. HPMIS: Visual processing system for medical imaging. In 2015 8th International Conference on Biomedical Engineering and Informatics (BMEI). Vol. 43(4), 1998. IEEE; 2015. pp. 40-45
  19. 19. Flannery BP et al. Three-dimensional X-ray microtomography. Science. 1987;237(4821):1439-1444
  20. 20. Liang Z-P, Lauterbur PC. Principles of Magnetic Resonance Imaging: A Signal Processing Perspective. SPIE Optical Engineering Press; 2000
  21. 21. Khadivi KO. Computed tomography: Fundamentals, system technology, image quality, applications. Medical Physics. 2006;33:8, 3076-3076
  22. 22. Sakamoto T. Medical image processing apparatus, medical image processing method, and medical image processing system. U.S. Patent Application 10/002,423, filed. 19 June 2018

Written By

Tassadaq Hussain, Amna Haider, Muhammad Shafique and Abdelmalik Taleb-Ahmed

Submitted: 06 November 2017 Reviewed: 17 December 2018 Published: 24 July 2019