Windows采用VS2019实现Open3D的C++应用

1、参考链接

    https://blog.csdn.net/qq_31254435/article/details/137799739

    但是,我的方法和上述链接不大一样,我是采用VS2019进行编译的,方便在Windows平台上验证各种算法。

2、创建一个VS2019的C++ Console工程

#include <iostream>

#include <open3d/Open3D.h>

int main() {

    using namespace open3d::geometry;

    auto sphere = TriangleMesh::CreateSphere(1.0, 4);

    sphere->ComputeVertexNormals();

    sphere->PaintUniformColor({ 1, 0.706, 0 });

    std::cout << sphere->vertices_.size() << " vertices\n";

    std::cout << sphere->triangles_.size() << " triangles\n";

    open3d::visualization::DrawGeometries({ sphere });

}

Include目录:

库目录:

3、将Open3D.dll放入到系统的Path当中

4、运行效果

5、载入一个PLY文件显示

#include <iostream>

#include <open3d/Open3D.h>

int main()

{

    std::string file_path = "E:\\PDAL\\PDAL\\bin\\t2.ply";

    // 创建 PointCloud 对象  

    open3d::geometry::PointCloud point_cloud;

    // 创建读取选项(可以根据需要添加参数)  

    open3d::io::ReadPointCloudOption params;

    // 读取 PLY 文件  

    if (!open3d::io::ReadPointCloudFromPLY(file_path, point_cloud, params)) {

        std::cerr << "Failed to load PLY file: " << file_path << std::endl;

        return 1;

    }

    // 对点云进行法线估计  

    point_cloud.EstimateNormals(open3d::geometry::KDTreeSearchParamHybrid(0.1, 30));

    // 缩放点云  

    double scale_factor = 10.0; // 调整此因子以改变点云大小  

    for (auto& point : point_cloud.points_) {

        point = point * scale_factor;

    }

    // 创建可视化窗口  

    open3d::visualization::Visualizer visualizer;

    visualizer.CreateVisualizerWindow("Point Cloud from PLY", 1024, 768);

    // 使用 std::make_shared 将 PointCloud 转换为 std::shared_ptr  

    visualizer.AddGeometry(std::make_shared<const open3d::geometry::PointCloud>(point_cloud));

    visualizer.Run();

    visualizer.DestroyVisualizerWindow();

    return 0;

}

(愿意点赞和收藏的小伙伴,不妨关注我,我正在寻求涨粉)

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

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

相关文章

MT1619 (A/B/C/D 15W-25W)快充电源主控芯片

MT1619 是一款快充电源主控芯片&#xff0c;MT1619内部集成了一颗高集成度、高性能的电流模式 PWM 控制器和一颗功率 MOSFET。MT1619适用于小于 30W 的开关电源。MT1619 具有恒功率功能&#xff0c;特别适用于 PD 充电器、电源适配器等中小功率的开关电源设备。极低的启动电流与…

windows下TortoiseSVN切换账号的方法

前言 在项目开始初期的时候大家会使用一个默认账号,后面会根据需要给每个人分配各自的个人账号,这个时候就需要重登陆新的svn账号,下面就是讲解下怎样在windows下修改登录TortoiseSVN的账号。 方法 1.首先在桌面右键&#xff0c;选择TortoiseSVN-settings 2.进入设置页面&a…

阿里云注册、认证、短信资质、签名、模板申请过程

一、帐号注册 输入“帐号密码注册”中的相关信息即可。 手机号是必须的&#xff0c;先确定好手机号。 正常的可以直接注册成功的。 二、实名认证 注册成功之后&#xff0c;就可以点击上述的“快速实名认证”。 这次选择的是“企业认证”。 有几种方式&#xff0c;如下&#x…

clamp靶机复现

靶机设置 设置靶机为NAT模式 靶机IP发现 nmap 192.168.112.0/24 靶机IP为192.168.112.143 目录扫描 dirsearch 192.168.112.143 访问浏览器 提示让我们扫描更多的目录 换个更大的字典&#xff0c;扫出来一个 /nt4stopc/ 目录 目录拼接 拼接 /nt4stopc/ 发现页面中有很多…

CeresPCL 岭回归拟合(曲线拟合)

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 由于在使用最小二乘插值拟合时,会涉及到矩阵求逆的操作,但是如果这个矩阵接近于奇异时,那么拟合的结果就会与我们期望的结果存在较大差距,因此就有学者提出在最小二乘的误差函数中添加正则项,即: 这里我们也可…

【SpringBoot】SpringBoot框架的整体环境搭建和使用(整合Mybatis,Druid,Junit4,PageHelper,logback等)

目录 1.介绍 1.1 配置文件 1.2 目录结构 2.基于SpringBoot的SpringMVC 4.整合Mybatis 5.整合Druid连接池 6.整合Junit4 7.整合Logback 8.整合PageHelper 9.SpringBoot整合Thymeleaf ​编辑 【附录】springboot的pom.xml 1.介绍 Spring框架的优点是方便解耦、简化开…

Python -- GUI图形界面编程—GUI编程实例 博主也在持续学习中[ 持续更新中!!! 欢迎白嫖 也求粉啊啊啊~ ]

本文介绍了GUI的图形界面编程&#xff08;相关视频是哔站上的应该搜这个题目就能找到&#xff09;&#xff0c;文章还是很基础的&#xff0c;反正我是小白从0开始&#xff0c;主要的结构tinkter库、重要组件简介&#xff08;这个不用死记硬背 用的时候再说&#xff09;、Label&…

