Python 在Django中使用cv.CaptureFromCAM

Python 在Django中使用cv.CaptureFromCAM,python,django,opencv,python-imaging-library,Python,Django,Opencv,Python Imaging Library,我在Django应用程序中使用了cv.CaptureFromCAM,但我的脚本阻止了此命令。没有Django,它可以工作,我可以看到我的网络摄像头打开 这是我的剧本: import cv, Image def takePhoto(): """Return a PIL img""" print "Taking photo" cv_img = cv.QueryFrame( cv.CaptureFromCAM(0) ) pil_img


我在Django应用程序中使用了
cv.CaptureFromCAM
,但我的脚本阻止了此命令。
没有Django,它可以工作,我可以看到我的网络摄像头打开

这是我的剧本:

import cv, Image

def takePhoto():
        """Return a PIL img"""
        print "Taking photo"
        cv_img = cv.QueryFrame( cv.CaptureFromCAM(0) )
        pil_img = Image.fromstring("L", cv.GetSize(cv_img), cv_img.tostring())
        return pil_img
如果有人知道为什么我不能在Django的脚本中使用像
cv.CaptureFromCAM
这样的方法

PS:我已经试着分解成几行…

解决了:
我把
cv.CaptureFromCAM
放在var
settings.py中,以便在网站启动时启动它

我访问该var进行拍照,例如:

在settings.py中:

CAM = cv.CaptureFromCAM(0)
在views.py中:

from django.http import HttpResponse
import cv, Image

def instantPhoto(request) :
    cv_img = cv.QueryFrame( CAM[0] )
    pil_img = Image.fromstring("RGB", cv.GetSize(cv_img), cv_img.tostring())
    response = HttpResponse(mimetype="image/png")
    pil_img.save(response, "PNG")
    return response
已解决:
我把
cv.CaptureFromCAM
放在var
settings.py中,以便在网站启动时启动它

我访问该var进行拍照,例如:

在settings.py中:

CAM = cv.CaptureFromCAM(0)
在views.py中:

from django.http import HttpResponse
import cv, Image

def instantPhoto(request) :
    cv_img = cv.QueryFrame( CAM[0] )
    pil_img = Image.fromstring("RGB", cv.GetSize(cv_img), cv_img.tostring())
    response = HttpResponse(mimetype="image/png")
    pil_img.save(response, "PNG")
    return response

没有错误,但浏览器始终等待页面。没有错误,但浏览器始终等待页面。