Determining the Accuracy of Oculus Touch Controllers for Motor Rehabilitation Applications Using Quantifiable Upper Limb Kinematics: Validation Study

Background: As commercial motion tracking technology becomes more readily available, it is necessary to evaluate the accuracy of these systems before using them for biomechanical and motor rehabilitation applications. Objective: This study aimed to evaluate the relative position accuracy of the Oculus Touch controllers in a 2.4 x 2.4 m play-space. Methods: Static data samples (n=180) were acquired from the Oculus Touch controllers at step sizes ranging from 5 to 500 mm along 16 different points on the play-space floor with graph paper in the x (width), y (height), and z (depth) directions. The data were compared with reference values using measurements from digital calipers, accurate to 0.01 mm; physical blocks, for which heights were confirmed with digital calipers; and for larger step sizes (300 and 500 mm), a ruler with hatch marks to millimeter units. Results: It was found that the maximum position accuracy error of the system was 3.5 ± 2.5 mm at the largest step size of 500 mm along the z-axis. When normalized to step size, the largest error found was 12.7 ± 9.9% at the smallest step size in the y-axis at 6.23 mm. When the step size was <10 mm in any direction, the relative position accuracy increased considerably to above 2% (approximately 2 mm at maximum). An average noise value of 0.036 mm was determined. A comparison of these values to cited visual, goniometric, and proprioceptive resolutions concludes that this system is viable for tracking upper-limb movements for biomechanical and rehabilitation applications. The accuracy of the system was also compared with accuracy values from previous studies using other commercially available devices and a multicamera, marker-based professional motion tracking system. Conclusions: The study found that the linear position accuracy of the Oculus Touch controllers was within an agreeable range for measuring human kinematics in rehabilitative upper-limb exercise protocols. Further testing is required to ascertain acceptable repeatability in multiple sessions and rotational accuracy. (JMIR Biomed Eng 2019;4(1):e12291) doi: 10.2196/12291


Introduction
Current gaming and virtual reality platforms [1] that use motion-controlled interfaces offer an affordable and accessible method of tracking human kinematics. However, given that consumer-grade platforms are originally intended for playing video games and to immerse players in virtual environments, their tracking performance should be evaluated before they are employed as tools for biomechanical or clinical analysis [2]. Previously tested rehabilitation protocols using commercial gaming technology such as Wii Motes (Nintendo Co, Ltd, Kyoto, Japan) to provide positional feedback for trunk compensation [3] or a Kinect (Microsoft Corporation, Redmond, United States) to measure range and speed of motion for upper-limb exercises [4,5] have shown potential to be used as rehabilitation tools that could provide quantifiable changes in clients' kinematic motor abilities to therapists. Other studies using accelerometers to track patterns in functional upper-limb movements were able to capture differences similar to those measured by clinical scales [6] and found benefits from objective quantitative evaluations of changes in motor ability during therapy regimens, which can be collected from in-game progress reports [7]. In addition, success has been found in translating kinematic upper-limb metrics to clinical Fugl-Meyer scoring [8] and in detecting exercise repetitions via kinematic monitoring for telerehabilitation and at-home programs [9]. Current clinical assessments for upper-limb motor function, such as the Fugl-Meyer Assessment and Wolf Motor Function Test, only provide low-resolution point-scores rated qualitatively by therapists, and kinematic analysis of upper-limb motion has been reported to be a useful addition to these clinical assessments [10]. When measuring range of motion in a clinical setting, the goniometer is considered a gold-standard clinical measurement tool used by therapists [11]. However, only static joint angles can be measured, and typically with some visual estimation and multiple testers [12].
One of the latest (released December 2016) devices to be developed for interacting with virtual environments is the Oculus Touch (Oculus VR, LLC, Menlo Park, CA, United States) controller set. The controllers are peripheral accessories of the Oculus Rift virtual reality headset and are employed to track users' hand movements. Their tracking system employs a proprietary algorithm that collects data from infrared sensors via constellation tracking [13] and inertial measurement units (IMUs). Given that the controllers are wireless, lightweight, low-cost devices that can be used to track a user's hand position and orientation in 3-dimensional (3D) space, they could have the potential to be employed in rehabilitative and biomechanical motion-tracking applications. At the time of this study, there was no sufficient information about the tracking performance of the controllers provided by the manufacturer, and there is currently a lack of scientific papers employing a systematic approach to test their potential application as tools for motion-tracking data capture. As a result, in this study, we evaluated the tracking accuracy of the Oculus Touch controllers to present a preliminary evaluation that could be informative to the biomechanical and rehabilitation research community. The specific aim of the experiment was to quantify the relative positional accuracy of the Oculus Touch controllers in 3 spatial dimensions. As the controllers are intended for hand-held motion control, the evaluation setup was centered around the movement size for standing/sitting upper-limb reaching tasks.