用于不平衡医疗数据分类的主动SMOTE

一、主动学习如何应用于不平衡数据的处理 首先&#xff0c;主动SMOTE不是像经典的SMOTE那样从训练集中随机选择一个样本作为生成合成样本的轴心点&#xff0c;而是通过不确定性和多样性采样来智能地进行样本选择&#xff0c;这是主动学习的两种技术。 在数据不平衡的情况下&…

Ubuntu上安装Redis的详细教程

1、安装redis 首先&#xff0c;访问Redis官网&#xff0c;点击首页的【Get Started】&#xff0c;然后点击Install Redis on Linux 安装 终端依次输入以下命令&#xff0c;如果过程中没有错误提示&#xff0c;则redis安装完成。 sudo apt install lsb-release curl gpg cu…

计算机科学速成课笔记

计算机速成课个人理解概要 1.计算机的本质 计算机的本质&#xff1a;极其简单的组件&#xff0c;经过一层层复杂的抽象&#xff0c;做出复杂的工作 2.控制电流的技术发展 继电器→真空管→晶体管 拥有了细微控制电流的手段 tip:早期机械计算机&#xff0c;被虫子(bug)卡住…

基于SpringCloud的能源管理系统-能源管理平台源码-能源在线监测平台-双碳平台源码-SpringCloud全家桶-能管管理系统源码

介绍 适用于高能耗企业、建筑、工厂、园区的水、电、气、热、油、空压机等能源数据采集、分析、报表&#xff1b; 基于SpringCloud的能源管理系统-能源管理平台源码-能源在线监测平台-双碳平台源码-SpringCloud全家桶-能管管理系统源码 软件架构 软件功能 数字大屏 使用说明

机器学习第十一章-特征选择与稀疏学习

11.1子集收集与评价 属性称为"特征" &#xff0c;对当前学习任务有用的属性称为"相关特征" 、没什么用的属性称为"无关特 征" . 从给定的特征集合中选择出相关特征于集的过程&#xff0c;称为"特征选择"。 特征选择是一个重要的"…

Linux | Linux进程万字全解:内核原理、进程状态转换、优先级调度策略与环境变量

目录 1、从计算机组成原理到冯诺依曼架构 计算机系统的组成 冯诺依曼体系 思考&#xff1a;为什么计算机不能直接设计为 输入设备-CPU运算-输出设备 的结构&#xff1f; 2、操作系统(Operator System) 概念 设计OS的目的 描述和组织被管理对象 3、进程 基本概念 进程id和父进程…

数据结构入门——07堆

1.堆 堆&#xff08;Heap&#xff09;是一种特殊的完全二叉树数据结构&#xff0c;具有以下两个主要特性&#xff1a; 结构特性&#xff1a; 堆是一棵完全二叉树&#xff0c;即除了最后一层的叶子节点外&#xff0c;每一层都是满的&#xff0c;最后一层的叶子节点从左向右依次…

志愿服务管理系统--论文pf

TOC springboot360志愿服务管理系统--论文pf 第1章 绪论 1.1选题动因 当前的网络技术&#xff0c;软件技术等都具备成熟的理论基础&#xff0c;市场上也出现各种技术开发的软件&#xff0c;这些软件都被用于各个领域&#xff0c;包括生活和工作的领域。随着电脑和笔记本的广…

[SWPUCTF 2021 新生赛]babyrce

我们传cookie admin1 访问http://node5.anna.nssctf.cn:29911/rasalghul.php 在PHP中&#xff0c;preg_match函数是一个用于进行正则表达式匹配的内置函数。它可以通过正则表达式对一个字符串进行匹配&#xff0c;判断该字符串是否满足正则表达式的规则。 发现过滤空格&#x…

xss之DOM破坏

文章目录 DOM破坏漏洞的复现https://xss.pwnfunction.com/基于bp学院DOM破坏漏洞复现思路分析实现 常见的xss触发的标签没有过滤的情况存在过滤的情况 DOM破坏 DOM破坏就是⼀种将 HTML 代码注⼊⻚⾯中以操纵 DOM 并最终更改⻚⾯上 JavaScript ⾏为的技术。 在⽆法直接 XSS的情…

牛客JS题(四十五)数组去重

注释很详细&#xff0c;直接上代码 涉及知识点&#xff1a; set的灵活用法去除的判别标准 题干&#xff1a; 我的答案 <!DOCTYPE html> <html><head><meta charset"UTF-8" /><style>/* 填写样式 */</style></head><bo…

【Docker】Docker Compose(容器编排)

一、什么是 Docker Compose docker-compose 是 Docker 官方的开源项目&#xff0c;使用 python 编写&#xff0c;实现上调用了 Docker 服务的 API 进行容器管理及编排&#xff0c;其官方定义为定义和运行多个 Docker 容器的应用。 docker-compose 中有两个非常重要的概念&…

趣映 v2.3.8 高级版 剪映替代品 解锁会员功能

看到名字&#xff0c;想必很多网友会联想到剪映&#xff0c;没错&#xff0c;趣映也是一款类似剪映的视频编辑工具。趣映为用户提供了全面的视频编辑和制作&#xff0c;更专注于动画视频制作的软件。功能齐全&#xff0c;操作简单&#xff0c;可以帮助用户从灵感创作到成片输出…