shortestPath,shortestPathList = | ridgeLine3dImg (inImg3d,inPropagationAxis,inPropagationDirection) |
shortestPath,shortestPathList = | ridgeLine3dImg (inImg3d,inOptMaskImg,inPropagationAxis,inPropagationDirection) |
Voxels3d = | ridgeLine3dImg (inImg3d,inPropagationAxis,inPropagationDirection,outShortestPathImg,outDistanceMap,outPathMap) |
shortestPath,shortestPathList = | ridgeLine3dImg (inImg3d,inPropagationAxis,inPropagationDirection,nbIter) |
shortestPath,shortestPathList = | ridgeLine3dImg (inImg3d,inOptMaskImg,inPropagationAxis,inPropagationDirection,nbIter) |
Voxels3d = | ridgeLine3dImg (inImg3d,inOptMaskImg,inPropagationAxis,inPropagationDirection,outShortestPathImg,outDistanceMap,outPathMap) |
Voxels3d = | ridgeLine3dImg (inImg3d,inPropagationAxis,inPropagationDirection,nbIter,outShortestPathImg,outDistanceMap,outPathMap) |
Voxels3d = | ridgeLine3dImg (inImg3d,inOptMaskImg,inPropagationAxis,inPropagationDirection,nbIter,outShortestPathImg,outDistanceMap,outPathMap) |
Computes the shortest path from one border to its opposite, given distance ponderation map.
The 3D ridge line algorithm allows to compute the shortest path to cross an image along the x, y, or z axis. It is also possible to specify the propagation direction. This direction can be direct (from left to right, from top to bottom or from the first to the last slice) or reverse (from right to left, from bottom to top or from the last to the first slice).
The distance between to reach a voxel one of its 26-neighbours is given by its intensity. More the intensity will be important, more the access to the voxel will be unfavourable. This means that the algorithms try to find a path through dark voxels.
The algorithm returns :
The calculation time can be drastically reduced by specifying a number of iterations. If this parameter is higher than 0, the algorithm will stop before converging to the final result. Although the result will be an approximation of the shortest path, it will stay close to the eact result.
Finally, it is possible to specify a propagation area by passing an additional mask as parameter.
The distance for each pixel of the shortest path is given by the intensity field of the Pixel2d data item. It is also possible to obtain the shortest path length for volume (c, t) thanks to the function computeShortestPathLength.
Please, see Ridge Line 2d for an illustration of shortest path in a 2d case.