code: def relabel_groups_unique(group_idx):
      
  
      keep_group = np.zeros(np.max(group_idx) + 1, dtype=bool)
      keep_group[0] = True
      keep_group[group_idx] = True
      return relabel_groups_masked(group_idx, keep_group)
docs: See also ``relabel_groups_masked``.
      
      keep_group:  [0 3 3 3 0 2 5 2 0 1 1 0 3 5 5]
      ret:         [0 3 3 3 0 2 4 2 0 1 1 0 3 4 4]
      
      Description of above: unique groups in input was ``1,2,3,5``, i.e.
      ``4`` was missing, so group 5 was relabled to be ``4``.
      Relabeling maintains order, just "compressing" the higher numbers
      to fill gaps.