¿Cómo puedo invertir el movimiento del cursor en python?

En este código, estoy usando Python 2.7.13, OpenCV 2.4.13 y PyAutoGUI 0.9.36. El objetivo es mover el cursor de acuerdo con el movimiento facial, pero el movimiento del cursor está invertido. Por ejemplo, si mi cara va hacia la derecha, el cursor se mueve hacia la izquierda y si mi cara va hacia la izquierda, el cursor va hacia la derecha. Además, quiero que el cursor se mueva hacia la derecha, izquierda, arriba y abajo en toda la pantalla de mi PC, cuyo tamaño es x = 1920, y = 1080.

El propósito de este programa es mostrar que es posible obtener una nueva forma de adquirir más independencia y acceso para que las personas con tetraplejia sean capaces de realizar actividades simples, que son parte de la rutina de millones de personas, como convertir encender y apagar la luz y encender y apagar la TV.

import cv2
import pyautogui

faceCascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')

video_capture = cv2.VideoCapture(0)

while True:
    # Capture frame-by-frame
    ret, frame = video_capture.read()

    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    faces = faceCascade.detectMultiScale(
        gray,
        scaleFactor=1.3,
        minNeighbors=5,
        minSize=(80, 80),
        flags=cv2.cv.CV_HAAR_SCALE_IMAGE
    )

    #print 'faces: ', faces

    # Draw a rectangle around the faces
    for (x, y, w, h) in faces:
        cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 0, 255), 3)

    #width, height = pyautogui.size()
    #cursorx, cursory = pyautogui.position()
    #posx = width - cursorx
    #posy = cursory
    pyautogui.moveTo(x+w, y+h)

    # Display the resulting frame
    #cv2.imshow('Video', frame)
    rimg = cv2.flip(frame,1) #invert the object frame
    cv2.imshow("vertical flip", rimg) 

    if cv2.waitKey(1) & 0xFF == ord('q'):
        break
# When everything is done, release the capture
video_capture.release()
cv2.destroyAllWindows()

Respuestas a la pregunta(2)

Su respuesta a la pregunta