opencv打开摄像头和视频文件

# 视频本质上是由一幅幅图片组成的,30帧意思就是每秒30张图片
#打开摄影头
import cv2

#下面两行代码表示命名一个叫做"video"的窗口,并且可以修改窗口大小
cv2.namedWindow('video', cv2.WINDOW_NORMAL)
cv2.resizeWindow('video', 640,480)

#下面这一行代码打开摄影头
cap = cv2.VideoCapture(0)

#循环读取摄像头每一帧
while True:
    #读一帧数据,返回标记True表示读取。Flase表示没有(ret表示标记)frame表示一帧
    ret, frame = cap.read()
    
    #可以根据ret做判断
    if not ret:
        #没数据直接退出
        break
    #显示数据
    cv2.imshow('video', frame)
    #此处Key()若为0则视频只截取一帧,(10)代表视频截取帧数
    key = cv2.waitKey(10)
    if key == ord('q'):
        break

#release表示释放资源,一定别忘了
cap.release()
cv2.destroyAllWindows()
#打开视频
import cv2

cv2.namedWindow('video', cv2.WINDOW_NORMAL)
cv2.resizeWindow('video', 640,480)
#下面这一行代码打开视频
cap = cv2.VideoCapture('./yingduan.mp4')

#循环读取摄像头每一帧
while True:
    #读一帧数据,返回标记True表示读取。Flase表示没有(ret表示标记)frame表示一帧
    ret, frame = cap.read()
    
    #可以根据ret做判断
    if not ret:
        #没数据直接退出
        break
    #显示数据
    cv2.imshow('video', frame)
    #下面一行代码表示每隔10毫秒下一次图片
    key = cv2.waitKey(10)
    if key == ord('q'):
        break
cap.release()
cv2.destroyAllWindows()

 

 

你可能感兴趣的:(opencv,人工智能,大数据)