The exemplary embodiments described herein generally relate to two dimensional rendering of three dimensional images and more particularly to a viewable cursor for these displays.
Three dimensional (3D) displays are becoming increasingly popular. Presently, many 3D displays implement stereoscopic techniques to generate a 3D visual display to a user. Such displays, which may be referred to as stereoscopic 3D displays, rely on the well known stereoscopic imaging technique for creating the illusion of depth in an image. As is generally known, stereoscopy is a method of creating a 3D image from a pair of two dimensional (2D) images, in which each of the 2D images preferably represents the same object or image from a slightly different perspective, such as a right eye perspective and a left eye perspective.
Stereoscopic display systems, which provide enhanced interpretation of the information by users over two dimensional displays and can result in improvements in performing various tasks as well as various other potential benefits, may be used for applications which rely on periods of extended concentration and/or critical information, such as avionics, medical, engineering/industrial or military applications, and may also be used for applications of shorter concentration periods, such as entertainment applications, for example, movies. Stereoscopic 3D displays have been conventionally directed toward intermittent and non-critical applications such as entertainment and modeling.
Some two dimensional displays render a three dimensional model that provides a sense of the objects in the third dimension, for example, by size and position indicating depth.
One issue with these display systems is the ability to select items, for example, displayed in the background. On a typical 2D display, a cursor can be moved to the point of interest, via mouse, track pad, or other device, and the point of interest being selected with a click of a button. On a display, with a cursor that can be moved in 3 dimensions, the cursor may be moved behind a portion of a view object, which results in the cursor being hidden. This hidden cursor is unusable and prevents the selection of an object that is obscured. One known system rotates and translates the viewed object so as to bring the desired feature into view. For complex objects, this might be difficult or impossible.
As the environment, such as aviation, in which these display systems are used becomes more complex, it is preferable that the operator be able to select information in a timely manner and with little stress (such as eye fatigue) to ensure proper operation. The user must interpret the information provided on the screen occupying his/her thought processes when he/she may have many other decisions to make.
Accordingly, it is desirable to provide a cursor that may be used to select objects in three dimensional displays without rotating the image. Furthermore, other desirable features and characteristics of the exemplary embodiments will become apparent from the subsequent detailed description and the appended claims, taken in conjunction with the accompanying drawings and the foregoing technical field and background.
A system and method are provided for creating a virtual hole through a viewed object from the user's eye point to the desired position for the cursor.
A first exemplary embodiment is a method of selecting an object within a three dimensional image, comprising displaying the three dimensional image having a second object blocking the display of a first object; creating a virtual hole in the second object to display the first object within the virtual hole; and selecting the first object.
A second exemplary embodiment is a system for selecting a first object within a three dimensional image, the system comprising a display; a cursor control device configured to receive an input from a user; and a processor coupled to the display and the cursor control device and configured to instruct the display to display the three dimensional image including a second object blocking the display of the first object; create a virtual hole through the second object to display the first object within the virtual hole; and select the first object.
The present invention will hereinafter be described in conjunction with the following drawing figures, wherein like numerals denote like elements, and
The following detailed description is merely illustrative in nature and is not intended to limit the embodiments of the subject matter or the application and uses of such embodiments. Any implementation described herein as exemplary is not necessarily to be construed as preferred or advantageous over other implementations. Furthermore, there is no intention to be bound by any expressed or implied theory presented in the preceding technical field, background, brief summary, or the following detailed description.
In accordance with the exemplary embodiments described herein, a virtual hole through a viewed object is created between the user's eye point and the desired position for the cursor. The object may be three dimensional, including stereoscopic, or it could be a two dimensional object in front of other two dimensional objects. For example, a two dimensional display (typical of most workstations) displays a two dimensional rendering of a three dimensional model that provides a sense of the objects in the third dimension (as shown in
The virtual hole may assume one of several exemplary embodiments for differentiating the virtual hole from the image being viewed. The virtual hole may be tinted (not entirely transparent) to define the virtual hole to prevent it from being mistaken as part of the model. The virtual hole may assume different sizes, up to and including the entire screen (the image to the level of the cursor is removed). The edge of the virtual hole may have, for example, a distinctive pattern including a soft edge (blurring), a subtle warping (as if the hole had been punched in the image), or a circle (solid or dotted). The virtual hole may assume different shapes, for example, a circle, an oval, or a rectangle.
Techniques and technologies may be described herein in terms of functional and/or logical block components, and with reference to symbolic representations of operations, processing tasks, and functions that may be performed by various computing components or devices. Such operations, tasks, and functions are sometimes referred to as being computer-executed, computerized, software-implemented, or computer-implemented. In practice, one or more processor devices can carry out the described operations, tasks, and functions by manipulating electrical signals representing data bits at memory locations in the system memory, as well as other processing of signals. The memory locations where data bits are maintained are physical locations that have particular electrical, magnetic, optical, or organic properties corresponding to the data bits. It should be appreciated that the various block components shown in the figures may be realized by any number of hardware, software, and/or firmware components configured to perform the specified functions. For example, an embodiment of a system or a component may employ various integrated circuit components, e.g., memory elements, digital signal processing elements, logic elements, look-up tables, or the like, which may carry out a variety of functions under the control of one or more microprocessors or other control devices.
For the sake of brevity, conventional techniques related to graphics and image processing, aircraft data, and other functional aspects of certain systems and subsystems (and the individual operating components thereof) may not be described in detail herein. Furthermore, the connecting lines shown in the various figures contained herein are intended to represent exemplary functional relationships and/or physical couplings between the various elements. It should be noted that many alternative or additional functional relationships or physical connections may be present in an embodiment of the subject matter.
Referring to
The display 106 is configured to provide the enhanced images to the operator. In accordance with an exemplary embodiment, the display 106 may be implemented using any one of numerous known displays suitable for rendering textual, graphic, and/or iconic information in a format viewable by the operator. Non-limiting examples of such displays include various cathode ray tube (CRT) displays, and various flat panel displays such as various types of LCD (liquid crystal display) and TFT (thin film transistor) displays. The display 106 may additionally be implemented as a panel mounted display, a HUD (head-up display) projection, or any one of numerous known technologies. It is additionally noted that the display 106 may be configured as any one of numerous types of aircraft flight deck displays. For example, it may be configured as a multi-function display, a horizontal situation indicator, a vertical situation indicator, or a primary flight display (PFD).
The processor 102 may be implemented or realized with a general purpose processor, a content addressable memory, a digital signal processor, an application specific integrated circuit, a field programmable gate array, any suitable programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination designed to perform the functions described herein. A processor device may be realized as a microprocessor, a controller, a microcontroller, or a state machine. Moreover, a processor device may be implemented as a combination of computing devices, e.g., a combination of a digital signal processor and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a digital signal processor core, or any other such configuration.
In the depicted embodiment, the processor 102 includes (not shown) on-board RAM (random access memory) and on-board ROM (read-only memory). The program instructions that control the processor 102 may be stored in either or both the RAM and the ROM. For example, the operating system software may be stored in the ROM, whereas various operating mode software routines and various operational parameters may be stored in the RAM. The software executing the exemplary embodiment is stored in either the ROM or the RAM. It will be appreciated that this is merely exemplary of one scheme for storing operating system software and software routines, and that various other storage schemes may be implemented.
No matter how the processor 102 is specifically implemented, it is in operable communication with the display 106, cursor control device 104, and optionally the eye position sensor 108. The processor 102 is configured to selectively retrieve data from one or more of the cursor control device 104 and the eye position sensor 108, and to supply appropriate display commands to the display devices 106. The display devices 106, in response to the display commands, selectively render various types of textual, graphic, and/or iconic information. Eye position is preferably measured by tracking head position and deriving eye position from the measurement. Head position may be determined by video analysis of a camera image. Head trackers may use one or more cameras in combination with sonars, lasers, or other sensors. For example, the Xbox kinect uses an IR laser to paint the scene with a grid. The cameras then capture the image of the person with the applied grid. Video analytics determine the user's position and motions from the camera images.
Though the method and system of the exemplary embodiments may be used in a non-mobile display, a CAD workstation for example, they may also be used in any type of mobile vehicle, for example, automobiles, ships, and heavy machinery. The use in an aircraft system is described as an example.
Referring to
A second exemplary embodiment is described with reference to
Referring to
While at least one exemplary embodiment has been presented in the foregoing detailed description, it should be appreciated that a vast number of variations exist. It should also be appreciated that the exemplary embodiment or exemplary embodiments are only examples, and are not intended to limit the scope, applicability, or configuration of the invention in any way. Rather, the foregoing detailed description will provide those skilled in the art with a convenient road map for implementing an exemplary embodiment of the invention, it being understood that various changes may be made in the function and arrangement of elements described in an exemplary embodiment without departing from the scope of the invention as set forth in the appended claims.