[1] In 1959 Dijkstra used a balanced heap data structure[1][2] to improve upon an algorithm presented by Moore in 1957[1][3] and Bellman in 1958[1][4] that computed the cost of the paths in a general graph.
[1] The transform is a tweaked version of Dijkstra’s shortest-path algorithm that is optimized for using more than one input and the maximization of digital image processing operators.
[1][2] The transform makes a graph of the pixels in an image and the connections between these points are the "cost" of the path portrayed.
The cost is calculated by inspecting the characteristics, for example, grey scale, color, gradient among many others, of the path between pixels.
The robustness of the transform does come at a cost and uses a lot of storage space for the code and the data being processed.