Real Time Tracking of High Speed Movements in the Context of a Table Tennis Application

Size: px
Start display at page:

Download "Real Time Tracking of High Speed Movements in the Context of a Table Tennis Application"


1 Real Time Tacking of High Speed Movements in the Context of a Table Tennis Application Stephan Rusdof Chemnitz Univesity of Technology D-09107, Chemnitz, Gemany Guido Bunnett Chemnitz Univesity of Technology D-09107, Chemnitz, Gemany ABSTRACT In this pape we summaize the expeiences we made with the implementation of a table tennis application. Afte descibing the hadwae necessities of ou system we give insight into diffeent aspects of the simulation. These include collision detection, physical simulation and some aspects of the design of the vitual opponent. Since table tennis is one of the fastest spots the synchonization of the playe s movements and the visual output on the pojection wall is the most challenging poblem to solve. Theefoe we analysed the latencies of all subcomponents of ou system and designed a pediction method that allows high speed inteaction with ou application. Categoies and Subject Desciptos B.8.2 [Pefomance and Reliability]: Pefomance Analysis and Design Aids. Geneal Tems Algoithms, Measuement, Pefomance, Design Keywods Vitual Reality, Tacking, Latency, Pediction, Collision Detection, Table tennis 1. INTRODUCTION Most applications fo immesive vitual envionments ae built to allow slow o medium speed use inteaction. Examples of this kind of inteaction include: changing the position of an object, tiggeing an action o setting a contol paamete. To boaden the ange of application fo VR systems it seems necessay to integate technologies that allow faste movements of the use in a vitual envionment. This aises the question what esponse times can be achieved of VR systems built fom standad ecent hadwae components. To answe this question we decided to ealize a table tennis simulation because this game involves vey fast movements and has modeate space equiements. Pemission to make digital o had copies of all o pat of this wok fo pesonal o classoom use is ganted without fee povided that copies ae not made o distibuted fo pofit o commecial advantage and that copies bea this notice and the full citation on the fist page. To copy othewise, o epublish, to post on seves o to edistibute to lists, equies pio specific pemission and/o a fee. VRST 05, Novembe 7 9, 2005, Monteey, Califonia, USA. Copyight 2005 ACM /05/ $5.00. Fo a bette undestanding of the basic constaints fo this application we eview a few facts taken fom the intenational ules of table tennis. The ball is specified to have a mass of 2.7 g and a diamete of 4 cm. It s colou may be chose fom matt white o oange. The table must be 2.74 m in length, m in width and 0.76 m in height. The mateial of the table is not specified but it has to be guaanteed that the ball bounces back at least 23 cm when it is eleased at 30 cm height above the table. The bouncing height of the ball is allowed to vay only in a vey small ange fo diffeent positions on the table. While the dimensions of the net ae given to be 1.83 m in width and m in height it is inteesting to note that thee ae no such estictions fo the acket. Thee ae no explicit constaints fo the size, the shape o weight of the acket but some estictions fo the mateial that implicitly constain the mentioned paametes. In a 2003 smashing competition the winne was able to speed up a vetically dopping ball to 31,25 metes pe second (69.9 MPH). Of couse the maximum speed in a usual table tennis match is much smalle, especially between non-pofessional playes. Ou tests showed that even fo ambitious non-pofessional playes the ball speed in a match will stay below 20 vey often below 10 metes pe second. This pape is oganized as follows. Afte eviewing elated wok in section 2 we descibe two diffeent hadwae set-ups that have been used fo ou application. Hee we epot on the difficulties we encounteed with ou initial installation that led us to the development of the cuent system. In section 4 we shotly summaize some aspects of ou popietay scene gaph libay V3D that we use as the basis softwae fo the table tennis application. We also descibe the physical laws we implemented to achieve ealistic ball tajectoies and pesent impotant featues of ou methods fo collision detection. Futhemoe, we give some aspects of the design of the main game pogam, especially fo the vitual opponent whose behaviou is of cucial impotance to achieve an enjoyable game. In section 5 we deal with the most challenging poblem of ou application that is to synchonize the playe s movements with the visual output. The development of ou solution to this poblem poceeds in thee steps. Fist we analyse the latencies of all subcomponents of ou system to achieve an estimate fo the total delay. Then we suggest a method to pedict futue movements based on aleady measued data. The total latency of the system deived in the fist step is used as an initial time paamete fo the pediction method. In a thid step we adjust this paamete in the pediction method to achieve synchonicity of movements and visual output in diffeent test situations.

