做展示型企业网站仿牌外贸网站推广

diannao/2026/1/23 9:26:36/文章来源:
做展示型企业网站,仿牌外贸网站推广,骏域网站建设,体育评论做的好的网站目录 一、平台 二、数据 三、代码 3.1 文件组织结构 3.2 lasDataLoader.py 读取数据 3.3 修改原始模型的通道数量 3.4 lasTrainSS.py【训练】 3.5 lasTestSS.py【预测】 一、平台 Windows 10 GPU RTX 3090 CUDA 11.1 cudnn 8.9.6 Python 3.9 Torch 1.9.1 cu111…目录 一、平台 二、数据 三、代码 3.1 文件组织结构 3.2 lasDataLoader.py 读取数据 3.3 修改原始模型的通道数量 3.4 lasTrainSS.py【训练】 3.5 lasTestSS.py【预测】 一、平台 Windows 10 GPU RTX 3090 CUDA 11.1 cudnn 8.9.6 Python 3.9 Torch 1.9.1 cu111 所用的原始代码https://github.com/yanx27/Pointnet_Pointnet2_pytorch 二、数据 有Classification属性的已经分类的LAS点云 三、代码 分享给有需要的人代码质量勿喷。 对原始代码进行了简化和注释。 分割结果保存成txt或者利用 laspy 生成点云。 别问为啥在C盘问就是2T的三星980Pro 完整代码https://download.csdn.net/download/xinjiang666/88755213?spm1001.2014.3001.5501 3.1 文件组织结构 3.2 lasDataLoader.py 读取数据 # 6通道特征块相对坐标全局相对坐标有效果# ### 分类的类别 classNumber 2 #0-未分类1-路面# 训练用 class lasDataset(Dataset):def __init__(self, splittrain, data_rootdataset, train_ratio0.6,val_ratio0.2,test_ratio0.2, num_point1024, block_size1.0, sample_rate1.0, transformNone):# 局部坐标XYZ(m) rgbpoints np.transpose(np.array([las.X*lasHeader.scales[0],las.Y*lasHeader.scales[1],las.Z*lasHeader.scales[2],las.red,las.green,las.blue]))self.las_points.append(points)coordMIN, coordMAX np.amin(points, axis0)[:3], np.amax(points, axis0)[:3]self.las_coord_MIN.append(coordMIN), self.las_coord_MAX.append(coordMAX)# labellabels np.transpose(np.array([las.classification]))labels[labels 11] 1self.las_labels.append(labels)num_point_all.append(labels.size)# 标签的统计直方图tmp, _ np.histogram(labels, range(classNumber 1))labelweights tmpdef __getitem__(self, idx):las_idx self.las_idxs[idx]points self.las_points[las_idx] # N * 6labels self.las_labels[las_idx] # NN_points points.shape[0]# # normalize old 9通道特征# selected_points points[selected_point_idxs, :] # num_point * 6# current_points np.zeros((self.num_point, 9)) # num_point * 9# current_points[:, 6] selected_points[:, 0] / self.las_coord_MAX[las_idx][0]# current_points[:, 7] selected_points[:, 1] / self.las_coord_MAX[las_idx][1]# current_points[:, 8] selected_points[:, 2] / self.las_coord_MAX[las_idx][2]# selected_points[:, 0] selected_points[:, 0] - center[0] # 相对块中心的x# selected_points[:, 1] selected_points[:, 1] - center[1] # 相对块中心的y# selected_points[:, 3:6] / 255.0# current_points[:, 0:6] selected_points# region ### normalize 6通道特征块相对坐标全局相对坐标无颜色selected_points points[selected_point_idxs, 0:3] # num_point * 3block_points points[selected_point_idxs, 0:3]block_points[:, 0] selected_points[:, 0] - center[0] # 相对块中心的xblock_points[:, 1] selected_points[:, 1] - center[1] # 相对块中心的yblock_points[:, 2] selected_points[:, 2]current_points np.zeros((self.num_point, 6)) # num_point * 6current_points[:, 0:3] block_pointscurrent_points[:, 3] (selected_points[:, 0]-self.las_coord_MIN[las_idx][0]) / (self.las_coord_MAX[las_idx][0]-self.las_coord_MIN[las_idx][0])current_points[:, 4] (selected_points[:, 1]-self.las_coord_MIN[las_idx][1]) / (self.las_coord_MAX[las_idx][1]-self.las_coord_MIN[las_idx][1])current_points[:, 5] (selected_points[:, 2]-self.las_coord_MIN[las_idx][2]) / (self.las_coord_MAX[las_idx][2]-self.las_coord_MIN[las_idx][2])# endregion# 测试用 class testDatasetToPred():# prepare to give prediction on each pointsdef __init__(self, data_root, block_points1024, splittest, stride0.5, block_size1.0, padding0.001):for file in self.file_list:# las文件的绝对路径pathLAS os.path.join(data_root, file)# 读取文件ndarrya:点数量7(xyz rgb l)las laspy.read(pathLAS)# 头文件信息 偏移和尺度lasHeader las.headerself.las_offset.append(lasHeader.offsets), self.las_scales.append(lasHeader.scales)# 局部坐标XYZ(m) rgb 真实标签data np.transpose(np.array([las.X * lasHeader.scales[0], las.Y * lasHeader.scales[1], las.Z * lasHeader.scales[2],las.red,las.green,las.blue, las.classification])) # ndarray点数量,7# 局部坐标XYZ(m)points data[:, :3]coordMIN, coordMAX np.amin(points, axis0)[:3], np.amax(points, axis0)[:3]self.las_coord_MIN.append(coordMIN), self.las_coord_MAX.append(coordMAX)self.scene_points_list.append(data[:, :6])# 真实标签labels data[:, 6]labels[labels 11] 1self.semantic_labels_list.append(labels)def __getitem__(self, index):for index_x in range(0, grid_x):# region ### 6通道特征块相对坐标全局相对坐标无颜色data_batch[:, 0] data_batch[:, 0] - (s_x self.block_size / 2.0)data_batch[:, 1] data_batch[:, 1] - (s_y self.block_size / 2.0)normlized_xyz np.zeros((point_size, 3))temp points[point_idxs, :]normlized_xyz[:, 0] (temp[:, 0]-coordMIN[0]) / (coordMAX[0]-coordMIN[0])normlized_xyz[:, 1] (temp[:, 1]-coordMIN[1]) / (coordMAX[1]-coordMIN[1])normlized_xyz[:, 2] (temp[:, 2]-coordMIN[2]) / (coordMAX[2]-coordMIN[2])### 6通道特征组合data_batch np.concatenate((data_batch[:,0:3], normlized_xyz), axis1)#endregion 3.3 修改原始模型的通道数量 pointnet_sem_seg.pyclass get_model(nn.Module):def __init__(self, num_class):super(get_model, self).__init__()self.k num_classself.feat PointNetEncoder(global_featFalse, feature_transformTrue, channel6) ###6通道特征 pointnet2_sem_seg.pyclass get_model(nn.Module):def __init__(self, num_classes):super(get_model, self).__init__()self.sa1 PointNetSetAbstraction(1024, 0.1, 32, 6 3, [32, 32, 64], False)### 6代表输入网络的通道数量 3.4 lasTrainSS.py【训练】 # 参考 # https://github.com/yanx27/Pointnet_Pointnet2_pytorch # 先在Terminal运行python -m visdom.server # 再运行本文件# True为PointNet PN2bool True # PN2bool False# 当前文件的路径 ROOT_DIR os.path.dirname(os.path.abspath(__file__))# 输出 PointNet训练模型的路径: PointNet dirModel1 ROOT_DIR /trainModel/pointnet_model if not os.path.exists(dirModel1):os.makedirs(dirModel1) # 输出 PointNet训练模型的路径 dirModel2 ROOT_DIR /trainModel/PointNet2_model if not os.path.exists(dirModel2):os.makedirs(dirModel2)# 日志的路径 pathLog os.path.join(ROOT_DIR, LOG_train.txt)# 训练数据集的路径 pathDataset os.path.join(ROOT_DIR, dataset/lasDatasetClassification/)# 点云语义分割的类别名称这里只分了2类 classNumber 2 classes [un, rs] class2label {cls: i for i, cls in enumerate(classes)} seg_classes class2label seg_label_to_cat {} for i, cat in enumerate(seg_classes.keys()):seg_label_to_cat[i] cat 3.5 lasTestSS.py【预测】 # 参考 # https://github.com/yanx27/Pointnet_Pointnet2_pytorch# True为PointNet PN2bool True # PN2bool False# save to LAS import laspy def SaveResultLAS(newLasPath, las_offsets, las_scales,point_np, rgb_np, label1, label2):# datanewx point_np[:, 0]las_offsets[0]newy point_np[:, 1]las_offsets[1]newz point_np[:, 2]las_offsets[2]newred rgb_np[:, 0]newgreen rgb_np[:, 1]newblue rgb_np[:, 2]newclassification label1newuserdata label2minx min(newx)miny min(newy)minz min(newz)# create a new headernewheader laspy.LasHeader(point_format3, version1.2)newheader.scales np.array([0.0001, 0.0001, 0.0001])newheader.offsets np.array([minx, miny, minz])newheader.add_extra_dim(laspy.ExtraBytesParams(nameClassification, typenp.uint8))newheader.add_extra_dim(laspy.ExtraBytesParams(nameUserData, typenp.uint8))# create a Lasnewlas laspy.LasData(newheader)newlas.x newxnewlas.y newynewlas.z newznewlas.red newrednewlas.green newgreennewlas.blue newbluenewlas.Classification newclassificationnewlas.UserData newuserdata# writenewlas.write(newLasPath)# 当前文件的路径 ROOT_DIR os.path.dirname(os.path.abspath(__file__))# 模型的路径 pathTrainModel os.path.join(ROOT_DIR, trainModel/pointnet_model) if PN2bool:pathTrainModel os.path.join(ROOT_DIR, trainModel/PointNet2_model)# 预测结果路径 visual_dir ROOT_DIR /testResultPN/ if PN2bool:visual_dir ROOT_DIR /testResultPN2/ visual_dir Path(visual_dir) visual_dir.mkdir(exist_okTrue)# 日志的路径 pathLog os.path.join(ROOT_DIR, LOG_test_eval.txt)# 测试数据的路径 pathDataset os.path.join(ROOT_DIR, dataset/lasDatasetClassification2/)# 点云语义分割的类别名称这里只分了2类 classNumber 2 classes [un, rs] class2label {cls: i for i, cls in enumerate(classes)} seg_classes class2label seg_label_to_cat {} for i, cat in enumerate(seg_classes.keys()):seg_label_to_cat[i] cat

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/88988.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

