论文阅读:Pix2Vox++: Multi-scale Context-aware 3D Object Reconstruction from Single and Multiple Images

Pix2Vox++是一种基于深度学习的3D对象重建框架,解决了基于RNN的方法在顺序依赖和记忆丧失上的问题。它通过编码器-解码器结构并行生成粗略3D体积,再用多尺度上下文感知融合模块自适应选择高质量重建,最后用细化器校正错误。Pix2Vox++在准确性和效率上优于现有方法,并在多个数据集上表现出色。
摘要由CSDN通过智能技术生成

Pix2Vox++: Multi-scale Context-aware 3D Object Reconstruction from Single and Multiple Images

Pix2Vox++:基于单个和多个图像的多尺度上下文感知三维对象重建

来源:International Journal of Computer Vision 2020
源码

摘要

利用深度神经网络从单幅或多幅图像中恢复物体的三维形状在过去的几年中受到越来越多的关注。主流作品(例如3D-R2N2)使用递归神经网络(RNNs)来顺序融合输入图像的特征图。然而,当给定具有不同阶数的相同输入图像时,基于RNN的方法不能产生一致的重建结果。此外,由于长期记忆丧失,RNNs可能会忘记早期输入图像的重要特征。为了解决这些问题,我们提出了一种新的单视图和多视图三维对象重建框架,称为Pix2Vox++。通过使用设计良好的编码器解码器,它从每个输入图像生成一个粗略的3D体积。然后引入多尺度上下文感知融合模块,自适应地从所有粗略三维体中为不同部分选择高质量重建,以获得融合的三维体。为了进一步校正融合的3D体积中错误恢复的部分,采用rediner来产生最终输出。在ShapeNet、Pix3D和Things3D基准上的实验结果表明,Pix2Vox++在准确性和效率方面都优于最先进的方法。

关键词:三维物体重建、多尺度上下文感知、卷积神经网络

介绍

推断物体的完整和精确的三维形状在机器人学、三维建模和动画、物体识别和医学诊断中是必不可少的。传统的方法,如来自运动的结构(SfM)(zy eil等人,2017)和同时定位和映射(SLAM) (Fuentes-Pacheco等人,2015),匹配从稍微不同的视图捕获的跨图像的特征,然后使用三角测量原理来恢复图像像素的3D坐标。虽然这些方法可以产生质量令人满意的3D重建,但它们通常使用校准良好的相机来捕获同一对象的多个图像,这在某些情况下是不实用或不可行的(Yang等人,2019)

最近,几种基于深度学习的方法,包括3D-R2N2 (Choy等人,2016年)、(Kar等人,2017年)、DeepMVS (Huang等人,2018年)、RayNet (Paschalidou等人,2018年)和AttSets (Yang等人,2020年),从一幅或多幅RGB图像中恢复物体的3D形状,而无需复杂的相机校准,并显示出有希望的结果。3D-R2N2 (Choy等人,2016)和LSM (Kar等人,2017)都将多视图3D重建表述为序列学习问题,并使用递归神经网络(RNNs)融合由共享编码器从输入图像中提取的多个特征图。当有更多的对象视图可用时,要素地图会逐渐细化。然而,基于RNN的方法有三个局限性。首先,当给定具有不同顺序的相同图像时,由于排列方差,RNNs不能一致地估计物体的3D形状(Vinyals等人,2016)。其次,早期输入图像的重要特征可能会因为RNNs的长期记忆丧失而被遗忘(Pascanu等人,2013)。第三,基于RNN的方法很耗时,因为输入图像是顺序处理的,没有并行化(Hwang和Sung)

为了克服基于的方法的缺点,DeepMVS (Huang等人,2018)使用最大池来聚集一组无序图像上的深度特征,用于多视图立体重建。RayNet (Paschalidou等人,2018)应用平均池

你可以使用 PyTorch-CycleGAN-and-pix2pix 库来使用预训练好的模型。下面是一个简单的步骤示例: 1. 首先,确保你已经安装了 PyTorch-CycleGAN-and-pix2pix 库。你可以使用以下命令安装: ``` pip install git+https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix ``` 2. 下载预训练模型。你可以在 CycleGAN 和 pix2pix 的模型网页(https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix#model-checkpoints)上找到预训练模型的链接。下载并解压缩模型文件夹。 3. 创建一个配置文件。在模型文件夹中,复制并重命名 `test_opt.txt.example` 文件为 `test_opt.txt`。该文件用于配置测试参数。 4. 配置测试参数。打开 `test_opt.txt` 文件,并根据你的需求修改参数。重要的参数包括 `dataroot`(数据集的路径)和 `name`(模型名称)。 5. 运行测试脚本。使用以下命令运行测试脚本: ``` python test.py --dataroot ./path/to/dataset --name pretrained_model_name --model test_model_name ``` 确保将 `./path/to/dataset` 替换为你的数据集路径,`pretrained_model_name` 替换为你下载的预训练模型文件夹的名称,`test_model_name` 替换为你想要使用的测试模型的名称(如 `cycle_gan` 或 `pix2pix`)。 6. 查看结果。测试完成后,生成的结果将保存在模型文件夹中的 `results` 子文件夹中。 请注意,这只是一个基本的示例,你可能需要根据你的具体情况进行更多的配置和调整。你可以参考 PyTorch-CycleGAN-and-pix2pix 库的文档以获取更多详细信息和用法示例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值