Christophe Hurter
email: christophe.hurter@enac.fr.

Nathalie Henry Riche

Steven M Drucker
email: sdrucker@microsoft.com.

Maxime Cordeil
email: maxime.cordeil@monash.edu

Richard Alligier
email: richard.alligier@enac.fr.

Romain Vuillemot
email: romain@vuillemot.net.

FiberClay: Sculpting Three Dimensional Trajectories to Reveal Structural Insights

Keywords: Immersive Analytics, 3D Visualization, Dynamic Queries, Bimanual Interaction, Multidimensional Data

. FiberClay is an immersive multidimensional visualization system. The user can navigate into trail sets to gain a better understanding of dense and complex datasets. Left, the user activated the union brushing interaction to select trails intersected by the two beams in a recorded aircraft trajectory dataset. Middle, the user investigates DTI fiber tracks connecting the two hemisphere of the brain. Right, the user refine a data selection by visually sculpting the query with the two brush interactions while navigating into the different visual mappings (e.g. presets) of the investigated dataset.

Abstract-Visualizing 3D trajectories to extract insights about their similarities and spatial configuration is a critical task in several domains. Air traffic controllers for example deal with large quantities of aircrafts routes to optimize safety in airspace and neuroscientists attempt to understand neuronal pathways in the human brain by visualizing bundles of fibers from DTI images. Extracting insights from masses of 3D trajectories is challenging as the multiple three dimensional lines have complex geometries, may overlap, cross or even merge with each other, making it impossible to follow individual ones in dense areas. As trajectories are inherently spatial and three dimensional, we propose FiberClay: a system to display and interact with 3D trajectories in immersive environments. FiberClay renders a large quantity of trajectories in real time using GP-GPU techniques. FiberClay also introduces a new set of interactive techniques for composing complex queries in 3D space leveraging immersive environment controllers and user position. These techniques enable an analyst to select and compare sets of trajectories with specific geometries and data properties. We conclude by discussing insights found using FiberClay with domain experts in air traffic control and neurology.

INTRODUCTION

One hundred and eighty years have passed since Charles Wheatstone invented the stereoscope [START_REF] Wheatstone | Contributions to the Physiology of Vision: Part the First: On Some Remarkable and Hitherto Unobserved Phenomena of Binocular Vision[END_REF]: a device leveraging binocular depth perception and enabling to perceive 3D objects. The technology has evolved tremendously since then and we now have immersive headsets capable of displaying digital 3D objects in a virtual or augmented environment while providing controllers to interact with the objects in physical space. As these devices become more popular and the quality of both input and output has increased, the visualization community has started to investigate the opportunities that these environments can provide for exploring and analyzing data [START_REF] Chandler | Immersive analytics[END_REF].

