Warum cv2.Rechteck return None anstatt eines Bildes?
Ich versuche zu zeichnen Rechtecke auf der Oberseite des frames, nehme ich von meinem Notebook die Kamera mit opencv2 in python.
Jedoch, kehrte das Bild von der cv2.Rechteck-Funktion ist None
. Warum?
import numpy as np
import cv2
# details of rectangle to be drawn.
x, y, h, w = (493, 305, 125, 90)
cap = cv2.VideoCapture(0)
while 1:
ret, frame = cap.read()
if not ret or not frame:
# camera didn't give us a frame.
continue
# attempt to draw a rectangle.
img = cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2)
# This prints out None every time! why?
print str(img)
if not img:
continue
# We never get here since img is None. :/
cv2.imshow('img', img)
Ich habe versucht, indem überprüft, wie Sie sehen, wenn das Bild aus der Kamera ist null. Ich habe auch versucht, machen Sie sicher, dass das Rechteck wirklich in den Rahmen passt.
Ich bin sicher, meine Kamera zu arbeiten, da kann ich erfolgreich imshow
den Rahmen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Rechteck nichts zurück
[edit:] in opencv2.4.x aber es hat Rückkehr das Bild in opencv3.0 /python -
beachten Sie auch, dass die sehr beliebt py_tutrorials sind für die 3.0, also nicht verwirrt sein 😉