Increasing Precision for Extended Reach 3 D Manipulation

Object selection and manipulation in 3D immersive environments generally suffers from a lack of precision, primarily due to hand instability and tracking noise. Typically the lack of precision is exacerbated as the user begins to use techniques that allow distant interaction, such as Ray Casting, HOMER, and Go-Go. This problem can be addressed using velocity-based hand scaling such as PRISM, which has been applied to Ray Casting and HOMER previously. We present a study of the combination of Go-Go and PRISM. In our research, we have found that Go-Go + PRISM yields a nearly 2:1 improvement in precision over traditional Go-Go interaction when attempting to align two objects at a distance under time constraints.


Introduction
Distal object interaction in 3D immersive environments is inherently imprecise. Aside from hardware limitations such as tracking jitter and latency issues, the lack of precision is primarily due to hand instability. In recent years velocitybased scaling of manipulation has been shown to effectively increase the precision in which users can manipulate objects within an immersive virtual environment. Early work in this area focused primarily on direct manipulation of virtual objects within "arms reach." While precision is a very important goal in most interactive applications, users also often need to work with objects at a distance. Distance interaction is a well-studied domain in 3D user interface design in its own right, yet delivering precision interaction at a distance has generally eluded the field.
This paper provides an overview of recent applications of velocity-based scaling towards improving distance interaction found in the literature. This includes how rotational scaling techniques such as PRISM have been used to improve ray casting and how translational scaling techniques have been combined with indirect interaction techniques like HOMER. We also present our original research combining Go-Go and PRISM interaction to create a new hybrid interface. Go-Go is a well-established technique that utilizes non-linear mapping to allow for natural, direct manipulation at both short and long distances. PRISM offers unrestrained 1:1 manipulation at higher hand velocity and less pronounced/more controlled movement at low velocities by dynamically adjusting the control-display ratio between the hand and controlled object. Since Go-Go and PRISM both directly manipulate the control-display ratio between the physical and virtual hands, combining the two presents several challenges and design choices which we will describe in detail. We have conducted a user study to examine the effects of PRISM when added to Go-Go and our results have shown this combination to be extremely effective.

