ShapeNet: An Information-Rich 3D Model Repository

注:本论文只是讲述数据库建立方法

摘要

ShapeNet是一个有丰富注释的大型形状存储库,由对象的3D CAD模型表示,这是一组数据集,对每个3D模型提供多种予以注释,包括一致性的刚性对齐,零件等等。

1. Introduction

1.计算三维形状的分割并建立它们之间的对应关系是几何形状分析中的两个基本问题。

2.计算机视觉现在比较火热的从2D图像中理解场景是视觉领域的一大挑战,这些研究的根源在于需要将语义附加到三维形状的表示中,并在大规模上这样做。

3.但是对于3D内容采用数据驱动方法所面临的一个关键瓶颈是缺乏可供社区使用的大规模、经过策划的3D模型数据集。

提出数据库的目标:

  • 收集并集中三维模型数据集,帮助组织研究社区的工作。
  • 支持需要3D模型数据的数据驱动方法。
  • 能够评估和比较涉及几何的基本任务(例如,分割、对齐、对应)的算法。
  • 用作表示真实世界对象及其语义的知识库。

2.Background and Related Work

在线3D模型数量大幅增长,但是很少3D模型集合可以提供有效的组织和注释,很少为单个模型提供有意义的文本描述,所以利用率低。

Princeton Shape Benchmark可能是迄今为止最著名和最常用的3D形状集合,但是比较小。相比之下,在计算机视觉和相关领域,已经有了一系列收集、组织和标记大型数据集的活动。

因此……

3.ShapeNet: An Information-Rich 3D Model Repository

ShapeNet是一个大型、信息丰富的3D模型存储库。它包含跨越多种语义类别的模型。与以前的三维模型存储库不同,它为每个模型提供了大量的注释集,以及存储库中的模型与存储库外的其他多媒体数据之间的链接。

在以下部分中,将讨论如何为ShapeNet收集3D模型,将添加哪些注释,如何生成这些注释,随着数据集的发展,注释将如何更新,以及将为社区提供哪些工具来搜索、浏览和利用现有数据,以及贡献新数据。

3.1 Data Collection

1.原始3D模型数据来自公共在线存储库或现有研究数据集。

2.虽然为这个项目开发的工具是通用的,但我们打算只包括日常世界中人们遇到的物体的三维模型。

3.2 Annotation Types

ShapeNet将包含一组丰富的注释,这些注释提供关于这些模型的语义信息,在它们之间建立链接,并链接到其他形式的数据(例如图像)。

  • 与语言相关的注释:按基本类别命名对象对于索引、分组和链接到相关数据源非常有用。
  • 几何注释:将ShapeNet与图像和视频数据集区分开来的一个关键特性是3D几何图形表示真实世界结构的保真度。1.刚性对齐:为每个模型建立一致的规范方向(例如,垂直和正面)对于各种任务非常重要;2.零件和关键点3.对称4.对象大小
  • 功能注释:许多物品,尤其是人造物品,如家具和电器,都可以被人类使用。功能注释描述了这些使用模式。1.功能部件:部件对于理解物体结构、涉及3D形状的人类活动和人体工程学产品设计至关重要。2.启示:我们对功能和活动特定的启示注释感兴趣。此类注释的示例包括支持平面注释和用于各种对象操作的可抓取区域注释。
  • 物理注释:真实对象存在于物理世界中,通常具有固定的物理属性,如尺寸和密度。1.表面材料;2.重量

3.3 Annotation Methodology

纯粹使用人工收集注释看似合理,但是通常使用混合方法。对可能的注释类型,首先通过算法预测每个模型实例的注释,然后,我们将通过crowd-sourcing pipelines和人类专家的检查来验证这些预测

3.4 Annotation Schema and Web API

4.Annotation Acquisition and Validation

构建ShapeNet的一个关键挑战是获取和验证注释的方法。我们的目标是提供高精度的所有注释。在尚未进行全面验证的情况下,我们的目标是估计每个注释的置信度,并记录其来源。这将使其他人能够正确估计我们提供的信息的可信度,并将其用于不同的应用。

4.1 类别注释

将每个3D模型分配给WordNet分类法中的一个或多个语法集。总体来说还是采用混合方式。

4.2 Hierarchical Rigid Alignment

这一步的目标是为每个类别中的模型建立一致的规范化方向。

尽管一致取向的概念似乎很自然,但有一个问题必须解决。我们用一个例子来解释。“扶手椅”、“椅子”和“座椅”是我们分类法中的三个类别,每个类别都是其后续类别的子类别。通过检查手臂、腿部和背部,可以很好地为“扶手椅”类别中的形状定义一致的方向。然而,很难定义“椅子”类别。例如,“侧椅”和“转椅”都是“椅子”的子类别,然而,转椅的腿结构与大多数侧椅截然不同。对“座椅”的定义变得更加模糊,它有“凳子”、“沙发”和“椅子”等子类别。然而,直立方向的概念仍然适用于分类学的大部分层次。

在上述讨论之后,自然会提出一种分层对齐方法,其基本思想是按照ShapeNet的分类法,以自下而上的方式对模型进行分层对齐。