2 2. PREVIOUS WORK In the field of compute suppot spots thee wee seveal aspects. In 1999 thee was a eseach pape [2] which discusses computes suppoted coopeative play. The application was named PingPongPlus. Even if the wok doesn t eally compae to ou one, it shows, that thee ae lot of inteesting oppotunities when combining spot with computes. Fo example the game was extended to include othe ideas such as ty to hit an object with the ball when playing the same. The visual feedback was ealized by pojecting diectly to the table by using a beame located above the table. An inteesting pat of the pape was the implementation of the ball tacking system. Theefoe 8 micophones wee places on the undeside of the table. So ball position can be detemined by using the audio signal delay. Futhemoe in [3] an majo point discusses the impotance of the input and output devices fo compute suppoted collaboative spots. So not all spots ae appopiated fo compute suppot and some of them needs to change the basic idea of the games such as mentioned above. In [4] it s clealy concluded that a majo aspect of compute spots is the immesion effect of the system. Only when the use believes his envionment, when he foget that all suounding object ae vitual then the use takes the envionment to seiously. This leads to full body activity and with this the use may sweat as he does eal spot. To achieve such ealistic envionments it s necessay to build a esponsive system. Related wok in field of tacking and filteing is given in [5],[6] and [7]. The majo points of these papes discusses smoothing and pediction of tacking data. A compaison of pediction filtes was pesented in [5]. They compae diffeent filteing methods to compensate the system latency especially fo oientation pediction of hand movements. They concluded that thee is no favoite filte. Results stongly depend on the input data, paametes and equiements. This means fo best pefomance a lot of tests ae needed to find the most appopiated paametes. Additionally an adaptive algoithm is suggested, which adapts to the equiements of the application. In pape [6] wee shown that, since pedicted output signals have moe enegy, pediction time should kept below 80ms to avoid jitteing. A lot of wok has been done in the field of collision detection including papes by Lin and Manocha [8][9][10]. Most ecent papes discuss usage of gaphics hadwae [9]. This appoach can only be used fo static collision detection. In addition to the geometic data dynamic collision detection system uses infomation about the motion path of the objects. Usual paametes ae velocity and acceleation [11][12]. 3. HARDWARE The fist vesion of ou table tennis application was implemented on a Panoam VisCenteII that consists of a cuved sceen, thee analogue Electohome beames (model: Maquee8500LC) fo font pojection and thee HP Wokstations. The advantage of the system is the DSLS (distibuted single logical sceen) technique. This featue allows simultaneous usage of 2D and 3D applications distibuted ove moe than one compute displayed on one vitual sceen. Fo steeoscopic viewing this setup uses active steeo. To allow comfotable high level use inteaction we installed an infaed tacking system with thee ARTtack1 cameas. The VisCenteII was sufficient fo the fist tests but involved seveal poblems. Figue 1: VisCenteII with thee tacking cameas Fist it should be noted that the HP wokstations of this system ae outdated. They ae no longe suppoted by HP and only allow the use of OpenGL1.1. Theefoe we use an extension of the Chomium libay that allows distibuted high pefomance 3D gaphics with optional edge blending on Windows and Linux to get simila comfot as with the HP-DSLS. The cuved pojection wall is fine fo pesentations, especially fo small goups but has sevee dawbacks when inteaction is involved. This is because the standad 3D pojection methods ae only coect fo plana pojection sufaces. The pojection on a cuved sceen esults in a distoted image. Theefoe the use can t see the objects (e.g. the ball) at thei eal positions which esults in collision eos duing the simulation. To emove the distotion we integated two algoithms into the Chomium package. The fist one computes fo each polygon the coect vetex positions fo the pojection on the cuved sceen. To incease accuacy the sizes of the polygons can be educed by polygon subdivision. This appoach esults in a loss of pefomance fo highly complex scenes. The second method uses textue mapping in conjunction with two endeing passes. Hee the slowdown is constant and does not depend on the scene complexity but cuently is still to high fo lage textue size. In addition both algoithms cuently esults in a loss of visual quality. Futhe disadvantages of this system include the size of the sceen and the fact that font pojection is used. Due to the latte a use talle than 1.80m would cast shadows on the sceen if he stands close than about 2 metes to it. Futhemoe the sceen is only 1.65 in height and has a fixed distance of 40cm fom the floo. Since the use mostly looks slightly down the missing image ight above the gound leads to a loss of immesion. To solve these poblems ou second implementation is based on a ea pojection system. Fo this we use a 4x3m sceen that consists of two 2x3m acyl glass panels with a thickness of 5mm. Thee ae thee types of panels available which diffe in gain and half angle value. We use the medium panels (gain 2.5, half angle 52 degees) to achieve the best compomise between visual quality, contast and viewing angle dependency. The difficulty with this sceen size was the fame constuction. We had to build a fame which is able to cay the two panels which ae nealy 40kg each. Futhemoe the fame should allow a pecise adjustment of the two panels to achieve the impession of

3 a single panel. Hee we ealized, that a emaining small gap between the panels (appox. 1-2mm) should be dakened by a wie o something simila. The eason fo this is that the use sometimes looks though the gap diectly to the beame and the bight light is moe botheing than a small dak ba in the middle of the sceen. when the game is ove. Fo the glasses we use a standad taget constuction with five makes. Figue 3: the two objects with installed tacking taget Figue 2: ea pojection with fou tacking cameas The equiements could be fulfilled by a self made wooden fame. It is dismountable in thee hous and potable on a van of 4,20m in length. The eassembling including complete set-up and cabling needs about five hous. An optional constuction allows complete dakening of the back side of the sceen in ode to get best visual quality in ooms with daylight. The two panels ae mounted on special backets to allow exact alignment of the panels. Fo the pojection we use 2 LCD beames (model Epson EMP74) with a esolution of 1024x768. This leads to a pixel size of 4x4mm which is not optimal but doesn t affect ou wok. The beames have to be installed 6 metes behind the sceen to achieve a sceen filling image. To educe the space equiements we poject the image on a mio that is positioned 4 metes behind the sceen and the beames ae located in between the mio and the sceen. In contast to the VisCenteII this setup uses passive steeo. Thee ae no high end equiements fo the compute. Cuently we use a standad pc with 3 GHz PentiumIV pocesso and a nvidia Quado o ATI X600 gaphics boad. This is enough to un the tacking softwae on the same machine without poblems. Fo eal 3D audio output we use a 5.1 sound system. As befoe with the cuved sceen we now use ou optical tacking system consisting of thee ARTtack1 cameas in conjunction with the new ea pojection. One camea is installed in the cente of the top hoizontal beam of the fame and the two othes sit on the left and ight vetical beam of the fame. The table tennis application equies two tagets to be tacked: the polaization glasses and the table tennis acket (fig. 3). When constucting the tagets the chaacteistics of the tacking system have to be consideed. The system needs a minimum of 4 makes pe taget. In ode to achieve obust tacking 6 makes ae used fo the acket. Fo convenience we let all makes stick out on the same side of the acket. This allows to lay the acket on a table In contast to common VR applications whee the use stands elatively still and makes only slow movements with his hands o ams the table tennis spot involves fast, wide ange movements. This is an impotant aspect when it comes to tacking. In such an application the pobability of make occlusion of a tacked object is much highe. If thee ae not enough cameas installed, this esults in a less eliable tacking pocess. The tacking woks easonably well with thee cameas but we achieved consideably moe eliable esults with fou cameas. This situation is shown in figue 2. A fifth camea of couse impoves the tacking again but the gain in quality that can be achieved with five instead of fou cameas is quite small. 4. SOFTWARE 4.1 V3D Basis softwae Besides commecial and open souce scene gaph libaies as WTK o OpenSG we use a popietay libay called V3D [14] fo implementing complex 3D applications. V3D consists of a module fo the use inteface handling and the undelying ende engine. Fo easons given below the table tennis application is completely based on V3D. Theefoe the following paagaph descibes some elevant aspects of the system. OpenGL V3D inteface Application Rendeing engine Scene and object data Figue 4: Communication between the diffeent pats of the V3D use inteface V3D is system independent and uns on Windows, Linux o Unix. The most impotant advantage of ou system is that we have full access contol of all components. We ae able to integate new algoithms at any level of the libay. To achieve high pefomance it is possible to optimize o exchange single modules fo a special pupose. Anothe eason, why we pefe to use ou inteface is the fact that thee ae aleady implemented algoithms, which can be used fo the table tennis application. Fo example we mention a novel inteaction method that has been pesented at VR 2004 [15]. Hee the use only needs thee thimbles attached to the thumb, the middle and the index finge. The use can now contol the

