WO1999019840A1 - A system and method for generating an animatable character - Google Patents

A system and method for generating an animatable character Download PDF

Info

Publication number
WO1999019840A1
WO1999019840A1 PCT/US1998/022031 US9822031W WO9919840A1 WO 1999019840 A1 WO1999019840 A1 WO 1999019840A1 US 9822031 W US9822031 W US 9822031W WO 9919840 A1 WO9919840 A1 WO 9919840A1
Authority
WO
WIPO (PCT)
Prior art keywords
skeleton
character
digital image
data related
image
Prior art date
Application number
PCT/US1998/022031
Other languages
French (fr)
Inventor
Kevin L. Hunter
Original Assignee
Electric Planet, Inc.
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 Electric Planet, Inc. filed Critical Electric Planet, Inc.
Priority to AU98082/98A priority Critical patent/AU9808298A/en
Publication of WO1999019840A1 publication Critical patent/WO1999019840A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition

Definitions

  • the present invention relates generally to a method and system for generating graphics in a computer system. More particularly, the present invention relates to generating an animatable object such that a user can generate and animate the object easily and effectively.
  • an animatable character for use with Internet interaction.
  • an animated character could represent a user in a chat room on the Internet to provide more interactivity than conventional chat rooms.
  • a community "room” where a character , used as a visual representation of a user, can roam and explore various parts of the community "room”.
  • these objects are laboriously created by a computer programmer through the use of codes which are typically too complex for the average user to utilize. Characters are often crafted by an artist and entered into a computer.
  • these animatable objects and characters are typically predetermined and is normally not easily customized by the user.
  • conventional character generation and animation methods typically do not facilitate approximate real-time customized interaction with a predetermined environment or between two customized animatable characters. For instance, using conventional methods, it would be extremely difficult and expensive for each game player to use a customized animatable character in a real-time game.
  • Conventional animation methods typically utilize a series of static images with very minor changes to simulate motion. Using this conventional technique, it would be extremely difficult and costly to generate a series of static images immediately after a motion command is received such that approximate real-time game playing is feasible.
  • a predetermined sequence of motions can be pre-programmed. However, motions pre-programmed by a programmer are highly labor intensive and could severely limit motion and reaction by the animated object. Likewise, similar problems occur in Internet interaction between animatable characters under the control of users.
  • the present invention provides a system and method for generating an animatable object in a computer system.
  • the generation of the animatable object is simple and effective enough to allow a user to generate a customized object such as an animatable character which resembles the user. Additionally, once the animatable object is generated, information regarding the generation of the object can be sent to another computer, for example, it can be transmitted through a network such as the Internet. Once the object has been generated at the receiving computer, only data regarding the motions of the generated object need be sent to the receiving computer in order to animate the object.
  • a skeleton of the desired character is constructed by the user utilizing various predetermined components.
  • a generalized pre-constructed skeleton constructed from the predetermined components can be made available for the user.
  • These predetermined components include a various selection of rods and joints.
  • the rods are rigid components which remain rigid during motion, while the various joints are moveable components.
  • a static digitized image for example, an image of the user, is utilized and the constructed skeleton is superimposed onto it.
  • the desired object such as the image of the user, can then be extracted from the background of the digital image, superimposed onto the skeleton, and the resulting personal character can then be animated, for instance by selecting and dragging one of the hands with a mouse.
  • a system and method according to the present invention for generating an animatable object in a computer system comprises the steps of constructing a skeleton of a predetermined object; and superimposing the skeleton with a digital image, wherein the digital image includes the predetermined object.
  • Figure 1 is a schematic illustration of a general purpose computer system suitable for implementing the present invention.
  • Figure 2 is a flow diagram of a method for generating an animatable object according to the present invention.
  • FIGS 3A-3G illustrate the steps of the method according to the present invention as shown in Figure 2.
  • Figure 4 is an illustration of the generated animatable object after portions of it have been moved.
  • Figure 5 is a flow diagram of a method according to the present invention for utilizing the generated animatable object.
  • the present invention employs various processes involving data stored in computer systems. These processes are those requiring physical manipulation of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It is sometimes convenient, principally for reasons of common usage, to refer to these signals as bits, values, elements, variables, characters, data structures, or the like. It should remembered, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities.
  • FIG. 1 is a schematic illustration of a general purpose computer system suitable for implementing the process of the present invention.
  • the computer system includes a central processing unit (CPU) 102, which CPU is coupled bi-directionally with random access memory (RAM) 104 and unidirectionally with read only memory (ROM) 106.
  • RAM 104 includes programming instructions and data, including text objects as described herein in addition to other data and instructions for processes currently operating on CPU 102.
  • ROM 106 typically includes basic operating instructions, data and objects used by the computer to perform its functions.
  • a mass storage device 108 such as a hard disk, CD ROM, magneto- optical (floptical) drive, tape drive or the like, is coupled bi-directionally with CPU 102.
  • Mass storage device 108 generally includes additional programming instructions, data and text objects that typically are not in active use by the CPU, although the address space may be accessed by the CPU, e.g., for virtual memory or the like.
  • the system is also shown to include a visual input device, such as a camera 150. Additionally, the CPU is also coupled to a display 152.
  • Each of the above described computers further includes an input/output source 110 that typically includes input media such as a keyboard, pointer devices ⁇ e.g., a mouse or stylus) and the like.
  • Each computer can also include a network connection 112 over which data, including, e.g., text objects, and instructions can be transferred. Additional mass storage devices (not shown) may also be connected to CPU 102 through network connection 112. It will be appreciated by those skilled in the art that the above described hardware and software elements are of standard design and construction.
  • Figure 2 is a flow diagram of a method for generating a character according to the present invention.
  • a character as herein referred to, includes any object displayable on a display, such as a computer display.
  • the generated character is animatable.
  • animatable is herein meant to include the display or presentation of a motion or a series of motions.
  • a topology of a skeleton is determined via step 300.
  • a skeleton is herein referred to include any rough approximation of an object.
  • a skeleton can include an outline of a person, or an object such as a chair.
  • the user can roughly estimate what shape the desired character will have. For example, the user can decide to create a personal character of himself. In doing so, the user determines that the topology of the skeleton will include a head portion, a body portion, two arm portions, and two leg portions. It is then determined where motion will occur via step 302. In the given example, the user can determine that motion will occur at the shoulders, the elbows, the wrists, the waist, the hip joints, the knees, and the ankles.
  • the established parts preferably include rods and joints, wherein the rods are sections which remain rigid during motion and the joints are movable sections.
  • the rods maintain their geometric parameters during motion.
  • the skeleton is then positioned over a digital image via step 306, and the digital image is prepared via step 308.
  • the desired object in the digital image is preferably positioned such that joint angles are as close to zero as possible.
  • the digital image of the person shows the person in a stance where the arms are separated from the body, such as parallel to the floor, and the legs spread apart.
  • Preparation of the digital image can include preparation such as background subtraction and real time capture of the image.
  • the main objective of the preparation of the digital image via step 308 is to obtain a clean image of the desired object located within the digital image.
  • This objective can be accomplished in one of several ways. For example, one way is to subtract the background and identify the desired object in its entirety. Background subtraction attempts to extract the desired object from the remaining portions of the digital image.
  • One method of identifying the desired object is to take a photo of the background, then take another photo with the desired object located in front of the background. The first photo can be compared with the second photo and the new object identified. The background can then be automatically subtracted such that an approximate image of the desired object can be derived.
  • the background subtraction method can be performed in conjunction with utilizing the skeleton as parameters for determining the background versus the desired object. If a portion of the image is within the parameters of the skeleton, then it can be considered as part of the desired object. If a portion of the image is outside the parameters of the skeleton, then it should be considered part of the background. For example, if a cat has inadvertently walked into the second photo, the cat would not be considered part of the desired object since the figure of the cat is not part of the skeleton.
  • Another way to subtract the background is by using a predefined background such as a box colored blue.
  • a predefined background such as a box colored blue.
  • the desired object can be manually extracted from the background by manually outlining the desired object from the background.
  • the digital image is prepared prior to positioning the skeleton over the digital image. Accordingly, step 308 of Figure 2 occurs prior to step 306. Using this manual method allows the desired object to be extracted from a single digital image.
  • the parameters of the skeleton are then adjusted to surround the entire desired object in the digital image via step 310.
  • Texture maps are then laminated onto the skeleton via step 312 using well-known texture mapping techniques.
  • the appearance of the joints is likely to improve if the skeleton is adjusted tightly around the desired object.
  • the texture maps will require less storage space if the skeleton is adjusted tightly around the desired object.
  • Figures 3A-3G illustrate step 300-312 of the method described in Figure 2.
  • the topology of the skeleton is determined as shown in Figure 3 A.
  • the locations where motion will occur is then determined as shown in Figure 3B.
  • a skeleton 400 of a person is shown in Figures 3 A and 3B.
  • Figure 3B also shows some of the locations where motion will occur at points 402A-402D.
  • Figure 3C shows an example of a skeleton 400" which is constructed from established parts. These established parts include rods 404 and joints 406. When a component of the skeleton 400" is moved, the rods 404 remain rigid while the joints 406 can flex and/or rotate. Note that the parameters and dimensions of the rods and joints can be changed, for example, elongated, shrunk, or angled. However, during motion of a particular component, the dimensions of the rods remain fixed. A brief description of examples of joints which can be used on the skeleton is included herein.
  • joints may be used to accomplish the end result of substantial structural integrity of the rods during and immediately after movement.
  • Two examples of joints which can be used are what is herein referred to as center pin joints, and center radial joints.
  • Either of the exemplary joints can be made from various geometric shapes. Preferably, they are a compilation of polygons. For example, these joints can be created out of two or more rectangles, trapezoids, or triangles.
  • the center pin joint is a non-segmented joint.
  • a non-segmented joint is herein meant to describe a joint which consists of approximately two polygons.
  • the center pin joint can be imagined as taking two abutting rectangles and sticking a pin through the center of the common edge. Both halves of the joint experience no substantial distortion as the joint angle is varied.
  • the center pin joint may be discontinuous in some way when one portion of the joint is being rotated.
  • a triangular gap may appear between the upper arm and the lower arm.
  • the center radial joint is a segmented joint. Segmented joints have the properties that they appear to retain texture map continuity when the joint is rotated, however, the interiors of the segments will be warped in some manner. For example, when a lower arm of the character is moved, no gap will appear between the upper arm and the lower arm since the segments of the segmented joint will warp to cover that section. Segmented joints can consist of two or more geometric shapes such as polygons.
  • Figure 3D illustrates the skeleton 400" being overlaid with the desired object of a prepared digital image, in this case, a person 410, to create a customized character.
  • Figure 3E shows the desired object, in this case a person, after the digital image has been prepared via step 308 of Figure 2. The background has been subtracted and the desired object
  • a clean image of the desired object can be obtained by several ways.
  • One method is for a person to follow the outlines of the desired object, thereby "cutting out” the desired object and “pasting” the desired object onto the skeleton.
  • Another method is to photograph the background image without the desired object, then photograph the desired object in front of the background and perform a background subtraction based on subtracting the first image from the second image.
  • the background subtraction can be performed in conjunction with the parameters of the skeleton such that anything outside the skeleton will be subtracted as background and portions inside the skeleton can be determined as part of the desired object.
  • This preparation method can avoid situations such as dark spots within the center of the desired object or additional objects aside from the desired object being included as part of the desired object.
  • Figures 3F and 3G illustrate the texture mapping step 312 of Figure 2.
  • Texture mapping is well known in the field of art. For example, basic principles of texture mapping can be found in Advanced Animation & Rendering Techniques, Chapter 6, “Mapping Technique: Texture & Environmental Mapping", Alan Watt, Mark Watt, Addison Wesley (1992).
  • Laminating the texture map onto the skeleton allows consistency in the texture of a component of the desired object when that component is moved. For example, when an arm is moved from a vertical position to a horizontal position, the stripes on the sleeve of the arm will also appear to move from the vertical position to the horizontal position.
  • Texture mapping for purposes of the present invention can be performed in various ways, including affine mapping, perspective mapping, and bilinear mapping.
  • a texture map area 454 is associated with a portion of the character as shown in Figure 3F.
  • the portion associated with the texture map area 454 is shown as an arm 450, which also includes a portion of a sleeve with stripes on it.
  • the pixels included in the area associated with the texture map area 454 are copied and transformed from an (x,y) coordinate associated with the pixels to a (u,v) coordinate associated with the texture map area 454.
  • the transformed, copied pixels are typically referred to as texels.
  • Figure 3G shows the texture map area 454 including texels.
  • a region 452 is associated with the texture map area 454.
  • the texture map area 454 includes all the pixels within the area, which are typically referred to as texels.
  • the texture map area 454 typically includes representative points, in this example, the vertices 456a-456d. Data related to these vertices
  • the (u,v) coordinates of the vertices 456a-456d can be derived through various methods. One method of deriving the (u,v) coordinates is described below.
  • the (u,v) coordinates range from 0 to 1.
  • the u and v coordinates can be derived as ratios to the height and width of the bounding texture map area 454.
  • the (u,v) coordinate does not change regardless of how the character is moved within the display.
  • the vertices 456a- 456d can have their (x,y) coordinates changed without affecting their (u,v) coordinates.
  • the (u,v) coordinate of the non-vertices texels are interpolated, such that only the (u,v) coordinates of the vertices 456a-456d need be stored. Additionally, only the image included in the region 452 will be scanned out, such that the remaining portions of the character outside the region 452, but within the texture map area 454 will not be addressed. Accordingly, the texture appears consistent with the rest of the shirt when a portion of the shirt is moved.
  • Figure 4 shows the resulting customized character with portions of the character having been moved.
  • the customized character is initially created in a static pose, it is animatable after it is created.
  • the desired object such as a child
  • poses in a single pose preferably arms out and legs apart
  • this digitized image can be animated once the customized character of the child is created.
  • the arms have been rotated upward while the legs have been rotated in a clockwise direction.
  • the customized character can be animated in whatever manner the user chooses.
  • one of the advantages of the present invention is that a user can create a customized character quickly and efficiently without the need for programming in code and without a highly labor intensive session.
  • the user can "click and drag" a portion of the customized character, such as the arm, into a new position.
  • parameters and dimensions can be changed, for instance, the length of the legs can be changed and the waist of the customized character can be cinched.
  • the parameter of the skeleton can be changed and the desired object from the digital image changes along with the skeleton.
  • the user may simply "click and drag" certain points of the customized character such that the user can change the parameters of the torso by clicking on a point in the waste of the character dragging it closer in, thereby cinching the waste.
  • the customized characters can be the image of a person or an inanimate object such as a teddy bear or a chair, or an imaginary character.
  • These customized characters can be used in various ways, for example, they can be animated, used as a personal representation of the user, or used in a computer game. Because the customized character can have many degrees of freedom allowed by a large number of parameters, almost any type of animation is possible.
  • the customized character is created, it is a coherent connected geometric model in which portions of the customized character can be moved in conjunction with the rest of the rest of the customized character rather than as a compilation of independent parts.
  • Automatic animation can also be performed via a game or animation package. For animation of expression, for example on a person's face, a continual capture of the person's face can be used to paste onto the face of the customized character.
  • the customized character can be stored in memory, perhaps in a file format.
  • the customized character is a displayable primitive which can be recalled onto a display whenever the user prefers.
  • the customized character is an editable construct wherein the form of the character can be changed to a user's preferences. For example, joint angles can be changed, motions can be made, and the customized character can be programmed to dance.
  • Each component of the customized character such as rods and joints, can be considered an object in an appropriate programming language, such as C++. Accordingly, commands may be sent to a body part to detach itself from the remaining body, or a body part can be referenced by name and a command directed specifically to that particular body part.
  • forward kinematics or inverse kinematics can be used to ensure that when a portion of the customized character is moved, other portions connected to it will behave according to a predetermined model of motion.
  • An example of forward kinematics is when the joints of an arm of a customized character is moved, the hand attached to the arm will move accordingly.
  • An example of inverse kinematics is when a hand is moved, the joints in the arm are consistent with the hand motion such that the rest of the arm will move appropriately to adjust to the new position of the hand.
  • the principles and applications of inverse kinematics is well known in the field of art.
  • a further advantage of the method and system according to the present invention is the ability to transmit the data relating to the customized character over a network, such as the Internet.
  • a network such as the Internet.
  • Figure 5 shows a basic flow diagram of a method according to the present invention for animating a customized character in a computer network system.
  • Data related to the generation of a customized character is transmitted over a network via step 600, wherein the data related to the generation of the personal character no longer needed to be transmitted once the object is generated.
  • step 600 the data related to the generation of the personal character no longer needed to be transmitted once the object is generated.
  • step 602. data related to an animation, or a change in any portion of the customized character is transmitted via step 602. Accordingly, only the changes, such as changes in a particular joint angle, need to be transmitted through the network from that time forward.
  • a method and system for generating an animatable character has been disclosed.
  • Software written according to the present invention is to be stored in some form of computer- readable medium, such as memory or CD-ROM, or transmitted over a network, and executed by a processor.

