[ieee 2013 ieee international autumn meeting on power, electronics and computing (ropec) - morelia,...
TRANSCRIPT
A Prototype Helping Device for the VisuallyImpaired Using an Optical to Mechanical Transducer
Garibaldi Pineda GarcıaFacultad de Ingenierıa Electrica
Universidad Michoacana deSan Nicolas de Hidalgo
Email: [email protected]
Jose Ortiz BejarDivision de Estudios de PosgradoFacultad de Ingenierıa Electrica
Universidad Michoacana deSan Nicolas de Hidalgo
Email: [email protected]
Francisco Mercado MiramontesFacultad de Ingenierıa Electrica
Universidad Michoacana deSan Nicolas de Hidalgo
Email: [email protected]
Abstract—Computer hardware is becoming ubiquitous, fromkitchen appliances to research machines to cell phones. Thisavailability of computing capable circuits has driven its costdown, thus making several applications possible on commercialhardware. Computer vision is one of such tasks, it is nowpossible to create computer based helping devices for the visuallyimpaired.
In recent years there has been an explotion of computervision hardware for many applications, 3D scanners in particularwhich are used to interact with regular operative systems orgames. This paper presents an apparatus which uses one of suchdevices (Kinect) developed by Microsoft that senses the worldin 3D. This information is then processed with a low-powercomputer called the BeagleBone whose output will be sent tothe user via mechanical pulses.
Keywords—Kinect, BeagleBone, Computer Vision, Visually Im-paired.
I. INTRODUCTION
Computer hardware is present in everyday tasks, fromautomated vacuum cleaners to washing machines to games.A recent increase in production facilities around the worldhas made it easy and affordable for independent groups todevelop small computer systems. One of such computersis known as the BeagleBone, which was codeveloped byTexas Instruments workers and DigiKey. This small and powerefficient computers are known as barebone computers [1].
Consumer electronics, particularly video game systems,have started using computer vision as a way to interact with theuser. All three major game consoles (XBox 360, Playstation3 and Wii) use some form of computer vision to change themore common button smashing interface for a user movementbased one. The Kinect was developed to create a more naturaluser interface with the XBox 360 and has a significantly lowprice [2].
Given this conditions in the technological arena, one mustwonder if people have done research to create a “visual pros-thesis” with commercially available hardware. To our surprise,there’s been very few work in this field of study [3].
In this paper an attempt to create one of such devicesis presented. We intend to capture depth information via theKinect sensor, then process it in the BeagleBone computer
and give a vibratory output that the user can clearly identify.In section II we dive deeper into the characteristics of thecomponents used to create our transducer. Section III willdescribe the planning and building phases. Some tests and theirresults are presented in section IV. Finally some conclusionsand future research directions are given in section V.
II. COMPONENTS
A. BeagleBone
The BeagleBone is one of the first of tinker-orientedbarebones to hit the market. It was co-developed by TexasInstruments workers and the DigiKey company, this deal meantthat DigiKey was to be the exclusive distributor at the begin-ning. Nowadays the BeagleBone can be purchased in severalstores and it remains one of the most popular developmentenvironment boards. Its principal components are an ARMCortex-A8 CPU running at 720MHz, 256 MB of DDR-RAM,a wired ethernet port, a microSD slot, both host and clientUSB ports and multiple general purpose input/ouput (GPIO)pins. One key advantage of the BeagleBone is that it embracesthe “physical computing” movement, partially started by theArduino Community [4]. The fact that it has integrated GPIO,was the main reason to choose the BeagleBone for this project.
B. Kinect
The Kinect was developed as a more natural user inter-face for the XBox 360. It’s main use is to translate usersmovements into actions inside a game environment or theconsole’s operative system (OS). According to [2], it has acolor RBG camera, an infrared projector and camera, plus fourmicrophones. Further official information is to be purchasedor reverse-engineered, the later was done by the OpenKinectCommunity [5]. They offered a bounty for the first hackerthat could develop a working driver, this effort paid off andthus the Freenect driver was created. This driver works on allmajor OS and is being ported to the most popular hardwareplatforms as well. Since we used an ARM based platform andwere restricted to the Linux OS, we opted to install an UbuntuLinux version to be able to install the Freenect driver withouthassle. The Kinect was designed for indoor use and it canestimate distances accurately from around 0.5 to 4 meters.
978-1-4799-2370-0/13/$31.00 ©2013 IEEE
C. Micro-motors
Our apparatus uses infrared light as its input (commingfrom the Kinect) and vibration pulses as outputs. We decidedto use micro-motors with an unbalanced load, typically foundin cellphones. The main reason to use them was that theyuse a small amount of power (3.3 V and 100 mA), they arecommercially available and react in a short time. Due to thewide range of products and a lack of proper branding, wehad to use a compilation of available datasheets for physicallysimilar motors in order to estimate power consumption andoperating voltage.
III. DEVELOPMENT
The first stage of development was to test the Freenectdriver under Ubuntu Linux, this had to be done using a remotesession via the Secure Shell (SSH) protocol due to the factthat the BeagleBone does not have a display output. Onceinstalled and tested, we divided the screen in 6 imaginarysections (Figure 1) which will be mapped to an output vibrator.
Figure 1: Imaginary screen divisions.
We calculate the minimum distance found in each screensection, given this distance value we can assign a frequency forthe vibration pulses. When an object is far from the user, thenthe frequency of pulses will be small. As the object approaches,this frequency is to be increased; when the object is at adistance that is less than a meter, then all pulses stop, thusindicating an imminent threat. This behavior is illustrated inFigure 2.
Vibration Pulses
Distance to user
time
time
leng
thvo
ltage
minimumdistancethreshold
Figure 2: Top: object to device distances. Bottom: Corresponding vibrationpulse frequency.
The proposed hypothesis is that, given enough training, aperson may be able to substitute the lack of visual informationwith this pulses. The goal is not to make a virtual eye, but avery basic depth information sensor that can produce real-timeoutputs that the brain would then read as visually as possible.
Once this behavior was defined and implemented, we hadto transform the outputs to vibrations. We initially tried topower the motors with whatever power the BeagleBone woulddeliver, but most of the motors did not emit a perceivablevibration. This lead to the design of a simple power circuitwhich will act as an electronically activated switch (Figure 3).This circuit proved to be sufficient to make the vibrators workand was replicated for every output.
Figure 3: Motor driver circuit.
Information flows as follows (Figure 4), the Kinect samplesdistances and estimates them for a full frame (640×480 pixels).This frame is divided in six imaginary regions, from whichsix corresponding minimum distances are calculated. Eachof this minimum distances is mapped to vibration pulses,whose frequency changes inversely depending on the measureddistance. This process is repeated 30 times per second, asthis is the native frame-rate the Kinect sensor uses. The fullyassembled device is shown in Figure 5.
SCENE K inec t
Vibrator x0, y0
Vibrator x1, y1
Vibratorx2, y2
Vibratorx3, y3
Vibrator x4, y4
Vibratorx5, y5
BeagleBoneGet minimum distance per screen sectionOutput vibration per motor
Figure 4: Information flow.
Figure 5: Fully assembled device.
IV. TEST CASES
Initial tests where done by one of the researchers toverify the proper function of our device. During this trialswe corroborated that the Kinect is an indoors-only device andwhen the apparatus is exposed to sunlight, distance estimationgets erratic and it returns a matrix full of the blank distancedata for every pixel.
After this first tests, the device was given to people indifferent environments (a television studio, work offices anda computer laboratory). Figure 6 shows one of the participanttest subjects.
Figure 6: Test user
Some of the test users suggested that the placement ofthe Kinect sensor may not be optimal, though the proposedsolution (putting it on the chest area) is probably not a goodone. The idea behind placing the Kinect on the head is to allow
the user to rapidly change its point of view, while putting iton the chest may hamper this ability.
Further tests exposed an unexpected weakness, we hadplaced the vibrators too close to each other for them to besufficiently identifiable. This lead to alter the device and placethe motors further apart from each other, two on each side ofthe torso and two on the abdominal region.
It is important to notice that no training was given to testusers. This indicated that the device could be used instantly,though with proper experience, a visually impaired person mayhave no problems at all to use it [6]. At the time of writing thispaper, we require further testing with a more diverse audienceand in completely unknown scenarios. The later because wesuspect that users memory may have hampered their judgementon the effectiveness of our device.
V. CONCLUSIONS AND FUTURE WORK
A. Conclusions
Commercially available hardware is good enough to createseveral projects, including open hardware prosthesis. Our de-vice is based on the Kinect sensor, which can only work onindoor environments and is a closed source device, thoughis cheap enough to experiment with. The BeagleBone isexpensive compared to other barebones, but it has built-inGPIOs giving it the advantage of having everything we neededto process and output information in a single board.
With this research project we combined computer visionand electronics to create a prosthetic device that is economi-cally feasible and, if one was to massively manufacture, thiscosts would go even further down.
The human brain’s plasticity [6] is a key component for ourdevice to work, recent studies have found that neural pathwaysare rerouted, leading to the “replacement” of, say, sight viasound or sight via tongue nervous terminals (taste). Our deviceworks under the assumption that, with sufficient training onecould replace (to an extent) one sense with another.
Our goals where to create a device that could be builtwith commercial hardware for a low price. That this devicecould transform depth measurements into vibrating outputs thata visually impaired person could interpret. This goals wherefully accomplished.
We wanted to create an apparatus that worked both indoorsand outdoors, this was not a hard goal in the sense that solvingthe problem for either condition was sufficiently good. We gotgood results for indoor environments.
B. Future work
Replacing the input for our sensor is our number onepriority, not because it has poor performance, but because itdoes not work properly outdoors. We have been looking atsome other options for 3D sensing [7], but they seem to requireadditional computational power. Another option for this stageof the device’s information flow is to use ultra-sound basedsensors, but they’re prone to error.
Moving from a solely ARM based barebone to a morecomplex one, such as NVidia’s Tegra platform which includes
parallel processors in the form of Graphics Processing Units(GPU), would allow our device to run more demanding algo-rithms for depth estimation.
REFERENCES
[1] BeagleBone Community. Beaglebone system reference manual rev a6.[Online]. Available: http://beagleboard.org/bone?
[2] Microsoft Robotics. Kinect sensor specifications. [Online]. Available:http://msdn.microsoft.com/en-us/library/hh438998.aspx
[3] R. Manduchi and J. Coughlan, “(computer) vision without sight,”Commun. ACM, vol. 55, no. 1, pp. 96–104, Jan. 2012. [Online].Available: http://doi.acm.org/10.1145/2063176.2063200
[4] Arduino. Arduino web page. [Online]. Available: http://arduino.cc[5] O. Community. Openkinect project. [Online]. Available: http://
openkinect.org/wiki/Main%20Page[6] A. Amedi, N. Raz, P. Pianka, R. Malach, and E. Zohary, “Early ‘visual’
cortex activation correlates with superior verbal memory performancein the blind,” Nature Neuroscience, vol. 6, pp. 758–766, 2003.
[7] Y. Y. Schechner and N. Kiryati, “Depth from defocus vs.stereo: How different really are they?” Int. J. Comput. Vision,vol. 39, no. 2, pp. 141–162, Sep. 2000. [Online]. Available:http://dx.doi.org/10.1023/A:1008175127327
[8] K. Khoshelham, “Accuracy analysis of kinect depth data.” [On-line]. Available: https://wiki.rit.edu/download/attachments/52806003/ls2011%20submission%2040.pdf
[9] D. S. Ladislao Mathe and G. Gomez. Estudio del funcionamiento delsensor kinect y aplicaciones para bioingenierıa. [Online]. Available:http://www.computacion.efn.uncor.edu/sites/default/files/123.pdf
[10] A. Nagai. How to program a beaglebone on c/c++.[Online]. Available: http://www.cs.gunma-u.ac.jp/%7enagai/wiki/index.php?BeagleBone%20%A4%CE%BB%C8%A4%A4%CA%FD
[11] J. J. Castellanos Lopez. Installing libfreenect under Linux. [Online].Available: http://www.youtube.com/watch?v=LgY2zf5qKnA
[12] D. Molloy. Beaglebone: Gpio programming on arm embedded linux.[Online]. Available: http://www.youtube.com/watch?v=SaIpz00lE84
[13] M. Richardson. How-to: Get started with the beaglebone. [Online].Available: http://www.youtube.com/watch?v=Y0uqRVxismQ
Jose Ortiz Bejar got a B.Sc. degree in Electrical Engineering from theUniversidad Michoacana de San Nicols de Hidalgo in 2005. In 2008 hegot a M.Sc. degree in Electrical science from the UMSNH. His researchincludes Web development, Operative systems administration and ArtificialIntelligence.
Garibaldi Pineda Garca got a B.Sc. degree in Electrical Engineeringfrom the Universidad Michoacana de San Nicols de Hidalgo in 2005. In 2008he got a M.Sc. degree in Electrical science from the UMSNH. Some of hisresearch deals with human-computer interaction, software for mobile devicesand web development.
Jos Francisco Mercado Miramontes got a B.Sc. degree in ComputerEngineering from the Universidad Michoacana de San Nicols de Hidalgo in2013. His research interests are networking and mobile devices.