Efficient complete and incomplete path openings and closings
Path openings and closings are algebraic morphological operators using families of thin and oriented structuring elements that are not necessarily perfectly straight. These operators can typically be used in filtering applications in lieu of operators based on the more standard families of straight line structuring elements. They yield results which are less constrained than filters based on straight line segments, yet more constrained than connected area or other attribute-based operators. Furthermore, path operators can be parametrised to behave more like either extreme. Natural implementations of this idea using actual suprema or infima of morphological operators with paths as structuring elements would imply exponential complexity. Fortunately, a linear complexity algorithm exists in the literature. This algorithm has similar running times as the best known implementation of morphological operators using straight lines as structuring elements. However, even this implementation is sometimes not fast enough, leading practitioners to favour some attribute-based operators instead, which in some applications is not the best solution. In this paper, we propose an implementation of path-based morphological operators that is shown experimentally to exhibit a logarithmic complexity and comparable computing times with those of attribute-based operators. This implementation has the added benefit of allowing the computation of the related opening transform at no extra computational cost. In order to give additional flexibility and noise-robustness to these operators, we also investigate the case when some pixels are left ignored from the path (i.e. jumps are allowed) and form incomplete paths.
algebraic morphological operators complexity attributes