4 application by static and dynamic gestues without being handicapped by unwieldy input devices. In addition static and dynamic gestues with a single make can be used to contol the system [16]. Futhe implemented methods include a basic physics engine, collision detection, tacking algoithms and components fo loading and managing complex dynamic scenes with event based animation system. 2 t t b( t) = b0 + aτ τ Note, that a = ( 0, g,0) components. 0 + ( v 0 aτ (1 e t t0, i.e. the acceleation has zeo x and z τ ) V out1 A spin V out2 v spin V in F M Figue 6: ball tajectoy with spin (Magnus Effect) Figue 5: the vitual inteaction object with appopiate movements The vitual wold used by the table tennis application was ceated using the pofessional modeling softwae Lightwave3D fom NewTek. V3D suppots this file fomat and most of it s endeing and animation featues such as key fame animation, mophing and enveloped popeties. This softwae has been chosen fo its esulting compact files with well stuctued file fomats suppoting up-to-date featues and an expandable plug-in system [19]. Theefoe we ae able to integate new tailo-made plug-ins fo the table tennis application in a clean way. This allows easy configuation of most paametes without ecompiling. 4.2 Physics If we conside the mass m of the ball to be concentated in it s cente b (t), the movement of b (t) is govened by Newton s second law that can be fomulated as the following diffeential equation d m dt 2 2 b( t) = fi 1 = ma m τ d dt b( t) Hee a denotes the constant acceleation due to gavity and τ is a paamete that descibes the influence of fiction due to ai esistance. This diffeential equation has the geneal solution t b ( t) = atτ c1τ exp + c τ Applying the stat conditions b ( t 0 ) b = 0 and b( t0 ) = v0 one achieves 2 & Since we deal with an extended object we have to include the influence of the spin on the movement of the ball. This influence is called the Magnus Effect which causes the so called Magnus foce [17]. This foce acts pependicula to the velocity vecto and to the spin axis and can be computed as follows. F M = C M ρd whee CM is the Magnus coefficient, ρ is the density of the ai (1.26 kgm 3), D denotes the diamete of the ball, f is the spin fequency of the ball and v is the velocity vecto of the ball. Knowing the foce on the ball, the acceleation can be calculated fom F = ma. Futhe calculations ae necessay to decease ball spin ove time. The decement depends on the ai esistance of the ball, the cuent velocity and the cuent otation speed. As long as no collision occus between the ball and some othe object in the scene the equations descibing the ball movement ae evaluated fo each fame. If the detection algoithm indicates a potential collision within the time step between the cuent fame and the next one futhe evaluations become necessay to compute the point of collision. How this is done will be descibed in the next section. To simulate how the ball bounces off afte a collision we make use of a heuistic appoach descibed below. Fo a collision point P we denote with V in the incoming velocity of the ball and with N the nomal vecto of the collision object at P. We compute an initial outgoing velocity vecto V out1 accoding to the eflection law. The magnitude of the velocity V out1 and the ball spin afte collision also depend on the mateial popeties of the acket and the ball. We implemented a simplified model which uses one paamete to contol the length of V out1 and anothe one to set the fiction of the mateial. In a second step V out is modified because 3 fv

5 V in N A spin V out1 A effect v spin v effect Figue 7: paametes at the time of collision V out2 the influence of the ball spin has to be included. Fo this we compute an axis A effect which is pependicula to the nomal N and lies in one plane with N and the spin axis. We now detemine the otation speed v effect with espect to this axis. Then a otation is applied to the outgoing vecto V out1 whee A effect is used as the otation axis and the otation angle depends on v effect and the fiction of both collision objects. To compute the spin afte collision we extact the tangential component fom the incoming speed vecto V in. 4.3 Collision Detection To allow inteaction a collision detection module has to be integated into the system. Note, that in the game simultation only six objects ae involved: the ball, two ackets, the table, the net and the gound. Futhemoe, we can simplify the collision detection by only computing collisions of the ball with the five othe objects. All othe collisions can be neglected. Howeve, it is necessay to compute all collisions that that occu within the time inteval between two fames. Fo example it is possible that the ball touches both the net and the table within this peiod. Theefoe we need to detemine the fist intesection that is going to occu in the elevant time inteval. Based on this collision the movement of the ball is ecomputed and anothe collision seach is stated fo the emaining time inteval. In the following we descibe in moe detail the computations pefomed to detemine a collision between the ball and the acket. We associate a bounding box with the acket. Two planes of the box ae paallel to the ubbe coated suface which is the most impotant pat of the acket. The othe planes of the box ae chosen in ode to minimize the volume of the box. With the cente point O of the box we associate a coodinate system F with axes paallel to the edges of the box. Let b(t) denotes the tajectoy of the ball s cente. Note, that b(t) can be computed fo any time value based on the equations given in section 4.3. Howeve, the acket s data compised in O(t) and F(t) is known only fo discete time values t i. Futhemoe, we want to detect a collision that is going to occu within the time step between the cuent fame and the next one. Theefoe we need to pedict the movement of the acket based on aleady measued data. In this section we will assume that the data of the acket is available fo any time value t based on a pediction method that will be descibed in section 5. When the ball comes close to the acket, measued by the distance b(t) O(t), we compute the distances of the ball s cente fom the planes bounding the box: d b (t) = < N(t), b(t) > - d(t), whee N(t) denotes the nomal vecto of a face of the box and d it s othogonal distance fom the oigin. If within two fames a sign change fo one of these functions occus we seach fo an intesection point between the box and the ball. Fo this we compute the intesection points between the ball and the planes facing the ball and check whethe an intesection point lies on the box. Note, that diffeent of such points may exist. In this case we choose the intesection point with the smallest t value. Let b o denotes the position of the ball s cente and v o it s velocity at the time t o of intesection with the box. We then shoot a ay stating at b o in the diection of v o into the box and detemine the intesection point with the exact geomety of the acket. Based on this position we appoximate the point whee ball of adius touches the acket. 4.4 Significance of the Opponent The use acceptance of the table tennis application vey much depends on the behaviou of the vitual opponent. As in eal life an enjoyable game takes only place when both playes ae nealy on the same level. Theefoe the simulation of the opponent is an impotant aspect of the system. Since it is not difficult to ceate an opponent that gets all points one has to think about stategies to educe the skills of the vitual playe. As known fom othe game simulations (e.g. chess) we ealized diffeent skill levels fo the opponent that can be chosen by the use. By educing the level the use takes influence on the following popeties of his opponent. Fist, an uppe bound fo the maximum speed of his acket is defined. Second, we define a time delay that consists of two components. The fist one is a constant value that coesponds to a eaction time. The second component depends on the distance the vitual playe has to move fom his cuent position to the new position whee he intends to hit the ball. This delay time may cause that the playe misses the ball o hits it at a diffeent position as intended. Futhemoe, we included a andom noise function in the computation of the paametes fo an optimal etun of the ball. The amplitude of the noise function is deceased fo highe game levels but inceases ove the time the ball is played without inteuptions. The last effect intends to model an inceasing likeliness of mistakes when the ball is successfully etuned fo a long time. 4.5 Main Application The table tennis application has been ealized based on ou scene gaph libay V3D. Fo the ules of the game a special plug-in has been ceated. To contol the set-up of the game we povide intuitive inteaction techniques. Fo example the use can use the second hand to adjust the level of the game with the device mentioned in section 4.1. Reset and Replay can be tiggeed by cetain gestues of the playe. Mouse/Keyboad contol in still possible. The vitual envionment is completely defined by an extenal scene that is loaded by the application. This has the advantage that the envionment can be easily changed (e.g. eplacement of the table) o extended to achieve a nice visual appeaance. A map is

6 used to assign thei game elevant meaning to the impotant objects of the scene (e.g. object 7 is the ball). Sound data can be defined in ode to give a ealistic audio feedback. Cuently we use ou own implementation of spatial audio calculation which suppots Pologic Suound and the Dopple Effect. It is well known that audio feedback is an impotant aspect to achieve immesion into a vitual envionment. Fo the table tennis we found that the pefomance of the human playe deceases, when audio is disabled. 5. MANAGING HIGH SPEED INTERACTION As mentioned in the intoduction the majo difficulty is the synchonization of the playes movement with the visual output. We begin by analyzing the latency of ou system. 5.1 Latency We define the total latency of the system as the delay between the movements of the eal objects (e.g. the acket) and the coesponding visible feedback at the sceen. To explain why latency is a big poblem we note that a acket speed of 15 metes pe second (which is vey difficult to achieve fo a non pofessional playe) and a total latency of 100ms in the system would esult in a maximum eo of moe than one mete in the acket position. This illustates the need of coection algoithms. Pos1 Pos2 Pos3 Tacking System 20ms delay consumed by the tacking, small vaiation Application half fame aveage delay, vaiation is one fame about 10 ms delay (at 100Hz), mainly used by OpenGL about 20 ms delay, consumed by the beame Measuement (60Hz) Tacking-Thead Calculation (100 Hz) Rendeing (100 Hz) Beame Figue 8: latency of subcomponents The total delay is the sum of the latencies of the sub components of the system. The tacking system is the fist element in the chain of components. As we use the ART system we can efe to the measuement potocol [1]. This potocol descibes the latency of the ART tacking system depending on diffeent paametes as e.g. the numbe of cameas. In a situation of fou cameas two to fou bodies an no single make tacking the system has a latency of appoximately 20ms using a 2.4GHz pc. The vaiation is about 1ms. This nealy eflects ou set-up. Note, that the latency does not depend on the tacking fequency. The next component is the application itself. This includes the pocessing of the incoming tacking data and of couse the complete visualization with OpenGL. Since the cuent table tennis scene does not have to much polygons, the delay is vey shot. This pat of the system consumes about 10ms o less of the system s latency when 100Hz endeing is used. Unfotunately this value is not constant but depends on the endeing fequency and changes fom fame to fame. Note that this value is not only detemined by the endeing fequency. The eason fo this is the OpenGL pipeline. In geneal to get a high fame ate the use of glfinish() should be avoided. Howeve, if this done, due to the asynchonous behavio of the OpenGL pipeline the duation to the final buffe swap can now vay. In addition to this the vetical synchonization has influence on this timing. To achieve a smoothe behavio of the whole system a moe constant fame ate is pefeed ove a highe fame ate that is oscillating. So we detemine the actual display fequency and adapt the latency to the coesponding value. Figue 9: latency diagam fo the tacking system[1] Additionally we have to conside that thee is a delay between the moment the tacking data is eceived by the application and the beginning of data pocessing. In ou system a sepaate thead is esponsible fo poviding the tacking data to the application. In this way we can guaantee that each time the application accesses the most ecent data without need fo a un though a buffe. This delay has to be measued and included in the system s latency. The value is between zeo and the length of a endeing fame and can be exactly measued each time it is needed. Finally we have to take into account the last device in the visualization pipeline - the beame. Fist, we will justify ou decision to use LCD beames. It s clea that CRT models cannot compae to digital beames when it comes to bightness, size and pice. But why not use a DLP-Model? As aleady mentioned the system woks in passive steeo mode. In the evaluation phase we tested seveal beame/filte combinations. We got best visual esults with Silvefabic linea High Tansmission Polaizes which equie LCD beames. We found that this combination has the best pice/pefomance atio. A DLP-beame can be slightly faste but would equie the use of a diffeent filte system. As the esult we would get lowe bightness o we had to invest into a moe expensive beame. To estimate the beame latency we connected the beame and a CRT monito to the same output of the compute by using a VGA splitte. A test pogam pojects a moving vetical ba onto a linea fame scale. The ba moves one unit pe fame synchonized by the vetical sync signal. Then we used a digital camea to geneate photos of the ea pojection sceen and the monito standing side by side. Theeby the shutte speed of the

7 camea nealy coesponds to the fame ate. Now we can compae the positions of the bas. Figue 10 shows the compaison between the beame and the CRT monito. The tests show that ou beame is most of the time nealy one fame slowe than a CRT monito. Sometimes the delay is even two fames. Taking into account, that we use fame ates fom 60 to 85 Hz the delay is about 20ms (15 to 30ms). This value is not constant but oscillates depending on the eal fame ate of the beames LCD and due to the missing synchonization of the signals. At this time we don t have a moe exact measuement method. possible aspects fo impovements will be discussed in the last section. Note that the only impotant moment we need pecise position and oientation data of the acket is the time of collision with the ball. We do not need to have exact pediction fo evey fame. This is an advantage of the special table tennis application because ou tests show that the time of collision is appoximately in the middle of a moe o less smooth movement of the acket. This suppots the assumptions used by the pediction algoithm. Howeve, to pedict the vey fast movements of pofessional playes will become moe difficult. Fo this pupose it will be necessay to impove the tacking ate and the latency. In addition to the pediction of the acket s position and oientation the pediction is used fo the head tacking too. This is less difficult because of the smoothe movements and lowe speed of the head. Figue 10: two sections of one photo; the beame (left) is one fame late than the CRT Counting all tems togethe esults in an appoximate total latency of 50ms ( ) plus the time defined by the age of tacking data (which is measued evey fame) fo the complete system with the cuent set-up. 5.2 Pediction In ode to cope with the latency the system has to pedict the movements of the tacked objects (acket, glasses) ove this duation. It is not enough to pedict ove the 20ms of tacking latency, because the use does not inteact with the intenal simulation of othe objects (e.g. the ball) but with the visible image. So the pediction must take place ove the whole pipeline. In [4] seveal filtes fo pediction and smoothing of incoming tacking data wee discussed. In thei conclusion the authos did not pefe any filte and suggested to use application dependent adaptive filteing. Futhemoe ou tacking system aleady uses an integated Kalman Filte fo noise eduction of all 6 degees of feedom. So an additional KF only makes sense, when the integated KF fom the tacking system is disabled. We decided to use the integated filte fo noise eduction of the tacking data and we implemented additional functionality fo pediction. We pedict the position fo the glasses and the acket based on thei velocities and acceleation values in the last thee measuements. This seems to be a vey suitable appoach fo ou intention because this eflects the eal behavio of the acket o the head. In addition to this the algoithm takes into account some simple movement ules fo the human body. Fo instance it is not possible to move the hand out of the ange of the am o to otate the hand at any angle. Fo this constaints the head position is included in the calculations. To minimize the pediction eo a maximum velocity and acceleation fo tanslation and otation can be set. Such popeties help to emove peaks in the pediction system. Ou appoach esults in a vey esponsive pediction which tends to jitte a bit. The majo eason fo this is not the tacking eo, but the vaiation of the latency fom one fame to anothe. If the pediction time is not pecise the pediction can t be too. Some mm Position (Z) Figue 11: position pediction diagam of a acket movement Figue 11 shows the position pediction diagam fo the z coodinate (appoximately the distance to the sceen) of a moving acket. The X axis shows the simulation time in milliseconds. The ball was hit at 38105ms. As pesumed in [6] the pedicted movement has highe enegy and moe jitteing. But it s clealy noticeable that the eo between eal position and pedicted position at the time of collision is vey small. 5.3 Adjusting Pediction and Latency The pediction method only appoximates the movement of an object and the pediction inteval is appoximated based on the latency estimation. Theefoe it is necessay to adjust these two appoximations to achieve easonable esults. This is done based on the following simple pocedue. A peson equipped with tacked glasses stands in font if the sceen and holds up a tacked object (e.g. the acket). When the object is moved it can be visually obseved whethe the latency peset (that is used fo pediction) is too small o too lage. If the vitual object on the sceen follows behind the eal object the latency has to be inceased. If the vitual object is ahead of the eal one the latency has to be deceased. If both objects stay conguent duing the movement a easonable appoximation fo the latency has been found. As the initial value we used ou estimation of 50ms fo the total latency plus a vaying value that coesponds to the age of the tacking data. As explained in section 5.1 this additional value that vaies between zeo and the duation of one fame (o one Pediction Real Collision ms

8 instance of tacking data) can be exactly detemined. In figue 12 we show the change of this value ove the simulation with a display fequency of 100 Hz and a tacking fequency of 60 Hz. Using a latency peset of 50ms the esulting total latency vaies between 50ms and 67ms, i.e. the maximal age of data is 17ms. Based on ou expeiments we found that the estimated latency of 50ms is close enough to seve as a good initial value fo ou simple adjustment pocedue. A few iteations of this pocedue ae usually sufficient to fine tune the latency value fo optimal esults. ms Latency Fame Total latency delay Figue 12: system s latency including vaiation too can each moe than 110 kilometes pe hou (30m/s). Using 60Hz tacking ate this esults in 50cm measuement point distance pe fame. Thee ae tacking system available suppoting 200Hz tacking ate and 10 milliseconds latency (descibed in the datasheet). Unfotunately we couldn t test such a system so fa but this would of couse impove esponsiveness and accuacy of the system. Futhe developments will concen the distibution of ou application to allow two emote human uses to play against each othe. Fo this it will be necessay to cope with the netwok latency. Futhemoe, we plan to ealize a table tennis simulation with multi-use suppot on a single sceen simila to [13]. This will allow us to ealize table tennis doubles. We also intend to integate a haptic feedback fo the ball collision with the acket in ou simulation. 7. ACKNOWLEDGMENTS We want to thank Advanced Realtime Tacking fo the good collaboation. Special thanks to Steffen Seege fo fuitful discussions on the physical simulation. 6. RESULTS AND PERSPECTIVES With ou implementation we have shown, that the high equiements of a table tennis simulation can be met with ecent techniques fo hadwae and softwae especially fo tacking and pediction. We pesented the system at diffeent events as such as IEEE VR2005 in Bonn, Gemany. In most cases we got vey positive feedback. Uses with no expeience with VR envionments can use ou system without any intoduction. The eason fo this is the closeness of ou simulation to a eal table tennis envionment. This is achieved by the ealistic video and audio output and the familia input device. The complete envionment is immediately accepted by the uses. Uses who ae familia with VR envionments ae mostly impessed by the fast esponse of the system. The thid categoy include the table tennis playes. They confimed the nealy ealistic behavio of the system with espect to the ball motion including the influence of spin. Howeve, since they pefom much faste movements than othe uses the limits of the simulation with espect to coect pediction become obvious. Figue 13: Chemnitze Linuxtage, Mach 5-6 th 2005, Gemany We ealized that the sensation of immesion ceated by ou system is vey high. Vey often we noticed that uses tied to put the acket on the table afte finishing the game. Sometimes vey enthusiastic playes hit the sceen with the acket. These incidents indicate that the playe seems to foget what the envionment eally looks like. We futhe conclude that the fequency of the tacking system is not the majo bottleneck of the system. Highe tacking ates cetainly impove the esult but a moe impotant point is latency. Incementing the tacking ate to 100Hz will not impove the system behavio as much as deceasing the latency to 20ms. Nevetheless a highe tacking ate would be pefeed especially fo the high speed equiements of a tained table tennis playe. As descibed in the intoduction the ball speed and the acket speed Figue 14: VR 2005, Mach th 2005, Bonn-Gemany

9 8. REFERENCES [1] Measuement of Delays (ART-potocol, 17.Oct.2003) [2] Ishii; H.; Wisneski, C.; Obanes, J.; Chun, B.; Paadiso, J.: PingPongPlus: Design of an Athletic-Tangible Inteface fo Compute-Suppoted Coopeative Play, Poc. of CHI 99, May 15 20, 1999, ACM-Pess, New Yok, pp [3] V. Wulf, E.F. Moitz, C. Henneke, K. Al-Zubaidi, G. Stevens: Compute Suppoted Collaboative Spots: Ceating Social Spaces Filled with Spots Activities. Poc. of the Thid Intenational Confeence on Educational Computing (ICEC 2004), Septembe 1-3, 2004, Eindhoven, NL, Spinge, LNCS, pp [4] Mokka, S.; Väätänen, A.; Välkkynen, P.: Fitness Compute Games with a Bodily Use Inteface, in: Poceedings of the Second Intenational Confeence on Entetainment Computing, Pittsbugh, Pennsylvania, May 8-10, 2003, ACM Intenational Confeence Poceeding Seies, pp 1-3 [5] A. v. Rhijn, R. v. Liee, J. D. Mulde, An Analysis of Oientation Pediction and Filteing Methods fo VR/AR, Poc. of IEEE VR , Ma. 2005, Bonn, Gemany [6] R. Azuma, G. Bishop, Impoving static and dynamic egistation in an optical see-though HMD, Poc. of SIGGRAPH , 1994 [7] L. Chai, K. Nguyen, B. Hoff, T. Vincent, An adaptive estimato fo egistation in augmented eality. Second IEEE and ACM Int l Wokshop on Augmented Reality (IWAR) 99, Oct 1999 [8] Naga K. Govindaaju, Ming C. Lin, and Dinesh Manocha, Quick-CULLIDE: Efficient Inte- and Inta-Object Collision Culling Using Gaphics Hadwae, IEEE Vitual Reality, [9] Lin, M. C. and Manocha, D. (1995). Fast intefeence detection between geometic models, the Visual Compute, 11(10): pp , 1995 [10] M.C. Lin. Fast and Accuate Collision Detection fo Vitual Envionments. Poc.IEEE Scientific Visualization Conf., [11] W. J. Bouma and G. Vanecek, J., "Collision Detection and Analysis in a Physically based Simulation", poceedings of the Euogaphics Wokshop on Animation and Simulation, Vienna Austia, pages , 1991 [12] J. Canny, Collision Detection fo Moving Polyheda, Technical Repot, Massachusetts Institute of Technology, Cambidge, MA, 1984 [13] B. Föhlich, R. Blach, O. Stefani, Implementing Multi- Viewe Steeo Displays, Poc. of WSCG 2005, Feb. 2005, Plzen, Czech Repuplic [14] S. Rusdof, M. Loenz, S. Wölk, G. Bunnett, Vitualiti3D: A System-Independent, Real Time-Animated, Thee- Dimensional Gaphical Use Inteface, Poc. of VIIP 2003, IASTED, Benalmádena, Sept. 8-10, 2003, pp [15] S. Rusdof, G. Bunnett, A Simple VR-Contol Device Using Make-Based Tacking of the Human Hand, Wokshop IEEE VR2004, Chicago, 2004 [16] S. Rusdof, G. Bunnett, Kontextabhängige Steueung in VR-Umgebungen ohne Vewendung stöende Eingabehadwae, Wokshop, Chemnitz, 2004 [17] Caini J P 1999,

Self-Adaptive and Resource-Efficient SLA Enactment for Cloud Computing Infrastructures

Self-Adaptive and Resource-Efficient SLA Enactment for Cloud Computing Infrastructures 2012 IEEE Fifth Intenational Confeence on Cloud Computing Self-Adaptive and Resouce-Efficient SLA Enactment fo Cloud Computing Infastuctues Michael Maue, Ivona Bandic Distibuted Systems Goup Vienna Univesity

More information

Cloud Service Reliability: Modeling and Analysis

Cloud Service Reliability: Modeling and Analysis Cloud Sevice eliability: Modeling and Analysis Yuan-Shun Dai * a c, Bo Yang b, Jack Dongaa a, Gewei Zhang c a Innovative Computing Laboatoy, Depatment of Electical Engineeing & Compute Science, Univesity

More information

Supporting Efficient Top-k Queries in Type-Ahead Search

Supporting Efficient Top-k Queries in Type-Ahead Search Suppoting Efficient Top-k Queies in Type-Ahead Seach Guoliang Li Jiannan Wang Chen Li Jianhua Feng Depatment of Compute Science, Tsinghua National Laboatoy fo Infomation Science and Technology (TNList),

More information

On the Algorithmic Implementation of Multiclass Kernel-based Vector Machines

On the Algorithmic Implementation of Multiclass Kernel-based Vector Machines Jounal of Machine Leaning Reseach 2 (2001) 265-292 Submitted 03/01; Published 12/01 On the Algoithmic Implementation of Multiclass Kenel-based Vecto Machines Koby Camme Yoam Singe School of Compute Science

More information


THE CARLO ALBERTO NOTEBOOKS THE CARLO ALBERTO NOTEBOOKS Mean-vaiance inefficiency of CRRA and CARA utility functions fo potfolio selection in defined contibution pension schemes Woking Pape No. 108 Mach 2009 Revised, Septembe 2009)

