1. In a computing system, a computer-implemented method of parallel processing an image represented by multiple nodes, by propagating multiple labels between one or more of the nodes of the image, wherein each one of the nodes is associated with a value and can be labeled with one or more of the labels, and wherein the computer-implemented method comprises: (a) obtaining a plurality of labeled nodes of the image, a Low-Value, and a High-Value, wherein at least one the labeled nodes is labeled with a first label different than a second label that labels at least another one of the labeled nodes; (b) determining if there is at least one unlabeled Next-Value node, wherein the at least one unlabeled Next-Value node is unlabeled and associated with a Next-Value that is a succeeding value of the Low-Value; (c) for each unlabeled Next-Value node, determining if there is at least one labeled neighboring node; (d) for each unlabeled Next-Value node, propagating one or more labels from its one or more labeled neighboring nodes when it is determined (c) that there is at least one labeled neighboring node; and (e) incrementally repeating (b), (c) and (d) for succeeding Next-Values until the High-Value is reached, wherein at least one of the determining (c) of whether there is at least one labeled neighboring node and the propagating (d) of one or more labels is performed in parallel for two or more of the unlabeled Next-Value nodes.