AUDIO POINTER V2 JOYSTICK & CAMERA IN MATLAB



Similar documents
COMPREHENSIVE MATLAB TOOL FOR HRTF MEASUREMENT AND VIRTUAL AUDITORY SPACE TESTING

PURE TONE AUDIOMETER

Mouse Control using a Web Camera based on Colour Detection

Effects of microphone arrangement on the accuracy of a spherical microphone array (SENZI) in acquiring high-definition 3D sound space information

How To Use A Desktop Computer

IP Matrix MVC-FIPM. Installation and Operating Manual

A mixed structural modeling approach to personalized binaural sound rendering

MATLAB-based Applications for Image Processing and Image Quality Assessment Part II: Experimental Results

REAL TIME TRAFFIC LIGHT CONTROL USING IMAGE PROCESSING

1. Open a web browser and navigate to:

MXL 990 Virtual Preamp Installation

SeeVogh User Guide. Date: March 26 th, 2012

Automatic Detection of Emergency Vehicles for Hearing Impaired Drivers

Manual for simulation of EB processing. Software ModeRTL

Convention Paper Presented at the 112th Convention 2002 May Munich, Germany

ADVANCED APPLICATIONS OF ELECTRICAL ENGINEERING

SECTION 508 COMPLIANCE

Development of a Service Robot System for a Remote Child Monitoring Platform

Indoor Surveillance Security Robot with a Self-Propelled Patrolling Vehicle

ACCC-ITL QUICK GUIDE Install Blackboard Collaborate - PC

Parts of a Computer. Preparation. Objectives. Standards. Materials Micron Technology Foundation, Inc. All Rights Reserved

EE289 Lab Fall LAB 4. Ambient Noise Reduction. 1 Introduction. 2 Simulation in Matlab Simulink

OPERATION MANUAL. MV-410RGB Layout Editor. Version 2.1- higher

LAWAREC. Laser Warning Receiver

Student Guide - Student Groups and Adobe Connect in Canvas

Virtual Mouse Using a Webcam

Chapter 3 Input Devices

How To Run A Factory I/O On A Microsoft Gpu 2.5 (Sdk) On A Computer Or Microsoft Powerbook 2.3 (Powerpoint) On An Android Computer Or Macbook 2 (Powerstation) On

1000+ AUDIOMETER OPERATING INSTRUCTIONS

Motion tracking using Matlab, a Nintendo Wii Remote, and infrared LEDs.

GPSMAP 62 series quick start manual. For use with the GPSMAP 62, 62s, 62st, 62sc, and 62stc

THE MS KINECT USE FOR 3D MODELLING AND GAIT ANALYSIS IN THE MATLAB ENVIRONMENT

Effective Use of Android Sensors Based on Visualization of Sensor Information

(51) Int Cl.: H04S 3/00 ( )

POTENTIAL OF STATE-FEEDBACK CONTROL FOR MACHINE TOOLS DRIVES

Room Acoustic Reproduction by Spatial Room Response

REPRESENTATION, CODING AND INTERACTIVE RENDERING OF HIGH- RESOLUTION PANORAMIC IMAGES AND VIDEO USING MPEG-4

Matlab GUI for WFB spectral analysis

DIGITAL SATELLITE FINDER USER S MANUAL

This document is downloaded from DR-NTU, Nanyang Technological University Library, Singapore.

Summary Table Voluntary Product Accessibility Template

After creating your powerpoint, use Camtasia to enhance the presentation.

StreamNet StreamNet-eNabled devices/ view virtual matrix control and installation GUide

How To Use An Easymp Network Projector On A Computer Or Network Projection On A Network Or Network On A Pc Or Mac Or Ipnet On A Laptop Or Ipro Or Ipo On A Powerbook On A Microsoft Computer On A Mini

Unified Communications Using Microsoft Office Live Meeting 2007

VPAT Summary. VPAT Details. Section Web-based Internet information and applications - Detail

ECP & ECP240-32EX

PREDICTION OF MACHINE TOOL SPINDLE S DYNAMICS BASED ON A THERMO-MECHANICAL MODEL

HANDS-FREE PC CONTROL CONTROLLING OF MOUSE CURSOR USING EYE MOVEMENT

EMR-9 Quick Start Guide (00175)D 1

CHAPTER 2: USING THE CAMERA WITH THE APP

Navigation Aid And Label Reading With Voice Communication For Visually Impaired People

Automatic Labeling of Lane Markings for Autonomous Vehicles

