Example #1
0
def remove_merged_boundaries(ar):
    import morpho
    arp = morpho.pad(ar, [0,ar.max()+1])
    arpr = arp.ravel()
    zero_idxs = (arpr == 0).nonzero()[0]
    ns = arpr[morpho.get_neighbor_idxs(arp, zero_idxs)]
    ns_compl = ns.copy()
    ns_compl[ns==0] = ns.max()+1
    merged_boundaries = (ns.max(axis=1) == ns_compl.min(axis=1)).nonzero()[0]
    arpr[zero_idxs[merged_boundaries]] = ns.max(axis=1)[merged_boundaries]
    return morpho.juicy_center(arp, 2)
Example #2
0
 def get_neighbor_idxs_lean(self, idxs, connectivity=1):
     return morpho.get_neighbor_idxs(self.watershed, idxs, connectivity)
Example #3
0
 def get_neighbor_idxs_lean(self, idxs, connectivity=1):
     return morpho.get_neighbor_idxs(self.watershed, idxs, connectivity)