You are on page 1of 6

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/323193463

Comparative analysis of image processing algorithms for visual prosthesis

Conference Paper · April 2017


DOI: 10.1109/ICCSP.2017.8286551

CITATIONS READS
0 289

3 authors, including:

Sharmilli Nukapeyi Ramakrishna Gandi


Gayatri Vidya Parishad College of Engineering Annamacharya Institute of Technology & Sciences
6 PUBLICATIONS   11 CITATIONS    13 PUBLICATIONS   33 CITATIONS   

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Smart Object Picker View project

Professor Appraisal Data mining View project

All content following this page was uploaded by Ramakrishna Gandi on 29 September 2018.

The user has requested enhancement of the downloaded file.


International Conference on Communication and Signal Processing, April 6-8, 2017, India

Comparative Analysis of Image Processing


Algorithms for Visual Prosthesis
N.Sharmili, N.Swapna and G.Ramakrishna
 Abstract—Visual prosthesis is one of the emerging technology ganglion cells using electrical pulses applied through an
in biomedical implants which helps to restore useful vision for electrode array. Ganglion cells generate a nerve impulse and
visually impaired people suffering from retinal degenerative transmits to the optic nerve, which carries it to the brain where
diseases. The visual prosthesis consists of two parts. One is the electrical signals are interpreted as a visual image [1-3].
external and the other is internal (surgically implanted). The
Visual prosthesis consists of an external part and an internal
external part includes a camera, image processor and a
transmitter. The image processor captures the video using a implant, which are connected by a transcutaneous inductive
camera, encodes the captured information to data forms that can link. The external image processing unit processes the camera-
be recognized by implanted stimulator and transmits the coded captured image and transmits the processed information
data through transmitter. The internal implanted part includes a serially to internal implant through wireless link. The internal
receiver and electrode array. The receiver converts the received implant takes the serial image information, transforms it into
bit stream into electrical signals and stimulates the survival parts
electrical pulses and delivers them to the electrode array. The
of the retina using electrical signals applied through the electrode
array. The survival parts then sends a signal to the brain where it electrodes stimulate the healthy neurons in eye, and visual
is interpreted as image/video. The researchers suggested that an sensations are perceived.
array of 600-1000 electrodes are required to do some basic Epiretinal Prosthesis (EP) mentioned in this paper is one of
forms of vision such as reading large letters, recognizing the dominant approach in visual prosthesis where majority of
faces..etc. The image processor is the crucial part of visual researchers or working. The commercially available Epi-
prosthesis where it captures high resolution image data from Retinal Implant (ARGUSII at $115,000) was unable to restore
camera, and resizes it into 1024 resolution image. To extract 1024
pixel vital information, the related image processing algorithms
useful vision to patients due to its 60 electrodes resolution.
include RGB to Gray conversion, Gamma encoding, Edge Present day retinal prosthesis projects are mainly aimed to
Detection and down sampling are reported in this paper. The develop an implant with several hundreds of electrodes (even
comparative analysis of image processing algorithms provided up to 1024 due to limited space to implant on the surface of
here will drive an image processing strategy with less retina), so that the blind can read letters, navigate a room and
computational complexity of achieving better performance that is recognize faces [4][5][7]. Research in this paper is focused on
suitable to implement on MIPS based microcontroller.
image-processing in external part in addition to implant design
Index Terms—BWIP, Image Processing, Edge Detection, for better visual perception [3]-[11].
Epiretinal prosthesis, RIRS, Vision prosthesis. The captured image from camera is having large number of
pixels (640*480 image having 307200 number of pixels).
I. INTRODUCTION These pixels have to be reduced to 1024 number of pixels i.e.
the number of electrodes implanted in internal part of EP. Best
V ISUAL prosthesis is currently being developed world
wide ameliorate more than 40 million blind individuals in
the world whose plight would be due to incurable retinal
image processing strategy is needed to extract useful
information from 32x32 resolution images for improving
degenerative diseases. The retinal neuro degenerative diseases visual perception and ability to conduct visual tasks daily. This
such as Age-related Macular Degeneration (AMD) and paper presents a best image processing strategy by analyzing
Retinitis Pigmentosa (RP) are the predominant causes of and implementing different image processing algorithms such
human blindness due to progressive degeneration of as gray conversion, smoothing and edge detection and down
photoreceptors in the retina but internal layers of the eye are sampling are studied and implemented for object recognition
still healthy. Visual prosthesis is an electronic device designed and feature extraction... etc. However the internal implant
to bypass the damaged parts of the retina by electrically design with real electrodes for electrical stimulation is beyond
stimulating the surviving healthy parts of the retina i.e. the scope of this paper and it can be developed by standard
approach as described in research articles[7].
The paper is organized as follows. Section II summarizes
N.Sharmili is with Dept. of Computer Science and Engg., GVPCEW, the system architecture of the EP. Section III describes the
Visakhapatnam, India (e-mail: logintosharmi@gmail.com).
N.Swapna is with Dept. of Computer Science and Engg., KIET, Korangi, Image processing strategy for EP using different image
India (e-mail: swapna_b7@yahoo.com). processing techniques. Section IV represents the comparative
G.Ramakrishna is with Dept. of Computer Science and Engg., VIIT, analysis and results of EP. Finally, Section V concludes the
Visakhapatnam, India (e-mail: gandiramakrishna@gmail.com).
paper.

