# Understanding curvature rasters

By Aileen Buckley, Mapping Center Lead

We got this question the other day on Ask a Cartographer: “I am currently analyzing a potential site with a LIDAR derived DEM. I have the products of the curvature tool. I have tried to examine the relevant web-based help but I am still unclear as how to properly portray this data. Can you direct me to any examples or explain a methodology of how to display the data in a curvature raster in a manner that identifies useful information to the general public?”

To answer this question, I’ve written two blog entries: this first one explains what the various curvature surfaces are, and the second explains how you can use them to enhance the representation of terrain surfaces in ArcMap.

It’s easy to understand how the concept of curvature (and therefore the use of these rasters) can be confusing, especially when you consider its definition: “Curvature is the second derivative of a surface, or the slope of the slope.” (Map Use: Reading, Analysis, Interpretation, Seventh Edition, p. 360.) It’s worthwhile to better understand curvature because you will likely find that it’s helpful in displaying the form of the surface by combining curvature rasters with hillshade rasters.

The advantage of doing this was summarized by Dr. Patrick Kennelly in his article, “Hill-shading Techniques to Enhance Terrain Maps“. As he notes, this technique “…captures local variations in curvature and displays these with hillshading. This is most useful for identifying areas of rapid change in slope or aspect. Geologic examples of such variations would be sedimentary strata of variable erosion rate and surface drainages, respectively. These edges are highlighted as more continuous and discernible features, allowing improved visualization of such geologic features.”

The Curvature tool in either the Spatial Analyst or 3D Analyst toolbox can be used to create three different curvature rasters – an output curvature raster, an optional profile curve raster, and an optional plan curve raster.

Let’s explore the differences between the three output raster surfaces through illustrations and excerpts from Map Use: Reading, Analysis, Interpretation, Seventh Edition. The maps shown below were compiled to illustrate the use of these types of rasters in mapping.

We’ll start with the two optional curve rasters and end with the curvature raster.

From Map Use: Reading, Analysis, Interpretation, Seventh Edition (p. 360):

Profile Curvature: Profile curvature is parallel to the direction of the maximum slope. A negative value (figure 16.20A) indicates that the surface is upwardly convex at that cell. A positive profile (figure 16.20B) indicates that the surface is upwardly concave at that cell. A value of zero indicates that the surface is linear (figure 16.20C.) Profile curvature affects the acceleration or deceleration of flow across the surface. Note that this is the same as the linear, convex, and concave slopes shown in figure 16.22.

Figure 16.20 Profile curvature is parallel to the slope and indicates the direction of maximum slope. It affects the acceleration and deceleration of flow across the surface.

To illustrate, here is the optional output profile curvature raster from the Curvature tool symbolized using a simple black to white color ramp (figure 1). Notice on the map that this raster emphasizes any terracing in the surface.

Figure 1. The output profile curvature raster from the Curvature tool

From Map Use: Reading, Analysis, Interpretation, Seventh Edition (p. 360):

Planform Curvature: Planform curvature (commonly called plan curvature) is perpendicular to the direction of the maximum slope. A positive value (figure 16.21A) indicates the surface is sidewardly convex at that cell. A negative plan (figure 16.21B) indicates the surface is sidewardly concave at that cell. A value of zero indicates the surface is linear (figure 16.21C.) Profile curvature relates to the convergence and divergence of flow across a surface.

Figure 16.21 Plan curvature is perpendicular to the slope and affects the convergence and divergence of flow across the surface.

To illustrate, here is the optional output plan curvature raster from the Curvature tool symbolized using a simple black to white color ramp (figure 2). Notice on the map that this raster emphasizes the ridges and valleys on the surface.

Figure 2. The output plan curvature raster from the Curvature tool

From Map Use: Reading, Analysis, Interpretation, Seventh Edition (p. 360):

Combinations of Curvature: Understanding the combinations of plan and profile curvature is important (figure 16.22.) The slope affects the overall rate of movement downslope. Aspect defines the direction of flow. The profile curvature affects the acceleration and deceleration of flow and, therefore, influences erosion and deposition. The plan curvature influences convergence and divergence of flow. Considering both plan and profile curvature together allows us to understand more accurately the flow across a surface.

