互动投影原理简单介绍
技术支持: 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)等等
互动投影原理简单介绍相关推荐
- BP神经网络原理简单介绍以及公式推导(矩阵形式和分量形式)
BP神经网络原理简单介绍以及公式推导 标签(空格分隔): 神经网络 \def\net(#1){net^{(#1)}} \def\Y(#1){Y^{(#1)}} \def\part(#1){\parti ...
- LDAP服务器的概念和原理简单介绍
仅用于个人学习,侵删. 本文转自:LDAP服务器的概念和原理简单介绍 [http://seanlook.com/2015/01/15/openldap_introduction/] 1. 目录服务 目 ...
- CAS单点登录原理简单介绍
1. SSO简介 1.1 单点登录定义 单点登录(Single sign on),英文名称缩写SSO,SSO的意思就是在多系统的环境中,登录单方系统,就可以在不用再次登录的情况下访问相关受信任的系统. ...
- Android通过辅助功能实现抢微信红包原理简单介绍
简书文章:https://www.jianshu.com/p/e1099a94b979 附抢红包开源项目地址,代码已全改为Kotlin了,已适配到最新微信7.0.5版本,如果对你有所帮助赏个star吧 ...
- dubbo学习过程、使用经验分享及实现原理简单介绍
一.前言 部门去年年中开始各种改造,第一步是模块服务化,这边初选dubbo试用在一些非重要模块上,慢慢引入到一些稍微重要的功能上,半年时间,学习过程及线上使用遇到的些问题在此总结下. 整理这篇文章差不 ...
- dubbo学习过程、使用经验分享及实现原理简单介绍,dubbo经验分享
原文出处http://blog.csdn.net/hzzhoushaoyu/article/details/43273099 一.前言 部门去年年中开始各种改造,第一步是模块服务化,这边初选dubbo ...
- 日志管理(一):slf4j原理简单介绍
转载自:http://blog.sina.com.cn/s/blog_6f67b91d0100tpqh.html 全称:Simple Logging Facade for Java 简单日志门面(F ...
- GAN 数学原理简单介绍以及代码实践
1. GAN 数学原理 1.1 GAN 概述 GAN(Generative Adversarial Network) 是一种深度生成神经网络,它包括 生成模型 与 判别模型 两个部分.其中,生成模型 ...
- Binding的原理简单介绍
前言 开始写这个新系列,这些年用WPF做了很多项目,杂七杂八的东西写了不少,略略总结下,也希望能给朋友们带来点帮助. 本篇文章主要是自实现了一个BindingEngine,可以在WPF,WinForm ...
最新文章
- linux的翻译系统开发,Linux系统下的翻译神器——Goldendict
- python3语法手册_Python3 学习手册每日更新
- 织梦站内选择和文件管理器中文乱码的解决方法(utf8编码程序包才会)
- 为什么软件开发周期是预估的2~3倍?
- 如何压测基于容器服务ACK托管的DUBBO服务
- dubbo admin默认端口_Dubbo学习(四) Dubbo 从下载到编译成功
- 《Python黑帽子:黑客与渗透测试编程之道》 Web攻击
- Objective-C中的反射和反射工厂
- SYSTEM INSTRUCTIONS | 系统指令
- Web 2.0 Gets Big — and Corporate
- 网格向量必须包含特征点。_【专题研究】基于SVM支持向量机模型的选股策略
- java redis hscan_如何在Redis中使用HSCAN命令?
- 成都单片机开发-STC15F2K60S2-LQFP44引脚含义以及1号引脚实物位置
- 缠论找日线找第二类买点买入程序
- 公众号淘客返利系统,自动回复淘宝优惠券实现方法
- 餐巾计划问题 费用流
- uni-app通过canvas将两张图片合成一张图片
- 在Docker中创建应用
- 使用UE4开发VR项目_性能优化(三)_思路和方法
- obs多推流地址_OBS下载、安装、使用(腾讯)推流直播教程
热门文章
- win10计算机睡眠怎么设置密码,win10系统如何配置唤醒密码?windows10设置唤醒密码的方法...
- ZYNQ之FPGA LED 灯闪烁实验
- Java返回树形结构的数据 (children方式)
- ICPC 山东省省赛刷题 第十八届西南科技大学ACM程序设计竞赛(同步赛)牛客 BFH题解
- 中文版onlyoffice镜像制作
- K-Means聚类make_moons数据
- 新春特辑 | 大数据专题合辑 报告下载
- 《Journal of Building Performance Simulation》期刊介绍(SCI 3区)
- docker入门笔记(基础版)
- Codeforces Round #202 (Div. 1) A. Mafia 【二分】