WO2002023323A2 - Frei spezifizierbare echtzeit-steuerung - Google Patents

Frei spezifizierbare echtzeit-steuerung Download PDF

Info

Publication number
WO2002023323A2
WO2002023323A2 PCT/EP2001/009356 EP0109356W WO0223323A2 WO 2002023323 A2 WO2002023323 A2 WO 2002023323A2 EP 0109356 W EP0109356 W EP 0109356W WO 0223323 A2 WO0223323 A2 WO 0223323A2
Authority
WO
WIPO (PCT)
Prior art keywords
parameterized
sound
pattern
control signals
real
Prior art date
Application number
PCT/EP2001/009356
Other languages
English (en)
French (fr)
Other versions
WO2002023323A3 (de
Inventor
Bernd Von Prittwitz
Original Assignee
Bernd Von Prittwitz
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bernd Von Prittwitz filed Critical Bernd Von Prittwitz
Priority to EP01980243A priority Critical patent/EP1319207A2/de
Priority to AU2002212137A priority patent/AU2002212137A1/en
Publication of WO2002023323A2 publication Critical patent/WO2002023323A2/de
Priority to US10/386,693 priority patent/US7199301B2/en
Publication of WO2002023323A3 publication Critical patent/WO2002023323A3/de

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/0008Associated control or indicating means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2220/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/091Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith
    • G10H2220/096Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith using a touch screen
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2220/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/155User input interfaces for electrophonic musical instruments
    • G10H2220/315User input interfaces for electrophonic musical instruments for joystick-like proportional control of musical input; Videogame input devices used for musical input or control, e.g. gamepad, joysticks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2220/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/155User input interfaces for electrophonic musical instruments
    • G10H2220/321Garment sensors, i.e. musical control means with trigger surfaces or joint angle sensors, worn as a garment by the player, e.g. bracelet, intelligent clothing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2220/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/155User input interfaces for electrophonic musical instruments
    • G10H2220/4013D sensing, i.e. three-dimensional (x, y, z) position or movement sensing

Definitions

  • the invention relates to a method for graphic visualization and real-time control of virtual and / or real objects for generating and / or influencing image or sound sequences, with the aid of which objects or real objects, such as robots or the like, are shown on a screen can be manipulated or controlled in a comfortable and reliable manner (quasi) in real time by interactive control commands of a user in their properties and / or actions.
  • the present invention relates to a method for animation and motion control of a three-dimensional (real or virtual) joint object in real time, to a method for freely specifiable control of animated graphics, video or audio data with the aid of optical or acoustic parameters, on a computer software product for performing such a method and on a system for real-time motion control of virtual and / or real objects.
  • objects in the sense of the invention can be virtual objects, but also real objects such as robots or other remote-controlled objects with several degrees of freedom.
  • the tactile channel (sense of touch) through haptic signals.
  • Signals can be entered into an information system via these channels in order to trigger a desired action by the system.
  • An ideal medium for communication between a user and an information system should be tailored to the sensory and perceptual as well as the motor skills as well as to the specific properties of the human user.
  • the information should be structured in such a way that an optimal match between the representation of the information output and the mental model of the user is achieved: If the information to be displayed to the user is presented in such a way that, for example, his spatial perception is addressed users deal with incredibly complex amounts of information per unit of time.
  • the information system should be able to record, understand and process as many types of information sent by a user as possible and convert them into corresponding actions. This has the advantage that the user can react more efficiently and quickly to new events and situations. Ease of use and appropriateness of the task are therefore typical features of such an ideal communication medium. These characteristics can be expressed as follows:
  • VR virtual reality
  • the aim of developing suitable interfaces between man and machine is to start from the properties of human communication channels and skills in order to provide devices, interaction techniques and interfaces that guarantee effective mutual communication via these channels.
  • so-called “virtual realities” (VR) are particularly suitable.
  • the term "virtual reality” (VR) is the computer-based generation of an intuitively perceptible or communicatendbaren scene consisting of its ⁇ f rafischen presentation and interaction for the user.
  • a virtual environment enables a user to access information that would otherwise not be available at the given place or time. It relies on natural aspects of human perception by using visual information in three spatial dimensions. This information can, for example, be changed in a targeted manner or enriched with further sensory stimuli. Control is essential the perspective in real time and the possibility of active
  • the user of the system influences the scene shown.
  • the user can use the control mode that is natural for him. These can be, for example, corresponding arm or leg movements, movements for positioning the head or eyes, rotational movements of the body or bell directed at an object.
  • the cognitive load during the interaction between man and machine can be reduced. This can increase the bandwidth of communication between man and machine and improve the operability of the machine.
  • the conventional forms of human-machine communication control the machine in a command-oriented manner, no specific commands have to be learned and used again when controlling objects in virtual environments: the computer "passively" observes the user and reacts in an appropriate manner based on the user's eye, head and / or hand movements under real-time conditions.
  • a reflex-like or cognitive sensory-motor feedback is particularly important, such as that of receptors in the skin, kinesthetic sensations, the sense of balance, as well as visual and / or acoustic sensations comes. In many cases this results in a necessary one
  • the visual perception not only provides information about the position, movement, shape, structure, contour, texture, color or pattern of objects etc., but also information about the relative body position of the viewer and his Movements and the nature of the three-dimensional environment. Synthetically generated environments can be made more realistic by simulating as much of the information as possible in natural environments (movement parallax, vanishing points of perspective, spatial depth and plasticity, lighting and shadows, concealment, gloss, mirroring and diffuse reflection, etc.) , How much and which information should be presented depends on the task at hand. The differences between the real and virtual world determine how realistic the simulation is perceived.
  • the visual information must be simulated by a computer in order to implement virtual realities. Similar aspects are relevant as in painting.
  • the computer-aided simulation of three-dimensional worlds usually simulates the projection of individual light beams. ' The starting point of such a simulation is the specification of the environment to be simulated. To do this, the individual objects with their properties and their location must be defined. The intensities of individual pixels are then calculated for visualization and projected onto the output medium.
  • VR systems basically consist of sensors and actuators and their coupling.
  • Important hardware components include the following: - "Displays" for the presentation of the virtual environment: As part of the visual presentation, today mainly monitors, "Head Mounted Displays” (HMD), "Binocular Omni-Oriented Monitors” (BOOM) and projection systems; However, auditory or tactile displays are also used, which react to acoustic or manual user input.
  • HMD Head Mounted Displays
  • BOOM Bocular Omni-Oriented Monitors
  • auditory or tactile displays are also used, which react to acoustic or manual user input.
  • Positioning and orientation systems for recording the location and perspective of the user:
  • Electromagnetic, kinematic, acoustic, optical and image processing procedures are used. .
  • VCS Vehicle-to-vehicle
  • Tracking head movements is an important part of VR applications. Usually the position and orientation of the head in the room are determined, advanced systems can also follow the direction of the gaze. Most systems use either ultrasound, magnetic or light energy to communicate between the head-mounted transmitters and the receivers. Important technical data that play a role in the selection of these systems are:
  • VR applications can be successfully used in practice in a number of different areas. Some possible applications are outlined below as examples.
  • the technologies available today for entering information into a data processing system can be divided into four groups according to the sensors used: 1. mechanical input systems (eg keyboards, mice, trackballs and joysticks), 2. electrical input systems (eg tactile displays and graphics tablets), 3. optical input systems (eg light pen) and
  • Acoustic input systems e.g. voice input and interpretation systems.
  • Low-resolution touchscreens have 10 to 50 positions in the horizontal and vertical directions and use a horizontal and vertical row of infrared LEDs and photo sensors to build up a grid of invisible light rays right in front of the screen.
  • the current finger position can be determined from this information.
  • Another known embodiment of touch-sensitive information input devices is the capacitively coupled touch panel. This provides a resolution of approximately 100 positions in each direction. If a user touches the conductive coated glass plate of the touchscreen with a finger, the current finger position can be determined based on the change in impedance.
  • High-resolution panels use two minimally spaced, transparent layers. One is coated with a conductive material, the other with a resistance material. These two layers touch through the pressure of the finger, and the current finger position can then be determined by measuring the resulting voltage drop.
  • a lower-resolution and cheaper variant of this technology uses a grid of fine wires instead of these layers.
  • Input devices which have manually operated force-torque sensors are known, for example, from the patent documents DE 36 11 336 C2, DE 37 64 287 and EP 0 979 990 A2. From the last-mentioned patent specification, it is also known to use such a force-torque sensor for controlling a real or virtual mixing or control desk, for example in order to create and design novel color, light and / or sound compositions.
  • the intuitive spatial control in three translational and three rotational degrees of freedom can be advantageously transferred to a continuous spatial mixing or control of a large number of optical and / or acoustic parameters.
  • Such a three-dimensional control device for electronic musical instruments is provided, for example, by the D-beam controller integrated in the keyboards EM-30 and EM-50 from Roland.
  • the D-beam controller integrated in the keyboards EM-30 and EM-50 from Roland.
  • the hand and / or body movements of a user can be detected without contact above a surface coated with infrared sensor elements.
  • the D-Beam technology these acoustic movements of the user's hand and / or body can be used to modify or control individual acoustic parameters of recorded improvisations or compositions in real time.
  • the D-Beam controller converts the user's movements into MIDI signals and analog control signals.
  • one of the preferred exemplary embodiments of the present invention is also based on a control device for controlling stored parameterized audio data with the aid of parameterized control signals which can be controlled using controllable virtual objects via a MIDI interface. be transferred to at least one electronic musical instrument, the aspects of the MIDI standard that are important for understanding the invention are briefly described below.
  • the MIDI interface is a digital data transmission format between electronic musical instruments, computers and peripheral devices.
  • the MIDI standard is widely used today and has been used by many musicians and composers since its introduction in 1983.
  • MIDI opens up a very efficient method of displaying audio data, and this makes MIDI a very attractive data transfer protocol not only for composers or artists, but also for a variety of computer applications that are able to generate sound patterns , such as multimedia applications or computer games. Thanks to the publications of the General MIDI System Specification, the most common PC / MIDI interfaces are widely recognized by users today. MIDI is also supported by the Microsoft Windows operating system and other operating systems. Due to the development and marketing of inexpensive synthesizers, the MIDI standard is becoming increasingly popular as the number of applications increases.
  • MIDI was originally developed to be able to couple two or more keyboards from different manufacturers. At the time, no one foresaw that complete music productions could be created using sequencer systems using the MIDI data format.
  • MIDI is mainly used as a transmission medium to replace or supplement digitized audio data in computer games or multimedia applications.
  • MIDI was standardized by the MIDI Manufacturers Association (MMA), which includes all manufacturers of digital musical instruments worldwide. This committee defines the norm binding for all members, among other things also the command structure of the MIDI protocol defined in the MIDI standard. Without this standard, incompatibilities among devices from different manufacturers would result.
  • MMA MIDI Manufacturers Association
  • MIDI events In contrast to the transmission of analog audio data, when transmitting sound patterns via MIDI interface from one or more keyboards to a computer (or in the opposite direction), only bit sequences (so-called "MIDI events") are transmitted, which contain the significant acoustic parameters of the pieces of music played or to be played on the individual keyboards in electronically readable
  • These programming instructions include MIDI-Se- quences, for example, instruct the synthesizer, which tracks are to be recorded, which solo or loading ⁇ f leitinstrumente to be used for an arrangement and which musical parameters are transmitted.
  • Acoustic parameters are understood to mean, for example, pitches, note or pause values, volumes, tempos, articulation instructions, timbres, pedal, vibrato, chorus, reverb, overtone and / or other special effects. In the following, these acoustic parameters will be referred to as "MIDI game information".
  • the playback of the audio data on a keyboard is therefore not an analog recording of pieces of music previously recorded on a keyboard, but the exact reproduction of the recording process itself.
  • the polyphonic voices of a playback synthesizer are at least partially occupied.
  • MIDI files are extremely small, for example files in which high-quality sampled audio data are stored in stereo quality contain approximately 10 Mbytes of music played per minute, while a typical MIDI sequence has a size of less than 10 kBytes per Minute of music is played back, because MIDI files - as already mentioned - do not contain the sampled audio data, but only the programming commands required by a synthesizer to generate the desired sound.
  • MIDI game information does not convey any immediate information about the type of audio data represented, individual acoustic parameters of this MIDI game information can subsequently be exchanged as desired. This also has great advantages:
  • a composer can subsequently instrument or rearrange his work in a variable manner.
  • synthesizers can, for example, play the same voice (unison) to achieve more sonority and much more
  • a complete MIDI word usually consists of three bytes.
  • the so-called status byte is sent first. It is a notification of what type of message it is.
  • the status byte is followed by two data bytes, which contain information about the respective content of the message.
  • the following example refers to the MIDI representation for "switching on” a tone of medium pitch (c 1 ), which should sound at a medium volume (Italian: “Mezzoforte", mf):
  • the first bit (Most Significant Bit", MSB) in the binary representation of the status byte is always assigned the value "1", with data bytes the MSB always has the value "0". In this way, status and data bytes can be clearly differentiated.
  • Z s for a status byte the following applies as a result of the "1" in the MSB: Z s e [128 ⁇ 0 ; 255 10 ]. Since the MSB is set to "0" for the data bytes, which means that it can no longer be used as a value indicator, the data Bytes only seven bits each, so that consequently for the
  • the MIDI channel of the transmitter must be identical to that of the respective receiver.
  • the basic principle here is that a MIDI data line transports all game information on all 16 MIDI channels, whereby the connected tone generators select the messages that are intended for them.
  • the address A k of a selected MIDI channel k (where ke ⁇ 0 10 , ..., 15 ⁇ 0 ⁇ or A k e ⁇ 0000 2 , ..., 1111 2 ⁇ ) transferred. This means that only the first four bits of the status byte contain the status information of a MIDI sequence (eg "Note On", "Note Off” etc.).
  • the MIDI data format provides for the smallest possible interval between different pitches of equal-tempered halftone steps or "chromas” (ie enharmonially equivalent intervals such as excessive primes, small seconds or double-reduced thirds).
  • chromas ie enharmonially equivalent intervals such as excessive primes, small seconds or double-reduced thirds.
  • pitch bend wheel data is required to be generated with a respective control instrument of the synthesizer (the "pitch bend wheel”) can. It is usually a wheel or (more rarely) a joystick that can be moved in four directions.
  • the pitches of the Keys that are depressed on the keyboard of the synthesizer are detuned by rotating the pitch bend wheel in the direction of higher or lower frequencies.
  • detunings of up to an equal-tempered whole tone can be generated in the direction of higher or lower frequencies.
  • the pitch bend wheel is usually equipped with a return mechanism that springs back to the middle or normal position when the wheel is released. This position corresponds to the pitches of the depressed keys on the basis of the floating mood.
  • the tones of the keys struck on the keyboard of the synthesizer can optionally be provided with a vibrato effect.
  • this control instrument can also be used to achieve other effects, for example to mofify the sound brightness or the resonance of the played tones by changing their overtone spectrum. If the modulation wheel is turned to a first point of impact, the depth of the effect is minimal; if it is turned up to an opposite second anchor point, the effect depth is maximum.
  • the second data byte is responsible for the control area. For example, with the help of Frequency modulations responsible controller No. 1 from
  • a vibrato or tremolo effect can be added to synthesizers.
  • the following table lists the most common controllers with their numbers (addresses) and designations:
  • Addresses 12 to 31 are not assigned and offer the user the possibility of freely assigning MIDI functions. Depending on the nature of the respective synthesizer, these addresses can sometimes be assigned very unusual physical parameters, such as the oscillator frequency or pulse width of the generated vibrations.
  • controllers 32 to 38 serve to more finely resolve the range of values of the controller addresses 1 to 6. The same is done by controller numbers 39 to 63 for addresses 7 to 31.
  • the game aids described so far are characterized by a common property: they can be (in 128 or more Step by step).
  • Controller is "Continuous Controller". In contrast, there are other controllers that perform switch functions and are therefore generally called “switch controllers”. The following table gives an overview of the most important of these controllers:
  • the MIDI data format allows a more differentiated interpretation of the value range 1 10 to 126 ⁇ 0 .
  • a multi-stage sustain effect can also be provided.
  • the decay phase of sound events with a "half" pedal depressed is reduced accordingly compared to the decay phase of sound events of the same pitch and volume with the pedal depressed to the stop.
  • the controller addresses for example for the modulation wheel, the holding pedal or sills that can be operated with the foot to influence the dynamics, are already defined. If one of these game aids is used, the sent controller address is fixed.
  • modern synthesizers and master keyboards also have freely definable controllers, ie any controller number can be assigned to the intended play aids (pedals, sills, wheels and sliders).
  • Some tone generators in turn allow the controller functions to be redefined in the device itself. The controller number received can be freely assigned to an internal function.
  • FM synthesis frequency modulation
  • WAV synthesis wavetables
  • FM synthesis is a process used by sound cards and computers to mimic the tones of acoustic musical instruments by electronic means. Sounds generated with the help of FM synthesis are easily recognizable as such - in contrast to sound patterns that were generated by WAV synthesis with the help of wavetables. Master keyboards and synthesizers that have wavetables are relatively expensive, but are often preferred by many professional and amateur musicians because of their high quality playback. The sound patterns are generated by wavetables that combine and / or reproduce stored, digitally sampled original sounds ("Samples”) of acoustic musical instruments. Compared to FM synthesis, in which electronic sounds are generated with the help of the computer, wavetable sounds appear much more realistic.
  • Sound cards are essential for any application that uses sound effects.
  • sound cards In order to be able to translate analog audio data into digital computer language, sound cards have appropriate devices for digitizing analog sounds.
  • the sound generation by a sound card is based on either an FM synthesis or a WAV synthesis.
  • the present invention dedicated to ? the task of providing comfortable and reliably working methods by means of which the user is able to actively control virtual and / or real objects, the existing skills of the user being used to transmit information.
  • the movement control of objects in real time or the real time control of electronically generated audio signals is to be simplified.
  • the invention proposes an efficient method for graphic visualization and real-time control of virtual or real objects for generating and / or influencing image or sound sequences
  • Objects or real objects displayed on a screen can be manipulated, controlled or influenced in real time in a comfortable and reliable manner by interactive control commands of a user in their properties and / or actions.
  • the present invention includes a method for animation and motion control of a joint object in (quasi) real time, a method for freely specifiable control of optical or acoustic parameters, a computer software product for executing such a method and a system for real-time Motion control of virtual or real objects.
  • the present invention relates in particular to input devices which can generate control signals for various degrees of freedom that are independent of one another, and this in each case by means of analog signals.
  • Each of these analog signals can thus be used as a parameter value when controlling virtual objects.
  • the technologies used to input the control commands issued by the user are devices for recording , Recognition, interpretation and processing of three-dimensional movements of a user. The user is therefore no longer dependent on the presence of additional hardware devices for the manual input of control commands.
  • the inputted information can be evaluated instead or additionally using methods of signal or pattern recognition.
  • the type of input method can be tailored to the individual skills of the user.
  • One aspect of the present invention is that reference patterns for animation and motion control of objects, for designing the shape, color and structure of the surfaces of virtual objects and for generating and / or influencing image or sound sequences are stored in advance.
  • these reference patterns can then be called up in real time as parameter values for the generation and / or influencing of animation effects, for the surface design of the objects, for the control or targeted manipulation of video or audio data.
  • the respective reference patterns can be stored in a standardized manner, so that, based on such a real-time control, the above-mentioned parameter values are changed by a module-like exchange of the respective reference patterns at a corresponding interface of the
  • Real-time control can be done with relatively little effort.
  • a preferred exemplary embodiment of the underlying invention is based on a method for real-time motion control of a joint object. First, at least one parameterized movement pattern is defined for at least one surface pattern for the object. If control signals are then fed into the real time motion control entered, this calculates skeletal motion
  • Change data i.e. the position changes of the contours of a virtual object or a framework, consisting of the hinge points of a virtual object connected by edges
  • the skeleton change data reflect translatio and / or rotatochange changes in the position or orientation of the joints of the object.
  • the surface of the virtual joint object is calculated on the basis of the skeleton change data and at least one surface pattern.
  • control signals for at least six independent degrees of freedom can be input simultaneously and processed in real time. These are, for example, control signals for three translatio and three rotatio degrees of freedom in a virtual three-dimensional vector space.
  • the first and second time derivatives of the control signals can be determined according to the invention and processed.
  • the controller thus determines the change in the control signals over time, so that, in contrast to the already mentioned US Pat. No. 5,757,360, for example, no separate acceleration sensor is required.
  • the acceleration can rather be determined by evaluating the development of the control signals with the help of the motion control itself.
  • the assignment of the control signals or their time derivatives as parameter values for the stored movement patterns can be freely specifiable.
  • audio data can also be specifically influenced in real time with the aid of parameterized control signals from the user.
  • Digitally stored, parameterized sound patterns such as the acoustic parameters of (according to the so-called MIDI standard) digitally recorded pieces of music, which can be controlled via the parameterized control signals of the user, can be specifically modified. These sound patterns can then be called up as parameter values in real time, depending on the respective control signals of the user.
  • a method for freely specifiable control of animated graphics, video and / or audio data using optical or acoustic parameters is provided.
  • Generation and / or influencing of these image or sound sequences is at least one predefined parameterized movement, surface, sound and / or lighting pattern stored as a reference pattern.
  • control signals of different degrees of freedom are evaluated by an input device and used as parameter values for generating or influencing animated graphics, video and / or audio data with the aid of at least one stored reference pattern.
  • the assignment of the control signals of a degree of freedom to a specific reference pattern can be freely specified by the user.
  • temporal derivations of the control signals can optionally be assigned to a specific reference pattern.
  • the coupling parameters of the assignment such as the damping and the amplification, can also be freely adjustable by the user.
  • a computer software product is provided, with the aid of which a method according to one of the exemplary embodiments described above can be carried out.
  • a system may be provided for real-time motion control objects that has a memory in which are stored in the at least one parameterizedtheresmu ⁇ edge and at least a surface pattern of the object.
  • This system can also have an input device for inputting control signals for real-time motion control. tion.
  • a motion generator can be provided in order to calculate skeleton change data on the basis of the control signals as parameter values and at least one parameterized motion pattern.
  • the skeleton change data reflect translational and / or rotational changes in the position or orientation of the joints of the object.
  • a surface generator can be provided which calculates the surface of virtual joint objects on the basis of their skeleton change data and a selected surface pattern.
  • the input device can be designed for the simultaneous input of control signals for at least six independent degrees of freedom. It can be designed in particular for the input of control signals for three translational and three rotary degrees of freedom in a three-dimensional vector space.
  • a unit for determining and processing the time derivatives of these control signals can also be provided.
  • a sound generator can also be provided for generating sound signals by linking digitally parameterized sound patterns with digital control signals that are present in parameterized form.
  • a unit for the optional assignment of the control signals or their derivatives can also be provided as parameter values for the parameterized movement, surface, sound and / or lighting patterns.
  • a system for freely specifiable real-time control of animated graphics, video and / or audio sequences has a memory in which at least one predefined parameterized movement, surface, plan and / or lighting pattern is stored as a reference pattern in order to generate and / or influence animated graphics, video and / or audio sequences in real time.
  • the system also has an arithmetic unit for evaluating control signals of different degrees of freedom from an input device as parameter values for generating and / or influencing animated graphics, video and / or audio sequences using at least one stored reference pattern.
  • an adjustment unit is also provided in order to enable a freely selectable assignment of control signals of one degree of freedom to a specific reference pattern.
  • This setting unit can optionally allow time derivatives of the control signals to be assigned to a specific reference pattern. Furthermore, it can achieve a freely selectable setting of coupling parameters of the assignment, such as, for example, the temporal damping and the amplification.
  • FIG. 1 shows a simplified block diagram to illustrate the input and output signals of the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences according to the preferred embodiment.
  • Example of the underlying invention
  • FIG. 2 shows a detailed block diagram to illustrate the components and the input and output signals of the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences,
  • FIG. 3 shows a flowchart to illustrate the actions performed by the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences
  • FIG. 4 shows a block diagram to illustrate the control of individual or several acoustic parameters of digitized sound patterns by a system, consisting of a computer, the control unit 401 of which is conductively connected to at least one electronic musical instrument 402 via a MIDI interface and a 3D input device 104 for the input of parameterized ones Control signals for real-time motion control of virtual objects that can be displayed on a screen
  • FIG. 5 shows a block diagram to illustrate the control of individual or several acoustic parameters of digitized sound patterns by a system, consisting of a computer which has an electronic tone generator 502 and a sound card 510, and a 3D input device 104 for input of parameterized control signals for the Real-time motion control of virtual objects that can be displayed on a screen.
  • the human-machine interface is represented by the input device 104.
  • this is a so-called 3D input device, which can generate control signals 116 for six degrees of freedom, which are independent of one another, if it is manipulated accordingly by a user.
  • degrees of freedom include, for example, three translational degrees of freedom, which are referred to below as x, y and z, and three rotational degrees of freedom, which are referred to below as ⁇ ⁇ , ⁇ y and ⁇ z .
  • the variables x, y and z denote the orthogonal axes of a three-dimensional Cartesian coordinate system.
  • the transformed location vector x ⁇ (x, ⁇ x), which results after the translation of a point object P with the location vector x by the path differences ⁇ x, ⁇ y and ⁇ z in the direction of the respective axes x, y and z, respectively, in this vector space V are simply expressed by adding the location vector x and a linear combination of the orthonormal unit vectors e x , e y and e z :
  • the variables ⁇ ⁇ , ⁇ y and ⁇ z denote the direction of rotation of virtual objects around the x, y and z axes of this coordinate system.
  • the transformed location vector x R (x, ⁇ ), which results after the rotation of a point object P with the location vector x by the angles of rotation ⁇ x , A ⁇ ⁇ and ⁇ z , can be expressed in this vector space V as follows:
  • the rotation matrices R x ( ⁇ x ), R y ( ⁇ y ) and R z ( ⁇ z ) are defined as follows:
  • the present invention may in accordance with the temporal change of these control signals 116 by the freely specifiable real-time control 102 for animated graphics, video and / or audio sequences, which is then described in more detail below. zen can be evaluated. In particular, it is therefore possible to use the three-dimensional vectors for at any discrete point in time n (after omitting the units)
  • the speed v (n): [x (n), y (n), z (n)] ⁇ e «s *» 3
  • the acceleration a (n): [x (n), y (n) , z (n)] ⁇ e ⁇ - *> 3
  • the angular velocity ⁇ (n): [ ⁇ x (n), ⁇ y (n), ⁇ z (n)] ⁇ e '
  • the input device 104 does not require any further sensors (for example speed or acceleration sensors).
  • control signals 116 are fed on the input side from the 3D input device 104 to the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences according to the present invention, the latter outputs animation output signals 120 depending on these control signals 116 With the help of which a 3D animation 114 can be generated, for example, on the screen of a computer.
  • This 3D animation 114 may include:
  • controllable movement patterns 106 of at least one movable joint body controllable surface patterns 108 of the joint body and / or its surroundings,
  • this SD animation 114 is carried out in real time with respect to the control signals 116. In contrast to some known examples according to the prior art, it is therefore normally not necessary to save sound or image sequences in advance in order to then trigger them at the push of a button.
  • a major advantage of the present invention is that for a newly to be generated 3D animation 114 does not have to be done a completely new programming, as is the case in the prior art '.. Rather stored motion patterns 106, surface pattern 108, Sound patterns 110 and / or lighting patterns 112 are connected in an interface-like manner to the freely specifiable real-time control 102 for animated graphics, video and / or audio sequences. By exchanging or re-specifying at least one of the named patterns, a completely new 3D animation 114 can be generated in a simple manner. The programming effort for creating a new 3D animation 114 is thus significantly reduced.
  • the brain can process extremely complex amounts of information per unit of time in various animal species and in humans in the course of evolution with regard to the spatial perception and processing of movement patterns, in a preferred exemplary embodiment of the underlying invention, these learned and inherited skills are easily accessed
  • known movement patterns are made available in a modular manner via a standardized interface of the freely specifiable real-time control 102 for animated graphics, video and / or audio sequences.
  • the 3D input device 104 represents only one example of an input device for generating control signals 116. In principle, any other type of input device is also suitable, although the 3D input device 104 has the great advantage that the input of control signals 116 of different degrees of freedom can take place in a particularly intuitive manner.
  • the specific embodiments of such 3D input devices 104 reference is made to the prior art cited in the introduction to the description. Such products are commercially available from LogiCad3d, for example.
  • the arrows 116 and 120 shaded in gray show the real-time input and output of signals from or to the freely definable real-time control 102, namely the control signals 116 (x, y, z, ⁇ ⁇ , ⁇ y and ⁇ z ) from the 3D input device 104 and the animation output data 120.
  • the control signals 116 are fed to a free specification module 202.
  • One function of the free specification module 202 is to use the absolute values of the entered “analog data” x, y, z, ⁇ x , ⁇ y and ⁇ z to derive the first time derivatives (velocities or angular velocities) or the second temporal derivatives ( Accelerations or angular accelerations) can be determined without the aid of an additional sensor (acceleration sensor), for example, the speed and the acceleration with respect to the “analog data” mentioned under the control signals 116.
  • a second important function of the free specification module 202 is to control the control signals 116 of the various degrees of freedom for the components for generating and / or influencing the graphics, image or sound sequences, ie the motion generator 204, the surface generator 206, the acoustic generator 208 or the Lighting generator 210 to assign.
  • a mask can be provided for the user during the initialization of the real-time control 102 according to the invention for animated graphics, video and / or audio sequences, which enables the user to access the free specification module 202 in such a way that the user has a degree of freedom
  • Control signals 116 can assign one of the above-mentioned components - for generating and / or influencing the graphics, image or sound sequences.
  • the user can freely set the coupling parameters for the assignment of control signals to stored reference patterns, such as, for example, to carry out spectral filtering for damping or amplifying the signal components of audio signals in predeterminable frequency ranges.
  • the adjustable coupling parameters determine the temporal coupling and the damping or amplification of the change in the corresponding reference pattern depending on the assigned control signal and thus the signal response behavior of the system.
  • the free specification module 202 has the effect that the coupling parameters of the assignment - such as the damping or amplification - are freely adjustable.
  • the coupling parameters are changed with regard to the movement pattern of a walking movement of the joint object, it is possible to switch continuously from a dynamic to a limping walking movement.
  • different moods or emotions can also be expressed as a result Facial expressions of a depicted face.
  • Movement patterns can be linked to mood patterns as follows:
  • the user can therefore continuously select between the walking movement of a young athlete and that of an old man and, coupled with this, easily select different characters and / or moods.
  • the free specification module 202 assigns the corresponding control signals 116 as follows:
  • a motion generator 204 as parameterized motion control signals 212
  • the motion generator 204 combines the motion control signals 212 assigned to it with at least one predefined parameterized motion pattern 106 for generating motion animation output signals 220.
  • different motion patterns of the virtual joint object eg walking in different directions, stooping or Jumping etc.
  • the surface generator 206 links the surface control signals 214 assigned to it, the motion animation output signals 220 generated by the motion generator 204, and data from at least one predetermined parameterized surface pattern 108 for generating surface outputs. signals 222.
  • a structural For example, a structural,
  • the acoustic generator 208 links the acoustic control signals 216 assigned to it with at least one parameterized, predefined sound pattern 110.
  • the product of this connection is the sound output signals 224, which represent part of the animation output signals 120.
  • the ge entered ⁇ th sound patterns may for example be parameterized digital audio files.
  • the illumination generator 210 linked to its assigned illumination control signals 218 with at least one pre-defined parameterized illumination pattern 112 to produce illumination output signals 226.
  • the illumination pattern 112 may in this case a virtual Whether ⁇ ject and / or affect its surroundings.
  • the predefined movement patterns 106, surface patterns 108, sound patterns 110 and lighting patterns 112 are each parameterized, so that the corresponding assigned control signals can be used as parameter values by the movement generator 204, the surface generator 206, the acoustic generator 208 or the lighting generator 210 , perform a real-time control of the corresponding pattern depending on the control signals 116 from ⁇ , said real-time control of the corresponding pattern in the corresponding change in the er Weg ⁇ th animation data 220, 222, 224 and 226 is reflected, the total of the animation - Output signals 120 can be summarized.
  • the user can by manipulating the
  • Input device 104 and the corresponding assignment by the free specification module 202 (which was set by the user himself or in advance by the manufacturer) in real time the movement patterns 106, the surface patterns (geometries, textures, etc.) 108, the sound patterns 110 and / or control the lighting pattern 112.
  • it can trigger predefined patterns, for which purpose a switch on the input device 104 can be used, for example.
  • it can use the "analog drive signals" x, y, z,
  • the movement generator 204 continuously calculates the new position and orientation of the joints of the joint body depending on the movement control signals 212.
  • a movement pattern 106 is thus defined, for example, as follows: First, skeletal data are defined that describe the type and position of the joints of the joint body. In addition to the position of the joints (position), the type of joints (which can be described by the type and number of degrees of freedom) is also defined. For each joint j of the J joints of a virtual joint object under consideration, the following string S ⁇ can be defined, for example:
  • a movement sequence then consists of a list or a function that determines which of the defined joints moves when and how, depending on the parameterized control signals.
  • a sequence of movements can thus consist, for example, of a list of the joints to be “processed.” For each cycle, the list or a function is used to calculate which new position and / or orientation of the joints results from the individual contributions of the various joints depending on the control signals.
  • the position of a joint defined by the coordinates x, y, z, and its orientation, defined by the angular coordinates ⁇ x ⁇ ⁇ y or ⁇ ⁇ , are calculated as follows:
  • This equation (1) is therefore calculated for each joint defined in the skeletal data.
  • the new position and orientation of a joint at time n is thus calculated from the position in the previous cycle n-1 plus the new contributions which are dependent on the control signals
  • the vector-valued function fj represents a representation, such as a certain movement, e.g. the course of a human being can be reproduced in a standardized manner.
  • Steps 301a, 301b and 301c relate to a setting and assignment priority in the free specification module 202. This process can either be defined by the user or else in advance. After starting in step 301 so the user and / or a programmer can by releasing specification module 202, the individual control signals 116 of the various degrees of freedom different patterns (movement patterns 106, Upper ⁇ surface pattern 108, sound patterns 110 and / or illumination patterns 112) to assign. In a step 301c, the coupling parameters between the control signals and the changes in the corresponding patterns that are actually carried out in real time can be set. These coupling parameters can relate, for example, to the attenuation and the amplification of sound patterns.
  • control signals are then forwarded from the SD input device 104 to the real-time controller 102 for animated graphics, video and / or audio sequences in a step 304.
  • the control signals are then evaluated in a step 306, the first and second time derivatives of the “analog control signals” being determined, for example.
  • the control signals of the different degrees of freedom are assigned to the movement patterns 106, surface patterns 108, already mentioned above.
  • a method or a system can be provided for controlling individual or several acoustic parameters of digitized sound patterns 410, which uses the following devices:
  • control unit 401 of which is conductively connected to at least one electronic musical instrument 402 via a MIDI interface 404a + b and
  • an input device 104 for input of parameterized control signals 116 for real-time motion control of virtual objects that can be displayed on a screen.
  • the digitized sound patterns 410 can be digitally stored in the memory of at least one electronic musical instrument 402 in accordance with the MIDI standard and generated or played back on at least one electronic musical instrument 402 in accordance with the MIDI standard. Individual or more of these acoustic parameters can be generated or influenced according to the invention by controlling the virtual objects by moving the input device 104 in real time.
  • control unit 501 of which is connected to at least one sound card 510 and to at least one tone generator 502, and
  • an input device 104 for input of parameterized control signals 116 for real-time motion control of virtual objects that can be displayed on a screen.
  • the digitized sound patterns 512 can be stored digitally in the memory of at least one sound card 510 of the computer and can be generated and played on at least one tone generator 502 of the same computer.
  • One or more acoustic parameters of the digitally stored sound patterns 512 can According to the invention by means of the virtual objects Steue ⁇ tion are generated by moving the input device 104 in real-time or influenced.
  • the controllable virtual objects, which are controlled to generate or influence individual or more acoustic parameters of the digitally stored sound patterns 410 or 512 by moving the input device 104, can be, for example, the control elements, buttons,
  • Act switches, knobs and / or sliders of a virtual mixer with the help of which, for example, individual frequency ranges of the overtone spectrum of a stored, digitized sound pattern 410 or 512 can be specifically attenuated or amplified.
  • the input device 104 can be, for example, a wireless control medium that can be moved in three dimensions (“3D mouse”) and which is capable of simultaneously parameterized control signals 116 of movements in at least six independent degrees of freedom to process in real time.
  • 3D mouse three dimensions
  • the controlled acoustic parameters of a specific digitized sound pattern 410 or 512 can be, for example, pitches, note or pause values, volumes, tempos, articulation instructions, timbres, pedal, vibrato, chorus, reverb, overtone and / or other special effects.
  • Parameterized control signals 116 of movements of the input device 104 can be entered in three translational and three rotational degrees of freedom.
  • time derivatives of the parameterized control signals 116 can also be determined and processed.
  • the assignment of parameterized control signals 116 of one degree of freedom to one or more parameters of a specific digitized sound pattern 410 or 512 can be freely specified according to the invention.
  • the time derivations can be assigned to one or more parameters of a specific digitized sound pattern 410 or 512 in accordance with the parameterized control signals 116.
  • the coupling parameters of the assignment of parameterized control signals il ⁇ can also be freely specified.
  • motion generator for calculating the skeleton change data of joint objects on the basis of the control signals 116 as parameter values and at least one parameterized movement pattern 106 each, the skeleton change data translational and / or rotational changes in the position or orientation of the Play joint objects
  • 301c parameter presetting e.g. damping or amplification
  • control unit 401 of which is conductively connected to at least one electronic musical instrument 402 via a MIDI interface and a 3D input device 104 for input of parameterized control signals for real-time motion control of virtual objects that can be displayed on a screen
  • 500 block diagram to illustrate the control of individual or several acoustic parameters of digitized sound patterns by a system, consisting of a computer which has an electronic tone generator 502 and a sound card 510, and a 3D input device 104 for input of parameterized control signals for real-time motion control of virtual objects that can be displayed on a screen
  • Control unit of the computer which has an electronic tone generator 502 and a sound card 510

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • Electrophonic Musical Instruments (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Frei spezifizierbare Echtzeit-Steuerung von animierten Grafiken, Video- und/oder Audiosequenzen mit Hilfe von steuerbaren virtuellen Objekten. Zur Echtzeit-Bewegungssteuerung eines virtuellen Gelenk-Objekts wird ein parametrisiertes Bewegungsmuster (106) sowie ein Oberflächenmuster (108) für das Objekt definiert. Mit Hilfe eines 3D-Eingabegeräts (104) werden Ansteuersignale (116) in eine Echtzeitsteuerung eingegeben. Ferner werden Skelett-Änderungsdaten auf Grundlage der parametrisierten Ansteuersignale (116) und wenigstens eines parametrisierten Bewegungsmusters (106) berechnet. Die Oberfläche wird auf Grundlage der Skelett-Änderungsdaten und wenigstens eines Oberflächenmusters (108) berechnet. Durch zyklische Wiederholung dieser Schritte wird eine Echtzeit-Bewegungssteuerung erreicht.

Description

Frei spezifizierbare Echtzeit-Steuerung
HINTERGRUND UND EINSATZBEREICH DER ERFINDUNG
Die Erfindung bezieht sich auf ein Verfahren zur grafischen Visualisierung und Echtzeit-Ansteuerung von virtuellen und/oder realen Objekten zur Erzeugung und/oder Beeinflussung von Bild- bzw. Tonsequenzen, mit dessen Hilfe auf einem Bildschirm dargestellte bzw. reale Objekte wie beispielsweise Roboter oder dergleichen durch interaktive Steuerbefehle eines Benutzers in ihren Eigenschaften und/oder Aktionen auf eine komfortable und zuverlässige Weise (quasi) in Echtzeit manipuliert bzw. gesteuert werden können. Insbesondere be- zieht sich die vorliegende Erfindung auf ein Verfahren zur Animation und Bewegungssteuerung eines dreidimensionalen (realen oder virtuellen) Gelenk-Objekts in Echtzeit, auf ein Verfahren zur frei spezifizierbaren Steuerung von animierten Grafiken, Video- bzw. Audiodaten mit Hilfe von optischen bzw. akustischen Parametern, auf ein Computersoftware-Produkt zur Ausführung eines solchen Verfahrens sowie auf ein System zur Echtzeit-Bewegungssteuerung von virtuellen und/oder realen Obj ekten.
Es sei angemerkt, dass „Objekte" im Sinne der Erfindung virtuelle Objekte, aber auch reale Objekte wie Roboter oder andere ferngesteuerte Objekte mit mehreren Freiheitsgraden sein können.
Im Rahmen der interaktiven Kommunikation zwischen Mensch und Maschine treten häufig Probleme auf, die auf der ungenügenden Anpassung der Maschine an die Eigenschaften der Aufnahme, Verarbeitung und Ausgabe von Information durch den menschlichen Anwender beruhen. Diese Fehlanpassung kann einerseits zu einer vom Anwender nicht mehr zu bewältigenden Informations- flut führen, vor allem wenn mehrere Aufgaben erledigt werden müssen. Andererseits kann auch eine Unterforderung des Anwenders, beispielsweise bei einer hochautomatisierten Anlage, bei der dem Menschen lediglich eine Kontrollfunktion zukommt, bewirken, dass durch die Monotonie der Arbeitssituation ein Leistungsabfall eintritt und Störfälle infolge mangelnder Übung der Vorgehensweise in solchen Situationen nicht mehr beherrscht werden. Auch die mangelnde Berücksichtigung von Kenntnissen und Ausbildungsstand des Benutzers einer Maschine sind hier zu nennen. Noch immer wird in vielen Fällen das menschliche Verhalten, zum Beispiel bei der Auswahl, Bewertung und Verknüpfung von Information, bei der Entscheidungs- findung, beim Problemlosen sowie bei der Planung und Ausführung von Handlungen, nur unzureichend berücksichtigt und un- terstützt, wenn es sich um die Auslegung technischer Systeme handelt .
Die derzeit verwendeten Systeme zur Darstellung und Steuerung von Objekten in virtuellen Umgebungen berücksichtigen zwar in zunehmendem Maße die Fähigkeiten des Menschen zur Aufnahme und Verarbeitung von Information, jedoch weisen sie einen entscheidenden Nachteil auf: Bei der Eingabe von Steuerbefehlen zur direkten Beeinflussung der dargestellten Szene ist der Benutzer nach wie vor auf herkömmliche Methoden zur manu- eilen Eingabe von Information angewiesen, wie zum Beispiel über Maus, Trackball, Joystick, Grafiktablett mit Griffel oder Touchscreen. Die hierbei notwendigen Eingabemechanismen müssen vom Benutzer erst erlernt werden, um auch in einer angemessenen Reaktionsgeschwindigkeit ausgeführt werden zu kön- nen. Dagegen werden die angeborenen bzw. bereits vorhandenen erlernten Fähigkeiten des Menschen zur Kommunikation mittels akustischen Signalen (z.B. Sprache) bzw. optischen Signalen (z.B. Mimik, Gestik, Gebärden und Bewegungen) bei der Eingabe von Information zur Steuerung von Objekten nur unzureichend berücksichtigt. Für die Anpassung technischer Systeme an den Menschen ist somit Vorwissen über seine Eigenschaften, seine Verhaltensmus- ter, seine Fertigkeiten und seinen Kenntnisstand notwendig. Beim Austausch von Informationen zwischen einem Benutzer und einem Informationssystem interessieren dabei insbesondere die sensorischen, kognitiven und motorischen Eigenschaften des Menschen .
Auf der Seite der durch die Sinneskanäle vorgegebenen sensorischen Eigenschaften des Menschen werden von herkömmlichen Maschinen und Geräten zur Ausgabe von Information im Wesentlichen die folgenden Wahrnehmungskanäle angesprochen:
- der visuelle Kanal (Augen) durch optische Signale,
- der auditive Kanal (Ohren) durch akustische Signale und
- der taktile Kanal (Tastsinn) durch haptische Signale.
Mach der Verarbeitung der Signale im Gehirn (Kognition) ste- hen auf der Seite der durch die Ausgabekanäle vorgegebenen motorischen Eigenschaften des Menschen im Wesentlichen folgende Kanäle zur Verfügung:
- die Arm-, Hand- und Finger- bzw. Bein- und Fußmotorik sowie Körper-, Kopf-, Augen- oder Mundbewegungen, also physikalische Bewegungen, Gebärden, Gestik und Mimik zur Erzeugung von mechanischen bzw. optischen Signalen,
- die Sprachmotorik zur Erzeugung von akustischen Signalen.
Über diese Kanäle können Signale in ein Informationssystem eingegeben werden, um eine gewünschte Aktion des Systems auszulösen. Ein ideales Medium zur Kommunikation zwischen einem Benutzer und einem Informationssystem sollte sowohl auf die sensorischen und perzeptuellen als auch auf die motorischen Fähigkeiten sowie auf die spezifischen Eigenschaften des menschli- chen Benutzers abgestimmt sein. Dabei sollte die Information so strukturiert sein, dass eine optimale Übereinstimmung zwischen der Repräsentation der ausgegebenen Information und dem mentalen Modell des Benutzers erzielt wird: Werden die dem Benutzer anzuzeigenden Informationen in einer Weise dargebo- ten, dass zum Beispiel sein räumliches Wahrnehmungsvermögen angesprochen wird, kann der Benutzer mit erstaunlich komplexen Informationsmengen pro Zeiteinheit umgehen. Ebenso sollte das Informationssystem in der Lage sein, möglichst viele Arten der von einem Benutzer abgesetzten Information aufzuneh- men, zu verstehen und zu verarbeiten und in entsprechende Aktionen umzusetzen. Damit ist der Vorteil verbunden, dass der Benutzer effizienter und schneller auf neue Ereignisse und Situationen reagieren kann. Benutzerfreundlichkeit und Aufga- benangemessenheit sind somit typische Merkmale, über die ein solches ideales Kommunikationsmedium verfügt. Diese Merkmale können sich wie folgt äußern:
- Übereinstimmung zwischen Art, Umfang und Ausgabegeschwindigkeit und Präsentation der ausgegebenen Information mit den sensorischen Eigenschaften des menschlichen Benutzers,
- Berücksichtigung aller Informationskanäle des Benutzers bei der Aufnahme, Erkennung und Interpretation empfangener Steuersignale des Benutzers,
- leichte Erlernbarkeit und intuitive Bedienbarkeit des Mediums,
- hohe Bandbreite der Informationsübermittlung zum Gehirn und hoher Durchsatz der Information, - dynamische Adaption der Applikation an die individuellen Eigenschaften, Fähigkeiten, Aufgaben, Arbeits- und Organisationstechniken des Benutzers,
- Verwendung einer natürlichen Interaktionssprache mit hohem semantischen Inhalt,
- Zuverlässigkeit, Robustheit und Wartbarkeit des Mediums,
- soziale Akzeptanz des Mediums in der Bevölkerung,
- Berücksichtigung gesundheitlicher, ergonomischer und sicherheitsrelevanter Aspekte etc.
Das Ziel der Entwicklung von geeigneten Schnittstellen zwischen Mensch und Maschine ist es, von den Eigenschaften der menschlichen Kommunikationskanäle und Fertigkeiten auszugehen, um Geräte, Interaktionstechniken und Schnittstellen be- reitzustellen, die eine effektive wechselseitige Kommunikation über diese Kanäle gewährleisten. Um dieses Ziel zu erreichen, sind sogenannte "Virtuelle Realitäten" (VR) besonders geeignet. Unter dem Begriff "Virtuelle Realität" (VR) versteht man die computerbasierte Erzeugung einer intuitiv wahrnehmbaren oder empfindbaren Szene, bestehend aus ihrer ςfrafischen Darstellung und den Interaktionsmöglichkeiten für den Benutzer. Eine virtuelle Umgebung ermöglicht einem Benutzer Zugriff zu Informationen, die andernfalls am gegebenen Ort oder zur gegebenen Zeit nicht verfügbar wären. Sie stützt sich auf natürliche Aspekte der menschlichen Wahrnehmung, indem sie visuelle Information in drei räumlichen Dimensionen einsetzt. Diese Information kann beispielsweise gezielt verändert oder mit weiteren sensorischen Reizen angereichert werden. Wesentliche Voraussetzungen sind dabei die Kontrolle der Perspektive in Echtzeit und die Möglichkeit der aktiven
Einflussnah e auf die dargestellte Szene durch den Benutzer des Systems.
5 Bei der Navigation durch virtuelle Umgebungen kann der Benutzer die für ihn natürliche Art der Steuerung einsetzen. Dies können beispielsweise entsprechende Arm- oder Beinbewegungen, Bewegungen zum Positionieren des Kopfes bzw. der Augen, Drehbewegungen des Körpers oder auf ein Objekt hingerichtete Bell) wegungen sein. Durch den Einsatz bereits vorhandener Fertigkeiten des Benutzers zur Steuerung kann die kognitive Belastung während der Interaktion zwischen Mensch und Maschine reduziert werden. Dadurch kann die Bandbreite' der Kommunikation zwischen Mensch und Maschine erhöht und die Bedienbar- 15 keit der Maschine verbessert werden. Während bei den herkömmlichen Formen der Mensch-Maschine-Kommunikation die Steuerung der Maschine kommandoorientiert erfolgt, müssen bei der Steuerung von Objekten in virtuellen Umgebungen keine spezifischen Kommandos neu erlernt und eingesetzt werden: Der Co pu- 20 ter "beobachtet" den Benutzer passiv und reagiert in angemessener Weise auf Augen-, Kopf- und/oder Handbewegungen des Benutzers unter EchtZeitbedingungen.
Die Manipulation der Eigenschaften und Beeinflussung der Ak- 25 tionen von Objekten einer dargestellten Szene setzt ein kompliziertes Zusammenspiel von Sensorik, kognitiver Verarbeitung und Motorik voraus, auf das viele Faktoren einwirken (individuelle Verhaltensmuster und Fähigkeiten, Erfahrungen, Umwelteinflüsse etc.). Bei Interaktionen in einer virtuellen 30 Welt kommen noch zusätzliche Schwierigkeiten hinzu. Zur Steuerung, Manipulation bzw. Beeinflussung von Objekten ist insbesondere eine reflexartige bzw. kognitive sensorisch-motori- sche Rückkopplung wichtig, die beispielsweise von Rezeptoren in der Haut, kinästhetischen Empfindungen, dem Gleichge- 35 ichtssinn sowie visuellen und/oder akustischen Empfindungen stammt. Dabei ergibt sich in vielen Fällen eine notwendige
Redundanz, die bei VR-Applikationen nicht immer gegeben ist.
Aufgrund der oft unzureichenden sensorischen Rückkopplung bei
VR-Applikationen wird zudem das Erlernen motorischer Fertig- keiten erschwert.
Bei den handelsüblichen VR-Applikationen unterscheidet man Systeme, bei denen der Benutzer vollständig in die virtuelle Umgebung integriert ist (engl.: "Immersion") und Systeme, die nur ein "Fenster" zur virtuellen Realität darbieten. Neben den bekannten Formen der Mensch-Maschine-Kommunikation wie
- Direktmanipulationen von Objekten durch manuelle feinmotorische Operationen (Zeigen, Berühren, Greifen, Bewegen, Festhalten etc.),
- formalen Interaktionssprachen (Programmiersprachen, Kommandosprachen und formale Abfragesprachen) ,
- natürlichsprachlicher Interaktion,
- gestischer Interaktion mittels nonverbaler symbolischer Kommandos (Mimik, Gestik, Gebärden, Bewegungen) sowie
- hybriden aufgabenorientierten Interaktionsformen
kann man virtuelle Realitäten auch als eine neue Form der Mensch-Maschine-Kommunikation auffassen. Wie der Name "Virtuelle Realität" schon andeutet, ist hierfür eine gewisse Realitätstreue der Darstellung notwendig: Dem Anwender soll diejenige sensorische Information dargeboten werden, die zur Bearbeitung einer Aufgabe oder zum Erreichen eines Ziels erforderlich ist.
Die visuelle Wahrnehmung liefert nicht nur Informationen über die Lage, Bewegung, Form, Struktur, Kontur, Textur, Farbe bzw. Musterung von Objekten etc., sondern auch Informationen über die relative Körperstellung des Betrachters und dessen Bewegungen sowie über die Beschaffenheit der dreidimensionalen Umgebung. Synthetisch generierte Umgebungen können dabei realistischer gestaltet werden, wenn möglichst viele der in natürlichen Umgebungen auftretenden Informationen (Bewegungs- parallaxe, Fluchtpunkte der perspektivischen Darstellung, räumliche Tiefenwirkung und Plastizität, Beleuchtung und Schattenwurf, Verdeckung, Glanzwirkung, Spiegelungseffekte und diffuse Reflexion etc.) simuliert werden. Wie viele und welche Informationen präsentiert werden sollen, hängt von der jeweiligen Aufgabenstellung ab. Die Unterschiede zwischen realer und virtueller Welt bestimmen, als wie realistisch die Simulation wahrgenommen wird.
Die visuelle Information muss.zur Realisierung virtueller Re- alitäten durch einen Computer simuliert werden. Dabei sind ähnliche Aspekte relevant wie in der Malerei. Bei der computergestützten Simulation dreidimensionaler Welten wird üblicherweise die Projektion einzelner Lichtstrahlen simuliert.' Ausgangspunkt einer solchen Simulation ist die Spezifikation der zu simulierenden Umgebung. Dazu müssen die einzelnen Objekte mit ihren Eigenschaften und ihrer Lage festgelegt werden. Zur Visualisierung werden dann die Intensitäten einzelner Bildpunkte berechnet und auf das Ausgabemedium proji- ziert .
Mit Hilfe dieser Simulationen lassen sich völlig neue Arten des Lernens und Übens realisieren (Beispiele: Fahrzeug- bzw. Flugzeugsimulator) , andererseits wird dabei immer auch von bestimmten Aspekten der realen Welt abstrahiert. VR-Applika- tionen bewirken daher gleichzeitig eine Anreicherung und eine Einschränkung der Erfahrungsmöglichkeiten des Anwenders.
Grundsätzlich bestehen VR-Systeme aus Sensoren und Aktoren sowie deren Kopplung. Wichtige Hardware-Bestandteile sind un- ter anderem folgende: - "Displays" zur Präsentation der virtuellen Umgebung: Im Rahmen der visuellen Präsentation kommen heute vor allem Monitore, "Head Mounted Displays" (HMD) , "Binocular Omni- Oriented Monitors" (BOOM) und Projektionssysteme; verwendet werden aber auch auditive bzw. taktile Displays, welche auf akustische bzw. manuelle Benutzereingaben reagieren.
- Positionierungs- und Orientierungssysteme zur Erfassung von Standort und Perspektive des Benutzers: Hierbei wird unterschieden zwischen der Bestimmung der absoluten Position (engl: "Position Tracking") und der Messung der Beugung von Gelenken (engl.: "Angle Measurement") . Zum Einsatz kommen elektromagnetische, kinematische, akustische, optische so- wie bildverarbeitende Prozeduren. ,
- Interaktions- und Manipulationssysteme zum Agieren und Reagieren des Anwenders in der virtuellen Umgebung: Hierfür werden Zeigegeräte (2D- bzw. 3D-Mäuse, -Trackballs, -Joy- sticks etc.) bzw. taktile Geräte (Touchscreens, elektromagnetische Grafiktabletts mit Griffel etc.) verwendet; auch sogenannte "Datenhandschuhe" mit Beugungs- und Drucksensoren werden in zunehmendem Maße eingesetzt. Darüber hinaus ist auch Sprachsteuerung in diesem Zusammenhang zu nennen.
- Berechnungssysteme und Software zur Erzeugung der virtuellen Umgebung unter EchtZeitanforderungen.
- Netzwerke zur Integration verschiedener Benutzer, durch die sich neue Formen der Zusammenarbeit entwickeln können.
Die verschiedenartigen technischen Varianten von heim- bzw. kopfbasierten Systemen zur Visualisierung virtueller Realitäten werden im englischen Sprachgebrauch zusammenfassend als 'Visually Coupled Systems" (VCS) bezeichnet. Sie bestehen aus den folgenden wichtigen Komponenten:
1. einem am Kopf bzw. Helm befestigtes Display,
2. einem Gerät zum Bestimmen der Kopf- und/oder Blickbewegungen des Anwenders,
3. einer Quelle visueller Information, die von der Kopf- und/oder Blickrichtung des Anwenders abhängt.
Beim Einsatz eines derartigen ^Systems für VR-Applikationen können sowohl Informationen aus der realen als auch aus der virtuellen Umgebung gleichzeitig dargeboten werden. Man spricht dabei von "See-Through Displays" für die Darstellung von angereicherten Realitäten.
Die Verfolgung von Kopfbewegungen ist ein wichtiger Bestandteil von VR-Applikationen. Üblicherweiser werden Position und Orientierung des Kopfes im Raum ermittelt, fortgeschrittene Systeme können außerdem die Blickrichtung verfolgen. Die meisten Systeme setzen dazu entweder Ultraschall, magnetische oder Lichtenergie zur Kommunikation zwischen den am Kopf angebrachten Sendern und den Empfängern ein. Wichtige technische Daten, die bei der Auswahl dieser Systeme eine Rolle spielen, sind:
- die Anzahl der Freiheitsgrade für die Bewegungsrichtungen, welche registriert und verfolgt werden können,
- der erfassbare Winkelbereich,
- die statische Genauigkeit (Erschütterungsempfindlichkeit) ,
- das Auflösungsvermögen, - die Zuverlässigkeit,
- der Datendurchsatz und die Bildschirm-Abtastfrequenz,
- die Schnittstelle zum Computer sowie
- weitere Performanzaspekte .
VR-Applikationen lassen sich in einer Reihe von unterschiedlichen Bereichen in der Praxis erfolgreich anwenden. Im Folgenden werden einige Anwendungsmöglichkeiten beispielhaft skizziert .
- Einsatz im Ausbildungsbereich: Durch das Erlernen des Umgangs mit (virtuellen) Objekten, interaktive Demonstrationen, Visualisierung abstrakter Konzepte, virtuelles Training des Verhaltens in gefährlichen Situationen, virtuelle Erforschung entfernter Orte oder Epochen können Wissen vermittelt, kreative Fertigkeiten geschult und Verhaltensmuster trainiert werden.
- Einsatz beim Fahr- und Flugtraining in entsprechenden Simu- latoren: Durch den Einsatz von Simulatoren kann das Verhalten insbesondere in Notsituationen geschult werden.
- Einsatz im Bereich von Computerspielen: Durch die Möglichkeit der Navigation durch eine virtuelle Szene und die Mög- lichkeit der gezielten Steuerung und Beeinflussung virtueller Objekte entsteht ein realitätsnaher Eindruck, wodurch die Attraktivität eines Computerspiels für den Benutzer wesentlich erhöht werden kann.
Die heute verfügbaren Technologien zur Eingabe von Information in ein datenverarbeitendes System lassen sich nach den verwendeten Sensoren in vier Gruppen einteilen: 1.mechanische EingabeSysteme (z.B. Tastaturen, Mäuse, Trackballs und Joysticks) , 2. elektrische Eingabesysteme (z.B. taktile Displays und Grafiktabletts) , 3. optische Eingabesysteme (z.B. Lichtgriffel) und
4. akustische Eingabesysteme (z.B. Spracheingabe- und Sprach- interpretationssysteme) .
Im Folgenden soll auf die nach dem heutigen Stand der Technik gebräuchlichen Hilfsmittel zur Eingabe von Information, die zur Steuerung von Objekten im Bereich von VR-Applikationen eingesetzt werden, kurz eingegangen werden.
Herkömmliche Eingabesysteme wie Tastaturen, Mäuse, Trackballs als auch Joysticks sind heute weit verbreitet. Sie werden verwendet, um Positionsmarken (engl.: "Cursors"), Mauszeiger etc. zu steuern, um beispielsweise durch eine virtuelle Szene navigieren zu können oder virtuelle Objekte auf dem Bildschirm zu bewegen. Der Nachteil dieser Eingabesysteme ist, dass sie eine Ablagefläche (also einen festen Standplatz) benötigen, um in effizienter Weise bedient werden zu können.
Mit einem Touchscreen dagegen ist es möglich, direkt auf Objekte, die auf dem Bildschirm abgebildet sind, mit dem Finger zu zeigen, ohne weitere platzraubende Zusatzgeräte auf dem Schreibtisch zu benötigen. Niedrig auflösende Touchscreens weisen 10 bis 50 Positionen in waagerechter und senkrechter Richtung auf und benutzen eine horizontale und vertikale Reihe von Infrarot-Leuchtdioden und Fotosensoren, um ein Gitter von unsichtbaren Lichtstrahlen unmittelbar vor dem Bildschirm aufzubauen. Bei einer Berührung des Bildschirms werden sowohl vertikale als auch horizontale Lichtstrahlen unterbrochen. Aus dieser Information kann die aktuelle Fingerposition ermittelt werden. Eine andere bekannte Ausführungsform berührungssensitiver Informationseingabegeräte ist das kapazitiv gekoppelte Touch- Panel. Dieses liefert eine Auflösung von ca. 100 Positionen in jeder Richtung. Wenn ein Benutzer die leitfähig beschich- tete Glasplatte des Touchscreens mit einem Finger berührt, kann aufgrund der Impedanzänderung die aktuelle Fingerposition ermittelt werden. Andere hochauflösende Panels verwenden zwei minimal voneinander entfernte, transparente Schichten. Eine davon ist leitfähig beschichtet, die andere mit einem Widerstandsmaterial beschichtet. Durch den Anpressdruck des Fingers berühren sich diese beiden Lagen, und durch Messung des daraus resultierenden Spannungsabfalls kann dann die aktuelle Fingerposition ermittelt werden. Eine niedriger auflösende und billigere Variante dieser Technologie verwendet an- stelle dieser Schichten ein Gitter von feinen Drähten.
Nach dem Stand der Technik sind heute verschiedene Lösungen für das Problem der Echtzeit-Bewegungssteuerung virtueller Objekte verfügbar, wobei jede dieser Lösungen für einen spe- ziellen Anwendungszweck optimiert ist. Mit jeder dieser Lösungen sind daher bestimmte Einschränkungen verbunden. Um einige der wichtigsten dieser Lösungen ansatzweise erklären zu können, ist es notwendig, kurz auf ihre wichtigsten Aspekte einzugehen.
Eine Möglichkeit zur Echtzeit-Bewegungssteuerung virtueller oder realer Objekte hat sich in letzter Zeit dadurch ergeben, dass Eingabegeräte für Computer bekannt wurden, die die gleichzeitige Eingabe von Ansteuersignale mehrerer, voneinan- der unabhängiger Freiheitsgrade ermöglichen. Die dadurch geschaffenen Möglichkeiten übersteigen bei weitem diejenigen, die-- beispielsweise bei der Verwendung einer Maus bestehen, die lediglich zweidimensional (z.B. auf der Ablagefläche eines Schreibtischs) gesteuert werden kann. Zwar ist es auch bekannt, eine Maus beispielsweise mit zusätzlichen Schaltern zu versehen, indessen haben diese Schalter den Nachteil, dass sie nicht die Eingabe von Analogdaten ermöglichen, sondern vielmehr auf Binärdaten (Ein/Aus) beschränkt sind.
Aus dem Stand der Technik sind auch verschiedene Eingabegeräte bekannt, die analoge Ansteuersignale von verschiedenen, voneinander unabhängigen Freiheitsgraden erzeugen können, wobei jedes dieser Analogsignale somit als Parameterwert einer Ansteuerung verwendet werden kann. Beispielsweise ist aus der Patentschrift US-A-5, 757, 360 ein eiförmiges Eingabegerät für Computer bekannt, das durch eine Hand des Benutzers frei im Raum bewegt werden kann, seine momentanen Positionen, Bewegungsrichtungen, Geschwindigkeiten und Beschleunigungen ermittelt und diese kinematischen -Daten drahtlos zu dem Compu- ter überträgt. Dabei wird ein analoger Bewegungsablauf in
Form eines Bewegungsmusters identifiziert, woraus Bewegungsbefehle abgeleitet und in eine animierte Grafikdarstellung umgesetzt werden. Die Bewegungsmuster werden mit Hilfe eines Mustererkennungsalgorithmus automatisch erkannt. Zusätzlich werden Steuerbefehle erzeugt. Der Nachteil dieses Verfahrens besteht darin, dass es nicht frei spezifizierbar ist, da Bewegungsabläufe des Benutzers, die durch das Eingabegerät analog erfasst werden, korrespondierenden Bewegungsabläufen von gespeicherten Bewegungssequenzen einer animierten Grafikdar- Stellung zugeordnet werden und nur als solche dargestellt werden können.
Eingabegeräte, die über manuell zu betätigende Kraft-Momen- ten-Sensoren verfügen, sind beispielsweise aus den Patent- Schriften DE 36 11 336 C2, DE 37 64 287 sowie EP 0 979 990 A2 bekannt. Aus der zuletzt genannten Patentschrift ist es weiterhin bekannt, einen derartigen Kraft-Momenten-Sensor zum Steuern eines realen oder virtuellen Misch- bzw. Steuerpults zu verwenden, beispielsweise um neuartige F rb-, Licht- und/oder Tonkompositionen zu kreieren und zu gestalten. Hier- bei kann wiederum in vorteilhafter Weise die intuitive räumliche Steuerung in drei translatorischen sowie drei rotatori- schen Freiheitsgraden auf ein stufenloses räumliches Mischen oder Steuern einer großen Anzahl von optischen und/oder aku- stischen Parametern übertragen werden.
Manuell steuerbare Eingabesysteme, die eine Navigation in drei Dimensionen erlauben, werden heute in einer Reihe der unterschiedlichsten technischen Anwendungsfeider erfolgreich eingesetzt. Ein solches Anwendungsfeld stellen beispielsweise Steuervorrichtungen zur Steuerung der Funktionen elektronischer Musikinstrumente (vor allem bei Synthesizern und Masterkeyboards) dar, die über eine sogenannte MIDI-Schnitt- stelle (engl.: "Musical Instrument Digital Interface") verfü- gen.
Eine solche dreidimensionale Steuervorrichtung für elektronische Musikinstrumente ist zum Beispiel durch den in den Keyboards EM-30 und EM-50 der Firma Roland integrierten D-Beam Controller gegeben. Durch die Verwendung eines extrem empfindlichen Infrarot-Lichtstrahls können dabei die Hand- und/oder Körperbewegungen eines Benutzers oberhalb einer mit Infrarot-Sensorelementen beschichteten Fläche berührungslos detektiert werden. Kraft der D-Beam-Technologie können durch diese Hand- und/oder Körperbewegungen des Benutzers einzelne akustische Parameter eingespielter Improvisationen bzw. Kompositionen in Echtzeit modifiziert bzw. gesteuert werden. Der D-Beam Controller verwandelt dazu die Bewegungen des Benutzers in MIDI-Signale und analoge Steuersignale.
Da eines der bevorzugten Ausführungsbeispiele der vorliegenden Erfindung ebenfalls auf einer Steuervorrichtung zur Steuerung von gespeicherten parametrisierten Audiodaten mit Hilfe von parametrisierten Ansteuersignalen beruht, die mit Hilfe steuerbarer virtueller Objekte über eine MIDI-Schnitt- stelle zu mindestens einem elektronischen Musikinstrument übertragen werden, sollen im Folgenden die für das Verständnis der Erfindung wichtigen Aspekte des MIDI-Standards kurz dargestellt werden.
Bei der MIDI-Schnittstelle handelt es sich um ein digitales Datenübertragungsformat zwischen elektronischen Musikinstrumenten, Computern und Peripheriegeräten. Der MIDI-Standard ist heute weitverbreitet und wird seit seiner Einführung im Jahre 1983 von vielen Musikern und Komponisten verwendet.
MIDI eröffnet eine sehr effiziente Methode, Audiodaten darzustellen, und das macht MIDI nicht nur für Komponisten oder Künstler zu einem sehr attraktiven Datenübertragungsprotokoll, sondern auch für eine Vielzahl von Computer-Applikatio- nen, die in der Lage sind, Klangmuster (Sounds) zu generieren, wie beispielsweise Multimedia-Anwendungen oder Computerspiele. Dank der Veröffentlichungen der General MIDI System Specification genießen heute die gebräuchlichsten PC/MIDI- Schnittstellen weitgehend Anerkennung unter den Benutzern. Darüber hinaus wird MIDI von dem Betriebssystem Microsoft Windows und anderen Betriebssystemen unterstützt. Aufgrund der Entwicklung und Vermarktung preisgünstiger Synthesizer erfreut sich der MIDI-Standard bei kontinuierlich steigender Anzahl von Anwendungen zunehmend an Beliebtheit.
MIDI wurde ursprünglich entwickelt, um zwei oder mehrere Keyboards verschiedener Herstellerfirmen miteinander koppeln zu können. Dass jedoch mit Hilfe des MIDI-Datenformats komplette Musikproduktionen durch Sequenzer-Systeme erstellt würden, hat damals niemand vorausgesehen. Heute findet MIDI vor allem Anwendung als Übertragungsmedium, um digitalisierte Audiodaten in Computerspielen bzw. Multimedia-Applikationen zu ersetzen oder zu ergänzen. Standardisiert wurde MIDI von der MIDI Manufacturers Associa- tion (MMA) , der weltweit alle Hersteller digitaler Musikinstrumente angehören. Dieses Komitee definiert die für alle Mitglieder verbindliche Norm, unter anderem auch die im MIDI- Standard festgelegte Befehlsstruktur des MIDI-Protokolls . Ohne diesen Standard wären Inkompatibilitäten unter den Geräten verschiedener Hersteller die Folge.
Im Gegensatz zur Übertragung von analogen Audiodaten werden bei der Übertragung von Klangmustern via MIDI-Schnittstelle von einem oder mehreren Keyboards zu einem Computer (bzw. in umgekehrter Richtung) lediglich Bitsequenzen (sogenannte "MIDI-Events" ) übermittelt, welche die signifikanten akustischen Parameter der auf den einzelnen Keyboards gespielten bzw. wiederzugebenden Musikstücke in elektronisch lesbarer
Form beinhalten. Diese Programmierbefehle beinhalten MIDI-Se- quenzen, die den Synthesizer beispielsweise anweisen, welche Tonspuren bespielt werden sollen, welche Solo- bzw. Be- ςfleitinstrumente für ein Arrangement verwendet werden sollen und welche musikalischen Parameter übertragen werden. Unter akustischen Parametern versteht man im Einzelnen beispielsweise Tonhöhen, Noten- bzw. Pausenwerte, Lautstärken, Tempi, Artikulationsanweisungen, Klangfarben, Pedal-, Vibrato-, Chorus-, Hall-, Oberton- und/oder andere Spezialeffekte . Im Folgenden sollen diese akustischen Parameter als "MIDI-Spiel- informationen" bezeichnet werden. Bei der Wiedergabe der Audiodaten auf einem Keyboard handelt es sich also nicht um analoge Aufzeichnungen von zuvor auf einem Keyboard eingespielter Musikstücke, sondern um die exakte Reproduktion des Aufnahmevorgangs selbst. Die polyphonen Stimmen eines Wiedergabe-Synthesizers sind dabei zumindest teilweise belegt.
Im Vergleich zur Verwendung von abgetasteten Audiodaten, die auf einer Diskette oder einer CD-ROM gespeichert sind, weist die Erzeugung von Klangmustern (Sounds) mit Hilfe von MIDI- Synthesizern viele~Vorteile auf. Einer dieser Vorteile betrifft den zur Speicherung der parametrisierten Audiodaten benötigten Speicherplatz. Dateien, in denen normalerweise digital abgetastete Audiodaten in einem PCM-Format abgespei- chert werden (wie z.B. " .WAV'-Dateien) , sind in der Regel ziemlich groß. Das trifft insbesondere für lange Musikstücke zu, die in Stereoqualität bei hoher Abtastrate aufgenommen wurden. Im Gegensatz dazu sind MIDI-Dateien extrem klein. Beispielsweise enthalten Dateien, in denen hochwertige abge- tastete Audiodaten in Stereoqualität gespeichert sind, circa 10 MByte pro Minute abgespielter Musik, während eine typische MIDI-Sequenz eine Größe von weniger als 10 kByte pro Minute abgespielter Musik aufweist. Das ist deswegen, der Fall, weil MIDI-Dateien - wie bereits erwähnt - nicht die abgetasteteten Audiodaten enthalten, sondern lediglich die Programmierbefehle, die von einem Synthesizer benötigt werden, um den gewünschten Sound zu generieren.
Da die MIDI-Spielinformationen keine unmittelbaren Informa- tionen über die Art der repräsentierten Audiodaten transportieren, sind einzelne akustische Parameter dieser MIDI-Spielinformationen nachträglich beliebig austauschbar. Dies birgt ebenfalls große Vorteile:
- Ein Komponist kann sein Werk nachträglich variabel instrumentieren bzw. umarrangieren.
- Die beim Einspielen möglicherweise aufgetretenen Fehler
(z.B. "falsche Töne") können nachträglich korrigiert wer- den .
- Mehrere Synthesizer können beispielsweise ein und dieselbe Stimme wiedergeben (Unisono) , um mehr Klangfülle zu erzielen u.v.m. Die zusätzliche Möglichkeit, auf einem oder mehreren Synthesizern oder anderen elektronischen Musikinstrumenten eingespielte Musikstücke auf dem Bildschirm zu editieren, also einzelne Noten oder Pausen, Notengruppen oder ganze Notensysteme verändern, ergänzen, löschen, verschieben bzw. transponieren zu können, vereinfacht die Arbeit eines Komponisten beträchtlich.
Ein komplettes MIDI-Wort besteht in der Regel aus drei Byte. Zuerst wird das sogenannte Status-Byte gesendet. Es handelt sich dabei um eine Mitteilung, um welche Art von Nachricht es sich handelt. Dem Status-Byte folgen zwei Daten-Bytes, die Angaben über den jeweiligen Inhalt der Nachricht enthalten. Das folgende Beispiel bezieht sich auf die MIDI-Darstellung für das "Anschalten" eines Tons mittlerer Tonhöhe (c1) , der in einer mittleren Lautstärke (ital.: "Mezzoforte", mf) erklingen soll:
Figure imgf000021_0001
Das erste Bit (engl.: "Most Significant Bit", MSB) in der Binärdarstellung des Status-Bytes ist immer mit dem Wert "1" belegt, bei Daten-Bytes hat das MSB stets den Wert "0". Auf diese Weise lassen sich Status- und Datenbytes eindeutig unterscheiden. Für die Dezimalwerte Zs für ein Status-Byte gilt infolge der "1" im MSB: Zs e [128ι0; 25510] . Da bei den Daten- Bytes das MSB auf "0" gesetzt ist, also nicht mehr als Wertindikator herangezogen werden kann, verbleiben für die Daten- Bytes nur noch jeweils sieben Bits, so dass folglich für die
Dezimalwerte ZDi bzw. ZD2 der beiden Daten-Bytes gilt: ZD1 e [010;12710] und ZD2 e [0lo;12710]. Diese 128 verschiedenen "Note On"- bzw. "Note Off-Kombinationen reichen völlig aus, da 128 verschiedene Tonhöhen - angeordnet in einer gleichschwebend- temperierten, chromatischen Tonskala (d.h. im Abstand von Halbton-Intervallen) - den Tonumfang (Ambitus) eines modernen Konzertflügels mit 88 Tasten weit übersteigt.
Um einzelne Geräte innerhalb eines MIDI-Systems gezielt ansprechen zu können, existieren insgesamt 16 MIDI-Kanäle. Der MIDI-Kanal des Senders muss dabei mit dem des jeweiligen Empfängers identisch sein. Grundsätzlich gilt dabei, dass eine MIDI-Datenleitung alle Spieliriformationen auf allen 16 MIDI- Kanälen transportiert, wobei die angeschlossenen Tonerzeuger die Nachrichten selektieren, die ihnen jeweils zugedacht sind. Mit Hilfe der letzten vier Bits des Status-Bytes wird dabei die Adresse Ak eines selektierten MIDI-Kanals k (wobei k e { 010, ... , 15ι0} bzw. Ak e { 00002, ... , 11112} ) übertragen. Das bedeutet, dass nur die ersten vier Bits des Status-Bytes die Status-Information einer MIDI-Sequenz (z.B. "Note On", "Note Off" etc.) beinhalten.
Figure imgf000022_0001
Für das Beispiel des oben beschriebenen "Note On"-Befehls bedeutet das konkret, dass der erste Kanal (k = 0) mit der Adresse A = 00002 selektiert wurde. Wird ein Byte eines solchen MIDI-Wortes von einem Synthesizer empfangen, wird zunächst anhand des MSB geprüft, ob ein Status-Byte oder ein Daten-Byte vorliegt. Der Empfänger muss darüber hinaus alle Status-Bytes hinsichtlich ihrer Kanala- dressierung überprüfen, die er, beauftragt durch die jeweilige MIDI-Kanal-Einstellung, empfangen uss. '-Wird ein MIDI- Event mit der ihm zugedachten Adresse entdeckt, entschlüsselt der Empfänger die dem Status-Byte folgenden Daten-Bytes und generiert die entsprechenden Töne. Man kann dieses Prinzip mit der Lesart eines Chorsängers bzw. Instrumentalisten vergleichen, der beim Singen bzw. Spielen eines Musikstücks aus einem polyphonen Tonsatz, einem Arrangement oder einer Partitur lediglich die ihm zugedachte Stimme herausliest.
Im Folgenden sollen die Funktionen von zwei der gebräuchlichsten Steuervorrichtungen, die bei Synthesizern und Masterkeyboards anzutreffen sind, kurz beschrieben werden: das "Pitch Bend Wheel" zur stufenlosen Verstimmung der Tonhöhen von Tönen angeschlagener Tasten eines Synthesizers und das "Modulation Wheel" zur Modulation der Klangfarbeneigenschaften der Tonhöhen von Tönen angeschlagener Tasten eines Synthesizers .
Das MIDI-Datenformat sieht als kleinstmoglich.es Intervall zwischen verschiedenen Tonhöhen gleichschwebend-temperierte Halbtonschritte bzw. "Chromas" vor (also enharmonisch äquivalente Intervalle wie übermäßige Primen, kleine Sekunden bzw. doppelt verminderte Terzen) . Um eine stufenlose Frequenz-Va¬ riation (engl.: "Pitch Bending") zu erreichen, werden soge- nannte Pitch-Bend-Wheel-Daten benötigt, die mit einem entsprechenden Steuerinstrument des Synthesizers (dem "Pitch Bend Wheel") erzeugt werden können. Es handelt sich dabei meist um ein Rad oder (seltener) einen in vier Richtungen beweglichen Joystick. Bei Synthesizern, die mit diesen Pitch Bend Wheels ausgestattet sind, lassen sich die Tonhöhen der Tasten, welche auf der Tastatur des Synthesizers niedergedrückt werden, durch eine Drehbewegung am Pitch Bend Wheel in Flichtung höherer bzw. tieferer Frequenzen verstimmen. Normalerweise können damit Verstimmungen von bis zu einem gleich- schwebend-temperierten Ganzton in Richtung höherer bzw. tieferer Frequenzen erzeugt werden. Das Pitch Bend Wheel ist in der Regel mit einem Rückholmechanismus ausgestattet, der beim Loslassen des Rades wieder zur Mittel- bzw. Normalstellung zurückspringt. Diese Stellung entspricht dabei den Tonhöhen der niedergedrückten Tasten bei Zugrundelegung der gleich- schwebenden-temperierten Stimmung.
Mit Hilfe einer Modulationsfunktion, die üblicherweise mit einem weiteren Steuerinstruments des Synthesizers (dem "Modulation Wheel") vorgenommen werden kann, können die Töne der auf der Tastatur des Synthesizers angeschlagenen Tasten optional mit einem Vibrato-Effekt versehen werden. Alternativ kann dieses Steuerinstrument auch zur Erzielung anderer Effekte eingesetzt werden, etwa um die Klanghelligkeit bzw. die Resonanz der gespielten Töne durch eine Änderung ihres Obertonspektrums zu mofifizieren. Wird das Modulation Wheel bis zu einem ersten Anschlagspunkt zugedreht, ist die Effekttiefe minimal; wird es bis zu einem gegenüberliegenden zweiten Anschlagspunkt aufgedreht, ist die Effekttiefe maximal.
Um die Ansteuerung einzelner MIDI-Funktionen mit Hilfe von parametrisierten Ansteuersignalen erklären zu können, soll im Folgenden kurz auf die wichtigsten der dazu nötigen MIDI-Con- troller eingegangen werden.
Mit Hilfe des ersten Daten-Bytes eines MIDI-Wortes können maximal 128 verschiedene Controller-Adressen und damit bis zu 128 verschiedene Spielhilfen oder andere MIDI-Funktionen an¬ gesprochen werden. Das zweite Daten-Byte ist für den Regelbe- reich verantwortlich. Beispielsweise kann mit Hilfe des für Frequenzmodulationen zuständigen Controllers Nr. 1 den vom
Synthesizer erzeugten Klängen ein Vibrato- bzw. Tremolo-Effekt hinzugefügt werden. In der folgenden Tabelle sind die gebräuchlichsten Controller mit ihren Nummern (Adressen) und Bezeichnungen aufgelistet:
Figure imgf000025_0001
Die Adressen 12 bis 31 sind nicht belegt und bieten dem Anwender Möglichkeiten freier Zuordnungen von MIDI-Funktionen. Je nach Beschaffenheit des jeweiligen Synthesizers können diesen Adressen mitunter sehr ausgefallene physikalische Parameter zugewiesen werden, z.B. Oszillatorfrequenz oder Puls- weite der generierten Schwingungen.
Die Controller 32 bis 38 dienen dazu, den Wertebereich der Controller-Adressen 1 bis 6 feiner aufzulösen. Dasselbe wird auch von den Controller-Nummern 39 bis 63 für die Adressen 7 bis 31 bewirkt.
Die bisher beschriebenen Spielhilfen zeichnen sich durch eine gemeinsame Eigenschaft aus: Sie lassen sich (in 128 oder mehr Einzelschritten) stufenlos regeln. Der Oberbegriff für diese
Controller lautet "Continuous Controller". Im Gegensatz dazu existieren weitere Controller, die Schalterfunktionen übernehmen und daher allgemein "Switch Controller" genannt werden. Die folgende Tabelle gibt eine Übersicht über die wichtigsten dieser Controller:
Figure imgf000026_0001
Bei genauerer Betrachtung des zweiten Daten-Bytes von Controller 64 findet man nur zwei Werte vor, nämlich
00000000, (= 010) für "Pedal Off" und (= 127ιo) für "Pedal On" .
Das MIDI-Datenformat lässt prinzipiell jedoch eine differenziertere Interpretation des Wertebereichs 110 bis 126ι0 zu. Beispielsweise kann so auch ein mehrstufiger Sustain-Effekt vorgesehen sein. Bei Synthesizern, die diesen mehrstufigen Sustain-Effekt zulassen, wird die Abklingphase von Klan- fereignissen bei "halb" heruntergetretenem Pedal im Vergleich zur Abklingphase von Klangereignissen gleicher Tonhöhe und Lautstärke bei bis zum Anschlag heruntergetretenem Pedal entsprechend verkürzt.
Normalerweise sind die Controller-Adressen, z.B. für das Modulationsrad, das Haltepedal oder mit dem Fuß bedienbare Schweller zur Beeinflussung der Dynamik, bereits festgelegt. Wenn eine dieser Spielhilfen benutzt wird, steht die gesendete Controller-Adresse fest. Moderne Synthesizer und Master- Keyboards verfügen jedoch darüber hinaus auch über frei definierbare Controller, d.h. den dafür vorgesehenen Spielhilfen (Pedalen, Schwellern, Rädern und Schiebereglern) kann eine beliebige Controller-Nummer zugewiesen werden. Einige Tonerzeuger gestatten wiederum die Neudefinition der Controller- Funktionen im Gerät selbst. Dabei kann die empfangene Controller-Nummer einer internen Funktion frei zugewiesen wer- den.
Zur Klangerzeugung mit Hilfe von elektronischen Musikinstrumenten, Computern bzw. Sound-Karten sind heute eine Vielzahl von verschiedenen Technologien .und Verfahren im Einsatz. Zwei weit verbreitete Techniken der Klangerzeugung mit Hilfe elektronischer Musikinstrumente sind Frequenzmodulation (FM-Syn- these) und die Verwendung von Wavetables (WAV-Synthese) .
FM-Synthese ist ein Verfahren, das von Sound-Karten und Com- putern benutzt wird, um die Klangfarben von akustischen Musikinstrumenten durch elektronische Mittel nachzuahmen. Mit Hilfe von FM-Synthese generierte Klänge sind als solche leicht erkennbar - im Gegensatz zu Klangmustern, die durch WAV-Synthese mit Hilfe von Wavetables erzeugt wurden. Master- Keyboards und Synthesizer, die über Wavetables verfügen, sind verhältnismäßig kostspielig, werden aber oft von vielen Berufs- und Hobbymusikern wegen ihrer hohen Abspielqualität bevorzugt. Die Klangmuster werden dabei von Wavetables erzeugt, die gespeicherte, digital abgetastete Original-Klänge (engl.: "Samples") von akustischen Musikinstrumenten miteinander kombinieren und/oder reproduzieren. Verglichen mit der FM-Synthese, bei der elektronische Klänge mit Hilfe des Computers erzeugt werden, erscheinen Wavetable-Klang uster somit wesentlich realistischer. Mit Hilfe von Sound-Karten können die Möglichkeiten herkömmlicher Computer zur Erzeugung von Audiosignalen und Klangmustern erweitert werden. Sound-Karten sind unerlässlich für jede Applikation, die Sound-Effekte verwendet. Um analoge Audiodaten in die digitale Rechnersprache übersetzen zu können, verfügen Sound-Karten über entsprechende Vorrichtungen zur Digitalisierung analoger Klänge. Dabei basiert die Klangerzeugung durch eine Sound-Karte entweder auf einer FM-Synthese oder einer WAV-Synthese.
AUFGABE DER VORLIEGENDEN ERFINDUNG
Ausgehend von dem oben genannten Stand der Technik, widmet sich die vorliegende Erfindung?.der Aufgabe, komfortable und zuverlässig arbeitende Verfahren bereitzustellen, mit deren Hilfe dem Anwender eine aktive Steuerung von virtuellen und/oder realen Objekte ermöglicht wird, wobei die bereits vorhandenen Fertigkeiten des Benutzers zur Aussendung von Information genutzt werden. Insbesondere soll dabei die Bewe- gungssteuerung von Objekten in Echtzeit bzw. die Echtzeit- Steuerung von elektronisch erzeugten Audiosignalen vereinfacht werden.
Diese Aufgabe wird erfindungsgemäß durch die Merkmale der un- abhängigen Patentansprüche gelöst. Vorteilhafte Ausführungsbeispiele, die den Gedanken der Erfindung weiterbilden, sind in den abhängigen Patentansprüchen definiert.
ZUSAMMENFASSENDE DARSTELLUNG DER VORLIEGENDEN ERFINDUNG
Die Erfindung schlägt zur Lösung der im vorangehenden Abschnitt definierten Aufgabe vor, ein effizientes Verfahren zur grafischen Visualisierung und Echtzeit-Ansteuerung von virtuellen oder realen Objekten zur Erzeugung und/oder Be- einflussung von Bild- bzw. Tonsequenzen, mit dessen Hilfe auf einem Bildschirm dargestellte oder reale Objekte durch interaktive Steuerbefehle eines Benutzers in ihren Eigenschaften und/oder Aktionen auf eine komfortable und zuverlässige Weise in Echtzeit manipuliert, gesteuert bzw. beeinflusst werden können. Insbesondere beinhaltet die vorliegende Erfindung ein Verfahren zur Animation und Bewegungssteuerung eines Gelenk- Objekts in (Quasi-) Echtzeit, ein Verfahren zur frei spezifizierbaren Steuerung von optischen bzw. akustischen Parametern, ein Computersoftware-Produkt zur Ausführung eines solchen Verfahrens sowie ein System zur Echtzeit-Bewegungssteuerung von virtuellen oder realen Objekten.
Die vorliegende Erfindung bezieht sich insbesondere auf Eingabegeräte, die Ansteuersignale für verschiedene, voneinander unabhängige Freiheitsgrade erzeugen können, und dies jeweils durch Analogsignale. Jedes dieser Analogsignale kann somit als Parameterwert bei der Ansteuerung virtueller Objekte verwendet werden.
Bei den dabei verwendeten Technologien zur Eingabe der vom Benutzer abgesetzten Steuerbefehle handelt es sich im Gegensatz zu herkömmlichen manuell bedienbaren, mechanischen bzw. berührungssensitiven Eingabemechanismen über Tastatur, Maus, Trackball, Joystick, Grafiktablett mit Griffel, taktile Dis- plays etc. um Vorrichtungen zur Aufnahme, Erkennung, Interpretation und Verarbeitung dreidimensionaler Bewegungen eines Benutzers. Der Benutzer ist somit nicht mehr auf das Vorhandensein zusätzlicher Hardware-Vorrichtungen zur manuellen Eingabe von Steuerbefehlen angewiesen. Die Auswertung der eingegebenen Information kann stattdessen bzw. zusätzlich mit Hilfe von Methoden der Signal- bzw. Mustererkennung erfolgen. Ferner kann die Art des Eingabeverfahrens speziell auf die individuell vorhandenen Fähigkeiten des Benutzers zugeschnitten sein. Ein Aspekt der vorliegenden Erfindung ist es, dass Referenzmuster zur Animation und Bewegungssteuerung von Objekten, zur Gestaltung von Form, Farbe und Struktur der Oberflächen virtueller Objekte sowie zur Erzeugung und/oder Beeinflussung von Bild- bzw. Tonsequenzen vorab abgespeichert werden. Diese Referenzmuster können dann - abhängig von den Ansteuersignalen des Benutzers - als Parameterwerte zur Erzeugung und/oder Beeinflussung von Animationseffekten, zur Oberflächengestaltung der Objekte, zur Steuerung bzw. gezielten Manipulation von Video- bzw. Audiodaten etc. in Echtzeit abgerufen werden. Das Hinterlegen der jeweiligen Referenzmuster kann dabei standardisiert erfolgen, so dass aufbauend auf einer solchen Echtzeit-Steuerung eine Änderung der oben genannten Parameterwerte durch ein modulartiges Austauschen der jeweiligen Referenzmuster an einer entsprechenden Schnittstelle der
Echtzeit-Steuerung mit verhältnismäßig geringem Aufwand erfolgen kann.
1.Verfahren zur Animation und Bewegungssteuerung eines Ge- lenk-Objekts in Echtzeit durch Ansteuerung mit Hilfe para- metrisierter Bewegungsmuster
Gemäß der zugrunde liegenden Erfindung ist es möglich, auf eine vollständige Neuprogrammierung eines Echtzeit- Bewegungsablaufes zu verzichten; vielmehr können bekannte Bewegungsmuster über eine standardisierte Schnittstelle in pa- rametrisierter Form einer Echtzeit-Bewegungssteuerung zur Verfügung gestellt werden.
Ein bevorzugtes Ausführungsbeispiel der zugrunde liegenden Erfindung beruht auf einem Verfahren zur Echtzeit-Bewegungssteuerung eines Gelenk-Objekts. Dabei wird zunächst wenigstens ein parametrisiertes Bewegungsmuster zu wenigstens einem Oberflächenmuster für das Objekt definiert. Werden dann mit Hilfe eines Eingabegeräts Ansteuersignale in die Echt- zeit-Bewegungssteuerung eingegeben, berechnet diese Skelett-
Anderungsdaten (d.h. die Lageanderungen der Konturen eines virtuellen Objekts bzw. eines Gerusts, bestehend aus den durch Kanten verbundenen Gelenkpunkten eines virtuellen Ob- ekts) als Parameterwerte auf Grundlage der Ansteuersignale und wenigstens eines parametrisierten Bewegungsmusters. Dabei geben die Skelett-Anderungsdaten translatoπsche und/oder ro- tatoπsche Änderungen der Lage bzw. Orientierung der Gelenke des Objekts wieder. Schließlich wird die Oberflache des vir- tuellen Gelenk-Objekts auf Grundlage der Skelett-Anderungsdaten und wenigstens eines Oberflachenmusters berechnet. Indem die zuletzt genannten Schritte dicht aufeinanderfolgend wiederholt werden, erhalt man (abhangig von den Ansteuersignalen des Benutzers) eine Bewegungssteuerung des Objekts, die von einem Betrachter nicht mehr von einer Bewegungssteuerung m Echtzeit unterschieden werden kann.
Durch Austausch bzw. erneute Definition eines parametrisierten Bewegungsmusters und/oder Oberflachenmusters kann also mit sehr geringem Aufwand eine Bewegungssteuerung eines neuartigen Gelenk-Objekts erzielt werden.
Gemäß dem Ausfuhrungsbeispiel der zugrunde liegenden Erfindung können Ansteuersignale für wenigstens sechs unabhängige Freiheitsgrade simultan eingegeben und m Echtzeit verarbeitet werden. Dabei handelt es sich beispielsweise um Ansteuersignale für drei translatoπsche und drei rotatoπsche Freiheitsgrade m einem virtuellen dreidimensionalen Vektorraum.
Ausgehend von den ermittelten momentanen Positionsvektoren des Eingabegeräts , können erf mdungsgemaß insbesondere die ersten und zweiten zeitlichen Ableitungen der Ansteuersignale ( also die Geschwmdigkeits-, Beschleunigungs- , Wmkelge- schwmdigkeits- bzw. Winkelbeschleunigungsvektoren) ermittelt und verarbeitet werden. Die Steuerung ermittelt also die zeitliche Veränderung der Ansteuersignale selbst, so dass beispielsweise im Gegensatz zur bereits genannten Patentschrift US-A-5, 757, 360 kein eigener Beschleunigungssensor er- forderlich ist. Die Beschleunigung kann vielmehr durch zeitliche Auswertung der Entwicklung der Ansteuersignale mit Hilfe der Bewegungssteuerung selbst ermittelt werden. Die Zuordnung der Ansteuersignale bzw. deren zeitlicher Ableitungen als Parameterwerte für die gespeicherten Bewegungsmuster kann dabei frei spezifizierbar sein.
2.Verfahren zur Echtzeit-Steuerung von akustischen Parametern aufgezeichneter Audiodaten mit Hilfe von parametrisierten Klangmustern ..-
Darüber hinaus bzw. alternativ können in einem weiteren Ausführungsbeispiel der zugrunde liegenden Erfindung auch Audiodaten mit Hilfe von parametrisierten Ansteuersignalen des Benutzers in Echtzeit gezielt beeinflusst werden. Dabei können digital gespeicherte, parametrisierte Klangmuster, wie beispielsweise die akustischen Parameter von (gemäß dem sogenannten MIDI-Standard) digital aufgezeichneten Musikstücken, , die über die parametrisierten Ansteuersignale des Benutzers ansteuerbar sind, gezielt modifiziert werden. Diese Klangmu- ster können dann - abhängig von den jeweiligen Ansteuersignalen des Benutzers als Parameterwerte in Echtzeit abgerufen werden.
3.Verfahren zur frei spezifizierbaren Steuerung von animier- ten Grafiken, Video- und/oder Audiodaten
Nach einem weiteren Ausführungsbeispiel der vorliegenden Erfindung ist ein Verfahren zur frei spezifizierbaren Steuerung von animierten Grafiken, Video- und/oder Audiodaten mit Hilfe optischer bzw. akustischer Parameter vorgesehen. Für die Er- zeugung und/oder Beeinflussung dieser Bild- bzw. Tonsequenzen ist dabei wenigstens ein vordefiniertes parametrisiertes Be- wegungs-, Oberflächen-, Klang- und/oder Beleuchtungsmuster als Referenzmuster hinterlegt. Dazu werden Ansteuersignale verschiedener Freiheitsgrade von einem Eingabegerät ausgewertet und als Parameterwerte zur Erzeugung bzw. Beeinflussung von animierten Grafiken, Video- und/oder Audiodaten mit Hilfe mindestens eines hinterlegten Referenzmusters verwendet. Die Zuordnung der Ansteuersignale jeweils eines Freiheitsgrades zu einem bestimmten Referenzmuster ist dabei durch den Benutzer frei spezifizierbar.
Zusätzlich können gegebenenfalls zeitliche Ableitungen der Ansteuersignale einem bestimmten Referenzmuster zugeordnet werden. Die Kopplungsparameter der Zuordnung, wie beispielsweise die Dämpfung und die Verstärkung können dabei ebenfalls durch den Benutzer frei einstellbar sein.
4. Computersoftware-Produkt zur frei spezifizierbaren Steue- rung von animierten Grafiken, Video- und/oder Audiodaten
Nach einem weiteren Aspekt der vorliegenden Erfindung ist ein Computersoftware-Produkt vorgesehen, mit dessen Hilfe ein Verfahren gemäß einem der oben beschriebenen Ausführungsbei- spiele durchgeführt werden kann.
5. System zur Echtzeit-Bewegungssteuerung von virtuellen und/oder realen Objekten
Erfindungsgemäß kann auch ein System zur Echtzeit-Bewegungssteuerung von Objekten vorgesehen sein, das einen Speicher aufweist, in dem wenigstens ein parametrisiertes Bewegungsmu¬ ster und wenigstens ein Oberflächenmuster des Objekts abgelegt sind. Dieses System kann weiterhin ein Eingabegerät zur Eingabe von Ansteuersignalen für die Echtzeit-Bewegungssteue- rung aufweisen. Ferner kann ein Bewegungsgenerator vorgesehen sein, um Skelett-Änderungsdaten auf Grundlage der Ansteuersignale als Parameterwerte und wenigstens eines parametrisierten Bewegungsmusters zu berechnen. Die Skelett-Änderungsdaten geben dabei translatorische und/oder rotatorische Änderungen der Lage bzw. Orientierung der Gelenke des Objekts wieder. Außerdem kann ein Oberflächengenerator vorgesehen sein, der die Oberfläche virtueller Gelenk-Objekte auf Grundlage ihrer Skelett-Änderungsdaten und je eines ausgewählten Oberflächen- usters berechnet.
Das Eingabegerät kann zur gleichzeitigen Eingabe von Ansteuersignale für wenigstens sechs unabhängige Freiheitsgrade ausgelegt sein. Es kann dabei .insbesondere zur Eingabe von Ansteuersignalen für drei translatorische und drei rotatori- sehe Freiheitsgrade in einem dreidimensionalen Vektorraum konzipiert sein. Zusätzlich kann auch eine Einheit zur Ermittlung und Verarbeitung der zeitlichen Ableitungen dieser Ansteuersignale vorgesehen sein.
Um dem Benutzer die Echtzeit-Steuerung von gespeicherten Audiodaten zu ermöglichen, kann ferner ein Klanggenerator zur Erzeugung von Klangsignalen durch Verknüpfung digitaler para- metrisierter Klangmuster mit digitalen Ansteuersignalen, die in parametrisierter Form vorliegen, vorgesehen sein.
Darüber hinaus kann auch eine Einheit zur wahlfreien Zuordnung der Ansteuersignale bzw. derer Ableitungen als Parameterwerte für die parametrisierten Bewegungs-, Oberflächen-, Klang- und/oder Beleuchtungsmuster vorgesehen sein.
6. System zur frei spezifizierbaren Echtzeit-Steuerung von animierten Grafiken, Video- und/oder Audiosequenzen In einem weiteren Ausführungsbeispiel der vorliegenden Erfindung ist ein System zur frei spezifizierbaren Echtzeit-Steuerung von animierten Grafiken, Video- und/oder Audiosequenzen vorgesehen. Das System weist dabei einen Speicher auf, in dem zur Erzeugung und/oder Beeinflussung von animierten Grafiken, Video- und/oder Audiosequenzen in Echtzeit wenigstens ein vordefiniertes parametrisiertes Bewegungs-, Oberflächen-, Plang- und/oder Beleuchtungsmuster als Referenzmuster hinterlegt ist. Das System weist weiterhin eine Recheneinheit zur Auswertung von Ansteuersignalen verschiedener Freiheitsgrade von einem Eingabegerät als Parameterwerte zur Erzeugung und/oder Beeinflussung von animierten Grafiken, Video- und/oder Audiosequenzen mit Hilfe mindestens eines hinterlegten Referenzmusters auf. Darüber hinaus ist auch eine Ein- Stelleinheit vorgesehen, um eine frei wählbare Zuordnung von Ansteuersignalen jeweils eines Freiheitsgrads zu einem bestimmten Referenzmuster zu ermöglichen. Diese Einstelleinheit kann dabei optional die Zuordnung von zeitlichen Ableitungen der Ansteuersignale zu einem bestimmten Referenzmuster ermög- liehen. Ferner kann sie eine frei wählbare Einstellung von Kopplungsparametern der Zuordnung, wie beispielsweise der zeitlichen Dämpfung und der Verstärkung, bewerkstelligen.
Die zugrunde liegende Erfindung ist, wie ein auf diesem Ge- biet tätiger Durchschnittsfachmann leicht erkennen kann, nicht nur auf die oben beschriebenen Ausführungsbeispiele beschränkt. Über die darin offenbarten Merkmale hinaus sind zahlreiche Modifikationen und Variationen möglich, ohne sub- stanziell von dem Anwendungsbereich der vorliegenden Erfin- düng abzuweichen, wie in den Patentansprüchen offenbart ist.
KURZBESCHREIBUNG DER ZEICHNUNGEN
Weitere Eigenschaften, Merkmale, Vorteile und Zweckmäßigkei- ten der zugrunde liegenden Erfindung resultieren aus den un- tergeordneten abhängigen Patentansprüchen sowie aus der folgenden Beschreibung der bevorzugten Äusführungsbeispiele der Erfindung, welche in den folgenden Zeichnungen abgebildet sind. Hierin zeigen:
->
FIG. 1 ein vereinfachtes Blockdiagramm zur Veranschaulichung der Ein- und Ausgabesignale der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder AudioSequenzen nach dem bevorzugten Ausführungs.beispiel der zugrunde liegenden Erfindung,
FIG. 2 eine detailliertes Blockdiagramm zur Veranschaulichung der Komponenten sowie der Ein- und Ausgabesi- gnale der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen,
FIG. 3 ein Ablaufdiagramm zur Veranschaulichung der von der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen durchgeführten Aktionen,
FIG. 4 ein Blockdiagramm zur Veranschaulichung der Steuerung einzelner oder mehrerer akustischer Parameter digitalisierter Klangmuster durch ein System, bestehend aus einem Computer, dessen Steuereinheit 401 mit mindestens einem elektronischen Musikinstrument 402 über eine MIDI-Schnittstelle leitend verbunden ist und einem 3D-Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt werden können
und
FIG. 5 ein Blockdiagramm zur Veranschaulichung der Steuerung einzelner oder mehrerer akustischer Parameter digitalisierter Klangmuster durch ein System, bestehend aus einem Computer, der über einen elektronischen Tongenerator 502 und eine Sound-Karte 510 verfügt, und einem 3D-Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt werden können.
DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
Im Folgenden werden die Funktionen der in einem ersten Aus- führungsbeispiel der vorliegenden Erfindung enthaltenen Baugruppen, wie in den Figuren 1 bis 5 abgebildet, näher beschrieben.
Bezugnehmend auf Figur 1, soll die vorliegende Erfindung zu- nächst schematisch erläutert werden. Die Mensch-Maschine- Schnittstelle wird repräsentiert durch das Eingabegerät 104. Dabei handelt es sich insbesondere um ein sogenanntes 3D-Ein- gabegerät, das beispielsweise Ansteuersignale 116 für sechs voneinander unabhängige Freiheitsgrade erzeugen kann, wenn es entsprechend durch einen Benutzer manipuliert wird. Diese Freiheitsgrade umfassen beispielsweise drei translatorische Freiheitsgrade, die im Folgenden als x, y und z bezeichnet werden, sowie drei rotatorische Freiheitsgrade, die im Folgenden als φκ, φy und φz bezeichnet werden. Dabei bezeichnen die Variablen x, y und z die orthogonalen Achsen eines dreidimensionalen kartesischen Koordinatensystems. Dieses lässt sich mathematisch als dreidimensionaler Vektorraum V beschreiben, der durch eine Orthonormalbasis, bestehend aus den orthonor alen Einheitsvektoren ex , ey und e2 , repräsentiert wird. Werden diese Variablen in Vektorschreibweise zusammen- gefasst, so ergeben sich zu jedem diskreten Zeitpunkt n (nach Weglassen der Einheiten) :
der Ortsvektor x (n) := [x (n) , y (n) , z (n) ] τ e <-?°3 und der Drehrichtungsvektor φ (n) := [ φx (n) , φ (n) , φz (n) ] τ e *->° 3.
Der transformierte Ortsvektor xτ(x,Δx), der sich nach der Translation eines Punktobjekts P mit dem Ortsvektor x um die Wegdifferenzen Δx, Δy und Δz in Richtung der jeweiligen Achsen x, y bzw. z ergibt, kann in diesem Vektorraum V auf ein- fache Weise durch Addition des Ortsvektors x und einer Linearkombination der orthonormalen Einheitsvektoren ex , ey und ez ausgedrückt werden:
xτ ( x,Δx ) := x + Δx mit Δx := Δx-ex + Δy-ey + Δz-e. V Δx,Δy,Δz e «5>».
Die Variablen φκ, φy und φz bezeichnen die Drehrichtung virtueller Objekte um die x-, y- bzw. z-Achse dieses Koordinatensystems. Der transformierte Ortsvektor xR (x,Δφ), der sich nach der Rotation eines Punktobjekts P mit dem Ortsvektor x um die Drehwinkel Δφx, Aφγ bzw. Δφz ergibt, kann in diesem Vektorraum V wie folgt ausgedrückt werden:
x.R ( x , Δφx, Aφyfz) := Rz(Δφz) Ry(Δφy) Rχ(Δφχ) • x mit Δφ := [Δφ*, Δφz] τ V Aφy., Aφyr Δφz e ^», wobei die Drehmatrizen Rx(Δφx), Ry(Δφy) und Rz(Δφz) wie folgt definiert sind:
R*(Δφ
Figure imgf000039_0001
cos(Δφy) 0 Sliln(Δφy)
Ry(Δφy) 1 0 und
-sin(Δφy) 0 cos(Δφy y)'J
'cos(Δφz) -sin(Δφ2) 0
Rz(Δφ2) sin(Δφz) cos(Δφz) 0
0
Selbstverständlich können z.B. mit Hilfe von Tastensteuerun¬ gen oder Schaltern verhältnismäßig einfach noch weitere Frei- heitsgrade hinzugefügt werden. Dabei ist anzumerken, dass Schalter bzw. Tasten in der Regel binäre Ansteuersignale (Ein/Aus) erzeugen, wohingegen die oben genannten drei translatorischen Freiheitsgrade x, y bzw. z bzw. die drei rotato- rischen Freiheitsgrade φx, φy bzw. φz jeweils analoge Ansteuersignale ergeben können, die dann beispielsweise bei byteweiser Kodierung in 28 = 256 Stufen als digitale Signale zur weiteren Verarbeitung zur Verfügung stehen.
Da die drei translatorischen und die drei rotatorischen Frei¬ heitsgrade x, y, z, φκ, φy bzw. φz als „Analogsignale" bzw. in 256 Stufen quantisierte digitale Signale aufzufassen sind, kann gemäß der vorliegenden Erfindung auch die zeitliche Veränderung dieser Ansteuersignale 116 durch die weiter unten dann näher beschriebene frei spezifizierbare Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequen- zen ausgewertet werden. Insbesondere ist es also möglich, zu jedem diskreten Zeitpunkt n (nach Weglassen der Einheiten) die dreidimensionalen Vektoren für
die Geschwindigkeit v (n) := [ x (n) , y (n) , z (n) ] τ e «s*»3, die Beschleunigung a (n) := [ x (n) , y (n) , z (n) ] τ e \-*>3, die Winkelgeschwindigkeit ώ (n) := [ φx (n) , φy (n) , φz (n) ] τ e'
sowie die Winkelbeschleunigung (n) := [ φx (n) , φy (n) , φz (n) ] τ e ss*>3
der Freiheitsgrade x, y, z, φx r φy bzw. φz zu erfassen und gegebenenfalls als weitere Freiheitsgrade unabhängig von dem Absolutwert der jeweiligen Ansteuersignale 116 zu verwerten. Dabei sind seitens des Eingabegeräts 104 keine weiteren Sensoren (z.B. Geschwindigkeits- bzw. Beschleunigungssensoren) notwendig.
Während also eingabeseitig die Ansteuersignale 116 von dem 3D-Eingabegerät 104 der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen gemäß der vorliegenden Erfindung zugeführt werden, gibt diese abhängig von diesen Ansteuersignalen 116 Animations- Ausgabesignale 120 aus, mit Hilfe derer eine 3D-Animation 114 beispielsweise auf dem Bildschirm eines Computer erzeugt werden kann. Diese 3D-Animation 114 kann folgendes umfassen:
- ansteuerbare Bewegungsmuster 106 wenigstens eines bewegbaren Gelenkkörpers, - ansteuerbare Oberflächenmuster 108 des Gelenkkörpers und/oder seiner Umgebung,
- ansteuerbare Klangmuster 110 und/oder - ansteuerbare Beleuchtungsmuster 112 für den Gelenkkörper und/oder seine Umgebung.
Dabei ist darauf hinzuweisen, dass die Erzeugung dieser SD- Animation 114 bezüglich der Ansteuersignale 116 in Echtzeit ausgeführt wird. Es ist also im Gegensatz zu manchen bekannten Beispielen nach dem Stand der Technik normalerweise nicht notwendig, Ton- oder Bildsequenzen vorab abzuspeichern, um sie dann auf Knopfdruck auszulösen.
Ein großer Vorteil der vorliegenden Erfindung ist es, dass für eine neu zu erzeugende 3D-Animation 114 nicht eine vollständig neue Programmierung erfolgen muß, wie es nach dem Stand der Technik der Fall ist'.. Vielmehr können gespeicherte Bewegungsmuster 106, Oberflächenmuster , 108, Klangmuster 110 und/oder Beleuchtungs uster 112 schnittstellenartig mit der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen verbunden werden. Durch Austausch bzw. erneute Spezifikation wenigstens eines der genannten Muster kann in einfacher Weise eine völlig neuartige 3D-Animation 114 erzeugt werden. Der Programmieraufwand zur Erstellung einer neuen 3D-Animation 114 wird somit deutlich verringert.
Da das Gehirn bei verschiedenen Tiergattungen sowie beim Menschen im Zuge der Evolution hinsichtlich der räumlichen Wahrnehmung und Verarbeitung von Bewegungsmustern äußerst komplexe Informationsmengen pro Zeiteinheit verarbeiten kann, wird in einem bevorzugten Ausführungsbeispiel der zugrunde liegen- den Erfindung in einfacher Weise auf diese erlernten und vererbten Fähigkeiten zurückgegriffen, indem bekannte Bewegungsmuster modulartig über eine standardisierte Schnittstelle der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen zur Verfügung ge- stellt werden. Es ist anzumerken, dass das 3D-Eingabegerät 104 nur ein Beispiel für ein Eingabegerät zur Erzeugung von Ansteuersignalen 116 darstellt. Grundsätzlich ist jede andere Art von Eingabe- gerät ebenfalls geeignet, wobei indessen das 3D-Eingabegerät 104 den großen Vorteil aufweist, dass die Eingabe von Ansteu- .e.rsignalen 116 von unterschiedlichen Freiheitsgraden in besonders intuitiver Weise erfolgen kann. Hinsichtlich der konkreten Ausführungsformen von solchen 3D-Eingabegeräten 104 wird auf den in der Beschreibungseinleitung zitierten Stand der Technik verwiesen. Derartige Produkte sind beispielsweise von der Firma LogiCad3d im Handel erhältlich.
Bezugnehmend auf Figur 2 soll .nunmehr im Detail der Aufbau der erfindungsgemäßen frei spezifizierbaren Echtzeit-Steue- rüng 102 für animierte Grafiken, Video- und/oder Audiosequenzen erläutert werden. Die grau unterlegten Pfeile 116 und 120 zeigen die in Echtzeit ablaufende Ein- bzw. Ausgabe von Signalen von bzw. zu der frei spezifizierbaren Echtzeit-Steue- rung 102, nämlich die Ansteuersignale 116 (x, y, z, φκ, φy bzw. φz ) von dem 3D-Eingabegerät 104 und die Animations-Aus- gabedaten 120.
Wie aus Figur 2 ersichtlich, werden die Ansteuersignale 116 einem Freispezifizierungsmodul 202 zugeführt. Eine Funktion des Freispezifizierungsmoduls 202 ist es, aus den Absolutwerten der eingegebenen „Analogdaten" x, y, z, φx, φy bzw. φz die ersten zeitlichen Ableitungen (Geschwindigkeiten bzw. Winkel- ςjeschwindigkeiten) bzw. die zweiten zeitlichen Ableitungen (Beschleunigungen bzw. Winkelbeschleunigungen) zu ermitteln. Somit kann ohne Zuhilfenahme eines zusätzlichen Sensors (Beschleunigungssensor) beispielsweise die Geschwindigkeit und die Beschleunigung bezüglich der genannten „Analogdaten" unter den Ansteuersignalen 116 ermittelt werden. Eine zweite wichtige Funktion des Freispezifizierungsmoduls 202 ist es, die Ansteuersignale 116 der verschiedenen Freiheitsgrade den Komponenten zur Erzeugung und/oder Beeinflus- sung der Grafiken, Bild- bzw. Tonsequenzen, also dem Bewegungsgenerator 204, dem Oberflächengenerator 206, dem Akustikgenerator 208 bzw. dem Beleuchtungsgenerator 210, zuzuordnen. Es kann also beispielsweise für den Benutzer eine Maske bei der Initialisierung der erfindungsgemäßen Echtzeit- Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen vorgesehen sein, die dem Benutzer den Zugriff auf das Freispezifizierungsmodul 202 derart ermöglicht, dass der Benutzer je einen Freiheitsgrad der Ansteuersignale 116 einer der oben genannten Komponenten -zur Erzeugung und/oder Beein- flussung der Grafiken, Bild- bzw. Tonsequenzen zuordnen kann.
Darüber hinaus kann der Benutzer mit Hilfe dieses Freispezi- fizierungsmoduls 202 die Kopplungsparameter der Zuordnung von .Ansteuersignalen zu abgespeicherten Referenzmustern frei ein- stellen, wie beispielsweise zur Durchführung einer spektralen Filterung zur Dämpfung bzw. Verstärkung der Signalkomponenten von Audiosignalen in vorgebbaren Frequenzbereichen. Die einstellbaren Kopplungsparameter legen dabei die zeitliche Kopplung sowie die Dämpfung bzw. Verstärkung der Veränderung des entsprechenden Referenzmusters abhängig von dem zugewiesenen Ansteuersignal und somit das Signalantwortverhalten des Systems fest. Abhängig von der Spezifizierung durch den Benutzer bewirkt also das Freispezifizierungsmodul 202, dass die Kopplungsparameter der Zuordnung - wie zum Beispiel die Dä p- fung bzw. Verstärkung - frei einstellbar sind. Werden beispielsweise die Kopplungsparameter bezüglich des Bewegungsmusters einer Gehbewegung des Gelenk-Objekts verändert, kann von einer dynamischen auf eine hinkende Gehbewegung- stufenlos umgestellt werden. Erfindungsgemäß können dadurch ebenfalls verschiedene Stimmungen oder Emotionen, ausgedrückt durch die Mimik eines dargestelltes Gesichts, eingestellt werden. Die
Bewegungsmuster können dabei wie folgt mit den Stimmungsmustern gekoppelt sein:
Figure imgf000044_0001
Der Benutzer kann also stufenlos zwischen der Gehbewegung eines jungen Sportlers und der eines alten Mannes auswählen und, damit gekoppelt, in einfacher Weise verschiedene Charaktere und/oder Stimmungen auswählen.
Im Sinne einer höherwertigen Zuordnung ist es auch möglich, anstelle der Einstellung einzelner Kopplungsparameter ledig- lieh im Zuge der Spezifizierung den Charakter (jung/alt etc.) und/oder die Stimmung (lustig/traurig etc.) anzuwählen, wobei das Freispezifizierungsmodul 202 dann automatisch die einzelnen Kopplungsparameter (beispielsweise für den Gang, das Gesicht etc.) einstellt. Anstelle der Einstellung einzelner Kopplungsparameter ermöglicht diese höherwertige (verknüpfte) Zuordnung also die Wahl eines Charakters und/oder einer Stimmung. Die Wahl der Stimmung kann dabei Einfluß auf verschiedene Muster haben, so dass beispielsweise gleichzeitig die Vertonung, die Szenenbeleuchtung und die Bewegung verändert werden. Es können also durch eine Aktion des Benutzers sowohl mehrere Kopplüngsparameter eines Musters wie auch mehrere Kopplungsparameter verschiedener Muster (Bewegung, Oberflä- ehe, Bild und/oder Ton) automatisch verändert werden. Somit können Choreographien erstellt werden, die eine Echtzeit-An- steuerung einer Charakter-Figur und des Hintergrunds verwen¬ den.
Abhängig von der Spezifizierung durch den Benutzer ordnet das Freispezifizierungsmodul 202 die entsprechenden Ansteuersignale 116 wie folgt zu:
- als parametrisierte Bewegungs-Ansteuersignale 212 einem Be- wegungsgenerator 204,
- als parametrisierte Oberflächen-Ansteuersignale 214 einem Oberflächengenerator 206,
- als parametrisierte Akustik-Ansteuersignale 216 einem Akustikgenerator 208 und/oder - als parametrisierte Beleuchtungs-Ansteuersignale 218 einem Beleuchtungsgenerator 210.
Der Bewegungsgenerator 204 verknüpft die ihm zugewiesenen Bewegungs-Ansteuersignale 212 mit wenigstens einem vordefinier- ten parametrisierten Bewegungsmuster 106 zur Erzeugung von Bewegungs-Animations-Ausgabesignale 220. Somit können also verschiedene Bewegungsmuster des virtuellen Gelenk-Ob ekts (z.B. Gehen in verschiedenen Richtungen, Bücken oder Springen etc.) in Echtzeit angesteuert werden.
Der Oberflächengenerator 206 verknüpft die ihm zugewiesenen Oberflächen-Ansteuersignale 214, die durch den Bewegungsgenerator 204 erzeugten Bewegungs-Animations-Ausgabesignale 220 sowie Daten von wenigstens einem vorgegebenen parametrisier- ten Oberflächenmuster 108 zur Erzeugung von Oberflächen-Aus- gabesignale 222. Somit kann beispielsweise eine Struktur-,
Färb-, Farbsättigungs- bzw. Helligkeitsänderung bestimmter Flächen eines bewegten Objekts und/oder seiner Umgebung ein- geleitet werden.
Der Akustikgenerator 208 verknüpft dabei die ihm zugeordneten Akustik-Ansteuersignale 216 mit wenigstens einem parametrisierten vordefinierten Klangmuster 110. Das Produkt dieser Verknüpfung sind die Klang-Ausgabesignale 224, die einen Teil der Animations-Ausgabesignale 120 darstellen. Die gespeicher¬ ten Klangmuster können beispielsweise parametrisierte digitale Audiodateien sein.
In entsprechender Weise verknüpft der Beleuchtungsgenerator 210 die ihm zugewiesenen Beleuchtungs-Ansteuersignale 218 mit wenigstens einem vordefinierten parametrisierten Beleuchtungsmuster 112 zur Erzeugung von Beleuchtungs-Ausgabesignale 226. Das Beleuchtungsmuster 112 kann dabei ein virtuelles Ob¬ jekt und/oder seine Umgebung betreffen.
Wie bereits ausgeführt sind die vordefinierten Bewegungsmuster 106, Oberflächenmuster 108, Klangmuster 110 und Beleuchtungsmuster 112 jeweils parametrisiert, so dass die entsprechenden zugeordneten Ansteuersignale durch den Bewegungsgene- rator 204, den Oberflächengenerator 206, den Akustikgenerator 208 bzw. den Beleuchtungsgenerator 210 als Parameterwerte verwendet werden können, um eine Echtzeitsteuerung der entsprechenden Muster abhängig von den Ansteuersignalen 116 aus¬ zuführen, wobei sich die Echtzeit-Ansteuerung der entspre- chenden Muster in der entsprechenden Veränderung der erzeug¬ ten Animationsdaten 220, 222, 224 und 226 niederschlägt, die insgesamt zu den Animations-Ausgabesignalen 120 zusammengefaßt werden. Der Benutzer kann also durch entsprechende Manipulation des
Eingabegeräts 104 und der entsprechenden Zuordnung durch das Freispezifizierungsmodul 202 (die durch den Benutzer selbst oder vorab durch den Hersteller eingestellt wurde) in Echt- zeit die Bewegungsmuster 106, die Oberflächenmuster (Geometrien, Texturen, etc.) 108, die Klangmuster 110 und/oder die Beleuchtungsmuster 112 ansteuern. Dabei kann er einerseits vordefinierte Muster auslösen, wozu beispielsweise ein Schalter am Eingabegerät 104 verwendet werden kann. Andererseits kann er unter Verwendung der „Analogansteuersignale" x, y, z,
(|)x, φy bzw. φ2 eine Echtzeit-Steuerung der genannten Muster ausführen.
Die Funktion der Generatoren 204, 206, 208 und 210 soll dabei anhand des Bewegungsgenerators 204 im Detail erläutert werden:
Es wird vorausgesetzt, dass im Zuge der Animation ein Gelenkkörper in Echtzeit angesteuert werden soll. Der Bewegungsge- nerator 204 berechnet also in diesem Fall laufend abhängig von den Bewegungs-Ansteuersignalen 212 die neue Position und Orientierung der Gelenke des Gelenkkörpers.
Ein Bewegungsmuster 106 wird also beispielsweise wie folgt definiert: Zuerst werden Skelettdaten definiert, die die Art und Lage der Gelenke des Gelenkkörpers beschreiben. Neben der Lage der Gelenke (Position) wird dabei auch die Art der Gelenke (beschreibbar durch Art und Anzahl der Freiheitsgrade) definiert. Für jedes Gelenk j der J Gelenke eines betrachte- ten virtuellen Gelenk-Objekts kann beispielsweise folgender String S \ definiert werden:
S := {Namβj, Position-}, Freiheitsgrade-j,
Maximale_Amplitudej, Dämpfungj, ...} für 1 < j < J
Ein Bewegungsablauf besteht also dann aus einer Liste oder einer Funktion, die festlegt, welches der definierten Gelenke sich abhangig von den parametrisierten Ansteuersignalen wann und wie bewegt. Ein Bewegungsablauf kann somit beispielsweise durch eine Liste der „abzuarbeitenden" Gelenke bestehen. Pro Zyklus wird also durch Abarbeiten der Liste oder einer Funktion berechnet, welche neue Position und/oder Orientierung der Gelenke sich aus den Einzelbeiträgen der verschiedenen Gelenke abhängig von den Ansteuersignalen ergibt.
Zu einem Zeitpunkt n berechnet sich also die Position eines Gelenks, definiert durch die Koordinaten x, y, z, sowie dessen Orientierung, definiert durch die Winkelkoordinaten φx ι φy bzw. φ~, wie folgt:
Figure imgf000048_0001
Diese Gleichung (1) wird also für jedes in den Skelettdaten definierte Gelenk berechnet. Die neue Position und Orientierung eines Gelenks zum Zeitpunkt n berechnet sich somit aus der Position im vorherigen Zyklus n-1 zuzüglich der neuen, von den Ansteuersignalen abhängigen Beiträgen
Δx-, Δy_, Δz-, Δφx , Δφy und ΔφZ/.. Jedes Gelenk j liefert somit einen Änderungsbeitrag für die
Position und Orientierung jedes Gelenks, sich selbst eingeschlossen.
Die Beiträge eines jeden Gelenks j zur Verschiebung der Position bzw. Orientierung eines jeden anderen Gelenks sowie desselben Gelenks werden nach der folgenden Formel berechnet:
[ΔXJ , Δy-j , ΔZJ , ΔφKι i , Aφy, 3 , Aφ ] τ := fj (x,y, z , φx l φyr φz, x, y, z, φx , φy , φz , x, y , z, φx , φy , φ2 ) (2) mit fj: <-»18 → ^6 V j s { 1, 2, 3, ... , J} .
Die vektorwertige Funktion fj stellt dabei eine Repräsentation dar, wie ein bestimmter Bewegungsablauf, z.B. der Gang eines Menschen, standardisiert wiedergegeben werden kann.
Bezugnehmend auf das Flußdiagramm von Figur 3, soll nun schließlich nochmals der Ablauf gemäß der vorliegenden Erfindung erläutert werden. Die Schritte 301a, 301b und 301c be- ziehen sich dabei auf einen Einstellungs- und Zuweisungsvor- ςrang in dem Freispezifizierungsmodul 202. Dieser Vorgang kann entweder durch den Benutzer oder aber auch vorab festgelegt sein. Nach dem Start in Schritt 301a kann also der Benutzer und/oder ein Programmierer durch das Freispezifizierungsmodul 202 die einzelnen Ansteuersignale 116 der verschiedenen Freiheitsgrade verschiedenen Mustern (Bewegungsmustern 106, Ober¬ flächenmustern 108, Klangmustern 110 und/oder Beleuchtungsmustern 112) zuweisen. In einem Schritt 301c können dann die Kopplungsparameter zwischen den Ansteuersignalen und den tat- sächlich in Echtzeit ausgeführten Änderungen der entsprechenden Muster eingestellt werden. Diese Kopplungsparameter können beispielsweise die Dämpfung und die Verstärkung von Klangmustern betreffen. Bei dem Start einer Echtzeit-Animation im Schritt 302 werden dann in einem Schritt 304 die Ansteuersignale von dem SD-Eingabegerät 104 an die Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen weitergegeben. In einem Schritt 306 werden dann die Ansteuersignale ausgewertet, wobei beispielsweise die ersten und zweiten zeitlichen Ableitungen der „Analogsteuersignale" ermittelt werden. Zuletzt wird in einem Schritt 308 eine Zuweisung der Ansteuersignale der verschiedenen Freiheitsgrade zu den bereits oben genannten Bewegungsmustern 106, Oberflächenmustern 108,
Klangmustern 110 und/oder Beleuchtungsmustern 112 ausgeführt.
Hinsichtlich des Beleuchtungsmusters 112 ist anzumerken, dass sowohl die Beleuchtungssituation für ein animiertes Gelenk- Objekt selbst wie auch die Beleuchtung des Hintergrunds bzw. verschiedener Szenen in Echtzeit durch entsprechende Zuordnung und Eingabe entsprechender Ansteuersignale 116 verändert werden kann.
Bezugnehmend auf das in Figur 4 schematisch dargestellte Ausführungsbeispiel der zugrunde liegenden Erfindung, kann zur Steuerung einzelner oder mehrerer akustischer Parameter digitalisierter Klangmuster 410 ein Verfahren bzw. ein System vorgesehen sein, das die folgenden Geräte verwendet:
- einen Computer, dessen Steuereinheit 401 mit mindestens einem elektronischen Musikinstrument 402 über eine MIDI- Schnittstelle 404a+b leitend verbunden ist und
- ein Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen 116 für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt werden können. Dabei können die digitalisierten Klangmuster 410 im Speicher mindestens eines elektronischen Musikinstruments 402 gemäß dem MIDI-Standard digital gespeichert und auf mindestens einem elektronischen Musikinstrument 402 gemäß dem MIDI-Standard generiert bzw. abgespielt werden. Einzelne oder mehrere dieser akustischen Parameter können dabei erfindungsgemäß mittels Steuerung der virtuellen Objekte durch ein Bewegen des Eingabegeräts 104 in Echtzeit erzeugt bzw. beeinflusst werden .
Wie in Figur 5 abgebildet, kann alternativ zur Steuerung einzelner oder mehrerer akustischer Parameter digitalisierter Klangmuster 512 nach einer Variation dieses Ausführungsbeispiels der zugrunde liegenden ^Erfindung ein Verfahren bzw. ein System vorgesehen sein, das die folgenden Geräte verwen¬ det :
- einen Computer, dessen Steuereinheit 501 mit mindestens einer Sound-Karte 510 sowie mit mindestens einem Tongenerator 502 verbunden ist und
- ein Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen 116 für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt wer- den können.
Dabei können die digitalisierten Klangmuster 512 im Speicher mindestens einer Sound-Karte 510 des Computers digital gespeichert sein und auf mindestens einem Tongenerator 502 des- selben Computers generiert und abgespielt werden. Einzelne oder mehrere akustische Parameter der digital gespeicherten Klangmuster 512 können dabei erfindungsgemäß mittels Steue¬ rung der virtuellen Objekte durch ein Bewegen des Eingabegeräts 104 in Echtzeit erzeugt bzw. beeinflusst werden. Bei den ansteuerbaren virtuellen Objekten, die zur Erzeugung bzw. Beeinflussung einzelner oder mehrerer akustischer Parameter der digital gespeicherten Klangmuster 410 bzw. 512 durch ein Bewegen des Eingabegeräts 104 gesteuert werden, kann es sich zum Beispiel um die Steuerelemente, Tasten,
Schalter, Drehknöpfe und/oder Schieberegler eines virtuellen Mischpults handeln, mit dessen Hilfe beispielsweise einzelne Frequenzbereiche des Obertonspektrums eines gespeicherten, digitalisierten Klangmusters 410 bzw. 512 gezielt gedämpft bzw. verstärkt werden können.
Bei dem Eingabegerät 104 kann es sich zum Beispiel um ein drahtloses Steuermedium handeln, das in drei Dimensionen bewegt werden kann ("3D-Maus") und- das in der Lage ist, simul- tan parametrisierte Ansteuersignale 116 von Bewegungen in wenigstens sechs unabhängigen Freiheitsgraden in Echtzeit zu verarbeiten.
Bei den gesteuerten akustischen Parametern eines bestimmten digitalisierten Klangmusters 410 bzw. 512 kann es sich beispielsweise um Tonhöhen, Noten- bzw. Pausenwerte, Lautstärken, Tempi, Artikulationsanweisungen, Klangfarben, Pedal-, Vibrato-, Chorus-, Hall-, Oberton- und/oder andere Spezialef- fekte handeln.
Dabei können parametrisierte Ansteuersignale 116 von Bewegungen des Eingabegeräts 104 in drei translatorischen und drei rotatorischen Freiheitsgraden eingegeben werden. Darüber hinaus kann erfindungsgemäß vorgesehen sein, dass auch zeitliche Ableitungen der parametrisierten Ansteuersignale 116 ermittelt und verarbeitet werden können. Die Zuordnung von parametrisierten Ansteuersignalen 116 jeweils eines Freiheitsgrads zu einem oder mehreren Parametern eines bestimmten digitalisierten Klangmusters 410 bzw. 512 ist erfindungsgemäß frei spezifizierbar. Optional können auch die zeitlichen Ableitun- gen der parametrisierten Ansteuersignale 116 einem oder mehreren Parametern eines bestimmten digitalisierten Klangmusters 410 bzw. 512 zugeordnet werden. Die Kopplungsparameter der Zuordnung von parametrisierten Ansteuersignalen ilβ können ebenfalls frei spezifiziert werden.
Die Bedeutung der mit Bezugszeichen versehenen Symbole in den Figuren 1 bis 5 kann der beigefügten Bezugszeichenliste entnommen werden.
Bezugszeichenliste
Nr, Symbol
100 vereinfachtes Blockdiagramm zur Veranschaulichung der Ein- und Ausgabesignale der frei spezifizierbaren Echtzeit- Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen nach dem bevorzugten Ausführungsbeispiel der zugrunde liegenden Erfindung
102 frei spezifizierbare Echtzeit-Steuerung von animierten Grafiken, Video- und/oder Audiosequenzen
10' 3D-Eingabegerät zur. Eingabe der Ansteuersignale 116
106 parametrisierte Bewegungsmuster für Gelenk-Ob j ekte
108 parametrisierte Oberflächenmuster (Geometrien, Texturen) für Gelenk-Objekte
110 parametrisierte Kla gmuster
112 parametrisierte Beleuchtungsmuster für Gelenk-Objekte und den Hintergrund virtueller Szenen '
114 3D-Animation, angezeigt aμ-f Computer-Bildschirm
116 Ansteuersignale vom 3D-Eingabegerät 104 für die frei spezifizierbare Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen
118 Übergabe der parametrisierten Bewegungsmuster 106, Oberflächenmuster 108, Klangmuster 110 und/oder Beleuchtungsmuster 112 als Referenzmuster an die entsprechenden Generatoren 204, 206, 208 und 210 in der frei spezifizierbare Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen
120 Animations-Ausgabesignale von der Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen für die 3D-Animation 114
120a Animations-Ausgabesignale von der Steuereinheit 401 eines Computers für die 3D-Animation 114
120b Status-Signale von der 3D-Animation 114 für die Steuerein¬ heit 401 des Computers
200 detailliertes Blockdiagramm zur Veranschaulichung der Komponenten sowie der Ein- und Ausgabesignale der frei spezi¬ fizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen
202 Freispezifizierungsmodul zur Zuordnung der Ansteuersignale bzw. deren zeitlicher Ableitungen als Parameterwerte für die parametrisierten Bewegungsmuster 106, Oberflächenmu- ster 108, Klangmuster 110 bzw. Beleuchtungsmuster 112
204 Bewegungsgenerator zur Berechnung der Skelett-Anderungsda- ten von Gelenk-Objekten auf Grundlage der Ansteuersignale 116 als Parameterwerte und wenigstens je eines parametri- sierten Bewegungsmusters 106, wobei die Skelett-Änderungs- daten translatorische und/oder rotatorische Änderungen der Lage bzw. Orientierung der Gelenk-Objekte wiedergeben
206 Oberflächengenerator zur Berechnung der Oberfläche virtu- Nr . Symbol
eller Gelenk-Objekte auf Grundlage ihrer Skelett-Ände- rungsdaten und wenigstens je eines Oberflächenmusters 108
208 Akustikgenerator zur Erzeugung von Tonsequenzen, ausgehend von parametrisierten Klangmustern 110
210 Beleuchtungsgenerator zur Erzeugung von Beleuchtungs-Aus- gabesignale, ausgehend von parametrisierten Beleuchtungsmustern 112
!12 Bewegungs-Ansteuersignale vom Freispezifizierungsmodul 202 zum Bewegungsgenerator 204
214 Oberflächen-Ansteuersignale vom Freispezifizierungsmodul 202 zum Oberflächengenerator 206
216 Klang-Ansteuersignale vom Freispezifizierungsmodul 202 für den Akustikgenerator 208
218 Beleuchtungs-Ansteuersignale vom Freispezifizierungsmodul 202 zum Beleuchtungsgenerator 210
220 Bewegungs-Animations-Ausgabesignale vom Bewegungsgenerator 204 zum Oberflächengenerator 206
222 Oberflächen-Ausgabesignale- vom Oberflächengenerator 206
224 Klang-Ausgabesignale vom Akustikgenerator 208 als Teil der Animations-Ausgabesignale 120
226 Beleuchtungs-Ausgabesignale vom Beleuchtungsgenerator 210
300 Ablaufdiagramm zur Veranschaulichung der von der frei spe¬ zifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen durchgeführten Aktionen
301a Start der Setup-Phase [= Vorbereitung einer Echtzeit-Ani- ation)
301b Voreinstellungen, Initialisierungen und Zuweisungen für das Freispezifizierungsmodul 202
301c Parameter-Voreinstellung (z.B. Dämpfung bzw. Verstärkung)
301d Ende der Setup-Phase
302 Start der Steuer-Phase Start einer Echtzeit-Animation)
104 Eingabe der Ansteuersignale
106 Auswertung der Ansteuersignale
Zuweisung der Ansteuersignale
310 Erzeugung von Bewegungsdaten bzw. Beeinflussung von Bewegungsmustern 106 mit Hilfe der Animations-Ausgabesignale 120
312 Erzeugung von Oberflächendaten bzw. Beeinflussung von Oberflächenmustern 108 mit Hilfe der Animations-Ausgabesi¬ gnale 120
314 Erzeugung von Klangdaten bzw. Beeinflussung von Klangmu¬ stern 110 mit Hilfe der Animations-Ausgabesignale 120
Erzeugung von Beleuchtungsdaten bzw. Beeinflussung von Be¬ leuchtungsmustern 112 mit Hilfe der Animations-Ausgabesi¬ gnale 120
400 Blockdiagramm zur Veranschaulichung der Steuerung einzel¬ ner oder mehrerer akustischer Parameter digitalisierter Klangmuster durch ein System, bestehend aus einem Compu- Nr . Symbol ter, dessen Steuereinheit 401 mit mindestens einem elektronischen Musikinstrument 402 über eine MIDI-Schnitt- stelle leitend verbunden ist und einem 3D-Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt werden können
401 Steuereinheit eines Computers
402 Masterkeyboard bzw. Synthesizer nach dem MIDI-Standard (hier: Keyboard mit 73 Tasten, d.h. mit einem Ambitus von sechs Oktaven)
404a MIDI/IN-Anschluss (Eingangsbuchse) des Masterkeyboards bzw. Synthesizers 402
404b MIDI/OUT-Anschluss (Ausgangsbuchse) des Masterkeyboards bzw. Synthesizers 402
406 Lautsprecheranschlussbuchse des Masterkeyboards bzw. Synthesizers 402
40! Lautsprecher
410 Speicher des Masterkeyboards bzw. Synthesizers 402, in dem eine Datenbank mit digitalisierten Klangmustern gespeichert ist
412ä MIDI/IN-Signal von der Steuereinheit 401 des Computers zum Masterkeyboard bzw. Synthesizer 402
412b MIDI/OUT-Signal vom Masterkeyboard bzw. Synthesizer 402 zur Steuereinheit 401 des Computers
414 Übergabe der digitalisierten Klangmuster 410 als Referenzmuster an das Masterkeyboard bzw. den Synthesizer 402
500 Blockdiagramm zur Veranschaulichung der Steuerung einzelner oder mehrerer akustischer Parameter digitalisierter Klangmuster durch ein System, bestehend aus einem Compu- ter, der über einen elektronischen Tongenerator 502 und eine Sound-Karte 510 verfügt, und einem 3D-Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt werden können
501 Steuereinheit des Computers, der über einen elektronischen Tongenerator 502 und eine Sound-Karte 510 verfügt
502 elektronischer Tongenerator des Computers nach dem MIDI- Standard
504a MIDI/IN-Signaleingang des elektronischen Tongenerators
504b MIDI/OUT-Signalausgang des elektronischen Tongenerators
506 Lautsprecheranschlussbuchse des Computers
Lautsprecher
510 Sound-Karte des Computers
512 Speicher der Sound-Karte 510, in dem eine Datenbank mit digitalisierten Klangmustern gespeichert ist
514a parametrisierte MIDI-Ansteuersignale von der Steuereinheit 501 des Computers zur Sound-Karte 510
514b MIDI/IN-Signal von der Sound-Karte 510 zum elektronischen Tongenerator 502 Nr. Symbol
514c MIDI/OUT-Signal vom elektronischen Tongenerator 502 zur Steuereinheit 501 des Computers

Claims

Patentansprüche
1. Verfahren zur Echtzeit-Bewegungssteuerung eines Gelenk-Objekts, bei dem die folgenden Schritte durchgeführt werden: a) Definition von wenigstens einem parametrisierten Bewegungsmuster (106) für das Gelenk-Objekt, b) Definition von wenigstens einem- parametrisierten Oberflächenmuster (108) für das Gelenk-Objekt, c) Eingabe von parametrisierten Ansteuersignalen (116) mittels eines 3D-Eingabegeräts (104), d) Berechnung von Skelett-Änderungsdaten auf Grundlage der parametrisierten Ansteuersignale (116) sowie auf Grundlage von wenigstens einem parametrisierten Bewegungsmuster (106) , wobei die Skelett-Änderungsdaten translatorische und/oder rotatorische Änderungen der Lage bzw. Orientierung 'der Gelenke des Gelenk-Objekts wiedergeben, e) Berechnung der Oberfläche des Gelenk-Objekts auf Grundlage der Skelett-Änderungsdaten sowie auf Grundlage von wenigstens einem Oberflächenmuster (108), wobei die Schritte c) , d) und e) zyklisch wiederholt werden, um eine Echtzeit-Bewegungssteuerung des Gelenk-Objekts abhängig von den Ansteuersignalen (116) zu erhalten.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass weiterhin Klangsignale (224) durch Verknüpfung gespeicherter digitaler, parametrisierter Klangmuster (110) mit parametrisierten Ansteuersignalen (116) erzeugt werden.
3. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass zeitliche Ableitungen der parametrisierten Ansteuersignale (116) ermittelt und verarbeitet werden können.
4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Zuordnung der parametrisierten Ansteuersignale (116) bzw. ihrer Ableitungen zu den Bewegungsmustern (106), Oberflächenmustern (108) bzw. Klangmustern (110) frei spezifi- ziert werden kann.
5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass weiterhin parametrisierte Beleuchtungsmuster (112) hin- terlegt werden, die zur Erzeugung von Beleuchtungseffekten mittels entsprechender Verknüpfungen mit parametrisierten Ansteuersignalen (116) verwendet werden.
6. Verfahren zur frei spezifizierbaren Echtzeit-Steuerung von animierten Grafiken, Video- und/oder Audiosequenzen, dadurch gekennzeichnet, dass
- zur Erzeugung von Bewegungs-, Oberflächen- und/oder Klangdaten wenigstens ein vordefiniertes parametrisiertes Bewegungsmuster (106), Oberflächenmuster (108) und/oder Klang- - muster (110) hinterlegt ist,
- parametrisierte Ansteuersignale (116) verschiedener Freiheitsgrade von einem 3D-Eingabegerät (104) ausgewertet und zur Erzeugung von Bewegungsdaten (310), Oberflächendaten (312) und/oder Klangdaten (314) mit Hilfe der hinterlegten Bewegungsmuster (106), Oberflächenmuster (108) und/oder Klangmuster (110) verwendet werden und
- die Zuordnung von parametrisierten Ansteuersignalen (116) jeweils eines Freiheitsgrads zu einem bestimmten Bewegungsmuster (106), Oberflächenmuster (108) und/oder Klangmuster (110) frei spezifizierbar ist.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass weiterhin zeitliche Ableitungen der parametrisierten An- Steuersignale (116) einem bestimmten Bewegungsmuster (106) , Oberflächenmuster (108) und/oder Klangmuster (110) zugeordnet werden können.
8. Verfahren nach Anspruch 6 oder 7, dadurch gekennzeichnet, dass Kopplungsparameter der Zuordnung von parametrisierten Ansteuersignalen (116), wie zum Beispiel Dämpfung und Verstärkung, frei spezifizierbar sind.
9. Computersoftware-Produkt, dadurch gekennzeichnet, dass es ein Verfahren gemäß einem der oben beschriebenen Ausführungsbeispiele implementiert, wenn es in einem Speicher eines Computers geladen ist.
10. System zur Echtzeit-Bewegungssteuerung von virtuellen oder realen Gelenk-Objekten, wobei das System über einen Speicher verfügt, in dem abgelegt sind:
- wenigstens ein parametrisiertes Bewegungsmuster (106) und - wenigstens ein parametrisiertes Oberflächenmuster (108) von einem Gelenk-Objekt,
- ein 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116) für die Echtzeit-Bewegungssteuerung,
- ein Bewegungsgenerator (204) zur Berechnung von Skelett-Än- derungsdaten auf Grundlage der parametrisierten Ansteuersignale (116) und auf Grundlage von wenigstens einem parametrisierten Bewegungsmuster (106), wobei die Skelett-Änderungsdaten translatorische und/oder rotatorische Änderungen der Lage bzw. Orientierung der Gelenke des Gelenk-Objekts wiedergeben, sowie
- ein Oberflächengenerator (206) zur Berechnung der Oberfläche des Gelenk-Objekts auf Grundlage der Skelett- Änderungsdaten und des parametrisierten Oberflächenmusters
(108) .
11. System nach Anspruch 10, ςfekennzeichnet durch einen Klanggenerator (210) zur Erzeugung von Klangsignalen durch Verknüpfung von wenigstens einem digitalen parametrisierten Klangmuster (110) mit parametrisierten Ansteuersignalen (116) .
12. System nach einem der Ansprüche 10 oder 11, gekennzeichnet durch ein Freispezifizierungsmodul (202) zur Ermittlung und Verarbeitung von zeitlichen Ableitungen der parametrisierten Ansteuersignale (116) .
13. System nach einem der Ansprüche 10 bis 12, gekennzeichnet durch ein Freispezifizierungsmodul (202) zur wahlfreien Zuordnung der parametrisierten Ansteuersignale (116) bzw. ihrer Ableitungen für die Bewegungsdaten (310), Oberflächendaten (312) und/oder Klangdaten (314) .
14. System zur frei spezifizierbaren Echtzeit-Steuerung für animierte Grafiken, Video- und/oder Audiosequenzen, aufweisend - einen Speicher, in dem für die Erzeugung von Bewegungsdaten (310), Oberflächendaten (312), Klangdaten (314) und/oder Beleuchtungsdaten (316) wenigstens ein vordefiniertes parametrisiertes Bewegungsmuster (106), Oberflächenmuster (108), Klangmuster (110) und/oder Beleuchtungsmuster (112) hinterlegt ist, sowie
- eine Recheneinheit zur Auswertung von parametrisierten Ansteuersignalen (116) verschiedener Freiheitsgrade von einem 3D-Eingabegerät (104) zur Erzeugung von Bewegungsdaten (310), Oberflächendaten (312), Klangdaten (314) und/oder Beleuchtungsdaten (316) mit Hilfe der hinterlegten Bewe- gungsmuster (106), Oberflächenmuster (108), Klangmuster
(110) und/oder Beleuchtungsmuster (112), weiterhin aufweisend ein Freispezifizierungsmodul (202) zur frei spezifizierbaren Zuordnung von parametrisierten Ansteu- ersignalen (116) jeweils eines Freiheitsgrads zu einem bestimmten Bewegungsmuster (106), Öberflächenmuster (108), Klangmuster (110) und/oder Beleuchtungsmuster (112) .
15. System nach Anspruch 14, dadurch gekennzeichnet, dass das Freispezifizierungsmodul (202) weiterhin die Zuordnung von zeitlichen Ableitungen der parametrisierten Ansteuersignale (116) zu einem bestimmten Bewegungsmuster (106), Oberflächenmuster (108), Klangmuster (110) und/oder Beleuch- tungsmuster (112) ermöglicht.
16. System nach Anspruch 14 oder 15, dadurch gekennzeichnet, dass das Freispezifizierungsmodul (202) eine frei spezifi- zierbare Einstellung von Kopplungsparametern der Zuordnung von parametrisierten Ansteuersignalen (116) , wie zum Beispiel Dämpfung und Verstärkung, ermöglicht.
17. System zur Echtzeit-Steuerung von akustischen Parametern digitalisierter Klangmuster (410), aufweisend:
- einen Computer, dessen Steuereinheit (401) mit mindestens einem elektronischen Musikinstrument (402) über eine MIDI- Schnittstelle (404a+b) leitend verbunden ist und
- ein 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116) wobei die digitalisierten Klangmuster (410)
- im Speicher mindestens eines elektronischen Musikinstruments (402) digital gespeichert sind und
- auf mindestens einem elektronischen Musikinstrument (402) generiert und abgespielt werden können, dadurch gekennzeichnet, dass einzelne oder mehrere akustische Parameter der digital gespeicherten Klangmuster (410) mittels durch ein Bewegen des
3D-Eingabegeräts (104) in Echtzeit erzeugt bzw. beeinflusst werden können.
18. System nach Anspruch 21, dadurch gekennzeichnet, dass zur Erzeugung bzw. Beeinflussung einzelner oder mehrerer akustischer Parameter der digital gespeicherten Klangmuster (410) Steuerelemente, Tasten, Schalter, Drehknöpfe und/oder Schieberegler eines virtuellen Mischpults vorgesehen sind.
19. System nach Anspruch 18, dadurch gekennzeichnet, dass es sich bei den gesteuerten akustischen Parametern eines bestimmten digitalisierten Klangmusters (410) um Tonhöhen, Noten- bzw. Pausenwerte, Lautstärken, Tempi, Artikulationsanweisungen, Klangfarben, Pedal-, Vibrato-, Chorus-, Hall-, Oberton- und/oder andere Spezialeffekte handelt.
20. System nach einem der Ansprüche 17 bis 19, dadurch gekennzeichnet, dass zeitliche Ableitungen der parametrisierten Ansteuersi- gnale (116) ermittelt und verarbeitet werden können.
21. System nach einem der Ansprüche 17 bis 20, dadurch gekennzeichnet, dass die Zuordnung von parametrisierten Ansteuersignalen (116) jeweils eines Freiheitsgrads zu einem oder mehreren Parametern eines bestimmten digitalisierten Klangmusters (410) frei spezifizierbar ist.
22. System zur Echtzeit-Steuerung von akustischen Parametern digitalisierter Klangmuster (512), aufweisend:
- einen Computer, dessen Steuereinheit (501) mit mindestens einer Sound-Karte (510) sowie mit mindestens einem Tongene- rator (502) verbunden ist und
- ein 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116) für die Echtzeit-Bewegungssteuerung von Objekten, wobei die digitalisierten Klangmuster (512) - im Speicher mindestens einer Sound-Karte (510) des Computers digital gespeichert sind und
- auf mindestens einem Tongenerator (502) desselben Computers generiert und abgespielt werden können, dadurch gekennzeichnet, dass einzelne oder mehrere akustische Parameter der digital gespeicherten Klangmuster (512) durch ein Bewegen des 3D- Eingabegeräts (104) in Echtzeit erzeugt bzw. beeinflusst wer¬ den können.
23. System nach Anspruch 22, dadurch gekennzeichnet, dass weiterhin zeitliche Ableitungen der parametrisierten Ansteuersignale (116) einem oder mehreren Parametern eines be¬ stimmten digitalisierten Klangmusters (512) zugeordnet werden können.
24. System nach einem der Ansprüche 22 oder 23, dadurch gekennzeichnet, dass Kopplungsparameter der Zuordnung von parametrisierten Ansteuersignalen (116) frei spezifizierbar sind.
25. Verfahren zur Echtzeit-Steuerung von akustischen Parame¬ tern digital aufgezeichneter Klangmuster (410 bzw. 512) , die - im Speicher mindestens einer Sound-Karte (510) eines Computers und/oder mindestens eines elektronischen Musikinstruments (402) nach dem MIDI-Standard digital gespeichert sind und - auf mindestens einem Tongenerator (502) desselben Computers oder mindestens einem elektronischen Musikinstrument (402) nach dem MIDI-Standard abgespielt werden können, wobei die Steuereinheit (401 bzw. 501) des Computers
- mit mindestens einer Sound-Karte (510) und mindestens einem Tongenerator (502) bzw. mit mindestens einem elektronischen
Musikinstrument (402) über eine MIDI-Schnittstelle (404a+b bzw. 504a+b)' leitend verbunden ist und
- mit einem 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116) zur Echtzeit-Bewegungssteue- rung virtueller Objekte leitend verbunden ist, dadurch gekennzeichnet, dass einzelne oder mehrere akustische Parameter der digital gespeicherten Klangmuster (410 bzw. 512) mittels Steuerung der virtuellen Objekte durch ein Bewegen des 3D-Eingabegeräts (104) in Echtzeit erzeugt bzw. beeinflusst werden können.
26. Verfahren nach Anspruch 25, dadurch gekennzeichnet, dass es sich bei den virtuellen Objekten, die zur Erzeugung bzw. Beeinflussung einzelner oder mehrerer akustischer Parameter der digital gespeicherten Klangmuster (410 bzw. 512) bewegt werden, um die Steuerelemente, Tasten, Schalter, Drehknöpfe und/oder Schieberegler eines virtuellen Mischpults handelt .
27. Verfahren nach einem der Ansprüche 25 oder 26, dadurch gekennzeichnet, dass es sich bei den gesteuerten akustischen Parametern eines bestimmten digitalisierten Klangmusters (410 bzw. 512) um Tonhöhen, Noten- bzw. Pausenwerte, Lautstärken, Tempi, Arti- kulationsanweisungen, Klangfarben, Pedal-, Vibrato-, Chorus-,
Hall-, Oberton- und/oder andere Spezialeffekte handelt.
28. Verfahren nach einem der Ansprüche 25 bis 27, dadurch gekennzeichnet, dass Kopplungsparameter der Zuordnung von parametrisierten Ansteuersignalen (116) frei spezifizierbar sind.
PCT/EP2001/009356 2000-09-13 2001-08-13 Frei spezifizierbare echtzeit-steuerung WO2002023323A2 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP01980243A EP1319207A2 (de) 2000-09-13 2001-08-13 Frei spezifizierbare echtzeit-steuerung
AU2002212137A AU2002212137A1 (en) 2000-09-13 2001-08-13 Freely specifiable real-time control
US10/386,693 US7199301B2 (en) 2000-09-13 2003-03-13 Freely specifiable real-time control

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10045117.9 2000-09-13
DE10045117A DE10045117C2 (de) 2000-09-13 2000-09-13 Verfahren und Vorrichtung zur Echtzeit-Geometriesteuerung

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US10/386,693 Continuation US7199301B2 (en) 2000-09-13 2003-03-13 Freely specifiable real-time control

