by Dale DePriest - All rights reserved.
For digital computer use there are basically two display formats used for maps. These are bitmap maps and vector maps. This article focuses on exactly how these imaging technologies differ and when you may want one versus the other. Each of these map forms can be augmented with a poi database as well.
A bitmap is not a map in the way we use the word in geodetics. It is an image of the pixels on a computer screen, or other digital display device. The image is formed out of individual pixels that when arrange in a rectangular form to indicate a recognizable image for us. We can view this image as a picture but, like the pictures we see in the newspaper, if you look really close you will see that the image is nothing more than a bunch of dots. Not only is the image viewed on the screen this way it is stored in the database this way as well. In the most primitive form a bitmap on the screen is an exact image of the bitmap in the file on the disk. One form of this type is simply called a bitmap or bmp file after it file extension. This displays rapidly on the screen but takes a huge amount of storage on the disk. Since a map usually consists of some lines on a large background area it would be really nice to compress the disk copy to save some space. One method, supported transparently to bmp by Microsoft is called rle. Another really popular method is called gif. The design of gif can provide excellent compression particularly for maps. Unfortunately the design of gif is patented and many companies won't pay the royalties so they use a different, possibly less efficient scheme. One such scheme is jpg. This format is excellent for pictures of people and scenery but less suited for maps, since it can be a lossy compression scheme that tends to blur lines just a bit. To overcome this limitation the png format has been developed. Another scheme is tif or tiff. Tiff is basically as inefficient in disk use as bmp files but there is a version of compressed tiff that helps the image size significantly. Of course, a compressed image must be uncompressed before we can view it so computer power is needed to avoid really slow viewing of compressed images. Another format you will hear about is drg, digital raster graphics. These are nothing more that tiff files with some calibration data and is used for USGS maps. There are other image formats as well but you are not as likely to see them used to store maps.
Bitmaps, also known as raster images, can certainly be used as maps. You can use a drawing of a map or you could even use an actual photograph as a map. You could even draw your own map from scratch using a bitmap editor. But note that it was you that interpreted the data as being like a map. To the computer it is treated like a picture. There may be roads indicated on the map, or buildings, or water, or any number of other things but the computer simply knows about the image color of individual pixels and nothing about how you are interpreting it. This is one of the big limitations in using bitmaps as maps.
The big advantage of raster image maps is that you can generally get maps from anywhere in the world if you are willing to scan them in yourself. You also have full control of the detail. You can even edit the map yourself with a bitmap editing program to add roads or annotation. The biggest negative is that this is really only a picture. There is no underlying intelligence available from these maps. While raster based programs may offer a zooming feature this is generally accomplished simply by replacing the current map with another map having more or less detail. Some programs zoom in by using pixel replication which gets pretty ugly after a few zooms since the pixels start looking like blocks. Zooming out leaves out or merges pixels together in some fashion. This can be successful but text will soon be unreadable and roads may disappear entirely. In addition maps can generally be scrolled to cover a larger area than would be available on the screen display. At some point you will hit the edge of the map and you will either have to switch to a different map or somehow stitch two maps together so that it seems like one to the viewer. Some programs will automatically switch maps as you move and will show the available map with the most detail.
Generally speaking the raster map programs often do not come with maps. Exceptions include Delorme that generates its maps on the fly for the palm from the pc database, the drg viewing program that accompanies the drg cdroms available from USGS, some specialized topo, marine and aviation chart programs, and gpss a program that features extensive worldwide bitmap maps. Most programs will have a sample map or two that may be useful for some people but you are expected to supply your own maps. This can be done by capturing images from the available mapping programs on a pc, by scanning in paper maps, or by downloading maps from the web. Any web based map generation program can supply the maps for these programs. Some programs such as oziexplorer can also read drg maps directly from a cdrom.
Once you have an image you may need to save it in a form that is recognized by the mapping program you intend to use. Usually photo and graphic editing programs can be used to view the image, crop it as required, and resave it in the image type you need. Luckily the image formats are pretty standard and this is typically an easy job. For computers like the palm that does not have a standard image format for maps you will need a custom program to convert your map to a form that is recognized by the program you intend to use. This image converter is usually supplied as part of the software.
However it is not enough just to have a picture you will also need
to calibrate it before it can be used with a gps. Because a flat map
must be projected from a curved earth there are distortions in the
image itself. In addition it may not be oriented exactly north/south
due to the projection used or perhaps to errors when you scanned it
in. The minimum calibration is to supply 2 points at opposite corners
of the image. The program then assumes that the map is oriented
correctly to north and is linear. That is to say: any pixel location
can be interpreted directly in terms of the grid system it was
calibrated with. In this way a gps position can be translated from
coordinates to pixel positions and indicated on the map. If the
program will accept 3 points then it can use the third point to
compensate for a map that isn't oriented exactly north/south.
Additional calibration points can permit a program to adjust for
non-linear maps that vary in a prescribed way over the surface. For
small maps 2 points is enough but for larger areas you may be
restricted to using a map that has a projection system that can be
supported with only 2 points. Drg maps come with calibration
information, for others you will have to figure it out for yourself.
You may have a grid drawn on the map that you can use or you may have
to place some calibration points on the paper map before you scan it.
You may even be able to use objects drawn on the map that have known
locations. However you get them, they need to be accurate. The maps
usefulness depends on the accuracy of this calibration.
With a vector map there is no image in the database. Instead an image is created on the fly by using information from a database. The database itself consists of coordinates defining points and information on how to connect those points together to form lines and other objects. In addition labels attached to the object can provide text to be displayed along with the object when an image is created. This sounds complicated but you are probably already dealing with a database created in exactly the same manner. Consider a route that you create in a gps. It consists of an ordered set of waypoints. Each waypoint is defined with a name and location and the order is used to draw a line connecting them all together. This is a vector representation of the route and when viewed on the map/plot screen of your gps it looks like and is a map of the route. It may seem like a crude map but this is because you are using only a few points to define the map. If you had a point for every little turn in the route then it would look pretty good. This is how the database of roads in a vector map works. Other objects like lakes work similarly except that they are a closed system where the lines come back and close the loop. Then the area inside the closed polygon is shaded or colored to indicate the object you are representing and a label may be designed to center itself within the object.
Since a gps receiver computes a location it is easy to integrate its location within the locations of other objects from the database. This is essentially how a vector mapping program works. It can use mathematics to compare gps locations with database locations and understand when a you gps has reached a town or other object. Since the image is created on the fly by computing a scaled picture from the database zooming is simply a matter of changing the scale and redrawing the picture. Panning is accomplished in a similar manner so that there is no artificial edge to the map. All of this computation can be very compute intensive so if the image gets very complicated it can really take a long time to draw the image. This results in a behavior that seems sluggish as you try and move the map or zoom out. To minimize the number of vectors that must be drawn, a computer database includes attributes assigned to the objects to determine when they should be drawn based on the scale chosen by the user. This can decrease clutter on the screen and improve drawing time. In addition the number of points used to describe an object can be reduced. This will decrease the size of the database, increase the drawing speed, but reduce the ability of the data to accurately reflect every curve and turn in the road. Some programs are able to describe vectors as curved objects which can be of great use in describing a tight curve accurately. The decision on how detailed to make the item can be varied on a per object basis. In some cases an object in the database is not described at all but is represented with an icon which has been predefined for this purpose.
Labels are often located in the database itself. These can be dynamically added to the vector data when it is displayed. Some programs use fixed locations for the label but others may be able to slide the data along the road so that it fits within the screen boundary. When the map is zoomed the label data typically does not change in size which makes it easier to read. As you zoom out the label may be removed from the display to reduce clutter.
Unlike the case of bitmap drawings there are no standard formats
for mapping databases that are used by the mapping vendors. Each one
has an internal form that in proprietary and thus one database is
designed to only work with one program. For this reason you will
generally only use the database that was supplied with the program you
bought. Some vendors change the format from year to year to you can
only use maps supplied with that version of the program. Some
programs can use multiple databases but usually only from the same
vendor. In a few cases you may find that the form of the database is
documented or just stored as easily interpreted text and you can alter
or create your own database entries. Unfortunately because of the
size and complications of the database, even when documented, most
users would find this to be a formidable task. Even within a vendor
the database format can change. For example the database format on
the pc may be different from the way the information is stored once it
is downloaded into the gps. The program performs a translation during
POI is an acronym for Points of Interest. These are specific locations on the map that are deemed to have significance for the user. This information may be added or referenced on either type of map or could even been supplied separately as a database when no map is used at all. If you show a lot of poi's on the screen the user can interpret this data as if it were a crude map.
POI data can represent anything and serve several purposes. For example a search database for a raster map might have the locations of the words in the raster map coded into the database. The user could search the database and the program would use the location found in the database to display that location on the map itself. Used in this fashion a raster map would seem to have intelligence for the user in that he/she should find objects shown on the map.
Often a POI data is used to display icons directly on the map for the user to see. These icons provide significant value add for some users of the map. They can be as simple as a dot or as complex and a full drawing of a building. They can display the top of a mountain, or other geographic feature locations. They can also display the location of man made objects. The location may also be adjusted in some cases to fall on a road. The database containing the poi data might also include reference data that is not displayed on the map. For example the user might click on a map poi to bring up a text display screen showing detailed data about that location. For a restaurant the information might include the type of restaurant and even a telephone number for reservations.
POI data can also have a text label. This label information could
be part of the icon but is usually separate. It can often be displayed
in several locations near the object to which it is attached or might
even be removed from the display entirely depending on the user
preferences or program needs.
At this point in time all gps receivers use vector databases because of their inherent flexibility and reduced size. Computers (desktop, laptop, and palm sized) have some vector programs and some bitmap programs. This provides the user with a choice, particularly in parts of the world where vector databases of mapping data do not exist or are not available. One should not conclude that vector maps are inherently better. Bitmap maps can certainly preserve both the accuracy and beauty that was in the original map makers craft. Programs like Topo! have shown that you can take bitmap maps along with a underlying database that provide name search and altitude data to present, to the user, the best of both worlds. Even with this effort there can be errors where the underlying database information does not match the display, a problem that generally does not occur with vector maps. Delorme has released a set of topographical maps that include both vector and bitmap maps.
Garmin, Magellan, and Lowrance have all released vector maps for their respective units. None of these are interchangeable and no other software can be used to upload map data to these units, except that you can modify the maps by adding vectors to the maps in the Lowrance units using third party programs. There is a program available from another third party that can be used to create maps for Garmin units. There are other, more expensive, systems that can support the uploading of your own vector maps as a supported feature by the manufacturer. For example, Trimble makes a professional model that can be used to generate maps in the first place and can load and display these maps. Unfortunately you must always supply your own source of maps with this unit.
Vector maps can provide a lot of detailed road data but can be hard to prune the map to serve as road maps. Generally they work well for large areas only if you can remove all of the street level detail from the database. Some units even have multiple databases which are switched based on the zoom level. Bitmap maps can provide coverage for large areas with a minimum of space but will start to take significant space if you expect to be able to vary the detail by zooming. Both map types have their purpose as witnessed by the Delorme mapping product, Solus Pro, that supports both types in the same program.