Abstract

A system and method are disclosed for generating an animatable object. A skeleton of the desired character is constructed by the user utilizing various predetermined components (300). These predetermined components include a various selection of rods and joints. The rods are static components which remain rigid during motion, while the various joints are moveable components (304). A static digitized image, for example, an image of the user, is utilized and a constructed skeleton is superimposed onto it (308). The desired object, such as the image of the user, can then be extracted from the background of the digital image and the resulting personal character can then be animated, for instance by selecting and dragging one of the hands with the mouse.

Description

A SYSTEM AND METHOD FOR GENERATING AN ANIMATABLE
CHARACTER
1. FIELD OF THE INVENTION
The present invention relates generally to a method and system for generating graphics in a computer system. More particularly, the present invention relates to generating an animatable object such that a user can generate and animate the object easily and effectively.
2. BACKGROUND OF THE INVENTION
With the explosive growth and popularity of computer games and Internet interaction, the use of images, especially images of objects such as animated characters, are becoming more prominent. Animated characters are commonly used in computer games to represent either the player or other various components of the game. Likewise, there are also numerous potential uses of an animatable character for use with Internet interaction. For example, an animated character could represent a user in a chat room on the Internet to provide more interactivity than conventional chat rooms. Another example is a community "room" where a character , used as a visual representation of a user, can roam and explore various parts of the community "room".
Typically, these objects, such as animatable characters, are laboriously created by a computer programmer through the use of codes which are typically too complex for the average user to utilize. Characters are often crafted by an artist and entered into a computer.
Accordingly, these animatable objects and characters are typically predetermined and is normally not easily customized by the user. Additionally, conventional character generation and animation methods typically do not facilitate approximate real-time customized interaction with a predetermined environment or between two customized animatable characters. For instance, using conventional methods, it would be extremely difficult and expensive for each game player to use a customized animatable character in a real-time game. Conventional animation methods typically utilize a series of static images with very minor changes to simulate motion. Using this conventional technique, it would be extremely difficult and costly to generate a series of static images immediately after a motion command is received such that approximate real-time game playing is feasible. Alternatively, a predetermined sequence of motions can be pre-programmed. However, motions pre-programmed by a programmer are highly labor intensive and could severely limit motion and reaction by the animated object. Likewise, similar problems occur in Internet interaction between animatable characters under the control of users.
Accordingly, what is needed is a system and method for quickly and effectively generating a customized animatable character in a computer system. The present invention addresses such a need.
SUMMARY OF THE INVENTION
The present invention provides a system and method for generating an animatable object in a computer system. The generation of the animatable object is simple and effective enough to allow a user to generate a customized object such as an animatable character which resembles the user. Additionally, once the animatable object is generated, information regarding the generation of the object can be sent to another computer, for example, it can be transmitted through a network such as the Internet. Once the object has been generated at the receiving computer, only data regarding the motions of the generated object need be sent to the receiving computer in order to animate the object.
A skeleton of the desired character is constructed by the user utilizing various predetermined components. Alternatively, a generalized pre-constructed skeleton constructed from the predetermined components can be made available for the user. These predetermined components include a various selection of rods and joints. The rods are rigid components which remain rigid during motion, while the various joints are moveable components. A static digitized image, for example, an image of the user, is utilized and the constructed skeleton is superimposed onto it. The desired object, such as the image of the user, can then be extracted from the background of the digital image, superimposed onto the skeleton, and the resulting personal character can then be animated, for instance by selecting and dragging one of the hands with a mouse.
A system and method according to the present invention for generating an animatable object in a computer system comprises the steps of constructing a skeleton of a predetermined object; and superimposing the skeleton with a digital image, wherein the digital image includes the predetermined object. BRIEF DESCRIPTION OF THE DRAWINGS
The invention, together with further objects and advantages thereof, may best be understood by referencing the following description taken in conjunction with the accompanying drawings in which:
Figure 1 is a schematic illustration of a general purpose computer system suitable for implementing the present invention.
Figure 2 is a flow diagram of a method for generating an animatable object according to the present invention.
Figures 3A-3G illustrate the steps of the method according to the present invention as shown in Figure 2.
Figure 4 is an illustration of the generated animatable object after portions of it have been moved.
Figure 5 is a flow diagram of a method according to the present invention for utilizing the generated animatable object.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Reference will now be made in detail to a preferred embodiment of the invention. An example of the preferred embodiment is illustrated in the accompanying drawings. While the invention will be described in conjunction with a preferred embodiment, it will be understood that it is not intended to limit the invention to one preferred embodiment. To the contrary, it is intended to cover alternatives, modifications, and equivalents as may be included within the spirit and scope of the invention as defined by the appended claims.
The present invention employs various processes involving data stored in computer systems. These processes are those requiring physical manipulation of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It is sometimes convenient, principally for reasons of common usage, to refer to these signals as bits, values, elements, variables, characters, data structures, or the like. It should remembered, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities.
Figure 1 is a schematic illustration of a general purpose computer system suitable for implementing the process of the present invention. The computer system includes a central processing unit (CPU) 102, which CPU is coupled bi-directionally with random access memory (RAM) 104 and unidirectionally with read only memory (ROM) 106. Typically RAM 104 includes programming instructions and data, including text objects as described herein in addition to other data and instructions for processes currently operating on CPU 102. ROM 106 typically includes basic operating instructions, data and objects used by the computer to perform its functions. In addition, a mass storage device 108, such as a hard disk, CD ROM, magneto- optical (floptical) drive, tape drive or the like, is coupled bi-directionally with CPU 102. Mass storage device 108 generally includes additional programming instructions, data and text objects that typically are not in active use by the CPU, although the address space may be accessed by the CPU, e.g., for virtual memory or the like. The system is also shown to include a visual input device, such as a camera 150. Additionally, the CPU is also coupled to a display 152. Each of the above described computers further includes an input/output source 110 that typically includes input media such as a keyboard, pointer devices {e.g., a mouse or stylus) and the like. Each computer can also include a network connection 112 over which data, including, e.g., text objects, and instructions can be transferred. Additional mass storage devices (not shown) may also be connected to CPU 102 through network connection 112. It will be appreciated by those skilled in the art that the above described hardware and software elements are of standard design and construction.
Figure 2 is a flow diagram of a method for generating a character according to the present invention. A character, as herein referred to, includes any object displayable on a display, such as a computer display. Preferably, the generated character is animatable. The term animatable is herein meant to include the display or presentation of a motion or a series of motions.
A topology of a skeleton is determined via step 300. A skeleton is herein referred to include any rough approximation of an object. For instance, a skeleton can include an outline of a person, or an object such as a chair. When the user determines the topology of a skeleton, the user can roughly estimate what shape the desired character will have. For example, the user can decide to create a personal character of himself. In doing so, the user determines that the topology of the skeleton will include a head portion, a body portion, two arm portions, and two leg portions. It is then determined where motion will occur via step 302. In the given example, the user can determine that motion will occur at the shoulders, the elbows, the wrists, the waist, the hip joints, the knees, and the ankles.
Next, the user can construct various components of the skeleton from established parts via step 304. The established parts preferably include rods and joints, wherein the rods are sections which remain rigid during motion and the joints are movable sections. Preferably, the rods maintain their geometric parameters during motion.
The skeleton is then positioned over a digital image via step 306, and the digital image is prepared via step 308. The desired object in the digital image is preferably positioned such that joint angles are as close to zero as possible. For example, if the desired object is a person, it is preferred that the digital image of the person shows the person in a stance where the arms are separated from the body, such as parallel to the floor, and the legs spread apart.
Preparation of the digital image can include preparation such as background subtraction and real time capture of the image. The main objective of the preparation of the digital image via step 308 is to obtain a clean image of the desired object located within the digital image. This objective can be accomplished in one of several ways. For example, one way is to subtract the background and identify the desired object in its entirety. Background subtraction attempts to extract the desired object from the remaining portions of the digital image. One method of identifying the desired object is to take a photo of the background, then take another photo with the desired object located in front of the background. The first photo can be compared with the second photo and the new object identified. The background can then be automatically subtracted such that an approximate image of the desired object can be derived. For a cleaner image of the desired object, the background subtraction method can be performed in conjunction with utilizing the skeleton as parameters for determining the background versus the desired object. If a portion of the image is within the parameters of the skeleton, then it can be considered as part of the desired object. If a portion of the image is outside the parameters of the skeleton, then it should be considered part of the background. For example, if a cat has inadvertently walked into the second photo, the cat would not be considered part of the desired object since the figure of the cat is not part of the skeleton.
Another way to subtract the background is by using a predefined background such as a box colored blue. When the desired object is placed in front of the predefined background, it is easier to determine what is the background and what is the desired object.
Yet another way to subtract the background is by manually extracting the desired object. The desired object can be manually extracted from the background by manually outlining the desired object from the background. In using the manually extraction method, the digital image is prepared prior to positioning the skeleton over the digital image. Accordingly, step 308 of Figure 2 occurs prior to step 306. Using this manual method allows the desired object to be extracted from a single digital image.
The parameters of the skeleton are then adjusted to surround the entire desired object in the digital image via step 310. Texture maps are then laminated onto the skeleton via step 312 using well-known texture mapping techniques. The appearance of the joints is likely to improve if the skeleton is adjusted tightly around the desired object. Moreover, in general, the texture maps will require less storage space if the skeleton is adjusted tightly around the desired object.
Figures 3A-3G illustrate step 300-312 of the method described in Figure 2. The topology of the skeleton is determined as shown in Figure 3 A. The locations where motion will occur is then determined as shown in Figure 3B. In this example, a skeleton 400 of a person is shown in Figures 3 A and 3B. Figure 3B also shows some of the locations where motion will occur at points 402A-402D.
Figure 3C shows an example of a skeleton 400" which is constructed from established parts. These established parts include rods 404 and joints 406. When a component of the skeleton 400" is moved, the rods 404 remain rigid while the joints 406 can flex and/or rotate. Note that the parameters and dimensions of the rods and joints can be changed, for example, elongated, shrunk, or angled. However, during motion of a particular component, the dimensions of the rods remain fixed. A brief description of examples of joints which can be used on the skeleton is included herein.
Various joint designs may be used to accomplish the end result of substantial structural integrity of the rods during and immediately after movement. Two examples of joints which can be used are what is herein referred to as center pin joints, and center radial joints. Either of the exemplary joints can be made from various geometric shapes. Preferably, they are a compilation of polygons. For example, these joints can be created out of two or more rectangles, trapezoids, or triangles.
The center pin joint is a non-segmented joint. A non-segmented joint is herein meant to describe a joint which consists of approximately two polygons. The center pin joint can be imagined as taking two abutting rectangles and sticking a pin through the center of the common edge. Both halves of the joint experience no substantial distortion as the joint angle is varied.
However, the center pin joint may be discontinuous in some way when one portion of the joint is being rotated. For example, when a lower arm of a character is moved, a triangular gap may appear between the upper arm and the lower arm. The center radial joint is a segmented joint. Segmented joints have the properties that they appear to retain texture map continuity when the joint is rotated, however, the interiors of the segments will be warped in some manner. For example, when a lower arm of the character is moved, no gap will appear between the upper arm and the lower arm since the segments of the segmented joint will warp to cover that section. Segmented joints can consist of two or more geometric shapes such as polygons.
Figure 3D illustrates the skeleton 400" being overlaid with the desired object of a prepared digital image, in this case, a person 410, to create a customized character.
Figure 3E shows the desired object, in this case a person, after the digital image has been prepared via step 308 of Figure 2. The background has been subtracted and the desired object
410 is clearly defined. As previously mentioned, details of examples of methods for the preparation of the digital image are discussed in co-pending applications which are herein incorporated by reference. As previously stated, a clean image of the desired object can be obtained by several ways. One method is for a person to follow the outlines of the desired object, thereby "cutting out" the desired object and "pasting" the desired object onto the skeleton. Another method is to photograph the background image without the desired object, then photograph the desired object in front of the background and perform a background subtraction based on subtracting the first image from the second image. Additionally, to obtain a cleaner image than what the background subtraction can provide, the background subtraction can be performed in conjunction with the parameters of the skeleton such that anything outside the skeleton will be subtracted as background and portions inside the skeleton can be determined as part of the desired object. This preparation method can avoid situations such as dark spots within the center of the desired object or additional objects aside from the desired object being included as part of the desired object. Figures 3F and 3G illustrate the texture mapping step 312 of Figure 2. Texture mapping is well known in the field of art. For example, basic principles of texture mapping can be found in Advanced Animation & Rendering Techniques, Chapter 6, "Mapping Technique: Texture & Environmental Mapping", Alan Watt, Mark Watt, Addison Wesley (1992). Laminating the texture map onto the skeleton allows consistency in the texture of a component of the desired object when that component is moved. For example, when an arm is moved from a vertical position to a horizontal position, the stripes on the sleeve of the arm will also appear to move from the vertical position to the horizontal position. Texture mapping for purposes of the present invention can be performed in various ways, including affine mapping, perspective mapping, and bilinear mapping.
In the example shown in Figures 3F and 3G, a texture map area 454 is associated with a portion of the character as shown in Figure 3F. The portion associated with the texture map area 454 is shown as an arm 450, which also includes a portion of a sleeve with stripes on it.The pixels included in the area associated with the texture map area 454 are copied and transformed from an (x,y) coordinate associated with the pixels to a (u,v) coordinate associated with the texture map area 454. The transformed, copied pixels are typically referred to as texels.
Figure 3G shows the texture map area 454 including texels. A region 452 is associated with the texture map area 454. The texture map area 454 includes all the pixels within the area, which are typically referred to as texels. The texture map area 454 typically includes representative points, in this example, the vertices 456a-456d. Data related to these vertices
456a-456d include (x,y) coordinates related to the display and they also include (u,v) coordinates related to the texture mapping area 454. The (u,v) coordinates of the vertices 456a-456d can be derived through various methods. One method of deriving the (u,v) coordinates is described below. The (u,v) coordinates range from 0 to 1. The u and v coordinates can be derived as ratios to the height and width of the bounding texture map area 454. For instance, if the top boundary 458 of the texture mapping area 454 is one hundred texels wide and if the vertex 456a is at the twenty-fifth texel counting from the upper left corner of the texture mapping area 454, then the vertices 456a will have a (u,v) coordinate of (0, .25). (25 /100 = .25) The (u,v) coordinate does not change regardless of how the character is moved within the display. Thus, the vertices 456a- 456d can have their (x,y) coordinates changed without affecting their (u,v) coordinates. When the texels are scanned, the (u,v) coordinate of the non-vertices texels are interpolated, such that only the (u,v) coordinates of the vertices 456a-456d need be stored. Additionally, only the image included in the region 452 will be scanned out, such that the remaining portions of the character outside the region 452, but within the texture map area 454 will not be addressed. Accordingly, the texture appears consistent with the rest of the shirt when a portion of the shirt is moved.
Figure 4 shows the resulting customized character with portions of the character having been moved. Despite the fact that the customized character is initially created in a static pose, it is animatable after it is created. For instance, although it is preferred that the desired object, such as a child, poses in a single pose, preferably arms out and legs apart, this digitized image can be animated once the customized character of the child is created. In Figure 4, the arms have been rotated upward while the legs have been rotated in a clockwise direction. Thus the customized character can be animated in whatever manner the user chooses.
Note that one of the advantages of the present invention is that a user can create a customized character quickly and efficiently without the need for programming in code and without a highly labor intensive session. The user can "click and drag" a portion of the customized character, such as the arm, into a new position. Additionally, parameters and dimensions can be changed, for instance, the length of the legs can be changed and the waist of the customized character can be cinched. Thus, once the customized character is created, the parameter of the skeleton can be changed and the desired object from the digital image changes along with the skeleton. The user may simply "click and drag" certain points of the customized character such that the user can change the parameters of the torso by clicking on a point in the waste of the character dragging it closer in, thereby cinching the waste.
The customized characters can be the image of a person or an inanimate object such as a teddy bear or a chair, or an imaginary character. These customized characters can be used in various ways, for example, they can be animated, used as a personal representation of the user, or used in a computer game. Because the customized character can have many degrees of freedom allowed by a large number of parameters, almost any type of animation is possible. Once the customized character is created, it is a coherent connected geometric model in which portions of the customized character can be moved in conjunction with the rest of the rest of the customized character rather than as a compilation of independent parts. Automatic animation can also be performed via a game or animation package. For animation of expression, for example on a person's face, a continual capture of the person's face can be used to paste onto the face of the customized character.
Once created, the customized character can be stored in memory, perhaps in a file format. The customized character is a displayable primitive which can be recalled onto a display whenever the user prefers. The customized character is an editable construct wherein the form of the character can be changed to a user's preferences. For example, joint angles can be changed, motions can be made, and the customized character can be programmed to dance. Each component of the customized character, such as rods and joints, can be considered an object in an appropriate programming language, such as C++. Accordingly, commands may be sent to a body part to detach itself from the remaining body, or a body part can be referenced by name and a command directed specifically to that particular body part.
Because the skeleton of the customized character is a coherent geometric model, either forward kinematics or inverse kinematics can be used to ensure that when a portion of the customized character is moved, other portions connected to it will behave according to a predetermined model of motion. An example of forward kinematics is when the joints of an arm of a customized character is moved, the hand attached to the arm will move accordingly. An example of inverse kinematics is when a hand is moved, the joints in the arm are consistent with the hand motion such that the rest of the arm will move appropriately to adjust to the new position of the hand. The principles and applications of inverse kinematics is well known in the field of art.
A further advantage of the method and system according to the present invention is the ability to transmit the data relating to the customized character over a network, such as the Internet. Once the data related to the generation of the customized character has been transmitted, it is not necessary to continually retransmit the generation data. Rather, the data related to the generation of the customized character need only be transmitted and properly received once. To create animation, once the receiver has received the data regarding the generation of the customized character, only data related to the animation would need to be sent. For example, once the customized character has been received by the receiver, the sender would merely need to send information such as joint angles, position of body, possible rotation of body, changes in length, and possibly changes in width. Accordingly, only changes to the customized character would need to be sent rather than re-sending the customized character in various animated forms such as would be necessary in a continuous stream of video. Sending a continuous stream of video would be highly inefficient and costly. In contrast, according to the method and system of the present invention, after the initial cost of sending data related to the creation of the customized character, the customized character would not need to be recreated in a different stance, rather only the changes to the customized character would need to be sent. Merely sending the changes would normally constitute such a small amount of data that two players on a network such as the Internet could play a game together in appropriate real time with customized characters representing themselves with each game player sending data regarding the changes to their own customized character to the other computer on the Internet.
Figure 5 shows a basic flow diagram of a method according to the present invention for animating a customized character in a computer network system. Data related to the generation of a customized character is transmitted over a network via step 600, wherein the data related to the generation of the personal character no longer needed to be transmitted once the object is generated. Thus, unlike a stream of video, or an image which needs to be refreshed regularly, once the data regarding the generation of the customized character is received, no further data related to the generation of the same customized character is required. Then, data related to an animation, or a change in any portion of the customized character is transmitted via step 602. Accordingly, only the changes, such as changes in a particular joint angle, need to be transmitted through the network from that time forward.
A method and system for generating an animatable character has been disclosed. Software written according to the present invention is to be stored in some form of computer- readable medium, such as memory or CD-ROM, or transmitted over a network, and executed by a processor.
While this invention has been described in terms of preferred embodiments, it is contemplated that alternations, modifications, and permutations thereof will become apparent to those skilled in the art upon the reading of the specification and study of the drawing. Furthermore, certain terminology has been used for the purposes of descriptive clarity, and not to limit the present invention. It is therefore intended that the following appended claims include all such alternations, modification, and permutations as fall within the true spirit and scope of the present invention.

