|
|
wendy
plesniak |
 |
|
|
 |
 |
|
|
|
|
|
Poke
has two basic subsystems: the haptics |
 |
|
|
module
and the holovideo module. The former |
|
haptically
displays a pliable surface and allows |
|
the underlying model to be arbitrarily reshaped |
|
by poking with the Phantom stylus. The |
|
holovideo
module propagates haptic model |
|
changes
into the hologram incrementally, |
|
and
only in regions corresponding to change. |
|
Updated
holograms are sent via HIPPI to |
|
the
holovideo module's display server |
|
(running
on the Cheops Imaging System) |
|
which updates the holovideo display to |
|
show
the changes due to poking. |
|
There
is a 2s lag between feeling changes |
|
in
the haptic model and seeing them on the |
|
holovideo
display. And though Poke's model |
|
can
be deformed in a more arbitrary fashion |
|
than
Lathe's, its hologram update rate is |
|
reduced
to 0.3fps. |
|
|
|
 |
|
Poke's
force
model is given by a 2D Catmull-Rom |
|
spline
whose control points are connected by a |
|
grid
of springs. As a person presses into the |
|
surface
with the Phantom stylus, the grid and |
|
the
surface near the contact point are recruited |
|
in
the resulting deformation as shown below. |
|
In
this deformation, control points are restricted |
|
to
move only in depth (z). |
|
The
holographic image shows an array of points |
|
 |
|
collocated
with the haptic model control points, |
|
and the surface is felt to stretch among them. |
|
The
holographic image is updated rapidly |
|
using the incremental computing method which |
|
assembles
the image from a set of precomputed |
|
elemental
fringes. This method lets us make fast |
|
and
flexible local changes in the hologram. |
|
 |
|
|
|
A
table of elemental fringes is first
|
|
computed
by interfering a plane wave |
|
with
a set of spherical waves. These |
|
spherical
waves arise from a set of |
|
points
located at a finely-sampled set |
|
of
distances from the hologram plane. |
|
Each fringe in the table reconstructs |
|
an
image of a point at the same depth |
|
used to originally produce the fringe. |
|
A
fringe can be translated in the hologram
|
|
to
translate its reconstructed image, and
|
|
 |
|
a
fringe can be reversed to flip the depth
|
|
of
its image. Arbitrary images can be
|
|
constructed by adding appropriately
|
|
arranged fringes from the table into
|
|
a composite pattern, as shown at the
|
|
right for a simple 2-point image.
|
|
Since
the hologram of any scene
|
|
 |
|
modeled
by a collection of image points
|
|
is
simply a linear superposition of all
|
|
points'
elemental fringes, we can erase
|
|
any
point from the image by subtracting
|
|
its
fringe from the pattem as shown.
|
|
The
image of that point can be updated
|
|
by
adding a new fringe to reconstruct
|
|
the
point at a new location. Poke uses
|
|
this approach to update its hologram as
|
|
 |
|
a person deforms the pliable surface.
|
|
This
method requires operating on a
|
|
144MB
"working" hologram, which is
|
|
subsequently
normalized and sent to
|
|
the
display server on Cheops.
|
|
|
|
Sponsors
of this work include Honda R&D Company, |
|
NEC,
IBM, the Digital Life Consortium at the MIT |
|
Media
Laboratory, the Office of Naval Research |
|
(Grant
N0014-96-11200), Interval Research Corporation, |
|
and
Mitsubishi Electric Research Laboratories. |
|
|
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
|