[英]BytesIO stream to Numpy arrays? (Picamera)
我正在使用Picamera和Raspberry Pi拍照,然后分析它們之間的差異。 我正在使用以下代碼捕獲到BytesIO流,然后將其讀入Numpy數組(從本指南借用):
stream = io.BytesIO()
with picamera.PiCamera() as camera:
camera.resolution = (100, 60)
camera.framerate = 30
while not done:
camera.capture(stream, format='jpeg', use_video_port=True)
if previousData == None:
previousData = cv2.imdecode(np.fromstring(stream.getvalue(), dtype=np.uint8), 1)
previousData = previousData[:, :, ::-1]
else:
timeStartNumpy = time.time()
currentData = cv2.imdecode(np.fromstring(stream.getvalue(), dtype=np.uint8), 1)
currentData = previousData[:, :, ::-1]
....(omitted analysis code)....
previousData = currentData
分析代碼可以正常工作,除了它重復使用相同的幀。 我假設我從流中讀取的方式一定是個問題,但我在Python中沒有足夠的經驗知道如何更改它。 任何提示或幫助將不勝感激。
在else
分支中,您將當前捕獲的幀分配給名稱currentDate
,以便在下一行中將此替換為previousData
。 因此,之前行中捕獲的幀將丟失,因為沒有名稱或其他參考指向它。 只需刪除第二個作業。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.