978-1-5090-3799-5/17/$31.00 ©2017 IEEE


EXTERNAL BODY WORN INTERNAL RECEIVER STIMULATOR
IMAGE PROCESSOR
Image /
video RF Stimuli
Signal Camera Signal
Image Processor ASK demodulator
Simulated LED
Data Encoder Decoder Electrode Array
RF Transmitter Electrode
Stimulator

Fig. 1. Block diagram of Epiretinal prosthesis system


data required to display one full frame and support the update
II. EPIRETINAL PROSTHESIS SYSTEM ARCHITECTURE
rate 20 - 30 fps for viewing a good motion picture and refresh
Epiretinal Prosthesis System shown in Fig. 1. consists of rate 50 - 60 fps for flicker-free vision. To meet these real
Body Worn Image Processor (BWIP) as external part that is time requirements of vision processing for natural vision, the
body worn, Internal Receiver Stimulator (IRS) as internal that image processing algorithms with less computational time are
is surgically implanted under the retina and a wireless required. Figure 2 shows image processing strategy for better
telemetry which links external and internal parts. External part visual perception.
comprises a video camera, Image processor and a RF
power/data transmitter. External part captures the image/video Smoothing
RGB to Gray Edge Detection
using the camera, process them using image processor to Conversion

match the channel number and color depth of the stimulation Captured RGB
image
electrode array, then encodes into data frame format and
transmits the processed data frames serially to ASK modulated Output data to Image Image
internal implant Encoding Compression
RF transmitter for wireless transmission. The internal portion
010111000…
consists of a RF power/data receiver circuit which receives
Fig. 2. Block diagram for Image processing in External Image processor
power/ data and transmits the received data to Stimulation unit
controller. Stimulation controller delivers electric pulses
corresponding to received data and route those pulses to In the external part, the web camera captures the 640x480
electrode array which stimulates the targeted tissue cells. image in JPEG format and transmits it to the image processor.
This paper represents a newer image processing strategy for After studying various image processing algorithms in
better image prediction in developing higher density image MatLab, the image processing strategy i.e. RGB to Gray
processor for next generation retinal prosthesis. The camera conversion, Smoothing, Edge Detection, Down sampling is
and image processor modules can be integrated and preferred [6][13]. To implement these image processing
implemented as standalone app in a manner similar to mobile algorithms in hardware, it would be first implemented in Java
based Android App. using built in functions which can be converted to machine
code. The processed image is transformed into encoded data
III. IMAGE PROCESSING STRATEGY FOR EPIRETINAL for transferring to the internal implant part.
PROSTHESIS
A. RGB to GRAY conversion
Majority of researchers are working on 1024 electrode
In external part, the captured RGB image using a camera is
epiretinal prosthesis [6][13-16] to do basic vision tasks.
given to image processor which converts it into gray format to
Image processor is an essential part of visual prosthesis which
reduce computational complexity in processing high volume of
captures image using camera and implements a specific image
data (volume of RGB image is 3 times larger than gray image).
processing strategy to transform image to data forms of size
For RGB to Gray image conversion the three algorithms
(i.e. 1024 electrodes implanted inside the human eye) that can
Lightness method, Average method and Luminosity method
be accepted by implanted stimulator. With this restriction,
are implemented.
the image processor has to provide satisfying image
Lightness Method
processing ability and also has to extract useful information
from the captured image that provides an even better view of The lightness method takes average to the most prominent
the world. Various image processing algorithms like RGB to and least prominent colors for RGB to Gray image conversion.
Grey color pixel value = (max(R, G, B) + min(R, G, B)) / 2
Gray conversion, Smoothening, Edge detection and image
compression are analyzed and implemented to help blind for Average Method
better visual perception. [12- 14]. The real time requirements The average method averages the pixel color values for
of natural vision processing in BWIP is that it should hold the RGB to Gray image conversion.
Grey color pixel value = (R + G + B) / 3 three techniques of image enhancement, Figure 4(d) is best
Luminosity Method compared to others visually
The luminosity method or weighted method is an advanced
version of the average method which also averages the color
values, but it results a weighted average to account for human
perception. Human eye is more sensitive to green color than (a) (b) (c) (d)
Fig. 4. (a) Input Gray Image, (b) Negative Image, (c) Logarithmic function
other colors, so green is heavily weighted. In this method, the
Image, (d) Gamma corrected Image
formula 0.21 R + 0.72 G + 0.07 B is used for RGB to Gray
image conversion. C. Edge detection
The converted enhanced image is given as input to the
image edge detection method. Edges are sharp local changes
of intensity in an image and occur on the boundary between
(a) (b) (c) (d) two different regions in an image. The process of finding
Fig. 3. (a) RGB Image, (b) Lightness Image, (c) Average Image, (d) abrupt changes in pixel intensity which characterize
Luminosity Image boundaries of objects in a scene or image is called edge
Among the three algorithms, the luminosity method works best detection. The main goal of edge detection is to extract the
important features from the edges of an image (e.g., corners,
and computationally less expensive for RGB to grayscale
lines, curves) for basic computer vision tasks such as
image conversion. recognition and tracking. The common and efficient edge
B. Image enhancement detection algorithms are Sobel Edge Detection and Canny Edge
The converted Gray Image is given as input to the Image Detection.
Enhancement Method. Image Enhancement technique Sobel Edge Detection:
improves the quality of the image for a specific application.
The Sobel edge detection is a discrete differential edge
The three types of functions used frequently for image
enhancement are Negative Transformation, Logarithmic detection which uses two 3x3 kernels: one calculates the
Functions and Gamma Correction or Power-law Functions. gradient in the x-direction (i.e. Gx), while the other one
Negative transformation: calculates the gradient in the y-direction (i.e. Gy) are shown in
Fig. 5. The image is convolved with both kernels to
Negative transformation is a linear transformation in which
output intensities are identical to input intensities. The approximate the derivatives in horizontal and vertical change.
expression for Negative Transformation is s = 256 – r . The At each given point, magnitude of the gradient can be
Negative transformation results inverting the input pixel values calculated with G = .To compute the gradient
(i.e. gray level intensities of the image) there by producing a
negative like image. magnitude faster with G = |Gx| + |Gy|
Log Transformation:- Gx Gy
Log transformation compresses the dynamic range of 1 2 1 -1 0 1
images with large variations in pixel values and maps a narrow 0 0 0 -2 0 2
range of low gray-level values in the input image into a wider -1 -2 -1 -1 0 1
range of the output levels. The general form of Log (a) Horizontal Mask (b) Vertical Mask
transformation:
Fig. 5. Masks used by Sobel Operator
s =c log (1+r) Where c is a constant, r is the gray pixel value and r ≥
0 Because of Sobel operator’s smoothing effect (Gaussian
This transformation is used to expand the values of dark smoothing), the detected image is less sensitive to noise. Sobel
pixels in an image while compressing the higher level values. method does not generate high accurate image for edge
detection due to its smoothing effect, but its quality is adequate
Gamma Correction: enough to be used in numerous applications. The steps we are
Gamma correction is a form of nonlinear operation that following in Sobel edge detection algorithm are
encodes and decodes luminance values of video or still image Step 1: Smoothing – Blurring the image to reduce the noise.
systems. Gamma correction is defined by the following power- Step 2: Finding gradients – mark the edges where the
law expression: Gamma= A* Grayγ or Vout = A Vinγ Where A gradients of the image have large magnitude.
is a constant, the input and output values are non-negative real Canny Edge Detection:
values. For A = 1, input and output values are in the range 0–
Canny edge detection algorithm is a sophisticated
1. For gamma value γ < 1 is called as encoding gamma and the algorithm to detect a wide range of edges in a gray image. The
process of encoding with this compressive power-law is called canny edge detection is implemented in two steps as follows:
gamma compression. A gamma value γ > 1 is called as Step 1: Smoothing the image to remove the noise. The
decoding gamma and the process of the expansive power-law smoothing filter used here is Gaussian filter.
is called gamma expansion. By observing the results of above Step 2: Finding gradients mark the edges where the gradients
of the image have large magnitude. The formula for gradients
of the image in X and Y directions where the kernel size is 2×2 Haar Wavelets:
array matrix i.e. Pixel [i][j]. The Haar wavelet transform is simple, memory efficient,
[i][j] = pixel[i+1][j-1] + 2×pixel[i+1][j]+pixel[i+1][j+1] - pixel[i-1][j-1] – exactly reversible without the edge effects characteristic of
2 × pixel[i-1][j] - pixel[i-1][j+1] other wavelets and computationally cheap. Haar wavelet
[i][j] = pixel[i-1][j+1] + 2×pixel[i][j+1] +pixel[i+1][j+1] - pixel[i-1][j-1] reflects only the changes between adjacent pixel pairs and
– 2 × pixel[i][j-1] - pixel[i+1][j-1] doesn’t having overlapping windows. The transform estimates
Step 3: Non maximum suppression removes pixels not related two coefficients namely, scaling and wavelet function
to an edge and local maxima should be marked as edges. coefficients which are mainly calculated from pair wise
Step 4: Double thresholding which takes only potential edges. averages and differences. For an input of 2n numbers, the Haar
Step 5: Edge tracking by hysteresis in which final edges are
wavelet transform calculating and storing the difference and
determined by suppressing all edges that are not strong edges.
passing the sum from pair-wise input values. This process is
Hysteresis uses upper and lower thresholds. If a pixel gradient
repeated recursively by pairing up the sums to generate the
is above the upper threshold, then the pixel is marked as an
edge. If a pixel gradient is below the lower threshold, then that next scale: finally resulting in 2n-1 differences and one final
pixel is discarded. Finally, if the pixel gradient is between the sum. The pair-wise average of numbers is taken in this down
two thresholds, then that pixel is connected above the upper sampling for EPS and this process is repeated until the down
threshold is marked as an edge. sampled image size is 32x32 which is shown in figure 7.
Although canny edge detection works for better detection of Daubeshis Wavelet:
edges especially in noisy state, but it consumes more time due
to its complex computation. The results of Edge detection is The most dominant discrete wavelet transforms was
shown in figure 6. To achieve real time requirements of natural Daubechies wavelet transform which is used for texture feature
vision the simplest sobel edge detection is preferred. analysis due to its orthogonal and compact support abilities.
The Daubechies wavelet transforms are smoother than Haar
wavelet, but they are differing in computing the scaling signals
and wavelets.Daubechies wavelet transform calculating
running averages and differences (via scalar products with
(a) (b) (c) (d) scaling signals and wavelets) using few more values of the
Fig. 6. (a) Input Enhanced Image, (b) Gaussion Image, (c) Sobel Edge signal to produce averages and differences.
Detection Image, (d) Canny Edge Detection Image
This difference will make Daubechies more efficient for
D. Image compression performing the signal processing tasks such as compression
The converted edge detection image is given as input to the and noise removal for image enhancement and signal
image compression method. For the process of image recognition.
compression, two types of image compression algorithms haar
and Daubeshies wavelets are analysed.
TABLE I
COMPARATIVE ANALYSIS OF IMAGE PROCESSING ALGORITHMS
Captured RGB image(640×480)

