def color_separator(im): if im.getpalette(): im = im.convert('RGB') colors = im.getcolors() width, height = im.size colors_dict = dict((val[1],Image.new('RGB', (width, height), (0,0,0))) for val in colors) pix = im.load() for i in xrange(width): for j in xrange(height): colors_dict[pix[i,j]].putpixel((i,j), pix[i,j]) return colors_dict
def showVerticalProjection(graph): # Display the vertical projection w = len(graph) h = max(graph) img = Image.new('1', (w, h)) for x in range(w): for y in range(h): if y <= graph[x]: img.putpixel((x, y), 255) else: break img = img.transpose(Image.FLIP_TOP_BOTTOM) img.show()