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,,∗

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 / 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 (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-