Home

User manual User manual

image

Contents

1. Wiimote and a Wiimote which was paired previously but not currently connected One possible fix is to bring up the Device Manager Right click My Computer gt Properties gt Hardware gt Device Manager scroll down to Human Interface Devices and disable anything titled Bluetooth HID Unclassified Device or Bluetooth Joystick Gamepad Next begin re enabling each device one at a time and attempt to reconnect from within the WiimoteLib configuration form Even though I am looking straight at the screen the demo thinks I am looking in a different direction The LEDs in your headset may not be uniformly horizontal Ensure that your infrared LEDs are pointing straight ahead when you are looking directly at the screen the length of the LEDs should be horizontal parallel to the floor When I double click on one of your demos it opens but it doesn t perform head tracking Why not Make sure that your input device is correctly connected If it is then check that you have the server running 10 http dspace mit edu bitstream handle 1721 1 6611 AIM 1378 pdfrsequence 2 18 What is head tracking Head tracking is a process by which an input device can observe the movement and position of a user s head relative to its own position It identifies the six degrees of freedom that describe motion in three dimensional space rise run and depth translation in three perpendicular axes and pitch yaw and roll rota
2. depth translation is simply estimated from the image triangle and the base point model configuration What does WitR3D mean WuR3D is the name we came up with for the project in the very early days Wi pays tribute to the Wiimote the input device on which we focussed and for which we built a driver plugin R3D is for revolutionising 3D head tracking technology really opens the door for a revolution in the way that users interact with 3D environments WiiR3D is open source so developers everywhere can begin taking advantage of head tracking H From 3D Pose from 3 Corresponding Points under Weak Perspective Projection ftp publications ai mit edu ai publications pdf AIM 1378 pdf 20 A ir I EA El F ga Ae j EA S A pa A IN g pa E 71 IU fols e of TIC UES Foure tT LED ni errr tc ieee AEE ETENEE EAEE 5 Peo Thenon or tie OO arna E n A ONE EA E ETOR 7 Figure 3 Implementing IDriver add references essessseseseesesesesesrsesrsrsrsrsrsrerrerersrsrsrerees 9 Figure 4 Implementing IDriver colon and name of interface you wish to extend 10 Figure 5 Map lenient DNV oasis 10 Figure 6 Implementing IDriver right click and implement interface ow eee 10 LOE NS o PA OR o oo creer re eee tee 12 Figure 8 Selecting the plugins directory for the SetVeL ooccoccncnncnonncnnnnnnonnnnnncnnonnrnnonnnnnnos 13 Figure 9 Server with populated drop down bOX s ssesesesesssesssesssssrsesrsrsrsrsrersrsrersrsress 14 F
3. use navigate to the bin directory then either Debug or Release and load in any dll files that are in that directory 3 Place a colon and the name of the interface you wish to extend after the name of your class O using System using System Collections Generic using System Text using Wiirsd Interface Driver E namespace MyFirstLibrary public class Class1 IInputDriver Figure 4 Implementing IDriver colon and name of interface you wish to extend Solution Explorer Solution MyPFirstiib A X E SEBA a Solution MyFirstLibrary 1 project El MyFirstLibrary H Sd Properties El F References es 43 System gt 43 System Data 2 1 System Xml Wiir3d Common J Wiir3d Interface Driver Figure 5 Implementing IDriver 4 Right click on the interface and navigate down and select Implement Interface namespace MyFirstLibrary i public class Classi IIn Refactor VA X Surround With VAX Build Run Test s Test With Repeat Test Run Implement Interface Implement Interface Refactor Implement Interface Explicitly 5 By this stage you should have a class that will build and become a useable but rather worthless dll that can be used as a plugin into the WiuR3D server To develop this class further it is recommended that the documentation in the WuR3D API chm file and also developers reference code provided in predefined Drivers and Calculators is read and continua
4. 2 0 x86 framework e Bluetooth stack compatible with the Nintendo Wii Remote Server with sample applications e Panda 1 5 0 e Python based 3D game engine needed to run the graphical samples e Python 2 5 2 packaged with Panda installer e Needed to run sample applications e Mechanize 0 1 7b e Programmable client browser needed for 20Questions sample For driver development e Microsoft Visual Studio 2005 Express Professional 2 Available for free download at http panda3d org gt At time of writing Microsoft BT stack and BlueSoleil 6 05 85 20070815 have been confirmed to be compatible 3 4 Building a three point infrared headset When building a three point infrared headset two major factors must be considered The first consideration is in regard to the size dimensions and orientation of the triangular arrangement of LEDs The triangle s base must be parallel to the user s eyes The top of the triangle needs to lean either forwards or backwards Also experiments over the course of the project have found that triangles with taller centre points and more biased leans work more effectively The second consideration is the viewing range on the infrared source points Most infrared LEDs have a viewing angle of approximately 17 degrees An infrared source that provides a greater range is advised the WuR3D team used LEDs with a 24 degree viewing angle Suitable head tracking equipment set is vital for proper operat
5. WIR lo 2008 CSCI321 Project GA1 Jessica Lloyd Adam Parkes James Leskovar VinhBuu To http zim cs uow edu au 50321 cs321 gal http home exetel com au wiit3d Contents I Lain a a Lale BL a COOP E e o Un re ener ren seer et 2 a Tine TON 2 Br Imended readers e P a E drena 2 O 2 GO OC CCC EI kc AP e a sta 3 ia raro Ae e meten 3 4 Building a three point infrared headset arrpidr naaa 4 a Los ls aa OE E E dial ate 4 Bb ac ona es EEEE ies i a P ter terrr erty tr errr 5 A Dai 6 VTE enn motes etat emma btt N 5 a Choice orante Dot EE O 5 E IO E A ne au e PO O EI sane cases s 6 CE OO cuales UE Oest nT Terre er Terre err Steerer ett eet err rr er ere er 7 ao e EA J D ID POR a cruel a A E E 7 E AN NU ierann enoa erno EEE EEEE TOEA RETS 8 d Creating Driver and Calculator plugins ec eeseeseeeeseeeeeeeeeeseeeeseeeeeeeseeessees 9 i Step by step instructions to make a class implementing IDriver 9 dE dC co POLO nar re en et tenn minim ee 12 a EI ie N nn E T A E 12 D RO oo AAA E N AE EEEE AEE 17 E o E E E APP A A E A T E E rrr re Tere er 18 O e a ESA E E E 19 ME oleo cier A io Pen o ny eer Tr 21 A AA e ent A 22 Introduction a Thank you Thank you for choosing WuR3D We have produced a software framework which will assist open source developers to utilise head tracking technology In addition we have developed a variety of technical demonstrations to exemplify some of the possible u
6. igure J Server with driver and calculator loaded oooccnndnccicncnicnnnnononnanonnononrnnrncnnrnnrnoncnos 14 Figure 11 Configuring the point model ssssessssessssesrsrsesesrsrsrsrsrereresestsrsrsrsreeeeresreeeeeeses 1D ui o AA no rer merece E ree 16 Figure a CI CORS Ae BC A101 ar caer sosacesmananacsuvenceactninceseuntencsicateaemennitemengsbesaeacaaees 17 Figure 14 Model points m m and m undergoing orthographic projection plus scale to produce image points ip 1 and let 20 e l Las A NE UCD Y l I l BE A i aE WS ES a e Alter T D 1 17 19 Bluetooth 2 17 Building a three point infrared headset 4 Connection 16 Demonstrative applications 16 20 Gesture recognition 7 Head tracking 1 18 Pose 19 Translation 4 5 Headset 14 Calculator i 8 Driver 1 8 9 20 Infrared 3 Input 1 8 9 13 20 Install 1 5 ec LED infrared 1 3 4 17 18 19 20 Mechanize 2 Panda3D 2 Plugin 8 Caclulator 1 8 Calculator 1 13 17 19 Driver 1 8 9 13 20 Point Model 14 Python 2 Server 2 11 13 14 15 20 Software requirements 1 2 System requirements 1 2 UDP 1 1 6 Wiimote 1 1 2 XML i 7 5 6 8 17 18 19 20
7. ion and usage of the WiiR3D product Whilst solutions without batteries do exist they generally require more work to set up correctly and may have degeneracy issues at longer ranges a Tools and components Below are the tools and components required for construction of the three point infrared head tracking gear 1 x Construction hat 1 x Soldering tron 1 x Coil of solder wire 1 x approx 5cm by 10cm piece of perfboard 3 x TSAL7400 LED 3 x SPST switch 3 x Zener Diodes 3 3V 3 x Resistors 220 Q 2 x Diodes IN4001 1 x Nine volt battery 4 We used the Vishay High Power Infrared Emitting Diode TSAL7400 http www pixelpartner de openKMQen htm OpenKMQ Kit 2 Freeware HT solutions 4 6 Circuit diagram IR Led A 2200 IN4001 IN4001 3 3V ZD IR Led AL 220 Q 3 3V ZD Ov Figure 1 LED circuit diagram c Instructions Build the circuit to match the diagram in Figure 1 Make sure you leave 20 30 cm of wite between the circuit board and the LEDs From the experiments carried out in this project we found that a triangle orientation with approx 6 5cm X distance 2 5cm Y distance and 6cm Z distance provided a stable model to work with Be sure to mount the triangle on a surface that will maintain the structure of the triangle model d Choice of infrared LED If a higher amp infrared LED is desired remember to adjust the resistance flowing through the LEDs as they are quite fragile LEDs with a higher ampe
8. lgorithms for providing head tracking functionality The WuR3D product provides a set of plugins which offer head tracking using the Nintendo Wii Remote as the input device and Alter s equations to compute user gaze from three points under weak perspective projection The WuR3D application is a lightweight server which provides the necessary head tracking data using the chosen plugins to client applications over UDP Provided with the product are a collection of demonstrative applications which provide the intended user with examples of and ideas for the possible functions of head tracking using the WuR3D product 1 ftp publications ai mit edu ai publications pdf AIM 1378 pdf 2 2 System requirements e PC with 300 megahertz or higher processor clock speed recommended 233 MHz minimum required single or dual processor system Intel Pentium Celeron family or AMD K6 Athlon Duron family or compatible processor recommended e 128 megabytes MB of RAM or higher recommended 64 MB minimum supported may limit performance and some features e 600 kilobytes KB of available hard disk space for standalone server e Additional 3 megabytes MB needed for source code installation e Additional 50 MB needed for Panda3D installation to run samples e Super VGA 800 x 600 or higher resolution video adapter and monitor e Keyboard and mouse or compatible pointing device 3 Software requirements Stand alone server usage e NET
9. lly referenced 7 User experience a Running the server 1 Open the WuR3D Server us WiiR3D Fie Plugins F3 Help Configuration ome Port Server Console Configure Point Model Information Driver Calculator Stopped Port nfa Client n a Figure 7 WiiR3D Server 2 Select the Plugins option beside the File menu item to navigate to your plugins directoty Click Open to load your selected directory Browse For Folder El 0 Wiir3d 3 svn El en Application A Configuration Files Ei Documentation i Instal i Plugins i Prototype Es Tests Gd Wiir3d Application AL Wiir3d Calculator Filter Qo WiR 3D Client i Wiir3D Common i Wiir3d Interface Calculator AL Wiir3d Interface Driver i Wiir 3d Interface PointModel AL Wiir3d Library Server i Wiir3d Model ThreePointModel AL Wiir3d Test Alter Figure 8 Selecting the plugins directory for the server 3 The drop down boxes for Driver and Calculator will now be populated with all the appropriate loadable dlls You can now select a driver and a calculator from the drop down boxes us WiiR3D File Plugins F3 Help Contiguration Driver Driver Dummy Flugin dll Driver Input DriverRecorder dill Wiir3d Driver Simulator dll Wiiirdd Driver WiiRemote dll Server Console __ Configure Point Model Packet Smoothing Information Driver Calculator Stopped Port nja Client n a Figure 9 Server with populated drop dow
10. machine which remembers segments it has seen and what segments it needs to look out for in order to complete a gesture Simple pre processing of the points is applied to weed out noisy points or points which are considered to not have changed considerably since the last poll Once a gesture is recognised the client is notified via a gesture alert packet and may choose to process or ignore the event How does the packet smoothing work The packet smoothing function takes the head position coordinates from the calculator and applies a weighted moving average to a list of previous raw head positions The algorithm takes into account each of the previous head positions according to a ratio that defines how important the previous positions are and then averages them How do you observe six degrees of freedom from three LEDs We followed Alter s equations for our calculations Alter s equations assume weak perspective projection of model points onto the camera an orthographic projection with a fixed scaling solved for the constant scale S and heights h1 h2 from one of the image points to get back the original 3D model points m0 m1 and m2 as shown below Figure 14 Model points mo m and mz undergoing rthogtaphic projection plus scale to produce image points io 11 and 12 E The rigid transformation which aligns the sensed model to the base model is computed and from this the pitch yaw and roll angles are extracted Finally
11. microsoft com download 5 6 7 567758a3 759e 473e bf8f 52154438565a dotnetfx exe 2 http home exetel com au wiir3d The Wiimote should be in line with the user s head when they are in their start location The Wiimote s placement is important as it greatly affects the calculation when the player is moving forward and backward Ideally lt 1 metre Figure 2 Placement of the Wiimote The default server port is 4500 The client may bind to any port gt p a g i Al m m AL con V is Es a a Ja A En Y A 5 i i FY f i MN y Woes Arig ll The client must send through a configuration XML file before the server can start sending data back to the client This XML document will contain a number of Gesture nodes which are used to define Recognition Patterns These consist of e An attribute called Ape which is either simple or complex Currently the only recognised type is simple e An attribute called mame which is the name of the gesture which is to be registered e A number of children nodes called segment A Segment is used to define a section of a gesture A seoment contains e An attribute called direction which is either left right up or down e An attribute called magnitude which is a number representing the minimum number of degrees used to recognise the segment Below is an example of a simple XML document that defines a Nod and a Shake lt wiirsd gt lt gesture t
12. n boxes es WiiR3D File Plugins F3 Help Contiguration Driver Wiir3d Driver WiiRemote dll Calculator Wiir3d Calculator Alter dll Port Server Console Configure Point Model Information Driver WiiMote Input Driver 2 002 Calculator Alters Calculator v4 1 Stopped Port nfa Client nfa Figure J Server with driver and calculator loaded 4 Select the Configure Point Model button to bring up the Point Configuration window Identify and measure the distances on your own headset as indicated in the diagrams then enter the x y and z distances in centimetres here Click Apply to confirm your changes HE PointConfiguration Front View Lett Side View Y Distance 25 za r Z Distance 5 0 _ Invert center Figure 11 Configuring the point model l 5 If you would like the server console to display while the server is running check the Server Console checkbox 6 Click to Start to begin running the WiiR3D server If you have checked the Server Console checkbox the server console will appear Svr Creating server on port 45000 Figure 12 Server console b Running a demo To run a demo the server need to be tunning and waiting for a client to connect Connect you input device Follow the steps above 7a to launch and run the server After the server has been launched navigate to the demo directory A Pick a demo and double click on it The demo should then a
13. ppear in a new window QO Do you wish to play 20Q Animal WiiR3D Room with a View 5 DoF Figure 13 Demonstrative applications 3 Trouble shooting My view is jittery Have you got smoothing activated If smoothing is not activated then activate it by checking the box in the WuR3D server If you have smoothing activated and your view is still jittery make sure that you are not sitting too far away from your input device For the Wiimote for example ideally you should be within one metre of the infrared camera Move closer and try again If you have smoothing activated and you are not sitting too far from your input device but your view is still jittery there may be a problem with your hardware causing your LEDs to flicker off and on which appears as a jittery view Check your headset If you have exhausted all of the above solutions and your view is still jittery you may need to reconfigure the formation of your LEDs Refer to section 4 Building a three point infrared headset for information regarding the ideal arrangement of your LEDs for the Alter calculator For further information on the ideal triangle formation you can check Alter s paper Why can t my Wiimote connect and how can I fix it Errors in Wiimote connectivity typically occur if more than one Wiimote is paired in the device manager Due to the way devices are managed in Windows there is no way to tell the difference between a live connected
14. re rating will produce a mote intense light and hence may be usable at greater distances The amount of resistance required can be computed with the following formula power supply voltage LED voltage drop resistance in ohms LED current rating 6 X distance is measured by taking the base of the triangle and dividing it by two 7 http en wikipedia org wiki LED_citcuit 5 Run the WuiR3D installer installer exe Source code may optionally be installed e If the NET 2 0 framework is not installed it will be downloaded and installed during main installation The installer will use the default proxy settings in Internet Explorer if a proxy is needed Otherwise you can download the NET 2 0 redistributable package What next If you want to Then Run the server to begin using 6DoF head Refer to User Experience section 7a on tracking data for your own applications server usage Run the sample applications utilising Refer to the WuR3D website for further 6DOF head tracking data download and installation instructions Additionally refer to the User Experience section below on how to run a demo 7b Begin developing additional driver and Refer to the section below on creating calculator plugins for the server plugins 7d for more details Be aware that plugins for performing head tracking with the Wiimote are included by default with the WuR3D software package 8 http download
15. ses of the WuR3D product WuR3D endeavours to provide you with a reliable product with which you will be able to expand and develop your own technology utilising head tracking bD Intended readership This user manual is aimed at those who wish to use the demonstrative head tracking applications that we have provided as well as use the WiiR3D server in the development of their own head tracking applications This manual will guide you through installation and use of the WuR3D product and includes detailed instructions on how to construct your own three point head tracking headset For those who would like to gain some insight into the thinking behind WIiR3D and its development please refer to the technical manual A i fy About The WiuR3D product is a NET plugin based framework for building head tracking applications Head tracking is a process by which an input device can observe the movement and position of a user s head relative to its own position It identifies the six degrees of freedom that describe motion in three dimensional space rise run and depth translation along three perpendicular axes and pitch yaw and roll rotation about three perpendicular axes Plugins can be written in any NET compliant language including but not limited to CA VB NET and C CLI The two main classes of plugin for WiiR3D are driver plugins and calculator plugins which respectively determine the input device and calculation a
16. tion about three perpendicular axes Tracking head position and pose allows programmes to produce user dependant images Do I have to use the Wiimote as my input device No WiiR3D uses a driver plugin which means that any input device can be used as long as there exists an appropriate driver plugin for it Plugins can be written in any NET compliant language If you have a different input device and driver simply navigate to it using the browse button for the driver in the WUR3D server I want to use my own head tracking calculations Is this possible Yes WiiR3D uses a calculator plugin which means that you can write your own head tracking calculations as long as you use a NET compliant language If you have written your own calculator simply navigate to it using the browse button for the calculator in the WuR3D server Why do you use three infrared LEDs Three is the minimum number of points required to observe six degrees of freedom in motion While it is possible to use more LEDs for head tracking the equations which we utilised in our head tracking calculator only required the minimum three points How does gesture recognition work The gesture recognition component treats a gesture as an ordered sequence of segments gesture segment is simply a direction up down left or right representing the user s head movement together with a magnitude in degrees Each registered gesture operates as a tiny finite state
17. ype Simple name Shake gt lt segment direction Left magqnitude 15 gt lt segment direct ion Right magnitude 15 gt lt segment direction Left magnitude 15 gt lt gesture gt lt gesture name Nod type Simple gt lt segment direction Up magnitude 15 gt lt segment direction Down magnitude 15 gt lt segment direction Up magnitude 15 gt lt gesture gt lt wiir3d gt d Creating IDriver and lCalculator plugins Plugin creation involves creating class libraries in a NET language which implement these interfaces Please refer to the source code and the accompanying help file WuR3D chm for more details Implementing this interface involves creating a class in C that implements all the interface functions Please read the documentation on each function carefully to ensure that your class functions as required by the API A developer only needs to implement their own driver if they wish to use a head tracking device other than the Wiimote Step by step instructions to make a class implementing Driver Note Similar steps can be taken to implement ICalculator 1 Create a new project Pick a Class Library as the project s type 2 Add references re Solution MyFirstlibrary 1 project EH MyFirstLibrary 54 Properties Add Web Reference HJ Syste c Classics Figure 3 Implementing IDriver add references Browse your file system Find the Interface you wish to

Download Pdf Manuals

image

Related Search

Related Contents

Model 2750 Downflow Service Manual  Shaft Repair Service Manual - Ustun  TDSHーBA 東芝コンビネーションカラ「カメラ取扱説明書  Sorbet King  Betriebsanleitung Operating Instructions Manual de  Svat GX301-012 surveillance camera  Lasko 3135 Use and Care Manual  CX406 3-HP DUST COLLECTOR  Manuale Installazione Ed Uso 710237002 Star  avis d`appel public à la concurrence  

Copyright © All rights reserved.
Failed to retrieve file