94f90a023605601ddc9c93c665adccbdc640cfa2
[imago.git] / imago.py
1 #!/usr/bin/env python
2 """Usage: imago.py file"""
3
4 import Image
5 import im_debug
6 import sys
7 from filter import filter
8
9 class Usage(Exception):
10     def __init__(self, msg):
11         self.msg = msg
12
13 def main(argv=None):
14     """Main function of the program."""
15     try:
16         if argv is None:
17             try:
18                 argv = sys.argv[1]
19             except IndexError:
20                 raise Usage('no arguments given')
21     except Usage, err:
22         print >>sys.stderr, err.msg
23         print >>sys.stderr, "for help use --help"
24         return 2
25
26     #TODO exception on empty argument
27     #TODO exception on file error
28     image = Image.open(argv)
29     im_debug.show(image, "original image")
30
31     im_l = image.convert('L')
32     im_debug.show(im_l, "ITU-R 601-2 luma transform")
33
34     im_edges = filter(im_l)
35     im_debug.show(im_edges, "edge detection")
36
37 if __name__ == '__main__':
38     main() #sys.exit(main())
39