Ошибка при использовании веб-камеры OpenCV с живым потоком в проекте Django

Итак, у меня есть шаблон, в котором я отображаю представление, которое имеет веб-камеру живого потока в Django. Когда я запускаю сервер в первый раз, камера работает нормально, но если я возвращаюсь назад, а затем ввожу снова, я получаю эту ошибку: cv2.error: OpenCV(4.5.5) /io/opencv/modules/imgcodecs/src/loadsave.cpp:976: error: (-215:Assertion failed) !image.empty() in function 'imencode'

Я искал этот вопрос, но не нашел точного решения.

views.py:

@gzip.gzip_page
def live(request):
    try:
       cam = VideoCamera()
       return StreamingHttpResponse(gen(cam), content_type="multipart/x-mixed-replace;boundary=frame")
    except:
       pass
    return render(request, "live.html")

class VideoCamera(object):
    def __init__(self):
       self.video = cv2.VideoCapture(0)
       (self.grabbed, self.frame) = self.video.read()
       threading.Thread(target=self.update, args=()).start()

    def __del__(self):
       self.video.release()

    def get_frame(self):
       image = self.frame
       _, jpeg = cv2.imencode('.jpg', image)
       return jpeg.tobytes()

   def update(self):
        while True:
           (self.grabbed, self.frame) = self.video.read()

  def gen(camera):
      while True:
         frame = camera.get_frame()
         yield (b'--frame\r\n'
              b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n\r\n')

urls.py:

from django.urls import path
from . import views

urlpatterns = [
    path('', views.index, name='index'),
    path('live/', views.live, name='live'),
]

live.html:

<html>
  <head>
    <title>Video Live Stream</title>
  </head>
  <body>
    <h1>Video Live Stream</h1>
    <img src="{% url 'live' %}" />
  </body>
</html>

помощь будет очень признательна

Вернуться на верх