我需要从一个numpy数组中提取这个数据块(假设=" FF D8 E1 46 1D 01 EC 01 00 00")(取自.h5文件)。框架的开头是" FF D8" ,其余部分各不相同。大约有5,00,000个数据以" FF D8" 开头并与其他数据混合。我需要识别序列的开始并将接下来的10个字节保存到文件中。
Code:
import h5py
import numpy as np
import sys
import time
import os
from collections import Counter
hdf5_file_name = r"name.h5"
dataset_name = 'IMG_Data_0'
file = h5py.File(hdf5_file_name,'r+')
dataset = file[dataset_name]
file.visititems(lambda name,obj:print(name, obj)) #to see detailed structure of hdf5 file
print('Length of IMG_Data_0 is: ',len(dataset))
dec_array = data.flatten() # combines multi-dimensional aary to 1D
hex_array = [hex(x)[2:] for x in b] #converts from decimal to hexa decimal
我已经转换为十六进制值。现在我需要提取序列。来自 FF D8 E1 46 1D 01 EC 01 00 00",我需要检查计数器的正确功能, 1D 那就是:我会得到像FF D8 E1 46 1D 01 EC 01 00 00这样的序列 FF D8 E1 46 1D 02 EC 01 00 00 FF D8 E1 46 1D 03 EC 01 00 00 FF D8 E1 46 1D 04 EC 01 00 00计数直至达到1D。 谢谢