Posted on: 10 March 2015   By matthew.zimmerman
A multi-color, uniform gradient colormap for depth indications.
An orange-copper colormap for signal level indications.
Color channels of the jet colormap from
This image show the color channels of the jet colormap with mean brightness plotted in gray. Colors and luminosity fade in and out. (image credit: cresspahl)
the old colormap
A sonar image using the former jet colormap. Its dramatic but not as clear as it could be.
the new colormap
The same sonar image using the new colormap. Its less dramatic but more clear for navigation.
3D forward looking sonar with dual colormaps
An example of the combined colormaps. The long range shore line is seen as a series of in-water targets beyond the sonar's water depth capability.

With the launch of SonaSoft 3.0, we’ve decided to make a paradigm shift in how we display our sonar data. Previously, our software always used a colormap based on jet (a.k.a “rainbow”) for both depth and signal level color mapping. Not only did this prevent displaying depth and signal level information in a single display, the colormap itself was not optimal. We now use two separate colormaps for depth and signal level. A multi-color, uniform luminance gradient colormap is used to indicate depth while an orange-copper colormap is used to indicate signal level.

Switching from the Rainbow Colormap

Over the years, we’ve noticed that we can make some really dramatic images using the rainbow colormap. This is great for marketing purposes but its not always ideal for the end user. For example, in the dramatic image example the deep is set to 50 meters and shallow is set to 5 meters. However, most users don’t set deep to 50 meters because that is significantly deeper than they usually care about. Do users set their general echosounder alarm depth to 50 meters? Do they set their ECDIS shallow water alarm to 50 meters? Probably not. Most likely, their echosounder alarm depth is a few meters below their keel and the deep water contour is set to 5-10 meters below the keel. These values make sense for the shallow and deep settings on our sonar. However, with those settings, the image is far less dramatic.

It turns out that there are a lot of reasons not to use rainbow for the colormap with information such as water depth. That colormap can overemphasize areas that are not important and underemphasize the places that are most important. The primary reason for this is there are so many colors in the jet colormap that change with a non-linear luminance gradient. The new colormap has fewer colors and a linear luminance gradient. This makes it much easier to see areas of interest without creating false features.

Separating Signal Level From the Depth Colormap

We could have stopped with simply switching from the rainbow colormap to a new single uniform luminance gradient colormap for both depth and signal level. However, we wanted to make signal level more intuitive. Many side scan sonar displays use a colormap similar to afmhot since they can only display signal level and can’t display depth.

Since bottom mapping range is limited by water depth, and the depth of targets beyond that range cannot be accurately determined, coloring targets beyond the sonar’s water depth limit with the same color scale, or assuming all these targets are shallow could be confusing. Displaying signal level, however, can offer a clearer picture of what is known . By switching to a separate colormap, we can indicate depth (where possible to determine) and signal level (for all other targets) on the same display.

Working Together

When in Signal Level mode, all targets are colored based on their signal level. The user can adjust the “loud” and “quiet” limits with the color scale. When in Depth mode, targets within the sonar’s water depth limit will be displayed with the depth colormap. The user can adjust the “shallow” and “deep” limits with the color scale. At the same time, targets beyond the water depth limit [fn] As with any sonar which maps the sea floor, the depth information of all targets can only be determined within the sonar’s bottom mapping limit. Beyond the bottom mapping limit, the sonar can still detect targets on the seafloor, shore lines and objects in the water column. However, the system can not accurately measure the depth of these targets. FarSounder’s water depth performance is advertised as 8 times the depth of water below the sonar. However, many times we can map the seafloor much farther ahead as seen in our screenshot and video galleries.[/fn] will be displayed with signal level colormap using the limit settings as set in Signal Level only mode.