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 Instruction Set Archi-
Specialized medical hardware accelerators are integrated into the tecture (ISA) is integrated with the design for programmability,
design as they consume low power and delivers high-performance. average performance, and low-cost systems.
ViPS supports multi-peripherals (camera, display) and processing Guillem et al. [13] presented a novel method of computing
cores without the backing of an Operating System (OS). While line-projection operations for the application of positron emission
comparing results with the Heterogeneous Multi-core and GPU- tomography (PET) image reconstruction on Nvidia GPU architec-
based Graphics systems, it shows that ViPS improves 2.4 and 1.4 ture using CUDA programming model. Owens et al. [14] discussed
times system performance respectively while executing the iridol- the implementation of general-purpose processing on graphics
ogy application. The ViPS performs real-time images reconstruction processor architecture. And presented the importance of GPU for
at 2× and 1.25× of higher frame rate and achieves 14.6× to 4.8× of the huge compute capability to reconstruct the image work of
speedup while executing different image processing applications. Computed Tomography (CT). The ViPS architecture uses multi-
The ViPS gets 3.01× and 1.13× of speedup for video processing and vector processors and Specialized Medical Memory, which helps
draws 1.55 and 2.27 times less dynamic power. the design to execute 3-dimensional compute intensive images for
The rest of this paper is organized as follows: Section 2 dis- medical applications.
cusses the literature review and Section 3 describes ViPS system. Many real-time medical imaging systems perform compute
Finally, Section 5 presents the results and Section 6 provides the intensive tasks and specialized access pattern applications on
conclusions. hardware architectures. Richard et al. [15] proposed a hardware
accelerator for 3D Discrete Wavelet Transform. The system uses
a technique to decrease the size of the lookup tables. The sug-
2. Related work gested architectures are designed in VHDL and tested on Virtex-E
FPGA board. The design can operate at a maximum of 85 MHz clock
Imaging applications for clinical procedures and disease analy- speed and can perform a five-level 3D wavelet analysis. Srdjan et al.
sis require a high degree of performance and accuracy. Many image [16] presented a CT based parallel-beam back projection algorithm
processing toolkits and hardware architectures exist for the medi- and executed it on an FPGA hardware. The FPGA-based system
cal imaging application, but to the best of our knowledge a scalable, achieves 100× of speedup against the same algorithm written in
portable and high-performance system architecture is required software running on a 1 GHz Pentium. Tassadaq et al. proposed Pro-
which can be programmed easily. grammable Graphics Controller [17,18] for low cost and low power
Lbanez [6] developed an open-source medical imaging toolkit graphics system. The system takes 2-dimensional images to process
called the Insight Toolkit (ITK). The ITK supports a number multi- applications. The ViPS architecture provides easy to use program-