4.3. Parts and Keypoints

对于零件,通过算法生成分割,然后让用户接受或修改这些分割中的零件,可以加快获取速度。

4.4. Symmetry Estimation

4.5. Physical Property Estimation

在给定的绝对尺寸下,我们现在通过填充体素化计算每个模型的总实体体积。

5.Current Statistics

在撰写本技术报告时,ShapeNet已经为大约300万个模型编制了索引。

6. Discussion and Future Work

  • Additional annotation types
  • Correspondences
  • RGB-D data :传感器捕捉现实世界
  • Annotation coverage

7.总结

作者坚信,ShapeNet将在以下几个方面为多个研究社区提供非常有用的资源:

  • Data-driven research
  • Training resource
  • Benchmark dataset

ShapeNet: An Information-Rich 3D Model Repository 阅读笔记的更多相关文章

  1. Make3D Convert your image into 3d model

    Compiling and Running Make3D on your own computer source: http://make3d.cs.cornell.edu/code_linux.ht ...

  2. QT Graphics-View 3D编程例子- 3D Model Viewer

    学习在Graphics-View框架中使用opengl进行3D编程,在网上找了一个不错的例子“3D Model Viewer”,很值得学习. 可以在http://www.oyonale.com/acc ...

  3. 3d模型 手办制作 3d model manual production

    3d模型 手办制作 3d model manual production 作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: 313 ...

  4. WPF 3D model - Sphere, Cone, and Cylinder

    原文:WPF 3D model - Sphere, Cone, and Cylinder   Extending Visual3D - Sphere, Cone, and Cylinder http: ...

  5. [论文阅读笔记] Adversarial Learning on Heterogeneous Information Networks

    [论文阅读笔记] Adversarial Learning on Heterogeneous Information Networks 本文结构 解决问题 主要贡献 算法原理 参考文献 (1) 解决问 ...

  6. [论文阅读笔记] Adversarial Mutual Information Learning for Network Embedding

    [论文阅读笔记] Adversarial Mutual Information Learning for Network Embedding 本文结构 解决问题 主要贡献 算法原理 实验结果 参考文献 ...

  7. 论文阅读笔记 Improved Word Representation Learning with Sememes

    论文阅读笔记 Improved Word Representation Learning with Sememes 一句话概括本文工作 使用词汇资源--知网--来提升词嵌入的表征能力,并提出了三种基于 ...

  8. Keras 文档阅读笔记(不定期更新)

    目录 Keras 文档阅读笔记(不定期更新) 模型 Sequential 模型方法 Model 类(函数式 API) 方法 层 关于 Keras 网络层 核心层 卷积层 池化层 循环层 融合层 高级激 ...

  9. [阅读笔记]Software optimization resources

    http://www.agner.org/optimize/#manuals 阅读笔记Optimizing software in C++   7. The efficiency of differe ...

随机推荐

  1. 集合框架-Map集合重点方法keySet演示

    1 package cn.itcast.p6.map.demo; 2 3 import java.util.HashMap; 4 import java.util.Iterator; 5 import ...

  2. java 方法实例

    // 方法 public class Demo { public static void main(String[] args) { m(); m2(2); m3('3', 4); m4(4, 6); ...

  3. python 中 *args he **kwargs的区别

    ''' 一 *args 和 **kwargs 的区别? *args 表示任意个 无名参数, 类型是元祖 tuple. **kwargs 表示的是关键字的参数 传入的参数是 dict 类型. 当*和** ...

  4. Linux 常见文件管理命令

    Linux文件系统 根目录:/ 从根目录开始,下面有一堆小目录 root:根用户的目录 bin:可执行文件命令 etc:配置文件 var:日志 lib:安装包或头文件,库文件 home:所有用户的家目 ...

  5. Spring系列13:bean的生命周期

    本文内容 bean的完整的生命周期 生命周期回调接口 Aware接口详解 Spring Bean的生命周期 面试热题:请描述下Spring的生命周期? 4大生命周期 从源码角度来说,简单分为4大阶段: ...

  6. pageX的兼容性处理1

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. Nodejs中调用系统命令、Shell脚本的方法和实例

    每种语言都有自己的优势,互相结合起来各取所长程序执行起来效率更高或者说哪种实现方式较简单就用哪个,nodejs是利用子进程来调用系统命令或者文件,文档见http://nodejs.org/api/ch ...

  8. Nodejs path对象

    很快Node就会迎来4.0的时代,届时将并入现有的iojs,所以先前写过的iojs入门系列直接更名为NodeJS入门. 本篇开始将逐个介绍Node的各主要模块,依循API文档走一遍,但会给出比API文 ...

  9. C语言设计ATM存取款界面

    这个虽然很简单,但是我还是弄了一会儿,可见有多菜.练习算. 主要考察switch开关语句.do...while语句,页面的跳转我用的是goto,虽然是弊端,可是还是用了,因为太菜啊.大家有好建议的欢迎 ...

  10. 获取缓存文件大小并清理 By HL

    通常用于删除缓存的时,计算缓存大小 //单个文件的大小 - (long long) fileSizeAtPath:(NSString*) filePath{ NSFileManager* manage ...