Ich habe versucht, die Konturen von rot gefärbten Objekten in Open Cv (Python 2.7) zu identifizieren und es ist uns gelungen, sie zu identifizieren. Aber ich möchte die Position des rot gefärbten Objekts (links oder rechts) erkennen und es ist mir nicht gelungen. Wenn jemand mir den Code oder die Schritte dazu geben könnte, wäre ich wirklich dankbar.Konturenerkennung in OpenCv Python 2.7
Unser aktueller Code für rot gefärbte Objekte zu identifizieren ist wie folgt:
import numpy as np
import cv2
cap = cv2.VideoCapture(0)
while(1):
_, frame = cap.read()
hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
lower_color = np.array([0, 50, 50])
upper_color = np.array([60, 255, 255])
mask = cv2.inRange(hsv, lower_color, upper_color)
mask = cv2.erode(mask, None, iterations=2)
mask = cv2.dilate(mask, None, iterations=2)
res = cv2.bitwise_and(frame, frame, mask=mask)
cnts = cv2.findContours(mask.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)[-2]
cv2.drawContours(frame, cnts, 0, (127, 255, 0), 3)
print cnts
cv2.imshow('frame', frame)
cv2.imshow('mask', mask)
cv2.imshow('res', res)
cv2.imshow('contours', frame)
k = cv2.waitKey(5) & 0xFF
if k == 27:
print "release"
break
cap.release()
cv2.destroyAllWindows()
danke für die Idee. Könnten Sie mir bitte auch das Programm dazu schicken ... –
cv2.circle (frame, center, radius, (255, 0, 0), 3) TypeError: Integer-Argument erwartet, habe float ich habe diesen Fehler .. Könnten Sie mir bitte sagen, wo ich die Aussagen in meinem Programm hinzufügen muss ... Das ist wirklich dringend, da ich gerade an einem Projekt arbeite. –
@AdhityanSridharan Welches Programm dafür? Ich habe dir bereits den Code gegeben, den du in deinen eigenen Code schreiben kannst. Ich habe den Code aktualisiert, um den Fehler zu beheben – api55