合并多个h5文件

news2024/11/16 3:34:06

在这里插入图片描述
如图,bbt_frames下有多个视频文件夹,每个文件夹包括多个h5文件,将每个文件夹的h5文件合并成一个h5文件,并以该文件夹命名,存储至video_feature文件夹。

import os
import h5py
import numpy as np

def merge_h5_files(input_dir, output_dir):
    # 获取输入目录下的所有文件夹
    folders = [folder for folder in os.listdir(input_dir) if os.path.isdir(os.path.join(input_dir, folder))]

    for folder in folders:
        folder_path = os.path.join(input_dir, folder)
        h5_files = [file for file in os.listdir(folder_path) if file.endswith('.h5')]

        if len(h5_files) == 0:
            continue

        output_file = os.path.join(output_dir, folder + '.h5')

        with h5py.File(output_file, 'w') as outfile:
            feature_list = []
            for h5_file in h5_files:
                h5_file_path = os.path.join(folder_path, h5_file)
                with h5py.File(h5_file_path, 'r') as infile:
                    feature = infile['video_features'][0]
                    feature_list.append(feature)
            feat_data = np.array(feature_list)
            outfile.create_dataset('video_features', data=feat_data, compression="gzip")

        print(f'Merged H5 files in folder {folder}')

# 示例用法
video_directory = 'bbt_frames'
feature_directory = 'video_feature'

video_path = os.path.abspath(video_directory)
feature_path = os.path.abspath(feature_directory)

merge_h5_files(video_path, feature_path)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1788899.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《深入浅出存储引擎》不同数据库背后的数据存储方案

在大数据和AI时代,数据库成为各类应用不可或缺的重要组成部分。而数据库中的数据依赖存储引擎进行管理,包括数据的存储、查询、更新和删除等。因此,在设计系统时,选择正确的数据库存储引擎方案变得尤为重要。这篇文章将以关系型、…

4.5-24V48V60V72V80V降压12V 0.5A 电动车车充USB充电方案芯片IC-H6601

H6601 降压开关转换器是一款为电动车USB充电设计的芯片。这款芯片内置功率MOSFET,具备宽输入工作电压范围(4.5V 至 60V),能够持续输出电流0.5A,并且具有良好的负载和线性调整率。 电流控制模式使环路易稳定&#xff0c…

测试工具fio

一、安装部署 fio是一款优秀的磁盘IO测试工具,在Linux中比较常用于测试磁盘IO 其下载地址:https://brick.kernel.dk/snaps/fio-2.1.10.tar.gz 或者登录其官网:http://freshmeat.sourceforge.net/projects/fio/ 进行下载。 tar -zxvf fio-…

SpringBoot整合Skywalking

下载Java Agent 官网:https://skywalking.apache.org/downloads/ 提示:Agent最好到网上找一找之前的版本,新版本可能有bug,如果出现了并且网上也几乎没有这个版本的解决方法那么就切换之前的版本 本地启动时 -javaagent:d:\opt\…

ABB码垛机器人IRB260通讯板维修

ABB码垛机器人在现代制造业中发挥着重要作用,而机器人通讯板维修对于确保机器人的正常运行至关重要。 通讯板是ABB码垛机器人与控制系统之间进行数据传输的桥梁。它负责接收控制系统的指令,并将机器人的运行数据反馈给控制系统。如果通讯板出现故障&…

郑州永兴牌饲料机械设备厂家

作为专注生产饲料机械设备厂家,郑州永兴不仅拥有完善的生产线和制造工艺,更在技术创新和产品研发方面走在了行业前列。 郑州永兴深知饲料机械设备对于饲料生产的重要性,因此始终坚持以市场需求为导向,不断推陈出新。其生产的饲…

黄金票据~

一. 黄金票据原理 黄金票据一般是伪造的TGT,生成这个TGT,不需要和KDC进行校验,金票可以在本地直接生成,生成的的金票在非域机器和域内机器都可以使用 黄金票据的作用: 可以用来权限维持 可以用来横向移动二. 利用条件 1. 必须…

Docker-compose 编排lnmp(dockerfile) 完成Wordpress

一、部署 Nginx 镜像 1. 建立工作目录 mkdir /opt/lnmp/nginx -pcd /opt/lnmp/nginx#上传 nginx 安装包 nginx-1.12.0.tar.gz#上传 wordpress 服务包 wordpress-4.9.4-zh_CN.tar.gz mkdir /opt/lnmp/nginx/htmltar zxvf wordpress-4.9.4-zh_CN.tar.gz -C /opt/lnmp/nginx/html…