More information

From PLI s Treatise Initial Public Offerings: A Practical Guide to Going Public #19784 PREPACKAGED BANKRUPTCY AND PREARRANGED BANKRUPTCY PROCESS

From PLI s Treatise Initial Public Offerings: A Practical Guide to Going Public #19784 PREPACKAGED BANKRUPTCY AND PREARRANGED BANKRUPTCY PROCESS Fom PLI s Teatise Initial Public Offeings: A Pactical Guide to Going Public #19784 16 PREPACKAGED BANKRUPTCY AND PREARRANGED BANKRUPTCY PROCESS Deyck Palme Jessica Fink Cadwalade, Wickesham & Taft LLP

More information


CHAPTER 9 THE TWO BODY PROBLEM IN TWO DIMENSIONS 9. Intoduction CHAPTER 9 THE TWO BODY PROBLEM IN TWO DIMENSIONS In this chapte we show how Keple s laws can be deived fom Newton s laws of motion and gavitation, and consevation of angula momentum, and

More information

They aim to select the best services that satisfy the user s. other providers infrastructures and utility services to run

They aim to select the best services that satisfy the user s. other providers infrastructures and utility services to run End-to-End Qo Mapping and Aggegation fo electing Cloud evices Raed Kaim, Chen Ding, Ali Mii Depatment of Compute cience Ryeson Univesity, Toonto, Canada,,

