自制数据集:点云变化

文章目录

  • 说明
  • 代码

说明

在干净的点云数据集中加入噪声时,由于不同点云的尺寸不同,很难控制噪声的幅度。为此,需要将所有点云变换到 [ − 0.5 , 0.5 ] 3 [-0.5,0.5]^3 [0.5,0.5]3的空间当中。如下图所示是两张示意图:

原始点云图处理完点云图
ImageImage
原始点云图处理完点云图
ImageImage

代码

下面是一种将点云数据集中的所有点云变换到 [ − 0.5 , 0.5 ] 3 [-0.5,0.5]^3 [0.5,0.5]3空间的有效Python代码:

import numpy as np
import open3d as o3d

def normalize_point_cloud(point_cloud):
    # 获取点云的最大最小坐标值
    min_coords = np.min(point_cloud, axis=0)
    max_coords = np.max(point_cloud, axis=0)
    
    # 计算缩放因子
    scale_factor = np.max(max_coords - min_coords)
    
    # 将点云减去最小坐标值并除以缩放因子,以将其映射到[0, 1]范围内
    normalized_point_cloud = (point_cloud - min_coords) / scale_factor
    
    # 将点云范围从[0, 1]映射到[-0.5, 0.5]
    normalized_point_cloud = normalized_point_cloud - 0.5
    
    return normalized_point_cloud

cloud = o3d.io.read_point_cloud("path_to_input_data")
cloud_xyz = np.asarray(cloud.points)
cloud_nrm = np.asarray(cloud.normals)

# 居中和归一化点云  
cloud_xyz_normalized = scale_point_cloud(cloud_xyz)  
cloud_out = o3d.geometry.PointCloud()
cloud_out.points = o3d.utility.Vector3dVector(cloud_xyz_normalized)
cloud_out.normals = o3d.utility.Vector3dVector(cloud_nrm)

o3d.io.write_point_cloud("path_to_output_data", cloud_out)

这个代码片段中的point_cloud参数是一个形状为(N, 3)的NumPy数组,其中N是点的数量,每个点由三个坐标表示。代码先计算点云的最大和最小坐标值,然后根据这些值来缩放和平移点云,从而将其范围映射到 [ − 0.5 , 0.5 ] 3 [-0.5,0.5]^3 [0.5,0.5]3空间。你可以将这个函数应用于你的点云数据集,以实现将所有点云变换到指定空间的目的。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CSS时间线样式