Technical Setup
An Oculus Touch controller (Figure 1), 2 Oculus Sensors, an Oculus Rift headset, and a computer running Windows 10 (Microsoft Corporation) were employed in this study.
A custom computer application was developed in Unity 2017 (Unity Technologies, San Francisco, United States) to capture and log the controller's position during the experiment. The data capture was performed at the headset's native frequency of approximately 90 Hz , using the Unity OVR Plugin package to access controller data. The virtual environment was set up over a 2.4 m x 2.4 m play-space in the x-z plane to be within the recommended manufacturer play area. This space consists of 16 commercial 600 mm square force/torque plates professionally installed on a subfloor of auto-levelling epoxy and flat to within 0.5 mm ( Figure 2). The y-axis was only bounded by the camera sensors' field of view limitations.
To ensure consistency, the Oculus Sensors were placed on the floor at 0.3 m along the front edge of the space and 1.2 m apart, equidistant from the centre line, for the entire experiment. The sensor heads were manually leveled and visually aligned to have parallel, front-facing fields of views. Both the sensors and controllers maintained an initial y-position of 0 at the floor-this would be equivalent to placing the sensors at table height and the controllers at hand height.
All measurements were taken by securing the right-hand Oculus Touch controller to a flat L-shaped jig ( Figure 2) and resting it on the floor for 5 seconds. Initial calibration of floor height and play-space size and orientation was done through the official commercial Oculus setup client.

Experimental Procedure
Measurements were taken along each of the 3 spatial axes (x: width, y: height, z: depth) in a single session. The x and z axes were measured in increments of 5, 10, 50, 150, 300, and 500 mm steps relative to a recorded 0 value. The estimate for a 500 mm largest step was attributed to an approximate lower arm and hand length from human anthropometric data in Huston [14].
This length should replicate the size of a simple outward reach from the elbow. Each set of steps was taken from the zero line of each axis in both the positive and negative direction and then taken in the positive direction at +600 mm and in the negative direction at -600 mm along the same axis ( Figure 3; left). Graph paper with millimeter unit markings was used to define the step sizes to the relative 0 point of each set. The graph paper step sizes were verified using a Mitutoyo 500-196 digital calipers, accurate to 0.01 mm, visually aligned to the edge of the unit markings within the third significant digit. A ruler with half-millimeter unit markings was used for steps larger than 150 mm. The bottom left corner of the jig was used as an origin for the 3 axes with respect to the controller. The x and z axes edges were aligned with the graph paper visually. The L-shaped jig was checked for orthogonality using a calibrated 90-degree ruler in all 3 directions before its use. To test the repeatability of the L-shaped jig alignment on graph paper, the controller was moved at least 300 mm away from and then toward a single point near the centre of the play-space on each axis 3 times.
In the x-axis, 4 sets of steps were taken at 4 different depths for a total of 16 sets of steps to measure the accuracy of the controllers over the play-space area ( Figure 3). The same configuration was used for the z-axis but using 4 sets of steps along 4 different x-axis values, 600 mm apart.  . Close-up of the Oculus Touch controller in the L-shape jig over an aluminium block used to measure y-axis steps. Both controller (system) and graph paper (physical world) axes are represented and were aligned visually during the experiment.
The 16 y-axis step sets were taken 600 mm apart from each other in the x-z plane starting 300 mm from the 0 line in each perpendicular axis in the x-z plane. This was the approximate centre of each of the 16 tiles seen in Figure 3 (right). The y steps were measured by placing the controller and jig on level aluminum blocks of specific heights, which were measured using zeroed, calibrated digital calipers accurate to 0.01 mm. The L-shaped jig was used as a physical origin point and axes and was aligned with the top left corners of the aluminum blocks ( Figure 4).
The aluminum blocks were chosen to allow the y-axis step sizes to approximately match the same x and z step sizes, and had heights of 6.23, 12.56, 50.82, and 152.5 mm. The x and z positions were monitored and recorded but not analyzed for alignment accuracy.