镇江网站制作费用电商系统服务好的商家

【QT 5 调试软件Linux下验证>>>>串口相关初试串口参考win下历程基础样例】 1、前言2、实验环境3、先行了解4、自我总结-win下工程切到Linux下1、平台无关的代码:2、依赖的库:3、文件路径和换行符:4、编译器差异:5、构…

网站模板如何优化下列不属于网站建设规划

交换文件 *.swp 格式 同时是隐藏的 如在vim一个文件, 在没有正常退出, 如直接断开连接 在次编辑这个文件 会出现下图的错误 解决方案: 直接删除这个交换文件即可 rm -fr .zen.txt.swp

增加网站点击量黑龙江建设厅官网

Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes提供了应用部署,规划,更新,维护的一种机制。 Kubernetes一个核心的特点就是能够自主…

东莞做公众号的网站wordpress文章序号排列

##人生苦短,我用python #pandas ##首先讲讲数据格式,csv文件格式,程序之间表格数据之间的转移,如从数据库导入到excel中csv是很合适的转移格式。 #1.纯文本,使用某个字符集,比如ascii,Unicode&a…

机械制造设备类企业网站织梦模板wordpress手机展示

通过一些实际项目的开发,发现这样一个现象,在 Windows 下可以通过指定 __declspec(dllexport) 定义来控制 DLL(动态链接库)中哪些函数可以导出,暴露给其他程序链接使用,哪些函数是 DLL 内部自己使用&#x…

