|
|
 |
 |
 |
| Data acquisition card helps bring puppets to life in a virtual world |
| |
|
| |
| January 3rd, 2001 |
| |
As children, we've all played with hand puppets and discovered how deceptively difficult it is to achieve the least bit of realistic motion. To reach the level of sophistication modern audiences have come to expect, the puppeteers that work at Jim Henson's Creature Shop work with "animatronics" -- a term that refers to electromechanically actuated puppets, rather than hand-puppets. You've undoubtedly seen their animatronics achievements on TV and in movies such as Babe, George of the Jungle, Dr. Dolittle and Lost in Space. You might not know, though, that soon the electronics behind some of the action will consist of a Linux machine running PCI data-acquisition and control cards from United Electronic Industries.
 Figure 1. The newest version of a computer-graphics control system from the Jim Henson Creature Shop relies on a data-acq card from UEI to digitize inputs from manually operated controls, which in turn control the computer-generated image on the screen.
It has long been the goal of the Henson company to put a single puppeteer in command of one character. "There are real advantages to having one artist in control of every aspect of a single creature," explains Steve Rosenbluth, control systems designer with the Los Angeles branch of Jim Henson's Creature Shop, "but as characters became more complex, involving dozens of control functions, it was desirable to have computers assist puppeteers in generating lifelike motion." Engineers at Jim Henson's Creature Shop in London were responsible for creating the first incarnation of the animatronics control system, known as the Henson Performance Control System (HPCS), in the 1980s. Thanks to HPCS, puppeteers can control a myriad of actuation points using a combination of hand controls. The results were impressive enough to earn the company an Academy Award for Best Visual Effects for the film Babe.
With computer graphics becoming more attractive in recent years, the company's Los Angeles branch took up the challenge to design a more comprehensive system. This one not only allows a puppeteer to perform animatronic puppets, but also "virtual puppets" on a computer video display.
This system differs dramatically from traditional methods of creating on-screen animation such as "keyframe animation" wherein an artist successively moves a limb or another body part very slightly, then captures the pose. Skilled artists using these methods might achieve 15 seconds of animation per day. With HPCS, in contrast, a minute of motion by a puppeteer results in a minute of finished animation. In addition, the system enables spontaneous performance, a primary feature of Jim Henson's approach to puppetry.
An operator of the system uses input controls consisting of two hand assemblies and, in some cases, a body suit that allows for arm and torso motion. The signals from the control transducers, nearly 60 in all, get digitized, and programmable expression-mixing algorithms combine them. These sophisticated algorithms do more than simply move body parts; they create emotions. For instance, one input signal might control an entire smile or an entire attitude such as happiness.
Unlike the compact laptop system that the Henson crew will deploy on film locations, the computer-graphics system (Fig 1) has fewer space limitations, so the design group put it in a 19" rack. Thus they can roll it around a production facility, take it on the road for live performances at a client facility, trade shows, public events, stadiums or performance centers -- anywhere you can find one of the large video screens now becoming commonplace. For instance, the group helped a digital Kermit the Frog make a guest appearance at the keynote speech of a recent trade show for computer graphics, SIGGRAPH.
In configuring the rack-based system, Steve and the development team chose PCI-bus machines running Linux because of that operating system's flexibility and reliability. He expected to have to write his own device drivers for the system's data-acquisition cards. He started working with boards from one manufacturer but "... ran into a brick wall during driver development, wherein the manufacturer told us they didn't have time to help us out." relates Steve.
Then he read about UEI's multifunction cards with 64 analog inputs, which was in itself an advantage because of the high channel counts on the control systems. Sometimes one rack must support multiple puppeteers and generate the animation for two computer-generated characters that appear on the same screen.
What especially intrigued Steve about the card from United Electronic Industries was the mention of a Linux driver. As it turns out, our Design Engineer at UEI was writing the code for the first version of the driver at that time, so UEI's relationship with Steve proved quite symbiotic. Steve would help UEI refine the requirements by telling them about desired features. In that way Steve got exactly what he needed with only one or two beta versions, and UEI got instant valuable feedback from the field about any glitches in the driver. "UEI bent over backwards, asked questions during driver development, and in general were very responsive. We weren't just a number, as we have been with previous manufacturers. On a time-critical project, having an interested, involved vendor is a big asset, and UEI helped us get the job done on schedule," Steve relates. Meanwhile, the Creature Shop has ported this system to the hard real time "RTLinux" from FSM Labs, and UEI has certified its driver as being compatible with that variant.
The computer-generated puppets move at a 60-Hz frame rate, and the A/D card oversamples the transducers four times so that data can be filtered. But even with 64 analog inputs, that rate (64 channels x 60 frames/sec x 4 samples/frame = 15,360 samples/sec) doesn't stress the card, whose A/D runs at 333 kHz. More important to Steve is accuracy, so he chose the 16-bit member of the PowerDAQ family.
Most important of all is low latency response. When a puppeteer behind the controls makes a move, he wants to see immediate feedback so he can coordinate his motions with other characters and the rest of the scene. The visual aspect provides the feedback loop for the system.
The data-acq system doesn't use its processing power to create the 3D graphical images (Fig 2); those algorithms run on a separate machine that gets its data from the data-acq system over a dedicated network link. The workstations that perform OpenGL rendering and 3D visualization are based on an AMD Athlon running between 950 and 1200 MHz. That chip proves especially effective, Steve says, because of its onboard L2 cache and DDR (double data rate) memory. He points out that consumer-grade machines are now approaching the power that previously one could only get with a specialized workstation, such as a machine from Silicon Graphics Inc.
 Figure 2. Dr. Bunsen Honeydew and Beaker are two 3D computer-graphic characters The Jim Henson Creature Shop felt that UEI fans would enjoy seeing.
Steve's group is putting together four rack systems, all of which are scheduled to go online in January 2001. Note that Jim Henson's Creature Shop doesn't sell these systems, but it does sell animation services through Jim Henson Interactive, also based in Los Angeles.
|
|
|