Figure 16.22 Combinations of profile and plan curvatures helps us understand flow across a surface.

To illustrate, here is the output curvature raster from the Curvature tool symbolized using a simple black to white color ramp (figure 3). Notice on the map that this surface emphasizes both the ridges and valleys and the terraces in the surface, but both are slightly compromised in the interest of showing them together.

Figure 3. The output curvature raster from the Curvature tool combines both the profile and plan curcatures

Figure 4 from the ArcGIS online help illustrates how all surrounding pixels are used to calculate the curvature of each cell in the raster.

Figure 4. The relationships between the coefficients and the nine values of elevation for every cell numbered

Now that you know what the curvature rasters represent, and how easy they are to create, look for my blog entry tomorrow on how they can be used to enhance the symbolization of surfaces in ArcMap.

This entry was posted in Imagery, Mapping, Migrate and tagged , , . Bookmark the permalink.

1. GavinMartin says:

Nice post!
“Sales territory mapping” liked your valuable post. You really increased my area of knowledge. Thanks for great post.
http://www.indicia-geomarketing.com

2. ajs5325 says:

I had some difficulty with creating the curvature rasters and I think I have a theory from other posts I have read. I would like some insight into this if possible:

I projected my 10m raster to UTM Zone 17N and brought it into a project with a projection in Decimal Degrees. When I ran the curvature tool, my curvature raster had a scale of “-1.#INF to 1.#INF” and displayed all black (low values). The Plan and Profile Curvatures both had a scale of “+/-3.420282e+038″ and similarly displayed as all black (low values).

I then brought the DEM into a new map document that took the UTM projection. When I ran the tools, I got results that looked appropriate and had reasonable scale values.

I read that the cell values and projections had to be in identical units to prevent the error I encountered. Why would this be occurring?

3. abuckley says:

Glad to know that Sales territory mapping liked the post — I hope it helped!

4. abuckley says:

Dear ajs5325:

First you need to understand that the GP tools like Curvature use the units of the data or the units that you set when you use the environment settings. They do not use the units of the data frame if you have that in some projection other than the data. You correctly projected your data into a coordinate system that uses meters rather than decimal decrees for linear units (it would also be OK to use feet or something else, but not degrees!) But you may have used an environment setting that overwrote the data units – maybe the units of the data frame? In this case, you will get bad results.

That is why the data that you added and ran the results on the second time worked.

Just check your environment settings to make sure that they are the same as the data and you should be OK.

And always project your data out of geographic coordinates before you use the Spatial Analyst and other tools. Otherwise you have to deal with Z factors, and this is less than optimal.

5. mortorph says:

I am unclear about the labeling of the profile and plan curvature output raster layers. The definitions of the profile and plan curvatures in the Desktop Help files seem to conflict with the definition of profile and plan curvatures in other literature. Instead, the definition in the Desktop Help files correspond to the maximum and minimum curvature definitions. Can someone clarify this for me?

6. rohith says:

Dear abcukley,

I’m working with a 3m DEM in Central Iowa with Z units in centimeters. When I generated a Plan curvature, the values I got were ranging from 26 to -29. I was wondering if values make any sense because the region I’m working is mostly flat with less than 2% slopes except stream corridors. Have I made any mistake with the units or if the values are actually right?

Also what does the values represent say like -3 versus -10 in plan curvature raster? Thanks for the post, it really helped me understand the curvature operation.

• grouse says:

I think when you generate your curvature surface you need to account for the fact that your z units are different than your x,y units.

For example when you have x,y units in meters and z units in feet you need to set the z factor to 0.3048 to convert units from feet to meters ( this as per the z factor tip in the curvature tool).

In your case you need to set your z factor to 0.01 because there are 100 centimeters in 1 meter, so to convert centimeters to meters you multiply centimeter by 0.01. Say you had 115 centimeters , multiplying 115 x 0.01 would equal 1.15 meters.
So where normally there would be a 1 set for z factor if all x,y,z units were in meters, type 0.01 into z factor and your resulting values will be correct.