More information

On the winner-take-all principle in innovation races

On the winner-take-all principle in innovation races On the winne-take-all pinciple in innovation aces VincenzoDenicolòandLuigiAlbetoFanzoni Univesity of Bologna, Italy Novembe 2007 Abstact What is the optimal allocation of pizes in an innovation ace? Should

More information

Development of Mathematical Model for Market-Oriented Cloud Computing

Development of Mathematical Model for Market-Oriented Cloud Computing Intenational Jounal of Compute Applications (0975 8887) Volume 9 No.11, Novembe 2010 Development of Mathematical Model fo Maket-Oiented Cloud Computing K.Mukhejee Depatment of Compute Science & Engineeing.

More information

Recovering Risk-Neutral Densities from Exchange Rate Options: Evidence in Turkey

Recovering Risk-Neutral Densities from Exchange Rate Options: Evidence in Turkey CENTRAL BANK OF THE REPUBLIC OF TURKEY WORKING PAPER NO: 10/03 Recoveing Risk-Neutal Densities fom Exchange Rate Options: Evidence in Tukey Mach 2010 Halil İbahim AYDIN Ahmet DEĞERLİ Pına ÖZLÜ Cental Bank

More information

Accuracy at the Top. Abstract

Accuracy at the Top. Abstract Accuacy at the Top Stephen Boyd Stanfod Univesity Packad 64 Stanfod, CA 94305 Mehya Mohi Couant Institute and Google 5 Mece Steet New Yok, NY 00 Coinna Cotes Google Reseach

