public static void prunning(ComponentTree tree, NodeCT node) { if (node != tree.root) { NodeCT parent = node.parent; parent.children.remove(node); tree.listLeaves = null; for (NodeCT no : node.getNodesDescendants()) { tree.listNode.remove(no); tree.numNode--; for (int p : no.getCanonicalPixels()) { parent.addPixel(p); tree.map[p] = parent; } } } else { tree.numNode = 1; tree.listNode.clear(); tree.listNode.add(node); node.children = new ArrayList<NodeCT>(); for (int p = 0; p < tree.getInputImage().getSize(); p++) { tree.map[p] = node; node.addPixel(p); } } }
public void prunning(NodeCT node) { if (node != root && map[node.getCanonicalPixel()] == node) { NodeCT parent = node.parent; parent.children.remove(node); listLeaves = null; for (NodeCT no : node.getNodesDescendants()) { listNode.remove(no); numNode--; for (int p : no.getCanonicalPixels()) { parent.addPixel(p); map[p] = parent; } } } }