The present invention relates to user input devices and more specifically to user input devices for controlling movement in a three-dimensional virtual space such as those used in photogrammetry systems.
Photogrammetry implies that the dimensions of objects are measured without the objects physically being touched. Stated differently photogrammetry is the remote sensing of objects within an image. In photogrammetry, the physical measurements of an object are determined from actual known distances. In certain prior art systems, sequential images of aerial photographs are overlapped to create a stereo view of a geographical location. The known view allows height information to be extracted from the images given distances between locations. Photogrammetry information can be used with a computer system to create a virtual three-dimensional environment.
A computer operator can cause a computer system to produce the virtual three-dimensional environment of the image data on a display device. The computer operator can then virtually move through the three-dimensional environment as displayed and extract additional information from the data set. For example, the computer system may display a three-dimensional environment of a city. A building within the three-dimensional environment may be rendered, and therefore, the height of the building relative to the other buildings may be known. However, the height of the building from the street level may not be known. By entering the three-dimensional environment, a user can mark the location of the street level using a user input device and then can move in the z direction (assuming a standard x,y,z coordinate system) to determine the height of the building relative to the street level.
It is known in the prior art to have a three-dimensional controller for use with photogrammetry systems, such as the SoftMouse device 10 made by the Immersion Corporation. Such controllers operate with a computer system and allow a user to view and measure three-dimensional objects or terrain on a two dimensional display device using photogrammes (digitized photographs or imagery stored electronically taken by a camera or scanner). The measurements of objects or terrain that are taken using the three-dimensional controller during the viewing process can be used to provide topographical information for maps or coordinates of objects within the image.
The SoftMouse device 10 as shown in
The optical encoders 15 of the SoftMouse design 10 are used for controlling the x and y positions within the displayed image are placed on the underside of the mouse 10. As the mouse 10 is physically moved across a surface 20 in the x and y directions, the x and y positions within the displayed three-dimensional image change. Thus, if a user wishes to move through the image, the user must move the mouse 10 in the desired directions and the user cannot continuously roam through the image without continuously moving the mouse.
A user-controlled input device for use with a computer system is disclosed. The user controlled input device controls at least three-dimensional movement in a three-dimensional virtual space defined by a three axis coordinate system. The device includes a controller body and at least a force controller, such as a button joystick coupled to the controller body. Displacement of the force controller in a first direction translates into directional movement at least about a first axis. The force controller includes a force sensor wherein an output signal is produced by the force controller that is proportional to the force placed on the force controller. The output signal is translated by a computer program into a rate of motion that is proportional to the pressure that is supplied by the user of the input device. In certain embodiments, a second force controller is coupled to the controller body to control directional movement about a second and a third axis. In such an embodiment, each edge of the force controller controls movement in a different direction. For example, the user can move the cursor using only a single button in both the x and y directions in a three-dimensional virtual space (x,y,z). In other embodiments, each force controller controls only movement relative to a single axis, and the user input device also includes a rotational wheel that when rotated controls motion in the third dimension. The user input device need not be physically moved across a surface in order to obtain three-dimensional movement within the three-dimensional space.
By continually pressing on either one or both of the force controllers, movement will continue in an axial direction controlled by the force controller. In various embodiments, other buttons may also be included which are not force controllers. These additional buttons may be user assigned buttons and may be assigned to various functions of the computer program. For example, the additional buttons may be two state on-off buttons.
In certain embodiments, an optical sensor is coupled to the controller body allowing control of a program control cursor over a two dimensional space superimposed on the three-dimensional space. The two dimensional space is the control space and includes one or more menus that are user selectable using the control cursor. The optical sensors require the user input device to be physically moved across a surface in order for movement to occur in the two-dimensional space.
The controller body of the user input device may be ergonomically shaped to reduce stress on hands and wrists and to reduce carpal-tunnel syndrome. The controller body is U-shaped allowing the user to place both hands on the controller and to have his thumbs positioned over the force controllers, while the user's palms wrap around the controller body and the user's fingers are positioned on indented buttons.
The computer system may include both a computer and a display device, as well as, a computer program that can generate and render a three-dimensional virtual space on the display device. The computer program may be a computer program used for photogrammetry. The data that is used to represent the three-dimensional space may be stored in associated memory in a database. In other embodiments, the user input device may be used for three dimensional video games or for movement through a three dimensional image such as a medical scan.
The foregoing features of the invention will be more readily understood by reference to the following detailed description, taken with reference to the accompanying drawings, in which:
The user of the system can control both cursors using the user input device 110. The user input device includes a plurality of user assignable buttons and a pair of force-controlled joystick buttons 160. The force-controlled joystick buttons may be the model 462 as manufactured by Measurement Systems, Inc. Similarly, other force-controlled controllers may be substituted.
In a different embodiment, the user input device 110 only controls the first cursor 140 within the three dimensional space while a secondary input device, such as a mouse or a trackball (not shown) is used to control the second cursor 150 in the two-dimensional control space.
The force-controlled button joysticks 160 produce an analog output signal that is proportional to the pressure that is placed on the button 160. In one embodiment, the button 160 can be pressed at each of its four sides. A piezo-resistive strain gauge resides at each side and produces an output signal when an edge of the button is depressed. Thus, the button can be used to control position of the cursor within two dimensions of the three-dimensional virtual space (e.g. the positive and negative x directions and the positive and negative y directions). As shown in the figure, there are two separate buttons 160, therefore all three-dimensions can be controlled with the two buttons. In such a configuration, the first button controls the x and y directions and the second button controls the z direction. In this embodiment, only two of the four sides of the second button produce an output signal. In other embodiments four dimensions could be controlled with the two joystick buttons (x,y,z, t) wherein each joystick button controls two dimensions. (Both positive and negative directional movement). In still further embodiments, each of the joystick buttons control only a single direction. For example, the right button may control the x direction and the left button may control the y direction. The z direction would be controlled by another control, such as, a rotational wheel. Thus, a user could move continuously through the x-y plane and would only have to stop or slow movement, if movement in the z direction is desired.
When both force-controlled button joysticks are used, the user-input device can be used to roam through the three-dimensional virtual environment at either a fixed or variable rate of speed depending on the pressure applied to each of the controllers. If a user desires to move at a fixed rate of speed in a particular direction the user will apply pressure to the controller until the rate of speed is set, and then the user will select a locking button. The locking button acts like an automatic cruise control button on a car. In such a configuration, each force-controlled button joystick is used to control at least one direction. As a result, a user may move the cursor in the x-y plane, the x-z plane or the y-z plane at a constant rate.
Movement through the three-dimensional virtual environment is accomplished without moving the user-input device. The user-input device can remain stationary or mounted to a surface and a user can roam through the three-dimensional space using the force-controlled button joystick. The user input device as shown in
Additional buttons are provided for various system applications and are assignable. One of the buttons can be assigned to lock the rate of speed in a particular direction so that the user does not need to hold their fingers at the exact pressure level to maintain a constant rate of movement.
It should be understood by one of ordinary skill in the art that the user input device may be used for any of a variety of three dimensional computer applications including, but not limited to: photogrammetry, medical imaging and diagnostics, and 3-D gaming.
The present invention as expressed above may be embodied in other specific forms without departing from the true scope of the invention. The described embodiments are to be considered in all respects only as illustrative and not restrictive.