Input for the


image processor

Algorithm - 1 Algorithm - 2 Algorithm - 3 Proposed Algorithm

Luminosity Method
RGB to Gray Of time complexity 65
conversion
Lightness Method Average Method(70) Luminosity Method (65)
(80)(640×480) (640×480) (640×480)
Gamma correction
Image algorithm of time
Enhancement complexity 230
Gamma correction (230) Negative Transform (75) (640×480) Log Transform (90)
(640×480) (640×480)
Sobel edge detection of
Image Edge time complexity 160
detection
Sobel edge detection Canny edge detection (180)
(160)(640×480) (640×480)
Haar wavelets transform
Image Down of time complexity 70
sampling
Haar wavelets(80) (32×32) Daubeshis wavelets(70)(32×32)
There are many types in Daubechies transforms. In this luminosity, Gamma correction, Sobel edge detection and Haar
section the simplest Daubechies 4 wavelet transform is wavelets algorithms is used. The processed image is
discussed which uses overlapping windows to reflect changes transmitted to the internal part of the visual prosthesis system
between all pixel intensities. or smart eye. The basic vision tasks such as reading large text,
The Daubechies D4 transform consists of four wavelet and walking without assistance and recognition of an object are
scaling coefficients. The scaling coefficients sum is also one, achieved by using the above algorithms in the image processor
thus the calculation is averaging over four adjacent pixels. In in the visual prosthesis system. The presented results would
Daubechies D4 wavelet algorithm, the coefficients for the encourage researchers to use this image processing approach
scaling function are represented as hi (high) and the wavelet of visual prosthesis for their future work in portable image
processor.
coefficients are represented as gi (low). One step of the
forward transform can be represented as infinite matrix of REFERENCES
wavelet coefficients shown below, multiplied by the infinite [1] World Health Organization, ―Magnitude and causes of visual
signal vector (s). impairment,‖ Fact Sheet no. 282, November 2004, http://www.who.int/
mediacentre/factsheets/fs282/en/.
ai =…h0, h1, h2, h3,0,0,0,0,0,0,0,0… si [2] R. W. Massof and D. L. Rickman, ― Obstacles encountered in the
ci =… l0, l1, l2, l3, 0,0,0,0,0,0,0,0… si+1 development of the low vision enhancement system,‖ Optometry and Vision
ai+1 =…0,0,h0, h1, h2, h3,0,0,0,0,0,0… si+2
Science, vol. 69, no. 1, pp. 32–41, 1992.
ci+1 =…0,0,l0, l1, l2, l3,0,0,0,0,0,0,… si+3
[3] E. Peli, L. E. Arend, and G. T. Timberlake, ―Computerized image
ai+2 =…0,0,0,0,h0, h1, h2, h3,0,0,0,0,… si+4
enhancement for visually impaired people: new tech- nology, new
ci+2 =…0,0,0,0,l0, l1, l2, l3,0,0,0,0,0,… si+5
possibilities,‖ Journal of Visual Impairment & Blindness, vol. 80, no. 7,
ai+3 =…0,0,0,0,0,0,h0, h1, h2, h3,0,0,… si+6
pp. 849–854, 1986.
ci+3 =…0,0,0,0,0,0,l0, l1, l2, l3,0,0,… si+7
[4] E. Peli, R. B. Goldstein, G. M. Young, C. L. Trempe, and S. M. Buzney,
The dot product (inner product) of the infinite vector and a ―Image enhancement for the visually impaired: simulations and
experimental results,‖ Investigative Ophthalmology & Visual Science, vol.
row of the matrix produces either a smoother version of the
32, no. 8, pp.2337 - 2350, 1991.
signal (ai) or a wavelet coefficient (ci). In an ordered wavelet [6] N.Sharmili, P.S. Ramaiah, and G.Swamynadhan, ―Image
transform, the smoothed (ai) are stored in the first half of an n Compression and Resizing for Retinal Implant in Bionic Eye‖,
element array region. The wavelet coefficients (ci) are stored International Journal of Computer Science &Engineering Survey, vol.2,
in the second half the n element region. The algorithm is no.2, pp. 30-37, 2011.
[7] Banarji, A., V. S. Gurunadh, S. Patyal, T. S. Ahluwalia, D. P. Vats, and
recursive. The smoothed values become the input to the next
M. Bhadauria, "Visual prosthesis: Artificial vision," Medical Journal
step. The wavelet coefficient values are moved along the Armed Forces India 65, no. 4, pp. 348-352, 2009.
signal vector and a four element dot product is calculated. [8] G.Wang, P.Wang, Y. Tang, and W. Liu, ―Analysis of dual band power
Expressed in terms of arrays, for the forward transform this and data telemetry for biomedical implants,‖ IEEE Trans. Biomed.
would be Circuits Syst., vol. 6, no. 3, pp. 208–215, Jun. 2012..
[9] Matteucci, B. Paul , Philip Byrnes-Preston, Spencer C. Chen, H. Lovell,
ai = s[i] _ h0 + s[i + 1] _ h1 + s[i + 2] _ h2 + s[i + 3] _ h3 and Gregg J. Suaning. "ARM-based visual processing system for
ci = s[i] _ g0 + s[i + 1] _ g1 + s[i + 2] _ g2 + s[i + 3] _ g3 prosthetic vision." In Engineering in Medicine and Biology Society,
The resultant output of Daubeshis is shown in figure 7. EMBC, 2011 Annual International Conference of the IEEE, pp. 3921-
3924. IEEE, 2011.
[10] Fink, Wolfgang, Cindy X. You, and Mark A. Tarbell. "Microcomputer-
based artificial vision support system for real-time image processing for
camera-driven visual prostheses."Journal of biomedical optics 15, no.
1,pp. 016013-016013, 2010.
[11] E. Noorsal, K. Sooksood, H. Xu, R. Hornig, J. Becker, and M.
Ortmanns, ―A neural stimulator frontend with high-voltage compliance
(a) (c)
(b) and programmable pulse shape for epiretinal implants,‖ IEEE J. Solid-
Fig. 7. (a) Edge Detection Image (b) Haar Compression Image (c) State Circuits, vol. 47, no. 1, pp. 244–256, 2012.
Daubeshis Compression Image [12] Zhou, D. David ., Jessy D. Dorn, and Robert J. Greenberg. "The
Argus® II retinal prosthesis system: An overview." In Multimedia and
IV. COMPARATIVE ANALYSIS AND RESULTS Expo Workshops (ICMEW), 2013 IEEE International Conference on,
pp. 1-6. IEEE, 2013.
By applying different combinations of the above image [13] N.Sharmili, P.S. Ramaiah, ― A Real- Time Research Platform for
processing strategies, the best image processing methodology is Extraocular Image Processing for Epiretinal Prosthesis‖, International
evaluated for better visual perception. The outputs of process flow of Journal of Computer Science and Information Technologies, vol.6,
image processing methodology using various combinations of image no.2,pp. 1134-1140,2011.
processing algorithms is shown in table I. The presented results are [14] W. Liu and M. S. Humayun, ―Retinal prosthesis,‖ in Proc. IEEE
satisfactory for visual perception to do daily tasks. Int.Solid-State Circuits Conf., Dig. Tech. Papers, pp. 218–219, 2004,
[15] S. H. Greenwald, A. Horsager, M. S. Humayun, R. J. Greenberg, M. J.
McMahon, and I. Fine, ―Brightness as a function of current amplitude
V. CONCLUSION in human retinal electrical stimulation,‖ Invest. Ophthalmol. Visual
Sci., vol. 50, no. 11, pp. 5017–5025, Nov. 2009.
After analysis of the all the above image processing algorithms [16] Zou, Yuexian, Guangyi Shi, Yufeng Jin, and YaliZheng. "Extraocular
we conclude that some are the best algorithms to get the better image processing for retinal prosthesis based on DSP." In Nano/Micro
Engineered and Molecular Systems, 2009. NEMS 2009. 4th IEEE
Visual Perception. To achieve the real time requirements of International Conference on, pp. 563-566. IEEE, 2009.
vision processing in smart eye for better vision, the fast and
efficient Image processing system which includes normalized

View publication stats

You might also like