2014-12-03 74 views
0

這個小時的問題是...... 在Opencv攝像頭窗口(實時)上添加文本。 讓我解釋一下;通過這段代碼,我使用Python3上的Opencv打開網絡攝像機。將文本添加到視頻,Opencv

import cv2 
import time 

capture = cv2.VideoCapture('Picture Maker') 
capture 
cap = cv2.VideoCapture(0) 

while True: 
ret,im = cap.read() 
blur = cv2.GaussianBlur(im,(0,0),1) 
cv2.imshow('Picture Maker',blur) 
cv2.imwrite('MyPic.jpg', blur) 
if cv2.waitKey(10) == 27: 
    break 

cv2.imwrite('MyPic.jpg', blur)是那裏,因爲,我的計劃的目的是給拿在確定的時間後照片(這是對爲什麼import time的可能性,但我仍然沒有想出如何在開幕後10秒鐘內完成)。

我的問題是如何在現場攝像頭圖像(視頻)的窗口上有文字? 我試過,但不起作用:

font = cv2.FONT_HERSHEY_SIMPLEX 
cv2.putText(capture,'Count Down',(10,500), font, 4,(255,255,255),2,cv2.LINE_AA) 

至少我不知道在哪裏把它..

,並和你倒數任何意見? 問候 費德里科

回答

2

你應該後調用imshow所有繪圖 - putTextimwrite

而且,拍照給定的時間過去之後,你應該有外循環初始化一個計時器,並在每個幀10秒是否通過檢查。你可以這樣說:

import time 

start_time = time.time() 
while True: 
    waited = time.time() - start_time 
    print('Waited {} seconds'.format(waited)) 

    if waited >= 10: 
     # take pic 
     break 

當心,雖然,這是一個繁忙的等待。