2015-10-14 43 views
0

我想在python 2.7上使用Tkinter做一個GUI,它將在我的Raspberry PI B +上顯示視頻流。當我在Windows和Ubuntu上測試代碼時,認爲代碼有效,在PI上運行它是一個不同的問題。每當我嘗試運行視頻我得到相同蟒蛇2.7 cvtColor錯誤215在樹莓派B +

cv2.error: /build/opencv-ISmtkH/opencv-2.4.9.1+dfsg/modules/imgproc/src/color.cpp:3737: error: (-215) snc == 3 || scn == 4 in function cvtColor 

我尋找答案在堆棧溢出和覆盆子PI論壇,如使用modprobe,但至今無那些工作過。

代碼波紋管顯示問題出在哪裏插入的代碼示例:

從init方法

self.webcam_width, self.webcam_height = 400, 300 

# We create the cv video capture 
self.cap = cv2.VideoCapture(0) 
self.cap.set(cv2.cv.CV_CAP_PROP_FRAME_WIDTH, self.webcam_width) 
self.cap.set(cv2.cv.CV_CAP_PROP_FRAME_HEIGHT, self.webcam_height) 

方法,更新德視頻

def show_frame(self): 
    """ 
    Animate the webcam on the video label 
    :return: 
    """ 
    _, frame = self.cap.read() 
    frame = cv2.flip(frame, 1) 
    cv2image = cv2.cvtColor(frame, cv2.COLOR_BGR2RGBA) 
    img = Image.fromarray(cv2image) 
    imgtk = ImageTk.PhotoImage(image=img) 
    self.webcam_label.imgtk = imgtk 
    self.webcam_label.configure(image=imgtk) 
    self.webcam_label.after(30, self.show_frame) 

感謝您的幫助,並對我的英語感到抱歉

回答

1

問題實際上是在調用th e cvtColor,因爲它向我展示了一個libv4l錯誤。爲了解決這個問題,我簡單地通過連接網絡攝像頭啓動樹莓