pymeshlab 学习笔记

目录

安装:

pymeshlab不能直接可视化点云,用open3d可视化

[pymeshlab保存物体的横截面(compute planar section)](#pymeshlab保存物体的横截面(compute planar section))

点云去噪:


安装:

pip install pymeshlab

pip install open3d

pymeshlab不能直接可视化点云,用open3d可视化

主要是一个用于操作和处理网格和点云的库

python 复制代码
import open3d as o3d
import pymeshlab

# 创建 MeshLab 实例
ms = pymeshlab.MeshSet()

# 加载点云文件(假设文件名为 'point_cloud.ply')
ms.load_new_mesh(r"F:\project\3d\Open3D-master\examples\test_data\color.ply")

# 从 MeshSet 中获取顶点信息
mesh = ms.current_mesh()

# 提取点云的顶点
vertices = mesh.vertex_matrix()

# 使用 Open3D 创建点云对象
point_cloud = o3d.geometry.PointCloud()
point_cloud.points = o3d.utility.Vector3dVector(vertices)

# 可视化点云
o3d.visualization.draw_geometries([point_cloud])

pymeshlab保存物体的横截面(compute planar section)

python 复制代码
 
# pymeshlab需要导入,其一般被命名为ml
import pymeshlab as ml
 
# 本案例所使用的3D模型为压缩包中的obj_000001.ply,请将其与本脚本放置在同一文件夹内。
input_file = 'obj_000001.ply'
 
# 首先需要创建一个空的容器
mesh = ml.MeshSet()
 
# 然后,加载物体模型
mesh.load_new_mesh(input_file)
 
# 设置截面
mesh.compute_planar_section(
    planeaxis = 'X Axis', # 垂直于的平面:切片平面将垂直于轴进行
    customaxis = [0, 1, 0], # 自定义轴:指定自定义轴,仅当上述参数设置为"自定义"时才有效
    planeoffset = 0, # 交叉平面偏移:指定交叉平面的偏移。偏移对应于与平面参照参数中指定的点的距离。默认情况下(跨平面偏移==0)
    relativeto = 'Origin', # 平面参照:指定偏移平面的参照
    createsectionsurface = True, # 还创建截面曲面:如果选中,则除了具有截面多段线的图层外,还将创建具有截面多线的三角形版本的图层。仅当截面多段线闭合时才有效
    splitsurfacewithsection = False,# 同时创建分割曲面:如果选中,它将创建两个层,其中网格的一部分位于剖面的下方和上方。它需要网状物的歧管性。
)
 
# 保存截面
mesh.save_current_mesh(input_file.replace('.ply', '_planar.ply'),
                       binary = False)
 

点云去噪:

PyMeshlab 点云降噪 点云去噪软件_mob64ca1410eb61的技术博客_51CTO博客

相关推荐
zzzsde14 小时前
【Linux】线程同步和互斥(5):线程池的实现&&线程安全
linux·运维·服务器·开发语言·算法·安全
weixin_4684668514 小时前
机器学习数据预处理新手实战指南
人工智能·python·算法·机器学习·编程·数据预处理
无忧.芙桃14 小时前
C语言文件操作
c语言·开发语言
月落归舟14 小时前
Java并发容器与框架
java·开发语言
右耳朵猫AI14 小时前
Golang技术周刊 2026年第20周
开发语言·后端·golang
大数据魔法师14 小时前
Streamlit(二十)- API 参考文档(十三)- 缓存与状态管理组件
python·web
不吃土豆的马铃薯14 小时前
高性能服务器程序框架详解(包括Reactor,有限状态机等)
linux·服务器·开发语言·网络·c++
Shadow(⊙o⊙)14 小时前
库的制作与原理1.0,库打包,协作,目标文件.o、ELF格式。
linux·运维·服务器·开发语言
wyc是xxs14 小时前
用纯 Node.js 写了一个 JS 解释器 — kernel-js-lite
开发语言·javascript·npm·node.js
hai31524754314 小时前
AI工业化编程的黎明:由逻辑压缩到知识融合的范式跃迁
开发语言·人工智能·线性代数·机器学习·数学建模·概率论