[英]OpenCV with Python - Trying to overlay an image over the eyes on a webcam feed
[英]Superimposing image over webcam feed using OpenCV 2.4.7.0 in Python 2.7
我正在嘗試將圖像疊加在 python 中的相機供稿上。我可以將圖像疊加在另一個圖像上,但是當我將相同的東西應用到我的相機供稿時它不起作用。 到目前為止,這是我的代碼:
#!/usr/bin/python
import cv2
import time
cv2.cv.NamedWindow("Hawk Eye", 1)
capture = cv2.cv.CaptureFromCAM(0)
cv2.cv.SetCaptureProperty(capture, cv2.cv.CV_CAP_PROP_FRAME_WIDTH, 800)
cv2.cv.SetCaptureProperty(capture, cv2.cv.CV_CAP_PROP_FRAME_HEIGHT, 600)
x_offset=y_offset=50
arrows = cv2.imread("arrows.png")
while True:
webcam=cv2.cv.QueryFrame(capture)
#webcam[y_offset:y_offset+arrows.shape[0], x_offset:x_offset+arrows.shape[1]]=arrows
cv2.cv.ShowImage("Hawk Eye", webcam)
if cv2.cv.WaitKey(10) == 27:
break
cv2.cv.DestroyAllWindows()
如果我取消注釋:
img[y_offset:y_offset+arrows.shape[0], x_offset:x_offset+arrows.shape[1]]=arrows
強加圖像的那一行,它只顯示相機輸入,但是當我將它添加到我的循環中時它停止工作。 謝謝!
這可以使用cv2 API正常工作:
import cv2
import time
cv2.namedWindow("Hawk Eye", 1)
capture = cv2.VideoCapture(0)
capture.set(cv2.cv.CV_CAP_PROP_FRAME_WIDTH, 800)
capture.set(cv2.cv.CV_CAP_PROP_FRAME_HEIGHT, 600)
x_offset=y_offset=50
arrows = cv2.imread("hawk.png")
while True:
ret, webcam = capture.read()
if ret:
webcam[y_offset:y_offset+arrows.shape[0], x_offset:x_offset+arrows.shape[1]]=arrows
cv2.imshow("Hawk Eye", webcam)
if cv2.waitKey(10) == 27:
break
cv2.destroyAllWindows()
請幫助我我正在使用 PixHawk 64 mp 我可以從控制台到達但我無法從 python 到達,我發現總是相同的代碼但它不起作用
video_capture = cv2.VideoCapture(0)` ret, img = video_capture.read() cv2.imshow("Resized image", img)
這是錯誤:
[WARN:0@33.508] global /io/opencv/modules/videoio/src/cap_v4l.cpp (902) 打開 VIDEOIO(V4L2:/dev/video0): 無法通過索引 Traceback 打開相機(最近調用最后) :
文件“/home/pi/project/untitled0.py”,第 7 行,在 cv2.imshow(“image”, img)
錯誤:OpenCV(4.6.0) /io/opencv/modules/highgui/src/window.cpp:967: 錯誤: (-215:Assertion failed) size.width>0 && size.height>0 in function 'imshow'
請幫我
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.