7. ethoms says:

Is it possible to calculate a curvature raster by adding a function into a function chain on a mosaic dataset?

8. abuckley says:

There is no such out of the box function available; however, you can develop your own – here is the link to the online help documentation that relates to this: http://resources.arcgis.com/en/help/arcobjects-net/conceptualhelp/index.html#//00010000084m000000. Hope this helps!

• ethoms says:

Interesting. Thank you!

9. santoshrj says:

I calculated Curvature with my high resolution DEM (1m). My study area (more than 10,000 ha) is almost flat (about 100 m elevation difference). The curvature value I got using ArcMap Curvature function is very high ( +1000). What should be the value range of Curvature (is there a standard value that curvature should have ?) If the values I got is incorrect, how should I correct it?

10. mdymdymdy says:

Have you got an easy example how to make lineament with arcgis curvature tool?

Greatly appreciated¨
Tks

• abuckley says:

Not really, no. Sorry!

11. djordjes says:

Dear Dr. Buckley,
Thank you for writing the article, and for providing the illustrations! It helped me a lot!!
This is probably the best ArcGIS text on raster curvature.

I have just one question though: is the curvature analysis in ArcGIS is Gaussian:

or Mean curvature analysis:
?

Which one of these two?

Thank you for the clarification.

• abuckley says:

According to the programmer, ArcGIS implements mean curvature.

• djordjes says:

Thank you Dr. Buckley.

12. cstuurman says:

What are the units of this output by default? Is it in degrees/(whatever your input linear unit is)?

• abuckley says:

As noted in the ArcGIS Online documentation (http://desktop.arcgis.com/en/arcmap/latest/tools/3d-analyst-toolbox/curvature.htm):

Units of the curvature output raster, as well as the units for the optional output profile curve raster and output plan curve raster, are one hundredth (1/100) of a z-unit. The reasonably expected values of all three output rasters for a hilly area (moderate relief) can vary from -0.5 to 0.5; while for steep, rugged mountains (extreme relief), the values can vary between -4 and 4. Note that it is possible to exceed this range for certain raster surfaces.

• grouse says:

Hi Aileen,
I’m trying to understand the ArcGIS documentation about 1/100th of a z unit. Maybe one thing that is confusing the issue for me is that if one averages the values in a small head water drainage for profile curvature you tend to get a number close to zero because you have positive values and negative values and they cancel each other out. In one case I have values that range from -3.3 to positive 2.3 with a mean of -0.4. My z units are meters, so my lowest value of -3.3 according to the documentation is actually -3.3/100 meters = – 0.033 meters or -3.3 * 1/100 m. Is that correct?

I have also seen curvature explained as radians/ linear unit see pdf documentation for DEM Surface tools for ArcGIS page 78 found at http://www.jennessent.com/downloads/DEM%20Surface%20Tools%20for%20ArcGIS.pdf

I’m also trying to compare my analysis of a specific area using a 10 meter DEM with someone else who using a 10 meter DEM in the same area is getting a larger mean of -4.4. This person is expressing mean profile curvature as per kilometer so -4.4/km. This does not make sense to me.

All I’m trying to do is understand what the curvature units mean and how they should be reported if I am using 3D Analyst. I am assuming curvature would be calculated the same whether I used 3D or Spatial Analyst extension.

Any further explanation would be appreciated.

Glen Rouse

• grouse says:

It is actually page 67 not page 70 in Jenness.

13. Udita Mukherjee says:

I am trying to calculate the curvature value of the continental shelf-edge with a DEM with Z units as m. The area is in the range of 1000s sq km. But I am getting really large numbers in the range of e+6. How can I rectify this?

14. raphaelcrespop says:

I am trying to make a PLAN curvature on

15. raphaelcrespop says:

I am trying to make a PLAN curvature on QGIS using SAGA (SLOPE, ASPECT and CURVATURE), but the results that i got using arcgis are so different, on arcgis the range is between -16 and 21, and on SAGA they range between -.06 and 0.06. Showing basicly the same map . Does anyone here knows why?