X-Git-Url: http://git.tomasm.cz/imago.git/blobdiff_plain/5c59d0214abee9c50a57ea258c83bf7c05e93a87..702d0af1ff46776307fd8792e39bdd7c9f8273a9:/capture.py?ds=sidebyside diff --git a/capture.py b/capture.py index 98ad7be..bbc3c1e 100755 --- a/capture.py +++ b/capture.py @@ -1,7 +1,8 @@ #!/usr/bin/env python -"""Go image capture.""" +"""Go image capture""" +import os import sys import argparse @@ -12,9 +13,9 @@ import Image from camera import Camera class Screen: - def __init__(self): + def __init__(self, res): pygame.init() - pygame.display.set_mode((640,480)) + pygame.display.set_mode(res) pygame.display.set_caption("Go image capture") self._screen = pygame.display.get_surface() @@ -26,25 +27,24 @@ class Screen: def main(): parser = argparse.ArgumentParser(description=__doc__) - #parser.add_argument('file', metavar='file', nargs=1, - # help="image to analyse") - #parser.add_argument('-w', type=int, default=640, - # help="scale image to the specified width before analysis") - parser.add_argument('-d', '--device', type=int, default=0, - help="number of video device to use") - #parser.add_argument('-s', '--save', dest='do_something', action='store_const', - # const=image_save, default=im_debug.show, - # help="save images instead of displaying them") + parser.add_argument('-d', type=int, default=0, + help="video device id") + parser.add_argument('-r', type=int, nargs=2, default=[640, 480], + help="set camera resolution") args = parser.parse_args() - cam = Camera(device=args.device) - screen = Screen() + res=(args.r[0], args.r[1]) - im = cam.get_image() - screen.display_picture(im) + cam = Camera(vid=args.d, res=res) + screen = Screen(res) im_number = 0 + saving_dir = "./captured/" + + if not os.path.isdir(saving_dir): + os.makedirs(saving_dir) + while True: event = pygame.event.wait() if event.type == QUIT: @@ -52,8 +52,10 @@ def main(): elif event.type == KEYDOWN: im = cam.get_image() screen.display_picture(im) - im.save("./captured/{0:0>3}.jpg".format(im_number), 'JPEG') + im.save(saving_dir + "{0:0>3}.jpg".format(im_number), 'JPEG') im_number += 1 + + del cam if __name__ == '__main__': try: