def handle_image_data(data): """Handles incoming RGB image data from the Kinect.""" #Get the incoming RGB image from the Kinect D.image = D.bridge.imgmsg_to_cv(data, "bgr8") if D.created_images == False: #Initialize the additional images we need for processing ImageProcessing.initialize(D) D.created_images = True # Recalculate threshold image ImageProcessing.threshold_image(D) # Recalculate blob in main image ImageProcessing.find_biggest_region(D) # Check on the display of dragged section ImageProcessing.mouse_section(D) #Display target circle #ImageProcessing.target_coord(D) #Display info box on image ImageProcessing.draw_on_image(D) #Handle incoming key presses key_press = cv.WaitKey(5) & 255 if key_press != 255: #Handle only if it's a real key check_key_press(D, key_press) #(255 = "no key pressed") #Update the displays: #Show main image in the image window cv.ShowImage('Image', D.image) #Show threshold image in the threshold window currentThreshold = getattr(D, D.current_threshold) cv.ShowImage('Threshold', currentThreshold)