X-Git-Url: http://git.tomasm.cz/imago.git/blobdiff_plain/116fdaa2331775ba5bd766ac3b885987d772eaee..c13a5fb97c22ae952b4a99e75735f9c96efcf438:/imago.py diff --git a/imago.py b/imago.py index d648580..136574a 100755 --- a/imago.py +++ b/imago.py @@ -70,14 +70,15 @@ def main(): if args.l_cache: filename = ("saved/cache/" + args.files[0][:-4] + "_" + str(image.size[0])) + cache_dir = "/".join(filename.split('/')[:-1]) if os.path.exists(filename): lines, l1, l2, bounds, hough = pickle.load(open(filename)) print >> sys.stderr, "using cached results" im_h = None else: lines, l1, l2, bounds, hough, im_h = linef.find_lines(image, show_all, do_something, verbose) - if not os.path.isdir("saved/cache"): - os.makedirs("saved/cache") + if not os.path.isdir(cache_dir): + os.makedirs(cache_dir) d_file = open(filename, 'wb') pickle.dump((lines, l1, l2, bounds, hough), d_file) d_file.close() @@ -91,9 +92,20 @@ def main(): draw = ImageDraw.Draw(im_g) for l in grid[0] + grid[1]: draw.line(l, fill=(64, 255, 64), width=1) - do_something(im_g) + do_something(im_g, "grid", name="grid") - board = intrsc.board(image, lines, show_all, do_something) + board, board_raw = intrsc.board(image, lines, show_all, do_something) + + ### Show color distribution + #import matplotlib.pyplot as pyplot + #luma = [(0.30 * s[0] + 0.59 * s[1] + 0.11 * s[2]) / 255. + # for s in sum(board_raw, [])] + #pyplot.scatter(luma, + # [(max(s) - min(s)) / (255 - abs(max(s) + min(s) - 255)) + # for s in sum(board_raw, [])], + # color=[(s[0]/255., s[1]/255., s[2]/255., 1.) for s in sum(board_raw, [])]) + #pyplot.show() + ### #simple ASCII output: for line in board: @@ -119,12 +131,15 @@ class Imsave(): self.saving_dir = saving_dir self.saving_num = 0 - def save(self, image, title=''): - filename = self.saving_dir + "{0:0>2}".format(self.saving_num) + '.jpg' + def save(self, image, title='', name=None): + if name: + filename = self.saving_dir + name + '.jpg' + else: + filename = self.saving_dir + "{0:0>2}".format(self.saving_num) + '.jpg' + self.saving_num += 1 if not os.path.isdir(self.saving_dir): os.makedirs(self.saving_dir) image.save(filename, 'JPEG') - self.saving_num += 1 if __name__ == '__main__': try: