MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply Today**New to MATLAB?**

Unlike in various applications, where the gradient of a two dimensional matrix is calculated in x and y direction, the gradient of a digital elevation model (DEM) is usually returned as the steepest gradient. The steepest gradient is the largest downward slope of a pixel to one of its eight neighbors.

In this problem, your task will be to return the linear index of the steepest neighbor for each pixel in a gridded DEM. Pixels that don't have downward neighbors should receive the index value zero.

An example should help. The DEM is

dem = [1 5 9; ... 4 5 6; ... 8 7 3];

The result should be

IX = [0 1 4; ... 1 1 9; ... 2 9 0];

The results may not be unique, but the test cases have been built so that this is not a problem. The spatial resolution of the dem is dx=1 and dy=1. Note that the diagonal distance is hypot(dx,dy).

10 correct solutions
6 incorrect solutions

Last solution submitted on Nov 27, 2014

3 Comments