Abstract:
A method for efficiently manipulating 3D scenes recorded by a virtual camera using a computer system comprised of projectors, graphics accelerators, one or more CPUs, instances of 3D rendering software, and a MIDI interface, includes receiving from the MIDI controller camera parameters, defining left camera and right camera parameters based on the camera parameters, determining left and right images based upon left and right camera parameters, projecting left and right images, viewing left and right images, integrating left and right images to represent a 3D scene, manipulating the 3D scene until the user is satisfied, and storing the left and right camera parameters, and storing the left and right images.

Description:
CROSS-REFERENCES TO RELATED APPLICATIONS 
       [0001]    Not Applicable 
       BACKGROUND OF THE INVENTION 
       [0002]    The present invention relates to three-dimensional (3D) imaging. More particularly, the present invention relates to methods for efficiently manipulating 3D scenes. 
         [0003]    Throughout the years, movie makers have often tried to tell stories involving make-believe creatures, far away places, and fantastic things. To do so, they have often relied on animation techniques to bring the make-believe to “life.” Two of the major paths in animation have traditionally included, drawing-based animation techniques and physical animation techniques. 
         [0004]    Drawing-based animation techniques were refined in the twentieth century, by movie makers such as Walt Disney and used in movies such as “Snow White and the Seven Dwarfs” (1937) and “Fantasia” (1940). This animation technique typically required artists to hand-draw (or paint) animated images onto a transparent media or cels. After painting, each cel would then be captured or recorded onto film as one or more frames in a movie. 
         [0005]    Physical-based animation techniques typically required the construction of miniature sets, props, and characters. The filmmakers would construct the sets, add props, and position the miniature characters in a pose. After the animator was happy with how everything was arranged, one or more frames of film would be taken of that specific arrangement. Physical animation techniques were developed by movie makers such as Willis O&#39;Brien for movies such as “King Kong” (1933). Subsequently, these techniques were refined by animators such as Ray Harryhausen for movies including “Mighty Joe Young” (1948) and Clash Of The Titans (1981). 
         [0006]    With the wide-spread availability of computers in the later part of the twentieth century, animators began to rely upon computers to assist in the animation process. This included using computers to facilitate drawing-based animation, for example, by painting images, by generating in-between images (“tweening”), and the like. This also included using computers to augment physical animation techniques. For example, physical models could be represented by virtual models in computer memory, and manipulated. 
         [0007]    Computer animation techniques are also applied to 3D images or scenes. 3D imaging is creating the illusion depth in an image or scene. Depth perception is created in the brain by providing the eyes of the viewer with two different images (left and right), representing two images of the same object, with the deviation similar to the minor difference between the image perceived by a viewer&#39;s left eye and the image perceived by a viewer&#39;s right eye. 
         [0008]    One means of presenting different images to the two eyes is color filter glasses, for example the red/cyan anaglyph. In this scheme, one eye (e.g., left eye) views a scene through a red filter and the other eye (e.g., right eye) views a scene through a cyan filter. The scene includes portions in red and portions in cyan—red and cyan being chromatically opposite colors—such that both eyes perceive different images to create the illusion of depth. This scheme with it&#39;s low-cost cardboard glasses is commonly known due to its use dating back to 3D comic books in the 1950s and is enjoying a resurgence due it&#39;s use in 3D films released on DVD and Blu-ray Disc™. 
         [0009]    Well-known drawbacks to using color filter glasses include that since each of the two-dimensional images are monochromatic, the three-dimensional image is also monochromatic, and not in full color. Another drawback is that by using a color filter or gel, the two-dimensional images provided to the viewer&#39;s eyes tend to be darker due to the filtering-out of colors. 
         [0010]    Shuttered glasses typically include electrical or mechanical shutters that sequentially open and close to alternatively present right-eye images and left-eye image to a viewer. In such systems, a display alternatively displays a right-eye image and then a left-eye image, such that when the right-eye shutter is open, the viewer sees the right-eye image on the display, and when the left-eye shutter is open, the viewer sees the left-eye image on the display. A benefit of this technique includes that a single projector or display can be used to display both the right-eye image and left-eye image. Another benefit is that the perceived three-dimensional image can be in full color. 
         [0011]    Drawbacks to such a scheme includes that the viewer must wear relatively costly glasses that have a mechanical or electronic shuttering mechanism. Furthermore, the glasses must include a mechanism to allow the shutters to be electronically synchronized to the appropriate fields of the display. Another drawback is that viewers sometimes report discomfort as the images flicker on the display. 
         [0012]    Another means of presenting different images to the two eyes is polarized glasses. The left-eye images and right-eye images displayed to viewers are typically polarized using different polarization schemes, and the polarized glasses are also polarized in the same manner. Linear polarization may be used. In this scheme, two images are projected onto a screen through orthogonal polarizing filters. The projectors may receive their output from a computer, which generates the two images. The viewer views the scene through eyeglasses containing a pair of orthogonal polarizing filters. The viewer&#39;s eyes perceive two different images, because each filter allows only similarly polarized light through and blocks orthogonally polarized light. Linearly polarized glasses require that the viewer keep his or her head level, because tilting the viewing filters causes the left and right images to bleed into the other. 
         [0013]    Circular polarization may also be used. As an example, a right eye image is polarized using a counter-clockwise circular polarization and displayed to the viewer, and at the same time, the left eye image is polarized using a clockwise circular polarization and displayed to the viewer. Because the right eye of the viewer&#39;s glasses have a polarization filter that transmits counter-clockwise circular polarized light, and the left eye of the viewer&#39;s glasses have a polarization filter that transmits clockwise circular polarized light, the left image is delivered to the left eye, and the right image is delivered to the right eye. 
         [0014]    Both polarizing schemes have the benefit of relatively low cost pair of glasses to view such images. Additionally, the perceived three-dimensional images are in color. However drawbacks to such techniques include that two projectors are required to display the two images, each having different polarizations. 
         [0015]    While viewing 3D images, the user may wish to manipulate the images by changing parameters of a virtual camera recording the images. For example, the user may wish to change the position of the camera in 3D space, aperture, lens, focus, focal length, field of view, and the like. 
         [0016]    While wearing filtering glasses and operating a computer system to manipulate 3D images, it is challenging to keep the user focused on the screen at all times. The user may take off the glasses to operate the computer system, tilt the head to look at a computer output device (e.g., monitor), or tilt the head to look at a computer input device (e.g., keyboard and mouse). Each time, the viewer takes his or her eyes off the display and must reorient his or her head to resume viewing the scene, resulting in a loss of precious time. 
         [0017]    Accordingly, what is desired are methods that address the problem described above. 
       BRIEF SUMMARY OF THE INVENTION 
       [0018]    The present invention relates to the field of three-dimensional (3D) imaging. More particularly, the present invention relates to methods for efficiently manipulating 3D scenes. 
         [0019]    Some embodiments of the present invention include a Musical Instrument Digital Interface (MIDI) controller for providing user input for controlling a 3D camera. Such a device may include sliders, knobs, buttons, pedals, sensors and the like to enable a viewer to direct the 3D camera without taking his or her eyes off of the 3D scene. 
         [0020]    In various embodiments, two images (left-eye/right-eye) are generated and are respectively filtered as left-eye/and right-eye images of a 3D scene. The filtered images are then displayed on a display or projection surface. The glasses used by a viewer then allows the left-eye/right-eye image to reach the left/right eyes of a viewer. The viewer perceives a 3D image. 
         [0021]    In some embodiments of the present invention, a user views and changes a 3D scene by manipulating controls on the 3D controller without moving the user&#39;s eyes away from the 3D scene. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0022]    In order to more fully understand the present invention, reference is made to the accompanying drawings. Understanding that these drawings are not to be considered limitations in the scope of the invention, the presently described embodiments and the presently understood best mode of the invention are described with additional detail through use of the accompanying drawings in which: 
           [0023]      FIG. 1  illustrates an example of an embodiment of the present invention. 
           [0024]      FIGS. 2A-C  illustrate a flow diagram according to an embodiment of the present invention. 
           [0025]      FIG. 3  illustrates a block diagram of a system according to one embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0026]      FIG. 1  is an overview of an embodiment of the present invention.  FIG. 1  includes a left image source  160 L and a right image source  160 R (e.g., projectors). In various embodiments, left image source  160 L projects an image through a filter  170 L onto projection surface  120  (e.g., a screen) as image  180 L, and right image source  160 R projects an image through a filter  170 R onto projection surface  120  as an image  180 R. In various embodiments of the present invention, filters  170 L and  170 R may be complementary or orthogonal filters, such as a right circular polarized filter and left circular polarized filter; horizontal polarized filter and vertical polarized filter; red filter and cyan filter; or the like. In various embodiments, images  180 L and  180 R are superimposed and aligned on projection surface  120 . 
         [0027]    It will be appreciated that the projection apparatus described herein is illustrative and that variations and modifications are possible. For instance, left image source  160 L and right image source  160 R may be embodied as a single image source (not pictured) that alternately displays left image  180 L and right image  180 R. In such an embodiment, left image  180 L and right image  180 R may be alternately displayed every 1/60 th  of a second, for example. In another embodiment of the present invention, with anaglyph-type images, the left image  180 L and the right image  180 R may be displayed at the same time on projection surface  120 . In some embodiments of the present invention, projection surface  120  may be a cathode ray tube (CRT), plasma display, LCD display, digital light processing (DLP) display, an organic light emitting diode (OLED) display, reflective screen, and the like. 
         [0028]    Also illustrated in the embodiment in  FIG. 1  is a user  110 , who views the projection surface  120  through glasses  260  having filters  240  and  250 . Filters  240  and  250  are typically selected based upon the type of filters used for filters  170 L and  170 R, respectively. For example, if filter  170 L is a right circular polarizer, then filter  240  should also be a right circular polarizer; if filter  170 R is a vertical linear polarizer, then filter  250  should also be a vertical linear polarizer; if filter  170 L is a red filter, then filter  240  should also be a red filter; and the like. 
         [0029]    In various embodiments of the present invention, when left image  180 L and right image  180 R are alternately displayed in time, glasses  260  may be embodied as shutter-type glasses where filters  240  and  250  may be electronically synchronized with the display field. In other embodiments, when left image  180 L and right image  180 R are part of an anaglyph image, glasses  260  may include red/cyan filters, or the like. 
         [0030]    Also illustrated in  FIG. 1  is a Musical Instrument Digital Interface (MIDI) controller  220 . MIDI controller  220  is connected (e.g., via cable  230  or wireless connection) to computer  130 . Computer  130  includes at least one processor  270  and graphics accelerator cards  140 ,  150  (also known as display adapters or graphics cards). Graphics accelerator cards  140 ,  150  provide image data to projectors  160 L,  160 R. Using a hand  280  or other body parts, user  110  provides input to the computer through the MIDI controller  220 . 
         [0031]    In the present embodiment, MIDI controller  220  is typically embodied as a pad controller which may have banks of pads, faders, and knobs, drawbar controller, piano-style keyboard, electronic drum triggers, pedal keyboards, electronic wind controllers, and the like. In embodiments of the present invention, MIDI controller  220  allows a user  110  to provide camera parameters to computer  130 . 
         [0032]    In embodiments of the present invention, graphics accelerator cards  140 ,  150  can include one or more graphics processors and memory. In embodiments of the present invention the function of graphics accelerator cards  140 ,  150  can be integrated into a single graphics accelerator card. 
         [0033]      FIG. 2  illustrates a block diagram of a process according to various embodiments of the present invention. Initially, a viewer may be visualizing a three-dimensional image or series of images via one of the mechanisms described above. The user has a MIDI controller (Step  300 ) and 3D animation software is operating (Step  310 ). Based upon the positions of controls on the MIDI device, the MIDI device provides camera parameters to the computer system (Step  320 ). The software running on the computer system then sets parameters for a virtual left camera and a virtual right camera based upon the camera parameters from the MIDI device (Step  330 ,  340 ). 
         [0034]    The left and right virtual cameras record a scene (Steps  350 ,  350 ). The left and right scenes recorded by the left and right virtual cameras are projected by left and right projectors (Steps  370 ,  380 ). The modified left and right scenes are perceived by the user&#39;s left and right eyes, respectively (Steps  400 ,  410 ). The user views the resulting 3D scene (Step  420 ). 
         [0035]    If the user wishes to change the scene, then the user manipulates the MIDI controller to change parameters for the virtual camera without taking the polarizing glasses off or taking the user&#39;s eyes off of the display (Step  450 ). For example, the MIDI device may be visible to the user with the polarizing glasses on. For example, the users hand may be positioned over MIDI device with knobs, sliders, and the like, and the user manipulates the controls without looking at the MIDI device. For example, the user&#39;s feet may remain above a MIDI device with pedals and the like, and provide input by depressing the pedals without looking at the MIDI device. The MIDI device provides the camera parameters to the computer system and the process proceeds from Step  320 . 
         [0036]    If the user does not wish to change the scene, then the left and right virtual camera parameters are stored and associated with the scene (Step  500 ). If there are more 3D scenes to view, then the process proceeds from Step  320  with input from the MIDI controller. If there are no more 3D scenes to view, then the left and right virtual camera parameters are used to render left and right scenes (Step  520 ). The left and right scenes are stored (Step  530 ) and displayed to a viewer (Step  540 ). 
         [0037]    Embodiments of the present invention are be used to control action in 3D games or otherwise interact with 3D environments where constant attention is advantageous. In some embodiments of the present invention, real-time games require the user to remain focus on the display and the 3D scene. For example, a user may miss a game-ending situation (e.g., hazardous condition) if the user&#39;s eyes are diverted from the display and 3D scene. The user may provide input to the MIDI device without removing the glasses or taking the user&#39;s eyes off of the display. 
         [0038]    In other embodiments of the present invention, combinations or sub-combinations of the above disclosed invention can be advantageously made. It should be understood that combinations of blocks, additions of new blocks, re-arrangement of blocks, and the like are contemplated in alternative embodiments of the present invention. 
         [0039]    The specification and drawings are, accordingly, to be regarded as illustrative rather than restrictive sense. It will, however, be evident that various modifications and changes may be made thereunto without departing from the broader spirit and scope of the invention as set forth in the claims. 
         [0040]      FIG. 3  is a block diagram of typical computer system  600  according to an embodiment of the present invention. 
         [0041]    In the present embodiment, computer system  600  typically includes a monitor  610 , computer  620 , a keyboard  630 , a graphical user input device  640 , a network interface  650 , MIDI input device  700 , and the like. 
         [0042]    In the present embodiment, MIDI controller  700  is typically embodied as a pad controller which may have banks of pads, faders, and knobs, drawbar controller, piano-style keyboard, electronic drum triggers, pedal keyboards, electronic wind controllers, and the like In embodiments of the present invention, MIDI controller  700  allows a user to provide camera parameters to a processor or processors  660 . 
         [0043]    In the present embodiment, graphical user input device  640  is typically embodied as a computer mouse, a trackball, a track pad, wireless remote, and the like. Graphical user input device  640  typically allows a user to select objects, icons, text and the like that appear on the monitor  610 . 
         [0044]    Embodiments of network interface  650  typically include an Ethernet card, a modem (telephone, satellite, cable, ISDN), (asynchronous) digital subscriber line (DSL) unit, and the like. Network interface  650  are typically coupled to a computer network as shown. In other embodiments, network interface  650  may be physically integrated on the motherboard of computer  620 , may be a software program, such as soft DSL, or the like. 
         [0045]    Computer  620  typically includes familiar computer components such as a processor or processors  660 , and memory storage devices, such as a random access memory (RAM)  670 , disk drives  680 , and system bus  690  interconnecting the above components. 
         [0046]    In one embodiment, computer  620  is a PC compatible computer having multiple microprocessors such as Xeon™ microprocessor from Intel Corporation. Further, in the present embodiment, computer  620  typically includes a UNIX-based operating system. 
         [0047]    RAM  670  and disk drive  680  are examples of tangible media for storage of data, audio/video files, computer programs, applet interpreters or compilers, virtual machines, embodiments of the herein described invention including geometric scene data, object data files, shader descriptors, a rendering engine, output image files, texture maps, displacement maps, scattering lengths and absorption data of object materials, and the like. Other types of tangible media include floppy disks, removable hard disks, optical storage media such as CD-ROMs, DVDs, Blu-ray Disc, and bar codes, semiconductor memories such as flash memories, read-only-memories (ROMs), battery-backed volatile memories, networked storage devices, and the like. 
         [0048]    In the present embodiment, computer system  600  may also include software that enables communications over a network such as the HTTP, TCP/IP, RTP/RTSP protocols, and the like. In alternative embodiments of the present invention, other communications software and transfer protocols may also be used, for example IPX, UDP or the like. 
         [0049]      FIG. 3  is representative of computer systems capable of embodying the present invention. It will be readily apparent to one of ordinary skill in the art that many other hardware and software configurations are suitable for use with the present invention. For example, the use of other micro processors are contemplated, such as Core™ or Pentium™ microprocessors; Opteron™, Phenom™ or AthlonXP™ microprocessors from Advanced Micro Devices, Inc; PowerPC G4™ microprocessors from Freescale Semiconductor, Inc.; PowerPC G5™ microprocessors from IBM; and the like. Further, other types of operating systems are contemplated, such as Windows® operating system such as Windows Vista®, WindowsXP®, or the like from Microsoft Corporation, Solaris from Sun Microsystems, LINUX, UNIX, MAC OS from Apple Computer Corporation, and the like.