V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
azev
V2EX  ›  问与答

想问点三维重建的基础知识

  •  
  •   azev · 2023-05-16 09:51:58 +08:00 · 991 次点击
    这是一个创建于 592 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在要把一些点云数据转换为 STL 格式,进行打印,需要做些什么工作呢?
    我初步的了解是先转为体素数据?然后使用 Marching Cubes 算法进行三角网格化,最后把结果保存为 STL 格式?
    这样可行吗? python 可以借助什么三方库呢? open3d ? pyvista ?
    问了下 chatgpt 倒是给出了一些东西,但总是都是翻来覆去的犯重复的错误,基本就是这个类没有这个属性或方法。

    10 条回复    2023-05-16 12:31:28 +08:00
    zjhzxhz
        1
    zjhzxhz  
       2023-05-16 09:53:49 +08:00
    STL 是存储 Mesh 用的。点云有自己的格式( e.g., ply ),甚至直接存储成 numpy 的 npy 格式也可以。
    转换成体素 + Marching Cube 会损失精度的。
    azev
        2
    azev  
    OP
       2023-05-16 10:17:21 +08:00
    @zjhzxhz 多谢
    1.目前的点云格式是 xyz ,是说转成 npy 后可以保存为 stl 吗?
    2.这个 Marching Cube 是不是就是转为 mesh ?
    zjhzxhz
        3
    zjhzxhz  
       2023-05-16 10:22:12 +08:00
    @azev
    1. 为啥一定要保存成 stl ?“进行打印”的意思是 3D 打印?
    2. 对。Marching Cube 的 Input 是 Voxel ,Output 是 Mesh 。
    azev
        4
    azev  
    OP
       2023-05-16 10:40:35 +08:00
    @zjhzxhz
    1.对的,是要进行 3D 打印
    zjhzxhz
        5
    zjhzxhz  
       2023-05-16 10:50:42 +08:00
    @azev
    那确实需要转换成 Mesh 。Open3D 确实可行。
    可参见: http://www.open3d.org/docs/latest/tutorial/Advanced/surface_reconstruction.html
    azev
        6
    azev  
    OP
       2023-05-16 11:05:14 +08:00
    我在搜的时候看到这个 https://github.com/isl-org/Open3D/issues/2365
    意思是 open3d 不支持 xyz 点云转为体素?但我看 open3d 中有涉及体素的一些类和方法呢
    开始 chatgpt 给了一些代码做这些工作,但反复犯错,追问之后又说 open3d 中没有直接将 VoxelGrid 转换为三角网格的方法。
    azev
        7
    azev  
    OP
       2023-05-16 11:05:39 +08:00
    @zjhzxhz 多谢
    siknet
        8
    siknet  
       2023-05-16 11:13:00 +08:00
    三维重建?具体点啊,是航拍后三维地图重建,还是单个物体

    前者已经做烂了,放弃吧,全国林地田地确权已经做完了。后者的话楼下的大佬帮忙解答
    azev
        9
    azev  
    OP
       2023-05-16 11:35:58 +08:00
    @siknet 多谢 是地下勘探 open3d 或者说是 3d 三维这块有没有好的书籍推荐?
    siknet
        10
    siknet  
       2023-05-16 12:31:28 +08:00
    @azev 这个跨行业了,帮不上忙。可以先去了解主流软件,然后国内找找有没有专门讨论这个的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2682 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 01:57 · PVG 09:57 · LAX 17:57 · JFK 20:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.