Claims

CLAIMSWhat is claimed is:
1. A method for generating a character in a computer system comprising : constructing a skeleton of a predetermined object; and superimposing the skeleton with a digital image wherein the digital image includes the predetermined object.
2. The method of claim 1, wherein the skeleton is constructed of at least one predetermined component
3. The method of claim 2, wherein the predetermined component is a rod.
4. The method of claim 2, wherein the predetermined component is a joint.
5. The method of claim 1, further comprising a step of laminating a texture map to the skeleton.
6. The method of claim 1, further comprising a step of adjusting a skeleton parameter to correspond with the desired object.
7. The method of claim 6, wherein the step of adjusting includes adjusting the skeleton parameter to approximate a parameter of the desired object.
8. The method of claim 1, further comprising a step of preparing the digital image.
9. The method of claim 7, wherein the step of preparing the digital image includes background subtraction.
10. The method of claim 1, further comprising a step of determining a topology of the skeleton.
11. The method of claim 1 , further comprising a step of determining where a motion will occur.
12. The method of claim 1, wherein the personalized character can be animated.
13. A method for animating an object in a computer system comprising: transmitting data related to a generation of the object, wherein the data related to the generation of the object is no longer transmitted once the object is generated; and transmitting data related to an animation of the object.
14. The method of claim 13, wherein the steps of transmitting occur via a network.
15. The method of claim 13 , wherein the steps of transmitting occur via an Internet.
16. A system for generating a character in a computer system comprising: means for constructing a skeleton of a predetermined object; and means for superimposing the skeleton with a digital image wherein the digital image includes the predetermined object.
17. The system of claim 16, wherein the skeleton is constructed of at least one predetermined component.
18. The system of claim 17, wherein the predetermined component is a rod.
19. The system of claim 17, wherein the predetermined component is a joint.
20. The system of claim 16, further comprising a means for laminating a texture map to the skeleton.
21. The system of claim 16, further comprising a means for adjusting a skeleton parameter to correspond with the desired object.
22. The system of claim 16, wherein the personalized character can be animated.
23. A system for animating an object in a computer system comprising: means for transmitting data related to a generation of the object, wherein the data related to the generation of the object is no longer transmitted once the object is generated; and means for transmitting data related to an animation of the object.
24. The system of claim 23, wherein transmitting the data occurs via a network.
25. The system of claim 23, wherein transmitting the data occurs via an Internet.
26. A method for compressing video data comprising: developing an initial representation from an initial image of a known object; comparing a current image of said known object with said initial representation; and developing a description of a position change of said known object between said current image and said initial representation.
27. A method as recited in claim 26 wherein said initial representation is a skeleton representation.
28. A method as recited in claim 27 wherein said description includes a description at least one of a rod and a joint position.
29. A method as recited in claim 27 wherein said at least one of a rod and a joint position is a relative position.
30. A method as recited in claim 27 wherein said at least one of a rod and a joint position is an absolute position.
31. A method as recited in claim 26 wherein said description is transmitted over a network.
PCT/US1998/022031 1997-10-15 1998-10-15 A system and method for generating an animatable character WO1999019840A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU98082/98A AU9808298A (en) 1997-10-15 1998-10-15 A system and method for generating an animatable character

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US6236197P 1997-10-15 1997-10-15
US60/062,361 1997-10-15