More information

EU import restrictions on genetically modified feeds: impacts on Spanish, EU and global livestock sectors

EU import restrictions on genetically modified feeds: impacts on Spanish, EU and global livestock sectors Instituto Nacional de Investigación y Tecnología Agaia y Alimentaia (INIA) Spanish Jounal of Agicultual Reseach 2010 8(1), 3-17 Available online at ISSN: 1695-971-X EU impot estictions

More information

DOCUMENT RESUME. Schacht, Robert M.; Baldwin, Julie TITLE

DOCUMENT RESUME. Schacht, Robert M.; Baldwin, Julie TITLE DOCUMENT RESUME ED 415 045 RC 021 260 AUTHOR Schacht Robet M.; Baldwin Julie TITLE The Vocational Rehabilitation of Ameican Indians Who Have Alcohol o Dug Abuse Disodes. Executive Summay. INSTITUTION Nothen

More information

How to recover your Exchange 2003/2007 mailboxes and emails if all you have available are your PRIV1.EDB and PRIV1.STM Information Store database

How to recover your Exchange 2003/2007 mailboxes and emails if all you have available are your PRIV1.EDB and PRIV1.STM Information Store database AnswesThatWok TM Recoveing Emails and Mailboxes fom a PRIV1.EDB Exchange 2003 IS database How to ecove you Exchange 2003/2007 mailboxes and emails if all you have available ae you PRIV1.EDB and PRIV1.STM

