♪
Hi everyone, today I would like to present ArticuLev: An Integrated Self-Assembly Pipeline for Articulated Multi-Bead Levitation Primitives.
The authors of this work are myself, Andreas Fender, and Diego Martinez Plasencia, and Sriram Subramanian.
Before talking about this work, I would like to briefly introduce acoustic levitation based on previous work.
The most common approach for acoustic levitation is to use two transducer arrays - one in the top and one in the bottom.
All transducers together generate an acoustic pressure field that can trap particles in mid-air.
The relative phase delays of the transducers can be adjusted in real-time to move the particles in three dimensions.
Based on this technology, HCI researchers started to explore the potential by designing interaction techniques…
…and by building novel 3D displays, for instance, by combining acoustic levitation with projection mapping.
By moving individual particles at high speeds, the persistence-of-vision effect can be utilized to create volumetric displays.
Based on previous work, we identified four approaches for displaying acoustic levitation-based content.
We refer to those as “Levitation primitives”.
The most common approach is to use individual beads to display interactive physicalized content.
Such beads can also be connected via threads, for instance to use them for physicalized data visualization as shown in “Floating Charts”.
Beads can also be attached to cloth…
…or used in a persistence-of-vision-based approach.
Those works demonstrated the feasibility of each of the primitives.
However, an often-overlooked aspect of levitation-based displays is the initialization of the physical content.
In this context, "initialization" means to physically transport the levitation primitives to their target location before the application can run.
While some works have specialized solutions for their type of primitive, there is no generalized approach for combining those primitives seamlessly.
With ArticuLev, we propose a generalized modular acoustic levitation pipeline that allows to combine different levitation primitives.
The pipeline also supports fully articulated shapes, which means that hierarchical rotations can be applied within the levitating structures.
Multiple levitation primitives can also be combined into a single articulated shape.
We implemented an instance of the ArticuLev pipeline as a Unity3D plugin.
Developers simply need to define the levitation primitives, position them and possibly implement their animations and behavior.
ArticuLev then takes care of physically transforming the primitives inside the levitator by generating the underlying acoustic traps.
The levitator we use in our pipeline implementation is inspired by previous work with two transducer arrays.
We use acoustically transparent felt above the bottom array to put the levitation primitives onto.
For detecting the levitation primitives, we use three OptiTrack Flex 13 cameras.
Now let’s talk about the pipeline itself.
For this, we will use an articulated shape as an example: A piece of cloth and two threads that can rotate around two anchor points.
To support a shape like this, the developer needs to provide the topology of the structure, which involves specifying how the beads are connected and their hierarchy for articulated movements.
This target shape definition and the application logic for the shape can then be deployed in a levitator to run the pipeline.
The ArticuLev pipeline can be split into three stages:
The first is the “Analyze” stage.
Here we detect the beads and their connections.
We then match those with the target shape provided by the developer (here depicted in green).
The second stage is the “Assemble” stage, in which the levitation primitives are lifted, merged and then transformed to the target pose.
In the “Animate” stage, the structure is transformed in real-time.
This is still running in Unity, so the developer can freely combine this with 3D input devices like Kinect or output devices like projectors.
The previous example was assembled from three separate primitives.
Generally, articulated shapes can be a pre-assembled single prop or assembled in mid-air by merging traps.
This makes no difference for the developer of the target shape.
However, the shapes behave slightly differently during physical articulated movements as can be seen in this comparison.
The primitives themselves can also be pre-cut into shapes.
Detecting bead topologies is then not enough. We also need to reconstruct the exact shapes of the cloth cutouts.
In this case, the developer additionally needs to provide an image of the shape so that ArticuLev can match them with their correct target and orientation.
Given this toolset, developers can freely mix various levitation primitives.
♪