Calculating an area in raster

Question: I have a tile from Landsat imagery. I displayed in Envi bands of my interest and received a RGB raster. I uploaded my raster image to ArcMap and now I am looking for the way to calculate an area displayed in a particular color: in my case in blue. I tried reclassifying, but this did not solve my problem. Could you, please suggest any solution?

Answer: Without classifying the image, you can do this by selecting cells from a single band. In ArcMap, click the Add Data button, navigate to the location of the RGB raster, and then double click the name of the raster to see the individual bands. Note that although you want to select the cells that have a blue color in the composite RGB raster, you might find that the red or green bands actually display the area in blue with a more uniform gray tone. So try adding all three individual bands and seeing which one shows the blue area in a more uniform gray tone.

On the raster that has the most uniform gray tone for the blue area, use the Identify tool on the Tools toolbar to see what the pixel values of the area that is blue in the composite image are. Once you have the pixel value or range of values, use the Con tool to perform a conditional evaluation on the one raster band.

  • The input conditional raster will be: the one raster band
  • The expression will be something like: Value > 20 AND Value < 40 (use the SQL Query Builder to make sure your syntax is correct; the values you use will of course be different)
  • The constant value will be something like: 1
  • If you do not fill in the Input false raster or constant value, then all the other cells will be NoData
  • The output raster will be: whatever you want to name it
  • Once the tool runs, you should have a raster that contains only those cells that fit the criteria of your expression.

An easy way to find the area is to right click the output raster that you just created, click Properties, click the Symbology tab, and note the Count for the pixels that are displayed. Click the Source tab and note the cell size and linear units. Now just multiply the cellsize by the count to get the area in square units of whatever the linear units were. This solution will work if you are able to isolate the cell value or values for the blue area only. If the cell values in the blue area are also found in other areas, you will know when you look at the output raster from the conditional statement.

If this is the case, you will have to take a bit more time and expend a bit more effort to actually classify the RGB raster. This Help Topic will get you started. Multivariate classification will probably be your starting point.

Note that in ArcGIS 10 we have added an Image Classification toolbar which “provides a user-friendly environment for creating training samples and signature files for supervised classification. It also serves as a central location for performing both supervised classification and unsupervised classification using ArcGIS Spatial Analyst”.

Attachment: Landsat_bands753

Formerly a Mapping Center Ask a Cartographer  Q & A.

This entry was posted in Mapping. Bookmark the permalink.

Leave a Reply