More information

Surge...With Service. When a Knight acts selflessly, he acts on behalf of the world.

Surge...With Service. When a Knight acts selflessly, he acts on behalf of the world. Suge...With Sevice When a Knight acts selflessly, he acts on behalf of the wold. Times may change, but the challenges facing people emain the same. A need fo food, shelte, wam clothing, financial secuity

More information

Your Guide to Homeowners Insurance

Your Guide to Homeowners Insurance You Guide to Homeownes Insuance Fo Michigan Consumes Depatment of Insuance and Financial Sevices (DIFS) Toll-Fee Consume Assistance Line 877-999-6442 Table of Contents Undestanding

More information

Make-to-order, Make-to-stock, or Delay Product Differentiation? A Common Framework for Modeling and Analysis

Make-to-order, Make-to-stock, or Delay Product Differentiation? A Common Framework for Modeling and Analysis ae-to-ode, ae-to-stoc, o Dela Poduct Dieentiation? A Common Famewo o odeling and Analsis Diwaa Gupta Saiallah Benjaaa Univesit o innesota Depatment o echanical Engineeing inneapolis, N 55455 Second evision,

More information


ELECTRİC DRİVE SYSTEMS AND MATLAB APPLICATIONS EECTRİC DRİVE SYSTEMS AND MATAB Assist. Pof. D. H. İbahim OKUMUŞ Engineeing Faculty Electical & Electonics Engineeing Depatment (D. Nik Rumzi Nik Idis in des notlaından alınmıştı) 1 Contents 1. Intoduction