Publications (2)

Publication Number Publication Date
WO2002023323A2 true WO2002023323A2 (de) 2002-03-21
WO2002023323A3 WO2002023323A3 (de) 2003-03-13

Family

ID=7655959

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2001/009356 WO2002023323A2 (de) 2000-09-13 2001-08-13 Frei spezifizierbare echtzeit-steuerung

Country Status (5)

Country Link
US (1) US7199301B2 (de)
EP (1) EP1319207A2 (de)
AU (1) AU2002212137A1 (de)
DE (1) DE10045117C2 (de)
WO (1) WO2002023323A2 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010089560A1 (en) * 2009-02-05 2010-08-12 The University Court Of The University Of Edinburgh Data input device and sound generating device
CN112720504A (zh) * 2021-01-20 2021-04-30 清华大学 从rgbd视频中学习手与物体交互运动控制方法和装置

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7339589B2 (en) * 2002-10-24 2008-03-04 Sony Computer Entertainment America Inc. System and method for video choreography
US6999093B1 (en) * 2003-01-08 2006-02-14 Microsoft Corporation Dynamic time-of-day sky box lighting
US20080024434A1 (en) * 2004-03-30 2008-01-31 Fumio Isozaki Sound Information Output Device, Sound Information Output Method, and Sound Information Output Program
US7874900B2 (en) * 2004-10-01 2011-01-25 Wms Gaming Inc. Displaying 3D characters in gaming machines
US20080108413A1 (en) * 2004-10-01 2008-05-08 Phil Gelber System and Method for 3D Reel Effects
US20090181769A1 (en) * 2004-10-01 2009-07-16 Alfred Thomas System and method for 3d image manipulation in gaming machines
DE102004059051A1 (de) * 2004-12-07 2006-06-08 Deutsche Telekom Ag Verfahren und modellbasiertes Audio- und Videosystem zur Darstellung einer virtuellen Figur
CN1870128B (zh) * 2005-05-25 2011-11-23 光宝科技股份有限公司 混合乐曲的方法及装置
US7855715B1 (en) * 2005-07-27 2010-12-21 James Harrison Bowen Switch with depth and lateral articulation detection using optical beam
US9666031B2 (en) * 2006-06-12 2017-05-30 Bally Gaming, Inc. Wagering machines having three dimensional game segments
DE102006049863B4 (de) * 2006-10-23 2015-09-10 Siemens Aktiengesellschaft Navigator bei medizinischen bewegten Bildern
DE08713901T1 (de) * 2007-01-22 2010-02-25 Bell Helicopter Textron, Inc., Fort Worth System und verfahren zur interaktiven anzeige von daten in einer bewegungserfassungsumgebung
WO2008091857A1 (en) * 2007-01-22 2008-07-31 Bell Helicopter Textron, Inc. System and method for controlling a virtual reality environment by an actor in the virtual reality environment
EP2106572B1 (de) 2007-01-22 2014-05-07 Bell Helicopter Textron Inc. System und verfahren zur durchführung von mehreren simultanen, unabhängigen simulationen in einer bewegungserfassungsumgebung
DE08733207T1 (de) * 2007-04-17 2011-04-21 Bell Helicopter Textron Inc., Fort Worth Kollaboratives vr-system unter verwendung mehrerer bewegungsaufnahmesysteme und mehrerer interaktiver klienten
US7842875B2 (en) * 2007-10-19 2010-11-30 Sony Computer Entertainment America Inc. Scheme for providing audio effects for a musical instrument and for controlling images with same
US7939742B2 (en) * 2009-02-19 2011-05-10 Will Glaser Musical instrument with digitally controlled virtual frets
US8509479B2 (en) 2009-05-29 2013-08-13 Microsoft Corporation Virtual object
JP5434638B2 (ja) * 2010-01-29 2014-03-05 ソニー株式会社 情報処理装置および情報処理方法
US8620661B2 (en) * 2010-03-02 2013-12-31 Momilani Ramstrum System for controlling digital effects in live performances with vocal improvisation
US9092135B2 (en) 2010-11-01 2015-07-28 Sony Computer Entertainment Inc. Control of virtual object using device touch interface functionality
US9122321B2 (en) 2012-05-04 2015-09-01 Microsoft Technology Licensing, Llc Collaboration environment using see through displays
US9519640B2 (en) 2012-05-04 2016-12-13 Microsoft Technology Licensing, Llc Intelligent translations in personal see through display
US9019174B2 (en) 2012-10-31 2015-04-28 Microsoft Technology Licensing, Llc Wearable emotion detection and feedback system
US9236039B2 (en) * 2013-03-04 2016-01-12 Empire Technology Development Llc Virtual instrument playing scheme
RU2584645C1 (ru) * 2015-05-15 2016-05-20 Мария Петровна Кибардина Способ диагностики артикуляции речевых расстройств
US11232774B2 (en) * 2017-04-13 2022-01-25 Roland Corporation Electronic musical instrument main body device and electronic musical instrument system
FR3075428B1 (fr) * 2017-12-15 2020-02-28 Enhancia Bague et module d'interface
US11073920B1 (en) 2020-10-20 2021-07-27 Cirque Corporation Multi-touch input system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5630017A (en) * 1991-02-19 1997-05-13 Bright Star Technology, Inc. Advanced tools for speech synchronized animation

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4600919A (en) * 1982-08-03 1986-07-15 New York Institute Of Technology Three dimensional animation
DE3611337A1 (de) 1986-04-04 1987-10-22 Deutsche Forsch Luft Raumfahrt In einer kunststoffkugel untergebrachte, opto-elektronische anordnung
DE3611336A1 (de) 1986-04-04 1987-10-15 Deutsche Forsch Luft Raumfahrt Kraft-drehmoment-fuehler
GB9011183D0 (en) * 1990-05-18 1990-07-04 British Aerospace Control devices
EP0461577B1 (de) * 1990-06-11 1998-12-02 Hitachi, Ltd. Vorrichtung zur Erzeugung eines Objektbewegungsweges
US5757360A (en) * 1995-05-03 1998-05-26 Mitsubishi Electric Information Technology Center America, Inc. Hand held computer control device
US6011212A (en) * 1995-10-16 2000-01-04 Harmonix Music Systems, Inc. Real-time music creation
US5923337A (en) * 1996-04-23 1999-07-13 Image Link Co., Ltd. Systems and methods for communicating through computer animated images
US6414684B1 (en) * 1996-04-25 2002-07-02 Matsushita Electric Industrial Co., Ltd. Method for communicating and generating computer graphics animation data, and recording media
US6097374A (en) * 1997-03-06 2000-08-01 Howard; Robert Bruce Wrist-pendent wireless optical keyboard
US6300960B1 (en) * 1997-08-04 2001-10-09 Pixar Animation Studios Realistic surface simulation in computer animation
DE29804023U1 (de) * 1998-02-27 1998-07-30 Schoetzau, Claus, 10629 Berlin Halbkugelförmiges Gerät zur Echzeitsteuerung von Synthesizern bzw. "Midi"-Klangerzeugern über Drucktasten
EP0979990B1 (de) 1998-08-10 2002-05-22 Deutsches Zentrum für Luft- und Raumfahrt e.V. Anordnung zum Auslösen von technischen Steueroperationen und/oder zum Auslösen der Ausführung von technischen Funktionen

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5630017A (en) * 1991-02-19 1997-05-13 Bright Star Technology, Inc. Advanced tools for speech synchronized animation

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JOCKUSCH S ET AL: "SYNTHETIC FACE EXPRESSIONS GENERATED BY SELF ORGANIZING MAPS" PROCEEDINGS OF THE INTERNATIONAL JOINT CONFERENCE ON NEURAL NETWORKS. (IJCNN). NAGOYA, OCT. 25 - 29, 1993, NEW YORK, IEEE, US, Bd. 3, 28. Oktober 1993 (1993-10-28), Seiten 2077-2080, XP000502207 ISBN: 0-7803-1422-0 *
WILHELMS J: "TOWARD AUTOMATIC MOTION CONTROL" IEEE COMPUTER GRAPHICS AND APPLICATIONS, IEEE INC. NEW YORK, US, Bd. 7, Nr. 4, 1. April 1987 (1987-04-01), Seiten 11-22, XP000003956 ISSN: 0272-1716 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010089560A1 (en) * 2009-02-05 2010-08-12 The University Court Of The University Of Edinburgh Data input device and sound generating device
GB2479323A (en) * 2009-02-05 2011-10-05 Univ Edinburgh Data input device and sound generating device
GB2479323B (en) * 2009-02-05 2013-09-11 Univ Edinburgh Data Input Device
CN112720504A (zh) * 2021-01-20 2021-04-30 清华大学 从rgbd视频中学习手与物体交互运动控制方法和装置
CN112720504B (zh) * 2021-01-20 2023-03-28 清华大学 从rgbd视频中学习手与物体交互运动控制方法和装置

