PV-RCNN代码应用——二进制文件统计点云数据范围

#-*- coding: UTF-8 -*- 
# 读取数据 bin 文件

import os
import struct

def read_data(file):
    file_path = file_dir+"/"+file
    final_text = open('final.txt', 'a')
    data_bin = open(file_path, 'rb')
    data_size = os.path.getsize(file_path)
    for i in range(data_size):
        for index in range(4):
            data_i = data_bin.read(4) # 每次输出4个字节 
            if len(data_i)== 4:
                num = struct.unpack('f', data_i)
                max_list[index].append(num[0]) #记录最大值
                min_list[index].append(num[0]) #记录最小值
    write = file +'\t'
    for index in range(4):
        max_list[index] = [max(max_list[index])] #最大列表中只保留最大值
        min_list[index] = [min(min_list[index])] #最小列表中只保留最小值
        write += str(max_list[index][0]) +'\t'+ str(min_list[index][0])+'\t' #输出目前的最大最小值
    print(write)
    final_text.write(write +'\n') #储存
    data_bin.close()
    final_text.close()

file_dir = '/opt/data/private/pseudo-lidar_velodyne' #文件夹目录

files = os.listdir(file_dir) #得到文件夹下的所有文件名称

max_list = [[620.970458984375],[278.865478515625],[1.0],[1.0]]
min_list = [[2.3114852905273438],[-534.9176635742188],[-101.55160522460938],[1.0]] #004231.bin	
							
for file in files: #遍历文件夹
    read_data(file)

我的其他PV-RCNN代码应用系列文章,如果对你有帮助的话,请给我点赞哦~
PV-RCNN环境配置
PV-RCNN代码应用——更改测试集文件
PV-RCNN代码应用——参数修改
PV-RCNN代码应用——二进制文件统计点云数据范围

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PV-RCNN(Point-Voxel-Region-based Convolutional Neural Network)是一种用于点云目标检测的神经网络模型,其主要思想是将点云数据转换为体素(Voxel)表示,通过将点云划分为不同的体素,将点云数据转换为体素特征图,然后通过卷积神经网络提取特征,最后使用区域建议网络(Region Proposal Network,RPN)和ROI池化层进行目标检测。 PV-RCNN代码解读主要可以从数据预处理、网络模型构建和训练步骤三个方面进行说明。 首先,在数据预处理阶段,代码会先将原始的点云数据转换为体素表达。将点云数据进行体素化可以提高计算效率,同时也有利于在三维空间中建模目标。其次,代码会对体素进行特征提取,通过卷积神经网络对体素特征图进行卷积和池化操作,从而得到更具有表达能力的特征表示。 其次,在网络模型构建阶段,代码会搭建PV-RCNN的网络结构,包括体素特征提取网络和目标检测网络。体素特征提取网络通常采用多层卷积神经网络,用于提取点云体素的特征表示。目标检测网络则包括RPN和ROI池化层,用于生成目标的候选框,并对候选框进行分类和回归。 最后,在训练步骤中,代码会使用已标注的点云数据进行网络模型的训练。通常采用交叉熵损失函数进行分类损失计算,并使用边界框回归损失函数计算位置预测的误差。通过反向传播和优化算法,更新网络参数,使网络能够更好地适应目标检测的任务。 通过对PV-RCNN代码的解读,我们可以更深入地理解其工作原理和实现方式,从而更好地应用点云目标检测的研究和实践。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值