h5后缀文件python处理

这篇具有很好参考价值的文章主要介绍了h5后缀文件python处理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

文件的结构为组+数据集
其中组可以是多级的,类似文件夹的目录关系。

首先打开对应文件:

// An highlighted block
import h5py
import numpy as np
from PIL import Image

h5_file = "D:/GoProEvent/GOPRO/GOPRO/train/GOPR0372_07_00.h5"
file = h5py.File(h5_file, "r")
groups = [key for key in file.keys()]
print("该文件共有以下几组:", groups)

输出结果:
.h5文件怎么打开,python,开发语言,数据分析
用file[‘group’]来“打开对应目录”
如果是多级group可以将相关信息打印出来查看:

// An highlighted block
h5_file = "D:/GoProEvent/GOPRO/GOPRO/train/GOPR0372_07_00.h5"
file = h5py.File(h5_file, "r")
groups = [key for key in file.keys()]
print("该文件共有以下几组:", groups)
a = file['masks']
agroup = [key for key in a.keys()]
print("该文件共有以下几组:", agroup)

输出结果:
.h5文件怎么打开,python,开发语言,数据分析
通过对应的组别名称获取相应的数据:
对数据所在的group进行操作,对应以上代码即‘mask000000000’内获取数据。可以理解为名称为mask000000000的文件内的东西就是你要数据。(这里也可以理解为图像,只不过你需要的不是图像,而是图像内的像素集合)

// An highlighted block
for fg in a:
    print("group:"+fg)
    print(file['masks'][fg][:].shape)
    img = file['masks'][fg][:]
    print(img)

部分输出:
.h5文件怎么打开,python,开发语言,数据分析
得到数据后,利用PIL依赖将数据保存为图片格式。

// An highlighted block
conut = 0
for fg in a:
    print("group:"+fg)
    print(file['masks'][fg][:].shape)
    img = file['masks'][fg][:]
    #print(type(img))
    save_path = 'D:/GoProEvent/masks/' + str(conut) + ".png"
    img = img.swapaxes(0, 1) //调整维度顺序
    img = img.swapaxes(1, 2)
    img = np.squeeze(img)
    print(img.shape)

    img = Image.fromarray(np.uint8(img)).convert("L")//针对单通道处理
    img.save(save_path)
    conut = conut + 1

需要注意的是给出的例子是一个单通道的灰度图。针对图像处理的Image.fromarray()函数貌似只能处理3通道或者是二维数组,所以利用img = np.squeeze(img)对通道数进行了处理。同时需要对初始数据维度进行校准,需要将维度顺序改为 HWC

如果需要对三通道进行处理,修改部分代码为:展示所有代码文章来源地址https://www.toymoban.com/news/detail-556076.html

// An highlighted block
import h5py
import numpy as np
from PIL import Image

h5_file = "D:/GoProEvent/GOPRO/GOPRO/train/GOPR0372_07_00.h5"
file = h5py.File(h5_file, "r")
groups = [key for key in file.keys()]
print("该文件共有以下几组:", groups)
a = file['masks']
conut = 0
for fg in a:
    print("group:"+fg)
    img = file['masks'][fg][:]
    save_path = 'D:/GoProEvent/masks/' + str(conut) + ".png"
    img = img.swapaxes(0, 1)
    img = img.swapaxes(1, 2)
    img = Image.fromarray(np.uint8(img))
    img.save(save_path)
    conut = conut + 1

