def test_pretty_color_palette_consistent(self): from jicbioimage.core.util.color import pretty_color_palette identifiers = range(1000) color_dict1 = pretty_color_palette(identifiers) color_dict2 = pretty_color_palette(identifiers) for i in identifiers: key = i self.assertEqual(color_dict1[key], color_dict2[key])
def test_pretty_color_palette_consistent(self): from jicbioimage.core.util.color import pretty_color_palette identifiers = range(1000) color_dict1 = pretty_color_palette(identifiers) color_dict2 = pretty_color_palette(identifiers) for i in identifiers: key = i self.assertEqual(color_dict1[key], color_dict2[key])
def test_pretty_color_palette_exclude_zero(self): from jicbioimage.core.util.color import pretty_color_palette color_key = pretty_color_palette([0, 1], keep_zero_black=True) self.assertEqual(len(color_key), 2) self.assertEqual(color_key[0], (0, 0, 0)) expected = (132, 27, 117) self.assertEqual(color_key[0], (0, 0, 0)) self.assertEqual(color_key[1], expected)
def test_pretty_color_palette_exclude_zero(self): from jicbioimage.core.util.color import pretty_color_palette color_key = pretty_color_palette([0, 1], keep_zero_black=True) self.assertEqual(len(color_key), 2) self.assertEqual(color_key[0], (0, 0, 0)) expected = (132, 27, 117) self.assertEqual(color_key[0], (0, 0, 0)) self.assertEqual(color_key[1], expected)
def test_pretty_color_palette(self): from jicbioimage.core.util.color import pretty_color_palette color_key = pretty_color_palette([0, 1], keep_zero_black=False) self.assertEqual(len(color_key), 2) expected0 = (228, 90, 135) expected1 = (132, 27, 117) self.assertEqual(color_key[0], expected0) self.assertEqual(color_key[1], expected1)
def test_pretty_color_palette(self): from jicbioimage.core.util.color import pretty_color_palette color_key = pretty_color_palette([0, 1], keep_zero_black=False) self.assertEqual(len(color_key), 2) expected0 = (228, 90, 135) expected1 = (132, 27, 117) self.assertEqual(color_key[0], expected0) self.assertEqual(color_key[1], expected1)
def pretty_color_array(array, keep_zero_black=True): """Return a RGB pretty color array. Assigning a pretty RGB color value to each unique element of the input array and return an array of shape (array.shape, 3). :param array: input numpy.array :param keep_zero_black: whether or not the background should be black :returns: numpy.array """ unique_identifiers = set(np.unique(array)) color_dict = pretty_color_palette(unique_identifiers, keep_zero_black) return color_array(array, color_dict)