html 使用svg矢量图时无法 调整宽高问题解决,不能像图片一样设置宽高比例问题

引入的路径后加 #svgView(preserveAspectRatio(none)) 具体代码如下 修改前 <img src"/assets/svgs/full_screen_full.svg" class"im"> 修改后 <img src"/assets/svgs/full_screen_full.svg#svgView(preserveAspectRatio(none))" cla…

TypeScript学习(一):开发环境搭建

官方文档搭建参考 https://learn.microsoft.com/zh-cn/training/modules/typescript-get-started/ 1.下载node.js https://nodejs.org/en/download 2.下载vscode https://code.visualstudio.com/ 3.在线ts的测试工具 https://www.typescriptlang.org/play/ 4.下载typescr…

pyqt QAxWidget 读写Excel文件

QaxWidget相比openpyxl 的方式区别是提供了图形界面&#xff0c;excel的输入修改不用再编写代码&#xff0e;activeX技术是个过时的技术&#xff0c;发挥下余热&#xff0e; # -*- coding: utf-8 -*- from PyQt5.QAxContainer import QAxWidget from PyQt5.QtWidgets import …

从人才战略到人才生态,金徽酒高增长的“明线”与“暗线”

执笔 | 文 清 编辑 | 扬 灵 2016年3月&#xff0c;金徽酒于A股上市&#xff0c;全年实现营收12.77亿元。2023年&#xff0c;金徽酒实现营收25.48亿元&#xff0c;比上市当年增加99.5%&#xff0c;近乎翻倍。而当我们深度关注金徽酒&#xff0c;在其业绩高增长的“明线”背…

c语言项目-贪吃蛇项目2-游戏的设计与分析

文章目录 前言游戏的设计与分析地图&#xff1a;这里简述一下c语言的国际化特性相关的知识<locale.h> 本地化头文件类项setlocale函数 上面我们讲到需要打印★&#xff0c;●&#xff0c;□三个宽字符找到这三个字符打印的方式有两种&#xff1a; 控制台屏幕的长宽特性&a…

【前端 - Vue】Vuex基础入门,创建仓库的详细步骤

&#x1f680; 个人简介&#xff1a;6年开发经验&#xff0c;现任职某国企前端负责人&#xff0c;分享前端相关技术与工作常见问题~ &#x1f49f; 作 者&#xff1a;前端菜鸟的自我修养❣️ &#x1f4dd; 专 栏&#xff1a;vue从基础到起飞 &#x1f308; 若有帮助&…

VOC格式标签各个字段的解释

想了解一下VOC格式数据标签各个字段的含义&#xff0c;搜了一圈没看到&#xff0c;懒得去官网了&#xff0c;直接问了GPT-4o&#xff0c;以下回答字段解析来自GPT-4o&#xff0c;例子我自己写的 VOC (Visual Object Classes) 数据标签格式主要用于目标检测任务。VOC格式的标签…

Mybatis01-初识Mybatis

简介 1、 什么是Mybatis MyBatis 是一款优秀的持久层框架; 它支持自定义 SQL、存储过程以及高级映射 MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。 MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO&#xff08;Plain Ol…

AI绘画Stable Diffusion【隐藏文字】:将艺术字隐藏在国风云雾山水图中

大家好&#xff0c;我是灵魂画师向阳 今天我们分享一下用AI绘画工具Stable Diffusion制作网上很火的隐藏文字。这里以将艺术字隐藏在国风云雾山水图为例进行讲解&#xff0c;下面我们就来看看吧。 一. 艺术字隐藏在国风云雾山水图中制作方法 【第一步】&#xff1a;制作底图…

TH方程学习 (7)

一、内容介绍 TH存在广泛应用&#xff0c;在下面案例中&#xff0c;将介绍几种相对运动模型&#xff0c;斜滑接近模型&#xff0c;本节学习斜滑接近制导方法能够对接近时间、接近方向以及自主接近过程的相对速度进行控制。施加脉冲时刻追踪器的位置连线可构成一条直线&#xf…

PostgreSQL专家(pcp51)--王丁丁

#PostgreSQL培训 #postgresql认证 #postgreSQL考试 #PG考试 #PG培训

深入探索AliExpress API接口:技术实现与代码示例

AliExpress API是阿里巴巴集团为开发者提供的一套开放接口&#xff0c;它允许开发者通过编程方式访问AliExpress平台的数据&#xff0c;如商品信息、订单数据、物流信息等。API支持多种编程语言&#xff0c;包括Java、Python、PHP等&#xff0c;同时提供了丰富的API接口和详尽的…