如何将网络摄像头帧从客户端发送到烧瓶服务器?

Posted

技术标签:

【中文标题】如何将网络摄像头帧从客户端发送到烧瓶服务器?【英文标题】:How to send webcam frames from client to flask server? 【发布时间】:2017-12-08 23:02:46 【问题描述】:

我正在使用 openCV 进行人脸识别,并希望通过在烧瓶服务器端获取他们的网络摄像头帧并执行人脸识别来为客户做同样的事情。

我可以在服务器端执行此操作,但我希望使用客户端的网络摄像头而不是服务器的。

【问题讨论】:

【参考方案1】:

创建一个客户端脚本和一个服务器脚本,并使用套接字在两者之间进行通信。

server.py:

import socket

s = socket.socket()
s.bind(("0.0.0.0",789)) #Whatever port
try:
   s.listen(1) 
except:
   print("[*]Start the script with more permissions")
   exit(0)
conn , adds = s.accept()
print("[*]Received connection")
while True:
    data = str(conn.recv(99999))  #This is the image you receive
    display_image_on_screen_and_facial_recognicion(data)

client.py:

import socket
s = socket.socket
try:
    s.connect(("0.0.0.0",789)) #Same port as server side
except:
    print("[*]Server is not up!")
    exit(0)
else:
    while True:
        data = capture_webcam()
        s.send(data.encode())

【讨论】:

以上是关于如何将网络摄像头帧从客户端发送到烧瓶服务器?的主要内容,如果未能解决你的问题,请参考以下文章

如何在烧瓶路由中接收网络摄像头视频流?

使用命名管道将图像帧从 C++ 服务器发送到 C# 客户端

如何将 jpeg 帧从 java 客户端流式传输到 python 服务器

发送连续网络摄像头图像时出现内存不足错误java

如何在 flash/rtmp 中将客户端网络摄像头流式传输到网络服务器

如何在浏览器中使用 Flash 客户端将网络摄像头流式传输到 RTMP 服务器?