Data Analysis
To remove motion artifacts from pressing the buttons on the controller to start and stop the data recording, the first 1.5 seconds (135 samples) were removed and the next 2 seconds (180 samples) were used as the sample data for each measured point. After those 2 seconds, the rest of the data recording (approximately 1.5 seconds or 135 samples) was also discarded, regardless of length. The data were averaged to calculate the measured value at each point.
For each sample point, the 3D position of the controller was measured. The variation was calculated for each data point and used to determine the static precision of the system. The position error for each point was calculated by subtracting the measured displacement (Euclidean distance) by the expected step size. The Euclidean distance was used to account for any misalignment of the Oculus tracking coordinate system with respect to the physical grid. The error values were then averaged to generate values for expected displacement error in a specific area of the play-space as well as for a specific step size over the entire play-space. The percent error was calculated to normalize the error to the step size.

Positional Accuracy
The average and percent errors for all step sizes in the x, y, and z directions are presented in Tables 1 and 2. The largest absolute error was found to be 3.5 mm in the z-axis for a step size of 500 mm, which normalizes to a 0.7% error. The largest normalized error was found to be 12.7% for the smallest step of 6.23 mm in the y-direction. The largest percent errors for the x and z axes were 4.7% and 3.5%, respectively, also at the smallest step size (5 mm).

Error Directional axis and step size (mm)
Average percent error (SD %) Average (SD), mm When the average percent error was calculated for each step size across the entire play-space, it was found that the error decreased nonlinearly with increasing step size ( Figure 5).
Step sizes with values of ≤10 mm had an accuracy error greater than 2%. Normalized error averages in step sizes larger than >10 mm were fairly uniform.
The variation was calculated for static data points at the 16 different locations in the play-space and averaged across all points to find an average noise value of ±0.036 mm (x: ±0.025 mm, y: ±0.024 mm, z: ±0.055 mm). The single-point repeatability test found that the controller was able to return to the same x-y-z point with an output measurement variation slightly above the average noise value (x: 0.080 ± 0.546 mm, y: 0.088 ± 0.063 mm, z: 0.044 ± 0.326 mm).
To investigate how accuracy varied over the entire play-space, the displacement and percent error were averaged over each area set. These average errors over the play-space area for x, y, and z are presented in Multimedia Appendix 1 as exploratory analysis to see if there were any patterns in accuracy based on distance away from the Oculus sensors. A large error (14.0%) occurred in 1 area of the y-axis measurements. This was a result of a 2 mm error at a 6.23 mm step, resulting in a large normalized value of approximately 40% despite being a small error in absolute distance (millimeters). No distinct pattern of position accuracy based on x-z location in the play-space was observed.

Principal Findings
The study team found a maximum positional accuracy across measured step sizes less than 150 mm for the Oculus Touch controller of 0.76 ± 0.50 mm in the lateral x-axis, 0.72 ± 0.46 mm in the anteroposterior z-axis, and 0.93 ± 1.10 mm in the vertical y-axis direction. Larger step sizes found lower positional accuracies of 2.5 ± 1.0 mm in the x-axis and 3.5 ± 2.5 mm in the z-axis. The largest error in percent when normalized to step size (12.7 ± 9.9%) was found in the smallest step size in the y-axis set at 6.23 mm.
The error values found are considered within an acceptable range of error for the measurement of biomechanical movement as the human perception of the just noticeable difference (JND) even for fine motor function (finger distance/position) is larger than this value (13.0% for young subjects and 16.1% for older persons [15]). In addition, in a different study [16], it was reported that the JND of the fully extended human shoulder when moved passively was found to be 0.8º. Using a 50th percentile female arm length of 702 mm [14], a 0.8º change in joint angle would cause an arc length of 9.8 mm, which is larger than both the average noise and accuracy error of the system. Therefore, the error in relative distance should not be noticeable to the user.
In studies on the accuracy of visual assessments of angular joint positions done by physical therapists and other health professionals, it was determined that joint positions could only be determined with an error of approximately 5º within the referenced radiometry measurement [17] of wrist angle and 7.4º in shoulder abduction compared with goniometry of nonmoving subjects [18]. Measurement of glenohumeral range of motion using a goniometer was reported to have an SE between 4.4 to 9.9º [19]. Moreover, the Oculus Rift headset has a visual field of view of 100º and a resolution of 2160x1200 pixels [20]. This results in a 0.046º change in the object edge to show up as a single pixel change. With a noise level of 0.069 mm as an arclength, it is expected that visual jitter would not occur until the controller is less than 8.59 mm away from the user in the headset's point of view.
It was found that although normalized percent error decreased as step size increased, the absolute error (millimeter) was found to be largest when the largest step was measured. This could be the effect of an inherent scaling phenomenon found in the Oculus sensor tracking, which uses infrared image processing as 1 of its main sources of position tracking for the Oculus Touch controllers.
We expected that the outer edges of the defined play-space would provide areas with the largest error; however, no discernable pattern was found to occur over the x-z plane. This provides evidence to support a consistent accuracy of the controllers within the documented [21] x-z field of view of the Oculus Sensors. That is, regardless of where in the play-space a user might stand, a reach of 500 mm outwards from the body would be measured sufficiently accurately.

