python将视频一帧一帧_python 用opencv接口把视频逐帧转化为图片
好了,接下來我要做一個實際的深度學習圖像分割的小項目,項目內容是從一堆拍攝海面的圖片中將白浪花分割出來,這個項目的分割只對白浪花感興趣,所以最后應該是01分割,非黑即白。目前收到800G左右的數據,視頻格式,每段大約50分鐘。首先要做的就是從這些視頻中把每一幀的圖片導出來,變成圖片。
這里首先有一個小插曲,我發現我的視頻格式一開始雖然是mp4,但是用普通的播放器播放不了,這就很詭異。于是我下載了完美解碼,果然可以播放了。不過還是很詭異,于是我用格式工廠無損的轉換成mp4格式,800G的數據也跑了整整一天時間,我真佛了。
下面貼上使用python 用opencv接口把視頻逐幀轉化為圖片的程序,當然matlab也能干這個事兒,雖然我matlab比python熟,但是以后都用python編的,所以干脆用python了。
import cv2
import os
def save_img():
video_path = 'C:/Users/86151/Desktop/test'
videos = os.listdir(video_path)
for video_name in videos:
file_name = video_name.split('.')[0]
folder_name = video_path + file_name
os.makedirs(folder_name, exist_ok=True)
vc = cv2.VideoCapture(video_path+'/'+video_name)
c=0
rval=vc.isOpened()
while rval:
c = c + 1
rval, frame = vc.read()
pic_path = folder_name+'/'
if rval:
cv2.imwrite(pic_path + str(c) + '.png', frame)
cv2.waitKey(1)
else:
break
vc.release()
print('save_success')
print(folder_name)
save_img()
需要特別注意
video_path = 'C:/Users/86151/Desktop/test'
之前吃過大坑,生成的文件夾會在桌面上,建議一個文件一個文件來,如果數據較多就容易亂。
Reference:CSDN-專業IT技術社區-登錄?blog.csdn.net
總結
以上是生活随笔為你收集整理的python将视频一帧一帧_python 用opencv接口把视频逐帧转化为图片的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何用c#语言构造蜘蛛程序(网络爬虫实现
- 下一篇: Open Sans字体