编程语言   发布时间:2022-06-22  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了学习汇报 2022-05-26大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

学习汇报 2022-05-26

数据集制作

  • 将CSV文件按ShapeNet数据集格式保存为txt文件
clc
clear
%% csv数据保存为mat
filename=dir('D:lEIDashujilidar_labelcodecsvdata*.csv');
for i=1:length(fileName)
csvname=[filename(i,1).folder '' filename(i,1).name];
csvdata{i} = readmatrix(csvName);
data_orgin{i}(:,1:3) =csvdata{i}(:,1:3);
data_orgin{i}(:,4:6) =csvdata{i}(:,6:8);
data_orgin{i}(:,7) =csvdata{i}(:,4);
numPoint(i)=length(data_orgin{i});
pointcloud{i}=pointCloud(data_orgin{i}(:,1:3));
end
%%
for i=1:length(fileName)
a=data_orgin{i};
path='D:lEIDashujilidar_labelcodemat_data';
name=['lidar_',num2str(i)];
name1=['lidar_',num2str(i),'.txt'];
path_name{i}=fullfile(path,Name);
path_name1{i}=fullfile(path,name1);
save (path_name{i}, 'a');
save (path_name1{i},'a','-ascii')
end

学习汇报 2022-05-26

  • 划分训练集,测试集,验证集
clc
clear
path='shape_data/02691156/';
filename_Train=dir('D:lEIDashujilidar_labelcodelidar_data2691156*.txt');%加载文件路径
Train_num=0.7;
test_num=0.2;
val_num=0.1;%划分数据集比例
r=1:length(filename_Train);
randIndex = randperm(size(r,2));%生成随机种子
r=r(:,randIndeX);
Train_list=[];
test_list=[];
val_list=[];
%将数据集按比例进行划分
for i=1:fix(Train_num*length(filename_Train))
Train_list=[Train_list,'"' path 'lidar_' num2str(r(i)) '", '];
end
for i=fix(Train_num*length(filename_Train))+1:fix(Train_num*length(filename_Train))+...
    fix(test_num*length(filename_Train))
test_list=[test_list,'"' path 'lidar_' num2str(r(i)) '", '];
end
for i=fix(Train_num*length(filename_Train))+fix(test_num*length(filename_Train))+1:length(filename_Train)
val_list=[val_list,'"' path 'lidar_' num2str(r(i)) '", '];
end
  • 将生成的test_list,Train_list,val_list保存为.json文件

@H_489_31@

测试训练

  • 将分类标签进行更改
seg_classes = {'road': [1,2,3]}#road代表大类名称,[1,2,3]代表属于该大类的标签数值
  • Train_partseg设置数据加载根目录
root = 'data/lidar_data/'#数据根目录
TraiN_DATASET = PartNormalDataset(root=root, npoints=args.npoint, split='Trainval', normal_chAnnel=args.normal)
TrainDataLoader = torch.utils.data.DataLoader(TraiN_DATASET, batch_size=args.batch_size, shuffle=True, num_workers=10, drop_last=TruE)
test_DATASET = PartNormalDataset(root=root, npoints=args.npoint, split='test', normal_chAnnel=args.normal)
testDataLoader = torch.utils.data.DataLoader(test_DATASET, batch_size=args.batch_size, shuffle=false, num_workers=10)
  • 在ShapeNetDataLoader中设置数据路径
def __init__(self,root = 'Pointnet_Pointnet2_pytorch-master-0524datalidar_data', npoints=2500, split='Train', class_choice=None, normal_chAnnel=falsE):
self.meta = {}
        with open(os.path.join(self.root, 'Train_test_split', 'Train.json'), 'r') as f:
            Train_ids = set([str(d.split('/')[2]) for d in json.load(f)])
        with open(os.path.join(self.root, 'Train_test_split', 'val.json'), 'r') as f:
            val_ids = set([str(d.split('/')[2]) for d in json.load(f)])
        with open(os.path.join(self.root, 'Train_test_split', 'test.json'), 'r') as f:
            test_ids = set([str(d.split('/')[2]) for d in json.load(f)])
        for item in self.cat:
  • 训练结果

存在的问题

  1. 训练结果的可视化

大佬总结

以上是大佬教程为你收集整理的学习汇报 2022-05-26全部内容,希望文章能够帮你解决学习汇报 2022-05-26所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。