51 lines
1.2 KiB
Python
51 lines
1.2 KiB
Python
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(1):
|
|
|
|
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)
|