Related Work
There are many interaction techniques that exist for distal manipulation of objects in virtual environments. Some of the more well-known techniques include WIM (world in miniature), Voodoo Dolls, Ray Casting, HOMER, and Go-Go. The WIM technique [21] displays a miniature copy of the virtual world close to the user to be interacted with. Through direct manipulation, the user is able to interact with the miniature versions of the objects, which causes the full-sized versions of the objects to move in exactly the same manner. The Voodoo Dolls technique [18] allows users to scale the environment around them by selecting a voodoo doll that has a size relative to the desired environment size. The important commonality between these types of techniques is that they allow the user to interact with objects at a distance by essentially bringing the objects (or representations of such) closer to the user.
The familiar ray casting technique [16] extends a ray from the user's cursor out into the virtual world and allows for arbitrarily distant objects to be selected. While ray casting allows for a theoretically infinite reach w hen selecting objects, it does not provide robust object manipulation, as it typically attaches a controlled object rigidly to the extended ray. Many techniques have been developed to help alleviate this issue however. The HOMER technique [3] uses ray casting to select an object, however once selection occurs the virtual hand extends to the object so the user can directly interact with the object. This provides true 6 DOF manipulation of distant objects; however, this is done by utilizing two different modes of interaction for selection and manipulation respectively. Go-Go [19] interaction utilizes the same interaction metaphor for both selection and manipulation. When using Go-Go, translation of the physical hand is amplified based on a non-linear scaling function, where the distance between the hand and chest drives the amplification. As the user extends their hand out away from them, amplification increases to allow them to reach distant objects and locations. Unlike ray casting and HOMER however, Go-Go does not provide an infinite reach to the user -while significantly increased, the user's reach is still limited by their arm length.
There are a number of techniques that can be utilized to increase precision o f interaction. When potential target locations are known, many forms of guidance have been developed, including the use of anchor [15] and grid points [1] as snapping points and the use of object associations [4,22] to constrain controlled objects. Other techniques that work towards resisting hand instability involve simulating "virtual inertia" [20] and the use of actual physical props [9,10] to aid interaction. Several techniques have also been shown to aid in precision by decomposing 3D interaction tasks into a series of 2D and 1D tasks [2,23]. Finally, when working on precision selection, particularly in a densely populated environment, techniques such as progressive refinement [13] have been shown to increase task performance. This multimodal technique offers multiple levels of selections that can be made to "drill down" to the intended target.
A common technique for providing increased levels of precision is to adjust the control display (C/D) ratio between the hand and cursor. This adjustment can be done through manual switching/specification [14], but it can also be based on a variety of other attributes such as object location [17]. One method of adjusting the C/D ratio is based on the simple premise that as a user tries to become more precise, he or she naturally slows down their hand movements. Velocity-based scaling techniques take this information (hand speed) and dynamically adjust the C/D ratio such that physical hand movements are scaled down when the hand is moving slowly. This makes virtual cursor movement resistant to hand instability when users are moving slowly, but frees the interaction from this constraint when the user is moving more quickly and presumably does not require the same level of precision. This technique has its roots in the Two Component Model [25] and 2D mouse/cursor control [6]; and was first applied in immersive 3D interaction by the PRISM technique [5], which applied velocity-based scaling to both translation and rotation (using angular velocity of the hand).
In recent years, several variations on velocity-based scaling have been developed targeting different domains. While specifically focused on selection using absolute pointing devices, Adaptive Pointing [12] works to address the problem of offset between the physical and virtual cursor that accumulates during velocity-based scaling. Velocity-based scaling has been successfully combined with degrees-of-freedom decomposition [23] to further increase performance in a variety of object manipulation tasks, particularly as the level of precision required increases. Velocity-based scaling methods have proven effective in immersive virtual environments as well as with commodity hardware such as the Nintendo Wii [7].

WIM
The World in Miniature (WIM) widget [21] provides users with a hand held, miniaturized model of the virtual world, complete with all (or most) of the objects within it. The user directly manipulates the miniaturized version of the objects with the cursor and his or her actions are mimicked in the full-sized world. One problem with the WIM is that in order to interact with the miniaturized objects one must scale down the movements of the cursor as well. Moving an object within the WIM one centimeter might result in a translation of one meter in the full sized world. I f the user wishes to move an object by a centimeter in the full sized world it would be nearly impossible to do so using the WIM; the user would need to navigate to the location in the full sized world and manipulate the object directly. A WIM containing a cluttered world with many objects poses another problem in that many small, miniaturized objects might occupy a very small space, making selection increasingly difficult. As described in [5], velocity-based scaling techniques such as PRISM can allow users to manipulate the cursor quite accurately at very small scales, allowing them to select small, closely-packed objects and translate them at scales which would be difficult with direct manipulation due to hand instability.

RAY CASTING
Ray casting extends the user's reach by drawing a ray extending outwards from the user's hand/cursor. From a precision standpoint, the problem with this approach is that small rotations of the wrist sweep out large arcs at the end of the ray. The increased sensitivity to slight hand rotations makes it difficult to select distant objects that do not occupy a large area in the viewing plane, a problem noted in [19].
In the case of ray casting, the rotational scaling component of PRISM more directly applies to ray casting, by dampening the rotational component of the user's hand movement directly. Experimentation described in [5] applied angular velocity-based rotational scaling to the control of a selection ray and showed an 87% reduction in error rate and a 27% decrease in overall completion time when using PRISM rotational scaling. Other techniques, such as Adaptive Pointing [12] and Smoothed Pointing [8] improve upon ray casting in a similar way, but by adjusting the C/D ratio for translation on the plane of intersection (typically a large projection display).