While the benefits of visualizing inherently spatial data as 3D digital objects has been demonstrated in numerous scientific visualization systems (e.g. brain models [START_REF] Everts | Exploration of the brain's white matter structure through visual abstraction and multi-scale local fiber tract contraction[END_REF]), there is still a debate on the pros and cons of 3D representations of abstract data [START_REF] Brath | 3d infovis is here to stay: Deal with it[END_REF][START_REF] Mcintire | The (possible) utility of stereoscopic 3d displays for information visualization: The good, the bad, and the ugly[END_REF][START_REF] Smallman | Information availability in 2d and 3d displays[END_REF]. In this paper, we tackle a hybrid type of data, composed of trajectories (inherently spatial in three dimensions) and associated with non-spatial data.

Representing trajectories in a 3D space-time cube is natural [START_REF] Bach | A descriptive framework for temporal data visualizations based on generalized spacetime cubes[END_REF], nevertheless this representation raises a number of issues. In particular, given the often dense and overlapping nature of many trajectories, effectively analyzing large numbers of trajectories can require novel techniques for interacting with them. For example, one must compose complex queries to retrieve specific geometries or to identify clusters with similar properties. Performing such interactions is particularly challenging in immersive 3D environments as one has to simultaneously manipulate 6 degree of freedom input devices to point to a specific location in a tangle of curves tightly interleaved in space.

To solve this problem, we present FiberClay, an immersive visualization system that renders masses of 3D trajectories in interactive time and enables bi-manual interaction to compose complex queries in 3D space. Its novelty lies in the simultaneous combination of 3D brushing, both for selection and spatial navigation. Using this interaction, users can progressively filter data by quickly adding or subtracting trajectories to a selection, while easily navigating to different views and between different combinations of data attributes. Our case studies implementing this technique show that users can quickly grasp struc-tural overviews of datasets; gain insights on the data distribution in both space and time; and investigate global and local trajectory patterns and anomalies.

We also describe technical considerations for addressing scalability as 3D computations in immersive environments can require considerably more computational power. We conclude by showcasing insights gained by various domain experts (air traffic controllers, medical professionals and data scientists) using FiberClay to explore their data.

RELATED WORK

There has been a surge of interest in the past couple of years from the visualization community towards leveraging immersive environments for visualizing data [START_REF] Bach | Immersive analytics: Exploring future visualization and interaction technologies for data analytics[END_REF][START_REF] Dwyer | Immersive Analytics (Dagstuhl Seminar 16231)[END_REF]. We first revisit inherent issues of these environments due to representing data in three dimensions and report on empirical evidence gathered through perception studies. We then summarize prior techniques for enabling users to interact and perform complex, multidimensional queries and highlight unique challenges and opportunities for composing queries in immersive environments.

The Case for Immersive Analytics

Immersive environments attempt to make use of the physical space a user is in, namely interacting within a three dimensional physical room, rather than limiting interaction to working on a flat 2D screen. Visual representations of data that have three dimensions, such as the positions and orientations of physical objects, are particularly appropriate to work with in these environments since they parallel the real experiences humans have in the natural environment. While the benefits of representing inherently 3D data as 3D representations are plain, there has been a lively and ongoing debate [START_REF] Brath | 3d infovis is here to stay: Deal with it[END_REF][START_REF] Mcintire | The (possible) utility of stereoscopic 3d displays for information visualization: The good, the bad, and the ugly[END_REF][START_REF] Smallman | Information availability in 2d and 3d displays[END_REF] as to whether using a third dimension can be advantageous for analyzing non-spatial (abstract), multidimensional data as it might potentially reveal more complex correlations and patterns.

Prior work has shown that 3D visualizations generally suffer from multiple issues: perspective distortion and occlusion on monoscopic 2D flat screens [START_REF] Robertson | Cone trees: animated 3d visualizations of hierarchical information[END_REF], and difficult navigation in 3D space using standard input modalities (mouse and keyboard) [START_REF] Munzner | Visualization analysis and design[END_REF]. Findings from prior studies indicate that 3D representations are less effective than 2D representations of abstract data [START_REF] Sedlmair | Empirical guidance on scatterplot and dimension reduction technique choices[END_REF][START_REF] Westerman | Browsing a document collection represented in two-and three-dimensional virtual information space[END_REF]. In some cases, 3D visualizations were even found to be less effective than 2D ones for representing inherently spatial data (such as human organs) depending on the task [START_REF] Borkin | Evaluation of artery visualizations for heart disease diagnosis[END_REF].

A number of research projects [START_REF] Besanon | Hybrid tactile/tangible interaction for 3d data exploration[END_REF][START_REF] Lundstrom | Multitouch table system for medical visualization: Application to orthopedic surgery planning[END_REF][START_REF] Tijmen | A design study of direct touch interaction for exploratory 3d scientific visualization[END_REF] have reported on the potential benefit of 3D representations of paths, graphs and networks. For example, dating back to 1993, Sollenberg and Milgram [START_REF] Sollenberger | Effects of stereoscopic and rotational displays in a three-dimensional path-tracing task[END_REF] and Ware et al. [START_REF] Ware | Evaluating stereo and motion cues for visualizing information nets in three dimensions[END_REF] collected evidence that the number of errors for following paths could be reduced by using stereoscopic displays. Ware and Mitchell [START_REF] Ware | Visualizing graphs in three dimensions[END_REF] further observed this benefit for path tracing by combining stereo and motion. More recent work by Kwon et al. [START_REF] Kwon | A study of layout, rendering, and interaction methods for immersive graph visualization[END_REF] introduced a head-centered spherical projection layout and a set of interaction techniques for graph visualization in VR. Their study showed evidence that the immersive 3D spherical layout led to faster answers than traditional 2D graph layout for typical graph visualization tasks and caused fewer errors in the case of large graphs. Another recent study by Usher et al. [START_REF] Usher | reality visualization tool for neuron tracing[END_REF] also found that neuron path tracing using direct manipulation with hand controllers in VR was faster and less fatiguing than using commercial state-of-the-art dedicated software on 2D devices.

This evidence suggests that immersive environments may have significant advantages over existing 2D visualizations for representing and tracing trajectories. However, analyzing masses of trajectories requires interacting with these three dimensional objects to select subsets and compose complex queries, potentially involving non-spatial attributes. We tackle this challenge in this paper and propose FiberClay, a scalable system for representing and interacting with masses of 3D trajectory data also associated with multidimensional abstract data.

Queries in Multidimensional Data Visualization

Visual exploration of data relies on visualizing the data from multiple perspectives and interacting with it to perform different selections, filtering and queries, thus revealing patterns and outliers. Seminal techniques to achieve these interactions include brushing and linking [START_REF] Becker | Brushing scatterplots[END_REF][START_REF] Buja | Interactive data visualization using focusing and linking[END_REF] and dynamic queries [START_REF] Ahlberg | Visual information seeking: Tight coupling of dynamic query filters with starfield displays[END_REF].

2D multidimensional data queries. For multidimensional data, generalized selections [START_REF] Heer | Generalized selection via interactive query relaxation[END_REF] and iterative query building in scatterplot matrices with scatterdice [START_REF] Elmqvist | Rolling the dice: Multidimensional visual exploration using scatterplot matrix navigation[END_REF] provide powerful interaction methods to craft complex queries involving multiple attributes. Several projects also focused specifically on composing spatio-temporal queries such as TimeSearcher [START_REF] Hochheiser | Dynamic query tools for time series data sets: Timebox widgets for interactive exploration[END_REF], query-by-trace [START_REF] Erwig | Query-by-Trace: Visual Predicate Specification in Spatio-Temporal Databases[END_REF] or model based queries [START_REF] Ferreira | Visual exploration of big spatio-temporal urban data: A study of new york city taxi trips[END_REF], but none of them investigated their usage in an immersive environment.

Interactive trajectories selection and visualization. Geo-Time [START_REF] Kapler | Geotime information visualization[END_REF] is an early desktop based system to visualize 3D space-time trajectories. Trajectory selection is performed using a mouse to create a rectangular selection region and time navigation is performed with a range slider. FromDaDy [START_REF] Hurter | Fromdady: Spreading aircraft trajectories across views to support iterative queries[END_REF] is a 2D multidimensional data visualization tool that uses direct manipulation to select aircraft trajectories with a free-hand mouse-based brushing selection. This system allows successive selections of trails sets across several view configurations to achieve detailed selections.

Selection techniques and immersive visualization systems. While these interaction techniques work well in 2D, making them effective in immersive 3D environments is challenging. Selection of graphical objects in virtual environments is well explored [START_REF] Laviola | 3D user interfaces: theory and practice[END_REF], but there is a lack of immersive visualization-specific research in this domain. Previous research has focused on 3D point-based selection with a 2D touch surface [START_REF] Yu | Efficient structure-aware selection techniques for 3d point cloud visualizations with 2dof input[END_REF], CT scan volume visualization selection in VR [START_REF] Sousa | Vrrrroom: Virtual reality for radiologists in the reading room[END_REF] and immersive network visualizations [START_REF] Huang | A gesture system for graph visualization in virtual reality environments[END_REF] in a HMDs. Our design of an abstract multidimensional data visualization tool in virtual reality is, itself, somewhat novel. Filonik et al. [START_REF] Filonik | Glance-generalized geometric primitives and transformations for information visualization in ar/vr environments[END_REF] developed Glance, a technical framework to produce visualizations of multidimensional, multivariate data in AR and VR environments. However, Glance does not include selection interactions. ImAxes [START_REF] Cordeil | Imaxes: Immersive axes as embodied affordances for interactive multivariate data visualisation[END_REF] is a multidimensional data visualization system that leverages the user's space to build 2D and 3D visualizations with embodied interaction in VR. In ImAxes a user can make multidimensional queries by connecting and linking visualizations but does not provide direct manipulation to select data.

FiberClay is, to our knowledge, the first multidimensional data visualization tool that provides selections of 3D trails with a bi-manual, iterative, brushing technique and continuous navigation between visual configurations.

FIBERCLAY: MOTIVATIONS, DESIGN AND DESCRIPTION

In this section, we describe two sets of requirements for the visualization of trajectories and for interactive visualization in VR, then proceed to describe the system design with these considerations in mind.

Visualization Considerations

FromDaddy [START_REF] Hurter | Fromdady: Spreading aircraft trajectories across views to support iterative queries[END_REF] is an earlier system that we designed with air traffic controllers to help them explore and understand sets of trajectories in space and time. Since its implementation and deployment over ten years ago, we have iterated with air traffic controllers and reflected upon some of the unique challenges for visualizing large sets of 3D trajectories. We identified five significant challenges that we set out to solve in order to better support interactive exploration in contrast to existing systems:

VisC1. Trajectory datasets are inherently multidimensional. The projection of these datasets into 2D for viewing on a conventional screen can hide interesting and important features within the data. While some previous work has focused on finding effective projections [START_REF] Vesanto | Som-based data visualization methods[END_REF], this work focuses instead on enhancing the interaction techniques for immersive 3D environments operating on trajectory data. VisC2. Dense overlapping trajectories can visually occlude other features. Given the crowded and tangled nature of many trajectory datasets, there need to be effective mechanisms for isolating interesting features for further exploration. VisC3. Accurate selections can be difficult to perform in 3D. It may be hard to see what gets selected from a single point of view. Combinations of views, or views that are based on different data-mappings may be required to create the precise, desired selection.

VisC4. Selections need to be progressively combined. Usually no single selection will isolate the desired selection so a combination of selections both through addition and subtraction need to be supported. The benefits of progressive refinement have been previously explored in different domains [START_REF] Bacim | Design and evaluation of 3d selection techniques based on progressive refinement[END_REF][START_REF] Elmqvist | Rolling the dice: Multidimensional visual exploration using scatterplot matrix navigation[END_REF][START_REF] Hurter | Fromdady: Spreading aircraft trajectories across views to support iterative queries[END_REF][START_REF] Yu | Efficient structure-aware selection techniques for 3d point cloud visualizations with 2dof input[END_REF]. VisC5. The system must be responsive even with large datasets. Interaction, as a key to data exploration, must be fast enough to be perceived as instantaneous to every user request.

VR Considerations

We have spent the last 3 years experimenting with different interfaces in both augmented and virtual environments. These experiences have resulted in four primary considerations for creating interactive visualizations in immersive environments. VRC1. Avoid 2D GUI components: VR has a substantial history, yet few standards emerge for building graphical user interfaces. While conventional WIMP techniques (windows, icon, mouse, pointers) such as buttons, menus and list can be displayed, their efficiency in an immersive environment is unclear. Our goal is to minimize these components and, instead, map interactions to physical actions on controllers. VRC2. Limit the use of modes: To immerse users in the data, we aim at limiting the number of "modes" (i.e. situations where the same action on a controller has a different interaction depending on the mode). Limiting modes enable the user to smoothly interleave interactions such as manipulating the view and composing a selection without the need to switch modes or access additional menus. VRC3. Make view navigation effortless: We reason that a key asset of VR to immerse the user was to enable rapid and natural changes to the point of view. While one can freely navigate the virtual space by physically moving, we observed that during long sessions in VR, many users desired to remain seated. Thus, we aim at providing additional navigation techniques to move and rotate the data. VRC4. Use one primary view: We aim at designing for one primary view of the data to immerse viewers. While technically, we can easily extend it to multiple views, the added complexity of controlling multiple linked views would make VRC1 and VRC2 more difficult to achieve. However, multiple views are essential for effective data exploration. For this reason, we aim at providing simple ways to change the primary view. We believe that positioning alternative views on the ground can allow the user to ignore them while interacting with the primary view, but have them available by looking on the floor. To preserve the sense of immersion of the user in a single world, we propose to use animated transitions to help visually link items between the current primary view when transitioning to the new one.

FiberClay Components and Interactions

We designed FiberClay with the previous considerations in mind. FiberClay enables users to reveal structural insights on datasets by allowing query construction using multiple input modalities (e.g. hands, head) and visualization facets (e.g. maps, small multiples, space-time cube). The name FiberClay suggests that the user starts with a whole dataset as raw sculpting material that is progressively refined until producing the desired goal. The clay metaphor affords important interaction opportunities: users can make mistakes that can be easily fixed; users can either remove material or add material much as sculpting with real clay; they can walk around the sculpture to obtain the best angle with which to work; or position the sculpture in a convenient position; and furthermore, the fibrous nature connotes that the entire material is made of tangled weaves of paths in a 3D space. In a similar fashion, users can progressively interact with a dataset, sculpting selections from appropriate views which can help users gain insights .

Multidimensional Trajectory Visualization

FiberClay supports the rendering of element-based plots where trajectories are composed of nodes and edges. Both nodes and edges can have data attributes selected from the source dataset D = {d i },

1 ≤ i ≤ N, containing N dimensional elements d i ⊂ R n .
In this sense, we propose a multidimensional data visualization system typically using 3D lineplots to depict elements. To address VisC1, FiberClay visualizes multidimensional data composed of 3D trajectories associated with abstract data attributes in an immersive environment. Given the inherent match in the number of dimensions being explored, a 3D immersive environment is particularly appropriate: FiberClay represents triplets of data values as series of x, y, z positions in digital space, thus displaying sets of curves (polylines) in three dimensions. For instance, a dataset which contains recorded aircraft trajectories has many dimensions that include the location of the moving aircraft (latitude, longitude and altitude), the recorded time stamp, the aircraft identifier (i.e. unique value to discriminate a trajectory), the airline, and possibly many others data characteristics such as speed and acceleration. The standard visual mapping for aircraft trajectory is to assign the x,y and z respectively to the latitude, longitude and altitude data dimensions. Other mappings (e.g. assigning different z coordinates to the type of carrier instead of the altitude which would lead to different layers of 2D trajectories per carrier) are possible as explained in section 3.3.4.

Trajectory representation: FiberClay supports multiple styles of representation for a trajectory with lines, points or animated particles. While the line representation makes sense to display trajectories, the point representation is preferable to display non continuous data like the airline carrier. In the animated particle mode, the user can investigate flows and their directions [START_REF] Holten | An extended evaluation of the readability of tapered, animated, and textured directed-edge representations in node-link graphs[END_REF][START_REF] Scheepens | Visualization, selection, and analysis of traffic flows[END_REF]. Each particle corresponds to an instance of a moving object, but many instances of the same moving object are visible at the same time (typically 10 instances per trajectory).

Trajectory color blending: In FiberClay the user can also map a data dimension to color. For instance, aircraft trajectories can change color with respect to the altitude dimension (e.g. a color gradient from green to blue to correspond with low to high altitudes, or based on the time along a trajectory to create a gradient from the start to the end of a trajectory). Since our system displays many sets of trajectories, they can intermix and occlude each other. To help address this problem (VisC2), FiberClay supports three modes of color blending modes, with the ability to switch between them at interaction time: transparent, additive, solid. The transparent mode displays trajectories as semi-transparent curves, thus enabling viewers to identify dense areas (i.e. where many trajectories overlap) as they become visually more salient as many trajectories overlap. The additive mode also displays transparent trajectories but dense areas show as a white solid color resulting from the additive blending. Finally, the solid rendering mode displays opaque trajectories which may make it easier to follow a specific trajectory, although occlusion can still make it difficult to display a large number of trajectories at once.

Navigation

Efficient navigation within these dense trajectory sets is particularly important since different point of views are necessary both to better understand the data (VisC2) and to select items to filter them out (VisC3). One distinct advantage of head-tracking in immersive environments is that movements of the head naturally change the displayed point of view within the virtual environment (VRC3). While the user can also physically move in space, there are many times where the user may wish to stay in a fixed position while manipulating the view itself. It may be more comfortable to remain seated or in a fixed position to avoid fatigue by constantly moving back and forth. Furthermore, the position of interesting features within the environment may necessitate movement to awkward positions or obstacles within the physical environment may prevent users from moving to the appropriate location. To address all these issues, in addition to head movements, the user can use the hand controllers to change the view, translating, rotating, or scaling it to convenient sizes and locations (VRC2).

Translation : The user can translate the entire dataset using a grab metaphor. The user reaches into the visualization and presses the right controller grip button. While keeping the grip button pressed, the user can move the controller in any direction and the data moves accordingly. The translation interaction stops when the user releases the grip button.

Rotation : The user can rotate the data set along a vertical axis by pressing the left and right grip buttons, and then pulling or pushing on the left or right controllers. The amount of rotation is dependent on whether the interactions take place inside or outside the bounding box of the data. If the user is far away from the data (outside of the bounding box), the rotation axis is placed at the center of the data, making it easy to spin the data to alternate viewpoints. Once within the bounding set, the rotation axis is located 50cm in front of the user. The helps in smaller refinements of the viewpoint as items closer to the axis will have reduced movements.

Scaling : The user can scale the entire dataset larger or smaller by pressing the left grip controller button and moving the right controller relative to it. The scale varies according to the relative distance between the left and the right controller positions. The system maintains a congruency between the controller movement and the axis orientation.

Bi-manual 3D brushes

A fundamental component of FiberClay is the ability to create complex visual queries by progressively refining a selection of trajectories (VisC3, VisC4) in a single view (VRC4). To create a selection, a ray is activated by pressing the trigger button (figure 2) which results in a selection ray being attached to the hand-held controllers. When the ray intersects a segment of a trajectory, the entire trajectory is selected and turn to solid white color. We empirically defined a radius tolerance parameter of 2 centimeters. We turn sections of trajectories red when they fall into the beam tube to help users better understand how their interactions generated selections. Our system provides two brushing paradigms which can be combined to interactively sculpt queries.

Add and remove brush: This brushing paradigm adds or removes trajectories to the current selection. Pressing the trigger button on the right controller and moving the beam adds trajectories to the selection, while pressing the same button on the left controller and moving its beam subtracts items from the selection (figure 2).

Intersection brush: A second paradigm isolates only those trajectories that are touched simultaneously by both the right and left beams. This makes it easy to select trajectories that start in a certain specified location and end in another specified location (figure 3). This trajectory selection technique requires bi-manual interaction.

Small Multiple Grid Navigation

As noted in design challenge VisC3 and VRC4 we need to have multiple visual data mappings, and a convenient way to make any the primary view. We pre-generate a small multiple grid representing different combinations of data attributes (set of data attributes mapped to x, y and z) positioned on the floor. The user can navigate this grid naturally by moving within the virtual environment. Animated transitions between views avoid any discontinuities.

Lets consider a trajectory dataset D = {d i }, 1 ≤ i ≤ N, containing n-dimensional elements d i ⊂ R n . We note P = {p i } ∈ P the set of parameters that controls a visualization and V (P, D) ∈ V the resulting view for the given dataset D. The exploration of such a dataset requires finding a relevant V defined by a preset P (VisC1). Many techniques have been developed to navigate between preset on a 2D screen which do not directly apply to 3D (VRC1). Scatterdice [START_REF] Elmqvist | Rolling the dice: Multidimensional visual exploration using scatterplot matrix navigation[END_REF] and graphdice [START_REF] Bezerianos | Graphdice: A system for exploring multivariate social networks[END_REF] represent presets in a matrix scatterplot and help user to navigate between them. FromDady [START_REF] Hurter | Fromdady: Spreading aircraft trajectories across views to support iterative queries[END_REF] uses the same principle with large trajectory set explorations. Color tunneling [START_REF] Hurter | Color tunneling: Interactive exploration and selection in volumetric datasets[END_REF] addresses scalability issue and provides a general framework for dual preset navigation. More recently, Kruiger et al. [START_REF] Kruiger | Multidimensional data exploration by explicitly controlled animation[END_REF] provide a grid with user defined presets where the user can navigate and transition between them. All these preset navigation techniques have shown their efficiency, but none have been investigated in the context of an immersive environment where depth perception can play a significant role in the data exploration process.

Small multiple grid computation: In FiberClay , we developed an extended 3D version of the Inverse Distance Weighting (IDW) interpolation using Shepard's method [START_REF] Shepard | A two-dimensional interpolation function for irregularlyspaced data[END_REF] to provide a continuous preset navigation process.

This computation is given using equation ( 1). Considering x ∈ R 2 a point in the 2D preset grid space, we compute the elements V (x, d j ) of the interpolated view at position x as:

V (x, d j ) =              N ∑ i=1 w i (x)V i (d j ) N ∑ i=1 w i (x) , if x -x i = 0 for all i V i (d j ), if x -x i = 0 for some i (1)
x i are the centers of the preset V i in the grid. • is the 2D Euclidean distance, and w i (x) = 1 x-x i p the interpolating basis function controlled by the power parameter p > 1 (we use p = 2 leading to a classical inverse quadratic Shepard interpolation). This preset exploration can produce an infinite number of view spaces V between provided presets following the original preset controller principle [START_REF] Van Wijk | Preset Based Interaction with High Dimensional Parameter Spaces[END_REF]. In FiberClay , up to five predefined presets are available and are placed on a grid where the system will display thumbnails of the intermediate steps (Figure 4) to give a better idea of the possible transitions. These presets are customized for each dataset.

Navigation in the grid: To change the primary view (VRC4), the user can physically move or press the left touch-pad joystick (figure 4). A grid of views is displayed where a rotating cross shows the current visual interpolated configuration. The movement of the left controller is mapped to the cross movements which enables navigation through the interpolation space. Releasing the touch-pad button stops the transition and maintains the currently displayed visual configuration. While this navigation provides a smooth transition, the user has to look at the grid during this transition to accurately position the cross. The cross movements are recorded and can be replayed when pressing the right touch-pad joystick and moving the controllers closer or further apart. This replay interaction helps the user investigate details of the transitions while focusing on primary view rather than on the grid.

Technical considerations

While our specific implementation of FiberClay uses a Samsung Odyssey virtual reality headset and a pair of hand-held controllers, Fig. 4. This image shows our preset selection navigation principle [START_REF] Van Wijk | Preset Based Interaction with High Dimensional Parameter Spaces[END_REF]. The user can navigate between presets by pressing the left touch pad button and then moving the controller in any direction to navigate through the presets. The yellow cross show the current display interpolated preset thanks to our 3D implementation of the Inverse Distance Weighting (IDW) interpolation [START_REF] Shepard | A two-dimensional interpolation function for irregularlyspaced data[END_REF]. The user can replay the last transition by pressing the right touch pad button and moving the two controllers apart.

the overall techniques it uses are applicable in a variety of contexts. The headset, composed of two screens, each facing one eye, enables binocular depth perception. It is also equipped with motion sensors to detect changes in the position of its wearer and thus enables a user to navigate in the virtual environment by physically moving in space. The pair of controllers, one in each hand, enables bi-manual interaction with the displayed 3D objects. These controllers embed accelerometers to detect their orientation and are also tracked by the two cameras on the Head Mounted Device. Note that the shape of controllers allows the viewer to comfortably hold them in each hand while moving in space all the while accessing joysticks and buttons using minimal finger movements. The software is built in C# using the DirectX graphical API. We tested it with many datasets of up to 10 million records. Our system maintains a frame rate of 90 Hz with a screen resolution of 1440x1600 pixels running on a laptop equipped of a Nvidia 1080 GTX graphic card with 8 Go graphical memory on a Intel Core i7 2.9 Ghz.

To implement our system, we had to address data scalability issues, where large datasets must be displayed while allowing the user to interactively explore and select parts of it (VisC5). We made sure that interaction (e.g. brushing, navigation) does not affect the frame rate.

Rendering response time: VR technology can necessitate substantial computational power to display data at high resolution, high frame rates to avoid simulator sickness (when the display lags relative to user movement), and two views (one view rendered for each eye to achieve binocular disparity). Our device can render images at a maximum frame rate of 90 frames per second. To maintain this rate, we had to develop our own rendering engine. Other solutions like Unity, or the Unreal engine are not optimized for data visualization and cannot ensure such a high frame rate with large datasets. We implemented a standard visualization pipeline using VBO (Vertex Buffer Objects) to store the data, and vertex, geometry and pixel shaders to render them onto the device.

Interactive response time: The system must be as responsive as possible to ensure usability. Significant latencies can drastically impede human's ability to interact with the scene. This is an additional challenge since the computation time for user interactions needs to be combined with the rendering time and thus potentially create a degraded user experience. In our system, the frame rate is maintained at 90 Hz even while the user performs brushing interactions. We tested our system with large datasets of up to 10 millions records. Our only limitation is the available memory in the graphic card since the entire dataset needs to fit into it. We use advanced GPGPU techniques to render and to brush displayed items. To achieved a complexity of O(n) where n is the number of records, we used the instantiation technique where data is displayed while any computations are performed (e.g. the brushing or visual configuration interpolation). The rendering pipeline computes the display of every item location at every frame. Since we also use this location to detect if an item is selected, we can use a vertex shader to compute if a selection beam is close to the item to be rendered. With a multiple render target technique (2 textures, one for each eye and two brushing texture, one for each wand), the system simultaneiously computes the image to be displayed and the brushed items. This computation and rendering technique is inspired by the image based techniques [START_REF] Hurter | Color tunneling: Interactive exploration and selection in volumetric datasets[END_REF] and extended to multiple render targets.

DOMAIN EXPERT FEEDBACK

During our investigations and iterative designs, we regularly tested our system with potential end-users. Once the system was implemented, we gathered more extensive observations on its usage. We engaged with 36 domain experts (air traffic controllers, engineers, and medical doctors) who tried FiberClay either in our laboratory or in their own workspace. Note that we did not conduct formal laboratory studies nor did we collect precise quantitative measurements of user performance. Instead, our goal was to observe how FiberClay could be used in practice and how it could lead to insights from data exploration. In this section, we report on two aspects: (1) the basic learnability and usability of FiberClay: we summarize our observations of how domain experts learned to use FiberClay. While these were domain experts, most of them were novice users of immersive environment technology;

(2) the utility of FiberClay for extracting insights from large sets of trajectories: we describe insights gathered during data exploration in four different domains.

Learnability and usability of FiberClay

In this section, we report on qualitative feedback given by our participants as well as our observations on how participants learned.

Background and expertise

Thirty-six participants with different backgrounds tried the system: computer scientists (5 without specific knowledge on the presented data), aeronautic engineers (10 students, 4 professionals), medical doctors (4 neuroscientists), air traffic controllers (4 students, 5 experts), air traffic managers (4 experts). These were primarily domain expertsonly 6 out of 36 had had any previous experiences in VR.

Procedure

We first explained the design rationale of our research (2 minutes) followed by details on the VR device (2 minutes). After these initial explanations, we let the participant experiment with the general purpose Windows mixed reality portal where one can freely explore a 3D environment, and get used to the stereoscopic views and head movement navigation. When the participant felt comfortable enough (typically 5 minutes), we launched our software and started the description of possible interactions with FiberClay. We started with navigation to grab the data (pan) followed by rotation. We continued with the different brushing techniques (adding/removing to a selected set of trajectories and composing intersecting selections). After this first set of interactions (typically 10 minutes) we introduced the small-multiple interaction to change the visual configurations (typically 5 minutes). The last part of the session was devoted to domain specific data exploration. Depending on the level of comfort that the participant had with the dataset, we sometimes started by asking them to perform specific interactions and guided the data exploration with questions. We concluded by free-form exploration (typically 20 minutes).

Observations

The session duration for the 36 participants varied from 20 to 60 minutes. Two participants had to stop after 5 minutes of manipulation because they felt nauseated (a quite common issue with immersive environments).

Most participants learned the full set of interactions -pressing individual and combinations of buttons and gesturing. Many users followed the same learning curve: they mastered the first set of interactions in about 10 minutes, followed by a drop in manipulation capability when trying more complex interactions like preset view transformations. While they could all reproduce each interaction mechanically, most participants admitted that they were lost as to which interaction resulted in which effect on the data at first. However, after experimenting a little more with the effects of their actions, they eventually mastered all the techniques and were able to compose queries to answer questions they had about the data. In about 15 minutes, most participants managed to navigate as they intended and select trajectories of interest.

Several users commented that the grasping metaphor for panning the view of the dataset was quite natural. Rotation was a bit more difficult to master as it necessitated using the two tool controllers as if there was a virtual wheel that connected them. Still, users were able to master this interaction quickly as well. Additive and subtractive selection was also immediately grasped, and this in combination with view manipulation allowed users to accomplish the given tasks. Users were impressed with how rapidly the system responded to selections and were excited about the new insights they were able to gain in looking over the data. Finally, navigation between the visual configurations was the most complicated and was not readily explained by any natural metaphor in the real world (grasping or wheel turning). However the visual feedback from the cursor on the small multiples helped users to understand the process. Using the left controller to navigate freely between available configurations and the right controller to replay or control the distance along the transition was the last mastered.

Insights gathered with FiberClay

In this section, we report insights experts extracted during free-form explorations. We describe the different datasets we used as well as most interesting patterns and interactions participants used to find these patterns. Note that it is particularly challenging to illustrate 3D patterns as 2D images in this paper, as well as interactions and their impact in three dimensions. Thus we strongly encourage reviewers to watch our accompanying video [START_REF]Companion video[END_REF].

Unique Patterns Revealed in Air Traffic Data

The first use case we present is our own exploration of an existing dataset. It is interesting to note that we had extensively explored this dataset in the past using the FromDady system. Yet, using FiberClay we found unique three-dimensional patterns that we had not identified previously (figure 5).

Dataset: This dataset contains 22,720 trajectories recorded over France during one day (Friday, the 22nd of February, 2008 ) consisting of 3,914,905 records (after re-sampling). Each aircraft has a recorded position (latitude, longitude, altitude) every 3-4 minutes and an associated unique numerical identifier.

Findings: By visualizing this dataset in FiberClay and interacting with it to reproduce prior insights discovered with FromDady, we also were surprised to discover three novel patterns: 1. A crenelated trajectory alternating between two locations (figure 5), indicating that the aircraft suddenly jumped and dropped multiple times during flight. Upon closer examination of the data, we realized this pattern is caused by an error in the data collection process, in which points from two different trajectories were merged. Dissociating these trajectories led to two aircrafts following the same route at different altitudes. This pattern is particularly difficult to identify in sets of 2D projections as (longitude by altitude) show a single route, and (time by altitude) shows multiple crossings between two altitudes, which could, in effect, be two different trajectories.

2. A looping trajectory, resembling a vertical square indicating that the aircraft would have performed a series of loops in the sky. As we could not explain this rather uncommon behavior for an aircraft, we consulted with three air traffic controllers experts. Upon investigation they concluded that this aircraft was taking photographs of a specific area of land at different altitudes (to better assess the differences in size of objects in the ground), thus flying back and forth over the region at different altitudes during each segment. This problem was also difficult to discover from multiple 2D views where lot of occlusion occurred.

3. A star-shaped trajectory, which upon investigation is caused by an artifact of the data sampling. Indeed, aircraft location is provided every three to four minutes. If an aircraft is executing holding patterns, waiting for a window to land for example, this low sampling rate leads to this particular star shape. In figure 5, caption "star Shape", we compare the extracting trajectory in our system and with FromDaDy [START_REF] Hurter | Fromdady: Spreading aircraft trajectories across views to support iterative queries[END_REF]. This shape is small and difficult to detect on a 2D screen while it easier to find in an immersive environment. The combination of a large field of view and the flexibility to quickly change the point of view helps to detect it.

Traffic analytics

The second use case we present also deals with air traffic data (figure 7). We present insights gathered from four experienced air traffic controllers (3 Male, 1 Female, Age from 31 to 53), with ten to twenty years of experience in the profession and no previous experience with immersive devices.

DataSets: We used the air traffic dataset described above as well as a more recent dataset of flight over the world, containing one week of recorded aircraft trajectories between the 1st and the 7th of January 2018. This data is extracted from the on-board ADSB system emitted by every aircraft, collected by the OpenSky Network [START_REF] Schäfer | Bringing up opensky: A large-scale ads-b sensor network for research[END_REF]. It is composed of 55,557 flights with 1,787,000 records. Each record contains the aircraft unique identifier, its location (latitude, longitude, altitude), its speed and its direction.

Findings: In this section, we report insights gained by our collaborators using FiberClay and describe interactions they performed to discover or further investigate them. 1. A vase-shaped traffic pattern around Paris. As noted by our collaborators, one of the most challenging area to analyze is the dense air traffic around Paris and its three different airports, including Charles De Gaulle, a key hub in Europe. Since it is forbidden to fly over Paris, the controllers were not surprised by the empty inner space and trajectories appearing to circle over the region to avoid it. However, as one controller physically moved in space to look at the 3D trajectories from multiple angles, he reported an interesting volumetric pattern roughly in the shape of a vase. He explained that this pattern was composed of two types of trajectories: low-altitude aircrafts aiming at landing in one of the airports close to the border of the forbidden area, and high-altitude aircrafts bypassing Paris on their way to different regions, and thus further away from the center. The controller was able to isolate the different sets of trajectories he was interested in by using FiberClay brushes to compose complex queries. For example, by placing the first beam on the left side of Paris and the second one on its right side, he isolated trajectories where aircrafts were bypassing the area. Changing his point of view, he then removed low-altitude flights from his selection, effectively including only aircrafts that were bypassing the region without intending to land. figure 5 shows the extracted trails and its comparison with FomDaDy visualization system. Only stereoscopic system like FiberClaycan make this vase shape emerge.

Flight route complexity:

In figure 7, an air traffic controller used our system to identify airspace where air traffic could be optimized to be more fuel-efficient. She completed a similar query several times in different locations in order to find the patterns she wanted to showcase. Each time she proceeded by placing beams in two different geographic locations to isolate a specific air traffic flow. She then changed the point of view by moving using the small multiples enabling her refine her selection by altitude levels. She then used the removal brush to deselect very low altitude aircrafts, revealing small gradual changes of high-altitude flights. She moved back to her previous position and scaled her selection to see with greater precision how aircrafts changed altitude. After a couple of queries in different locations, she pointed out a traffic flow where aircrafts had inconsistent staircase-shaped climbing patterns (figure 7). She explained that for safety reasons, aircrafts must remain at a given distance from each other, thus, as one aircraft changes altitude, it may slightly impact other aircrafts routes or their altitudes which can rapidly cause a chain reaction. Thus, optimizing when each aircraft should adjust its altitude is important as it could Fig. 5. This set of screen captures shows how our system helped the user to visually explore our trajectory dataset. 3D images have been produced by our immersive system, while 2D images have been produce by a 2D trajectory visualization tool [START_REF] Hurter | Fromdady: Spreading aircraft trajectories across views to support iterative queries[END_REF].The center image gives an overview of one day of recorded aircraft trajectories over France. The user can explore this data set using the grasp and rotation interaction. Furthermore, the user can use the two brushing modes (additive/subtractive and intersection) to select and highlight specific trails. The user detected wait patterns in aircraft which create star shape trails. Many aircraft went around Paris to bypass the city's forbidden flyover area and created a 3D vase shape. Data fusion errors creates jumping trajectories. One aircraft did vertical rectangular shapes during a high altitude picture survey. Fig. 6. These images shows the comparison between standard trail exploration system and our tool. In this example, the user wanted to explore the fights between Toulouse and Paris, two major cities in France. While standard tools use brushing and linking technique, our system uses a bi-manual interaction plus the aspects of the immersive environment such as depth perception and head movements (i.e. intrinsic user view modification due to head movements). As a result, fewer user actions were required to fulfill the same task task in the immersive environment as compared to standard interactive technique [START_REF] Hurter | Fromdady: Spreading aircraft trajectories across views to support iterative queries[END_REF]. Fig. 7. These screen shots shows two different types of traffic complexity. Simple traffic shows aircraft which did not change their altitude and followed their route. Complex traffic patterns show many aircraft which changed their altitude and thus created many crossing lines. lead to less fuel consumption. However, this task is hard to perform without the 3D view of the data as the task involves to study a set of 3D trajectories (latitude, longitude and altitude), and understanding the distance between each of their points. We observed that it required to constantly move her head to understand this complex geometry.

Wind extraction

While we previously demonstrated how FiberClay facilitates in the exploration of geo-spatial temporal data, in this section we look and exploring additional multidimensional attributes of a geo-spatial dataset.

DataSets: The dataset for this scenarios is based on one week of world wide aircraft trajectories. As shown in figure 8, many areas are not covered by aircraft trajectories such as over oceans and seas. This dataset only shows trajectories where ADSB ground stations captured aircraft positions in their vicinity (additionally, there are no ADS-B receptors installed in the desert, mountains or unpopulated areas). Each record contains the 3D location of the recorded aircraft, its time and its direction and speed. The coupling of aircraft direction and speed is of interest since it has been previously shown that it codes for the actual wind faced by an aircraft [START_REF] Hurter | Wind parameters extraction from aircraft trajectories[END_REF]. Aircrafts flying directly into the wind have a lower speed that aircrafts flying with the wind. The wind triangle principle shows that a sinusoidal relationship exists between the aircraft direction and its speed. The small multiple visualization shows the original dataset and two different 3D edge bundling algorithm (an extended 3D version of KDEEB [START_REF] Hurter | Graph bundling by kernel density estimation[END_REF] and Functional Decomposition Edge Bundling [START_REF] Hurter | Functional decomposition for bundled simplification of trail sets[END_REF]). Our system helps to select a subset of the 3D fibers with our 3D brushing techniques (KDEEB and FDBEB). Then the user can investigate how this subset is bundled through the two different 3D edge bundling methods. As a result, FDBEB proposed less distortion compared to KDEEB but with less visual simplification. Our system help to define the correct balance between edge bundling simplification and distortion in a 3D space.

shape results from the impact of this wind on aircraft speed. Aircraft flying east are flying faster than aircraft flying west. While this is the case over the US and Europe, wind speeds and directions are not uniform around the globe. When transitioning between the world and wind views, the user can notice many secondary wave shapes which are occluded by the main jet stream wave. These intermediate animated steps help locate their origin. With interactive brushing, the user can select aircraft around the equator and highlight them. This selection helps the secondary wave shape emerge more clearly which has an opposite phase shift in comparison with the jet stream wave. This shows that the wind around the equator has an opposite direction than the jet stream and it also three times weaker. As a final step the user can display the evolution over time of wind impact by using the z axis to map the time. Depth perception (via both binocular disparity and motion parallax) helps to see that the equatorial wind was lower at the beginning of the week, then increased and finally decreased.

This example shows the unique potential of FiberClay via the continuous view transformations and the ability to refine selections at any point during that transition. Such combination of interactions help detect patterns that would be difficult to see in standard 2D systems.

DTI extractions of neuronal fibers

The last use case scenario shows that FiberClay can be applied to completely different types of trajectories than objects moving through a volume over time. In this case, we explore neuron fiber tracks from different regions of a brain visualized as streamlines of the major eigenvector of a diffusion tensor imaging (DTI) field. Such datasets show a spatially complex structure which makes them hard to explore [START_REF] Assaf | Diffusion tensor imaging (dti)-based white matter mapping in brain research: A review[END_REF][START_REF] Sherbondy | Exploring connectivity of the brain's white matter with dynamic queries[END_REF]. We validated these findings with a professor at the hospital who specializes in brain diseases.

Dataset: This dataset is extracted from a 128 × 128 × 51 DTI volume (dataset from [START_REF] Everts | Exploration of the brain's white matter structure through visual abstraction and multi-scale local fiber tract contraction[END_REF]). We extracted 150,352 fibers from high fractional anisotropy areas and filtered out fibers shorter than 2mm which results in 120,593 displayed fibers (1,998,652 sample points). Each record contains the 3D location of the sample and the numerical identifier of the fiber. Findings: Our system offers an interactive data exploration technique to sculpt queries and isolate specific fiber subsets. In our example, we use the preset exploration technique to better understand a 3D edge bundling algorithm as applied to the DTI fiber dataset. In figure 9, we explore the original dataset and the result of two different bundling algorithms (KDEEB [START_REF] Hurter | Graph bundling by kernel density estimation[END_REF] and FDBEB [START_REF] Hurter | Functional decomposition for bundled simplification of trail sets[END_REF]). The user can navigate between the original 3D fibers and their two different simplifications (see companion video). Furthermore, the user can select a fiber subset and explore how these simplification algorithms operated. The gray fibers in figure 9 shows one original data subset and two visual simplifications. The KDEEB simplification shows many distortions while the FDBEB one shows smooth aggregated lines. This example shows how the user can choose appropriate edge bundling techniques and associated parameters. KDEEB shows more details while FDBEB shows greater simplification. Our system can interpolate between both simplifications so that the appropriate view for a particular selection can be used. To achieve smooth animation betweens different edge bundling technique, we augment the original dataset with a 3D position for every fiber point in each simplification technique, thus we have the original position of the point, its position based on KDEEB, and one based on FDBEB algorithm. The user can navigate between the different data dimensions using the standard, small multiple interaction previously discussed. We are not aware of previous techniques dealing with animated transitions to visualize such dataset.

In this section, we share limitations of FiberClay and reflections on 2D vs 3D systems for interactive visualizations based on our experience.

System limitations

Multidimensional data visualization: FiberClay supports the exploration of multidimensional data by providing different visual data mappings (three attributes mapped to x, y and z, and one attribute to color). Other more sophisticated techniques exist (for example [START_REF] Tominski | Stackingbased visualization of trajectory attribute data[END_REF] or [START_REF] Hurter | Fromdady: Spreading aircraft trajectories across views to support iterative queries[END_REF]). This paper only focused on interaction techniques that enable one to transition to different views while preserving minimal need for interface components (VRC1) and modes (VRC2). Integrating additional visual channels for encoding more attributes in a single visualization (e.g. thickness, texture) and more advanced filtering interactions (e.g. temporal filtering, attribute-based filtering, statistical analysis functions [START_REF] Scheepens | Visualization, selection, and analysis of traffic flows[END_REF]) requires careful considerations to preserve the learnability and usability of the system.

Interaction: While our bi-manual brushing technique supported composing complex selections, its usability sometimes suffered from encountering noise or small oscillations with the hand or arm of the user. This was especially the case when brushing far away items. In these situations, small movements of the hand/arm were amplified and made precise selection difficult. In these situations, we observed that users naturally employed the grab tool to bring the desired selection targets closer, place the selection ray, and then push the data back and proceed the same way for the second ray. Since this grab and push back interaction was quite rapid and natural, this partially addressed some of the problems created by user hand/arm oscillations. Other techniques can be investigated such as smooth beam movement filtering or magnetic anchoring and we reserve these for future work.

Hardware: First, current immersive devices have lower screen resolutions which can limit the details seen in exploring data, especially in very dense data areas. Second, current technology can produce annoyingly high temperatures after extended interaction (typically more than 10 minutes of continuous use). Both of these aspects are being addressed by current hardware improvements -both through higher resolution displays and better air flow system design.

Reflecting on 2D vs 3D techniques

Many multidimensional data visualization systems exist, most of them tailored to 2D displays. To the best of our knowledge, FiberClay is the first attempt to interact with multidimensional data visualization of trajectories in immersive environments. While conducting formal studies to provide evidence of pros and cons of 3D vs 2D is beyond the scope of this paper, our experience building the system and testing it with users paired with our expertise building 2D trajectory visualization in the past led to reflect deeper on these two environments.

Overcoming occlusion and interaction issues in VR: We designed FiberClay because visualizing 3D trajectory in a 3D environment is congruent, and thus may naturally lead to gaining more insights about the data. Yet, we were aware of the many limitations of VR for data visualization such as occlusion effects, as well as difficult to perform accurate selections. We believe that the high resolution of current devices, the binocular disparity, coupled with easy to access navigation (with head motion or controllers) and our novel brushing techniques alleviated these drawbacks enough to lead to a usable system.

Perhaps a unique advantage of FiberClay compares to 2D systems is the ease of composing complex data subsets selections, as illustrated in Figure 6. The ability to directly change the camera position with head movements, while using two controllers to compose selections offers the capability to perform multiple actions at once, alleviating the need to switch modes and interact with multiple GUI components to accomplish similar selection as is the case with standard mouse and keyboard inputs in 2D.

Serendipitous discovery: We believe that FiberClay managed to immerse viewers in the data by providing natural changes of view afforded by head movements (and also our enhancements to enable the change of data attribute mapping) and, once acquired, effective bi-manual interaction for achieving selections that would have been cumbersome to compose with other systems. As a result, we observed users perform a lot of navigation and selections, and thus, we believe it exposed them to more data, fostering serendipitous discovery.

For instance, the France trajectory dataset is featured in many previous works [START_REF] Ersoy | Skeletonbased edge bundling for graph visualization[END_REF][START_REF] Hurter | Wind parameters extraction from aircraft trajectories[END_REF][START_REF] Hurter | Air Traffic Analysis[END_REF][START_REF] Hurter | Interactive image-based information visualization for aircraft trajectory analysis[END_REF][START_REF] Hurter | Graph bundling by kernel density estimation[END_REF][START_REF] Hurter | Functional decomposition for bundled simplification of trail sets[END_REF][START_REF] Hurter | Color tunneling: Interactive exploration and selection in volumetric datasets[END_REF][START_REF] Hurter | Fromdady: Spreading aircraft trajectories across views to support iterative queries[END_REF][START_REF] Scheepens | Visualization, selection, and analysis of traffic flows[END_REF]. Even though this dataset had already been intensively explored, FiberClay fosters the discovery of many additional insights covering errors in the data, unusual trajectory shapes and correlations of dimensions we had not detected before.

Engagement: Finally, we noted that every user who tried our system was enthusiast about participating in the study, and willing to use it for a longer time period compared to our experience with previous 2D systems we developed and tested. We deduced that FiberClay is likely more engaging compared to our previous 2D visualizations. This may be linked to a novelty effect (especially as many of our participants had minimal experience with VR), or it may be related to the sense of immersion as VR emulates the physical environment humans are used to evolve in. This level of engagement (leading to both more time spent in the system and likely more attention) may also explain why participants discovered novel insights in datasets they had previously analyzed with 2D visualizations or other analytics methods.

CONCLUSION

In this paper, we report our investigations to support the exploration of multidimensional trajectory datasets in an immersive environment. This work shows how we designed interaction techniques to effectively select and to explore data subsets. The bi-manual intersection brushing allows the user to efficiently select trajectories, refine that selection by adding or subtracting trails from the selection set while navigating in 3D space to find a suitable view point for both selection and trail comprehension. We also provide a smooth transition technique to navigate between different visual configurations (i.e. data attribute mapping). The user can define a navigation path through a predefined set of visual configurations and control the transition to help better understand the relationships between visual items. Our system is scalable and is capable of managing a large dataset limited only by what fits into the GPU memory. To demonstrate the utility and efficiency of our system, we show four concrete examples of usage though different application domain scenarios: anomaly detection, trajectory analysis, wind extraction, and investigation of fiber track simplification algorithms. Finally we discuss our findings through qualitative user feedback and research perspectives.

As future work, we plan to assess and extend our work in many directions. Various application domains where trajectory analysis play an important role can take advantage of our system: stream lines for flow visualization, network analysis, tensor flow investigations. Finally, additional UI refinements and directions have been suggested by users including convenient undo/redo to help users return to previous selection states, and multi-user collaboration techniques where different users might simultaneously interact with the same dataset.

Fig. 2 .

 2 Fig.2. In the Add/Remove Brush, the user can select trajectories with the right hand-held controller. Each trajectory is brushed when it crosses the ray. Similarly, the user can remove a selection by using a unselect ray from the left controller.

Fig. 3 .

 3 Fig.3. In the intersection mode, the user can use this bi-manual technique to select trajectories which intersect both the left and the right controller rays. This technique can be used to refine trajectories when switching from the Add/remove brush mode and removing unwanted trajectories ( VisC4).

Findings:

  Thanks to the ability of FiberClay to smoothly transition between mappings of different visual attributes, the user can go back and forth between the world view (i.e. latitude, longitude) to a wind view (aircraft direction and speed). The wind view shows the specific sinusoidal wave. When transitioning between the two views (world and wind view), the user can follow the curve transformation and figure out that this shape mainly corresponds with aircraft in Europe and the US. European and US flights have the majority of ADS-B sensors which partially explain the data density. The second reason is due to the jet stream, a very strong high altitude wind between US and Europe. This

Fig. 8 .

 8 Fig.8. Wind extraction from one week recorded aircraft trajectory world wide from ADS-B monitoring system. Since aircraft ground speed is directly affected by the wind, aircraft flying with the wind fly faster than aircraft facing the wind. Using FiberClay, the user can select specific aircraft and show different wind parameters around the world. Equatorial wind is opposite in direction than the jet stream affecting aircraft in the US and Europe. Finally the time visualization shows how this wind evolved other time. The equatorial wind was weaker at the beginning and end of our recording.

Fig. 9 .

 9 Fig. 9. Immersive visualization of DTI fiber extraction from a brain Scan.The small multiple visualization shows the original dataset and two different 3D edge bundling algorithm (an extended 3D version of KDEEB[START_REF] Hurter | Graph bundling by kernel density estimation[END_REF] and Functional Decomposition Edge Bundling[START_REF] Hurter | Functional decomposition for bundled simplification of trail sets[END_REF]). Our system helps to select a subset of the 3D fibers with our 3D brushing techniques (KDEEB and FDBEB). Then the user can investigate how this subset is bundled through the two different 3D edge bundling methods. As a result, FDBEB proposed less distortion compared to KDEEB but with less visual simplification. Our system help to define the correct balance between edge bundling simplification and distortion in a 3D space.

ACKNOWLEDGMENTS

The authors acknowledge the support of the French National Agency for Research (Agence Nationale de la Recherche ANR) under the grant ANR-14-CE24-0006-01 project TERANOVA and the SESAR Research and Innovation Action Horizon 2020 under project MOTO (The embodied reMOte TOwer). Christophe Hurter personally acknowledge Microsoft Research, Redmond, Washington with insightful discussions and a fruitful visiting period.


Brice Bouvier

Adriana Savescu

Sonia Duprey

Raphaël Dumas

Upper Limb ISB 2015-605 UPPER LIMB KINEMATICS AND INERTIAL SENSORS: WHICH CALIBRATION FOR THE BEST ACCURACY?

Introduction and Objectives: Magneto-Inertial Measurement Unit sensors (MIMU) are increasingly used in motion analysis as they allow monitoring ambulatory measurements. Sensor 3D orientation can be estimated by combining information from a 3D accelerometer, a 3D gyroscope and a 3D magnetometer. When focusing on joint kinematics, the definition of segment coordinate systems must be associated with MIMU [1]. International standards [2] do not provide a usable method due to the absence of position information delivered by MIMU. In the literature, three main classes of MIMU calibrations can be distinguished: segment axes equal to technical MIMU axes (TECH), and segment axes generated during a static pose (STATIC) or during functional movements (FUNCT). Despite much interest from the scientific community in this topic, two aspects of research deserve more investigation regarding MIMU-based upper limb kinematics. First, few studies have investigated the comparison of MIMU calibrations, being either focused on segment axes and not joint angles [1] or performed on an artificial arm [3]. Second, evaluations of the performance of MIMU-based upper limb kinematics often appear incomplete and disparate in terms of the protocol and validity criteria used [1,4,5]. The present study compares TECH, STATIC and FUNCT classes of calibration in terms of accuracy for the generation of wrist, elbow and shoulder (humero-thoracic) joint angles during maximal amplitude movements. Methods: Ten subjects were equipped with four wireless MIMUs (MTw, Xsens, Netherlands) on the thorax, and right upper arm, right forearm and right hand segments. The three classes of MIMU calibration, TECH, STATIC and FUNCT were compared. STATIC consists in maintaining a standing pose with the upper arm along the body, elbow flexed at 90°, in neutral forearm pronation-supination (PS). FUNCT uses the combination of STATIC and functional movements of wrist extension, elbow flexion/extension (FE) and shoulder internal/external rotation (IER). An optoelectronic system (Eagle 4, Motion Analysis C., USA) was used as the reference measurement system for the kinematics (REF), according to the ISB standard [2]. Joint angles were compared during six separate movements of maximal amplitude (max): wrist FE, wrist abduction/adduction (AA), elbow FE, forearm PS, shoulder FE and shoulder AA (in the scapular plane). In addition, a seventh test movement consisted of a circular movement in the transverse plane (wheel) that mainly relied on elbow and shoulder DoFs. The experiment was repeated five times per subject, involving a total of fifty experimental sessions (N=50). For the seven test movements, the accuracy of the three MIMU calibrations was assessed using the mean Coefficient of Multiple Correlation inter-protocol (CMCip) [6] and the mean RMSE values calculated over the whole experiment (N=50) and compared with the REF data. Four mean CMCip thresholds were considered: very good (≥0.85), good (0.75-0.85), moderate (0.65-0.75) and bad (<0.55). Results: The accuracy of the three MIMU calibrations was very good and equivalent (0.85≤CMCip≤0.99) for all the principal FE angles during max wrist FE, elbow FE, shoulder FE and AA, and wheel movements. The same observation was made for the coupled PS during max forearm PS (0.93≤CMCip≤0.97) (figure 1). Lower accuracy and disparities between calibrations could be observed for the principal AA angle during max wrist AA (0.66≤CMCip≤0.86) and for the coupled AA and IER shoulder angles during max shoulder FE and AA, and wheel movements (0.53≤CMCip≤0.86), without any constant predominance of a particular calibration. Regarding RMSE values, no significant difference could be observed between MIMU calibrations for any of the movements performed (8.0°≤RMSE≤26.2°). Biomech, 43:1983-88, 2010. [2] Wu et al., J. Biomech, 38:981-92, 2005. [3] Galinski et al., Proc. IEEE RAS EMBS, 1801-06, 2012. [4] Coley et al., Gait Posture, 25:523-32, 2007. [5] Cutti et al., Med Biol Eng Comp, 46:169-78, 2008. [6] Ferrari et al., Gait Posture, 31:540-42, 2010.

  1. Elbow joint angles over time from REF (black-dotted), TECH (blue), STATIC (red), FUNCT (green) during max forearm PS Conclusion: This study highlights that the three classes of calibration (TECH, STATIC, FUNCT) provide good level of accuracy considering CMCip, without any significant difference between them. However, it should be mentioned that the accuracy is only one aspect of the MIMU calibration performance. Indeed, differences between MIMU-based and REF joint angle always exist due to the different definition of the segment axes and the dissimilar effect of soft tissue artifact [1]. RMSE values are comparable to previous results of 20° and 10°-20° reported in the literature [1,7]. For a complete evaluation of MIMU-based upper limb kinematics, reproducibility [1] and interpretation [5,8] of joint angle should also be considered key criteria. References: [1] De Vries et al., J.

  [7] Luinge et al., J. Biomech, 40:78-85, 2007. [8] Bouvier et al., CMBBE, 17:108-09, 2014. Disclosure of Interest: None Declared

No David Winter Young Investigator Awards: Yes David Winter Award -presentation Preference: Oral Emerging Scientific Award sponsored by Professor J De Luca: No Promising Scientist Award sponsored by Motion Analysis: No