Fei-Fei Li-Lecture 16:3D Vision 【斯坦福大学李飞飞CV课程第16讲:3D Vision】

目录

P1 2D Detection and Segmentation

P2 Video = 2D + time series

P3 Focus on Two Problems

P4 Many more topics in 3D Vision

P5-10 Multi-View CNN 

P11 Experiments – Classification & Retrieval

P12 3D Shape Representations

P13--17 3D Shape Representations: Depth Map

Per-Pixel Loss (L2 Distance) 

Problem: Scale / Depth Ambiguity

Predicting Depth Maps

 P18--26   3D Shape Representations: Surface Normals 曲面法线

 3D Shape Representations: Voxels

Processing Voxel Inputs: 3D Convolution

 Generating Voxel Shapes: 3D Convolution

P27--34  3D Shape Representations: Point Cloud

Proessing Pointcloud Inputs: PointNet

Generating Pointcloud Outputs

 Predicting Point Clouds: Loss Function

 P35--51    3D Shape Representations: Triangle Mesh

 Predicting Meshes: Pixel2Mesh

 Predicting Triangle Meshes: Graph Convolution

Predicting Triangle Meshes: Vertex-Aligned Features

Predicting Meshes: Loss Function

P52--73 3D Shape Prediction: Mesh R-CNN

Mesh R-CNN: Hybrid 3D shape representation

 Mesh R-CNN Pipeline

Mesh R-CNN: ShapeNet Results

Datasets for 3D Objects

 Datasets for 3D Object Parts

 P74--92   3D Shape Representations: Implicit Functions

 Algebraic Surfaces (Implicit)

 Constructive Solid Geometry (Implicit) 

 Level Set Methods (Implicit) 

 NeRF: Representing Scenes as Neural Radiance Fields

P93 Summary: 3D Shape Representations


P1 2D Detection and Segmentation

Classification分P类:没有空间信息,只是对一张图片进行分类

Semantic Segmentation语义分割: 没有物体,只有像素点,对像素点进行分类

Object Detection目标检测:直接识别出物体并进行分类

Instance Segmentation:实例分割=目标检测+语义分割 (第一次听说这个)

语义分割只需要分出不同类就行,同类的不同个体不需要分,但是Instance Segmentation在语义分割的基础上又把不同的类进行了分割:目标检测后,需要对检测的部分做进一步的语义分割

P2 Video = 2D + time series

视频就是2D的图像加上了时间序列

P3 Focus on Two Problems

今天需要解决的两个问题

①由一张输入图像得到一个3D模型

②识别3D模型进行类别判定

P4 Many more topics in 3D Vision

3D Representations 三维表示法
Computing Correspondences 计算对应关系
Multi-view stereo 多视角立体
Structure from Motion 运动结构
Simultaneous Localization and Mapping (SLAM) 同步定位和绘图
View Synthesis 视图合成
Differentiable Graphics 可变图形
3D Sensors 三维传感器

P5-10 Multi-View CNN 

CNN1:提取图像特征的卷积神经网络

CNN2:生成描述形状符的卷积神经网络

P11 Experiments – Classification & Retrieval

Q:MVCNN? SPH? LFD? 3D ShapeNets? FV? 

P12 3D Shape Representations

Q: Voxel Grid?  Pointcloud?  Mesh?  Surface? 

A:下面详细讲啦

P13--17 3D Shape Representations: Depth Map

RGB image + Depth image = RGB-D Image (2.5D)

Q:H是Height ?  W是Width?

 可以使用全卷积神经网络进行深度图预测,得到两个估计的深度图,然后还可以得到每像素Loss 

Per-Pixel Loss (L2 Distance) 

Q:L2 距离是什么?

Problem: Scale / Depth Ambiguity

Q:具体是什么意思以及怎么解决?

A: 意思大概是单目图像中信息有限

Predicting Depth Maps

 Scale invariant 尺度不变性

 P18--26   3D Shape Representations: Surface Normals 曲面法线

对于每个像素,表面法线给出一个向量,表示该像素的世界上的对象的法向向量

假设 RGB Image为 3 x H x W,那么法线图 Normals: 3 x H x W

Predicting Normals

 3D Shape Representations: Voxels

• Represent a shape with a V x V x V grid of occupancies     网格表示形状

• Just like segmentation masks in Mask R-CNN, but in 3D!   分割掩码

• (+) Conceptually simple: just a 3D grid!     只是一个3D网格

• (-) Need high spatial resolution to capture fine structures 需要高空间分辨率捕捉精细结构

• (-) Scaling to high resolutions is nontrivial !   缩放到高分辨率并不容易