HOMER
Wilkes and Bowman [24] have studied the relationship between HOMER and PRISM interaction in detail. In their model, Scaled HOMER utilizes PRISM once the user has selected an object. Since object manipulation in HOMER is effectively amplified a long the ray connecting the user's hand to their torso, special care needed to be take in applying PRISM-style scaling. Their i nvestigation showed that applying PRISM to the raw position of the hand first, and then applying the HOMER positioning strategy was more effective than a simplistic averaging of the positions calculated based on both of the transformations being performed independently.
The primary advantage of applying PRISM first was that it retained the familiar "feel" of HOMER. While applying PRISM to Go-Go interaction does not suffer from quite the same issues (Go-Go is more of a pure 3DOF translational amplification technique), these design choices helped inform our research.
Experimentation concluded that the scaled variation of HOMER Wilkes and Bowman developed led to nearly double the task performance when compared to standalone HOMER.
It also showed that the performance improvements increased as the distance between the user and the target increased.

Applying PRISM to the Go-Go Technique
We have conducted a study to examine how PRISM interaction can be applied to interfaces utilizing Go-Go interaction when working with objects at a distance. Go-Go is somewhat distinct among the techniques described in the previous section because it is a pure amplification technique. This means that it works simply by adjusting the C/D ratio between physical and virtual hand movements. In this respect it is quite similar to PRISM, however it adjusts the C/ D ratio based on a different heuristic (distance the user extends the physical hand) and it decreases the C/D ratio rather than increasing it. It is the similarity between the two techniques that made us most interested in this combination. In addition, Go-Go interaction is used the same way for selection (Go-Go applied to a cursor) as it does for object translation, which again is similar to the interaction metaphor PRISM uses.
One of our primary questions was how the increased C/D ratio provided by PRISM could be blended together with the decreased C/D ratio of Go-Go in an effective manner. Since PRISM effectively prevents the user from moving a cursor or object over large distances when moving slowly, we wanted to determine if this limits the benefits of Go-Go's amplification of translation. M uch like when combining HOMER with velocity scaling, there are several important design decisions involved with combining Go-Go and PRISM. These decisions mainly focus on the manner in which the Go-Go and PRISM transformations are mapped to a controlled object and the order and method in which the amplification and scaling functions are applied.
The first design choice we encountered was to determine whether PRISM and Go-Go would be applied to the cursor or the object being controlled by the user once selected. We opted to apply our technique to the cursor itself, such that the user's virtual hand does not follow the physical hand directly. Accordingly, the controlled object that the user manipulates follows the virtual c ursor directly, as the amplification and scaling applied by Go-Go and PRISM are already applied to the cursor. This also has the advantage of providing the exact same interface for selection and manipulation.
Our next design decision was how to calculate the blended C/D ratio that is the result of Go-Go amplification and PRISM scaling. We conceptualized the combination of PRISM a nd Go-Go as the application of two independent "filters" which modified the mapping of the C/D ratio.
As Figure 1 shows, the first step is to apply PRISM to the physical hand (cursor actual ) movement directly, which calculates a new cursor position (cursor prism ) based on velocity-based scaling. Then, the distance the cursor prism moved is amplified by the Go-Go distance-based heuristic to provide cursor virtual to reflect the combination of PRISM and Go-Go.
The ordering of the transformations is important; applying PRISM to the unmodified physical hand position allows us to compute the C/D based on true hand speeds, regardless of the distance the user is reaching. We felt this was appropriate, as the premise of PRISM (that users slow their hands when trying to be precise) should not be affected by the fact that the virtual object might be a large distance from the user. Once the cursor prism is known, Go-Go can easily be applied; as it only requires a single pointin-time calculation of the distance between cursor prism and the user's chest. This method is similar in concept to the order in which PRISM scaling was applied to HOMER in [24] and fits within the suggested model.
The alternative approach -where Go-Go was applied to the raw position of the user's physical hand, and then PRISM is applied to the Go-Go-adjusted cursor -was also  Figure 1: Cursor calculation workflow: The actual cursor velocity is used to control a PRISM controlled-virtual cursor, which is then amplified based on its position using considered. This approach has additional complexity however, since the velocity of a Go-Go-adjusted cursor would vary dramatically based on the distance between the hand and the chest. The same physical hand speed would result in much higher adjusted cursor speeds when the user's arm is extended. This implies that the PRISM scaling functions would need to adjust in order to compensate for the artificially inflated hand speeds. We saw very little benefit in introducing this complexity.
The end-result of applying Go-Go to the PRISM-adjusted cursor position sets the C/D ratio of the combined technique to be the product of the two C/D ratios. The C/D ratio can then be visualized by a 3D graph as shown in Figure 2.
In Figure 2, the vertical (Y) axis represents the scaling value applied to the user's physical hand used to obtain the virtual cursor's position. The Z-axis shows different hand speeds (meters / second), ranging from very slow (0.001 m/s) to faster (0.1 m/s). The X-axis represents the distance between the physical hand and chest -where 0.8 meters is typically as far as most people can comfortably extend their hands. The highest scaling factors (meaning the most amplification of physical hand movement) are obtained as the user's hand is extended the furthest, and is moving at high speeds. If the user has extended their hand but has slowed down their movements (presumably to make fine-grained adjustments), then the scaling factor converges back down to 1:1 (at the 0.8 meter arm extension, the scaling factor is slightly less than 1 at the slowest hand speeds). As the user draws the hand closer, the scaling factors more closely approximate traditional PRISM, where slow hand speeds result in very high C/D ratios (physical hand movements are scaled down substantially) while fast hand speeds result in scaling factors close to 1:1.
This procedure strikes a good balance among varying use cases. When interacting with objects nearby, the user will naturally be able to work more precisely by slowing their hand movements. Provided they move their hand at a reasonable speed, users are able to easily extend the cursor out to reach distant objects using Go-Go amplification, but as they slow their hands the amplification is nullified by the application of PRISM. One limitation however is that if the user extends their hand out slowly, the effects of Go-Go are offset by PRISM scaling, and reach extension is limited.
Importantly, when working at a large distance, the scaling function does not converge to 0 as rapidly as the hand speed slows (as it does when working at small distances). While this can be seen as a limitation (the user does not receive the same level of precision when working at a distance as they do when working nearby), it is important to consider that visual acuity at large distances places a limit on the level of precision that is valuable to the user. At large distances, extremely high precision is not possible because such small movements would be too small to see in the absence of some sort of zooming or magnification view technique. The effect of our technique is to deliver similar levels of perceived precision at all distances, but it does not allow users to work with the same actual level of precision at all distances.
One remaining option when calculating the combined C/ D ratio would have been to calculate both the Go-Go amplification and PRISM scaling functions on the physical hand independently, and then to simply average them together. However, averaging the C/D ratios from Go-Go and PRISM typically yields much higher C/D ratios when compared to the product, which limits the effectiveness of the technique.

