From f7fcc42cf89bf1ae65ff485a9eead9ece1cd0108 Mon Sep 17 00:00:00 2001 From: Jonas Date: Thu, 31 May 2018 09:10:59 +0200 Subject: [PATCH] added photo_caputure script --- scripts/photo_capture.py | 50 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 scripts/photo_capture.py diff --git a/scripts/photo_capture.py b/scripts/photo_capture.py new file mode 100644 index 0000000..464a85e --- /dev/null +++ b/scripts/photo_capture.py @@ -0,0 +1,50 @@ +import numpy as np +import cv2 +from naoqi import ALProxy +from datetime import datetime + +nao_ip = '192.168.0.11' +nao_port = 9559 +res = (3, (960, 1280)) # NAOQi code and acutal resolution +fps = 1 + +# get NAOqi module proxy + +# select camer +# 0: Top +# 1: Bottom +camera=0 + +videoDevice = ALProxy('ALVideoDevice', nao_ip, nao_port) +subscriber = videoDevice.subscribeCamera( + "tester", camera, res[0], 13, fps +) +# create image +image = np.zeros((res[1][0], res[1][1], 3), np.uint8) + +for k in range(2): + + result = videoDevice.getImageRemote(subscriber) + videoDevice.releaseImage(subscriber) + + now = datetime.now().strftime('%Y%m%d%H%M%S') + if result == None: + print 'cannot capture.' + elif result[6] == None: + print 'no image data string.' + else: + values = map(ord, list(result[6])) + i = 0 + for y in range(res[1][0]): + for x in range(res[1][1]): + image.itemset((y, x, 0), values[i + 0]) + image.itemset((y, x, 1), values[i + 1]) + image.itemset((y, x, 2), values[i + 2]) + i += 3 + if camera==0: + cv2.imwrite('top' + now + '.jpg', image) + else: + cv2.imwrite('bottom' + now + '.jpg',image) + + +videoDevice.unsubscribe(subscriber)