相约脑暴会,共创大未来——动态实时三维人体重建脑暴会

news2024/11/15 21:48:37

今夏我们召集江湖中的有识之士,共同探讨动态实时三维人体重建制作容积视频的方案,展开一场别开生面的脑暴会。在此,我们向全球开发者发出诚挚邀请,邀请您加入我们周三(8月2日)晚上八点通过腾讯会议进行的脑暴会,对于实现与改善动态实时三维人体重建项目进行进一步的讨论。

三维重建技术自问世以来,经过十数年的发展,已经成为一种较为高效的获取空间中物体表面三维结构的技术手段,在医疗,体育等领域都有着显而易见的广阔前景。而容积视频在元宇宙概念出现以来,也作为为其填充内容的一种高效的手段显得炙手可热,相较于传统的在计算机上复现产生3D模型的直接建模,使用深度相机进行实时重建有着其特有的优势,如速度快,复现效果好等,在其应用于人体的重建时,还能有效地减轻恐怖谷效应,是未来发展元宇宙的理想的信息采集转换工具。

动态实时三维人体重建形成的容积视频

硬件配置

在本次的动态实时三维人体重建项目中,我们以四台FemtoMega相机为基础,通过多机同步hub形成星型连接
星型链接示意图
使用路由器完成网络POE多机同步,分别配置四台深度相机和电脑的IP,使用FemtoMega多机同步软件完成四台深度相机的多机同步。完成多机同步后即可将四台深度相机分散开来,分别置于房间的四个角落,同时对准中央的视频采集区域。
![MultiDeviceSync_FemtoMega_Net](https://img-blog.csdnimg.cn/60bb767bae5e4435881fe21eeeb73f38.gif)

相机内参准备

运行捕获标定数据的相关程序(capture_calib.exe),分别采集空场景图片(避免标定板出现在拍摄范围内)。在相关路径下找到采集数据时产生的相机内参数据,修改**-color-rt.json文件使得其与每个相机的内参一一对应
修改的参数实例

相机标定

将标定所需的initial和precalib两个文件复制到OrbbecStudio\programs\orbbec\output\calib\下后开始相机的标定,将标定板置于视频采集区域内,运行main_calib_chessboard.exe程序,在稳定输出时间戳后开始采集标定数据,若标定成功,会在rig文件夹下产生rig\refined_rig_group.json文件。
运行示例
成功产生rig文件后命令行运行test_Rig2CVRig.exe程序,将直接标定产生的rig文件转换为可被用为动态实时三维人体重建的yaml文件。

视频采集

运行视频采集程序capture_video.exe,输入每次采样帧数后,每按下一次C键进行一次采集,输出一组深度文件和一组彩色文件在output/captureMul/Video_***文件夹下,出现如下提示时,说明该次采集的数据已经写入硬盘。此时,可继续按下C键进行下一次的数据采集,或者按ESC键或直接关闭命令行窗口退出程序。
运行示例
利用ffmpeg.exe,将每个.mjpg文件转换为可正常播放的.mkv文件。
运行示例

点云生成

命令行运行pointcloud_generate.exe程序,将采集到的数据转换为点云文件,格式如下:
.\pointcloud_generate.exe<1><2><3><4>
四个参数分别代表着采集数据路径,相机个数,深度阈值(深度大于这个阈值的信息将被滤掉,单位为米),深度mask的erode次数(将深度mask往内缩)
运行示例
运行后,点云文件(.ply)会生成在采集数据路径下的out文件夹内。运行过程中,可查看点云效果是否满意。如不满意可停止程序,重新调整运行参数后,再重新生成点云。

点云融合

命令行运行pointcloud_fusion.exe程序,对上一步生成的点云文件进行完整的三维重建,格式如下:
.\pointcloud_fusion.exe<1><2>
两个参数分别表示采集数据路径和总帧数。

运行示例
至此完成动态实时三维人体重建的过程,形成完整的容积视频在output文件夹中,可以通过unity等软件进行播放。

与微软AzureKineticDK动态实时三维人体重建的对比

重建效果请点击链接

为了进一步优化动态实时三维人体重建的效果和讨论实现动态实时三维人体重建的其他方案与可能性,我们将在周三晚(8月2号)八点到十点进行一场以此为主题的脑暴会,在会上讨论与此相关的几大议题,主要包括:

1.容积视频有哪些应用场景可以尽快落地实现商用;

2.多相机同步采集使用链型连接还是星型连接对于重建效果的影响;

3.使用POE以太网以外的方案(比如Type-C)进行通信的可能性与优缺点;

4.有没有更好的标定方法来改进动态实时三维重建质量;

5.是否可使用其他算法进行重建以获得到更好的重建效果(DynamicFusion/volumeDeform/BodyFusion/DoubleFusion/UnstructuredFusion/RobustFusion/KillingFusion/SurfelWarp/Fusion4D);

6.外部环境对动态实时三维人体重建效果的影响有哪些;

7.是否有更合适的深度阈值达到更好的重建效果;

8.是否可以使用ai修复点云融合不平整的地方。

此次脑暴会我们将对动态实时三维人体重建方案进行深入探讨,优化已有方案的重建效果,探索更优的重建方案,共同研究,思维碰撞。对于有可行性与前景的方案,我们期待与您的进一步讨论与合作。无论您研究算法或是希望实现三维重建,我们都欢迎您加入讨论,畅所欲言,提出宝贵意见,共同探索动态实时三维人体重建的最优解决方案。有意向加入我们的讨论或者对容积视频有兴趣的朋友可以扫描下方二维码,我们将于下周三(8月2日)晚8点通过腾讯会议开展一场深刻的脑暴会,期待您的加入!
在这里插入图片描述
(如果图片未显示,请前往文中链接加入群聊)
1.附Femto Mega相机信息
Femto Mega · 3D视觉开发者社区 · 奥比中光 (orbbec.com.cn)

2.附Femto Mega相机多机同步方案
Femto Mega 多机同步使用说明

3.容积视频开发方案请各位开发者共同探讨

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

多重背包二进制优化

可以将混合背包看作是一个特殊的多重背包&#xff0c;只要转化一下即可&#xff0c;将s-1转为1s0转化为m/v(最大可能装下的货物); 二进制优化的精髓就在于选择物品的次数&#xff0c;比如有s7&#xff0c;我们可以分为1&#xff0c;2 &#xff0c;4(二进制形式),1就代表选择一个…

HTTP协议+GET/POST区别

1. web开发流程 &#xff08;1&#xff09; HTML、CSS、JS、图片等资源通过浏览器进行整合&#xff0c;最终渲染出所需画面。 &#xff08;2&#xff09;浏览器对Web服务器进行资源请求 浏览器通过url请求资源。【HTTP协议、URL&#xff1a;确定唯一的一个资源】 浏览器请求…

DeepVO 论文阅读

论文信息 题目&#xff1a;DeepVO Towards End-to-End Visual Odometry with Deep Recurrent Convolutional Neural Networks 作者&#xff1a;Sen Wang, Ronald Clark, Hongkai Wen and Niki Trigoni 代码地址&#xff1a;http://senwang.gitlab.io/DeepVO/ (原作者并没有开源…

驶向专业:嵌入式开发在自动驾驶中的学习之道

导语: 自动驾驶技术在汽车行业中的快速发展为嵌入式开发领域带来了巨大的机遇。作为自动驾驶的核心组成部分&#xff0c;嵌入式开发在驱动汽车的智能化和自主性方面发挥着至关重要的作用。本文将探讨嵌入式开发的学习方向、途径以及未来在自动驾驶领域中的展望。 一、学习方向:…

备战携程面试:Redis Master-Slave异步同步进度独家解析!

Hello 大家好&#xff0c;我是你们的小米&#xff01;今天我要和大家分享一道来自携程的面试题&#xff1a;Redis Master-Slave异步同步的话怎么判断Slave同步进度&#xff1f; Redis&#xff0c;作为一款非常火热的内存数据库&#xff0c;提供了Master-Slave的异步复制机制&a…

什么是嵌入式软件开发?

嵌入式软件一般是在交叉的开发环境下进行的&#xff0c;这样的运行环境能够让软件开发过程中更加稳定、可靠和安全&#xff0c;在很大程度上提升了软件开发的质量和效率&#xff0c;同时也使得软件开发的难度和程度大大降低。 嵌入式软件的交叉开发环境&#xff0c;反映了用于…

【数据结构篇C++实现】- 特殊的线性表 - 串

友情链接&#xff1a;C/C系列系统学习目录 文章目录 串&#x1f680;一、串的定义&#x1f680;二、串的存储结构&#x1f6f4;&#xff08;一&#xff09;串的顺序存储结构1、定长顺序存储表示2、堆分配存储表示 &#x1f6f4;&#xff08;二&#xff09;串的链式存储结构3、块…

ES6 - Iterator迭代器和for...of 循环

文章目录 前言一、Iterator介绍二、Iterator原理三、实现Iterator接口的原生对象有五、默认调用 Iterator 接口的场合六&#xff0c;for... of 循环七&#xff0c;总结 前言 JavaScript 原有的表示“集合”的数据结构&#xff0c;主要是数组&#xff08;Array&#xff09;和对…

【每天40分钟,我们一起用50天刷完 (剑指Offer)】第四十二天 42/50【unordered_set】【双指针处理连续】【翻转字符串】

专注 效率 记忆 预习 笔记 复习 做题 欢迎观看我的博客&#xff0c;如有问题交流&#xff0c;欢迎评论区留言&#xff0c;一定尽快回复&#xff01;&#xff08;大家可以去看我的专栏&#xff0c;是所有文章的目录&#xff09;   文章字体风格&#xff1a; 红色文字表示&#…

优思学院|企业遇到瓶颈期怎么办?六西格玛管用吗?

企业遇到瓶颈期应该分析一下原因&#xff0c;企业内部应该和各级一起思考如何解决、如何舒缓&#xff0c;即使找管理咨询公司同样也是这样做的&#xff0c;关键是企业是否连一个领导者也没有呢&#xff1f; 企业每天都会遇到新的问题&#xff0c;是否每次都要找管理咨询公司&a…

第七篇:k8s集群使用helm3安装Prometheus Operator

安装Prometheus Operator 目前网上主要有两种安装方式&#xff0c;分别为&#xff1a;1. 使用kubectl基于manifest进行安装 2. 基于helm3进行安装。第一种方式比较繁琐&#xff0c;需要手动配置yaml文件&#xff0c;特别是需要配置pvc相关内容时&#xff0c;涉及到的yaml文件太…

iOS--frame和bounds

坐标系 首先&#xff0c;我们来看一下iOS特有的坐标系&#xff0c;在iOS坐标系中以左上角为坐标原点&#xff0c;往右为X正方向&#xff0c;往下是Y正方向如下图&#xff1a; bounds和frame都是属于CGRect类型的结构体&#xff0c;系统的定义如下&#xff0c;包含一个CGPoint…

卡片布局 可左右上删除,可向下拉出上一个 支持复用

效果 支持左右上 三个方向删除内容&#xff0c;支持下拉显示上一个。支持adapter 支持复用。 使用 myLayout.setAdapter(new StackAdapter() {final int[] bgColorsnew int[]{Color.RED,Color.GREEN,Color.BLUE};Overridepublic View getView(int position, LayoutInflater …

Docker Hub和镜像仓库

目录 前言 创建存储库 推送镜像&#xff08;可选&#xff09; 搜索镜像 拉取镜像 前言 Docker Hub 是 Docker 公司提供的官方公共 Docker 镜像注册表&#xff0c;允许用户存储、分享和获取 Docker 镜像。在 Docker Hub 上&#xff0c;你可以找到许多官方和社区维护的 D…

三、前端高德地图、测量两个点之前的距离

点击测距工具可以开启测量&#xff0c;再次点击关闭测量&#xff0c;清除地图上的点、连线、文字 再次点击测量工具的时候清除。 首先 上面的功能条河下面的地图我搞成了两个组件&#xff0c;他们作为兄弟组件存在&#xff0c;所以简单用js写了个事件监听触发的对象&#xff…

JavaScript三元运算符

条件运算符&#xff08;三元运算符&#xff09;的基本结构 条件 &#xff1f; true:false例如&#xff1a; const age 20; age > 18 ? console.log("你已经成年了"):console.log("你还是一个孩子&#xff01;");我们这里把条件运算符和IF来做个区分…

高等数学中如何求间断点

高等数学中求间断点是一项重要的技巧&#xff0c;特别适用于分析函数的性质和图像的特征。在本文中&#xff0c;我们将深入探讨如何在给定函数中找到间断点&#xff0c;并解释其数学原理和实际应用。 什么是间断点&#xff1f; 在高等数学中&#xff0c;间断点是指函数在某个点…

Trello的功能、优缺点、国内使用体验,及4大类似的项目工具

1、Trello是什么软件&#xff0c;有哪些功能&#xff1b; 2、Trello的价格及国内用户的使用体验&#xff1b; 3、盘点国内同类型的项目管理软件&#xff1b; 4、对比国内工具Worktile、Teambition等工具如何。 一、Trello是什么软件&#xff0c;有哪些功能&#xff1f; 【官网…

Pytorch 最全入门介绍,Pytorch入门看这一篇就够了

本文通过详细且实践性的方式介绍了 PyTorch 的使用&#xff0c;包括环境安装、基础知识、张量操作、自动求导机制、神经网络创建、数据处理、模型训练、测试以及模型的保存和加载。 1. Pytorch简介 在这一部分&#xff0c;我们将会对Pytorch做一个简单的介绍&#xff0c;包括它…

uniapp打包本地资源使用原生安卓打包

Android安装打包 1. 安装sdk 2.安装解压openjdk到D盘 3.安装编辑器 在D盘新建文件 Androidstudio 将编辑器安装到这个Androidstudio 文件内 配置sdk路径 打包步骤&#xff1a; 1. 打开项目&#xff0c;如图&#xff1a; 2. uniapp的本地打包资源可以在 这里替换apps包下 再修…