网络购物网站备案山西众邦建设集团网站

1、简述 UDP是无连接的,在UDP传输层中并没有客户端和服务端的概念。但是可以在应用层定义客户端和服务端,可以灵活的互换客户端和服务端,或者同时既是客户端也是服务端。 HP-Socket中在应用层定义了四种UDP组件:UdpClient、UdpS…

做百度微信小程序都有哪些网站有域名有空间怎么做网站

FastReport VCL报表控件是著名的 Delphi 打印控件。含全部源码。支持 Delphi 10.2 Tokyo,FastReport可以在大量的方式报表的创建过程中操纵对象。快速发展的报表和随后的打印,这样的优点,正如预览打印文档的外观。专业版除了报表标准版的功能…

网站制作公司套路网站建设制作介绍河南

2.5.6.22021.10.13支持自定义列字体颜色,具体见PR#342,感谢xiangxiren修复日期格式化的问题,具体见PR#344,感谢ccccccmd2.5.6.12021.10.06修复 #337,bool?类型导出的映射问题2.5.6.02021.10.05合并Magicodes.EPPlus到…

西安专业的网站优化好口碑自适应网站建设

引用:MyBatis的删除、修改、插入操作!!!-CSDN博客的准备工作!!!(准备工作都一样只不过文件名称有所不同) 1.利用原始DAO开发,查询所有的信息。 UserDao&#…