Leaf River Outdoor Products Vibrashine, Inc. P.O. Box 557 Taylorsville, MS (601) FAX (601)

Analecta Vol. 8, No. 2 ISSN

IsumaTV. Media Player Setup Manual COOP Cable System. Media Player

Network Video Monitor Software

A Reliability Point and Kalman Filter-based Vehicle Tracking Technique


Doppler Effect Plug-in in Music Production and Engineering

ECG SIGNAL PROCESSING AND HEART RATE FREQUENCY DETECTION METHODS

RCN DIGITAL CABLE USERS GUIDE

User Guide. VT1708A VIA HD Audio Adeck For Windows 2000, Windows XP & Server Jun Revision 1.1e

Vision based Vehicle Tracking using a high angle camera

Unit A451: Computer systems and programming. Section 2: Computing Hardware 4/5: Input and Output Devices

Direct and Reflected: Understanding the Truth with Y-S 3

Voluntary Product Accessibility Template

Oscilloscope, Function Generator, and Voltage Division

Example #1: Controller for Frequency Modulated Spectroscopy

ADOBE ACROBAT CONNECT PRO MOBILE VISUAL QUICK START GUIDE

INDEX 1. HARDWARE REQUIREMENTS 2. CONVENTIONS 3. INSTALLING GALACTIC STOCK TRADER 4. THE MAIN MENU. Galactic Stock Trader - Owner s Handbook

Static Environment Recognition Using Omni-camera from a Moving Vehicle

COLLEGE OF MEDICINE. Sony Portable Video Conference Systems. Operations Manual

Getting Started: Creating the Backdrop

Beginner s Matlab Tutorial

The Use of Directional Sound to Aid Aircraft Evacuation

3D Modeling Using Stereo Projection

SMS (Server Management Software) Digital Video Recorder. User s Manual

BeoVision 7. Supplement

Connections and Setup

Exp. 1 Pathways of sound conduction. Yu Yanqin, PhD Zhejiang University, School of Medicine

DVB-T2 DIGITAL TV BOX

User Manual V1.0. Remote Software

LEN s.r.l. Via S. Andrea di Rovereto 33 c.s CHIAVARI (GE) Tel Fax mailto: len@len.it url: http//

GPS Data Collection Procedures for Georeferencing Vegetation Resources Inventory and National Forest Inventory Field Sample Plots

AXIS Installation Monitor. User s Manual

Vision based approach to human fall detection

Kathy Au Billy Yi Fan Zhou Department of Electrical and Computer Engineering University of Toronto { kathy.au, billy.zhou }@utoronto.

How To Use An Easymp Network Projection Software On A Projector On A Computer Or Computer

A method of generating free-route walk-through animation using vehicle-borne video image

46 FHD LED TV USER MANUAL 46GSR USA: USA:

Transcription:

AUDIO POINTER V2 JOYSTICK & CAMERA IN MATLAB F. Rund Department of Radioelectronics, Faculty of Electrical Engineering, Czech Technical University in Prague, Czech Republic Abstract A virtual sound source can be positioned in a virtual auditory space with various methods, as shown in our other articles. In our last year paper, we shown an application of virtual sound source positioning for assistive technology: for helping blind people to orientate in real space. In the case, an operator can watch video simulating vision of sighted people and create a virtual sound source which navigates direction of user s walk. An appropriate positioning device (e.g. joystick) has to be used for determining the direction. The paper is devoted to improved version of last year simple implementation of the above mentioned system in Matlab. The main improvement is, that not only the azimuth, but also the elevation, can be adjusted by the operator. Also the operator can use more controls on joystick (volume, auxiliary signals) and more information is shown on his display. The Matlab-code from last year version was rewritten and optimized. This implementation is used for design of the system and testing the algorithms for virtual sound source positioning. 1 Introduction Virtual sound source positioning methods can be used for various applications, e.g. in computer games. This paper describes a new version of a Matlab implementation of a system, positioning a virtual sound source to a position determined by using of joystick. The first implementation was presented last year [1], and intended for testing purposes of the PERSEUS (personal help for blind users) system [2]. The new version is used for the same purpose, photo of an experimental setup see on Fig. 1. The PERSEUS system [2] consists of two parts - user s and operator s. The blind person (user) is equipped with stereoscopic camera, headphones and wearable PC which can communicate with the operator. In case of emergency, operator can see context of user s environment in 3D, so can estimate distance of obstacles. Thus he can navigate the user by means of acoustic cues, sent into user s headphones. An appropriate positioning device, e.g. joystick, is used for determining the direction. Figure 1: Experimental setup with (left) and detail of the computer with the script in use (right)

