小编Iva*_*iti的帖子

如何将视频流从一个 python 传递到另一个?

在我之前的文章中,我们找到了一种将图像文件从一个 python传递到另一个 python 脚本的方法将视频数据从一个 python 脚本传递到另一个

我现在正在尝试传递视频(连续图像):

写.py

import sys
import numpy as np
import cv2
from PIL import Image
import io
import time

while True:
    img = cv2.imread('cat.jpg')
    bimg = cv2.imencode('.jpg',img)[1]
    sys.stdout.buffer.write(bimg)
    sys.stdout.flush()
    time.sleep(1)
Run Code Online (Sandbox Code Playgroud)

阅读.py:

import sys
from PIL import Image
import io
import cv2
import numpy as np
from io import BytesIO
    
while True:
    data = sys.stdin.buffer.read()
    img_np = cv2.imdecode(np.frombuffer(BytesIO(data).read(), np.uint8), cv2.IMREAD_UNCHANGED)
    cv2.imshow('image', img_np)
    cv2.waitKey(0)
Run Code Online (Sandbox Code Playgroud)

如果我将 write.py 数据输出到终端,它会打印出来。如果我手动将数据交给 read.py 读取。但是把它们放在一起 ( python3 write.py | python3 …

python stdout image stream cv2

11
推荐指数
2
解决办法
509
查看次数

标签 统计

cv2 ×1

image ×1

python ×1

stdout ×1

stream ×1