opencv调用USB摄像头并保存图片
opencv
OpenCV是计算机视觉的一个模块。
OpenCV可以通过图像处理减少图像噪声,调整图像亮度、颜色或者对比度等等。想要进一步系统了解OpenCV图像处理基础知识,查看官方文档:https://docs.opencv.org/3.1.0 和 https://www.w3cschool.cn/opencv。个人只会调包,不是什么计算机视觉高手。
安装Opencv。在https://www.lfd.uci.edu/~gohlke/pythonlibs/下载对应的whl进行pip install。
opencv调用USB摄像头
如果系统没有预装usb摄像头的驱动,那么根据所用的摄像头安装相应的驱动即可。
opencv调用USB摄像头的类是VideoCapture,while True的死循环一直开摄像头,waitKey来监听按键即可,最后使用imwrite保存图片。
'''
@Author:Runsen
@WeChat:RunsenLiu
@微信公众号:Python之王
@CSDN:https://blog.csdn.net/weixin_44510615
@Github:https://github.com/MaoliRUNsen
@Date:2020/11/29
'''
import cv2 as cv
# 调用内置摄像头,所以参数为0,如果有其他的摄像头可以调整参数为1,2
cap = cv.VideoCapture(0)
img_path = "./screenshot.jpg"
img_path_gray = "./screenshot_gray.jpg"
while True:
# 从摄像头读取图片
sucess, img = cap.read()
# 转为灰度图片s
gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
# 显示摄像头
cv.imshow('----------please enter "s" to take a picture----------', img)
# 保持画面的持续,无限期等待输入
k = cv.waitKey(1)
# k == 27 通过esc键退出摄像 ESC(ASCII码为27)
if k == 27:
cv.destroyAllWindows()
break
elif k == ord("s"):
# 通过s键保存图片,并退出。
cv.imwrite(img_path, img)
cv.imwrite(img_path_gray, gray)
cv.destroyAllWindows()
break
# 关闭摄像头
cap.release()
运行上面的代码,效果如下。
- END -
加群交流学习
↓扫描二维码关注本号↓
评论