open3D release版配置及简单使用

news2024/10/8 23:57:25

open3D release版配置及简单使用

  • 0 引言
  • 1 open3d库文件获取及配置到VS
    • 1.1 open3d库文件获取
    • 1.2 open3d库配置到VS
  • 2 测试open3d库
  • 3 结语


0 引言

💻💻AI一下💻💻

  Open3D是一个用于处理3D数据的开源库。它提供了一系列算法和工具,可以处理、可视化和分析3D点云、网格以及3D模型。它支持多种操作,包括点云的滤波、重采样和配准,网格的重构和变形,以及3D模型的分割和配准。它还提供了一些计算几何和几何图形的基本功能,如点和网格之间的距离计算、法线估计和曲面重建。

  Open3D是用C++编写的,还提供了Python接口,可以方便地在Python环境中使用。它在功能和性能上都非常强大,适用于各种3D应用领域,如机器人、计算机视觉、虚拟现实等。

  本篇介绍将open3D-0.18.0release版本配置VS的过程,与配置第三方库的过程类似。

1 open3d库文件获取及配置到VS

1.1 open3d库文件获取

  Open3D官网提供了不同系统不同语言(python、c++)不同环境下的库文件,在VS上配置open3D库,可以下载图中的“open3d-devel-windows-amd64-0.18.0.zip”“open3d-devel-windows-amd64-0.18.0-dbg.zip”文件,解压缩之后文件夹中bin、include、lib等目录,以上两个文件分别对应release和debug不同的编译选项。

  open3d库文件在github上获取,如果出现页面打不开的情况,可以由资源链接获取。

在这里插入图片描述

1.2 open3d库配置到VS

  open3d库配置过程与第三方库的配置过程差不多,过程中使用的环境为Win11 + Vs2019详细过程如下:

  (1) 在VS上先创建一个C++项目,一般的控制台应用程序就好;

  (2) 根据需要选择不同的配置环境:releasedebug。release下载库文件“open3d-devel-windows-amd64-0.18.0.zip”、debug下载库文件“open3d-devel-windows-amd64-0.18.0-dbg.zip”;

在这里插入图片描述
  (3)本篇以release为例,进行配置过程的描述,release和debug过程类似。右键c++项目名,打开“属性”设置界面,找到VC++ 目录设置,分别设置包含目录、库目录和源目录。各目录设置的内容如下:

  • 包含目录:主要设置库文件中Include的相关路径;
D:\1_Software_Profession\26_open3D_release\open3d_18\include
D:\1_Software_Profession\26_open3D_release\open3d_18\include\open3d
D:\1_Software_Profession\26_open3D_release\open3d_18\include\open3d\3rdparty
  • 库目录:主要设置库文件中lib的相关路径;
D:\1_Software_Profession\26_open3D_release\open3d_18\lib
  • 源目录:主要设置库中bin目录的相关路径;
D:\1_Software_Profession\26_open3D_release\open3d_18\bin

在这里插入图片描述

  (4) 在属性界面打开“链接器”,在输入的附加依赖项中将Open3D的相关库放进去:

Open3D.lib
OpenGL32.lib

在这里插入图片描述

  (5)Open3D.dll放入可执行文件目录中,如果没有设置可执行文件目录,那就是"../X64/Release"下。然后就完成了open3D库的主要配置,就可以在程序中引用open3D库进行一些测试了

在这里插入图片描述

  (6) 在测试open3D库前一些说明。库配置完成后可能存在编译报错等问题,基本都是由库的冲突造成的,可以将引起冲突的依赖库放入“忽略特定默认库中”,可在网上多找找,常见错误基本都能找到解决办法。

2 测试open3d库

  用一个简单示例测试open3D库是否正确配置,使用的测试数据可由下面链接获得。通过百度网盘分享的文件:1.pcd, 提取码:vtoc

// 测试代码,加载一个pcd点云
#include <open3d/Open3D.h>
#include <iostream>

int main() {
	auto pc = std::make_shared<open3d::geometry::PointCloud>();
	if (!open3d::io::ReadPointCloud("1.pcd", *pc)) {
		return -1;
	}
	open3d::visualization::DrawGeometries({ pc }, "ShowPcdPointCloud");
	return 0;
}

