基于三个kinect的人体重建,首先要对三个kinect相机进行标定,得到相机内外参数。这样每个相机看到空间一点的坐标是一致的,三个相机坐标系得以统一。标定方法是两两标定,即取某一kinect相机(记为A)为参考,其他两个(记为B、C)分别与A标定,得到两组相机参数。这里,我是用的matlab自带的标定方法stereoCameraCalibrator,见链接matlab。例如,用两个处于同一水平线的kinect(如下图所示)进行标定测试,得到的参数是旋转矩阵R为:

0.9949 -0.0196   0.0991

0.0235 0.9990  -0.0384

-0.0983 0.0405    0.9943

平移向量T为:

-280.5068  2.5255   -25.4387

由标定结果可以看出,R矩阵接近于单位矩阵,表明两相机位置上是基本平行的。平移向量中-280.5068表示两相机x方向距离为28cm,而x方向的实际距离为26~27cm,这说明标定精度还是比较可靠的。

标定之后可以得到两组相机参数(旋转矩阵和平移向量),这在之后的点云拼接中会有用。

点云获取

通过sdk中内置的转换函数,将由kinect获取到的深度图像转换为点云数据,并保存。如下图所示为一个角度获取的点云。

点云处理

由于点云的数据量非常庞大,并且存在着冗余数据和噪声干扰,增加了计算复杂度。因此在点云拼接之前需要预先对点云进行处理。这其中的关键问题是提取点云数据中能反映曲面特征的点,精简数据并且去除噪声,提高重建的精度和效率。去噪方法是联合双边滤波算法

点云拼接

三维点云拼接实质是将不同坐标系下得到的数据点云进行坐标变换,通过两片或多片数据点云中找出正确的排列关系,拼接成一片完整的数据点云。其中的关键问题就是利用旋转矩阵和平移矩阵,通过ICP算法对点云进行配准。

java kinect 人体识别_基于三个kinect的人体建模相关推荐

  1. java人体识别_基于安卓Android的人体动作行为识别系统APP设计(Android studio)

    基于安卓Android的人体动作行为识别系统APP设计(Android studio)(论文12000字,程序代码) 摘要:Android手机已经成为我们大部分人日常生活中不可或缺的一部分,而且其功能 ...

  2. java人体识别_用华为HMS ML kit人体骨骼识别技术,Android快速实现人体姿势动作抓拍...

    items = results.getAnalyseList(); // 开发者根据需要处理识别结果,例如,在此方法中进行相似度计算,从而在检测到特定姿势后进行拍照等操作. // 需要注意,这里只对检 ...

  3. java kinect 人体识别_基于kinect的人体动作识别系统

    [实例简介] 基于kinect v2的人体动作识别,配套博客(http://blog.csdn.net/baolinq/article/),基于mfc,可以识别左移右移.上蹦下跳等,也可以自己自定义其 ...

  4. java kinect 人体识别_深度图像的Kinect骨架算法

    要使用Kinect跟踪骨架,您必须启用SkeletonStream并获取其中包含骨架信息的帧(而不是从深度帧获取信息 . 它们内部不存储骨架信息) . 首先,您必须在应用程序中启用骨架流,就像使用深度 ...

  5. 基于三个kinect的人体建模

    单个kinect的人体重建,在Kinect SDK 1.8中,Kinect Fusion的效果已经很不错了.其缺点显而易见,一是扫描时间长,重建对象也需要长时间保持静态:二是需要人体或者kinect转 ...

  6. java项目----教务管理系统_基于Java的教务管理系统

    java项目----教务管理系统_基于Java的教务管理系统 2022-04-22 18:18·java基础 最近为客户开发了一套学校用教务管理系统,主要实现学生.课程.老师.选课等相关的信息化管理功 ...

  7. 人体识别_电子皮肤用于人体状态识别的柔性集成传感器

    研究背景 实时监测人体状态对人体健康非常重要,身体状态的识别可以帮助提醒疲惫的人休息,避免危险的行为,开发健身游戏和其他娱乐项目,评估运动训练强度等.柔性传感器是在日常生活的持续健康监测中提取各种身体 ...

  8. 电容屏物体识别_基于电容屏的物体识别技术简介

    原标题:基于电容屏的物体识别技术简介 物体识别技术概述 物体识别是基于触控屏的标签识别交互系统,由触控屏和实物标签Marker,软件底层识别程序和软件上层效果程序,支持多个Marker同时显示,将Ma ...

  9. java 网络抓包_基于java的网络抓包方法

    本实验是用java实现的网络抓包程序,在windows环境下安装winpcap4.0和jpcap6.0后,下载eclipse和jigloo插件(一种在eclipse底下作图形化开发的工具),将其安装好 ...

最新文章

  1. iOSSharing #9 | 2019-05-19
  2. Nutanix助力五矿证券迈向金融混合云2.0
  3. 04.ARP:地址解析协议
  4. Python+Django+Eclipse 在Windows下快速开发自己的网站
  5. inline-block清除空隙2
  6. iOS appstore各种图片的尺寸和需要注意的地方
  7. / ./ ../ 的区别
  8. Java 线程实例一(查看线程是否存活、获取当前线程名称、状态监测、线程优先级设置、死锁及解决方法、获取线程id、线程挂起)
  9. Android编程知识点3-Intent
  10. CSDN blog 还需要继续改进
  11. 安徽考区计算机水平考试试卷,安徽考区计算机水平考试试卷2011.6
  12. Web前端开发技术实验与实践(第3版)储久良编著实训4
  13. 如何通过iTunes安装ipa测试包
  14. 微信的商户单号和交易单号_教你获取支付宝和微信的订单号、商户单号,涨知识了...
  15. Activity及其生命周期
  16. C语言中u8 u16 u32含义,有关stm32的问题,程序里面的u8、u16这些是什么意思啊
  17. canvas入门级基本用法实现雨滴下落特效
  18. python報錯: OSError: Unable to locate Ghostscript on paths
  19. vcftools手册重要参数集合
  20. java+上传一个文件夹

热门文章

  1. UI组件-UIPickerView
  2. 从操作系统内核看设计模式--linux内核的facade模式
  3. RecyclerView实现滑动删除和拖拽功能
  4. Effective Java 学习笔记(第53条:接口优先于反射机制)
  5. 将Windows8或WindowsServer2012装在VHD上
  6. Unity3d之求物体体积
  7. django准备 —环境配置,及其虚拟环境安装、django安装、数据库安装、新建项目...
  8. 学习进度条__软件工程概论第一周学习计划
  9. hdu3359 Kind of a Blur
  10. 初步学习nodejs,业余用node写个一个自动创建目录和文件的小脚本,希望对需要的人有所帮助...