X-Git-Url: http://git.tomasm.cz/imago.git/blobdiff_plain/3790db9ab7a4871faf0b445c8283c7f0b7b30a22..c436e85002e15315c6a2dca1e50b4cf88dfaacb6:/imago_pack/imago.py diff --git a/imago_pack/imago.py b/imago_pack/imago.py index 806ddcc..6238902 100755 --- a/imago_pack/imago.py +++ b/imago_pack/imago.py @@ -1,6 +1,9 @@ #!/usr/bin/env python -"""Go image recognition.""" +"""Go image recognition. + +This is the main UI module of Imago. +""" import sys import os @@ -43,6 +46,7 @@ def argument_parser(): return parser +# TODO factor this into smaller functions def main(): """Main function of the program.""" @@ -63,11 +67,24 @@ def main(): if image.size[0] > args.w: image = image.resize((args.w, int((float(args.w)/image.size[0]) * image.size[1])), Image.ANTIALIAS) - do_something = im_debug.show - if args.saving: + + if not show_all: + def nothing(a, b): + pass + do_something = nothing + elif args.saving: do_something = Imsave("saved/" + args.files[0][:-4] + "_" + str(image.size[0]) + "/").save + else: + do_something = im_debug.show + if verbose: + def logger(m): + print >> sys.stderr, m + else: + def logger(m): + pass + if args.manual_mode: try: lines = manual.find_lines(image) @@ -83,17 +100,17 @@ def main(): lines, l1, l2, bounds, hough = pickle.load(open(filename)) print >> sys.stderr, "using cached results" else: - lines, l1, l2, bounds, hough = linef.find_lines(image, show_all, do_something, verbose) + lines, l1, l2, bounds, hough = linef.find_lines(image, do_something, logger) 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() else: - lines, l1, l2, bounds, hough = linef.find_lines(image, show_all, do_something, verbose) + lines, l1, l2, bounds, hough = linef.find_lines(image, do_something, logger) grid, lines = gridf.find(lines, image.size, l1, l2, bounds, hough, - show_all, do_something) + show_all, do_something, logger) if show_all: im_g = image.copy() draw = ImageDraw.Draw(im_g)