2015-11-27 103 views
2

我想在我的Django應用程序中使用OpenCV。由於OpenCV是一個庫,我認爲我們可以像任何其他庫一樣使用它。在Django中使用OpenCV

當我嘗試在Django的意見要導入使用import cv2它,它工作正常,但是當我試圖在像cap = cv2.VideoCapture(0) Django的視圖的庫函數調用,並嘗試在我的瀏覽器上運行的應用程序,沒有任何反應:模板不會加載,終端和應用程序中的追蹤不會永久加載。

不知道爲什麼,但cv2函數調用未按預期執行。由於沒有追蹤,我無法理解問題所在。如果有人可以建議什麼是錯的?在Django中使用OpenCV是否正確?

回答

0

我說得對,你夢想Django應用程序能夠從你的相機捕捉視頻?這不會起作用(至少不會以您期望的方式)。

你是否檢查過你的web服務器留下的任何堆棧跟蹤(一個主持Django應用或者是Django內置的開始)?

我建議你從Python命令行開始玩OpenCV。如果你在Windows上使用IDLE。從那裏觀察你的通話行爲。

Django應用程序在WSGI應用程序服務器內部運行,其中有幾個約束,特定類型的模塊可以和不可以做什麼。我沒有試圖重複你所做的事(我沒有我可以訪問的攝像頭)。

在Web應用程序中處理相機的正確方法需要JavaScript中的瀏覽器端處理。

最後的小聲明:我並不是說你在Django應用程序中根本不能使用OpenCV,但試圖訪問攝像頭不是一種方法。

0

爲cv2函數調用使用單獨的線程,應用程序應該像魅力一樣工作。從我認爲無限期加載的原因可能是因爲視頻從不停止錄製,因此代碼進一步提前未被考慮,因此無限加載頁面。線程應該可以做到。 :) :)