Comparison With Prior Work
On the basis of the results from this study, the Oculus Touch controllers should be an adequate motion tracking alternative for biomechanics applications, as similar low-cost, commercially available systems that have been employed to measure joint movements, such as the Kinect V1 and V2, have displacement accuracies on the order of centimeters [22,23]. A previous study evaluating the tracking accuracy of the Oculus Rift head-mounted display found similar accuracy values for the larger step sizes [24]. On the other hand, more expensive and complex motion capture systems such as the Vicon-460 (Vicon Motion Systems Ltd, Oxford, United Kingdom) with submillimetric accuracy [25] allow researchers to measure movements with higher accuracy. In addition, wearable inertial sensors were able to quantify upper-limb positioning within 1 mm when custom sensor algorithms were applied [7]; however, wearable research-grade systems trade ease of use and commercial availability for higher accuracy. For kinematic tracking that does not require submillimetric accuracy, such as for monitoring changes in gross motor upper-limb movements over time in a rehabilitation program [26], for training neural networks to detect the number of repetitions during rehabilitative exercises [9], or in cases where there would otherwise be no quantitative measures [8], the Oculus Touch controllers could provide a cost-effective alternative. Comparison with the Oculus Touch controllers by using other tracking tools simultaneously during upper-limb exercises may provide better insight into which level of accuracy is optimal for different use cases, such as for automated repetition counting as opposed to for measuring joint angles for digital goniometry. In cases where the tracking technology is used to facilitate virtual environments for engaging upper-limb exercises, a higher position accuracy may provide better visual fidelity to movement in the real world, and therefore, better transfer of improved motor functions from game tasks to real-world tasks [27].

Limitations
Occlusion of some of the controllers' infrared light-emitting diodes could have occurred when placing the controllers close to the floor, which might have increased the measured error. Moreover, as the system requires an initial calibration of the user's approximate height, this also could have acted as an additional source of error. As a result, future studies should investigate the accuracy of the system away from the floor, as well as the accuracy of the controller's 3D orientation measurement, as we only measured position error in this study. Reproducibility of the measurements made by the Oculus system should also be investigated by having multiple experimenters perform the same procedure and by comparing measurements from different tracking sessions. Standardized measurement system analysis procedures should be followed in terms of the number of repetitions used as listed in analysis of variance gage repeatability and reproducibility documentation [28]. Dynamic conditions should also be evaluated before use in clinical kinematic analysis to assess the interaction between IMU sensor drift and camera sensor correction while in motion. A limitation of the Oculus Touch controllers is that it is only capable of measuring the position and orientation of a single point as a proxy for hand position. Future studies should directly compare the Oculus Touch absolute point-position with a professional marker-based motion-tracking system to ensure the elimination of error because of the use of visual and physical measuring tools. These absolute point-position studies should also evaluate larger step size accuracies to encompass bigger movements. Additional studies could include the evaluation of inverse kinematic algorithms that employ the hand and head positions (from headset) to generate a model of the user's arms [29,30]. This would allow direct comparison against other devices that digitally measure goniometric angles.