def do_detect(): global pixels pixels = [] set_all(b_color) idx = 0 for i in interfaces: for a in xrange(min_addr, max_addr): px = (i, a) print "Testing: ", addr(px), acabsl_rconfig.set_lamp(px, f_color) time.sleep(.05) for x in range(3): ret, frame = cap.read() if ret != True: print "Image error" exit(1) pos = find_pixel(True) if pos != (0, 0): pixels.append([px, pos]) print "@", pos else: print "<notfound>" acabsl_rconfig.set_lamp(px, b_color) if cv2.waitKey(1) & 0xff == 27: # Escape key cv2.destroyAllWindows() cap.release() break elif cv2.waitKey(1) & 0xff == 32: # Space print "SkipIF" break
def do_detect(): global pixels pixels=[] set_all(b_color) idx=0 for i in interfaces: for a in xrange(min_addr,max_addr): px=(i,a) print "Testing: ",addr(px), acabsl_rconfig.set_lamp(px,f_color) time.sleep(.05) for x in range(3): ret, frame = cap.read() if ret != True: print "Image error" exit(1) pos=find_pixel(True) if pos!=(0,0): pixels.append([px,pos]) print "@",pos else: print "<notfound>" acabsl_rconfig.set_lamp(px,b_color) if cv2.waitKey(1)&0xff == 27: # Escape key cv2.destroyAllWindows() cap.release() break
def move_point(event,x,y,flags,param): global dragstate,pixels,grid,b_color,f_color if pixels == None: return p0=(x,y) if event == cv2.EVENT_LBUTTONDOWN: dragstate=find_closest_pixel_pos(p0,pixels) print "click @",p0,"dragging ",dragstate,addr(pixels[dragstate][0]) set_all(b_color) acabsl_rconfig.set_lamp(pixels[dragstate][0], f_color) if dragstate != None: pixels[dragstate][1]=p0 if event == cv2.EVENT_LBUTTONUP: print "dragged to: ",p0 dragstate=None newgrid=gridify(pixels) if(grid!=newgrid): grid=newgrid print "Grid changed!" send_config(grid)
def move_point(event, x, y, flags, param): global dragstate, pixels, grid, b_color, f_color if pixels == None: return p0 = (x, y) if event == cv2.EVENT_LBUTTONDOWN: dragstate = find_closest_pixel_pos(p0, pixels) print "click @", p0, "dragging ", dragstate, addr(pixels[dragstate][0]) set_all(b_color) acabsl_rconfig.set_lamp(pixels[dragstate][0], f_color) if dragstate != None: pixels[dragstate][1] = p0 if event == cv2.EVENT_LBUTTONUP: print "dragged to: ", p0 dragstate = None newgrid = gridify(pixels) if (grid != newgrid): grid = newgrid print "Grid changed!" send_config(grid)
def pixel(x): set_all(b_color) i=interfaces[cv2.getTrackbarPos('pixel_if','ctrl')] px=cv2.getTrackbarPos('pixel_addr','ctrl') acabsl_rconfig.set_lamp((i, px),f_color) print addr((i,px))
def set_all(color): global interfaces for i in interfaces: # 0 -> all lamps of interface i acabsl_rconfig.set_lamp((i, 0),color)
def pixel(x): set_all(b_color) i = interfaces[cv2.getTrackbarPos('pixel_if', 'ctrl')] px = cv2.getTrackbarPos('pixel_addr', 'ctrl') acabsl_rconfig.set_lamp((i, px), f_color) print addr((i, px))
def set_all(color): global interfaces for i in interfaces: # 0 -> all lamps of interface i acabsl_rconfig.set_lamp((i, 0), color)