本文翻译自Meshlab主页:http://www.meshlab.net/

  

MeshLab是用于处理和编辑3D三角形网格的开源系统。它提供了一组用于编辑,清理,修复,检查,渲染,纹理和转换网格的工具。它提供了处理由3D数字化工具/设备生成的原始数据和准备3D打印模型的功能。

特征

3D采集:对齐

  3D数据对齐阶段(也称为配准)是用于处理3D扫描数据流程中的基本步骤。MeshLab提供了一个强大的工具,用于将不同的网格移动到一个公共的参考坐标系,能够管理多个映射变换。MeshLab可以通过精细的ICP算法,实现点云一对一配准,进而完成全局误差分布调整。可以完成对扫描器(短距离和长距离)和图像转换3D工具等,多种来源的网格和点云的对齐。

3D采集:重建

  将独立采集数据或点云转换为单表面三角网格的过程可以用不同的算法方法来实现。MeshLab提供了几种解决方案来重建目标的形状,比如通过体素(移动立方体)、隐式表面(泊松映射)。

3D采集:颜色映射和纹理

  颜色信息可能与几何一样重要,但是几种采集技术不提供精确的外观数据。MeshLab包含用于将颜色信息(来自一组未校准的图像)对准和投影到3D模型上的处理流程。提供了几种自动和辅助方法以获得具有每个顶点或纹理映射的高质量颜色编码。

清洗3D模型

  MeshLab提供了一系列自动,半自动和交互式过滤器来删除那些通常被大多数软件和算法视为“错误”的几何元素。它可以去除拓扑错误,重复和未参照顶点,小部件,退化或相交面以及其他的几何和拓扑奇点。使用不同的自动和交互式选择方法,可以去除网格和点云中不需要的区域。

缩放,定位和定向

  3D模型,特别是来自测量和扫描的模型,通常需要重新定向或放置在特定的参考系中; 此外,如果是从照片生成的,它们通常需要缩放到标准度量。MeshLab提供了一系列功能实现3D模型的缩放,定位和定向,包括基本的变换操作,如平移、缩放、旋转,自动重新定中心和与轴对齐,使用参考点几何定位,用于旋转、平移、缩放的交互式操作等。

简化,细化和重新划分

  处理3D模型时的常见需求是降低其几何复杂性,创建由较少三角形(或点)组成的具有相同形状的几何图形。MeshLab提供了不同的方法,在保留几何细节和纹理映射的前提下,简化(抽取)三角化表面,或选择性地减少点云中点的数量。在用户想要增加三角形(或点)数量的情况下,MeshLab提供了不同的细分方法,重新划分和重新采样过滤器,来增加3D模型的几何复杂度,或者优化点分布和三角化质量。

测量和分析

  在MeshLab中,3D模型的交互式点到点测量非常简单。此外,自动滤波器可以返回3D模型(或选定的区域)的各种几何拓扑信息,而切割工具可以将网格的截面导出为折线。还可以使用自动滤波器计算网格和3D模型的几各种何信息(如曲率,测地距离或局部顶点密度)。

可视化和演示

  MeshLab(包括装饰和着色器)的可视化功能可以帮助可视化呈现3D模型的特征。可以控制相机视角/视距,并使用预定义的规范视图。MeshLab还提供了高分辨率的屏幕截图功能,在创建审查图形文档时非常有用。

颜色处理

  MeshLab可以使用一系列像photoshop功能一样的滤波器(如伽玛,饱和度,亮度,对比度,色阶,平滑,锐化)来调节顶点和表面的颜色。自动滤波器计算环境光遮挡和体积遮挡,并将其映射到顶点或表面颜色。还可以显式地写入颜色函数,以突出3D模型的特定属性。MeshLab还提供了一个用于绘制顶点颜色的绘画界面。标量值(可能是3D表面上的度量计算的结果)也可以被映射到顶点/表面颜色,以实现该值的可视化呈现。

3D打印:偏移,中空,闭合

  除了能够导出到STL(3D打印最常见的格式之一),MeshLab可以通过创建内部形状、重新采样/重新创建3D模型使切片更容易、修复漏洞获得封闭网格、以及使底部区域变平以具有更好的平台依附性等,为3D模型打印做准备。

比较模型

  使用Hausdorff距离测量两个3D模型之间的几何差异是网格处理中的常见方法。许多年前(1997年),视觉计算实验室开发并自由发布了后来成为此类任务标准工具的Metro; 相关论文被引用了一千多次。原始的Metro工具是一个独立的小开源命令行程序(仍然可以在我们的网站),MeshLab现在提供了更高级的功能来比较两个网格,同时可以计算网格甚至是点云的有符号距离。

