This invention relates to digital images and, more particularly, to the display of digital images for navigation and other purposes.
The problem facing the navigation-map-display designer is that viewers require detailed maps in their immediate vicinities, in areas around their destinations and perhaps in other points of high interest. At the same time, viewers need those detailed maps in the contexts of smaller scale, less detailed maps showing their routes and the major roads and features extending out to their destinations and perhaps beyond. All this should ideally be displayed in a single map on a physically small screen.
According to Southworth, M. et al. Maps. Little Brown and Company, Boston, 1982 (Southworth), angled-perspective paper maps have been in use for centuries and are particularly beneficial to the traveler. Digital versions of angled-perspective map displays are now incorporated in some in-car navigation systems as well as personal navigation devices. Actually, with modem equipment extending such system functionality to personal digital assistants (PDAs) and cellular telephones, virtually all travelers may use and benefit from the present invention. An angled-perspective view has the advantage of showing more detail (a larger scale) closer to the “view point” and less detail (with a smaller scale) at greater distances. In effect the scale is compressed by a given function at points further away from the vehicle.
However, an angled-perspective view is limited in how it depicts the road map. For example, the map is restricted to the inverse-to-distance scale compression law, which defines the change in scale along the central axis moving further away from the point of view. And the scale is fixed in the direction orthogonal to the central axis. Also, there are computational problems associated with points that fall near or behind the point of view (projected to the ground) and for points that fall near the horizon—especially when trying to compute inverse coordinates.
These above problems can be eliminated and more functionality can be added by using non-perspective variable-scale projections to the display. This can increase its usability, especially for displays of the traveler's position.
From the map-display-designer point of view, the extra freedom supplied by a non-perspective variable-scale map allows for better designs. For one, there is no specific “point of view” required for the construction of such a map. Selection of scale functions can be made arbitrarily and independently along and orthogonal to the central axis. Also, different scaling functions can be applied in different areas of the map. For example, a magnifying “bubble” can be centered on the vehicle, as shown in
U.S. Pat. No. 6,178,380 by Millington entitled “Street Identification for a Map Zoom of a Navigation System,” issued Jan. 23, 2001, discloses a vehicle location display for a navigation or route guidance system, providing information to a user regarding the current location of the vehicle on a map. Below, specific forms of non-perspective variable-scale maps that can be beneficially applied to the navigation map display will be described.
According to various embodiments of the invention, a method is disclosed for the non-perspective variable-scale display of a portion of topographic information, comprising: a) maintaining a data structure of topographic information; b) selecting from the data structure a portion of the topographic information for display; c) performing a coordinate transformation of the selected topographic information to represent the selected information as a variable-scale map other than a perspective map; and d) displaying the selected transformed topographic information as a non-perspective variable-scale image.
According to other embodiments of the invention, an apparatus is disclosed for the non-perspective variable-scale topographic display of successive images comprising: a memory for the storage of topographic coordinate information, first selection means for selecting topographic sub-information from the topographic information by performing at least a first selection operation, transformation means for performing a coordinate transformation on the selected sub-information, and display means for the display of a non-perspective variable-scale image produced by the transformation.
According to other embodiments of the invention, a method is disclosed for the non-perspective variable-scale display of a portion of topographic information including a portion corresponding to a path that a traveler is capable of traveling, comprising: a) maintaining a data structure of topographic information; b) selecting from the data structure a portion of the topographic information for display dependent on a current position of the traveler; c) performing a coordinate transformation of the selected topographic information to represent the selected information as a variable-scale map other than a perspective map; and d) displaying the selected transformed topographic information as a non-perspective variable-scale image.
According to further embodiments of the invention, a method is disclosed for the non-perspective variable-scale display of a portion of topographic information comprising horizontal x coordinates and vertical y coordinates and including a portion corresponding to a path that a traveler is capable of traveling, comprising: a) maintaining a data structure of topographic information; b) selecting from the data structure a portion of the topographic information for display dependent on a current position of the traveler; c) receiving a specification of the behavior of the transform for large values of the y coordinate, wherein the transform comprises transformed x coordinates X and transformed y coordinates Y; d) receiving a specification of the vertical curves defined by the transformed coordinates X as a function of y for constant values of x; and e) receiving a specification of the horizontal curves defined by the transformed coordinates Y as a function of x for constant values of y, wherein the transformed set of x coordinates X and the transformed set of y coordinates Y are determined by the decoupled set of equations:
{overscore (y)}=h(y),
X=F(x, y)=xƒ({overscore (y)}),
Y=G(x,y)={overscore (y)}g(X),
wherein a variable {overscore (y)} describes the compression of the y axis by the function h(y) wherein ƒ{overscore (y)}is a scaling factor used to obtain X from x and controlling the shape of vertical curves defined by the transformed x coordinates for constant values of y, and wherein g(X) is a scaling factor used to obtain Y from {overscore (y)} and controlling the shape of horizontal curves defined by the transformed y coordinates for constant values of x;f) creating a transform configured so as to be consistent with the specified set of transformed y coordinates Y, with the transform behavior for large values of the y coordinate, and with the specified set of transformed x coordinates X;g) performing a coordinate transformation of the selected topographic information to represent the selected information as a variable-scale map other than a perspective map comprising transformed x coordinates X and transformed y coordinates Y; and h) displaying the selected transformed topographic information as a non-perspective variable-scale image.
According to still other embodiments of the invention, a method is disclosed for the non-perspective variable-scale display of a portion of topographic information including a portion corresponding to a path that a traveler is capable of traveling, comprising: a) maintaining a data structure of topographic information; b) selecting from the data structure a portion of the topographic information for display dependent on a current position of the traveler; c) performing a coordinate transformation of the selected topographic information to represent the selected information as a variable-scale map other than a perspective map, wherein the transform comprises a set of one or more bubble transforms, wherein each bubble transform creates one bubble, wherein each bubble is configured to magnify the scale of an area of high interest on the map while continuous map topology is maintained, and wherein each of the one or more bubbles are configured so as not to overlap any of the other bubbles; and d) displaying the selected transformed topographic information as a non-perspective variable-scale image.
According to still further embodiments of the invention a method is disclosed for, in a computer, the non-perspective variable-scale display of a portion of topographic information including a portion corresponding to a path that a traveler is capable of traveling, comprising: a) specifying, by the user of the computer, a data structure of topographic information from which the displayed information will be selected; b) receiving, by the user, a portion of the topographic information selected from the data structure for display dependent on a current position of the traveler; c) initiating, by the user, a coordinate transformation of the selected topographic information to represent the selected information as a variable-scale map other than a perspective map; and d) initiating, by the user, the display of the map as a non-perspective variable-scale image.
According to other embodiments of the invention, a machine-readable medium is disclosed, including operations stored thereon that, when processed by one or more processors, causes a system to perform the steps of: a) maintaining a data structure of topographic information; b) selecting from the data structure a portion of the topographic information for display dependent on a current position of the traveler; c) performing a coordinate transformation of the selected topographic information to represent the selected information as a variable-scale map other than a perspective map; and d) displaying the selected transformed topographic information as a non-perspective variable-scale image.
According to further embodiments of the invention, a method is disclosed for the non-perspective variable-scale display of a portion of topographic information of the surface of the earth including a surface portion on which a vehicle is capable of traveling, comprising: a) maintaining a data structure of topographic information; b) selecting from the data structure a portion of the topographic information for display dependent on a current position of the vehicle on the surface portion; c) performing a coordinate transformation of the selected topographic information to represent the selected information as a variable-scale map other than a perspective map; and d) displaying within the vehicle the selected transformed topographic information as a non-perspective image variable-scale image, wherein the vehicle travels on the surface of the earth.
According to still other embodiments of the invention, an apparatus is disclosed for non-perspective variable-scale topographic display of successive images in relation to the position of a vehicle on a surface comprising: a memory for the storage of topographic coordinate information, means for the determination of the position of the vehicle on the surface, first selection means for selecting, on the basis of the position of the vehicle, topographic sub-information from the topographic information by performing at least a first selection operation, transformation means for performing a coordinate transformation on the selected sub-information, and display means for the display of a non-perspective variable-scale image produced by the transformation, wherein the vehicle travels on the surface of the earth.
According to yet another embodiment of the invention, an apparatus is disclosed for the continuous non-perspective variable scale map that uses a continuous transform across the entire map that is not dependent on data elements for setting scale and thereby does not introduce discontinuities that would effect the spatial judgment of the driver.
Mathematical Form of a Generalized Variable-scale Map
The form of a generalized variable-scale map is:
X=F(x,y), Y=G(x,y), (1)
where x and y are the coordinates of the original map and X and Y are the coordinates of the transformed map. The central axis is along y and F and G can be arbitrary smooth functions.
For a Planar Perspective View (see
F(x,y)=kx,G(x,y)=ky, (2)
where k≦0 is a constant.
For an Angled-Perspective View (see
where α is the angle of tilt, zo is the position of the view point on the z-axis, and z1 is the distance between the view point and the projection plane, as seen in
While equation (1) is completely generalized it is somewhat difficult to deal with from a designer's point of view. Since the functions can be arbitrary there is no guideline to use in selecting an appropriate solution. At the cost of some limitation to the overall generality, a decoupled form of variable-scale equations can be defined that can be used in a simple three-stage process to design useful variable-scale maps (see
Decoupled Mathematical Form of Variable-Scale Map
Consider the equations of (4) as a decoupled form of the equations of (1)
{overscore (y)} =h{overscore (y)}, F(x,y)=xƒf({overscore (y)}), G(x,y)={overscore (y)}g(X), (4)
where the functions and variables are defined below.
There are several advantages to this formulation, one of which is that the design can now be developed in three straight forward stages, as described below and with the aid of
Stage 2: Specify the shape of vertical lines in the transform. X is then obtained from x by a scaling factor, f({overscore (y)}). The function f is then seen to describe the shape of the transformed vertical line x=1. All other vertical lines in the x,{overscore (y)}-plane are scaled accordingly. Thus, ƒ controls the shape of vertical lines. Stage 3: Specify the shape of horizontal lines in the transform. The final Y value is obtained from {overscore (y)} by a scaling factor g(X) . The function g is then seen to describe the shape of the transformed horizontal line {overscore (y)}=1. All other horizontal lines in the X,{overscore (y)}-plane are scaled accordingly. Thus, g controls the shape of horizontal lines.
This three-step design process can more easily handle singularities as long as the designer takes care not to use equations (3) to perform a perspective transform. For example, in the angle-perspective transform, points beneath the view position would result in division by zero, which is difficult to deal with. This condition is more easily handled by the functions h and ƒ, each concerned with only a single variable.
When the first stage of the transform has a horizon, say at M, so that {overscore (y)}<M, we need only define ƒ {overscore (y)}for 0≦{overscore (y)}≦M. We can assume the x-axis is the bottom of the screen and is not scaled, that is ƒ(0)=1. This says that the x-axis is not stretched by ƒ . In the second stage we may wish that vertical lines converge to a single point on the horizon line, that is ƒ (M)=0. The simplest case is a straight line
ƒ {overscore (y)}=(M−{overscore (y)})/M. (5)
If a concave shape is desired in conjunction with stage 3 as described below, the designer can create the effect of a map of a curved surface (see
Also, certain visual effects are easily achieved using this method. For example, the simplest form for the function g is g(X)=1, in which case g has no effect on the transform. More interesting is a curved horizontal line such as:
Points near the y axis are mostly unchanged, but for points further away, the horizontal lines curve downward, so the effect is to simulate a curved surface, such as the surface of the earth, but in a more exaggerated manner, thus enhancing the sense of viewing a large area.
Three useful examples of the decoupled variable-scale map will be briefly described.
The “Exponential” View as formulated by equations (7) below, has been found to have useful display characteristics, especially if a horizon is desired.
{overscore (y)}=k(1−eλy). F(x,y)=xƒ({overscore (y)}) G(x,y)={overscore (y)}g(X) (7)
where λ and k are suitable constants.
Again, assume the x axis is the bottom of the map display. In the Exponential View, y is a function of y, where y is in the exponent of e. If 0<λ<1, then for large y the exponent approaches zero and what is left is a horizon, M, where M=k. The coefficient λ controls the speed at which the y axis is compressed and k sets the height of the horizon on the display. A straight line or a concave shape can be used to define ƒ({overscore (y)}) as was described earlier.
{overscore (y)}=(αy+k)λ−kλ,
F(x,y)=xƒ({overscore (y)}),
G(x,y)={overscore (y)}g(X), (8)
where α, λ, and k are suitable constants.
As before, assume the x axis is the bottom of the map display. In the Power View, {overscore (y)} is a function of y raised to a power, λ,. Take 0<λ<1, and k is chosen to be a point away from 0, typically near the point where the power function yλ has slope 1, k=λ80 /(1−λ). The constant α will then have a stretching or shrinking effect.
The power function has no horizon (the y values have no upper limit) except to the extent that the map itself has a limit or the designer imposes a limit. Because there is no horizon there is no vanishing point. The shape of the vertical lines can thus be defined as
If the map is assumed to be bounded by {overscore (y)}<M, then we could also use a straight line or a concave shape as described above to define the shape of the vertical lines.
The power form does not have a horizon. This results in less compression for larger values of y (distance). Depending on what is to be shown, this may produce superior results.
The Logarithmic View is formulated in (10) below.
{overscore (y)}=λ log(αy+k)−log(k),
F(x,y)=xƒ({overscore (y)}),
G(x,y)={overscore (y)}g(X), (10)
where α, 80 , and k are suitable constants.
As before, assume the x axis is the bottom of the map display. In the logarithmic view, {overscore (y)} is a logarithmic function of y. Take 0<λ and k is chosen to be a point away from 0, typically near the point where the power function λlog({overscore (y)}) has slope 1, k=λ. The constant a will then have a stretching or shrinking effect.
Similar to the power function, the logarithmic function has no horizon (they values have no upper limit) except to the extent that the map itself has a limit or the designer imposes a limit. Because there is no horizon there is no vanishing point. The shape of the vertical lines can thus be defined as
If the map is bounded by {overscore (y)}<M, then a straight line or a concave shape can be used as described above to define the shape of the vertical lines.
Finally we note that while our examples have used well-known mathematical functions, in general the finctions h, ƒ, and g can be easily implemented using table lookup and interpolation methods. This allows an implementation to achieve maximum efficiency, and allows easy modifications of the functions for a specific need, without requiring close-form algebraic expressions.
One other form of a variable-scale function is a local transformation covering only part of a map. In Harrie, L. et al. “A variable-scale map for small-display cartography,” Proceedings of the Joint International Symposium on GeoSpatial Theory Processing and Applications, (ISPRS/Commission IV, SDH2002), Ottawa, Canada, Jul. 8-12, 2002 (Harrie), a magnified area is proposed as a way to improve the presentation of details around the driver's immediate vicinity while still presenting a small scale overview of the entire route at distant regions. However, Harrie's approach produces distortion of the map everywhere outside the magnified area. According to the present invention, the magnified bubble has no distortion beyond a transition zone, and can be added to other views, such as the exponential view above, to give an overall impression as shown in
If the origin of the coordinate system is taken to be the center of the bubble, then the basic bubble transform is defined by a uniform scale factor K>1 within a disc of radius r<ro, a uniform scale of 1 outside of a disc of radius r>r1, where r1>Kr0, and a smooth radial transition for r0≦r≦r1. This translates into
F(x,y)=h(r)x, G(x,y)=h(r)y, (12)
where r=√, {square root over (x2+y2)} and h is defined as
K,0≦r<r0,
h(r)=1,r>r1,
(mr+b)/r,r0<r0≦r≦r1, (13)
and
m=(Kr0−r1)/(r0−r1),
b=r1(1−m). (b 14)
The image of this transformation will show the map with magnification factor K inside a disk of radius Kr0, and a scale of 1 outside of disc r1, as shown in
An adaptation to this bubble-scale map is the Origin-Destination Bubble Pair as shown in
It may also be of interest to magnify the area in between important points such as origin and destination as shown in
Electronic map displays, especially for in-car and handheld devices, suffer from small size. It remains an important design feature to develop navigation devices that maintain an informative and aesthetic map display format. This is particularly challenging because of the complex nature of the task involved, namely; presenting precise details in the travelers immediate vicinity, at the destination and, perhaps other points of high interest along the way, while, at the same time, presenting an overview of the entire route and general area. By judicious use of non-perspective variable-scale, the designer can fine-tune the display to be both aesthetic as well as get the critical information across to the viewer1quickly and effectively. This disclosure concentrates on a simplified form of non-perspective variable-scale map that decouples the coordinates and allows for a straightforward three-stage design approach. In addition, the disclosure explores combining this approach with the superposition of magnifying bubbles of various numbers shapes and sizes to bring out extra detail in areas of particular importance to the traveler.
The in-car and/or handheld devices will include a memory for storing a digital map database of topological coordinate information, a selective system enabling or performing the selection of topographic sub-information of all the topological information stored in the memory, transformation software for performing a coordinate transformation of the selected sub-information, and a display for displaying a non-perspective variable scale image or map produced by the transformation such as is shown by the various map illustrations in the figures. The selection of the topographic sub-information may be accomplished based on the current position of a car or vehicle or by a user of a handheld device.
This application claims priority under 35 U.S.C. 119(e) to U.S. Provisional Patent Application No. 60/684,859, filed May 26, 2005, entitled “Non-Perspective Variable-Scale Map Displays,” by Darrell Mathis et al. (Attorney Docket No. TELA-07763US0), which application is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
60684859 | May 2005 | US |