尝试一下,交互式的三维计算python库,py3d

news/2025/2/11 13:45:54/

py3d是一个我开发的三维计算python库,目前不定期在PYPI上发版,可以通过pip直接安装
pip install py3d

开发这个库主要可视化是想把自己在工作中常用的三维方法汇总积累下来,不必每次重新造轮子。其实现成的python库也有很多,例如scipy.spatial, pyquaternion, open3d等等,但是这些库要么没有可视化功能,要么比较难用,所以自己开发了一个。最开始是想做成一个三维仿真工具,后来发现这个有些困难,工作量太大,所以目前功能局限在三维变换和可视化上。
相比其他的库,这个库有几个特点:

  1. python,没有使用C++
  2. 交互式可视化,在jupyter中可以可视化点云、图片、网格等等,均可缩放、旋转
  3. 支持多种常用三维文件的解析,如PCD,PLY,OBJ等

在自动驾驶和机器人开发中一个常见的任务是坐标系转换,以下展示一个使用py3d计算一个直角坐标系在经过旋转变换R和平移变换T后的新坐标系,并可视化的例子,注意需要在jupyter中运行才能看见可视化结果

python">import py3d
coord=py3d.axis(dashed=True)
R=py3d.Transform.from_euler("xyz", [1,2,3])
T=py3d.Transform.from_translation([4,5,6])
new_coord=py3d.axis()@R@T
py3d.render(coord,new_coord)
py3d.label("origin coord", [0,0,0], "orange")
py3d.label("new coord", [4,4.5,6], "orange")

在这里插入图片描述
使用文档:https://tumiz.github.io/py3d/

一个人开发,能力和时间是有限的,希望有类似想法的人能参与进来,无论是提出建议,贡献代码,还是发现问题,都是非常欢迎的。


http://www.ppmy.cn/news/1571167.html

相关文章

RAG核心机制和原理概述-1

RAG核心机制和原理概述 概述 本文是从FastGPT源码中摘出来的一篇文章,该文章对RAG模式的分析还是比较到位。个人觉得有一定的参考价值,故摘录在这里。 1. 引言 随着自然语言处理(NLP)技术的迅猛发展,生成式语言模型…

前后端服务配置

1、安装虚拟机(VirtualBox或者vmware),在虚拟机上配置centos(选择你需要的Linux版本),配置如nginx服务器等 1.1 VMware 下载路径Sign In注册下载 1.2 VirtualBox 下载路径https://www.virtualbox.org/wiki/Downloads 2、配置服…

c/c++蓝桥杯经典编程题100道(18)括号匹配

括号匹配 ->返回c/c蓝桥杯经典编程题100道-目录 目录 括号匹配 一、题型解释 二、例题问题描述 三、C语言实现 解法1:栈匹配法(难度★) 解法2:计数器法(仅限单一括号类型,难度★☆) …

Windows 电脑安装 mysqldump 的详细教程

一、下载 MySQL 社区版 访问官网 打开浏览器,访问 MySQL Community Downloads。 选择版本 找到最新的 MySQL 社区版本。点击 Go to Download Page 按钮,进入下载页面。 下载 MSI 安装包 在下载页面中选择 Windows (x86, 64-bit), MSI Installer。点击 …

程序控制语句

选择语句 选择结构是指根据程序运行时候产生的结果或者用户的输入条件执行相应的代码。在Java中有两种选择语句可以使用:if和switch。使用它们可以根据条件来选择接下来要干什么。 if语句 f语句是最简单的选择语句。它可以控制程序在两个不同的路径中执行。下面是…

亚马逊云科技Bedrock知识库自定义语义搜索配置教程

借助亚马逊云科技的Amazon Bedrock知识库功能,我们可以安全地将Amazon Bedrock中的基础模型连接到我们的私有数据,实现检索增强生成(RAG)。给知识库挂载额外的数据有助于模型生成更相关、基于上下文的准确响应,而无需重…

Ajax:重塑Web交互体验的人性化探索

在数字化时代,网页的交互性和响应速度已成为衡量用户体验的关键指标。Ajax(Asynchronous JavaScript and XML),作为前端与后端沟通的桥梁,凭借其异步通信的能力,极大地提升了网页的动态性和用户友好度&…

02.10 TCP之文件传输

1.思维导图 2.作业 服务器代码&#xff1a; #include <stdio.h> #include <string.h> #include <unistd.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <pthread.h> …