执行结果:

在这里插入图片描述

3 结语

💦💦💦💦💦
  本篇简单分享了配置open3d库的过程,用示例测试了过程可行。希望对你有所帮助😜。






😜
😜😜
😜😜😜😜

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

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

相关文章

职场中的人情世故,你懂了多少?

职场如战场&#xff0c;稍有不慎&#xff0c;满盘皆输。 职场如江湖&#xff0c;不是打打杀杀&#xff0c;而是人情世故。 成年人的世界里没有“容易”二字&#xff0c;我们也需要懂得哪些人情世故和。 职场上的各种光怪陆离现象&#xff0c;有很多职场人吐槽&#xff1a;“…

云岚到家,使用Elasticsearch实现服务的搜索功能,使用Canal+MQ完成服务信息与ES索引同步。MQ

为什么使用elasticsearch?数据很多么&#xff1f; 项目使用Elasticsearch是实现了门户上对服务的搜索。 平台上的服务数据是并不是很多&#xff0c;全国所有区域下的服务信息加一起几千条&#xff0c;之所以使用Elasticsearch是因为&#xff1a; 1、公司架构师在系统架构时…

九、5 USART串口数据包

数据包作用&#xff1a;把一个个单独的数据给打包起来&#xff0c;将同一批的数据进行打包和分割&#xff0c;方便接收方进行识别&#xff0c;方便我们进行多字节的数据通信。 1、串口收发HEX数据包 &#xff08;1&#xff09;数据包的格式是个人规定的&#xff0c;如以FF为包…

dotnet7==windows ZIP方式安装和web demo和打包

下载ZIP Download .NET 7.0 (Linux, macOS, and Windows) 解压 创建项目 mkdir MyWebApp cd MyWebApp "C:\Users\90816\Downloads\dotnet-sdk-7.0.317-win-x64\dotnet.exe" new webapp -n MyWebApp 运行项目 "C:\Users\90816\Downloads\dotnet-sdk-7.0.317-…

MySQL9的3个新特性

【图书推荐】《MySQL 9从入门到性能优化&#xff08;视频教学版&#xff09;》-CSDN博客 《MySQL 9从入门到性能优化&#xff08;视频教学版&#xff09;&#xff08;数据库技术丛书&#xff09;》(王英英)【摘要 书评 试读】- 京东图书 (jd.com) 本文讲解MySQL9的3个新特性&…

出国读研,是否有必要选择与自己本科专业相关的研究方向?

出国读研时&#xff0c;选择什么专业&#xff0c;是否选择与自己本科专业相关的方向&#xff0c;是很多同学会考虑的问题。事实上这个问题没有标准答案&#xff0c;取决于个人的职业目标、兴趣及市场需求等多方面因素。今天我们就这一问题展开讨论&#xff0c;希望能给即将出国…

【渗透测试】-OAuth授权框架-burp

文章目录 1.Lab: Authentication bypass via OAuth implicit flow  2.Lab: Forced OAuth profile linking 1.Lab: Authentication bypass via OAuth implicit flow 通过 Burp 代理流量时&#xff0c;单击“我的帐户”并完成 OAuth 登录过程。之后&#xff0c;您将被重定向回博…

信息安全工程师(39)防火墙防御体系结构类型

前言 防火墙防御体系结构类型多样化&#xff0c;每种类型都针对不同的安全需求和应用场景&#xff0c;提供不同层次的保护。 一、传统防火墙系统 包过滤防火墙 原理&#xff1a;通过检查进出网络数据包的头信息&#xff08;如源IP地址、目的IP地址、源端口、目的端口和协议等&a…

数据结构-4.4.朴素模式匹配算法

一.专业术语&#xff1a; 注&#xff1a;子串和模式串有区别。 二.朴素模式匹配算法&#xff1a; 思路&#xff1a;在主串中找出所有与模式串长度相等的子串&#xff0c;与模式串进行比较&#xff0c;如果找到了&#xff0c;返回子串第一个字符在主串的位置 1.使用字符串的基本…

大龄焦虑?35岁码农逆袭之路:拥抱大模型时代,焕发职业生涯新活力!

