import sys import cv2 as cv def main(argv): print(""" Zoom In-Out demo ------------------ * [i] -> Zoom [i]n * [o] -> Zoom [o]ut * [ESC] -> Close program """) ## [load] filename = argv[0] if len(argv) > 0 else 'chicky_512.png' # Load the image src = cv.imread(cv.samples.findFile(filename)) # Check if image is loaded fine if src is None: print ('Error opening image!') print ('Usage: pyramids.py [image_name -- default ../data/chicky_512.png] \n') return -1 ## [load] ## [loop] while 1: rows, cols, _channels = map(int, src.shape) ## [show_image] cv.imshow('Pyramids Demo', src) ## [show_image] k = cv.waitKey(0) if k == 27: break ## [pyrup] elif chr(k) == 'i': src = cv.pyrUp(src, dstsize=(2 * cols, 2 * rows)) print ('** Zoom In: Image x 2') ## [pyrup] ## [pyrdown] elif chr(k) == 'o': src = cv.pyrDown(src, dstsize=(cols // 2, rows // 2)) print ('** Zoom Out: Image / 2') ## [pyrdown] ## [loop] cv.destroyAllWindows() return 0 if __name__ == "__main__": main(sys.argv[1:])