Matlab implementation, described here, is devoted to the problem of creating and presenting sound coming from the direction which corresponds to position of the joystick. An experimental setup (Fig. 1) was prepared, for testing of the main ideas. The setup and the script will be described in next sections. This implementation is aimed on the audio part of the project, so, in this version is implemented the 2D video (one camera) only. 2 The system The main idea of the system is the same as in the first version [1]. The described system deals with two main problems. The first problem is to create virtual sound source in desired direction. The second problem comprises of reading of position of joystick and sending the appropriate sound to user s headphones. Solving of the problems is divided into two scripts, described below. The actual version adds some improvements to the first version [1]. The operator s interface for the first version (left) and the actual version (right) is in Fig. 2. 2.1 Sound generating script The main approach for the virtual sound source creating is the same as in the first version [1]. So the HRTF (Head Related Transfer Function) is convolved with an mono sound with good localization properties. In the actual version is the HRTF from databases such as [3] used, but, also the measured HRTF data set can be used. For the second script (sound positioning, next subsection), only the format of the matrix of virtual sources is defined, so, the matrix can be created with another method (for example, only simple amplitude-panning). The main difference from the first version of the script involves the possibility to 3D data generation. In the first version [1] was only one matrix generated, only for the elevation of zero degrees. In the actual version, the ± 45 degrees elevation matrices are generated in addition (in the case the corresponding parameter is set). In 3D case are in the output.mat file saved more set of matrices (3 in the actual version) one set for each elevation stage. In addition, the script was rewritten and some improvements were introduced, for example, the name of the output file (.mat) is generated automatically and comprises information about the stimulus type, the HRTF set, etc. angle=315 x= 1 y=1 az=062.884 el= 30.61 x=+1.0019 y=+0.5131 z=+0.680 315 63 az=65 el= 45 row=14 but=exit vol=0.7189 Figure 2: Examples of the operator s interface. Last year version (left) and the new version (right).

2.2 Sound positioning script The main differences between the first [1] and the actual version are in the sound positioning script. Like in the first version [1], at first the sound data matrix is loaded, then the script reads position of the joystick, finds sound for corresponding direction and play it through user s headphones. The operator sees picture from user s camera and can point somewhere with joystick, as seen in Fig. 3. The sound data matrix (or matrices, in 3D case) can be generated by the script described in previous subsection, but, it can be created using another method, so, the sound positioning script is independent on the sound generating script, only the structure of the data is defined. In the actual version of the script, more buttons on the joystick than in the first version [1] is enabled. The sound will be played to the user only if the appropriate button is pressed. The position (azimuth & elevation), and also level, of the virtual sound source presented to the user is fully controlled by the joystick. The operator can also send some alarm signal to the user s ears - for example, to stop the user, or warning him, etc. There are also many improvements in the operator s interface, described below, as seen from Fig. 2 4. At beginning of the script the basic setup of the script is defined. The user can choose, if a static image (for testing purposes), or the image from a camera will be used. In the case of a camera usage, is also necessary to select which of cameras connected in computer have to be used (new in actual version). Then is defined the function of joystick buttons for adopting the specific joystick to the an operator (there are differences between joysticks). Function of the following buttons can be defined: the exit button for exit the script the play button the sound is played only when the button is pressed one of important changes from the first version it enables near real-time function of the script. alarm buttons 3 alarms are defined - when one of the buttons is pressed, appropriate auxiliary sound is played it can be use as an alarm. The second step is the initialization. Then the.mat file with the set of sounds (created with the script like this described in previous subsection) is loaded. The alarm sound are created (for this version was used simple pure tones, 990, 440, 1 555 Hz, but any of signal can be used). az=003.125 el=+00.91 x=+0.0546 y=+1.0000 z= 0.020 az=139.732 el=+32.67 x=+0.7427 y= 0.8768 z= 0.726 140 3 az=5 el=0 row=2 but=non vol=0.7189 az=135 el=45 row=28 but=al1 vol=0.7189 Figure 3: Examples of the operator s interface. Position of last played sound is similar to the actual position of the cursor, the level in the user s headphones is set to approx. 70 %. Left the cursor is in front of the user, horizontal plane, no button is actually pressed. Right the cursor is in the back of the user, upper plane, the alarm 1 sound is played.