css实现时间线样式,效果如下图: 一、CSS代码 .timeline {padding-left: 5px} .timeline-item { position: relative;padding-bottom: 20px;} .timeline-axis {position: absolute;left: -5px;top: 0;z-index: 10;width: 20px;height: 20px;line-he…

企业实施MES管理系统会增加哪些工作量

随着制造业的快速发展,越来越多的企业开始关注如何通过技术手段提高生产效率和质量。MES管理系统作为支撑企业生产管理的关键系统,受到很多企业的青睐。然而,对于是否部署MES管理系统,很多企业存在顾虑,担心其会增加工…

Git系列之Git入门级(带你走进Git的世界)

🎉🎉欢迎来到我的CSDN主页!🎉🎉 🏅我是君易--鑨,一个在CSDN分享笔记的博主。📚📚 🌟推荐给大家我的博客专栏《Git实战开发》。🎯🎯 &a…

YARN实战学习笔记

文章目录 YARN的由来YARN架构分析YARN资源管理模型YARN中的调度器案例:YARN多资源队列配置和使用 YARN的由来 从Hadoop2开始,官方把资源管理单独剥离出来,主要是为了考虑后期作为一个公共的资源管理平台,任何满足规则的计算引擎都…

jsonlite库编写代码示例

r # 导入jsonlite库 library(jsonlite) # 设置主机和端口 proxy_host <- proxy_port <- # 使用httr库创建一个对象 proxy <- create_proxy(proxy_host, proxy_port) # 使用httr库的GET方法下载网页内容 url <- "" response <- GET(url, proxy pr…

这份华为以太网接口配置命令太真香了!

【赠送】IT技术视频教程&#xff0c;白拿不谢&#xff01;思科、华为、红帽、数据库、云计算等等_厦门微思网络的博客-CSDN博客文章浏览阅读415次。风和日丽&#xff0c;小微给你送福利~如果你是小微的老粉&#xff0c;这里有一份粉丝福利待领取...如果你是新粉关注到了小微&am…

windows搭建本地MySQL服务

windows搭建本地MySQL服务 一、下载MySQL安装包 安装包地址 注意&#xff1a;别登录注册了&#xff0c;麻烦&#xff0c;直接下载&#xff01; 二、安装和配置 解压到喜欢的路径&#xff1a; 在MySQL包的根路径新建一个文件&#xff1a; 里面写啥呢&#xff1f;写配置呗 注…

达梦数据库-Win10安装

目录结构 前言达梦数据库达梦数据库适用场景达梦数据库 PK MySQL达梦数据库安装数据库下载解压下载的压缩文件安装详细步骤安装关键节点配置 DM管理工具启动DM管理工具DM管理工具连接达梦数据库 参考链接 前言 达梦数据库Win10系统安装整理&#xff1b; 达梦数据库 达梦数据库…

6.3二叉树的层序遍历(LC102,LC107-M)

二叉树的层序遍历&#xff08;LC102&#xff09;&#xff1a; 算法&#xff08;长度法&#xff09;&#xff1a; 需要借用一个辅助数据结构即队列来实现&#xff0c;队列先进先出&#xff0c;符合一层一层遍历的逻辑&#xff0c;而用栈先进后出适合模拟深度优先遍历也就是递归…

小型企业如何数字化转型?ZohoCRM助力小企业转型

小型企业数字化之路倍加艰难&#xff0c;其组织规模有限、资源有限&#xff0c;数字化布局或转型&#xff0c;也存在与数字平台匹配度的问题。其实小型企业可以通过CRM客户管理系统实现高效的客户关系管理&#xff0c;进一步提高市场竞争力。 建立高效易用的客户关系管理系统 …

程序员这个职业会在10年内被AI淘汰吗?

我认为程序员这个职业不会被AI淘汰&#xff0c;但程序员的工作内容会发生翻天覆地的变化。 回望历史的进程你就明白了&#xff1a;当纺纱机的出现带来了第一次工业革命&#xff0c;传统的纺织厂女工们陆续失业&#xff0c;但纺纱机并没有消失&#xff0c;而操作纺纱机的女工们…

带有密码的Excel只读模式,如何取消?

Excel文件打开之后发现是只读模式&#xff0c;想要退出只读模式&#xff0c;但是只读模式是带有密码的&#xff0c;该如何取消带有密码的excel只读文件呢&#xff1f; 带有密码的只读模式&#xff0c;是设置了excel文件的修改权限&#xff0c;取消修改权限&#xff0c;我们需要…

【MATLAB】设置图形透明度

1 Scatter散点图 % 设置散点大小 s.SizeData 100;散点标记符号设置如下&#xff1a; 在绘制散点图时&#xff0c;想设置透明度&#xff1a; 更改散点透明度后&#xff0c;图形如下&#xff1a; 相关绘图代码如下&#xff1a; figure(1) set(gcf, Units, figureUnits, Po…

Spring源码系列-框架中的设计模式

简单工厂 实现方式&#xff1a; BeanFactory。Spring中的BeanFactory就是简单工厂模式的体现&#xff0c;根据传入一个唯一的标识来获得Bean对象&#xff0c;但是否是在传入参数后创建还是传入参数前创建这个要根据具体情况来定。 实质&#xff1a; 由一个工厂…

为什么OpenAPI是未来企业数字化转型的决定性因素

随着数字经济不断发展升级&#xff0c;数据互通、万物互联正在逐步成为IT产业发展的主旋律&#xff0c;企业数字化转型也变得愈发紧迫。越来越多的企业都在数字化转型过程中寻求降本增效、加大创新力度、开展生态合作&#xff0c;以此来提高企业和产品的持续竞争力。而OpenAPI则…

漏洞复现--奇安信360天擎未授权访问

免责声明&#xff1a; 文章中涉及的漏洞均已修复&#xff0c;敏感信息均已做打码处理&#xff0c;文章仅做经验分享用途&#xff0c;切勿当真&#xff0c;未授权的攻击属于非法行为&#xff01;文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直…

fastadmin 表单页面,根据一个字段的值显示不同字段

表单中有计费方式&#xff0c;选中不同的计费方式显示不同的字段如下图 根据选择不同的计费方式&#xff1a;重量或夹板。展示不同相关字段&#xff1a;每件重量/每夹板件数量 add.html <div class"form-group"><label class"control-label col-xs-12…

班级新闻管理系统asp.net+sqlserver

班级新闻管理系统 附加功能 新闻图片&#xff0c;点击次数访问自增&#xff0c;每个人都只能增删改查自己发布的新闻&#xff0c;并可以看到所有人发布的新闻 运行前附加数据库.mdf&#xff08;或sql生成数据库&#xff09; 主要技术&#xff1a; 基于asp.net架构和sql serve…

halcon分割粘连字符

下面的算子都可以分割&#xff1a; 1.*&#xff08;推荐使用这个&#xff09;在垂直范围较小的位置水平划分区域 partition_dynamic(circleRegion,parRegion,76,50)2.*将一个区域划分为大小大致相等的矩形。&#xff08;这个方法适合宽度相等&#xff0c;很规则的排列的字符串…

恢复数据软件推荐,数据恢复,就用这款!

“我是个比较粗心的人&#xff0c;在使用电脑时经常会误删很多文件&#xff0c;请问大家有没有好用的数据恢复软件推荐呀&#xff1f;” 在数字时代&#xff0c;数据是我们生活和工作中的重要组成部分。然而&#xff0c;意外的数据丢失或删除可能会给我们带来巨大的麻烦。这时&…