A Novel Visual Processing System Architecture for Medical Imaging
Total Page:16
File Type:pdf, Size:1020Kb
Biomedical Signal Processing and Control 38 (2017) 293–301 Contents lists available at ScienceDirect Biomedical Signal Processing and Control jo urnal homepage: www.elsevier.com/locate/bspc ViPS: A novel visual processing system architecture for medical imaging a,b,c,∗ Tassadaq Hussain a Riphah International University, Islamabad, Pakistan b Microsoft Barcelona Supercomputing Center, Barcelona, Spain c Unal Color of Education Research and Development (Pvt) Ltd., Islamabad, Pakistan a r t i c l e i n f o a b s t r a c t Article history: Imaging has become an essential tool in modern medicine science. Numerous powerful platforms to Received 10 June 2016 register, store, analyze and process medical imaging applications appear in recent years. In this arti- Received in revised form 27 January 2017 cle, we have designed an advanced visual processing system (ViPS) that stores and processes complex Accepted 4 June 2017 and multi-dimensional medical imaging application. The ViPS provides a user-friendly programming environment and high-performance architecture for data acquisition, registration, storage, analysis and Keywords: performs segmentation, filtering, and recognition of complex real-time complex and multidimensional Embedded computer vision medical images or videos. The proposed architecture is highly reliable concerning cost, performance, and High performance image processing systems power. ViPS is designed and evaluated on a Xilinx Virtex-7 FPGA VC707 Evaluation Kit. The performance of ViPS is compared with the Heterogeneous Multi-Processing Odroid XU3 board and GPU Jetson TK1 Embedded Development Kit with 192 CUDA cores based graphic systems. In comparison to the Hetero- geneous Multi-core and GPU based Graphics systems, the results show that ViPS improves 2.4 and 1.4 times system performance respectively, for iridology application. While executing real-time complex images reconstruction at 2× and 1.25× of higher frame rate, the ViPS achieves 15.2× and 5.26× of per- formance improvement while running various image processing algorithms. The ViPS gets 3.01× and × 1.13 of speedup for video processing algorithms and draws 1.55 and 2.27 times less dynamic power. © 2017 Elsevier Ltd. All rights reserved. 1. Introduction satisfy the industry demands, the bio-medical enterprise is moving towards high-performance computing designs. As the need for such Graphics software programs are growing and are desirable in a equipment increases, application specific and high-performance vast spectrum ranging from medical science to the gaming technol- architecture is needed to operate medical applications. ogy because they can generate realistic images and enable graphics Aligning the medical information collected from various medi- effects to produce different viewpoints and visual clues to the user. cal types of equipment and to display them using different visual Different software engines [1–3] are introduced which provide an approaches gives more detail knowledge of understanding a dis- efficient means of data reuse, analysis and processing for a set of ease state and reason. The visual representation uses alignment related products. Those software solutions do provide flexibility and registration of the complex and multi-dimensional images. The and re-programmability, but graphics performance is limited by alignment and registration of complex images having sparse data the computation power of graphics devices. and control flow are a cumbersome process. Typically a medical High Performance Computing (HPC) graphics system architec- machine (e.g. Radiological Imaging) spend 75% of processing time in tures are now being used in medical imaging for early diagnosis, alignment and registration. For example, a Computed Tomography treatment planning, managing the physical form of the patients and (CT) imaging application aligns three-dimensional space images monitoring disease progression. As the biomedical industry tries to with isotropic resolution. While performing image acquisitions, the achieve the low treatment cost and earlier prediction of disease, the applications have to keep the anatomical and disease compositions. medical imaging equipment takes a critical role in health care. To Digital Signal Processors (DSPs), Single Instruction Multiple Data (SIMD) Processor, Application Specific Instruction Set Processor (ASIP), Field Programmable Gate Arrays (FPGAs) are also used for medical image processing. Graphical Processing Units (GPUs) ∗ Correspondence to: Riphah International University, Islamabad, Pakistan. are specialized processors with dedicated memory and multiple E-mail address: [email protected] http://dx.doi.org/10.1016/j.bspc.2017.06.003 1746-8094/© 2017 Elsevier Ltd. All rights reserved. 294 T. Hussain / Biomedical Signal Processing and Control 38 (2017) 293–301 Stream Multiprocessor (SM) having SIMD support that conven- platform system and provides programmers with an extensive C++ tionally performed floating point operations required for rendering suite of software tools for image analysis. The C++ implementation graphics. The GPUs are widely used in medical imaging over the of generic programming generates an efficient and portable appli- last few years, and the GPU programming tools are dramatically cation for the different environment and architectures. Schroeder evolved and become capable of executing the different scientific et al. [7] designed a freely available Visualization ToolKit (VTK) algorithm. On the other side, GPUs computing architecture became for 3-dimensional processing, and display. The toolkit supports more powerful; it allows to perform complex and compute inten- C++ libraries and algorithms for scalar, vector, tensor, texture. The sive techniques which give better results to medical diagnosis toolkit supports multi-core architectures and parallel program- and conclusion. Many medical visualization and image-processing ming features and can be integrated with different databases. The techniques use the same algorithms of the disciplines, such as pat- VTK can run on Linux/Unix and Windows Operating Systems. Wolf tern recognition, it allows medical scientist to execute existing et al. [8] proposed Medical Imaging Interaction Toolkit (MITK) that algorithms/techniques on GPU architectures for medical imaging. help to write an image-based clinical software. With the support The medical statistic [4,5] shows that the early-stage disease of an application framework, the MITK couples the ITK and the prediction e.g. breast, colorectal and lung cancers, etc., can save VTK libraries. It offers features which are unavailable in ITK and lives. This requires improving disease identification screening tech- VTK. The MITK provides features for the development of interactive niques to create a high-quality, three-dimensional reconstruction medical imaging. ViPS provides a medical imaging Medical Applica- based on tomographic images. With the increase of medical scanner tion Programming Model which supports data registration, memory technology complexity, it requires a high-performance computing management and processing in hardware and is easy to program. architecture for real-time application processing. Existing comput- The ViPS Medical Application Programming Model is scalable for ing architectures (GPUs, DSPs, Multi-cores, etc.) have hardware different architecture having Reduced Instruction Set Computing design and programming limitation for medical imaging applica- (RISC) multi-processors, application specific hardware cores, and tions. Therefore, a reliable programmable and high-performance vector processors. application specific architecture is required for real-time image Bakalash et al. [9] proposed MediCube system for 3D medi- reconstruction applications. cal imaging. The system performs the restoration, investigation, In this paper, we intend to develop a low-power, low-cost, easy and presentation of 3 dimension volumetric medical images. The to use and high-performance medical graphics architecture called system uses voxel-based Cube architecture which is a general pur- visual processing system (ViPS). ViPS provides a high-performance pose processor and employs parallel processing for real-time voxel FPGA-based design which takes complex image/video data hav- imagery. The ViPS handles 3D medical imaging using specialized ing 1D/2D/3D data structures from medical imaging interfaces or scratchpad memory and uses reconfigurable application specific stored in the memory, manages them in an on-chip specialized hardware accelerators. memory and process them using specialized hardware accelerators Specialized DSP based systems like the Bluetechnix [10] Black- or multi-core system. The ViPS Medical Application Programming fin camera boards provide superior image processing abilities at Model reduces the programming effort involved in the manu- the expense of power, price, and complexity. Lee et al. [11] offered ally arrangement of data transfer requests, memory management, SONY Digital Signal Processor (DSP) based video system. Jinghong input/output peripheral management and achieve the required et al. [12] proposed DSP and FGPA based image processing system. performance of the medical imaging applications. ViPS provides ViPS uses application specific hardware accelerators for high speed low-cost and efficient control mechanism that arranges many data acquisition from single or multiple sensors. Multi-processor imaging peripherals and interface with integrated processing units. core architecture, each core using 32-bit RISC