U.S. patent application number 10/127115 was filed with the patent office on 2003-03-20 for system and method for synchronizing map images.
Invention is credited to Higgins, Darin Wayne, Scott, Dan Martin.
Application Number | 20030052896 10/127115 |
Document ID | / |
Family ID | 24141472 |
Filed Date | 2003-03-20 |
United States Patent
Application |
20030052896 |
Kind Code |
A1 |
Higgins, Darin Wayne ; et
al. |
March 20, 2003 |
System and method for synchronizing map images
Abstract
An originally non-georeferenced raster map, which may have
resulted from scanning and storing a non-georeferenced paper map,
is georeferenced with reference to a georeferenced map, such as a
vector map. Points denoting common features, such as road
intersections, on each map are captured as point-pairs. When two
point-pairs have been captured, a computer system calculates two
functions, one converting the x,y coordinates of the raster map to
the lat,lon coordinates of the vector map, the other converting
lat,lon to x,y. Thereafter, the maps may be viewed
simultaneously--top-and-bottom, side-by-side--or
quasi-simultaneously, for example, toggling rapidly back and forth.
The georeferencing functions are used by the system to effect
manipulation of one map as the other map is manipulated. Thus, any
manipulation of the vector map--scrolling, zooming, etc,--by a user
is mimicked by the raster map.
Inventors: |
Higgins, Darin Wayne; (Forth
Worth, TX) ; Scott, Dan Martin; (Irving, TX) |
Correspondence
Address: |
Robert C. Klinger
Jackson Walker LLP.
Suite 600
2435 North Central Expressway
Richardson
TX
75080
US
|
Family ID: |
24141472 |
Appl. No.: |
10/127115 |
Filed: |
April 22, 2002 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10127115 |
Apr 22, 2002 |
|
|
|
09537162 |
Mar 29, 2000 |
|
|
|
Current U.S.
Class: |
345/619 |
Current CPC
Class: |
G06T 17/05 20130101;
G09B 29/102 20130101 |
Class at
Publication: |
345/619 |
International
Class: |
G09G 005/00 |
Claims
What is claimed is:
1. A computer-implemented method of manipulating map images, each
of which has a natural, internal coordinate system and is
georeferenced by a georeferencing function, relative to geographic
coordinates, comprising: (a) simultaneously displaying each map
image in its respective internal coordinate system (b) altering a
first of the map images; (c) determining the geographic coordinates
of the alteration to the first map image by applying thereto its
georeferencing function if the alteration's coordinates are not
already in geographic format; and (d) altering the other map images
so that their displays contain the same alteration as the first map
image at the same geographic coordinates as the first map image's
alteration by applying to the other map images their respective
georeferencing function if they are not already in geographic
format.
2. The method of claim 1, wherein: the altered first map image
display and the altered other map image displays cover the same
geographic area.
3. The method of claim 1, wherein: the altered first map image
display and one or more of the other map image displays cover some
but not all of the same geographic area, and step (c) is effected
by determining the geographic coordinates of as much of the
alteration of the first map image as can be included on each of the
one or more other map images.
4. A method as in claim 1, wherein: the alteration of the first map
image comprises moving the first map image, and the alteration of
the other map images comprises movement thereof in the same sense
and amount as the movement of the first map image.
5. A method as in claim 4, wherein: the movement is panning,
scrolling up or down, scrolling left or right, scrolling
diagonally, rotating, zooming in or zooming out.
6. A method as in claim 1, wherein: the alteration of the first map
image comprises adding or deleting an artifact to or from the first
map image.
7. A method as in claim 6, wherein: the artifact is an alphanumeric
legend, a symbol, a line or a polygon.
8. A computer system for manipulating map images, each of which has
a natural, internal coordinate system and is georeferenced by a
georeferencing function relative to geographic coordinates,
comprising: (a) monitor facilities for simultaneously displaying
each map image in its respective internal coordinate system; (b)
mouse/keyboard facilities for altering a first of the map images;
(c) first facilities for determining the geographic coordinates of
the alteration to the first map image by applying thereto its
georeferencing function if the alteration's coordinates are not
already in geographic format; and (d) second facilities for
altering the other map images so that their displays contain the
same alteration as the first map image at the same geographic
coordinates as the first map image's alteration by applying to the
other map images their respective georeferencing function if they
are not already in geographic format.
9. The system of claim 8, wherein: the altered first map image
display and the altered other map image displays cover the same
geographic area.
10. The system of claim 8, wherein: the altered first map image
display and one or more of the other map image displays cover some
but not all of the same geographic area, and the first facilities
determine the geographic coordinates of as much of the alteration
of the first map image as can be included on each of the one or
more other map images.
11. A system as in claim 8, wherein: the alteration of the first
map image comprises moving the first map image, and the alteration
of the other map images comprises movement thereof in the same
sense and amount as the movement of the first map image.
12. A system as in claim 11, wherein: the movement is panning,
scrolling up or down, scrolling left or right, scrolling
diagonally, rotating, zooming in or zooming out.
13. A system as in claim 8, wherein: the alteration of the first
map image comprises adding or deleting an artifact to or from the
first map image.
14. A system as in claim 13, wherein: the artifact is an
alphanumeric legend, a symbol, a line or a polygon.
15. An item of commerce, comprising: a memory medium containing
computer instructions for effecting the method of claim 1.
16. An item of commerce as in claim 15, which further comprises:
the map images stored on the medium.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation-in-part ("CIP")
application based on commonly assigned U.S. patent application Ser.
No. 09/537,162, filed Mar. 29, 2000 and shares specification and
figures with commonly assigned, copending U.S. Patent Applications
entitled "System and Method for Performing Flood Zone
Certifications" (Ser. No. 09/537,161 filed Mar. 29, 2000); a CIP
application based on the '161 application, Ser. No. ______, filed
______; "System and Method for Georeferencing Digital Raster Maps,"
Ser. No. 09/537,849, filed Mar. 29, 2000,; and a CIP application
based on the "849 application, Ser. No. ______, filed ______, all
of which are incorporated by reference hereinto.
FIELD OF THE INVENTION
[0002] The present invention generally relates to graphic image
manipulation and, in particular, to manipulation of map images.
Moreover, the present invention relates to coordinating and
manipulating multiple map images displayed on a data processing
system.
BACKGROUND OF THE INVENTION
FEMA Flood Maps
[0003] The Federal Emergency Management Agency (FEMA) publishes a
large set of "flood maps." These paper maps are the official,
Federally sanctioned source for determining flood risk. The flood
maps delineate regions that are assigned a flood zone designation
from among a limited set of possible designations.
[0004] For example, a region designated "Zone A" on a flood map is
a high risk area, which FEMA believes has at least a 1 in 30 chance
of flooding during any given year. A region designated "Zone V"
combines the properties of a "Zone A" with the additional risk of
wave action or flowing water. In the foregoing context, performing
a "flood zone determination" (also known as a "flood hazard
determination" or a "flood certification") relative to a location
entails a two-step process: (1) determining, based on FEMA flood
maps and other materials, the FEMA-designated flood zone for the
location in question, and, then, (2) completing required paperwork
to report this determination (along with certain other required
information) to interested parties, such as home buyers, their
lenders, and real estate brokers.
[0005] FEMA flood maps come in a variety of styles, but broadly
speaking they can be divided into two types of maps, namely, index
panels ("IP"), or index panel maps, see FIG. 5 (a generalized or
symbolic representation of a FEMA index panel), and regular panels
("RP"), or regular panel maps, see FIG. 2 which is presented here
as a FEMA regular panel, and FIGS. 1, 3 and 4 which are generalized
or symbolic representations of regular panel maps and are present
herein for purposes of explaining the present invention as though
they are FEMA flood maps, although, unlike FIG. 2, no flood zone
designations are present thereon. Thus, FIGS. 1, 3 and 4 may
represent population density maps, air quality maps, FEMA flood
maps, or any other map depicting a geographic area, certain
features or landmarks thereof, and some trait or characteristic of
the depicted are, such as average income, water quality, weather
patterns or FEMA-defined flood zones.
[0006] Referring to the generalized FEMA regular panel map
symbolized in FIG. 1, the regular panel map 10 shows a relatively
small geographic area at a fairly high level of detail. Each
regular panel 10 depicts various "features" of the relevant area.
These features may include (without limitation) streets 12,13
railroad tracks 14, streambeds 16, community boundaries, lakes,
intersections 18,20 of the foregoing, and detailed delineations of
the boundaries of various extant flood zones (not shown in FIG. 1,
but see FIG. 2) and their classifications.
[0007] FIG. 2 depicts a regular panel map 10 in which flood zones
22 are depicted. As is typical, the flood zones 22 are denoted or
"flagged" as variously shaded regions contained within irregular
curvilinear boundaries (the "flood zone boundary"). Labels 30 on
regular panels 10 designate the types of flood zones that have been
shaded. With the exception of regular panels 10 described as "not
printed" ("PNP") and panels presenting flood zone-designated
communities, described in greater detail below, all flood zone
determinations are made by reference to appropriate regular panel
maps 10.
[0008] Referring to FIGS. 1 and 2, each regular panel map 10 is
bounded by "neatlines," that is, a rectangular frame or border
surrounding the geographic area of interest. The geographic area of
interest may not completely "fill" the neatlines 32, as indicated
at 34 in FIG. 1. For example, the actual geographic area contained
within the neatlines 32 of a regular panel 10 might consist of (a)
a portion 33 of a community and the designated flood classification
of the portion and (b) unincorporated or other portions 34 which
surround, are surrounded by, or abut the community, and which have
no flood classification depicted on the panel 10.
[0009] Referring now to the symbolized FEMA regular panels of FIGS.
1 and 3, if FEMA has designated a regular panel as being applicable
to determining the flood zone classification of only an
incorporated community, designated at 33 in FIG. 3, then the
regular panel 10 cannot be used to determine the flood
classification of any depicted "unfilled," unclassified or
unincorporated areas, designated at 34,36,38. According to FEMA
protocol, the foregoing obtains whether or not flood zones for the
unincorporated area 38 are shown on the regular panel 10. Indeed, a
FEMA panel map 10 often does not show flood zones for areas outside
of the designated region for the panel map 10 (designated regions
33,35 a portion of the community in this example). Sometimes the
area outside of the designated area is just shown as a blank area
on the panel 10, as at 34,36,38. Regardless of how much or how
little detail is shown, by convention, a flood determination can be
made using a panel 10 only in the region designated by FEMA.
[0010] The "inset" 44 of a panel 10 means any geographic region
that is both shown on the panel 10 and as to which FEMA mandates
that the flood zone designations set forth on the panel 10 are
applicable. A panel inset 44 may be self-connected (connected with
all parts of itself) as in FIGS. 1-3, or, as shown symbolically in
FIG. 4, it may be split into two or more self-connected regions
46,48 by intervening non-designated areas 50 on the panel 10 and
may include other non-designated areas, such as those shown at 52
and 54. Continuing to refer to FIG. 4, the "inset" 44 of a panel
map 10 may comprise a collection of disjoint, self-connected
regions 46,48 which collectively contain all of the designated area
of the panel 10, and themselves constitute a subset of the
geographic region contained within the neatlines 32
[0011] Thus, from the foregoing, an actual map panel 10 consists,
in general, of three parts: (1) its inset, (2) other
(non-designated) geographic regions within the neatlines 32, but
not included within the inset(s), and (3) areas of the panel which
are outside of the neatlines 32, and generally show various types
of textual information such as a map legend, the map panel number,
panel effective date, and similar data. It is true that, in the
ideal case, the inset 44 of FIG. 4 should include only the
designated regions 46,48 of the panel 10, but as a practical matter
it is sometimes convenient to include some non-designated areas
50,52,54 (or 34,36,38 ) within the inset, so as to simplify the
process of gathering inset border data.
[0012] Referring to FIG. 5, the symbolization 60 of an index panel
map covers a considerably broader area than a regular panel 10, but
depicts a lower degree of detail, and usually does not indicate the
flood zones thereon. Typically, an index panel 60 shows a broad
geographic view of the locations of the various regular panels 10
that make up an entire community, or large portion thereof. It
should be noted that, while FEMA "defines"communities, these
FEMA-defined communities often do not necessarily correspond to
one's intuitive sense of what a community is. Further, although
only on panel 10 is depicted as containing geographic-related
features, it is to be understood that each panel 10 of the index 60
contains geographic information.
[0013] The index panel 60, generally depicted in FIG. 5, provides
its broader, less detailed overview by displaying the neatline
boundaries 32 of each of its regular panels 10 against a background
of major geographic features (e.g. highways, lakes, etc.). Each of
the regular panels' 10 neatline boundaries 32 is labeled with the
corresponding number of its regular map panel 10, as symbolically
represented by "XX," "YY" and "ZZ" in FIG. 4. Index maps 60, in
effect, show how to "put together" the panel map 10 "jigsaw", that
is, how to associate panel maps 10 with each other to form a grid
thereof, grid lines 62 thereof being comprised of the aligned
and/or overlapping 20 neatlines 32 of adjacent panels 10.
[0014] Until the advent of the invention of the '849 application
and the CIP based thereon, the primary purpose of the index maps 60
has been their use as an aid in manually determining which of the
regular maps 10 should be consulted in order to make a flood zone
determination. For example, if a property is known to be located in
25 Community A, then a map analyst might first locate the property
on the Community A index map 60. The analyst could immediately
determine--by examining the neatline borders 32,62 and the labels
"XX," "YY," "ZZ" displayed on the index map 60--which regular panel
map 10 to consult. Since there are hundreds of panel maps 10 in the
index map 60 of various communities, identification of a particular
panel map 10 by examining an index map 60 can be effected more
quickly than serially examining large numbers of panel maps 10. The
present invention provides other, much more efficient ways of
determining the correct regular panel map 10 applicable to a
particular location.
[0015] Index maps 60 also contain neatline borders 32 for panel
maps 10 that are not printed as such, and which are designated
"panel not printed" or "PNP." As this name suggests, no actual
panel map 10 is ever printed for a PNP. Instead, the relevant index
map 60 displays the flood zone classification for the region
contained within the PNP neatline borders 32. Accordingly, In the
case of a PNP, the flood zone classification is determined from the
index map 60, rather than from a regular panel 10.
[0016] In addition to the foregoing techniques, flood zone
determinations can also be made on the basis of FEMA's denoting
certain communities as "flood zone designated communities." In this
event, FEMA mandates that a designated community has the same flood
zone classification throughout. As a consequence FEMA does not
publish any flood panels--either regular 10 or index 60--for the
community. Property located anywhere in that community assumes the
flood zone classification of the community.
Digital Raster Maps
[0017] A digital raster map image is a digital representation of a
map. Conceptually, the image to be digitized is divided into a
rectangular grid of small rectangular regions (known as pixels),
which can be designated by X, Y coordinates defining the column and
row of the pixel within the grid. The "Color value" of each pixel
is then stored. A digital raster map may be created by optically,
digitally scanning a conventional paper map and thereafter using a
computer system to define and/or display it in terms of its pixel
locations and color values. Commonly used formats for storing
scanned images currently include TIFF, JPEG, and PNG. Any FEMA
regular panel 10 or index panel 60 may be represented as a digital
raster map.
Digital Vector Maps
[0018] A vector map may be viewed as a "virtual" map that
comprises, in effect, a collection of stored data. The stored data
define the locations of plural nodes and plural straight-line
segments interconnecting the nodes. The stored data defining a
vector map represents geographic information in the form of
collections of points--the nodes--and line segments interconnecting
the nodes to form polygons and/or paths, i.e., closed and
non-closed figures comprised of line-interconnected nodes. These
points, lines, polygons and paths may have additional information
associated with them. For example, the stored data may indicate
that a particular point or node is the location of the capitol
building, or that a selected polygon describes the border of Lake
Placid. The polygons are surrogates for, or representations of, the
actual curvilinear configuration of various geographic features:
streets, streams, lakes, cities, counties, etc. Typically, the
features--nodes alone or two or more interconnected nodes--are
presented in terms of latitude/longitude (or lat/lon) values. If
this or another earth-referenced system is used to locate the nodes
of the map, the map is said to be georeferenced. A visually
sensible map may be "drawn" from the stored data.
[0019] In view of the fact that georeferencing of digital raster
map images plays a key role in the present invention, the precise
meaning of this term, for the purposes hereof and as used herein,
is set forth below.
Georeferencing
[0020] A raster map image is said to be "georeferenced" if there
exist mathematical functions, f and g, such that one function can
be used to convert the X,Y coordinates of the pixels describing the
map image to corresponding latitude/longitude coordinates and the
other function can be used to convert the latitude/longitude
coordinates of the pixels of the image to their corresponding X,Y
coordinates. In other words, f and g effect the following:
[0021] 1. If (x, y) represents a pixel location on a digital raster
map image, then f(x, y)=(Lon, Lat) represents the longitude and
latitude of the to corresponding physical location; and
[0022] 2. If (Lon, Lat) represents a physical location that lies
within the region covered by the map, then g(Lon, Lat)=(x, y)
represents the point on the digital raster map image that
corresponds to that longitude and latitude.
[0023] In the previous paragraph, (x,y) defines a point pursuant to
the natural internal coordinate system of the raster map image.
Most digital vector map images use longitude and latitude as their
internal coordinate system. Accordingly, most digital vector maps
can be considered to be trivially georeferenced per se. Most
digital raster map images use the pixels of its image as a kind of
natural coordinate matrix. Such a raster map image is not
inherently trivially georeferenced and requires the operation of a
non-trivial georeferencing function to convert back and forth
between coordinate systems.
[0024] Most FEMA maps do not contain any latitude/longitude
information that would be useful in georeferencing their scanned
raster image. Some recently FEMA-issued panels do show
latitude/longitude values at certain points thereon, but such
panels are in a distinct minority when considered in the context of
the 100,000+ panels that FEMA currently provides.
SUMMARY OF THE INVENTION
[0025] Pursuant to the present invention there is provided a system
and method for coordinating the manipulation of multiple map images
displayed on a data processing system.
[0026] The invention is effected by georeferencing a digital raster
map by associating specific points on the raster map with
corresponding points on a georeferenced vector map or another
georeferenced raster map. According to the preferred embodiment, a
raster map and a corresponding vector map are simultaneously
displayed to a user. The user then locates a common geographic
point or feature on each map, and marks each of them as a unique
point-pair. When the user has marked at least two point-pairs, the
system then computes georeferencing functions, based on the
pixel-coordinates of the points marked on the raster map and the
corresponding geographic coordinates of the points on the vector
map. Thereafter the geographic coordinates of any point on the map
may be computed. As more point-pairs are identified, the
georeferencing functions are modified for increased accuracy.
[0027] After georeferencing the raster map, the maps are
simultaneously displayed--side-by-side, top-to-bottom,
superimposed. Any point of either map can be cross-referenced to
the other map by the use of the appropriate georeferencing
function. Accordingly, the maps can be manipulated, edited,
annotated, panned, rotated and otherwise affected in a synchronized
manner by defining the manipulations in terms of the geographic
coordinate system and using the georeferencing functions to
translate their manipulations to each map's coordinate system
[0028] A digital raster map is a computerized map image that
resembles a conventional paper map in that it presents an image of
a mapped area, but is not associated with any additional underlying
data associated with the features of the map. A digital raster map
is typically created by scanning a conventional paper map, and is a
grid-based map composed of pixels (or points) of color, shades of
grey or black and white. Each pixel in the grid can be referenced
by X,Y pixel coordinates, and has only a value, which indicates the
color of that pixel. The pixels of a raster map are not, without
more, georeferenced, i.e., the pixels of a raster map cannot be
identified by latitude/longitude or other earth reference. Raster
images are commonly referred to as "bit mapped."
[0029] A vector map comprises stored data that defines nodes, lines
and polygons, rather than pixels, to describe an image. Unlike a
raster map, in which the map image is simply stored as a grid of
pixels, when a vector map is displayed, it is "drawn" from a set of
underlying data. A vector map is created through the placements of
nodes on a plane and connecting those nodes with lines to form
closed polygons. Vector lines can be attributed with tables of data
such as elevations, values, names or other information relative to
the line. Vector data can be displayed in three dimensions if the
lines are attributed with Z values, modified or changed relative to
user need, or layered to allow for turning off and on the viewing
of different information.
[0030] Because of their feature attribution properties, vector maps
are particularly useful for displaying geographic data. Vector maps
are used to display boundaries or lines that denote the position
and extent of features, such as county boundaries or lines denoting
stream and river systems. It is also very easy to view or
manipulate the data underlying a vector map, for example to view or
change the elevation of a feature. Computers are capable of more
expeditiously extracting and utilizing information which is stored
in vector map format, rather than raster map format.
[0031] Also, because vector maps are commonly drawn from a
geographic data set describing the area shown, they are typically
georeferenced. Georeferencing is the process of relating source
coordinates, such as X,Y Cartesian coordinates, to geographic
coordinates, typically in standard latitude/longitude. An image or
a vector file is georeferenced to be used within a
mapping/geographic environment. In a vector map, the data from
which the map is drawn typically is expressed in terms of a
geographic coordinate system.
[0032] Modern GIS systems normally make use of digital vector map
information. However, a vast legacy of paper-based map information
exists. It is very expensive and time consuming to convert all of
the information on these paper maps over to a digital vector
format. In many cases the scope and expense of such conversions
render them completely impractical. However, even when a complete
conversion to digital vector-based format is not possible, it is
still possible to obtain some of the benefits of computerized map
systems in accordance with the present invention pursuant to which
paper maps are converted to digital raster maps (by scanning them)
and the raster image is thereafter georeferenced. After
georeferencing, there is, according to the present invention, a
definite mathematical relationship between the pixel coordinates in
the raster map, and the geographic coordinates of the feature
represented by that pixel
[0033] The present invention contemplates a system and method for
georeferencing a raster map by associating points thereon with
corresponding points on a previously georeferenced vector map. The
invention is described as applicable to georeferencing FEMA flood
maps, but may be used to georeference any non-georeferenced paper
map or other map.
[0034] First, using known scanning hardware and software, FEMA or
other paper map images are scanned to create digital raster images
thereof. The data representing the X,Y coordinates of the pixels
comprising the raster images are stored in any convenient storage
facility, such as computer memory or a CD-ROM. The stored raster
images may be referred to herein as "flood map images."
[0035] Second, geometric figures, such as polygons approximating
the neatline borders of each panel map and the inset boundaries of
the flood map images within each panel map neatline, are
"captured." Other geometric figures, such as "open" figures
approximating the flood zones adjacent a river or stream, are also
captured. Both types of geometric figures are captured, by
activating a device such as a mouse, or by running a computer
program designed specifically to automatically extract such
geometric figures.
[0036] The capture of the above described geometric figures shown
on the raster image, FIG. 2, of a scanned paper map is achieved in
the following manner. The user identifies the vertices (points) of
the geometric figure by "clicking" a mouse icon on a suitable
sequence of points on a displayed flood map image or raster image.
The sequence of points may be "smooth" or may be jagged, but, in
any event, represents an approximation of the actual geometric
figure. In the case of the neatlines, because such are rectangles,
the representation thereof and the actual neatlines will be
similar, if not the same. Because inset boundaries are often
complexly curvilinear or meandering, a captured geometric figure
representing an inset or the shaded flood zone 22 in FIG. 2 is
likely to have boundaries that are less "smooth" than the actual
boundaries. Of course, smoothness may be increased by increasing
the number of points or vertices captured in drawing the geometric
figure.
[0037] The order in which the vertices are captured determines the
order of traversal of the vertices of the geometric figure. As a
first, a second, and then subsequent vertices are captured, a line
segment is drawn from the previous vertex to the next identified
vertex, until the geometric figure is completed. The completed
geometric figure is preferably displayed as overlying the displayed
flood map image and may be edited, e.g., by adding additional
vertices thereto to more accurately mimic the shape of the actual
boundaries being represented.
[0038] Elementary tests for the correctness of polygonal geometric
figures thus defined and captured are preferably performed. These
tests include at least a test to see that no edges of a polygon
cross one another. Additional tests may include a test to see that
no polygon edge is shorter than some edge length parameter, and a
test to ensure that the edges defined form a closed polygon. These
tests are applied on an ongoing basis, as the user determines
additional vertices of the polygon. Errors may be highlighted in
different colors or brought to the attention of the user through
pop-up panels on the computer system. The user is allowed to edit
the polygons to correct errors, or to improve their quality.
[0039] Each geometric figure that is captured is also stored. Once
the map to which a particular geometric figure relate is
georeferenced, the geometric figures--that is, their vertices and
lines--will, therefore, also be georeferenced,
[0040] Next, the flood map (digital raster) images are
georeferenced. Initially, there is obtained or generated a digital
vector map covering the same general geographic area covered by the
flood map images and capable of displaying and depicting the same
geographic features, such as streets, rivers, railroads, etc. The
digital vector map may be a commercially obtainable map covering a
limited area or an entire geographic entity; vector maps covering
the entire United States are available.
[0041] Then, the vector map image and the flood map image are
simultaneously displayed. Such may result in the maps being
displayed side-by-side, over-and-under, or in superimposition.
Using location information from the flood map image (e.g. county
name, state, community name, large metropolitan area, etc.), the
user manipulates the vector map (by zooming, panning, scrolling
etc.) until it displays roughly the same region displayed in the
flood map image.
[0042] The user then identifies a first point-pair 200-200 (FIGS. 2
and 6 ), that is, a pair of points--one point on the vector map,
FIG. 2, the other point on a selected (if more than one) inset of
the flood image map, FIG. 6--that represent the same geographic
location. As can be seen from an examination of FIGS. 2 and 6, the
point 200 on each map is the intersection of "Oaklane S" and
"Randol Mill Road." Although only the vector map of FIG. 6
identifies the streets by name, the similarity of shape and
location permits expeditious identification of the point 200 on the
map of FIG. 2.
[0043] Additional point-pairs 202-202 through 208-208 in FIGS. 2
and 6 may be identified by "clicking" a mouse icon on an
identifiable point on the flood map image--say, a street
intersection--and then "clicking" on the same point or street
intersection shown on the vector map. Accurate placement of the two
points can be assured by zooming in on the images. Markers
indicating the selected locations are displayed on each map. These
markers can be "dragged" to different spots in order to correct
inaccurate placement. Additional point-pairs (one point from the
vector map, and one from the flood map image) are then
identified.
[0044] As the second 202-202 and subsequent 204-204, etc.
point-pairs are each identified, an algorithm calculates and
provides a georeferencing function correlating the flood map image
and the vector image. Specifically, upon identification of two
point-pairs, georeferencing functions are generated and becomes
available for the flood map image. These georeferencing functions
are refined as additional point-pairs are identified. As soon as
the georeferencing functions are available they are used to
"synchronize" the vector map with the digital flood map image. The
synchronized maps display the same geographic region, and if one
image is scrolled, panned, zoomed, or otherwise manipulated by the
user, the same manipulation occurs automatically in the other map
image. This synchronization greatly facilitates the placement of
additional point-pairs, which improves the quality of the current
georeferencing functions as more specifically described in commonly
assigned U.S. patent application Ser. No. 537,161.
[0045] If multiple inset polygons have been defined on a single
flood map image, and if those insets are shown on the map in
locations which are not consistent with their actual geographic
locations, then it is necessary to calculate a different
georeferencing function for each of the inset polygons. This
situation occurs, for example, when FEMA shows a geographic region
on one map panel, which does not actually belong in the same
geographic area as the rest of the map panel contents. FEMA
sometimes does this in order to eliminate the necessity of printing
another map with only a tiny region shown on it. In contemplation
of this event, this step of the present invention is more generally
stated as follows: When georeferencing an inset, the user must
select only point-pairs contained within that inset (or, at least,
whose georeferencing function would logically be the same as points
of the inset); a georeferencing function is calculated for each
inset, and must be stored so that this correspondence is clear.
[0046] Using the foregoing approach, all FEMA flood maps are
georeferenced and stored. The georeferencing of the FEMA maps also
georeferences the previously captured geometric figures
representing the neatlines of the panel maps, the insets
therewithin, and other significant gemmetries located in the insets
Accordingly, for every inset on a flood map, there exists a
function which allows conversion of its X,Y pixel coordinates into
lat/lon geographic coordinates. Among other things, such
georeferencing implies that the boundaries of an inset itself--that
is the stored polygon mimicking the inset boundaries--can be
expressed in terms of lat/lon coordinates. More generally, any
identifiable points, geometric figures or regions of a flood map
image, including the borders of flood zone regions therein, can be
expressed in lat/lon coordinates.
[0047] If an index map is initially georeferenced, as set forth
above, then a preliminary georeferencing of a specific regular
panel, the neatline of which is shown on the index map, can be
obtained by creating point-pairs out of the corresponding four
corners of the neatline boundary which is, of course, shown on both
the index map and the regular panel map. In other words, it is not
really required for the georeferencing process that one of the maps
be a vector map (although this is usually most convenient and
practical). It is possible for both maps to be scanned raster map
images, as long as the same geographic region is depicted on each
map and one map is already georeferenced.
BRIEF DESCRIPTION OF THE DRAWINGS
[0048] The novel features of the invention are set forth in the
appended claims. The invention itself however, as well as its mode
of use, further objects and advantages thereof, will best be
understood by reference to the following detailed description read
in conjunction with the accompanying drawings, wherein:
[0049] FIGS. 1, 3 and 4 are general representations or
symbolizations of raster map images of three FEMA panel maps;
[0050] FIG. 2 is a reproduction of a raster image of a FEMA panel
map;
[0051] FIG. 5 is a general representation or symbolization of a
FEMA index map made up of a number of the panel maps, such as those
depicted in FIGS. 1-4;
[0052] FIG. 6 is a reproduction of a vector map which depicts the
same geographic area as the raster map of FIG. 2;
[0053] FIGS. 7 and 8 are flowcharts of processes in accordance with
the present invention: and
[0054] FIG. 9 is a depiction of a computer system for carrying out
the method of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
[0055] The present invention is a system and method for
georeferencing digital raster maps, FIGS. 1-5, by associating
specific points on a raster map, FIG. 2, with corresponding points
on a georeferenced vector map, FIG. 6, or another georeferenced
raster map.
[0056] Before georeferencing is initiated, the neatlines 32 of each
raster map, such as FIG. 2, are captured as polygons, and the
polygons are then stored. Moreover, polygons mimicking the border
of the inset(s), e.g., 33, 44, 46, 48 in FIGS. 1, 3 and 4, are also
captured and stored. The vertices and interconnecting lines of the
polygons, and preliminary testing methods therefor are discussed
above.
[0057] Next, a raster map, such as that shown in FIG. 2, and a
corresponding vector map, FIG. 6, are simultaneously displayed to a
user. The user then locates a common geographic point or feature on
each map, FIGS. 2 and 6. Some corresponding points are numbered
200, 202, 204, 206 and 208 on both maps of FIGS. 2 and 6. Each set
of common points 200-200, 202-202, 204-204, 206-206, and 208-208 is
"marked" by the user as a unique point-pair. Marking may be
achieved in any convenient way, including "clicking" a mouse on
each point of a point-pair, or dragging point-pair markers, so that
the x,y coordinates of the point on the raster map of FIG. 2 and
the latitude/longitude coordinates of the point on the vector map
of FIG. 6 are captured and recorded.
[0058] When the user has marked at least two point-pairs, the
system computes a georeferencing function, based on the x,y pixel
coordinates of the points marked on the raster map of FIG. 2 and
the corresponding geographic coordinates of the points on the
vector map of FIG. 6. Thereafter the geographic coordinates of any
point on the raster map of FIG. 2 map may be easily computed. As
more point-pairs are identified, the georeferencing function is
modified for increased accuracy.
[0059] A digital map image is considered georeferenced if a pair of
mathematical functions, f and g have been defined that can be used
to convert back and forth between the coordinates of the raster map
image of FIG. 2 (as defined by the pixels of the image) and the
corresponding longitude and latitude of the location of that point
on the vector map of FIG. 6. That is, georeferencing exists if the
following are true:
[0060] 1. If (x, y) represents a location on the digital raster map
image (FIG. 2), then f(x, y)=(Lon, Lat) represents the longitude
and latitude of the corresponding physical location as depicted on
the vector map (FIG. 6).
[0061] 2. If (Lon, Lat) represents a physical location that lies
within the region covered by the vector map of FIG. 6, then g(Lon,
Lat)=(x, y) represents the point on the digital raster map image of
FIG. 2 that corresponds to that longitude and latitude.
[0062] Here, x and y represent the natural internal coordinate
system of the raster map image. Typically, as described above, the
pixels of a digital raster map, as in FIG. 2, constitute a natural
internal coordinate system. A vector map, as in FIG. 6, is based on
a longitude and latitude coordinate system as its underlying
coordinate system. As such, a vector map may be considered to be
trivially georeferenced. Therefore, the functions f and g above are
non-trivial georeferencing functions required to convert back and
forth between the coordinate systems of the maps of FIG. 2 and FIG.
6.
[0063] First, the raster map, FIG. 2, to be georeferenced is
displayed on a computer monitor at the same time as a previously
georeferenced map, FIG. 6, Step 400 in FIG. 7. Typically, the map
of FIG. 6 is a vector map, but could also be another raster map for
which georeferencing functions are already known and can be
accessed. The maps, FIGS. 2 and 6, are preferably displayed side by
side, but may be displayed above/below each other, in superposition
or in any other simultaneous or quasi-simultaneous (e.g., toggled)
display mode.
[0064] The maps of FIGS. 2 and 6 are preferably initially
independently manipulable for rotation, position, pan, zoom and
scale. The user is free to manipulate the display of both maps
until the displayed region of the map in FIG. 2 is generally shown
in the display of the map of FIG. 6.
[0065] Next, pairs of points, or point-pairs, 200-200, 202-202,
etc, representing identical geographic locations on the maps of
FIGS. 2 and 6 are identified, and the user uses a keyboard, mouse,
or other pointing or capturing device to mark these point-pairs.
For each point-pair, 200-200, etc., one point is marked on FIG. 2
and the other point is marked at the corresponding location on FIG.
6. The point marked on the raster map, FIG. 2, has specific x,y
coordinates. The same point marked on the vector map, FIG. 6, has
specific latitude,longitude coordinates. Examples of common
georeferencing point-pairs include street intersections, 200-200,
202-202, 204-204 and 206-206, sites 208-208 where a road crosses a
river, mountain peaks, specific building locations, the
intersection of two rivers, and other readily identifiable map
features.
[0066] If any points on the map of FIG. 2 are identified on the map
by longitude and latitude--in the case of FEMA flood maps, this is
a relatively rare occurrence--a georeferencing point-pair can be
obtained by marking that point on FIG. 2 and marking on FIG. 6 at
the location having the identical latitude and longitude.
Alternatively, once such latitude,longitude-identified points on
FIG. 2 are marked, each will be associated with both lat,lon and
x,y coordinates, and each can thereafter be used to determine the
georeferencing functions without requiring a corresponding mark on
FIG. 6
[0067] After a point-pair is marked on FIGS. 2 and 6, the x,y
coordinate on FIG. 2 is assigned the corresponding
latitude,longitude of its matching point on FIG. 6. When two
georeferencing point-pairs are marked, the system computes an
initial georeferencing function for FIG. 2 based on a linear
transformation that allows an arbitrary rotation and directionally
invariant scaling between the x,y domain and the latitude,longitude
domain.
[0068] To improve accuracy and allow increased generality, more
georeferencing point-pairs will frequently be desired. To
facilitate the process of gathering these additional georeferencing
point-pairs, the maps of FIGS. 2 and 6 are synchronized.
Accordingly, as either map, FIG. 2 or FIG. 6, is zoomed, panned,
scrolled, or otherwise caused to display a different region, the
other map, FIG. 6 or 2, automatically does the same. This greatly
increases the ease with which georeferencing point-pairs can be
identified and marked on the maps, because, when the user of the
system locates an identifiable feature on one map, the other map
will automatically be showing substantially the same location.
[0069] After synchronization is achieved, when the user marks a
georeferencing point on one of the maps, the system automatically
marks the corresponding point on the other map in accordance with
the last-calculated georeferencing function (step 420 ). The user
can then make corrections to the location of a point marked by the
system in this way (step 425 ). The user may enter as many
point-pairs as are desired; each additional point-pair increases
the accuracy of the georeferencing process.
[0070] When three or more georeferencing point-pairs are
determined, the system computes a georeferencing function for FIG.
2 based on a general linear transformation between the x,y domain
and the latitude,longitude domain. When four or more georeferencing
point-pairs are determined, the general linear georeferencing
function is over-determined. This means that more than the required
amount of information to compute the general linear georeferencing
functions is available, but that this information may not be
completely consistent. The system uses the extra information
contained in the additional georeferencing points to provide
validation checks to protect against the possibility that some of
the data points may be inaccurate. Point-pairs that deviate
excessively with respect to a calculated standard error are
presumed to be inaccurate and are omitted from the extant
calculation of the georeferencing function. As new point-pairs are
added, the system rechecks previously omitted points to determine
if those previously omitted points should now be considered when
recomputing the georeferencing functions.
[0071] The additional point-pairs allow the system to compute the
general linear georeferencing functions which best fit the
combination of all the available georeferencing point-pairs, so
that the active georeferencing functions are revised with each new
point-pair. According to preferred embodiments, this is done by
using a "least square" parameter fitting operation.
[0072] The user may then proceed to enter the next point-pair. When
the user is finished, the system stores the active georeferencing
functions with the raster map of FIG. 2. At this time, the raster
map is considered fully georeferenced and the related
georeferencing functions are stored as is their association with
the FIG. 2. When the raster map is later accessed, the system
retrieves the relevant georeferencing functions, and applies them
to determine the latitude and longitude of any point on the raster
map or to determine the x,y coordinates of any point on the vector
map of FIG. 6. Thus, at this time, the neatlines of each panel map,
the boundary of each panel map inset and the "grid" of neatlines on
each index map are, as polygons, fully georeferenced. Any other
features or polygons of the raster map that may be described using
pixel coordinates (e.g. flood zone boundary polygons) will also be
georeferenced
[0073] While various techniques exist for determining a
georeferencing function from sets of point-pairs, the specific
approach used by the system and method of the present invention is
now discussed.
[0074] To carry out the georeferencing process of the present
invention, sets of points P, are specified. Let i.epsilon. P denote
one of the points i of P. Associated value x.sub.i, y.sub.i and
Lat.sub.i,Lon.sub.i refer, respectively, to the x and y coordinates
of the point i on the raster map of FIG. 2, and the latitude and
longitude of the same point i on the earth's surface, i.e., on the
vector map of FIG. 6. There is also defined a set of points AP,
where A is the subset of "active" points, i.e. points which are in
extant use in the calculation of the georeferencing functions. A
parametric family of functions is selected. It is stipulated that
functions in this family map from (x,y) to(Lon,Lat). Any function
.function.has components .function..sub.1(x,y)=Lon, and
.function..sub.2(x,y)=Lat. From within this family there is sought
the specific function {circumflex over (.function.)}which (in a
sense to be defined below) introduces the smallest error in
attempting to render the following system of equations true:
{circumflex over
(.function.)}(x.sub.i,y.sub.i)=(Lon.sub.i,Lat.sub.i) for
i.epsilon.A (1)
[0075] Once determined, {circumflex over (.function.)} will
function as the georeferencing function which is used to compute
corresponding latitude and longitude values (Lon,Lat) on the vector
map of FIG. 6 for any point (x,y) on the raster map of FIG. 2.
There are a variety of ways to define the function that minimizes
error in rendering Equation (1) true. The method of the present
invention utilizes a least squares approach, known in mathematics
as an L.sub.2 approach. This approach seeks to ascertain the
function {circumflex over (.function.)} which minimizes the sum of
the squared differences between the actual and the predicted values
of latitude and longitude. In other words, from among all the
functions f .function.{circumflex over (.function.)} is the one
which minimizes:
SSE=.SIGMA..left
brkt-bot.(.function..sub.1(x.sub.i,y.sub.i)-Lon.sub.i).su-
p.2+(.function..sub.2(x.sub.i,y.sub.i)-Lat.sub.i) .sup.2.right
brkt-bot. (2)
[0076] Alternatively, the function {circumflex over (.function.)}
may be chosen so that the sum of absolute errors, rather than
squared errors, is minimized or so that the largest error is
minimized. Other criteria are also possible. For example, a
weighting factor may be applied to each of the two components of
the sum (i.e. the Lat and Lon components).
[0077] In what follows there shall be described methods for
computing georeferencing functions based on both a general linear
parametric family of functions and a rotational linear family of
functions. Those skilled in the art will readily perceive that this
approach may be easily generalized to other parametric families of
functions. One such other parametric family is a nonlinear
parametric family of functions arising from the projection of the
earth's surface onto a flat map.
The General Linear Case
[0078] In the general linear case, F is the set of all possible
linear transformations which map from (x,y) to(Lon,Lat). Thus, 1 f
^ ( x , y ) = [ a ^ 11 a ^ 12 a ^ 21 a ^ 22 ] [ x y ] + [ b ^ 1 b ^
2 ] ( 3 )
[0079] for some choice of parameters {circumflex over
(.alpha.)}.sub.11, {circumflex over (.alpha.)}.sub.12, {circumflex
over (.alpha.)}.sub.21, .sub.22, {circumflex over (b)}.sub.1, and
{circumflex over (b)}.sub.2. If the region covered by the map to be
georeferenced is not too large, then this family of functions will
contain a suitable function {circumflex over (.function.)} whose
total error, as determined by the least squares methodology, is
quite small. In the case where the map to be georeferenced covers
an area that is too large, the curvature of the earth must be taken
into account and F is not a suitable family of functions. In the
latter event, nonlinear functions must be used as mentioned
above.
[0080] To find {circumflex over (.function.)} we seek the
parameters which minimize 2 S S E = i A ( a 11 x i + a 12 y i + b i
- L o n i ) 2 + ( a 21 x i + a 22 y i + b 2 - L a t i ) 2 . ( 4
)
[0081] The parameter values which minimize this expression are
found by solving the following two independent systems of linear
equations: 3 [ n i A x i i A y i i A x i i A x i 2 i A x i y i i A
y i i A x i y i i A y i 2 ] [ b 1 a 11 a 12 ] = [ i A L o n i i A x
i L o n i i A y i L o n i ] (5a) [ n i A x i i A y i i A x i i A x
i 2 i A x i y i i A y i i A x i y i i A y i 2 ] [ b 2 a 21 a 22 ] =
[ i A L a t i i A L a t i i A y i L a t i ] (5b)
[0082] These systems can be solved by well-known methods, such as
Gaussian Elimination or LU factorization. The solutions yield the
desired values of {circumflex over (.alpha.)}.sub.11, {circumflex
over (.alpha.)}.sub.12, {circumflex over (.alpha.)}.sub.21,
{circumflex over (.alpha.)}.sub.22, {circumflex over (b)}.sub.1,
and {circumflex over (b)}.sub.2. It should be noted that equations
(5a) and (5b) do not have a unique solution unless three or more
non-collinear points on the raster map, FIG. 2, are contained in A.
Generally speaking, then, it requires the selection of three
point-pairs to initiate the calculation of a georeferencing
function from the family of general linear transformations. When
there are four or more point-pairs, it is possible to compute a
standard deviation of errors using the formula: 4 s = i A [ ( a ^
11 x i + a ^ 12 y i + b ^ 1 - L o n i ) 2 + ( a ^ 21 x i + a 22 y e
+ b ^ 2 - L a t i ) 2 ] n - 3 ( 6 )
[0083] where s is an estimator for the amount of error to be
expected between actual and predicted latitude and longitude
values.
[0084] The inverse georeferencing function, {circumflex over
(.function.)}.sup.-1 that maps from (Lon, Lat) of one point of a
point-pair on the vector map of FIG. 6 to (xy) of the other point
of the point-pair on the raster map, FIG. 2, may now be readily
obtained by inverting the function {circumflex over (.function.)}.
Having done this, it is possible to compute a similar standard
deviation of error for {circumflex over (.function.)}.sup.-1 which
is an estimate of error as measured in the x,y coordinates of the
raster map of FIG. 2.
The Rotational Linear Case:
[0085] In the rotational linear case, F is the set of all possible
linear transformations which map from (x,y) to (Lon,Lat) and which
also allow for a known scale change caused by the difference in
distance per degree of latitude and per degree of longitude at any
point not on the equator. Thus 5 f ^ ( x , y ) = [ ^ 3 - ^ 4 - ^ 4
- ^ 3 ] [ x y ] + [ ^ 1 2 ] ( 7 )
[0086] for some choice of parameters {circumflex over
(.beta.)}.sub.1, {circumflex over (.beta.)}.sub.2, {circumflex over
(.beta.)}.sub.3, and {circumflex over (.beta.)}.sub.4, where
.gamma.=cos(Lat) is computed from the estimated latitude of the map
to be georeferenced. Clearly, this is a special case of the more
general linear transform described above, where
.alpha..sub.11=.beta..sub.3.vertline..gamma.,.alpha..sub.12=-.beta..sub.4,-
.alpha..sub.21=-.beta..sub.4,
[0087] and
.alpha..sub.22=-.beta..sub.3,b.sub.1=.beta..sub.1.vertline..gamma.,
b.sub.2=.beta..sub.2.
[0088] In theory, if the region covered by the raster map of FIG. 2
to be georeferenced is not too large, then this family of functions
will contain a suitable function, {circumflex over (.function.)}
whose total error is quite small. In the case where the map to be
georeferenced covers a larger area than this, the curvature of the
earth must be taken into account and F is not a suitable family of
functions. In such a case, nonlinear functions must be used, as
noted earlier. In practice, the general linear. transform will
yield results which are somewhat superior to the rotational linear
transform due to the former's innate ability to use arbitrary
scaling factors. These arbitrary scaling factors might compensate,
for example, for scaling flaws in the digital scanner used to scan
in the non-georeferenced paper maps to produce maps like that of
FIG. 2. The primary advantage of the rotational linear transform is
that it can be computed with only two reference point-pairs, while
the general linear transform requires three reference
point-pairs.
[0089] To find {circumflex over (.function.)} there is sought, as
before, the parameters which minimize SSE as defined in equation
(4).
[0090] The parameter values which minimize this expression are
found by solving the following system of linear equations: 6 [ n 0
x i - y i 0 n - y i - x i i A x i - i A y i i A ( x i 2 + y i 2 ) 0
- i A y i - i A x i 0 i A ( x i 2 + y i 2 ) ] [ 1 2 3 4 ] = [ i A L
o n i i A L a t i i A x i L o n i - i A y i L a t i - i A y i L o n
i - i A x i L a t i ] ( 8 )
[0091] These systems can easily solved by well known methods, such
as Gaussian Elimination, or LU factorization. The solutions yield
the desire values of {circumflex over (.beta.)}.sub.1, {circumflex
over (.beta.)}.sub.1, {circumflex over (.beta.)}.sub.1, and
{circumflex over (.beta.)}.sub.1, which in turn yield the desired
values for {circumflex over (.alpha.)}.sub.11, {circumflex over
(.alpha.)}.sub.12, {circumflex over (.alpha.)}.sub.21, {circumflex
over (.alpha.)}.sub.22, {circumflex over (b)}.sub.1, and
{circumflex over (b)}.sub.2.
[0092] It should be noted that equation (8) does not have a unique
solution unless two or more points are contained in A. Generally
speaking, it requires two points to determine a georeferencing
function from the family of rotational linear transformations. When
there are three points or more, it is possible to compute a
standard deviation of error, s using the formula: 7 s = i A [ ( a ^
11 x i + a ^ 12 y i + b ^ 1 - L o n i ) 2 + ( a ^ 21 x i + a ^ 22 y
i + b ^ 2 - L a t i ) 2 ] n - 2 , ( 9 )
[0093] where s is an estimator for the amount of error to be
expected between actual and predicted latitude and longitude
values.
[0094] The inverse georeferencing function {circumflex over
(.function.)}.sup.-1 that maps from (Lon, Lat) to (x,y) is readily
obtained by inverting the function {circumflex over (.function.)}.
Having done this, it is possible to compute a similar standard
deviation of error for {circumflex over (.function.)}.sup.-1 which
is an estimate of error as measured in the bitmap coordinates.
Automatic Error Detection and Handling
[0095] When point-pairs are selected, the apparent values of x,y
and Lon,Lat which are selected by mouse "clicking" may include
error. To reduce the risk of incorrect georeferencing resulting
from such errors, certain error handling procedures are built into
the georeferencing process of the present invention. One technique
utilized by the present invention is to detect a "bad" point-pair
and then remove it from the set A of "active" point-pairs, that is,
those point-pairs presently involved in the calculation of a
georeferencing function. Removing a bad point-pair from A does not
delete the information associated with that point-pair. Rather,
removing the bad point-pair causes the extant calculation of the
georeferencing parameters to be uninfluenced by that point-pair.
The point-pair is not removed entirely, because it may be
determined at a later stage of the georeferencing, that the
point-pair was not really bad, and should be-used in the
georeferencing calculation. This will be clarified shortly.
[0096] The following steps outline the bad point detection process
using the general linear transform approach to georeferencing.
[0097] (1) Place all point-pairs so far selected into the active
set A. An "active" point-pair comprises a pair of points which are
presently being used in the extant georeferencing calculation.
[0098] (2) If there are four or less active point-pairs, error
correction cannot be performed and the georeferencing function
cannot be refined.
[0099] (3) If there are five or more active point-pairs,
temporarily exclude each of them in turn from the active set A,
designating a temporarily excluded point-pair as k With each point
k excluded in turn, the calculate the inverse georeferencing
function .sup.(k) using the non-k point pairs. Calculate SSE.sub.k
for .sup.(k).
[0100] (4) Calculate the difference between the predicted value and
the actual value
.delta..sub.k=.vertline..sup.(k)Lon.sub.k,Lat.sub.k)-(x.sub.-
k,y.sub.k).vertline..
[0101] (5) Save the values, .delta..sub.k and
.delta..sub.k/SSE.sub.k.
[0102] (6) Return point k to the active set (and move on to the
next value of k).
[0103] (7) From among the results found in steps (3)-(6) find the
point, k with the largest value of SSE.sub.k which also satisfies
SSE.sub.k k>c.sub.1 and .delta..sub.k>c.sub.2 where c.sub.1,
and c.sub.2 are constants which are set according to the general
level of accuracy to be expected on the particular type of map
which is being georeferenced, the current number of active
point-pairs, and the dots or pixels per inch of the raster image.
If such a value, k, is found then, the corresponding point is
designated as erroneous and is removed from the active set A, and
return to steps (2) and (3) above. If there is no such point, error
detection is completed.
[0104] The foregoing error detection may be, of course, carried out
on a general-purpose computer, preferably the same computer
included in the system for manipulating the various maps and for
calculating the georeferencing functions.
[0105] There are several things to note about the foregoing error
detection procedure. One is that allowing the value of c.sub.1 and
c.sub.2 to change with the number of active point-pairs, makes it
possible for the georeferencing system and method to utilize
point-pairs which might originally have been determined to be
erroneous or inconsistent, after a large enough sample of points
has been gathered to make it clear that a lesser level of accuracy
is all that can be achieved on this map. Use of the error detection
procedure of the present invention cannot reduce the number of
active point-pairs to less than four. This scheme means that as
each new point is added, all points determined so far are
considered, even those which had previously been marked bad. Thus
early "misjudgments" on the part of the system can be corrected
later, in light of new point information.
[0106] The same bad point detection process, can also be
implemented when the rotational linear transform is used. In this
case the method is capable of reducing the number of active
point-pairs to a minimum of three, rather than four for the general
linear transform approach outlined above. This can be useful when
dealing with small sets of active points.
[0107] When the system is georeferencing raster map images that
cover a large enough area so that the (nonlinear) curvature of the
earth is a source of significant error, the system can calculate
nonlinear georeferencing functions whose form corresponds to the
map projection that was used to create the map of FIG. 2.
[0108] Once both maps are georeferenced, coordinated manipulation
of the maps, simultaneously displayed, may be effected. Because of
the georeferencing any point of either map can be referenced using
the geographic coordinates. Accordingly the maps may be manipulated
in a synchronized manner by defining the manipulations in terms of
the geographic coordinate system and using the georeferencing
functions to translate the manipulation to each map's coordinate
system.
[0109] The preferred embodiment may be applied to any system which
simultaneously displays multiple map images, but is particularly
valuable for systems displaying a raster map image and a vector map
image.
[0110] Map image synchronization is a method whereby two map images
can be made to show the same geographic region at all times,
maintaining this synchronization even after one of the images is
panned, zoomed, scrolled, or otherwise caused to display a
different region. Whenever such a change occurs on one map, the
system causes the same change to occur on the other map as well. In
this way, the two images continue to display the same region,
without the need of manually adjusting both maps. In addition the
synchronization system allows annotations to be placed on either
map at specified geographic locations, and causes a matching
annotation to appear on the other map in the corresponding
location.
[0111] The two maps in question may be any combination of digital
raster and vector maps, as long as georeferencing information is
available for both maps. According to the preferred embodiment, one
map is a digital raster map, and the other map is a vector map,
both maps covering the same geographic area. Multiple
configurations of the map display are possible. These include:
[0112] 1. Both maps are displayed side by side, or one above the
other on the computer display.
[0113] 2. One map is superimposed directly on top of the other.
[0114] a. The background of the top map is transparent, so that the
user can see features of both the top map and the bottom map,
or
[0115] b. Both maps are opaque, but a user may toggle back and
forth rapidly between the two images
[0116] The process of the preferred embodiment, as shown in the
flowcharts of FIGS. 4 and 5, operates in the following way:
[0117] In FIG. 7, the data processing system first loads and
displays two maps, FIG. 2 and FIG. 6, according to a user selection
(step 400). For purposes of this example, assume that FIG. 2 is a
digital raster map, and FIG. 6 is a vector map showing
substantially the same region. It should be noted that the maps
displayed are not required to cover identical geographic regions,
as long as they share some geographic area in common. Both maps
have been previously georeferenced. In an alternate embodiment, the
system will allow the user to georeference one or both maps, if
required, according to the '849 application and the CIP based
thereon.
[0118] Next, an initial geographic region, which is present on both
maps, is selected on FIG. 2 and displayed by the system (step 405).
Since FIG. 2 has been georeferenced, the boundaries of the selected
region are determined, using FIG. 2's set of georeferencing
functions, in terms of longitude and latitude (step 410).
[0119] The system then converts these boundaries, using the
georeferencing function set of FIG. 6, between the
latitude/longitude boundaries of the display region and the
internal coordinate system of FIG. 6 (step 415). Next, the system
displays the same region of FIG. 6 (step 420), according to the
same geographic boundaries.
[0120] Thereafter, as the user interacts with the system by causing
one of the maps, FIG. 2 in this example, to display a different
geographic region or view (step 425), the system performs the
following steps. Note that this manipulation by the user can
include any change in the map view, including but not limited to
scrolling, zooming, rotating, or changing the view perspective of
the map, and that the user can be performing the manipulation on
either map.
[0121] The system first determines the boundaries of the newly
displayed region of FIG. 2 in the natural coordinate system of FIG.
2 (step 430). Next, the system uses the georeferencing function set
of FIG. 2 to convert the boundaries to be in terms of longitude and
latitude (step 435).
[0122] The system then uses the georeferencing functions of FIG. 6
to determine the boundaries of the new region in terms of the
natural coordinate system of FIG. 6 (step 440). The system then
performs the appropriate image scaling and manipulation functions,
known to those of skill in the art, to redraw FIG. 6 with the same
boundaries, and according to the same changes in scale and
perspective, as FIG. 2 (step 445). The user may then stop the
manipulation and view the maps, continue to manipulate the maps, or
annotate the map (step 450). Note that the steps above are
performed rapidly enough, in the preferred embodiment, that it
appears that the user is manipulating both maps in
synchronicity.
[0123] FIG. 8 shows a flowchart of a map annotation process in
accordance with the preferred embodiment. When the user places an
annotation on one of the maps (step 500), FIG. 2 in this example,
then the system performs the following steps. First, the system
determines the location of the new annotation of FIG. 2 in the
natural coordinate system of FIG. 2 (step 505). Next, the system
uses the georeferencing function set of FIG. 2 to convert the
annotation location to longitude and latitude (step 510). The
system then uses the georeferencing function set of FIG. 6 to
express the annotation location to be in terms of the internal
coordinate system of FIG. 6 (step 520). Finally, the system
displays the new annotation on FIG. 6, in the location
corresponding to the annotation on FIG. 2 (step 525). The user may
then stop his manipulation and view the maps, continue to
manipulate the maps, or annotate the map (step 530). Again, the
steps above are performed rapidly enough, in the preferred
embodiment, that it appears that the user is annotating both maps
in synchronicity.
[0124] Common changes, that might occur to change the region
displayed include the user panning, zooming, or scrolling one of
the images. Annotations may be used to designate points of
particular interest on the maps.
[0125] Certain minor adjustments are required in the display if a
region is selected which is not entirely present on one or more of
the maps, or if the aspect ratios of the screen display areas
devoted to each map are different. In the first case, the system
attempts a "best fit" when one map selection included area not
found in the other map, and simply displays blank additional area
to fill the missing region, so that the map windows be filled and
the synchronization of the images maintained. In the second case,
the other map can be scaled to reflect the same area, or
alternatively one or more of the map windows may be equipped with
scroll bars, so that the effective dimensions of the map windows
become identical.
[0126] A specific example, which illustrates the utility of map
synchronization, arises from the "Flood Zone Determination"
business, The Federal Emergency Management Agency (FEMA). FEMA
publishes a library of tens of thousands of paper maps showing
various types of flood zones and their locations in the United
States. When performing a flood zone certification, a map analyst
must locate a property on a flood map and determine the type of
flood zone that the property is contained in. Unfortunately, these
FEMA maps frequently display only a subset of geographic landmarks
(such as streets). This often forces a map analyst to refer to a
separate street map to find the property, and, once found, to
determine the corresponding location on the flood map. Map
synchronization greatly facilitates this process. For example, with
both the flood map and the street map displayed side by side, the
map analyst might [Do we want the font change below?]
[0127] 1. Locate the property on the street map, including
performing whatever map manipulations are necessary to show the
required area, having the flood map be manipulated by the system to
reflect that same area;
[0128] 2. Place an annotation on the street map at the location of
the property wherein the system places an identical annotation at
the corresponding point on the flood map; and
[0129] 3. Observe the location of the synchronously placed
annotation on the flood map, and make the required flood zone
determination.
[0130] In this way, the map synchronization system has reduced the
difficulty and time involved in making this determination by a
great margin.
[0131] It is important to note that while the present invention has
been described in the context of a fully functional data processing
system and/or network, those skilled in the art will appreciate
that the mechanism of the present invention is capable of being
distributed in the form of a computer usable medium of instructions
in a variety of forms, and that the present invention applies
equally regardless of the particular type of signal bearing medium
used to actually carry out the distribution. Examples of computer
usable mediums include: nonvolatile, hard-coded type mediums such
as read only memories (ROMs) or erasable, electrically programmable
read only memories (EEPROMs), recordable type mediums such as
floppy disks, hard disk drives and CD-ROMs, and transmission type
mediums such as digital and analog communication links.
[0132] While the invention has been particularly shown and
described with reference to a preferred embodiment, it will be
understood by those skilled in the art that various changes in form
and detail may be made therein without departing from the spirit
and scope of the invention.
* * * * *