前言 其实我很早就对大龄程序员这个话题感到焦虑&#xff0c;担心自己35岁之后会面临失业&#xff0c;有时和亲戚朋友聊天时&#xff0c;也会经常拿这个出来调侃。现在身边已经有很多35岁左右的同事&#xff0c;自己过两年也会步入35岁的行列&#xff0c;反倒多了一份淡定和从…

【C++ 11】for 基于范围的循环

文章目录 【 1. 基本用法 】【 2. for 新格式的应用 】2.1 for 遍历字符串2.2 for 遍历列表2.3 for 遍历的同时修改元素 问题背景 C 11标准之前&#xff08;C 98/03 标准&#xff09;&#xff0c;如果要用 for 循环语句遍历一个数组或者容器&#xff0c;只能套用如下结构&#…

AtCoder Beginner Contest 373

D - Hidden Weights 题目&#xff1a; 思路&#xff1a; 代码&#xff1a; #include <bits/stdc.h> #define fi first; #define se second;using namespace std;typedef long long LL; typedef pair<int,int> PII;const int N2e510; const LL lnf0x3f3f3f3f3f3f3…

【JavaEE】【多线程】Thread类讲解

目录 Thread构造方法Thread 的常见属性创建一个线程获取当前线程引用终止一个线程使用标志位使用自带的标志位 等待一个线程线程休眠线程状态线程安全线程不安全原因总结解决由先前线程不安全问题例子 Thread构造方法 方法说明Thread()创建线程对象Thread(Runnable target)使用…

WPS Office从路径穿越到远程代码执行漏洞(CVE-2024-7262)分析与复现

漏洞概述 WPS Office程序promecefpluginhost.exe存在不当路径验证问题&#xff0c;允许攻击者在Windows上加载任意Windows库文件。该漏洞已被APT-C-60攻击者利用&#xff0c;当用户打开MHTML格式的文档时&#xff0c;只需单击一个恶意制作的超链接&#xff0c;即可执行攻击者指…

【C++】map详解

&#x1f4e2;博客主页&#xff1a;https://blog.csdn.net/2301_779549673 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01; &#x1f4e2;本文由 JohnKi 原创&#xff0c;首发于 CSDN&#x1f649; &#x1f4e2;未来很长&#…

如何实现小红点

文章目录 1. 概念介绍2. 实现方法3 示例代码我们在上一章回中介绍了WebView组件相关的内容,本章回中将介绍如何在图标旁边添加小红点.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 在实际项目中有时候需要在图标旁边显示小红点,而且小红点内还有数字,比如购物车图标显…

Android阶段学习思维导图

前言 记录下自己做的一个对Android原生应用层的思维导图&#xff0c;方便个人记忆扩展&#xff1b;这里只露出二级标题。 后语 虽然有些内容只是初步了解&#xff0c;但还是记录了下来&#xff1b;算是对过去一段学习的告别。

全体起立!CEEMDAN-Kmeans-VMD-CNN-Attention双重分解+卷积神经网络注意力机制多元时间序列预测

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现CEEMDAN-Kmeans-VMD-CNN-Attentionr融合K均值聚类的数据双重分解卷积神经网络注意力机制多元时间序列预测&#xff08;完整源码和数据&#xff09; 2.CEEMDAN分解&#xff0c;计算样本熵&#xff0c;根据…

Arduino UNO R3自学笔记23 之 Arduino如何使用4511控制数码管?

注意:学习和写作过程中,部分资料搜集于互联网,如有侵权请联系删除。 前言:因为7段数码管控制需要用到7个IO,这会严重占用Arduino的IO口,因此我们采用现有IC来节省Arduino的IO口。 1.CD4511介绍 CD4511是一款用于驱动共阴极LED(数码管)显示器的BCD码-七段码译码器。它…

机器学习-支撑向量机SVM

Support Vector Machine 离分类样本尽可能远 Soft Margin SVM scikit-learn中的SVM 和kNN一样&#xff0c;要做数据标准化处理&#xff01; 涉及距离&#xff01; 加载数据集 import numpy as np import matplotlib.pyplot as plt from sklearn import datasetsiris datas…