Also Published As

Publication number Publication date
WO2002023323A3 (de) 2003-03-13
US7199301B2 (en) 2007-04-03
EP1319207A2 (de) 2003-06-18
DE10045117A1 (de) 2002-03-28
DE10045117C2 (de) 2002-12-12
AU2002212137A1 (en) 2002-03-26
US20040080507A1 (en) 2004-04-29

Similar Documents

Publication Publication Date Title
EP1319207A2 (de) Frei spezifizierbare echtzeit-steuerung
Serafin et al. Virtual reality musical instruments: State of the art, design principles, and future directions
US5952599A (en) Interactive music generation system making use of global feature control by non-musicians
Mulder Virtual musical instruments: Accessing the sound synthesis universe as a performer
DE10129326B4 (de) Informationsverarbeitungssystem mit einem grafischen Benutzerinterface steuerbar durch eine Spracherkennungsvorrichtung und damit ausgerüstetes Musikinstrument
US8659545B2 (en) Device and method for controlling computerized equipment
Iazzetta Meaning in musical gesture
DE69818210T2 (de) Vorrichtung und Verfahren zur Erzeugung von Ton und Bild auf Basis von einer Aufführungsdatei.
Mulder Towards a choice of gestural constraints for instrumental performers
DE10004372A1 (de) Gestaltung von Kraftempfindungen für Computeranwendungen mit Geräuschen
EP1513056A2 (de) 3D-Eingabegerät mit integrierter Anzeigevorrichtung
Han et al. Virtual pottery: a virtual 3D audiovisual interface using natural hand motions
WO2002041069A1 (de) Verfahren zur visuellen darstellung und interaktiven steuerung von virtuellen objekten auf einem ausgabe-sichtfeld
Pressing Some perspectives on performed sound and music in virtual environments
Giordano et al. Design of vibrotactile feedback and stimulation for music performance
Pausch et al. Tailor: creating custom user interfaces based on gesture
François et al. Visual feedback in performer-machine interaction for musical improvisation
Sapir Gestural control of digital audio environments
Modler Neural networks for mapping hand gestures to sound synthesis parameters
Goto Virtual musical instruments: Technological aspects and interactive performance issues
DE20121798U1 (de) System zur frei spezifizierbaren Echtzeit-Steuerung
Vertegaal An Evaluation of input devices for timbre space navigation
Ramstein A multimodal user interface system with force feedback and physical models
Papetti Design and perceptual investigations of audio-tactile interactions
Sapir Interactive digital audio environments: gesture as a musical parameter

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 10386693

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2001980243

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2001980243

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: JP