More information

Instituto Superior Técnico Av. Rovisco Pais, 1 1049-001 Lisboa E-mail:


More information

Space Vector Modulated Direct Torque Controlled (DTC SVM) Inverter Fed Induction Motor Drive

Space Vector Modulated Direct Torque Controlled (DTC SVM) Inverter Fed Induction Motor Drive Waaw niveity of Technology Faculty of Electical Engineeing Intitute of Contol and Indutial Electonic Ph.D. Thei acin Żelechowki,. Sc. Space Vecto odulated Diect Toque Contolled (DTC SV) Invete Fed Induction

More information


MULTIPLE SOLUTIONS OF THE PRESCRIBED MEAN CURVATURE EQUATION MULTIPLE SOLUTIONS OF THE PRESCRIBED MEAN CURVATURE EQUATION K.C. CHANG AND TAN ZHANG In memoy of Pofesso S.S. Chen Abstact. We combine heat flow method with Mose theoy, supe- and subsolution method with

More information

The Lucas Paradox and the Quality of Institutions: Then and Now

The Lucas Paradox and the Quality of Institutions: Then and Now Diskussionsbeitäge des Fachbeeichs Witschaftswissenschaft de Feien Univesität Belin Volkswitschaftliche Reihe 2008/3 The Lucas Paadox and the Quality of Institutions: Then and Now Moitz Schulaick und Thomas

More information

A 3D OBJECT SCANNER An approach using Microsoft Kinect.

A 3D OBJECT SCANNER An approach using Microsoft Kinect. MASTER THESIS A 3D OBJECT SCANNER An approach using Microsoft Kinect. Master thesis in Information Technology 2013 October Authors: Behnam Adlkhast & Omid Manikhi Supervisor: Dr. Björn Åstrand Examiner:

More information

SECTION 1: DEVELOPMENT PROCESSES. 1.1 Performance Measurement Process

SECTION 1: DEVELOPMENT PROCESSES. 1.1 Performance Measurement Process SECTION 1: DEVELOPMENT POCESSES 1.1 PEFOMANCE MEASUEMENT POCESS 1.1 Performance Measurement Process Introduction Performance measures are recognized as an important element of all Total Quality Management

More information

Advantages of using a virtual reality tool in shipbuilding

Advantages of using a virtual reality tool in shipbuilding Advantages of using a virtual reality tool in shipbuilding Verónica Alonso, SENER, Madrid/Spain, Rodrigo Pérez, SENER, Madrid/Spain, Luis Sánchez, SENER,

More information

Smarter Transportation: The power of Big Data and Analytics

Smarter Transportation: The power of Big Data and Analytics Smate Tanspotation: The powe of Big Data and Analytics Eic-Mak Huitema, Global Smate Tanspotation Leade IBM 1 Intelligent Tanspot Systems (ITS) fo the futue 2 BECAUSE WE WANT IT FOR THE FUTURE. How? The

More information



More information

Hip Hop solutions of the 2N Body problem

Hip Hop solutions of the 2N Body problem Hip Hop solutions of the N Boy poblem Esthe Baabés Depatament Infomàtica i Matemàtica Aplicaa, Univesitat e Giona. Josep Maia Cos Depatament e Matemàtica Aplicaa III, Univesitat

More information

Improv: A System for Scripting Interactive Actors in Virtual Worlds

Improv: A System for Scripting Interactive Actors in Virtual Worlds Improv: A System for Scripting Interactive Actors in Virtual Worlds Ken Perlin / Athomas Goldberg Media Research Laboratory Department of Computer Science New York University ABSTRACT Improv is a system

More information