技术支持: www.zhhdcm.com   www.waterworms.net

互动投影最近一直比较火,价格却是不菲,最近研究了一下,其实原理是很简单的。

我们知道光是一种电磁波,它的波长区间从几个纳米(1nm=10-9m)到1毫米(mm)左右。人眼可见的只是其中一部分,我们称其为可见光,可见光的波长范围为380nm~780nm,可见光波长由长到短分为红、橙、黄、绿、青、兰、紫光,波长比紫光短的称为紫外光,波长比红外光长的称为红外光。普通的摄像头感光芯片分为CCD或者CMOS, CCD色彩更好一些,CMOS造价便宜些, ,它们都有一种特殊的本领,那就是感知人眼看不到的区域。它们对近红外线也都非常敏感。那么当使用滤光片技术过滤掉可见光以后,那么摄像机看到的是什么的,应该是一片由红外辐射组成的图像。


投影机投射的光线是可见光部分,它的红外部分被它内部的过滤膜过滤掉了,这样对于摄像机来讲它看不到投影机投射的内容,如果红外线如果强的话,摄像机就可以看见人体了。怎样加强摄像机看到的物体的图像呢,幸运的是目前市场上这样红外主动发射技术已经很成熟了,例如监控市场上卖的那种夜视摄像头就可以发射近红外(850 nm), 功率更大的有专门的远距离红外灯,不过目前夜视摄像头可以达到5m的距离,所以不需要了。夜视摄像头主动发射红外,然后ccd传感器接受红外,那么互动投影中最难的部分,人体与背景虚拟对象的分割就解决了,摄像机得到的是一副黑白的单色背景的包括人的图像。

一张红外相机的图片

那么下一步,怎样检测人体部分呢。这里对于计算机视觉来讲就是一个非常简单的技术了,就是差分,差分就是把摄像头得到的连续两帧的图像进行相减,那么得到的是什么呢,得到的是运动的部分,所以说只要人在动,差分就会把动的部分截取下来。接下来就是分析得到的数据了,再将虚拟部分投射出来了,不复杂吧。

差分图像示例:
当然复杂的互动投影不只是这些技术,这些只是最基本的原理了,其间还涉及到摄像机的标定,光流法寻找运动方向,性能的优化处理,特殊的效果。

那么互动投影最基本的设备有那些呢,

A 红外摄像机(只看红外部分,可以用监控市场上卖的那种夜视摄像头200-800元不等,如果追求更高实时交互性,可以使用高速红外相机。),
B 红外滤光片(过滤可见光,图为光谱范围)

C 高流明的投影机,(如果你没有投影机的话,也可以用你的LCD显示器代替,就可以跟你的手互动了。)
D 电脑一台(强劲的CPU是关键喽,如果你需要显示3d图形,高效的显卡也不能缺少。)
E 视频采集卡一个(负责从摄像机的模拟信号转到计算机的数字信号)

F 视频连接线等等

软件部分有

A 视频获取 directshow 或者vfw 或者采集卡的开发包

B 视频分析 (直接用bmp也可以, opencv更好了)

C 界面显示 (directx 3d 或者opengl 或者 flash)

D 其他辅助库 比如物理引擎ODE,载入3D模型库(lib3ds)等等

