Как взять координаты в python opencv и использовать их для управления турелью, используя последовательные порты от Arduino - PullRequest
0 голосов
/ 15 апреля 2019

Я пытаюсь получить свой код Python для подключения через последовательные порты на Arduino Uno. Проблема в том, что я не знаю, как взять мои значения X и Y, которые я получил, и соотнести их, чтобы моя башня переместилась, чтобы отследить ее.

Я пытался использовать другой код отслеживания лиц, и я не могу переписать его. Я знаю, что хотел бы получить его в таком формате, как этот. xx = int (x + (x + h)) / 2 yy = int (y + (y + w)) / 2

    print (xx)
    print (yy)

    center = (xx,yy)

#Draw Circles
if circles is not None:
        for i,x,y in circles[0,:]:
            # If the ball is close, draw it in green
            if int(round(i[2])) > 35:
                print("Location:", str(int(round(x[0]))), ":", str(int(round(y[1]))))
                cv2.circle(frame,(int(round(i[0])),int(round(i[1]))),int(round(i[2])),(0,255,0),5)
                cv2.circle(frame,(int(round(i[0])),int(round(i[1]))),2,(0,255,0),10)


                output = str(int(round(i[0])))+ str(int(round(i[1])))
                ser.write(output.encode())
            # else draw it in red
            elif int(round(i[2])) < 30:
                cv2.circle(frame,(int(round(i[0])),int(round(i[1]))),int(round(i[2])),(0,0,255),5)
                cv2.circle(frame,(int(round(i[0])),int(round(i[1]))),2,(0,0,255),10)
                buzz = 1


#Show the result in frames
cv2.imshow('HueComp',hthresh)
cv2.imshow('SatComp',sthresh)
cv2.imshow('ValComp',vthresh)
cv2.imshow('closing',closing)
cv2.imshow('tracking',frame)

Я просто получаю ошибки, каждый раз отличающиеся в зависимости от того, что я положил. Вещи как синтаксические ошибки или что я не определен

...