X-Git-Url: http://git.tomasm.cz/imago.git/blobdiff_plain/52923c557013abe1b5945988b3c7713ad1a904bd..3c7eb1408a615d8bdc5e85c04f90c45d620d1e48:/imago.py diff --git a/imago.py b/imago.py index 1d364a5..0fee41f 100755 --- a/imago.py +++ b/imago.py @@ -1,22 +1,47 @@ #!/usr/bin/env python """Usage: imago.py file""" +import sys import Image import im_debug -import sys +import filter +import hough -def main(argv=None): +class UsageError(Exception): + def __init__(self, msg): + self.msg = msg + +def main(*argv): """Main function of the program.""" - if argv is None: - argv = sys.argv[1] + try: + if argv is (): + argv = sys.argv[1:] + if argv == []: + raise UsageError('Missing filename') + if "--help" in argv: + print __doc__ + return 0 + except UsageError, err: + print >>sys.stderr, err.msg, "(\"imago.py --help\" for help)" + return 2 - #TODO exception on empty argument #TODO exception on file error - image = Image.open(argv) - im_debug.show(image, "Original image") + image = Image.open(argv[0]) + #im_debug.show(image, "original image") im_l = image.convert('L') - im_debug.show(im_l, "ITU-R 601-2 luma transform") + #im_debug.show(im_l, "ITU-R 601-2 luma transform") + + im_edges = filter.edge_detection(im_l) + #im_debug.show(im_edges, "edge detection") + + im_h = filter.high_pass(im_edges, 80) + #im_debug.show(im_h, "high pass filter") + + im_hough = hough.transform(im_h) + im_debug.show(im_hough, "hough transform") + + return 0 if __name__ == '__main__': - main() + sys.exit(main())