Publications (1)

Publication Number Publication Date
WO1999019840A1 true WO1999019840A1 (en) 1999-04-22

Family

ID=22041970

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1998/022031 WO1999019840A1 (en) 1997-10-15 1998-10-15 A system and method for generating an animatable character

Country Status (3)

Country Link
US (3) US6384819B1 (en)
AU (1) AU9808298A (en)
WO (1) WO1999019840A1 (en)

Families Citing this family (257)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US6384819B1 (en) * 1997-10-15 2002-05-07 Electric Planet, Inc. System and method for generating an animatable character
US7966078B2 (en) 1999-02-01 2011-06-21 Steven Hoffberg Network media appliance system and method
US7663648B1 (en) * 1999-11-12 2010-02-16 My Virtual Model Inc. System and method for displaying selected garments on a computer-simulated mannequin
JP3568861B2 (en) * 2000-01-27 2004-09-22 株式会社スクウェア・エニックス Three-dimensional object transformation method and video game apparatus in video game, and computer-readable recording medium on which video game program is recorded
US7091975B1 (en) * 2000-07-21 2006-08-15 Microsoft Corporation Shape and animation methods and systems using examples
EP1207498A3 (en) * 2000-11-15 2003-10-15 Sega Corporation Display object generation method in information processing equipment
US6990639B2 (en) 2002-02-07 2006-01-24 Microsoft Corporation System and process for controlling electronic components in a ubiquitous computing environment using multimodal integration
US20030193503A1 (en) * 2002-04-10 2003-10-16 Mark Seminatore Computer animation system and method
US8745541B2 (en) 2003-03-25 2014-06-03 Microsoft Corporation Architecture for controlling a computer using hand gestures
US7665041B2 (en) * 2003-03-25 2010-02-16 Microsoft Corporation Architecture for controlling a computer using hand gestures
US7944449B2 (en) * 2003-05-14 2011-05-17 Pixar Methods and apparatus for export of animation data to non-native articulation schemes
US20060200745A1 (en) * 2005-02-15 2006-09-07 Christopher Furmanski Method and apparatus for producing re-customizable multi-media
US8077179B2 (en) * 2005-07-11 2011-12-13 Pandoodle Corp. System and method for creating animated video with personalized elements
US7697827B2 (en) 2005-10-17 2010-04-13 Konicek Jeffrey C User-friendlier interfaces for a camera
US7675520B2 (en) * 2005-12-09 2010-03-09 Digital Steamworks, Llc System, method and computer program for creating two dimensional (2D) or three dimensional (3D) computer animation from video
US20080158224A1 (en) * 2006-12-28 2008-07-03 National Tsing Hua University Method for generating an animatable three-dimensional character with a skin surface and an internal skeleton
US8005238B2 (en) 2007-03-22 2011-08-23 Microsoft Corporation Robust adaptive beamforming with enhanced noise suppression
US8005237B2 (en) 2007-05-17 2011-08-23 Microsoft Corp. Sensor array beamformer post-processor
US9070207B2 (en) * 2007-09-06 2015-06-30 Yeda Research & Development Co., Ltd. Modelization of objects in images
US8629976B2 (en) * 2007-10-02 2014-01-14 Microsoft Corporation Methods and systems for hierarchical de-aliasing time-of-flight (TOF) systems
US20090166684A1 (en) * 2007-12-26 2009-07-02 3Dv Systems Ltd. Photogate cmos pixel for 3d cameras having reduced intra-pixel cross talk
US8385557B2 (en) * 2008-06-19 2013-02-26 Microsoft Corporation Multichannel acoustic echo reduction
US8325909B2 (en) 2008-06-25 2012-12-04 Microsoft Corporation Acoustic echo suppression
US8203699B2 (en) 2008-06-30 2012-06-19 Microsoft Corporation System architecture design for time-of-flight system having reduced differential pixel size, and time-of-flight systems so designed
US8681321B2 (en) 2009-01-04 2014-03-25 Microsoft International Holdings B.V. Gated 3D camera
US8267781B2 (en) 2009-01-30 2012-09-18 Microsoft Corporation Visual target tracking
US8294767B2 (en) * 2009-01-30 2012-10-23 Microsoft Corporation Body scan
US8565477B2 (en) 2009-01-30 2013-10-22 Microsoft Corporation Visual target tracking
US8565476B2 (en) 2009-01-30 2013-10-22 Microsoft Corporation Visual target tracking
US8577085B2 (en) 2009-01-30 2013-11-05 Microsoft Corporation Visual target tracking
US8295546B2 (en) 2009-01-30 2012-10-23 Microsoft Corporation Pose tracking pipeline
US8577084B2 (en) 2009-01-30 2013-11-05 Microsoft Corporation Visual target tracking
US8487938B2 (en) 2009-01-30 2013-07-16 Microsoft Corporation Standard Gestures
US8682028B2 (en) 2009-01-30 2014-03-25 Microsoft Corporation Visual target tracking
US8448094B2 (en) * 2009-01-30 2013-05-21 Microsoft Corporation Mapping a natural input device to a legacy system
US20100199231A1 (en) * 2009-01-30 2010-08-05 Microsoft Corporation Predictive determination
US7996793B2 (en) 2009-01-30 2011-08-09 Microsoft Corporation Gesture recognizer system architecture
US8588465B2 (en) 2009-01-30 2013-11-19 Microsoft Corporation Visual target tracking
US8773355B2 (en) 2009-03-16 2014-07-08 Microsoft Corporation Adaptive cursor sizing
US9256282B2 (en) * 2009-03-20 2016-02-09 Microsoft Technology Licensing, Llc Virtual object manipulation
US8988437B2 (en) 2009-03-20 2015-03-24 Microsoft Technology Licensing, Llc Chaining animations
US9313376B1 (en) 2009-04-01 2016-04-12 Microsoft Technology Licensing, Llc Dynamic depth power equalization
US8181123B2 (en) 2009-05-01 2012-05-15 Microsoft Corporation Managing virtual port associations to users in a gesture-based computing environment
US9015638B2 (en) 2009-05-01 2015-04-21 Microsoft Technology Licensing, Llc Binding users to a gesture based system and providing feedback to the users
US8660303B2 (en) * 2009-05-01 2014-02-25 Microsoft Corporation Detection of body and props
US8649554B2 (en) 2009-05-01 2014-02-11 Microsoft Corporation Method to control perspective for a camera-controlled computer
US8503720B2 (en) 2009-05-01 2013-08-06 Microsoft Corporation Human body pose estimation
US8942428B2 (en) 2009-05-01 2015-01-27 Microsoft Corporation Isolate extraneous motions
US8638985B2 (en) 2009-05-01 2014-01-28 Microsoft Corporation Human body pose estimation
US8340432B2 (en) 2009-05-01 2012-12-25 Microsoft Corporation Systems and methods for detecting a tilt angle from a depth image
US9898675B2 (en) 2009-05-01 2018-02-20 Microsoft Technology Licensing, Llc User movement tracking feedback to improve tracking
US8253746B2 (en) 2009-05-01 2012-08-28 Microsoft Corporation Determine intended motions
US9377857B2 (en) 2009-05-01 2016-06-28 Microsoft Technology Licensing, Llc Show body position
US9498718B2 (en) 2009-05-01 2016-11-22 Microsoft Technology Licensing, Llc Altering a view perspective within a display environment
US9182814B2 (en) 2009-05-29 2015-11-10 Microsoft Technology Licensing, Llc Systems and methods for estimating a non-visible or occluded body part
US8509479B2 (en) 2009-05-29 2013-08-13 Microsoft Corporation Virtual object
US20100302365A1 (en) * 2009-05-29 2010-12-02 Microsoft Corporation Depth Image Noise Reduction
US8625837B2 (en) 2009-05-29 2014-01-07 Microsoft Corporation Protocol and format for communicating an image from a camera to a computing environment
US8320619B2 (en) 2009-05-29 2012-11-27 Microsoft Corporation Systems and methods for tracking a model
US8693724B2 (en) 2009-05-29 2014-04-08 Microsoft Corporation Method and system implementing user-centric gesture control
US20100302138A1 (en) * 2009-05-29 2010-12-02 Microsoft Corporation Methods and systems for defining or modifying a visual representation
US8418085B2 (en) 2009-05-29 2013-04-09 Microsoft Corporation Gesture coach
US9383823B2 (en) 2009-05-29 2016-07-05 Microsoft Technology Licensing, Llc Combining gestures beyond skeletal
US8542252B2 (en) * 2009-05-29 2013-09-24 Microsoft Corporation Target digitization, extraction, and tracking
US8856691B2 (en) 2009-05-29 2014-10-07 Microsoft Corporation Gesture tool
US9400559B2 (en) 2009-05-29 2016-07-26 Microsoft Technology Licensing, Llc Gesture shortcuts
US8744121B2 (en) 2009-05-29 2014-06-03 Microsoft Corporation Device for identifying and tracking multiple humans over time
US8379101B2 (en) 2009-05-29 2013-02-19 Microsoft Corporation Environment and/or target segmentation
US8487871B2 (en) 2009-06-01 2013-07-16 Microsoft Corporation Virtual desktop coordinate transformation
US8390680B2 (en) 2009-07-09 2013-03-05 Microsoft Corporation Visual representation expression based on player expression
US9159151B2 (en) 2009-07-13 2015-10-13 Microsoft Technology Licensing, Llc Bringing a visual representation to life via learned input from the user
US8264536B2 (en) * 2009-08-25 2012-09-11 Microsoft Corporation Depth-sensitive imaging via polarization-state mapping
US9141193B2 (en) 2009-08-31 2015-09-22 Microsoft Technology Licensing, Llc Techniques for using human gestures to control gesture unaware programs
US8508919B2 (en) 2009-09-14 2013-08-13 Microsoft Corporation Separation of electrical and optical components
US8330134B2 (en) * 2009-09-14 2012-12-11 Microsoft Corporation Optical fault monitoring
US8428340B2 (en) 2009-09-21 2013-04-23 Microsoft Corporation Screen space plane identification
US8760571B2 (en) 2009-09-21 2014-06-24 Microsoft Corporation Alignment of lens and image sensor
US8976986B2 (en) * 2009-09-21 2015-03-10 Microsoft Technology Licensing, Llc Volume adjustment based on listener position
US9014546B2 (en) 2009-09-23 2015-04-21 Rovi Guides, Inc. Systems and methods for automatically detecting users within detection regions of media devices
US8452087B2 (en) * 2009-09-30 2013-05-28 Microsoft Corporation Image selection techniques
US8723118B2 (en) 2009-10-01 2014-05-13 Microsoft Corporation Imager for constructing color and depth images
US7961910B2 (en) 2009-10-07 2011-06-14 Microsoft Corporation Systems and methods for tracking a model
US8867820B2 (en) 2009-10-07 2014-10-21 Microsoft Corporation Systems and methods for removing a background of an image
US8564534B2 (en) 2009-10-07 2013-10-22 Microsoft Corporation Human tracking system
US8963829B2 (en) 2009-10-07 2015-02-24 Microsoft Corporation Methods and systems for determining and tracking extremities of a target
US20110090231A1 (en) * 2009-10-16 2011-04-21 Erkki Heilakka On-line animation method and arrangement
US9400548B2 (en) * 2009-10-19 2016-07-26 Microsoft Technology Licensing, Llc Gesture personalization and profile roaming
US8988432B2 (en) 2009-11-05 2015-03-24 Microsoft Technology Licensing, Llc Systems and methods for processing an image for target tracking
US8843857B2 (en) 2009-11-19 2014-09-23 Microsoft Corporation Distance scalable no touch computing
US9244533B2 (en) 2009-12-17 2016-01-26 Microsoft Technology Licensing, Llc Camera navigation for presentations
US20110150271A1 (en) 2009-12-18 2011-06-23 Microsoft Corporation Motion detection using depth images
US8320621B2 (en) 2009-12-21 2012-11-27 Microsoft Corporation Depth projector system with integrated VCSEL array
US9268404B2 (en) 2010-01-08 2016-02-23 Microsoft Technology Licensing, Llc Application gesture interpretation
US9019201B2 (en) 2010-01-08 2015-04-28 Microsoft Technology Licensing, Llc Evolving universal gesture sets
US8631355B2 (en) 2010-01-08 2014-01-14 Microsoft Corporation Assigning gesture dictionaries
US8334842B2 (en) 2010-01-15 2012-12-18 Microsoft Corporation Recognizing user intent in motion capture system
US8933884B2 (en) 2010-01-15 2015-01-13 Microsoft Corporation Tracking groups of users in motion capture system
US8676581B2 (en) 2010-01-22 2014-03-18 Microsoft Corporation Speech recognition analysis via identification information
US8265341B2 (en) 2010-01-25 2012-09-11 Microsoft Corporation Voice-body identity correlation
US8864581B2 (en) 2010-01-29 2014-10-21 Microsoft Corporation Visual based identitiy tracking
US8891067B2 (en) 2010-02-01 2014-11-18 Microsoft Corporation Multiple synchronized optical sources for time-of-flight range finding systems
US8687044B2 (en) 2010-02-02 2014-04-01 Microsoft Corporation Depth camera compatibility
US8619122B2 (en) 2010-02-02 2013-12-31 Microsoft Corporation Depth camera compatibility
US8717469B2 (en) 2010-02-03 2014-05-06 Microsoft Corporation Fast gating photosurface
US8499257B2 (en) * 2010-02-09 2013-07-30 Microsoft Corporation Handles interactions for human—computer interface
US8659658B2 (en) * 2010-02-09 2014-02-25 Microsoft Corporation Physical interaction zone for gesture-based user interfaces
US8633890B2 (en) * 2010-02-16 2014-01-21 Microsoft Corporation Gesture detection based on joint skipping
US20110199302A1 (en) * 2010-02-16 2011-08-18 Microsoft Corporation Capturing screen objects using a collision volume
US8928579B2 (en) 2010-02-22 2015-01-06 Andrew David Wilson Interacting with an omni-directionally projected display
US8498846B2 (en) * 2010-02-25 2013-07-30 Microsoft Corporation Joint-aware manipulation of deformable models
US8422769B2 (en) * 2010-03-05 2013-04-16 Microsoft Corporation Image segmentation using reduced foreground training data
US8655069B2 (en) 2010-03-05 2014-02-18 Microsoft Corporation Updating image segmentation following user input
US8411948B2 (en) 2010-03-05 2013-04-02 Microsoft Corporation Up-sampling binary images for segmentation
US20110221755A1 (en) * 2010-03-12 2011-09-15 Kevin Geisner Bionic motion
US20110223995A1 (en) 2010-03-12 2011-09-15 Kevin Geisner Interacting with a computer based application
US8279418B2 (en) 2010-03-17 2012-10-02 Microsoft Corporation Raster scanning for depth detection
US8213680B2 (en) * 2010-03-19 2012-07-03 Microsoft Corporation Proxy training data for human body tracking
US8514269B2 (en) * 2010-03-26 2013-08-20 Microsoft Corporation De-aliasing depth images
US8523667B2 (en) 2010-03-29 2013-09-03 Microsoft Corporation Parental control settings based on body dimensions
US8605763B2 (en) 2010-03-31 2013-12-10 Microsoft Corporation Temperature measurement and control for laser and light-emitting diodes
US9098873B2 (en) 2010-04-01 2015-08-04 Microsoft Technology Licensing, Llc Motion-based interactive shopping environment
US9646340B2 (en) 2010-04-01 2017-05-09 Microsoft Technology Licensing, Llc Avatar-based virtual dressing room
US8351651B2 (en) 2010-04-26 2013-01-08 Microsoft Corporation Hand-location post-process refinement in a tracking system
US8379919B2 (en) 2010-04-29 2013-02-19 Microsoft Corporation Multiple centroid condensation of probability distribution clouds
US8284847B2 (en) 2010-05-03 2012-10-09 Microsoft Corporation Detecting motion for a multifunction sensor device
US8498481B2 (en) 2010-05-07 2013-07-30 Microsoft Corporation Image segmentation using star-convexity constraints
US8885890B2 (en) 2010-05-07 2014-11-11 Microsoft Corporation Depth map confidence filtering
US8457353B2 (en) 2010-05-18 2013-06-04 Microsoft Corporation Gestures and gesture modifiers for manipulating a user-interface
US8803888B2 (en) 2010-06-02 2014-08-12 Microsoft Corporation Recognition system for sharing information
US8751215B2 (en) 2010-06-04 2014-06-10 Microsoft Corporation Machine based sign language interpreter
US9008355B2 (en) 2010-06-04 2015-04-14 Microsoft Technology Licensing, Llc Automatic depth camera aiming
US9557574B2 (en) 2010-06-08 2017-01-31 Microsoft Technology Licensing, Llc Depth illumination and detection optics
US8330822B2 (en) 2010-06-09 2012-12-11 Microsoft Corporation Thermally-tuned depth camera light source
US9384329B2 (en) 2010-06-11 2016-07-05 Microsoft Technology Licensing, Llc Caloric burn determination from body movement
US8675981B2 (en) 2010-06-11 2014-03-18 Microsoft Corporation Multi-modal gender recognition including depth data
US8749557B2 (en) 2010-06-11 2014-06-10 Microsoft Corporation Interacting with user interface via avatar
US8982151B2 (en) 2010-06-14 2015-03-17 Microsoft Technology Licensing, Llc Independently processing planes of display data
US8558873B2 (en) 2010-06-16 2013-10-15 Microsoft Corporation Use of wavefront coding to create a depth image
US8670029B2 (en) 2010-06-16 2014-03-11 Microsoft Corporation Depth camera illuminator with superluminescent light-emitting diode
US8296151B2 (en) 2010-06-18 2012-10-23 Microsoft Corporation Compound gesture-speech commands
US8381108B2 (en) 2010-06-21 2013-02-19 Microsoft Corporation Natural user input for driving interactive stories
US8416187B2 (en) 2010-06-22 2013-04-09 Microsoft Corporation Item navigation using motion-capture data
US9075434B2 (en) 2010-08-20 2015-07-07 Microsoft Technology Licensing, Llc Translating user motion into multiple object responses
US8613666B2 (en) 2010-08-31 2013-12-24 Microsoft Corporation User selection and navigation based on looped motions
US8437506B2 (en) 2010-09-07 2013-05-07 Microsoft Corporation System for fast, probabilistic skeletal tracking
US20120058824A1 (en) 2010-09-07 2012-03-08 Microsoft Corporation Scalable real-time motion recognition
US8988508B2 (en) 2010-09-24 2015-03-24 Microsoft Technology Licensing, Llc. Wide angle field of view active illumination imaging system
US8681255B2 (en) 2010-09-28 2014-03-25 Microsoft Corporation Integrated low power depth camera and projection device
US8548270B2 (en) 2010-10-04 2013-10-01 Microsoft Corporation Time-of-flight depth imaging
US9484065B2 (en) 2010-10-15 2016-11-01 Microsoft Technology Licensing, Llc Intelligent determination of replays based on event identification
US8592739B2 (en) 2010-11-02 2013-11-26 Microsoft Corporation Detection of configuration changes of an optical element in an illumination system
US8866889B2 (en) 2010-11-03 2014-10-21 Microsoft Corporation In-home depth camera calibration
US8667519B2 (en) 2010-11-12 2014-03-04 Microsoft Corporation Automatic passive and anonymous feedback system
US10726861B2 (en) 2010-11-15 2020-07-28 Microsoft Technology Licensing, Llc Semi-private communication in open environments
US9349040B2 (en) 2010-11-19 2016-05-24 Microsoft Technology Licensing, Llc Bi-modal depth-image analysis
US10234545B2 (en) 2010-12-01 2019-03-19 Microsoft Technology Licensing, Llc Light source module
US8553934B2 (en) 2010-12-08 2013-10-08 Microsoft Corporation Orienting the position of a sensor
US8618405B2 (en) 2010-12-09 2013-12-31 Microsoft Corp. Free-space gesture musical instrument digital interface (MIDI) controller
US8408706B2 (en) 2010-12-13 2013-04-02 Microsoft Corporation 3D gaze tracker
US8920241B2 (en) 2010-12-15 2014-12-30 Microsoft Corporation Gesture controlled persistent handles for interface guides
US9171264B2 (en) 2010-12-15 2015-10-27 Microsoft Technology Licensing, Llc Parallel processing machine learning decision tree training
US8884968B2 (en) 2010-12-15 2014-11-11 Microsoft Corporation Modeling an object from image data
US8448056B2 (en) 2010-12-17 2013-05-21 Microsoft Corporation Validation analysis of human target
US8803952B2 (en) 2010-12-20 2014-08-12 Microsoft Corporation Plural detector time-of-flight depth mapping
US8994718B2 (en) 2010-12-21 2015-03-31 Microsoft Technology Licensing, Llc Skeletal control of three-dimensional virtual world
US8385596B2 (en) 2010-12-21 2013-02-26 Microsoft Corporation First person shooter control with virtual skeleton
US9848106B2 (en) 2010-12-21 2017-12-19 Microsoft Technology Licensing, Llc Intelligent gameplay photo capture
US9821224B2 (en) 2010-12-21 2017-11-21 Microsoft Technology Licensing, Llc Driving simulator control with virtual skeleton
US9823339B2 (en) 2010-12-21 2017-11-21 Microsoft Technology Licensing, Llc Plural anode time-of-flight sensor
US9123316B2 (en) 2010-12-27 2015-09-01 Microsoft Technology Licensing, Llc Interactive content creation
US8488888B2 (en) 2010-12-28 2013-07-16 Microsoft Corporation Classification of posture states
US8401225B2 (en) 2011-01-31 2013-03-19 Microsoft Corporation Moving object segmentation using depth images
US8401242B2 (en) 2011-01-31 2013-03-19 Microsoft Corporation Real-time camera tracking using depth maps
US9247238B2 (en) 2011-01-31 2016-01-26 Microsoft Technology Licensing, Llc Reducing interference between multiple infra-red depth cameras
US8587583B2 (en) 2011-01-31 2013-11-19 Microsoft Corporation Three-dimensional environment reconstruction
US8724887B2 (en) 2011-02-03 2014-05-13 Microsoft Corporation Environmental modifications to mitigate environmental factors
US8942917B2 (en) 2011-02-14 2015-01-27 Microsoft Corporation Change invariant scene recognition by an agent
US8497838B2 (en) 2011-02-16 2013-07-30 Microsoft Corporation Push actuation of interface controls
US9551914B2 (en) 2011-03-07 2017-01-24 Microsoft Technology Licensing, Llc Illuminator with refractive optical element
US9067136B2 (en) 2011-03-10 2015-06-30 Microsoft Technology Licensing, Llc Push personalization of interface controls
US8571263B2 (en) 2011-03-17 2013-10-29 Microsoft Corporation Predicting joint positions
US9470778B2 (en) 2011-03-29 2016-10-18 Microsoft Technology Licensing, Llc Learning from high quality depth measurements
US10642934B2 (en) 2011-03-31 2020-05-05 Microsoft Technology Licensing, Llc Augmented conversational understanding architecture
US9298287B2 (en) 2011-03-31 2016-03-29 Microsoft Technology Licensing, Llc Combined activation for natural user interface systems
US9842168B2 (en) 2011-03-31 2017-12-12 Microsoft Technology Licensing, Llc Task driven user intents
US9760566B2 (en) 2011-03-31 2017-09-12 Microsoft Technology Licensing, Llc Augmented conversational understanding agent to identify conversation context between two humans and taking an agent action thereof
US8824749B2 (en) 2011-04-05 2014-09-02 Microsoft Corporation Biometric recognition
US8503494B2 (en) 2011-04-05 2013-08-06 Microsoft Corporation Thermal management system
US8620113B2 (en) 2011-04-25 2013-12-31 Microsoft Corporation Laser diode modes
US8702507B2 (en) 2011-04-28 2014-04-22 Microsoft Corporation Manual and camera-based avatar control
US9259643B2 (en) 2011-04-28 2016-02-16 Microsoft Technology Licensing, Llc Control of separate computer game elements
US10671841B2 (en) 2011-05-02 2020-06-02 Microsoft Technology Licensing, Llc Attribute state classification
US8888331B2 (en) 2011-05-09 2014-11-18 Microsoft Corporation Low inductance light source module
US9064006B2 (en) 2012-08-23 2015-06-23 Microsoft Technology Licensing, Llc Translating natural language utterances to keyword search queries
US9137463B2 (en) 2011-05-12 2015-09-15 Microsoft Technology Licensing, Llc Adaptive high dynamic range camera
US8788973B2 (en) 2011-05-23 2014-07-22 Microsoft Corporation Three-dimensional gesture controlled avatar configuration interface
US8760395B2 (en) 2011-05-31 2014-06-24 Microsoft Corporation Gesture recognition techniques
US8526734B2 (en) 2011-06-01 2013-09-03 Microsoft Corporation Three-dimensional background removal for vision system
US9594430B2 (en) 2011-06-01 2017-03-14 Microsoft Technology Licensing, Llc Three-dimensional foreground selection for vision system
US8897491B2 (en) 2011-06-06 2014-11-25 Microsoft Corporation System for finger recognition and tracking
US9724600B2 (en) 2011-06-06 2017-08-08 Microsoft Technology Licensing, Llc Controlling objects in a virtual environment
US10796494B2 (en) 2011-06-06 2020-10-06 Microsoft Technology Licensing, Llc Adding attributes to virtual representations of real-world objects
US9098110B2 (en) 2011-06-06 2015-08-04 Microsoft Technology Licensing, Llc Head rotation tracking from depth-based center of mass
US9208571B2 (en) 2011-06-06 2015-12-08 Microsoft Technology Licensing, Llc Object digitization
US8597142B2 (en) 2011-06-06 2013-12-03 Microsoft Corporation Dynamic camera based practice mode
US8929612B2 (en) 2011-06-06 2015-01-06 Microsoft Corporation System for recognizing an open or closed hand
US9013489B2 (en) 2011-06-06 2015-04-21 Microsoft Technology Licensing, Llc Generation of avatar reflecting player appearance
US9597587B2 (en) 2011-06-08 2017-03-21 Microsoft Technology Licensing, Llc Locational node device
WO2013023705A1 (en) * 2011-08-18 2013-02-21 Layar B.V. Methods and systems for enabling creation of augmented reality content
US8786730B2 (en) 2011-08-18 2014-07-22 Microsoft Corporation Image exposure using exclusion regions
US9557836B2 (en) 2011-11-01 2017-01-31 Microsoft Technology Licensing, Llc Depth image compression
US9117281B2 (en) 2011-11-02 2015-08-25 Microsoft Corporation Surface segmentation from RGB and depth images
US8854426B2 (en) 2011-11-07 2014-10-07 Microsoft Corporation Time-of-flight camera with guided light
US8724906B2 (en) 2011-11-18 2014-05-13 Microsoft Corporation Computing pose and/or shape of modifiable entities
US8509545B2 (en) 2011-11-29 2013-08-13 Microsoft Corporation Foreground subject detection
US8635637B2 (en) 2011-12-02 2014-01-21 Microsoft Corporation User interface presenting an animated avatar performing a media reaction
US8803800B2 (en) 2011-12-02 2014-08-12 Microsoft Corporation User interface control based on head orientation
US9100685B2 (en) 2011-12-09 2015-08-04 Microsoft Technology Licensing, Llc Determining audience state or interest using passive sensor data
US8630457B2 (en) 2011-12-15 2014-01-14 Microsoft Corporation Problem states for pose tracking pipeline
US8971612B2 (en) 2011-12-15 2015-03-03 Microsoft Corporation Learning image processing tasks from scene reconstructions
US8879831B2 (en) 2011-12-15 2014-11-04 Microsoft Corporation Using high-level attributes to guide image processing
US8811938B2 (en) 2011-12-16 2014-08-19 Microsoft Corporation Providing a user interface experience based on inferred vehicle state
US9342139B2 (en) 2011-12-19 2016-05-17 Microsoft Technology Licensing, Llc Pairing a computing device to a user
US9720089B2 (en) 2012-01-23 2017-08-01 Microsoft Technology Licensing, Llc 3D zoom imager
US8898687B2 (en) 2012-04-04 2014-11-25 Microsoft Corporation Controlling a media program based on a media reaction
US9210401B2 (en) 2012-05-03 2015-12-08 Microsoft Technology Licensing, Llc Projected visual cues for guiding physical movement
CA2775700C (en) 2012-05-04 2013-07-23 Microsoft Corporation Determining a future portion of a currently presented media program
CN104395929B (en) 2012-06-21 2017-10-03 微软技术许可有限责任公司 Constructed using the incarnation of depth camera
US9836590B2 (en) 2012-06-22 2017-12-05 Microsoft Technology Licensing, Llc Enhanced accuracy of user presence status determination
US9696427B2 (en) 2012-08-14 2017-07-04 Microsoft Technology Licensing, Llc Wide angle depth detection
US8882310B2 (en) 2012-12-10 2014-11-11 Microsoft Corporation Laser die light source module with low inductance
US9857470B2 (en) 2012-12-28 2018-01-02 Microsoft Technology Licensing, Llc Using photometric stereo for 3D environment modeling
US9251590B2 (en) 2013-01-24 2016-02-02 Microsoft Technology Licensing, Llc Camera pose estimation for 3D reconstruction
US9052746B2 (en) 2013-02-15 2015-06-09 Microsoft Technology Licensing, Llc User center-of-mass and mass distribution extraction using depth images
US9940553B2 (en) 2013-02-22 2018-04-10 Microsoft Technology Licensing, Llc Camera/object pose from predicted coordinates
US9135516B2 (en) 2013-03-08 2015-09-15 Microsoft Technology Licensing, Llc User body angle, curvature and average extremity positions extraction using depth images
US9092657B2 (en) 2013-03-13 2015-07-28 Microsoft Technology Licensing, Llc Depth image processing
US9274606B2 (en) 2013-03-14 2016-03-01 Microsoft Technology Licensing, Llc NUI video conference controls
US9953213B2 (en) 2013-03-27 2018-04-24 Microsoft Technology Licensing, Llc Self discovery of autonomous NUI devices
US9245063B2 (en) * 2013-04-05 2016-01-26 The Boeing Company Creating ergonomic manikin postures and controlling computer-aided design environments using natural user interfaces
US9442186B2 (en) 2013-05-13 2016-09-13 Microsoft Technology Licensing, Llc Interference reduction for TOF systems
US10509533B2 (en) * 2013-05-14 2019-12-17 Qualcomm Incorporated Systems and methods of generating augmented reality (AR) objects
US9462253B2 (en) 2013-09-23 2016-10-04 Microsoft Technology Licensing, Llc Optical modules that reduce speckle contrast and diffraction artifacts
US9443310B2 (en) 2013-10-09 2016-09-13 Microsoft Technology Licensing, Llc Illumination modules that emit structured light
US9674563B2 (en) 2013-11-04 2017-06-06 Rovi Guides, Inc. Systems and methods for recommending content
US9769459B2 (en) 2013-11-12 2017-09-19 Microsoft Technology Licensing, Llc Power efficient laser diode driver circuit and method
US9508385B2 (en) 2013-11-21 2016-11-29 Microsoft Technology Licensing, Llc Audio-visual project generator
US9971491B2 (en) 2014-01-09 2018-05-15 Microsoft Technology Licensing, Llc Gesture library for natural user input
WO2017039260A1 (en) * 2015-08-28 2017-03-09 스타십벤딩머신 주식회사 Device and method for editing content
US10412280B2 (en) 2016-02-10 2019-09-10 Microsoft Technology Licensing, Llc Camera with light valve over sensor array
US10257932B2 (en) 2016-02-16 2019-04-09 Microsoft Technology Licensing, Llc. Laser diode chip on printed circuit board
US10462452B2 (en) 2016-03-16 2019-10-29 Microsoft Technology Licensing, Llc Synchronizing active illumination cameras
US10074193B2 (en) 2016-10-04 2018-09-11 Microsoft Technology Licensing, Llc Controlled dynamic detailing of images using limited storage
US10380803B1 (en) * 2018-03-26 2019-08-13 Verizon Patent And Licensing Inc. Methods and systems for virtualizing a target object within a mixed reality presentation
CN108805058B (en) * 2018-05-29 2020-12-15 北京字节跳动网络技术有限公司 Target object change posture recognition method and device and computer equipment
TWI715903B (en) * 2018-12-24 2021-01-11 財團法人工業技術研究院 Motion tracking system and method thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4737921A (en) * 1985-06-03 1988-04-12 Dynamic Digital Displays, Inc. Three dimensional medical image display system
US5267154A (en) * 1990-11-28 1993-11-30 Hitachi, Ltd. Biological image formation aiding system and biological image forming method
US5831875A (en) * 1995-11-07 1998-11-03 Fujitsu Limited Link mechanism analyzer and link mechanism joint data arithmetic apparatus

