docs: def spur(image, mask=None, iterations=1):
      '''Remove spur pixels from an image
      
      0 0 0    0 0 0
      0 1 0 -> 0 0 0
      0 0 1    0 0 ?
      '''
      global spur_table_1,spur_table_2
      if mask is None:
          masked_image = image
      else:
          masked_image = image.astype(bool).copy()
          masked_image[~mask] = False
      index_i, index_j, masked_image = prepare_for_index_lookup(masked_image, 
                                                                False)
      if iterations is None:
          iterations = len(index_i)
      for i in range(iterations):
          for table in (spur_table_1, spur_table_2):
              index_i, index_j = index_lookup(index_i, index_j, 
                                              masked_image, table, 1)
      masked_image = extract_from_image_lookup(image, index_i, index_j)
      if not mask is None:
          masked_image[~mask] = image[~mask]
      return masked_image