av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

python3從網絡攝像機解析mjpeg http流的示例

瀏覽:11日期:2022-07-05 15:29:31

前言

網絡攝像頭的視頻流解析直接使用通過http的Mjpeg是具有邊界幀信息的multipart / x-mixed-replace,而jpeg數據只是以二進制形式發送。因此,實際上不需要關心HTTP協議標頭。所有jpeg幀均以marker開頭,0xff 0xd8并以結尾0xff 0xd9。因此,上面的代碼從http流中提取了此類幀,并將其一一解碼。像下面

...(http)0xff 0xd8 --|[jpeg data] |--this part is extracted and decoded0xff 0xd9 --|...(http)0xff 0xd8 --|[jpeg data] |--this part is extracted and decoded0xff 0xd9 --|...(http)

如果圖像的獲取是從tcp網絡中傳輸到本地進行解析需要對bytes類型數據進行解碼

在使用OpenCV直接調用網絡攝像頭時可能會出現

Cam not found

這時候就需要下面這種辦法

代碼: 幀解析

import cv2cap = cv2.VideoCapture(’http://localhost:8080/frame.mjpg’) while True: ret, frame = cap.read() print(frame) if ret == True: cv2.imshow(’Video’, frame) if cv2.waitKey(1) == 27: exit(0)

視頻流解析

import cv2import requestsimport numpy as np r = requests.get(’http://192.168.1.xx/mjpeg.cgi’, auth=(’user’, ’password’), stream=True)if(r.status_code == 200): bytes = bytes() for chunk in r.iter_content(chunk_size=1024): bytes += chunk a = bytes.find(b’xffxd8’) b = bytes.find(b’xffxd9’) if a != -1 and b != -1: jpg = bytes[a:b+2] bytes = bytes[b+2:] i = cv2.imdecode(np.fromstring(jpg, dtype=np.uint8), cv2.IMREAD_COLOR) cv2.imshow(’i’, i) if cv2.waitKey(1) == 27:exit(0)else: print('Received unexpected status code {}'.format(r.status_code))

以上就是python3從網絡攝像機解析mjpeg http流的示例的詳細內容,更多關于python 解析mjpeg http流的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 蜜桃av鲁一鲁一鲁一鲁 | 久久国产综合 | 久久久久九九九九 | 美女二区| 一级片av| 欧美日韩国产不卡 | 国产精品国产三级国产aⅴ原创 | 久久久久久久久99 | 成人网视频 | 成人免费视频 | 欧美一区免费在线观看 | 五月婷婷激情网 | 国产精品无码专区在线观看 | 中文字幕av亚洲精品一部二部 | 一区二区三区不卡视频 | 婷婷色在线播放 | 久久99精品久久久久 | 欧美理伦片在线播放 | 精品一区二区三区在线播放 | 欧美精品一区在线 | 日本欧美国产在线 | 国产成人精品综合 | 91视频大全| 国产玖玖 | h视频免费在线观看 | 欧美精品国产精品 | 在线免费看黄 | 日日干夜夜干 | 一区二区在线免费播放 | 成人在线视频一区二区三区 | 日本高清中文字幕 | 中文字幕视频在线看5 | 99在线视频观看 | 中文字幕视频在线 | 久久最新精品视频 | 国产丝袜一区二区三区免费视频 | 国产精品一二区 | 亚洲精品1区2区3区 91免费看片 | 欧美激情久久久 | 亚洲97| 中文字幕亚洲一区二区三区 |