Family Cites Families (50)

* 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
US4843568A (en) 1986-04-11 1989-06-27 Krueger Myron W Real time perception of and response to the actions of an unencumbered participant/user
JPS63125241A (en) * 1986-11-14 1988-05-28 株式会社東芝 Image processor
US5483630A (en) * 1990-07-12 1996-01-09 Hitachi, Ltd. Method and apparatus for representing motion of multiple-jointed object, computer graphic apparatus, and robot controller
US5148477A (en) 1990-08-24 1992-09-15 Board Of Regents Of The University Of Oklahoma Method and apparatus for detecting and quantifying motion of a body part
JPH05181970A (en) 1991-12-27 1993-07-23 Toshiba Corp Moving image processor
US5416899A (en) * 1992-01-13 1995-05-16 Massachusetts Institute Of Technology Memory based method and apparatus for computer graphics
JPH07325934A (en) * 1992-07-10 1995-12-12 Walt Disney Co:The Method and equipment for provision of graphics enhanced to virtual world
JP3244798B2 (en) 1992-09-08 2002-01-07 株式会社東芝 Moving image processing device
US5561745A (en) * 1992-10-16 1996-10-01 Evans & Sutherland Computer Corp. Computer graphics for animation by time-sequenced textures
WO1994017636A1 (en) 1993-01-29 1994-08-04 Bell Communications Research, Inc. Automatic tracking camera control system
JPH06325151A (en) * 1993-03-17 1994-11-25 Fujitsu Ltd Animation editing device
JPH06337896A (en) * 1993-03-31 1994-12-06 Matsushita Electric Ind Co Ltd Device and method for retrieving electronic book display
KR970002967B1 (en) * 1993-04-09 1997-03-13 대우전자 주식회사 Motion vector detecting apparatus using block classification pattern
US5424853A (en) 1993-04-19 1995-06-13 Sharp Kabushiki Kaisha Image processing apparatus
US5680531A (en) * 1993-07-02 1997-10-21 Apple Computer, Inc. Animation system which employs scattered data interpolation and discontinuities for limiting interpolation ranges
US5454043A (en) 1993-07-30 1995-09-26 Mitsubishi Electric Research Laboratories, Inc. Dynamic and static hand gesture recognition through low-level image analysis
DE69528853T2 (en) * 1994-01-31 2003-07-03 Canon Kk System and method for editing moving images
CA2144253C (en) * 1994-04-01 1999-09-21 Bruce F. Naylor System and method of generating compressed video graphics images
US5570113A (en) 1994-06-29 1996-10-29 International Business Machines Corporation Computer based pen system and method for automatically cancelling unwanted gestures and preventing anomalous signals as inputs to such system
WO1996003717A1 (en) * 1994-07-22 1996-02-08 Apple Computer, Inc. Method and system for the placement of texture on three-dimensional objects
KR0126871B1 (en) * 1994-07-30 1997-12-29 심상철 HIGH SPEED BMA FOR Bi-DIRECTIONAL MOVING VECTOR ESTIMATION
US5511158A (en) * 1994-08-04 1996-04-23 Thinking Machines Corporation System and method for creating and evolving directed graphs
US5920319A (en) * 1994-10-27 1999-07-06 Wake Forest University Automatic analysis in virtual endoscopy
EP0712097A2 (en) * 1994-11-10 1996-05-15 Matsushita Electric Industrial Co., Ltd. Method and system for manipulating motion units for computer articulated figure animation
US5594469A (en) 1995-02-21 1997-01-14 Mitsubishi Electric Information Technology Center America Inc. Hand gesture machine control system
US5710833A (en) * 1995-04-20 1998-01-20 Massachusetts Institute Of Technology Detection, recognition and coding of complex objects using probabilistic eigenspace analysis
JP3207336B2 (en) * 1995-07-31 2001-09-10 シャープ株式会社 Character pattern generator
US5896176A (en) * 1995-10-27 1999-04-20 Texas Instruments Incorporated Content-based video compression
IL126142A0 (en) * 1996-03-15 1999-05-09 Zapa Digital Art Ltd Programmable computer graphic objects
US5909218A (en) * 1996-04-25 1999-06-01 Matsushita Electric Industrial Co., Ltd. Transmitter-receiver of three-dimensional skeleton structure motions and method thereof
US5852450A (en) * 1996-07-11 1998-12-22 Lamb & Company, Inc. Method and apparatus for processing captured motion data
US5933150A (en) * 1996-08-06 1999-08-03 Interval Research Corporation System for image manipulation and animation using embedded constraint graphics
US5831633A (en) * 1996-08-13 1998-11-03 Van Roy; Peter L. Designating, drawing and colorizing generated images by computer
US5991057A (en) * 1996-09-17 1999-11-23 Sony Corporation Image transformation of a picture by using a superimmposed hologram
JPH10188028A (en) * 1996-10-31 1998-07-21 Konami Co Ltd Animation image generating device by skeleton, method for generating the animation image and medium storing program for generating the animation image
US5912675A (en) * 1996-12-19 1999-06-15 Avid Technology, Inc. System and method using bounding volumes for assigning vertices of envelopes to skeleton elements in an animation system
US5852451A (en) * 1997-01-09 1998-12-22 S3 Incorporation Pixel reordering for improved texture mapping
US6208360B1 (en) * 1997-03-10 2001-03-27 Kabushiki Kaisha Toshiba Method and apparatus for graffiti animation
US6057859A (en) * 1997-03-31 2000-05-02 Katrix, Inc. Limb coordination system for interactive computer animation of articulated characters with blended motion data
US6011562A (en) * 1997-08-01 2000-01-04 Avid Technology Inc. Method and system employing an NLE to create and modify 3D animations by mixing and compositing animation data
US6181348B1 (en) * 1997-09-22 2001-01-30 Siemens Corporate Research, Inc. Method for selective volume visualization via texture mapping
US5990908A (en) * 1997-09-22 1999-11-23 Lamb & Company Method and apparatus for processing full motion computer animation
WO1999015945A2 (en) * 1997-09-23 1999-04-01 Enroute, Inc. Generating three-dimensional models of objects defined by two-dimensional image data
US6141463A (en) * 1997-10-10 2000-10-31 Electric Planet Interactive Method and system for estimating jointed-figure configurations
US6384819B1 (en) * 1997-10-15 2002-05-07 Electric Planet, Inc. System and method for generating an animatable character
US6411744B1 (en) * 1997-10-15 2002-06-25 Electric Planet, Inc. Method and apparatus for performing a clean background subtraction
EP1207498A3 (en) * 2000-11-15 2003-10-15 Sega Corporation Display object generation method in information processing equipment
CN1320508C (en) * 2001-05-14 2007-06-06 株式会社网络空间 Information distribution system and information distribution method
US7038676B2 (en) * 2002-06-11 2006-05-02 Sony Computer Entertainmant Inc. System and method for data compression

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4737921A (en) * 1985-06-03 1988-04-12 Dynamic Digital Displays, Inc. Three dimensional medical image display system
US5267154A (en) * 1990-11-28 1993-11-30 Hitachi, Ltd. Biological image formation aiding system and biological image forming method
US5831875A (en) * 1995-11-07 1998-11-03 Fujitsu Limited Link mechanism analyzer and link mechanism joint data arithmetic apparatus

