01视频分解图片(获取图片素材的途径)
2019-07-27 本文已影响0人
犬夜叉写作业
1、加载视频
2、读取视频信息
3、开始解码,拿到单帧图片
4、imshow :显示 imwrite :保存
import cv2
cap = cv2.VideoCapture("1.mp4") # 获取一个视频打开的句柄cap
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 = 0 #记录当前在视频中读取并保存的图片张数
while(isOpened): #视频能被打开,是有效视频,才能执行一下操作
if i == 10:
break
else:
i = i+1
(flag,frame) = cap.read() # 读取每一帧 flag frame (flag表面是否读取成功 ;frame表示读取到的图片的内容)
fileName = 'image'+str(i)+'.jpg'
print(fileName)
if flag == True: #判断是否读取成功
cv2.imwrite(fileName,frame,[cv2.IMWRITE_JPEG_QUALITY,100]) #读取到的图片保存到本地
print('end!')
只要帧数达到15或者以上(人眼的识别帧数以上),给人的感觉是流畅的