Experimental Design
To evaluate our combination of Go-Go and PRISM we conducted a controlled experiment where users were asked to align a virtual object (sphere) within a distant target object (cube). The target cube was placed 2.5 meters from the user. The users were asked to complete as many alignments as possible within a timed trial, and we tested their performance when using Go-Go only and when using Go-Go combined with PRISM.
Thirty undergraduate students participated in the experiment. The virtual environment was created using the SVE [11] programming library running on a commodity workstation.
The users viewed the environment with a Virtual Research Systems VR1280 HMD tracked by a Polhemus FASTRAK 6DOF tracking system. The user selected objects using a tracked handheld stylus with a single button that could be depressed when the cursor intersected an object. The user could hold the stylus button down to translate and rotate the controlled object. Releasing the stylus button dropped the controlled virtual object. Since the user was to be physically stationary (we did not want them to walk towards the target), they performed the experiment seated in a chair.
Each trial was two minutes in length. The participant was tasked with picking up a virtual sphere with the virtual hand and placing it entirely within a translucent virtual cube (the cube was 0.025m larger than the sphere in order to provide a reasonable margin of error). Once the sphere was successfully placed within the cube, the cube became opaque and a sound clip was played, indicating the participant's success. The sphere then reappeared in its initial starting position, the cube again turned translucent, and the participant was to repeat this action until time expired.
Participants were given the opportunity to familiarize themselves with t he virtual environment hardware prior to beginning a set of training trials, which allowed them to become acquainted with the experimental task and with using Go-Go and PRISM. In each training trial the user was asked to perform the same alignment task as in the actual trials, but with a 0.045m margin to ease learning. The first training trial utilized Go-Go alone, while the second training trial used Go-Go combined with PRISM. Once training was completed, the participants completed four actual trials: two trials with Go-Go alone and two trials using Go-Go combined with PRISM. The trials orders were randomized and the number of completed alignments was recorded for evaluation.