Also Published As

Publication number Publication date
US7746345B2 (en) 2010-06-29
US7184048B2 (en) 2007-02-27
US20020118198A1 (en) 2002-08-29
US6384819B1 (en) 2002-05-07
US20070211067A1 (en) 2007-09-13
AU9808298A (en) 1999-05-03

Similar Documents

Publication Publication Date Title
US6384819B1 (en) System and method for generating an animatable character
Aubel et al. Real-time display of virtual humans: Levels of details and impostors
Igarashi et al. Clothing manipulation
KR100496718B1 (en) System, method and apparatus for animating a character on a computer, server computer for downloading animation files, and computer implemented system for generating an animation character
Hornung et al. Character animation from 2d pictures and 3d motion data
US7064762B2 (en) Methods and system for general skinning via hardware accelerators
US9460556B2 (en) System and method for interactive masking and modifying of 3D objects
US7545378B2 (en) Foot roll rigging
US6118459A (en) System and method for providing a joint for an animatable character for display via a computer system
CN116310152A (en) Step-by-step virtual scene building and roaming method based on units platform and virtual scene
Terävä Workflows for Creating 3D Game Characters
Balcisoy et al. Interaction between real and virtual humans in augmented reality
Lam et al. Motion editing with data glove
US20230196702A1 (en) Object Deformation with Bindings and Deformers Interpolated from Key Poses
Got Developement of a new automatic skinning system
Huynh et al. A framework for cost-effective communication system for 3D data streaming and real-time 3D reconstruction
Wünsche et al. Sketch, click, plug and play: accelerated design of virtual environments by integrating multimedia and sketch content into game engines
Sabiston Extracting 3d motion from hand-drawn animated figures
Mashalkar et al. Creating Personalized Avatars
Elgndy Using Immersive media to develop the most intuitive way to build an Interactive Animated Augmented Reality (AR) experiences for Product Design taking into consideration the Covid-19 Pandemic.
Fun et al. Non-photorealistic outdoor scene rendering: techniques and application
Zhao et al. Texturing of augmented reality character based on colored drawing
Yli-Pentti On production of 3D character models for games
Ramos et al. A new user-friendly sketch-based modeling method using convolution surfaces
Lewis et al. A Region-of-Influence Measure for Automatic Skinning

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

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

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SZ 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 BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

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

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase

Ref country code: KR

NENP Non-entry into the national phase

Ref country code: CA

122 Ep: pct application non-entry in european phase