python将视频帧转化成图片时,出来的是灰色图像

openCV打开摄像头

  	import base64
	from io import BytesIO
	import cv2
	from PIL import Image
  	// 打开本机摄像头
  	cap = cv2.VideoCapture(0, cv2.CAP_DSHOW)  # 调用IP摄像头
  	ok, frame = cap.read()
  	 # 将每一帧转为Image
  	 #一开始写的是	img = Image.fromarray(frame) 出来的是灰色图像,改成下面的写法就正常啦
  	img = Image.fromarray(cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)) 
    output_buffer = BytesIO()  # 创建一个BytesIO
    img.save(output_buffer, format='JPEG')  # 写入output_buffer
    byte_data = output_buffer.getvalue()  # 在内存中读取
    base64_data = base64.b64encode(byte_data)  # 转为BASE64

这段代码主要是把视频帧转化成base64的格式

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值