0
파이썬 소켓과 OpenCV를 사용하여 HTTP를 통해 웹캠 이미지를 제공하려고하지만 올바르게 작동하지 않습니다. 서버가 웹캠에서 캡처 한 적절한 JPEG 이미지를 제공하지 않습니다. 일부 바이너리 배열 만 보여줍니다. HTTP를 통한 파이썬 웹캠 이미지 서버가 이미지를 표시하지 않습니다.
import io
import socket
import atexit
from cv2 import *
from PIL import Image
def camServer():
while True:
print("wait...")
conn, addr = server_socket.accept()
if conn:
print(conn)
print(addr)
connection = conn.makefile('wb')
break
print("Connecting")
try:
cam = VideoCapture(0)
s, imgArray = cam.read()
if s:
atexit.register(onExit)
img = io.BytesIO()
imgPIL = Image.fromarray(imgArray)
imgPIL.save(img, format="jpeg")
img.seek(0)
connection.write(img.read())
img.seek(0)
img.truncate()
finally:
print("close connection")
connection.close()
def onExit():
connection.close()
server_socket.close()
print("exit")
server_socket = socket.socket()
server_socket.bind(('0.0.0.0', 8000))
server_socket.listen(0)
server_socket.setblocking(1)
while True:
camServer()
는 여기에서 원래의 소스 코드를 발견
Python socket server to send camera image to client 내가 대신 PICamera의 OpenCV의를 사용하도록 수정.
을! 지금 당장은 원시 이미지 만 제공됩니다. http 헤더와 응답 형식 등 http에 필요한 모든 것을 보내야합니다. –