For this month’s Geospatial Frequently Asked Question (G-FAQ), I continue the discussion started last month on bit depth and its impact on satellite imagery. In the first part of the series, I addressed the basics of the topic, including a discussion of binary versus base-10 numeric systems as well as the bit depth ordering options available for satellite imagery. In this second part, I focus on the operational side of bit depth by providing advice on how to work with 16-bit imagery in ArcGIS as well as an explanation of when to order 8-bit versus 16-bit satellite imagery.
As a quick reminder, in this two-part G-FAQ series on bit depth, I answer this set of core questions:
What exactly is bit depth and why is it important when ordering satellite imagery? Is 16-bit imagery harder to work with? When should I order 16-bit imagery versus 8-bit?
And as a quick note, last month, we addressed the ordering options for satellite imagery bit depth as either 8-bit or 16-bit, as such we will continue this G-FAQ with those naming conventions even though the raw data is really 11 or 12-bit.
One of the biggest differences you will notice right away when downloading and/or working with 16-bit satellite imagery is the file size. A 16-bit image file will be about twice the size of an 8-bit image. The next thing you may notice is that the 16-bit file is completely black (or perhaps a weird muted greenish-black) when you open it in many applications that do not automatically histogram stretch (also called color balance) raster files – including ArcGIS (pre-ArcGIS 10.1 at least) and Photoshop. A histogram stretch tells your computer what pixel values represent which color on your screen; and most true color screens only recognize values that are in 8-bit format. As such, a lookup table (LUT) needs to be created to tell your computer how to convert ‘raw’ 16-bit satellite imagery values to the 8-bit color (or pan – which is shades of grey, still a color technically speaking) values your screen uses. A histogram stretch then creates the LUT needed to view your 16-bit imagery properly, so let’s walk through this process in ArcGIS, a common geospatial tool most of us have access to and use regularly:
- Load your 16-bit imagery in ArcMap and let it create pyramids when asked to do so. Pyramids let you zoom in and out on your imagery quicker so they are nice to have.
- Right click on the 16-bit imagery layer name and follow this menu chain, Properties -> Symbology -> RGB Composite.
- Now you will want to build your histograms if they do not already exist. Do this by clicking on the Histograms… button. It may take a few moments to build your histograms; click on Cancel when they are built.
In this step, you will need to experiment with different stretch types that can be accessed in the pull-down menu under Stretch called, Type:. A percent clip is a common stretch applied to data though it can create an over-bright image – experiment with max-min clips from 0.1 to 1.5%. The standard deviations option is another common ArcMap stretch – experiment with ranges from n=1 to 4 – though this tends to look washed out. What you will often find is that there is no perfect ‘automated’ stretch in ArcMap and that a stretch that looks good in one location, might look awful somewhere else in the same imagery dataset. If you want complete control over the color balance process, you can check out the Histograms by pushing this button and altering the graphs for each the blue, green and red bands.
As a final word to the wise, ArcMap does not always get it right when it reads in the spectral bands as it can choose the wrong band order to create a red, green and blue image. This will be obvious once you start experimenting with Step 4 above in that trees and buildings might appear purple or water brown. If you see this, experiment with different band combinations that you can access at the top of this menu chain, Properties -> Symbology -> RGB Composite.
To wrap up this discussion of bit depth and ordering of satellite imagery, here are some general guidelines on when to order 16-bit imagery and when to order 8-bit.
When to Order 16-bit Satellite Imagery
- Spectral Analysis – the vast majority of users ordering 16-bit imagery do so as they plan to complete spectral analysis. Spectral analysis is a catch-all phrase that includes a multitude of applications and techniques which study the available pixel values in satellite imagery to draw conclusions about the ground cover. As spectral analysis depends on the pixel values present in each band of imagery, you want the maximum range of values possible for the most accurate results. 16-bit depth provides you with the maximum range of values possible with current satellite imaging technologies. Spectral analysis includes but it is not limited to: normalized difference vegetation index (NDVI) calculations; object-oriented, supervised and unsupervised classifications; atmospheric corrections; biomass determinations; fire risk scores; and neural network applications.
- Creating the Most Vivid Final Product – if your desire is to take raw imagery and create the most visually appealing final product (be it in color or panchromatic only), then starting with 16-bit depth and converting to 8-bit with a histogram stretch is the way to go. Admittedly, creating an image with a ‘nice histogram stretch’ takes a bit of practice, but once you get the hang of it, most experienced imagery users prefer to start with 16-bit imagery no matter what the application is.
- Maximum Clarity into Shadows and Haze – sometimes the features you are looking at may be covered by a shadow from a nearby tree, mountain or building; and in other cases, there could be haze in your imagery that prevents you from having a crisp, clear view of the ground below. In these cases, having the maximum range of pixel values possible is an advantage as you might have to use ‘creative’ histogram stretches that emphasize a narrow slice of a histogram to ‘see’ in shadows and haze. For example, if your feature of interest is in a very dark shadow, you can brighten the imagery as much as possible to gain detail in dark areas at the sacrifice of over-saturating (or over brightening) the lighter areas.
When to Order 8-bit Satellite Imagery
- Smaller File Sizes – in some cases, even if 16-bit imagery is preferred, there is a need for smaller file sizes (for example, when you are downloading the imagery in a remote location with poor internet service). As long as you get a product without a Dynamic Range Adjustment (DRA – see below for more details) applied, 8-bit imagery can still be used for spectral analysis and/or custom histogram stretches.
- Select Software Applications – in some limited cases, there are graphic design, surveying, GIS and CAD software programs that cannot open 16-bit images. You will need to check your specific software package to be sure what format it can accept, or you can check with your Apollo Mapping representative to see if we can help you figure this out.
- Ready-To-Use Imagery – for many users of satellite imagery, this data will ultimately serve as a backdrop for spatial reference in your mapping project. For these users, a ready-to-use imagery product makes the most sense so they can get value from their data the instant they download it. In these cases, most high and medium resolution products can be ordered with 8-bit depth and with a DRA applied so that the imagery is automatically color balanced. Imagery that is color balanced opens in ArcGIS (for example) with green grass, white sidewalks and brown soils. For imagery products that do not have an automatic DRA option, including WorldView-1 and RapidEye, your Apollo Mapping representative can order this data in 16-bit depth format, apply the correct histogram stretch and deliver to you as 8-bit ‘DRA On’ imagery.
As a final side note to this discussion, you may have noticed that this G-FAQ focused on bit depth and optical satellite imagery as opposed to bit depth in optical imagery products in general which would include data collected by aerial sensors. This was done purposely as most of the off-the-shelf aerial imagery products, such as DigitalGlobe’s 30-cm Precision Aerial Imagery is only provided in color balanced 8-bit depth format. In the cases where both 8-bit and 16-bit depth aerial products are available, many of the basic lessons and ordering tips presented in this G-FAQ series would apply.
Until our next edition of G-FAQ, happy GIS-ing!
Do you have an idea for a future G-FAQ? If so, let me know by email at firstname.lastname@example.org.
Find Out More About This Topic Here:
- Indiana University – Knowledge Base
- New York University – Lookup Tables and TrueColor Displays
- Penn State University – Chapter 8: Remotely Sensed Image Data
- Regional and Mesoscale Meteorology Branch – Effect of Bit Depth on GOES Images
Brock Adam McCarty