opencv-视频分解图片

1.加载视频2. info信息 3. 解码,parse方法解析视频 4. imshow展示或者保存imread

# 视频分解图片
# 1 load 2 info 3 parse 4 imshow imwrite
import cv2
# 可以通过摄像头,也可以通过本地文件
cap = cv2.VideoCapture("1.mp4") # 获取一个视频打开cap 参数1 file name(可选路径)
isOpened = cap.isOpened # 判断是否打开
print(isOpened)
fps = cap.get(cv2.CAP_PROP_FPS) # 帧率(每秒多少张图片)
width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))# w h
height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) # 高度信息
print(fps,width,height)
# i记录保存了多少张
i = 0
while(isOpened):
    # 读取十张照片
    if i == 10:
        break
    else:
        i = i+1
    (flag,frame) = cap.read()# 读取每一张(帧) 返回: flag(是否成功) frame(图片内容) 
    fileName = 'image'+str(i)+'.jpg'
    print(fileName)
    # 如果读取成功了,保存图片
    if flag == True:
        # 质量控制: 100表明质量最高。
        cv2.imwrite(fileName,frame,[cv2.IMWRITE_JPEG_QUALITY,100])
print('end!')

# 人脸识别的连续帧数为15帧
posted @ 2018-07-30 15:39  Gaoyongxian666  阅读(551)  评论(0编辑  收藏  举报