corners.set(i,improved); change = true;
} else { contourCorners.set(cornerIndex, contourIndex); contourIndexPrevious = contourIndex;
/** * Identifies which regions are to be pruned based on their member counts. Then sets up * data structures for graph and converting segment ID to prune ID. * * @return true If elements need to be pruned and false if not. */ protected boolean setupPruneList(GrowQueue_I32 regionMemberCount) { segmentPruneFlag.resize(regionMemberCount.size); pruneGraph.reset(); segmentToPruneID.resize(regionMemberCount.size); for( int i = 0; i < regionMemberCount.size; i++ ) { if( regionMemberCount.get(i) < minimumSize ) { segmentToPruneID.set(i, pruneGraph.size()); Node n = pruneGraph.grow(); n.init(i); segmentPruneFlag.set(i, true); } else { segmentPruneFlag.set(i, false); } } return pruneGraph.size() != 0; }