3D模型转换和交换

  MeshLab可以导入和导出许多不同的3D数据格式和像SketchFab的在线服务。这样,它可以和其他工具(包括Blender,Photoscan,VisualSfM,Cloud Compare,Autodesk tools)交换数据,在一系列不同上下环节和应用中的复杂3D处理流程环境工作。脚本功将使这类应用更加简单和隐蔽。

光栅图层:图像集成

  MeshLab中引入了栅格图层,从而超越了标准3D模型。MeshLab用户可以在项目中导入图像和其他2D实体。这些光栅图层不仅可以用于在3D模型上映射颜色信息,而且可以用于生成特殊的视点,或者通过包含用于生成最终结果的原始图像来存储整个从图像到3D模型的获取过程。

原网页还包括:更新情况、文件下载(安装文件、源码)、支持(Youtobe视频教程、论坛、报错、facebook成果分享)、参考文献等。

转: Meshlab简介的更多相关文章

  1. OpenMVG 系列 (1):入门简介

    1  OpenMVG 简介  全称 Open Multiple View Geometry,是法国人 Pierre Moulon 读博期间开源的一个 C++ 库 最早版本 OpenMVG 0.1 是 ...

  2. ASP.NET Core 1.1 简介

    ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...

  3. MVVM模式和在WPF中的实现(一)MVVM模式简介

    MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...

  4. Cassandra简介

    在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...

  5. REST简介

    一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...

  6. Microservice架构模式简介

    在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...

  7. const,static,extern 简介

    const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...

  8. HTTPS简介

    一.简单总结 1.HTTPS概念总结 HTTPS 就是对HTTP进行了TLS或SSL加密. 应用层的HTTP协议通过传输层的TCP协议来传输,HTTPS 在 HTTP和 TCP中间加了一层TLS/SS ...

  9. 【Machine Learning】机器学习及其基础概念简介

    机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...

随机推荐

  1. leetcode.矩阵.378有序矩阵中第K小的元素-Java

    1. 具体题目 给定一个 n x n 矩阵,其中每行和每列元素均按升序排序,找到矩阵中第k小的元素.请注意,它是排序后的第k小元素,而不是第k个元素. 示例: matrix = [ [ 1,  5, ...

  2. c# dotNetBar symbol属性代码动态设置方法

    C#: button.Symbol = "\uf060"; VB: button.Symbol = ChrW("&Hf060") Since we in ...

  3. Codeforces 488C Fight the Monster

    Fight the Monster time limit per test             1 second                                   memory ...

  4. Python之字符串正则匹配

    需求: 正则表达式匹配某个文本模式,但是它找到的是模式的最长可能匹配(因为是贪婪匹配 ). 而你想修改它变成查找最短的可能匹配. import re text2 = 'Computer says &q ...

  5. List、Map、Set三个接口存取元素时,各有什么特点

    List接口以特定索引来存取元素,可以有重复元素 Set接口不可以存放重复元素(使用equals方法区分是否重复) Map接口保存的是键值对(key-value-pair)映射,映射关系可以是一对一或 ...

  6. android 数据异步加载

    public class MainActivity extends Activity { ListView listView; File cache; //访问其他线程在当前线程中存放的数据 Hand ...

  7. rabbitMQ 问题

    1.有时候在学习或者测试的时候,发现我在一个EXCHANGE  上面绑定了多个通道,这些通道的ROUTING_KEY 各不相同.但是从发送端 发到EXCHANGE 时,却在别的通道上面也收到了该消息, ...

  8. 前端学习(三)css选择器(笔记)

    字体样式:    color:red:    font-size:12px:    font-weight:bold/normal;    font-style:italic/normal;    f ...

  9. 通信矩阵转DBC

    DBC的制作对于一些人来时比较陌生,熟悉的人做他感觉浪费时间(像我这样的),于是自己用PYTHON写了一个脚本,还挺好用的,只需要填写表格就好了,省出来大部分的时间. 分享下思路, 来看下DBC的文本 ...

  10. 设置overflow:auto无效的解决办法

    做项目中经常要用到滚动条,有时候给div设置overflow无效. 遇到这样的问题,只需要在 F12 Elements面板检查一下要设置overflow的元素的宽高是否大于父级元素宽高. (overf ...