diff options
| author | Florian Jung <flo@windfisch.org> | 2015-01-05 15:21:07 +0100 | 
|---|---|---|
| committer | Florian Jung <flo@windfisch.org> | 2015-01-05 15:21:07 +0100 | 
| commit | 32166e492b32affd8f79a11ec58cbdcd6e45cc21 (patch) | |
| tree | b12de9390df656e277272ac71e049962c409082a | |
| parent | 98bdee0b582ddc7010065ed7b378677017683ce7 (diff) | |
server can talk to drone
| -rw-r--r-- | server.py | 37 | 
1 files changed, 35 insertions, 2 deletions
@@ -1,3 +1,5 @@ +import libardrone.libardrone as libardrone +import pygame  import cv2  import os  import socket @@ -61,17 +63,48 @@ sock.bind(server_address)  sock.listen(1) +try: +    pygame.init() +    pygame.joystick.init() +    js=pygame.joystick.Joystick(0) +    js.init() +    js_angle_shift = 0.0 +except: +    print "meeeeh" + + +drone = libardrone.ARDrone(True, True) +drone.reset() + +  serverthread=ServerThread()  lock=threading.Lock()  cap = cv2.VideoCapture("/home/flo/kruschkram/out2.avi")  status, frame = cap.read() + +writer = cv2.VideoWriter("flight.avi",cv2.VideoWriter_fourcc(*'MP42'),25,(1280,720),1) +logfile = open("flight.log", "w") + + + +  serverthread.start()  while True:      print "hello world :)" -    time.sleep(1)      lock.acquire() -    status, frame = cap.read() +    rawimg = drone.get_image() +    frame = cv2.cvtColor(rawimg, cv2.COLOR_BGR2RGB) +    phi = drone.navdata.get(0, dict()).get('phi',1337) +    theta = drone.navdata.get(0, dict()).get('theta',1337) +    psi = drone.navdata.get(0, dict()).get('psi',1337)      lock.release() +    cv2.imshow("frame", frame) +    writer.write(frame) +    logfile.write(str(phi)+"\t"+str(theta)+"\t"+str(psi)+"\n") +    print phi,theta,psi + +    cv2.waitKey(50) +  | 
