IMPLEMENTATION METHOD ON MEDICAL IMAGE COMPRESSION SYSTEM: A REVIEW <s> SOFTWARE AND HARDWARE-BASED IMPLEMENTATION OF THE COMPRESSION SYSTEMS <s> New image and video coding standards have pushed the limits of compression by introducing new techniques with high computational demands. The Advanced Video Coder (ITU-T H.264, AVC MPEG-4 Part 10) is the last international standard, which introduces new enhanced features that require new levels of performance. Among the new tools present in AVC, the context-based binary arithmetic coder (CABAC) offers significant compression advantage over baseline entropy coders. CABAC is meant to be used in AVC's Main and High Profiles, which target broadcast and video storage and distribution of standard and high-definition contents. In these applications, hardware acceleration is needed as the computational load of CABAC is high, challenging programmable processors. Moreover, rate-distortion optimization (RDO) increases CABAC's load by two orders of magnitude. In this paper, we present a fast and new architecture for arithmetic coding adapted to the characteristics of CABAC, including optimized use of memory and context managing and fast processing able to encode more than two symbols per cycle. A maximum processing speed of 185 MHz has been obtained for 0.35 mu, able to encode high quality video in real time. Some of the proposed optimization may also be applied to software implementations obtaining significant improvements <s> BIB001 </s> IMPLEMENTATION METHOD ON MEDICAL IMAGE COMPRESSION SYSTEM: A REVIEW <s> SOFTWARE AND HARDWARE-BASED IMPLEMENTATION OF THE COMPRESSION SYSTEMS <s> In order to solve the compute-intensive character of image processing, based on advantages of GPU parallel operation, parallel acceleration processing technique is proposed for image. First, efficient architecture of GPU is introduced that improves computational efficiency, comparing with CPU. Then, Sobel edge detector and homomorphic filtering, two representative image processing algorithms, are embedded into GPU to validate the technique. Finally, tested image data of different resolutions are used on CPU and GPU hardware platform to compare computational efficiency of GPU and CPU. Experimental results indicate that if data transfer time, between host memory and device memory, is taken into account, speed of the two algorithms implemented on GPU can be improved approximately 25 times and 49 times as fast as CPU, respectively, and GPU is practical for image processing. <s> BIB002 </s> IMPLEMENTATION METHOD ON MEDICAL IMAGE COMPRESSION SYSTEM: A REVIEW <s> SOFTWARE AND HARDWARE-BASED IMPLEMENTATION OF THE COMPRESSION SYSTEMS <s> Convolution is one of the most important operators used in image processing. With the constant need to increase the performance in high-end applications and the rise and popularity of parallel architectures, such as GPUs and the ones implemented in FPGAs, comes the necessity to compare these architectures in order to determine which of them performs better and in what scenario. In this article, convolution was implemented in each of the aforementioned architectures with the following languages: CUDA for GPUs and Verilog for FPGAs. In addition, the same algorithms were also implemented in MATLAB, using predefined operations and in C using a regular x86 quad-core processor. Comparative performance measures, considering the execution time and the clock ratio, were taken and commented in the paper. Overall, it was possible to achieve a CUDA speedup of roughly 200× in comparison to C, 70× in comparison to Matlab and 20× in comparison to FPGA. <s> BIB003 </s> IMPLEMENTATION METHOD ON MEDICAL IMAGE COMPRESSION SYSTEM: A REVIEW <s> SOFTWARE AND HARDWARE-BASED IMPLEMENTATION OF THE COMPRESSION SYSTEMS <s> In this paper, we implemented both sequential and parallel version of fractal image compression algorithms using CUDA (Compute Unified Device Architecture) programming model for parallelizing the program in Graphics Processing Unit for medical images, as they are highly similar within the image itself. There are several improvement in the implementation of the algorithm as well. Fractal image compression is based on the self similarity of an image, meaning an image having similarity in majority of the regions. We take this opportunity to implement the compression algorithm and monitor the effect of it using both parallel and sequential implementation. Fractal compression has the property of high compression rate and the dimensionless scheme. Compression scheme for fractal image is of two kind, one is encoding and another is decoding. Encoding is very much computational expensive. On the other hand decoding is less computational. The application of fractal compression to medical images would allow obtaining much higher compression ratios. While the fractal magnification an inseparable feature of the fractal compression would be very useful in presenting the reconstructed image in a highly readable form. However, like all irreversible methods, the fractal compression is connected with the problem of information loss, which is especially troublesome in the medical imaging. A very time consuming encoding pro- cess, which can last even several hours, is another bothersome drawback of the fractal compression. <s> BIB004 </s> IMPLEMENTATION METHOD ON MEDICAL IMAGE COMPRESSION SYSTEM: A REVIEW <s> SOFTWARE AND HARDWARE-BASED IMPLEMENTATION OF THE COMPRESSION SYSTEMS <s> Ultrasound imaging uses high-frequency sound waves in medical imaging like obstetric diagnosis, stones in kidney etc. As ultrasound images are captured in real-time, they can show movement of the body's internal organs as well as blood flowing through blood vessels. In this paper medical B-mode architecture of the backend system is implemented in Kintex-7 FPGA platform. The backend processing consists of envelope detection which uses fixed filter coefficients for Hilbert transformation, log compression technique to achieve the desired dynamic range for display and image enhancement technique to increase the contrast. In-phase and quadrature phase components are computed using envelope detection block, whose absolute value is compressed to fit the dynamic range of display and interpolated to avoid artifacts while displaying. Further full scale contrast stretch enhancement technique is used to improve the image clarity. The implementation of the backend algorithms along with image enhancement technique on FPGA, show that the resolution of display is improved and also the hardware resource utilization is minimized leading to compact design for portable ultrasound systems. <s> BIB005
The nature of image compression is focused on software implementations and showing results. Thus, several contemporary researchers related to image compression in integrating of software and hardware will be explored. An efficient implementing both sequential and parallel versions of fractal image compression algorithms using compute unified device architecture (CUDA) programming model for parallelizing the program in graphical processer unit (GPU) for medical images is described in BIB004 . Several improvements in terms of an algorithm for the implementation have been made. Fractal image compression is based on self-similarity of an image, which means that the image has similarity in a majority of its regions. Original implementation with three kernel black layouts in 8 x 8, 16 x 16, and 32 x 32 were conducted. Ultimately, the 16 x 16 blocks had performed better with the best results of execution time for different image sizes using global memory. Other researcher proposed a method of parallel processing of Sobel edge detector and homomorphic filtering BIB002 . Both GPU parallel code and the CPU serial code were designed for each image-processing algorithm and the calculation was based on single precision floating point values to ensure comparability of the results. Results have shown that for speed comparison between the Sobel edge detectors, the GPU has significantly improved computing speed when the image size increased. The speedups archived range from 3.6 (128 x 128) to 25.3 (2048 x 2048). On the other hand, homomorphic filtering has shown approximately 40 times speedup. Thus, it can be concluded that the GPU has significantly improved approximately 25 times and 49 times as fast as CPU BIB002 . As we know, ultrasound (US) images are captured in real-time, means all the interaction and movement through the blood vessels of the internal body. According to BIB005 , the architecture of medical Bmode for the backend was implemented in Kintex-7 FPGAs platform and MATLAB Simulink. In order to achieve the ideal dynamic range for display and image enhancement, fixed filter coefficient for Hilbert transformation and log compression techniques was used. Results show, the resolution of display was improved and the hardware resource utilization is minimized leading to compact design for portable ultrasound systems. The comparisons between CUDA, C, MATLAB and FPGAs for the convolution of greyscale images are reported in BIB003 . The C implementation was based on an equation which h was followed by a sequentially separable algorithm. Next, for MATLAB implementation, a built in conv2() function was used to perform the convolution. A-part from that, CUDA was implemented through two (2) different kernels; the first part was through the line kernels and the second part was through the column kernel. For FPGAs implementation, the architecture was developed with the assistance of SOPC Builder and Verilog HDL coding. Based on the results, it is inferable that CUDA has presented the best performance in execution time, a number of clock cycles and speedup in comparison to C, MATLAB and the implementation of FPGAs architecture and growth in image resolution. The overall CUDA performance has archived speedups of roughly 200 times in comparison to C, 70 times in comparison to MATLAB and 20 times in comparison to FPGAs. CABAC was used in H.264/AVC and it has offered compression results that are 10%-15% better than those obtained with the baseline CAVLC entropy coder BIB001 . CABAC consists of a two-tier process. Firstly, events produced during the encoding process are converted into sequences of binary symbols, sometimes people known as the binarization process. Then, a binary arithmetic coder was used to perform the actual compression. Figure 11 shows the general procedure for binary AC and CABAC procedures. This design was implemented using 0.35µ standard cells libraries to obtain the maximum speed of 186 MHz with the moderate area. A FPGAs based implementation has been considered using the Virtex-II 2000 device and the maximum speed had reached 92Mhz, with only 10% of the slices were used. BIB001 The CABAC encoding process consisted of three (3) elementary steps; context model selection, binarization, and self-adaptive binary arithmetic encoding, while the last step consisted of probability estimation and binary arithmetic encoder reported in  . Figure 12 illustrates the CABAC block diagram. In CABAC, the probability state will be updated after every binary symbol's coding, which allowed the probability estimation in the context model to keep up with the real video stream's statistical properties thus improving the coding efficiency. Results from the proposed CABAC have shown, that CABAC algorithm can tremendously decrease computations. At the same time, by adaptively changing the packet size, a better coding speed for CABAC can be obtained.