在我之前的文章中,我们找到了一种将图像文件从一个 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 …