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

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/

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

相关推荐
钢铁男儿1 小时前
Python 字典(一个简单的字典)
开发语言·python
游王子1 小时前
Python Pandas(7):Pandas 数据清洗
开发语言·python·pandas
Jackson@ML2 小时前
Django开发入门 – 2.Django的Web应用项目架构
python·django·virtualenv
dkgee2 小时前
conda将python低版本环境升级到高版本
开发语言·python·conda
ctf_02262 小时前
echarts 3d中国地图飞行线
3d·echarts·swift
A&long@20203 小时前
【AI时代】-开发环境准备 之 Conda 创建 Python 环境 (含pip常用命令、jupyter 安装及汉化、自定义文档位置等配置)
人工智能·python·conda
Pandaconda3 小时前
【新人系列】Python 入门(三十):工作常用第三方库 - 上
开发语言·经验分享·笔记·后端·python·面试·第三方库
编织幻境的妖4 小时前
python2048游戏
开发语言·python·游戏
B站计算机毕业设计超人4 小时前
计算机毕业设计SpringBoot+LayUI宠物医院管理系统(源码+文档+运行视频+讲解视频)
java·vue.js·spring boot·后端·intellij-idea·mybatis·数据可视化
西猫雷婶5 小时前
python学opencv|读取图像(六十一)先后使用cv2.dilate()函数和cv2.erode()函数实现图像处理
python·opencv·学习