Discover MakerZone

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

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

New to MATLAB?

Problem 852. Index of neighbor pixel with steepest gradient

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).

Problem Group

Solution Statistics

10 correct solutions 6 incorrect solutions
Last solution submitted on Nov 27, 2014

Problem Comments