def run(self): argv = sys.argv[1:] (options, args) = self.parser.parse_args(argv) if args: # image filenames were provided as arguments for filename in args: try: palette = extract_colors( filename, min_saturation=options.min_saturation, min_prominence=options.min_prominence, min_distance=options.min_distance, max_colors=options.max_colors, n_quantized=options.n_quantized) except Exception, e: # TODO: it's too broad exception. print >> sys.stderr, filename, e continue print_colors(filename, palette) if options.save_palette: save_palette_as_image(filename, palette) sys.exit(1)
def color_stream_st(istream=sys.stdin, save_palette=False, **kwargs): """ Read filenames from the input stream and detect their palette. """ for line in istream: filename = line.strip() try: palette = extract_colors(filename, **kwargs) except Exception, e: print >> sys.stderr, filename, e continue print_colors(filename, palette) if save_palette: save_palette_as_image(filename, palette)
def run(self): argv = sys.argv[1:] (options, args) = self.parser.parse_args(argv) if args: # image filenames were provided as arguments for filename in args: try: palette = extract_colors( filename, min_saturation=options.min_saturation, min_prominence=options.min_prominence, min_distance=options.min_distance, max_colors=options.max_colors, n_quantized=options.n_quantized, ) except Exception as e: # TODO: it's too broad exception. print >>sys.stderr, filename, e continue print_colors(filename, palette) if options.save_palette: save_palette_as_image(filename, palette) sys.exit(1) if options.n_processes > 1: # XXX add all the knobs we can tune color_stream_mt(n=options.n_processes) else: color_stream_st( min_saturation=options.min_saturation, min_prominence=options.min_prominence, min_distance=options.min_distance, max_colors=options.max_colors, n_quantized=options.n_quantized, save_palette=options.save_palette, )