Processing Voxel Inputs: 3D Convolution

 Generating Voxel Shapes: 3D Convolution

 Voxel Problems: Memory Usage

        Storing 1024(3次方) voxel grid takes 4GB of memory

Scaling Voxels: Oct-Trees 八叉树

Q: 没太看懂这个Oct-Trees

P27--34  3D Shape Representations: Point Cloud

• Represent shape as a set of P points in 3D space

• (+) Can represent fine structures without huge numbers of points

• ( ) Requires new architecture, losses, etc

• (-) Doesn’t explicitly represent the surface of the shape: extracting a mesh for rendering or other applications requires post-processing  

提取网格为渲染或其他应用提取网格需要进行后处理

Proessing Pointcloud Inputs: PointNet

 MLP ?  

Max-Pool?

Generating Pointcloud Outputs

 Predicting Point Clouds: Loss Function

 

 P35--51    3D Shape Representations: Triangle Mesh

 Predicting Meshes: Pixel2Mesh

 Idea #1: Iterative mesh refinement

Start from initial ellipsoid mesh Network predicts offsets for each vertex Repeat.

从初始椭球网格开始 网络预测每个顶点的偏移 重复。

 Predicting Triangle Meshes: Graph Convolution

 

 Problem: How to incorporate image features?

Predicting Triangle Meshes: Vertex-Aligned Features

Predicting Meshes: Loss Function

The same shape can be represented with different meshes – how can we define a loss between predicted and ground-truth mesh?

Idea: Convert meshes to pointclouds, then compute loss

P52--73 3D Shape Prediction: Mesh R-CNN

 

Mesh R-CNN: Hybrid 3D shape representation

 Mesh R-CNN Pipeline

 

Mesh R-CNN: ShapeNet Results

Datasets for 3D Objects

Large-scale Synthetic Objects: ShapeNet, 3M models

ModelNet: absorbed by ShapeNet

ShapeNetCore: 51.3K models in 55 categories

 Datasets for 3D Object Parts

Fine-grained Parts: PartNet

• Fine-grained (+mobility)

• Instance-level

• Hierarchical

 P74--92   3D Shape Representations: Implicit Functions

 Algebraic Surfaces (Implicit)

 Constructive Solid Geometry (Implicit) 

 Level Set Methods (Implicit) 

 

 

 NeRF: Representing Scenes as Neural Radiance Fields

 

 

P93 Summary: 3D Shape Representations

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/96675.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

hadoop大数据集群中更换磁盘,balance的速度缓慢问题(解决)

hadoop大数据集群中更换磁盘,balance的速度缓慢问题(解决) 看现象只有4个bloucks在执行的 调整参数: 增大配置参数,观察重新负载的速度 修改配置文件 hdfs-site.xml dfs.datanode.balance.max.concurrent.moves100 …

多线程应用——单例模式