互动投影原理简单介绍相关推荐

  1. BP神经网络原理简单介绍以及公式推导(矩阵形式和分量形式)

    BP神经网络原理简单介绍以及公式推导 标签(空格分隔): 神经网络 \def\net(#1){net^{(#1)}} \def\Y(#1){Y^{(#1)}} \def\part(#1){\parti ...

  2. LDAP服务器的概念和原理简单介绍

    仅用于个人学习,侵删. 本文转自:LDAP服务器的概念和原理简单介绍 [http://seanlook.com/2015/01/15/openldap_introduction/] 1. 目录服务 目 ...

  3. CAS单点登录原理简单介绍

    1. SSO简介 1.1 单点登录定义 单点登录(Single sign on),英文名称缩写SSO,SSO的意思就是在多系统的环境中,登录单方系统,就可以在不用再次登录的情况下访问相关受信任的系统. ...

  4. Android通过辅助功能实现抢微信红包原理简单介绍

    简书文章:https://www.jianshu.com/p/e1099a94b979 附抢红包开源项目地址,代码已全改为Kotlin了,已适配到最新微信7.0.5版本,如果对你有所帮助赏个star吧 ...

  5. dubbo学习过程、使用经验分享及实现原理简单介绍

    一.前言 部门去年年中开始各种改造,第一步是模块服务化,这边初选dubbo试用在一些非重要模块上,慢慢引入到一些稍微重要的功能上,半年时间,学习过程及线上使用遇到的些问题在此总结下. 整理这篇文章差不 ...

  6. dubbo学习过程、使用经验分享及实现原理简单介绍,dubbo经验分享

    原文出处http://blog.csdn.net/hzzhoushaoyu/article/details/43273099 一.前言 部门去年年中开始各种改造,第一步是模块服务化,这边初选dubbo ...

  7. 日志管理(一):slf4j原理简单介绍

    转载自:http://blog.sina.com.cn/s/blog_6f67b91d0100tpqh.html 全称:Simple Logging Facade for Java  简单日志门面(F ...

  8. GAN 数学原理简单介绍以及代码实践

    1. GAN 数学原理 1.1 GAN 概述 GAN(Generative Adversarial Network) 是一种深度生成神经网络,它包括 生成模型 与 判别模型 两个部分.其中,生成模型 ...

  9. Binding的原理简单介绍

    前言 开始写这个新系列,这些年用WPF做了很多项目,杂七杂八的东西写了不少,略略总结下,也希望能给朋友们带来点帮助. 本篇文章主要是自实现了一个BindingEngine,可以在WPF,WinForm ...

最新文章

  1. linux的翻译系统开发,Linux系统下的翻译神器——Goldendict
  2. python3语法手册_Python3 学习手册每日更新
  3. 织梦站内选择和文件管理器中文乱码的解决方法(utf8编码程序包才会)
  4. 为什么软件开发周期是预估的2~3倍?
  5. 如何压测基于容器服务ACK托管的DUBBO服务
  6. dubbo admin默认端口_Dubbo学习(四) Dubbo 从下载到编译成功
  7. 《Python黑帽子:黑客与渗透测试编程之道》 Web攻击
  8. Objective-C中的反射和反射工厂
  9. SYSTEM INSTRUCTIONS | 系统指令
  10. Web 2.0 Gets Big — and Corporate
  11. 网格向量必须包含特征点。_【专题研究】基于SVM支持向量机模型的选股策略
  12. java redis hscan_如何在Redis中使用HSCAN命令?
  13. 成都单片机开发-STC15F2K60S2-LQFP44引脚含义以及1号引脚实物位置
  14. 缠论找日线找第二类买点买入程序
  15. 公众号淘客返利系统,自动回复淘宝优惠券实现方法
  16. 餐巾计划问题 费用流
  17. uni-app通过canvas将两张图片合成一张图片
  18. 在Docker中创建应用
  19. 使用UE4开发VR项目_性能优化(三)_思路和方法
  20. obs多推流地址_OBS下载、安装、使用(腾讯)推流直播教程

热门文章

  1. win10计算机睡眠怎么设置密码,win10系统如何配置唤醒密码?windows10设置唤醒密码的方法...
  2. ZYNQ之FPGA LED 灯闪烁实验
  3. Java返回树形结构的数据 (children方式)
  4. ICPC 山东省省赛刷题 第十八届西南科技大学ACM程序设计竞赛(同步赛)牛客 BFH题解
  5. 中文版onlyoffice镜像制作
  6. K-Means聚类make_moons数据
  7. 新春特辑 | 大数据专题合辑 报告下载
  8. 《Journal of Building Performance Simulation》期刊介绍(SCI 3区)
  9. docker入门笔记(基础版)
  10. Codeforces Round #202 (Div. 1) A. Mafia 【二分】