Experimental Results
To determine the effect of PRISM when applied to Go-Go we analyzed the number of completions in each trial. Interaction type was treated as the independent variable (Go-Go, Go-Go + PRISM). The average number of completions when u sing Go-Go + PRISM was substantially higher than with Go-Go alone; the average number of completions for Go-Go-only interaction was 3.33 completions, whereas PRISM + Go-Go interaction yielded an average of 6.55 completions -shown in Figure  4. As shown in Table 1, analysis of variance controlling for participant variations showed this difference to be statistically significant (p < 0.0001).
An exit survey was administered to each participant after the experiment.
Users were asked three questions, responding 1-5 where 1 was "Strongly Disagree" and 5 "Strongly Agree". When asked if the two training trials that the cursor moved too slowly at times -a complaint that was also heard during initial studies of PRISM [5]. Although additional studies, such as those addressed in [12], need to be performed on how velocity-based scaling techniques can be improved to rectify this complaint, we did not see it as something specific to the combination of Go-Go with PRISM.

Conclusion
Interaction techniques for distant object manipulation generally fall into two categories: those that extend the user's reach such as Ray Casting, HOMER, and Go-Go and those that provide near-field representations of distant objects such as WIM and Voodoo Dolls. In the latter, velocity-based scaling techniques such as PRISM clearly aid in precision because the user is simply manipulating an object that is relatively close to them -which is fundamentally the same as the types of tasks PRISM was originally tested with.
For extended reach techniques additional care must be taken when applying PRISM, as the C/D ratio adjustment it uses must blend well with the extension technique in question.
We have summarized PRISM's effects on Ray Casting and HOMER as has been described in the literature, and we have extended this knowledge by examining the application of PRISM to Go-Go.
We have enumerated a number of different design decisions involved with blending PRISM and Go-Go and presented experimental results, which shows a dramatic improvement in task precision using our design. Our procedure and performance increases are in line with previous studies on applying PRISM to HOMER and help confirm the methodology of applying velocity-based scaling in extended reach object manipulation techniques.

Future Work
Our current studies have investigated the effects of PRISM and Go-Go at a representative distance. One of the main areas we plan to explore in the future is interaction at multiple different distances. One of the fundamental limitations of Go-Go as an extended reach technique is its inherent limit on the range the user can operate in (even with amplification, one can only extends one's arm so far). Adding PRISM can reduce this range further if they user extends their hand slowly -however we have observed in our user studies that the early part of the arm extension when targeting a distant object usually involves rapid hand movement. We plan on studying this effect in more detail to determine if the same increasing performance benefits observed by Wilkes and Bowman when applying PRISM to HOMER are seen with Go-Go.
Another potential area of focus may be making the entire Go-Go + PRISM experience feel more natural to the user. While task performance was dramatically improved, some users mentioned that PRISM left them feeling "out of control" -in that their cursor was not moving the way they expected. We suspect adding better visual indicators concerning the effects of PRISM may help, but we would also like to investigate ways of making the experience more natural for the user.