单例模式 文章目录 单例模式一.什么是单例模式二.如何实现1.口头实现2.利用语法特性 三.实现方式(饿汉式懒汉式)1.饿汉式2.懒汉式3.线程安全的单例模式4.双重检查锁5.禁止指令重排序 一.什么是单例模式 单例模式(Singleton Pattern&#xff…

软件研发CI/CD流水线图解

当谈到现代软件开发流程时,持续集成(Continuous Integration,简称CI)和持续交付(Continuous Delivery,简称CD)是两个关键的实践。它们旨在加速开发流程、提高软件质量,并使软件发布更…

kafka架构和原理详解

Apache Kafka 是一个分布式流数据平台,用于高吞吐量、持久性、可扩展的发布和订阅消息。它具有高度的可靠性,被广泛用于构建实时数据流处理、日志收集和数据管道等应用。 基本架构 1. 主题(Topic): 主题是消息的逻辑分类生产者将消息发布到特定的主题中,而消费者可以订阅…

【spring】一文带你弄懂Spring Bean的生命周期(超详细,超级通俗易懂!!)

目录 首先让我们来回顾一下Spring中的Bean是什么 Bean的生命周期 然后让我们由浅及深的对Bean的创建过程进行了解 首先来看最核心的五步骤 然后让我们逐层递进,学习一下七步骤版本吧 现在我们就可以进一步了解十步骤的版本(完整的生命周期&#xff…

LLMs之Code:Code Llama的简介、安装、使用方法之详细攻略

LLMs之Code:Code Llama的简介、安装、使用方法之详细攻略 导读:2023年08月25日(北京时间),Meta发布了Code Llama,一个可以使用文本提示生成代码的大型语言模型(LLM)。Code Llama是最先进的公开可用的LLM代码任务,并有潜…

视频分割合并工具说明

使用说明书:视频分割合并工具 欢迎使用视频生成工具!本工具旨在帮助您将视频文件按照指定的规则分割并合并,以生成您所需的视频。 本程序还自带提高分辨率1920:1080,以及增加10db声音的功能 软件下载地址 https://github.com/c…

C# 学习笔记--个人学习使用 <2>

C# 学习笔记 Chapter 2 比较硬的基础部分Section 1 委托Part 1 Action 与 func 委托的示例Part 2 自定义委托Part 3 委托的一般使用Part 4 委托的高级使用Part 5 适时地使用接口 Interface 取代一些对委托的使用 Section 2 事件Part 1 初步了解事件Part 2 事件的应用Part 3 事件…

一个简单的vim例子

一.欢迎来到我的酒馆 在本章节介绍vim工具。 目录 一.欢迎来到我的酒馆二.什么是vim 二.什么是vim 2.1什么是vim vim是一种Linux命令行类型 的文本编辑器。vim指的是"vi improved",意思是vi工具的升级版。vim是基于vi实现的,它提供了…

【1654. 到家的最少跳跃次数】

来源:力扣(LeetCode) 描述: 有一只跳蚤的家在数轴上的位置 x 处。请你帮助它从位置 0 出发,到达它的家。 跳蚤跳跃的规则如下: 它可以 往前 跳恰好 a 个位置(即往右跳)。它可以 …

C++中为什么有模板的函数不能和.h文件分离,即分别声明和定义

目录 1.查看问题 2.探索问题 3.解决问题 1.查看问题 1.先看下面三个文件 stack.h stack.cpp test.cpp 2.探索问题 有了解的小伙伴应该知道大概率是在预处理,编译,汇编,链接中编译环节出错了,它在其他文件中无法通过定义找到函…

MATLAB 2023安装方法之删除旧版本MATLAB,安装新版本MATLAB

说明:之前一直使用的是MATLAB R2020b,但最近复现Github上的程序时,运行不了,联系作者说他的程序只能在MATLAB 2021之后的版本运行,因此决定安装最新版本的MATLAB。 系统:Windows 11 需要卸载的旧MATLAB 版…

快手Java一面,全是基础

现在已经到了面试招聘比较火热的时候,准备面试的过程中,一定要多看面经,多自测! 今天分享的是一位贵州大学的同学分享的快手一面面经。 快手一面主要会问一些基础问题,也就是比较简单且容易准备的常规八股&#xff0…

微信小程序云开发-云存储文件ID转http

一、前言 云开发的云储存文件默认是以cloudID的形式读取的,但是这种读取方式只能在微信小程序或内嵌H5中使用。 所以如果需要在其他地方使用,例如浏览器或网站等其他端读取文件的时候,需要转换成普通的http链接。 目前官方提供有转换的接口…

docker之Compose与DockerSwarm

目录 Compose 简介 概念 为什么需要? 配置字段 常用命令 安装 1.下载 2.授权 使用 1.创建文件 2.启动 docker Swarm 关键概念 调度策略 spread binpack random 特性 集群部署 1.准备 2.创建swarm并添加节点 在主服务器上创建swarm集群 节点…

8天长假快来了,Python分析【去哪儿旅游攻略】数据,制作可视化图表

目录 前言环境使用模块使用数据来源分析 代码实现导入模块请求数据解析保存 数据可视化导入模块、数据年份分布情况月份分布情况出行时间情况费用分布情况人员分布情况 前言 2023年的中秋节和国庆节即将来临,好消息是,它们将连休8天!这个长假…

MongoDB入门

简介 MongoDB是一个开源、高性能、支持海量数据存储的文档型数据库 是NoSQL数据库产品中的一种,是最像关系型数据库(MySQL)的非关系型数据库 内部采用BSON(二进制JSON)格式来存储数据,并支持水平扩展。 MongoDB本身并不是完全免费的,它对于…

算法-图BFS/DFS-单词接龙

算法-图BFS/DFS-单词接龙 1 题目概述 1.1 题目出处 https://leetcode-cn.com/problems/number-of-islands 1.2 题目描述 给定两个单词(beginWord 和 endWord)和一个字典,找到从 beginWord 到 endWord 的最短转换序列的长度。转换需遵循如…

C++八股记录

C内存管理 C中,内存分成5个区。 栈:函数内局部变量;自动管理,效率高,但空间较小; 堆:new分配的内存块;手动管理,效率低,但空间大; 自由存储区&…

代码复现,我能行之DMP-MATLAB

代码复现,我能行——系列一 一、基础概念 Dynamic Movement Primitives (DMP),中文为动态运动基元或动态运动原语,由美国University of Southern California的Stefan Schaal教授团队于2002年提出,是一种用…