




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第Python实现视频分解成图片+图片合成视频#fourcc=cv2.cv.CV_FOURCC('M','J','P','G')#opencv版本是2
fourcc=cv2.VideoWriter_fourcc(*'XVID')#opencv版本是3
videoWriter=cv2.VideoWriter(video_dir,fourcc,fps,img_size)
#count=1
foriinim_list:
im_name=os.path.join(im_dir+i)
frame=cv2.imdecode(np.fromfile(im_name,dtype=np.uint8),-1)
videoWriter.write(frame)
#count+=1
#if(count==200):
#print(im_name)
#break
videoWriter.release()
print('finish')
if__name__=='__main__':
im_dir=r'E:\py\python3.7\test\test98youhuashiping\shipingchaifen\pho/'#帧存放路径
video_dir=r'E:\py\python3.7\test\test98youhuashiping\shipingchaifen/test.mp4'#合成视频存放的路径
fps=30#帧率,每秒钟帧数越多,所显示的动作就会越流畅
frame2video(im_dir,video_dir,fps)
提示:路径中不要出现中文和特殊字符,且书写要规范!!
二、python视频拆分+图片合成(源码二)
importcv2
importnumpyasnp
importos
os.chdir(r'E:\py\python3.7\test\test98youhuashiping\chaifen')
##读取视频,并逐帧分解成图片
cap=cv2.VideoCapture('1.mp4')#打开一个视频
isOpened=cap.isOpened()#判断是否打开
print(isOpened)
#获取视频的相关信息,视频的每一帧图片的宽度都是一致的
fps=cap.get(cv2.CAP_PROP_FPS)#帧率,即每秒钟由多少张图片组成
width=int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))#获取宽度
height=int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))#获取高度
print(fps,width,height)#输出相关信息
i=0
while(isOpened):
#读取视频的前两秒的图像,共计2*int(fps)张
ifi==int(fps)*2:
break
else:
i=i+1
(flag,frame)=cap.read()#读取每一张flagframe
filename='image'+str(i)+'.jpg'
#将读取的图片写入文件中,
ifflag==True:
cv2.imwrite(filename,frame,[cv2.IMWRITE_JPEG_QUALITY,100])#确定图片质量,100算是高的
print('end!')
##读取零散图片(上面分解的图片),并将其合成视频
img=cv2.imread('image1.jpg')
imginfo=img.shape
size=(imginfo[1],imginfo[0])#与默认不同,opencv使用height在前,width在后,所有需要自己重新排序
print(size)
#创建写入对象,包括新建视频名称,每秒钟多少帧图片(10张),size大小
#一般人眼最低分辨率为19帧/秒
videoWrite=cv2.VideoWriter('2.mp4',-1,10,size)
foriinrange(1,40):
filename='image'+str(i)+'.jpg'
img=cv2.imread(filename,1)#1表示彩图,0表示灰度图
#直接写入图片对应的数据
videoWrite.write(img)
videoWrite.release()#关闭写入对象
print('end')
三、python视频拆分(源码三)
importcv2#导入opencv模块
importos
importtime
defvideo_split(video_path,save_path):
对视频文件切割成帧
@paramvideo_path:视频路径
@paramsave_path:保存切分后帧的路径
vc=cv2.VideoCapture(video_path)
#一帧一帧的分割需要几帧写几
ifvc.isOpened():
rval,frame=vc.read()
else:
rval=False
whilerval:
rval,frame=vc.read()
#每秒提取2帧图片
ifc%2==0:
cv2.imwrite(save_path+"/"+str('%06d'%c)+'.jpg',frame)
cv2.waitKey(1)
c=c+1
DATA_DIR=r"E:\py\python3.7\test\test98youhuashiping\ceshi\mp4"#视频数据主目录
SAVE_DIR=r"E:\py\python3.7\test\test98youhuashiping\ceshi\pho2"#帧文件保存目录
start_time=time.time()
forparents,dirs,filenamesinos.walk(DATA_DIR):
#ifparents==DATA_DIR:
#continue
print("正在处理文件夹",parents)
path=parents.replace("\\","//")
f=parents.split("\\")[1]
save_path=SAVE_DIR+"//"+f
#对每视频数据进行遍历
forfileinfilenames:
file_name=file.split(".")[0]
save_path_=save_path+"/"+file_name
ifnotos.path.isdir(save_path_):
o
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽车与交通设备行业2025年汽车内饰材料环保法规与政策影响报告
- 《红楼梦》说课稿-2025-2026学年高中语文统编版 必修下册-统编版
- 2025年新能源行业企业数字化转型与业务流程优化战略愿景报告
- 2025年中国高强度镍合金行业市场分析及投资价值评估前景预测报告
- 八年级英语下册 Unit 4 A good readPerid Ⅳ Study skillsTaskSelf-assessment说课稿设计(pdf)(新版)牛津版
- 2.6.3 艾滋病的发生与流行(说课稿)2025-2026学年七年级生物下册同步教学(冀少版河北专版)
- 2025年农村新能源在乡村振兴战略中的技术创新与应用研究报告
- 《正负数》(教学设计)-四年级上册数学北师大版
- 2024-2025学年高中生物 第二单元 生态工程与生物安全 第1章 第1节 生态工程及其原理说课稿 中图版选修3
- 小学信息技术第一册 输入词语和中文标点说课稿 北京版
- 2025-2026学年统编版五年级上册语文第二单元过关试卷附答案(三套)
- 2025年农村土地租赁协议(合同样本)
- 2025年固态变压器(SST)行业研究报告及未来发展趋势预测
- 神经外科重症管理临床指南
- 少年读史记课件
- 铁路客运防寒过冬课件
- 任职资格认证汇报
- 2025年三力测试题试题及答案
- 高盛:释放AI时代的潜力+Powering+the+AI+Era
- 公司视频发布管理办法
- 2025人教版八年级数学课后辅导计划
评论
0/150
提交评论