百度竞价找谁做网站企业网站开发工具

卷筒纸不干胶印刷时,纸张的走向与一般印刷方法不同,它是以轴向跳格移动实现套印的,即在印版滚筒上同时装上几套印版,当不干胶在压印平台上每跳移一次,印版滚筒水平方向作往复旋转一次,就可实现印刷一个颜色…

做网站美工的前途怎么样企业管理软件市场规模

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 前言 接上文。 一、1月10号 牛客网公司真题_免费模拟题库_企业面试|笔试真题 1、题目1 …

国外代码开源网站网页制作与网站开发

云计算如今已经变得无处不在,并显著影响着日常生活的各个方面。然而,重要的是要注意云计算技术是不断发展的。最近向远程工作的转变促使企业加快数字化转型,更多地采用云计算服务。 即使在新冠疫情消退之后,云计算技术的采用也获得…

南通做网站优化网站建设一般多少

背景 众所周知,近几年国内用户在访问Github时,经常间歇性无法访问Github。 接下来推荐几款 作为程序员不得不知道的Github加速神器。 推荐1:FastGithub FastGithub是一款Github加速神器,解决github打不开、用户头像无法加载、r…

国外设计网站app吗昆明优秀网站

当应用调用CameraManager#openCamera获取到已打开的camera设备后,会调用createCaptureSession方法来完成camera stream创建和stream的相关配置。在createCaptureSession方法中,首先将应用的surfaces信息封装成可跨binder传递的OutputConfiguration对象&a…

乐清开发网站公司青岛工程建设管理信息网官方网站

题意: 给定前序遍历和中序遍历,问u和v的lca (先是中序,后是中序) 题解: 方法一: 参考题解 将树映射到一颗BST上,在BST上找到答案然后再映射回原本的树 方法二: 参考题…

番禺核酸检测点查询哈尔滨网站seo公司

目录 一、前言 二、通过类型来获取Bean 0.总述(重要) : 1.基本介绍 : 2.应用实例 : 三、通过指定构造器为Bean注入属性 1.基本介绍 : 2.应用实例 : 四、通过p命名空间为Bean注入属性 1.基本介绍 : 2.应用实例 : 五、通过ref引用实现Bean的相…

dw怎么切片做网站龙岗网站

目录 一、Ajax 1、简介 2、Axios (没懂 暂留) (1)请求方式别名 (2)发送get请求 (3)发送post请求 (4)案例 二、前端工程化 1、Vue项目-目录结构 2、…

举报不良网站信息怎么做网站开发 后端

本文主要介绍的是一个球形水波的百分比控件,市面上有各种形形色色的百分比控件,我一直觉得水波是最炫的,UI给了我这个机会,然而网上搜了一大堆,不是太复杂,代码太多(反正我是调不出效果来),就是…

中国网站开发哪里可以做企业网站

破解root密码(Linux 7) 1、先重启——e 2、Linux 16这一行 末尾加rd.break(不要回车)中断加载内核 3、再ctrlx启动,进入救援模式 4、mount -o remount,rw /sysroot/——(mount挂载 o——opti…

安亭网站建设建阳建设局网站

之前那篇博客是在入门网络流时写的&#xff0c;现在对网络流重新有了一定的理解。 1. 最大流 FF 增广思想 Ford–Fulkerson 增广&#xff0c;核心即不断找增广路并增广。 dfs 实现 // FF brute #include <bits/stdc.h> #define int long longusing namespace std;in…