Blind navigation with a wearable range camera and vibrotactile helmet

Similar documents
E90 Project Proposal. 6 December 2006 Paul Azunre Thomas Murray David Wright

t t t rt t s s tr t Manuel Martinez 1, Angela Constantinescu 2, Boris Schauerte 1, Daniel Koester 1, and Rainer Stiefelhagen 1,2

Lecture 19: Depth Cameras. Kayvon Fatahalian CMU : Graphics and Imaging Architectures (Fall 2011)

Perception. Read: AIMA Chapter 24 & Chapter HW#8 due today. Vision

The IQ3 100MP Trichromatic. The science of color

KINECT CONTROLLED HUMANOID AND HELICOPTER

Substitute eyes for Blind using Android

Welcome to this course on «Natural Interactive Walking on Virtual Grounds»!

Probabilistic Robotics Course. Robots and Sensors Orazio

LaserPING Rangefinder Module (#28041)

Column-Parallel Architecture for Line-of-Sight Detection Image Sensor Based on Centroid Calculation

Haptic presentation of 3D objects in virtual reality for the visually disabled

the human chapter 1 Traffic lights the human User-centred Design Light Vision part 1 (modified extract for AISD 2005) Information i/o

Haptic Feedback Technology

Search Strategies of Visually Impaired Persons using a Camera Phone Wayfinding System

Towards a 2D Tactile Vocabulary for Navigation of Blind and Visually Impaired

702. Investigation of attraction force and vibration of a slipper in a tactile device with electromagnet

Part 1: Determining the Sensors and Feedback Mechanism

Motion Controlled Manipulator System (MCMS) Vincent Wong Kevin Wong Jing Xu Kay Sze Hsiu-Yang Tseng Arnaud Martin

Enhanced Shape Recovery with Shuttered Pulses of Light

A Design Study for the Haptic Vest as a Navigation System

The Marauder Map Final Report 12/19/2014 The combined information of these four sensors is sufficient to

Developing Frogger Player Intelligence Using NEAT and a Score Driven Fitness Function

PROJECT BAT-EYE. Developing an Economic System that can give a Blind Person Basic Spatial Awareness and Object Identification.

Exploring Surround Haptics Displays

Comparison of Haptic and Non-Speech Audio Feedback

Prototype Realization

CSE 165: 3D User Interaction. Lecture #7: Input Devices Part 2

Journal of Mechatronics, Electrical Power, and Vehicular Technology

P1.4. Light has to go where it is needed: Future Light Based Driver Assistance Systems

Estimation of spectral response of a consumer grade digital still camera and its application for temperature measurement

Literature Review. Humans navigate by using visual cues to perceive depth from two-dimensional images,

ESE 350 HEXAWall v 2.0 Michelle Adjangba Omari Maxwell

Image Manipulation Interface using Depth-based Hand Gesture

Visione per il veicolo Paolo Medici 2017/ Visual Perception

SMART WEARABLE PROTOTYPE FOR VISUALLY IMPAIRED

Heads up interaction: glasgow university multimodal research. Eve Hoggan

ASSISTIVE TECHNOLOGY BASED NAVIGATION AID FOR THE VISUALLY IMPAIRED

Sensing and Perception

Enhanced Collision Perception Using Tactile Feedback

Gregory Bock, Brittany Dhall, Ryan Hendrickson, & Jared Lamkin Project Advisors: Dr. Jing Wang & Dr. In Soo Ahn Department of Electrical and Computer

Haptic Cueing of a Visual Change-Detection Task: Implications for Multimodal Interfaces

Computer Vision. Howie Choset Introduction to Robotics

Improvement of Accuracy in Remote Gaze Detection for User Wearing Eyeglasses Using Relative Position Between Centers of Pupil and Corneal Sphere

PRODUCT OVERVIEW FOR THE. Corona 350 II FLIR SYSTEMS POLYTECH AB

A Foveated Visual Tracking Chip

Reikan FoCal Aperture Sharpness Test Report

Single Camera Catadioptric Stereo System

ROBCHAIR - A SEMI-AUTONOMOUS WHEELCHAIR FOR DISABLED PEOPLE. G. Pires, U. Nunes, A. T. de Almeida

By Pierre Olivier, Vice President, Engineering and Manufacturing, LeddarTech Inc.

Technology offer. Aerial obstacle detection software for the visually impaired

3D ULTRASONIC STICK FOR BLIND

Vibrotactile Apparent Movement by DC Motors and Voice-coil Tactors

Reikan FoCal Aperture Sharpness Test Report

LDOR: Laser Directed Object Retrieving Robot. Final Report

SMART VIBRATING BAND TO INTIMATE OBSTACLE FOR VISUALLY IMPAIRED

Output Devices - Non-Visual

A Survey on Assistance System for Visually Impaired People for Indoor Navigation

Perception. Introduction to HRI Simmons & Nourbakhsh Spring 2015

An External Command Reading White line Follower Robot

Evaluation of Visuo-haptic Feedback in a 3D Touch Panel Interface

Reikan FoCal Aperture Sharpness Test Report

DECISION NUMBER FOURTEEN TO THE TREATY ON OPEN SKIES

DepthTouch: Using Depth-Sensing Camera to Enable Freehand Interactions On and Above the Interactive Surface

Technical Datasheet. Blaxtair is an intelligent cameraa with the ability to generate alarms when a pedestrian is detected

Marine Debris Cleaner Phase 1 Navigation

Exercise questions for Machine vision

Safe Local Navigation for Visually Impaired Users with a Time-of-Flight and Haptic Feedback Device

University of Nevada, Reno. Augmenting the Spatial Perception Capabilities of Users Who Are Blind. A Thesis Submitted in Partial Fulfillment

Reikan FoCal Aperture Sharpness Test Report

A Comparative Study of Structured Light and Laser Range Finding Devices

Interactive Simulation: UCF EIN5255. VR Software. Audio Output. Page 4-1

Moving Obstacle Avoidance for Mobile Robot Moving on Designated Path

Modelling and Simulation of Tactile Sensing System of Fingers for Intelligent Robotic Manipulation Control

HamsaTouch: Tactile Vision Substitution with Smartphone and Electro-Tactile Display

Controlling vehicle functions with natural body language

Part Number SuperPix TM image sensor is one of SuperPix TM 2 Mega Digital image sensor series products. These series sensors have the same maximum ima

Evaluation of Five-finger Haptic Communication with Network Delay

Perception. What We Will Cover in This Section. Perception. How we interpret the information our senses receive. Overview Perception

ECC419 IMAGE PROCESSING

Fabrication of the kinect remote-controlled cars and planning of the motion interaction courses

Electronic Travel Aid Based on. Consumer Depth Devices to Avoid Moving Objects

RADIOMETRIC CALIBRATION OF INTENSITY IMAGES OF SWISSRANGER SR-3000 RANGE CAMERA

VR/AR Concepts in Architecture And Available Tools

Gesture Recognition with Real World Environment using Kinect: A Review

MULTIPLE SENSORS LENSLETS FOR SECURE DOCUMENT SCANNERS

Toward an Augmented Reality System for Violin Learning Support

Smart Navigation System for Visually Impaired Person

Development of Video Chat System Based on Space Sharing and Haptic Communication

Be aware that there is no universal notation for the various quantities.

Intelligent Robotics Sensors and Actuators

EBU - Tech 3335 : Methods of measuring the imaging performance of television cameras for the purposes of characterisation and setting

Sensors. CS Embedded Systems p. 1/1

Novel Hemispheric Image Formation: Concepts & Applications

Shopping Together: A Remote Co-shopping System Utilizing Spatial Gesture Interaction

Kissenger: A Kiss Messenger

Exercise 5: PWM and Control Theory

Bluetooth Low Energy Sensing Technology for Proximity Construction Applications

WHITE PAPER Need for Gesture Recognition. April 2014

University of Florida Department of Electrical and Computer Engineering Intelligent Machine Design Laboratory EEL 4665 Spring 2013 LOSAT

Transcription:

Blind navigation with a wearable range camera and vibrotactile helmet (author s name removed for double-blind review) X university 1@2.com (author s name removed for double-blind review) X university 1@2.com (author s name removed for double-blind review) X university 1@2.com ABSTRACT We present a wayfinding system that uses a range camera and an array of vibrotactile elements we built into a helmet. The range camera is a Kinect 3D sensor from Microsoft that is meant to be kept stationary, and used to watch the user (i.e., to detect the person s gestures). Rather than using the camera to look at the user, we reverse the situation, by putting the Kinect range camera on a helmet for being worn by the user. In our case, the Kinect is in motion rather than stationary. Whereas stationary cameras have previously been used for gesture recognition, which the Kinect does very well, in our new modality, we take advantage of the Kinect s resilience against rapidly changing background scenery, where the background in our case is now in motion (i.e., a conventional wearable camera would be presented with a constantly changing background that is difficult to manage by mere background subtraction). The goal of our project is collision avoidance for blind or visually impaired individuals, and for workers in harsh environments such as industrial environments with significant 3-dimensional obstacles, as well as use in low-light environments. Categories and Subject Descriptors I.4.8 [Image Processing and Computer Vision]: Scene Analysis Depth cues, Range data, Motion; I.4.9 [Image Processing and Computer Vision]: Applications; H.1.2 [Information Systems]: Models and PrinciplesUser/Machine Systems[Human factors] Keywords personal safety devices, blind navigation, Microsoft Kinect, depth sensor, human computer interface ACM MM 2011 Scottsdale, Arizona USA 1. INTRODUCTION 1.1 Conventional uses of Kinect The Kinect, from Microsoft, was designed for use with Microsoft s XBOX360 gaming console. The Kinect allows the gamer to interact with games without the need for physical controls. It accomplishes this by tracking the gamer s movements and position in 3-Dimensional space, with respect to itself, in real-time. In normal use, the Kinect sits stationary and observes the gamer as he/she moves. 1.2 Reversing the role of user and camera We propose the use of the Kinect in a different manner, where the Kinect moves with the user, so that it observs the world in a similar fashion as the user observes (or would have observed, in the case of a blind individual). Rather than having the Kinect watch the user, the user uses it to watch their environments. In our implementation, the Kinect is used to extract the 3-dimensional depth information of the environment being observed by the user. This depth information is passed to the user in the form of tactile feedback, using an array of vibrotactile actuators. Microsoft s Kinect employs PrimeSense s 3-D sensing technology. PrimeSense s 3-D sensor uses light coding to code the scene volume, using active IR (infrared) illumination [?][?][?]. The sensor then uses a CMOS image sensor to read the coded light back from the scene. The coded light is processed by PrimeSense s SoC chip [?], contained in the 3-D sensor, to give the depth information. 1.3 Other head-mounted navigational aids Most previous head-mounted navigational aids have used standard camera systems, to present tactile information to the user. One such example is called seeing with the tongue [?]. Standard camera systems work well for gesture recognition because the stationary background can be subtracted from the image, so that people can be clearly seen with simple computer image processing. However, when the camera is wearable, the background is constantly changing, making it difficult to separate distant background clutter from nearby objects. Some specialized blind navigation aids such as the VibraVest[?]

EXTRACTS DEPTH INFORMATION OUTPUTS DISPARITY VALUES SKIN VIBRATION PROFILE MECHANORECEPTORS MAP VIBRATION INTENSITY TO DEPTH 11 BIT DISPARITY DATA DISPARITY DATA PROCESSING CREATES DEPTH PROFILE CALCULATES ACTUATOR INTENSITY ACTUATOR CONTROLLER CONVERTS PWM DATA INTO ACTUATOR DRIVE VOLTAGE ACTUATOR PWM DATA Figure 1: System signal flow path overview provided 3D range information but required expensive specialpurpose hardware such as a miniature radar system. The Kinect is a new widely deployed commercial off-theshelf technology that provides a low-cost solution to the problems associated with sensitivity to distant background clutter. Since background clutter is especially prevalent in a wearable camera situation, the technology used in the Kinect shows great promise in wearable vision systems. 2. PHYSICAL SETUP Figure 1 shows the signal flow path in our system architecture. Data is captured from the Kinect camera, processed, and supplied to an array of vibrotactice actuators. Our goal is to convert depth information obtained using Kinect into haptic feedback so that users can perceive depth within a range that matters most for collision avoidance, while not being overwhelmed by distant background clutter. The Kinect depth camera, coupled with a wearable computer running Openkinect drivers, was used to create a depth map of the image. An array of six vibrating actuators mounted inside a helmet are controlled using the depth values using an algorithm that calculates the vibration intensity profile for each of these actuators. The intensity profile is transmitted to an Arduino microcontroller (also part of the wearable system), which drives each of the actuators using PWM (Pulse- Width Modulation). PWM allows voltage on the actuators to be regulated for varying degrees of vibration. Fig 1 shows how the varying degrees of vibrations are picked up by the mechanoreceptors present in the sensitive skin on the forehead of the usera. Using this system, the user has a sense of depth. This sense of depth moves with the head in a natural manner. Thus, the user can scan the head back and forth to get a natural understanding of subject matter in their environment. The general layout of our helmet is depicted in Fig 4. We mounted the Kinect securely on top of a welding helmet. An array of 6 vibration actuators were positioned along the headstrap of the helmet. The helmet is placed on the head as shown in Fig 4. For testing by sighted users, a dark welding shade was used, which could either entirely stop light from passing through, or, under computer program control, vary the amount of light passing through. In this way, the device could function as a switchable blindfold for testing purposes. 2.1 Vibrotactile actuators, and motor controllers We used a set of vibrating actuator motors. The vision processing algorithm controls the motors through a serial connection to an Arduino microcontroller. These values correspond directly to PWM output from pins 2 to 7 on the Arduino. Each output pin is used as control signal in motor driver circuit which determines the actuator vibration response for AL3 to AR3 as shown in Fig 5. For our setup, we used 10x3.4mm shaftless vibration motor for each of the actuators. The motor is rated to be driven at a maximum voltage of 3.6V. Therefore, we supplied the 3.6V power supply to the motor driver circuits. Depending on the PWM value from each of the Arduino pins, the corresponding actuator can be driven at voltages calculated as: V actuator = PWM/255 3.6, PWM [0, 255] (1) The actuator Voltage and Current response was tested to be linear. Based on this we determined that the vibrating actuator also had a linear reponse, when driven between voltages 0 to 3.6V. 3. REAL-TIME IMAGE PROCESSING TO CONTROL VIBRATION ACTUATORS 3.1 Distance map recovered from Kinect We accessed the Kinect data in real-time with a Linux PC. The Kinect provides data in a proprietary data format, in what is called disparity values.

MOUNTING HELMET FRONT AL1 AR1 AL2 AR2 AR3 AR2 AR1 AR3 AR2 AR1 AL1 AL2 AL3 AL3 AR3 BACK TOP VIEW SIDE VIEW FRONT VIEW Figure 4: Wearable sensor and actuator configuration on a helmet, showing placement of the motor actuators around the forehead. To recover the actual distance from the raw depth data in the proprietary format, we used the following conversion equation 1 distance = R = (2) α disparity + β The parameters have been empirically found in [?] to be: α = 0.0030711016 and β = 3.3309495161. As a result, the range extremities become: disparity distance MIN distance detectable 0 0.30 m MAX distance detectable 1030 5.96 m 3.2 Partitioning the distance map The Kinect operates with horizontal field of view of 57 horizontally and 43 vertically. It is able to measure disparity values beyond a critical distance of 0.3m. At distances closer than 30cm, the Kinect is not able to measure disparity. The disparity values are calibrated such that the device is able to read values up to 6m without significant loss of resolution within acceptable error margin while operating indoors. We found this range of 0.3 to 6.0 metres to be useful for collision avoidance at typical walking speeds. In our setup, the depth sensing region was divided into six smaller zones, three on the left (SL1, SL2, and SL3) and three on the right (SR1, SR2, SR3). Each of the zones corresponds to the vibration in one actuator. 3.3 Controlling a 1-dimensional array of actuators Fig 6 shows the layout of sensing regions. This layout allows the user to scan their head back and forth and feel various objects as if they were pressing against their forehead. While not providing high resolution imaging, we found that it was possible to navigate a hallway and find various doors, doorways, etc., and also avoid collision with other people in a crowded hallway. 3.4 Transfer function with 1-to-1 mapping from each sensing region to each actuator We desired objects in the visual field to cause the vibrations to become stronger as the objects get closer. In this way the system creates the sensation of objects pressing against the forehead at-a-distance, i.e. before collision occurs. The sensation increases in strength as collision is more eminent. This can be accomplished by making the vibration (as sensed) be inversely proportional to distance, i.e. V 1/R. Alternately we can make the sensed vibration vary as V 1/R 2, as with a force field such as a magnetic field. For example, when holding two magnets close to each other, the magnetic repulsion (or attraction) is inversely proportional to the separation distance squared. Thus we can mimic nature, in this regard, in order to make the effect comprehensible and intuitive. We now partition the depth map for each of the different vibration actuators. For an inverse-square law, we make the

PWM DATA FROM COMPUTER ARDUINO 2 3 7 GND VIBRATION ACTUATOR PN2222 1N914 AR3 Figure 2: Our wearable configuration with a Kinect and vibrotactile actuators mounted on a welding helmet. A welding helmet was chosen because of its comfort, its electronically controllable blindfold (which defaults to transparent upon power failure), and because, other work, we are using this system in welding applications. 1N914 PN2222 1N914 + +5V + PN2222 +5V MD2 MD6 AL2 AL3 +3.6V MD1 MOTOR DRIVER Figure 5: Vibration actuator drive electronics Figure 3: The system is effective in helping with navigation through crowded corridors, for example. See http://wearcam.org/blindvision

SL3 SL2 O HORIZONTAL FOV = 57 SL1 SR1 SR2 SR3 3.5 Fuzzy zone boundaries It is also possible to go beyond a simple 1-to-1 mapping between each spatial sensing region and each actuator. For example, we experimented with making fuzzy boundaries on each sensing region, using a horizontal aperture function that extended beyond the boundaries of each sensing region (see horizontal aperture function in Fig 7). As a result, each actuator was slightly responsive to neighbouring sensing regions. The overlap and center-weighting, combined with natural exploratory motions of the user s head, gave some sub-pixel accuracy that allowed the user to sense some degree of fine detail. TOP VIEW AL1 AL2 AL3 AR1 AR2 AR3 DEPTH SENSING ZONES DEPTH SENSITIVITY EXISTS ON FOR: 6m > R > 0.5m DEPTH INSENSITIVE ZONE FOR R < 0.5m ACTUATORS Figure 6: Partitioning the depth sensing map into zones for the separate control of vibration actuators. The sensing zones have been numbered SL3...SR3, and the actuators numbered AL3...AR3. total vibration a weighted integral across the sensing region: v n = 1 1 S F OV S F OV R 2 (θ, φ) a θ,n(θ)a φ,n (φ)ds (3) for actuator n. a θ,n and a φ,n are aperture functions, weightings which vary depending on the horizontal and vertical locations, respectively. They are different for each sensing region n. S is sensing surface in steradians. We found empirically that the background noise from Eqn. 3, coming from objects in the background behind the subject matter, was distracting. Our second implementation simply used the closest object in zone, still weighted by the aperture functions: 1 v n = min S F OV R 2 (θ, φ) a θ,n(θ)a φ,n (φ) n 1...N (4) We also experimented with the following 1/R law, which gave an improved advance warning of faraway objects approaching (> 3m). 1 v n = min S F OV R(θ, φ) a θ,n(θ)a φ,n (φ) n 1...N (5) The result is a center-weighted mapping, as illustrated in Fig 7. 3.6 Compensating for non-linear behaviour of motors and human perception One challenge of our design is to convert the depth map values to another sensory mode such as tactile feedback using an actuator. It is clear to see that using a linear model for mapping raw depth value to the actuator is inadequate for several reasons. First, the linear model does not handle the non-linearity in human perception. For many of the sensory modalities, our sensory perceptions are non-linear and have a highly compressive nature. For example, humans perceive loudness of sound in a logarithmic scale. This logarithmic scale recurs often in the human senses and comes from Weber s analysis of just-noticeable differences [?]. A perceived sensation P results from fractional changes in a physical quantity I as in: P I (6) I After setting P = 0 at the minimum perceptible physical quantity I 0, the solution becomes: ( ) I P = k log (7) Weber found this logarithmic law to exist for the sense of touch [?]. Additionally, the raw depth data collected from the kinect are not a direct measurement of the actual distance in the real world, and a reconstruction of the actual depth value is required for fine calibration. Since the non-linearities and the underlying interactions between the actuator and human perception are difficult to recover, we estimated these relationships experimentally by perform trials on different users. We have found that using an exponential decade function as follows provides adequate results, which also comforms with the non-linear relationship between human sensory and distance information we conjured previously. I 0 w = (0.978) 255d (8) where d is the actual distance normalized to 1 with the maximum range, and w the PWM (Pulse-width modulation) value which controls the electrical actuator. Figure 8 shows the conversions and compensation we have introduced in the signal flow path. Notice that our system has aggregated the inverse of the non-linear responses of

ONE SENSING ZONE (WITH FUZZY BOUNDARIES) WITHIN TOTAL FIELD OF VIEW ds ds ds R ds DEPTH MAP SENSOR (FOCAL POINT) HORIZONTAL APERTURE FUNCTION VERTICAL APERTURE FUNCTION Figure 7: The viewable area of the depth sensor was divided into zones, each of which corresponded to one of the actuator motors. The sensitivity profile was center-weighted as illustrated.

the motor and electronics as well as human perception for simplicity. With the proper calibration and compensation for non-linearity and sensory thresholds, users were able to learn the relationship between the distance and the vibration intensity after several minutes of training with the system. 3.7 2-dimensional mapping In further variations of the system, we implemented various 2-dimensional arrays, such as a 3 by 4 array of 12 actuators, and a 2 by 6 array of 12 actuators (the Arduino has 12 PWM outputs). In further explorations, we also experimented with larger arrays using multiple microcontrollers. However, we found that a small number of actuators was often sufficient. 4. SUPPLEMENTARY VIDEO MATERIAL Videos of the helmet in action can be viewed at: http://wearcam.org/blindvision/ 5. CONCLUSION We have proposed a novel way of using the Microsoft Kinect 3-D camera, for navigation which we hope will someday assist the visually impaired. Rather than having the Kinect observe a user, we put the Kinect on the user to observe the user s environment. We found that the typical operating range of the Kinect (30cm to 6m) was well suited to indoor navigation in typical crowded corridors, and the like. This preliminary work suggests that eyeglasses could be made using PrimeSense s 3-D sensing technology, for potential use by the visually impaired.

Microsoft Kinect raw depth data [2D] D distance (m) [2D] Convert proprietary format to actual distance A desired sensation [6 channels] Spatial Aperture Function and Distance to Vibration Mapping -1-1 P M M Compensation for non-linearity in human perception Compensation for non-linearity in motors and electronics Motors and electronics Physical vibration [6 actuators] P Human Perception Figure 8: This figure shows the conversion of the depth map data from the Microsoft Kinect to the actual physical vibration of the 6 actuators in the helmet. The underlying non-linear relationships in the raw depth sensor, motor and electronics, and human perceptions are estimated empirically. By aggregating the L( 1) and P ( 1) functions, we can determine the mapping of the vibrating intensity to the optimal sensitivity range of human senses experimentally. 1.36m SHEET OF PLYWOOD 1.21m D DE OL RD F OA I B M SE ARD C ER ST PO 0.84m 57 DEGREES OF HORIZ. FOV TOP VIEW 0.0m Figure 9: Example with plywood and cardboard