到了这里,关于h5后缀文件python处理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python 文件处理指南:打开、读取、写入、追加、创建和删除文件

    文件处理是任何Web应用程序的重要部分。Python有多个用于创建、读取、更新和删除文件的函数。 在Python中处理文件的关键函数是open()函数。open()函数接受两个参数:文件名和模式。 有四种不同的方法(模式)可以打开文件: \\\"r\\\" - 读取 - 默认值。打开一个文件以进行读取,如

    2024年02月05日
    浏览(52)
  • CloudCompare插件开发之如何将点云文件打开、处理并显示?

      CloudCompaer是一款优秀的开源软件,在点云处理时可以根据实际要求开发合适的插件,本文需求是将点云文件打开、处理并显示,网上资源可以找到点云简单处理和显示的代码,但对于文件打开的源代码几乎没有,本文通过查阅大量资料和研究源代码实现了点云文件打开,

    2024年02月11日
    浏览(40)
  • Mac应用程序无法打开提示不明开发者或文件损坏的处理方法

      在安装Mac电脑应用程序的时候,经常会遇到“xxx.app已损坏,打不开。您应该将它移到废纸篓“或”打不开的xxx.app,因为它来自身份不明的开发者”,如图:       遇到上述情况是不是真的要移动到废纸篓呢?下面小编就为您带来Mac应用程序无法打开提示不明开发者或文件

    2024年02月08日
    浏览(44)
  • Python打开文件并进行处理,txt、excel、pdf、word!

    在办公处理中,我们常常要打开一些文件,面临大量的数据时,传统的人工方法耗时耗力。在python中,有一系列包装好的库,让我们能够很方便的操作各种类型的文件。当然,python的内置函数也能够很好的打开一些文件。本文主要探讨python打开各类文件的方式。本文介绍的主

    2023年04月08日
    浏览(79)
  • window如何打开 .h5 格式的文件?

    在pycharm里面可以看到.h5文件 但是无法打开。 所以我们可以用以下的方法来解决: 百度网盘打开 链接:https://pan.baidu.com/s/1PbLhK8LfeTSeuFGCYcJeDg  提取码:s1lz 两个都下载。  压缩包解压之后,会出现以下文件,单击.exe 进行安装  然后把下载的 hdfview.bat文件 剪切到安装目录下:

    2024年02月11日
    浏览(32)
  • Python|(解决)苹果mac电脑无法打开“chromedriver”,因为无法验证开发者,要怎么解决?

    前言 我们工作上,很多朋友都是使用的Windows系统电脑,但还是有部分朋友使用的是苹果mac电脑,Windows系统电脑这里不细说,今天好好说下使用苹果mac电脑遇到关于使用selenium的问题。废话不多说,跟着小编直接进入正题。 解决 苹果mac电脑无法打开‘chromedriver’,因为无法验

    2024年02月04日
    浏览(41)
  • 【简单教程】如何用Visual Studio来新建C语言文件(.c后缀)

    前言   用Visual Studio来 配置c语言环境 的方法就不说了,网上有教程,这里放两个不错的教程C语言/C++初学——Visual Studio环境的安装配置与使用 - 知乎 (zhihu.com)VS2019搭建C语言开发环境(图文教程)_vs c语言_DeRoy的博客-CSDN博客 正文  接下来我们开始正文,我们会发现Visual Stud

    2024年02月11日
    浏览(37)
  • 微信公众号H5开发,在微信浏览器打开H5,无法一键下载图片

    微信公众号H5开发,在普通浏览器,可以直接通过以下代码下载图片: 但是在微信浏览器,上面那段代码是无效的,这是微信浏览器的限制。 微信的JS-SDK提供 wx.downloadImage() 的方法,是用来下载图片的。但其实我觉得应该是用来耍猴的。该方法不接受一个 url 参数,而是接受

    2024年02月11日
    浏览(41)
  • python-使用ffmpeg批量修改文件的后缀名

    运行python脚本music.py: 1、win+r:cmd  2、python music.py

    2024年02月21日
    浏览(30)
  • python知识点100篇系列(5) -根据后缀名整理文件夹

    需求来了: 平常用浏览器在互联网下载的文件,一般都在一个“下载”文件夹内,里面的文件什么格式的都有,看着就很乱;所以看能不能给整理一下,这个活python可以干; 解决方案: 思路一、根据文件后缀名,归类文件,相同后缀名,放到同一个文件夹下; 主要用到os模

    2023年04月09日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包