In the case of camera usage is the proper camera initialized, otherwise the static image (from the disk file) is loaded. Then begins the main part of the script. The main part of the script is enclosed in while cycle. The cycle is repeated until the exit button on joystick is pressed. During at first the information from the joystick is read and the azimuth and elevation is decoded. If any of alarm buttons is pressed, the corresponding alarm sound is played. If the play button is pressed, the positioned sound is played. Before the sound playing the presence of 3D data is tested and the angle of elevation is evaluated. If 3D sound data exists, and the elevation angle is not zero (with some tolerance), the upper or bottom matrix is used. Otherwise the zero elevation data are played. Then the picture from the camera is displayed, the cursor with appropriate color (blue means in front of the user, red means in the back) and the figure of azimuth. Outside the picture are displayed (see e.g. the Fig. 4): above the picture az azimuth of the cursor el elevation of the cursor x, y, z the coordinate from the joystick bellow the picture az azimuth of the data played (button pressed) el elevation of the data played row row of the matrix played but button pressed, one of this non none of the buttons is pressed play the sound is played exit the exit button was pressed al1, al2, al3 the alarm is played (one of three) vol volume for the users headphones (can be controlled from the joystick control) The above listed information are vital for the operator, because he don t hear the signal for the user. az=259.318 el= 30.61 x= 1.0000 y= 0.1886 z=+0.680 az=132.712 el=+00.91 x=+0.9304 y= 0.8589 z= 0.020 133 259 az=135 el=45 row=28 but=al3 vol=1.0000 az=135 el=45 row=28 but=non vol=1.0000 Figure 4: Examples of the operator s interface. Position of last played sound is different from the actual position of the cursor, the level in the user s headphones is set to 100 %. Left the cursor is in the back of the user, bottom plane, the alarm 3 sound is played. Right the cursor is in the back of the user, horizontal plane, no button is actualy pressed.

2.3 Implementation details For the script presented here, reading of the information from the joystick is done using the solution presented as [4]. The image from the camera (cameras) is captured using the [5]. For creating the sound data were used the HRTF data from [3]. More details can be found in description of the first version [1]. 3 Conclusion This Matlab implementation is used for design of the system and testing the algorithms for virtual sound source positioning. The actual version extends function of the first version [1] to 3D space. Presented implementation is very simple, but is working near the real-time and can be (and already is) used for design of the system and testing the algorithms for virtual sound source positioning. The function of the implementation was tested with the experimental device from the PERSEUS project [2], as seen in Fig. 1. The purpose of the actual version is testing of the orientation in virtual auditory space (and testing of the algorithms of the creation of the virtual audiory space), so, only one of the PERSEUS cameras is used (2D picture only). The results from experiments on the testing setup show, that the system described in the paper can be used for above defined purpose. Acknowledgement This work was supported by the Grant Agency of the Czech Technical University in Prague, grant No. SGS11/159/OHK3/3T/13 and the research program MSM 6840770014 of Ministry of Education of the Czech Republic. Presented algorithms use data from CIPIC HRTF database [3]. References [1] Rund, F.: Audio Pointer - Joystick & Camera in Matlab. In Technical Computing Bratislava 2010 [CD-ROM]. Bratislava: RT systems, s.r.o, 2010, p. 1-3. ISBN 978-80-970519-0-7. [2] Vítek, S., Klíma, M., Husník, L., Špirk, D.: New Possibilities for Blind People Navigation. In 2011 International Conference on Applied Electronics. Plzeň: ZČU v Plzni, 2011, p. 405 408. ISBN 978-80-7043-987-6. [3] Algazi, V. R., Duda, R. O., Thompson, D. M., Avendano, C., The CIPIC HRTF Database, Proc. 2001 IEEE Workshop on Applications of Signal Processing to Audio and Electroacoustics, pp. 99-102, Mohonk Mountain House, New Paltz, NY, Oct. 21-24, 2001. [4] Bodson, M. Fun Control Experiments with Matlab and a Joystick. Last updated 6 Jan. 2010. <http://www.ece.utah.edu/~bodson/fun/index.html> [5] Kazuyuki Kobayashi. VCAPG2 Matlab Central. Last updated 12 Feb. 2003. <http://www.mathworks.com/matlabcentral/fileexchange/2939> František Rund Katedra radioelektroniky, FEL ČVUT v Praze, Technická 2, 166 27, Praha 6 tel. 22435 2108, e-mail: xrund@fel.cvut.cz