Road Hackers百度开源提供智能驾驶H5(h5py)格式文件数据读取说明

本文介绍如何使用Python解析百度开源智能驾驶平台提供的H5格式数据,包括训练集、测试集的数据读取及图片导出,并将训练集结果存入Excel表格。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

博客说明:
博客内容用于学习与分享,有问题欢迎大家讨论留言。

关于作者:
程序员:杨洪(ellende)
blog: http://blog.youkuaiyun.com/ellende
email: yangh.personal@qq.com

转载请注明出处,引用部分网上博客,若有侵权还请作者联系与我。



本文针对百度开源提供的智能驾驶平台H5数据进行读取,通过python解析H5格式文件。


百度数据下载地址:

http://roadhackers.baidu.com/#downloads


下载包含三个文件:训练集数据(4.xG),训练集结果(几兆),测试集数据(5.xG),解压后数据量更大,以下分别进行数据解析说明。


1.训练集结果

#!usr/bin/python
# -*- coding: utf-8 -*-

import cv2
import numpy as np
import h5py
import xlwt
from datetime import datetime


def write_data_to_excel(name,result):

    # 实例化一个Workbook()对象(即excel文件)
    wbk = xlwt.Workbook()
    # 新建一个名为Sheet1的excel sheet。此处的cell_overwrite_ok =True是为了能对同一个单元格重复操作。
    sheet = wbk.add_sheet('Sheet1',cell_overwrite_ok=True)
    # 获取当前日期,得到一个datetime对象如:(2016, 8, 9, 23, 12, 23, 424000)
    today = datetime.today()
    # 将获取到的datetime对象仅取日期如:2016-8-9
    today_date = datetime.date(today)
    # 遍历result中的每个元素。
    for i in xrange(len(result)):
        #对result的每个子元素作遍历,
        for j in xrange(len(result[i])):
            #将每一行的每个元素按行号i,列号j,写入到excel中。
            sheet.write(i,j,result[i][j])
    # 以传递的name+当前日期作为excel名称保存。
    wbk.save(name+str(today_date)+'.xls')


f = h5py.File('D:\\AllDownloadFiles\\train-result-119\\119.h5', 'r')
dset = f[f.keys()[0]] #f.keys()只有一个键值:u'attrs'
data = np.array(dset[:,:])

# 数据写入excel表格
write_data_to_excel('D:\\AllDownloadFiles\\train-result-119\\', data);



存入到excel表格中,数据格式如下:



2.训练集数据

#!usr/bin/python
# -*- coding: utf-8 -*-

import cv2
import numpy as np
import h5py
import xlwt

def saveOnePic(fh, data_type, save_dir):
    #data_type = "%.3f" % float(index_num)
    dset = fh[data_type]
    data = np.array(dset[:,:,:])

    # 存储一个图片
    filePath = save_dir+'\\'+data_type+'.jpg'
    cv2.imwrite(filePath, data)


if __name__=="__main__":
    f = h5py.File('D:\\AllDownloadFiles\\train-data-119\\119.h5', 'r')

    max_num = 100
    file_len = len(f.keys())

    for index in range(0,max_num-1):
        if index < file_len:
            index_type = f.keys()[index]
            saveOnePic(f, index_type, 'D:\\AllDownloadFiles\\train-data-119')


max_num限制最大个数,可以修改大小。

下面是解析出来的图片:






3.测试集数据

#!usr/bin/python
# -*- coding: utf-8 -*-

import cv2
import numpy as np
import h5py
import xlwt

def saveOnePic(fh, data_type, save_dir):
    #data_type = "%.3f" % float(index_num)
    dset = fh[data_type]
    data = np.array(dset[:,:,:])

    # 存储一个图片
    filePath = save_dir+'\\'+data_type+'.jpg'
    cv2.imwrite(filePath, data)



if __name__=="__main__":
    f = h5py.File('D:\\AllDownloadFiles\\test-part01.h5\\testfile_part01.h5', 'r')

    max_num = 100
    file_len = len(f.keys())
    
    for index in range(0,max_num-1):
        if index < file_len:
            index_type = f.keys()[index]
            saveOnePic(f, index_type, 'D:\\AllDownloadFiles\\test-part01.h5')



max_num限制最大个数,可以修改大小。

下面是解析出来的图片:






解析完成,后面就可以用这些图片数据进行算法开发了,加油吧~





前言: 智能运动手环是可穿戴设备的一个主要发展方向,国内外均有产品面世。其使用方式为腕部佩戴(可以有其它变种佩戴形式),基本功能为运动记录、睡眠质量检测、时间显示和静音闹钟、与智能手机的配合产生的实用功能(如来电提醒、手机防丢、一键拍照和解锁等)。 百度智能运动手环硬件方案总体介绍: 百度智能手环基于Nordic公司nRF51822芯片开发,芯片集成BLE蓝牙4.0协议。使用LIS3DH作为加速度传感器,进行运动和睡眠监测。 手环硬件电路设计部分包括: 蓝牙射频电路; 使用SPI接口的G-sensor; 使用 I2C接口的线性马达驱动电路; 使用I2C接口的LED点阵驱动,与线性马达共用总线; 使用 GPIO的按键输入; 使用 GPIO的LED 灯; 使用 GPIO的普通马达驱动电路; 外部复位电路; 如截图: 百度智能手环电路原理图截图: 百度智能运动手环设计方案成功案例如下: 1.TCL BOOM Band 这是TCL基于百度智能手环方案打造的产品,于2014年1月上市。有运动计步、睡眠监测,来电提醒、蓝牙防丢等功能。 视频展示: 2.OPPO O band OPPO O band,OPPO基于百度智能手环方案打造,于2014年6月上市。采用了LED点阵,并且增加了智能拍照功能 视频展示: 智能手环相关设计项目:小米智能手环设计分享(原理图+源代码+制作教程等) 附件内容包括: 智能手环电路原理图和PCB PDF档、元器件清单、硬件设计详细讲解; ROM源码、ROM烧录工具、百度智能手环ROM设计详细讲解; 匹配的手机App及云存储和服务等; 百度智能手环蓝牙私有通信协议;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值