云南网站建设大型网站建设

中生国态(北京)文化传播有限公司 2026/09/09 17:35:53
import cv2 import os from pathlib import Path def extract_frames(video_path, output_dir=None, frames_per_second=25): """ 从视频中提取帧图像 Parameters: video_path (str): 视频文件路径 output_dir (str): 输出目录,默认为视频同名文件夹 frames_per_second (int): 每秒提取的帧数 """ # 创建输出目录 if output_dir is None: video_name = Path(video_path).stem output_dir = f"E:BaiduNetdiskDownload\{video_name}_frames" os.makedirs(output_dir, exist_ok=True) # 打开视频文件 cap = cv2.VideoCapture(video_path) if not cap.isOpened(): print(f"无法打开视频文件: {video_path}") return # 获取视频基本信息 fps = cap.get(cv2.CAP_PROP_FPS) total_frames = int(cap.get(cv2.CAP_PROP_FRAME_COUNT)) duration = total_frames / fps print(f"视频信息:") print(f" 路径: {video_path}") print(f" FPS: {fps}") print(f" 总帧数: {total_frames}") print(f" 时长: {duration:.2f} 秒") print(f" 每秒提取帧数: {frames_per_second}") # 计算提取间隔 frame_interval = fps / frames_per_second print(f" 提取间隔: 每 {frame_interval} 帧提取一次") frame_count = 0 saved_count = 0 while True: ret, frame = cap.read() if not ret: break # 更精确的帧采样判断 expected_frame_number = round(saved_count * (fps / frames_per_second)) if frame_count >= expected_frame_number: # 生成文件名 timestamp = frame_count / fps filename = f"frame_{saved_count:06d}_{timestamp:.3f}s.jpg" filepath = os.path.join(output_dir, filename) # 保存高质量JPEG图像 cv2.imwrite(filepath, frame, [cv2.IMWRITE_JPEG_QUALITY, 95]) saved_count += 1 # 显示进度 progress = (frame_count / total_frames) * 100 print(f"
处理进度: {progress:.1f}% ({saved_count} 帧已保存)", end='') frame_count += 1 # 释放资源 cap.release() print(f"
完成! 共提取 {saved_count} 帧图像到目录: {output_dir}") if __name__ == "__main__": # 设置视频路径 video_path = r"E:BaiduNetdiskDownloadmmexport1765869882377.mp4" # 提取帧,每秒25帧 extract_frames(video_path, frames_per_second=25)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

机械网站建设松江网站建设

引言:搜索范式的根本转变传统的搜索引擎时代即将被生成式AI搜索彻底改写。当ChatGPT、Gemini、Copilot等工具能够直接生成结构化答案而非仅仅提供链接列表时,整

2026/06/30 10:57:22

淄博网站建设网站建设收费

快速体验打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容:创建一个VIM Markdown工具包,集成AI辅助写作、实时

2026/06/30 12:36:32

大型门户网站建设甘肃网站建设

LobeChat账户注销流程解析在如今这个数据驱动的时代,用户越来越关注自己的数字足迹。当一款AI聊天工具变得不可或缺时,人们自然会问:如果我不想用了

2026/06/30 13:59:38

长安网站建设徐州网站建设

目录已开发项目效果实现截图开发技术系统开发工具:核心代码参考示例1.建立用户稀疏矩阵,用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档

2026/06/30 11:06:23

温州网站建设成都企业网站建设

SSH免密登录配置实践:高效访问PyTorch-CUDA容器在现代AI开发中,研究人员常常面对一个看似微小却频繁出现的痛点——每次连接远程训练环境都要输入密码。尤其是在需要

2026/06/30 14:01:38

青岛 网站建设网站建设方式

在大数据技术迅猛发展的今天,Apache Parquet格式已成为数据湖和数仓中的核心存储标准。然而,面对这些二进制格式的复杂数据文件,数据工程师们常常陷入&

2026/06/30 11:14:54

网站建设价格南昌网站建设

强力解锁3步iOS激活锁:AppleRa1n离线绕过完整指南【免费下载链接】applera1nicloud bypass for ios 15-16项目地址: https://gitco

2026/06/30 10:53:22

广西网站建设建设网站建设

小米运动刷步神器:微信支付宝自动同步终极指南【免费下载链接】mimotion小米运动刷步数(微信支付宝)支持邮箱登录项目地址: https://gitcode

2026/06/30 10:24:19

河南网站建设宿迁网站建设

宠物医院管理目录基于springboot + vue宠物医院系统一、前言二、系统功能演示详细视频演示三、技术选型四、其他项目参考五、代码参考六、测试参考七、最新计算机毕设选题推荐八、源码获取&

2026/06/30 11:23:25