tuio协议-中文,unity TUIO协议
本作品内容为tuio协议-中文,格式为 docx ,大小 44550 KB ,页数为 30页
('第1页共30页竭诚为您提供优质文档/双击可除tuio协议,中文篇一:ccV入门教程ccV入门教程一、简介ccV是一个建立在opencV基础上的一个开源的架构,其全称是communitycoreVision。它是一个开源的跨平台计算机视觉和机器感知解决方案。它以视频作为输入流,从中捕捉跟踪到的触点信息,包括事件(手指下压、移动、释放等)及触点坐标,这些信息是构建一个多点触控系统所必须。ccV可以以网络摄像机和视频设备作为输入,也支第2页共30页持基于tuio/osc/xml等协议的各种应用,以及很多多点触控技术,如FtiR,di,dsi,和llp等等。ccV更是为支持未来的视觉应用(客户模块/滤波器)作了前瞻性的扩展。特性:[1]简单的用户界面。新界面更加直观,易于理解和使用[2]滤波器(动态背景提取、高通、放大器/标定器(scaler)、阀值)。这意味着它可以为各种光学设备提供支持,包括FtiR、di、llp、dsi等。以后还会陆续增加更多的滤波器模块。[3]相机开关。当用户电脑同时连了好几个相机的时候,只需一个按钮操作就可以搞定相机切换,无需退出程序,重新连接外设。[4]输入开关。只需按钮操作,就可以把视频输入流从在线相机切换为本地录像,反过来也一样。第3页共30页[5]动态网格校正。对于桌面过小或者过大的用户来说,可以通过设置校准点或者创建更小点来保持正常的处理速度和系统性能。[6]图像投射。你可以对视频做水平或垂直翻转,如果视频显示的方向不对。[7]网络广播。你可以通过直接从配置的程序发送osctuio消息来快速调试程序。[8]跨平台。在windows,mac,linux上都可以使用参考资料1、http://nuigroup.com/forums2、http://ccv.nuigroup.com/二、ccV相关概念tuiotuio是一个为可触多点表面定义了标准协议与应用编程接口的开放架构。tuio协议允许交互式表面上的抽象描第4页共30页述的传输,例如传输触摸和接触物体的状态。这个协议对跟踪应用者的控制数据编码并将它传送到任何可以解码的客户端应用程序。目前最新的版本是2.0http://www.tuio.org/全内反射:当光从光密媒质(两种媒质比较时,光通过得慢的媒质叫做光密媒质.例如,空气和水来比较,水就是光密媒质)进入光疏媒质且入射角大于临界角时,在两媒质交界处将发生光的全内反射。如果将疏媒质的厚度控制到非常薄,例如使两块直角棱镜的底面靠得很近,那么,即便在全反射角度的情况下,透射光依然是可以取出的,亦即全反射受到抑制。最近几年,人们利用受抑全内反射FtiR技术制作出了多点输入触摸屏。触摸技术的突破是从FtiR(FrustratedtotalinternalReflection,受抑全内反第5页共30页射)技术开始的,这份功劳归功于纽约大学的jeffhan。在了解了大概的历史之后,我们现在动手来做我们自己的FtiR多点触摸桌(multitouchtable)。FtiR多点触摸(FtiRmultitouch)的原理红外led(iRled)发射红外线进入亚克力板(acrylic),当亚克力面板的厚度大于8mm时,光线会发生在亚克力内不停反射,而不会跑出来,这就叫做全内反射(totalinternalReflection),但当你的手指(或者其他材质如硅胶等有一定韧性和反射性的材料)碰到亚克力表面时,全内反射(totalinternalReflection)被破坏,光线被手指反射出来,此时,亚克力下方正好有红外摄像头(iRcamera)捕捉到手指反射的亮点,摄像头捕捉到的亮点会送到计算机进行处理,形成输入,有几个亮点,就形成几个输入点。FtiR多点触摸(FtiRmultitouch)的原理就是这样。第6页共30页三、ccV运行效果及整体流程ccV进行触点提取的步骤是:sourceimage->backgroundabstraction->objectsmooth->highpassfilter->amplification或者说是采集图像->背景分离->目标平滑->高通滤波->幅值增强->得到触点四、ccV的工作流程系统要求:windowsandmac:quicktime(附录1)linux:libpoco背景去除当跟踪到的图像中没有看到指头时,按下“背景移除按钮”获取背景;如果环境中光线变化常常变化,还需要打开“动态提取”开关第7页共30页滤波:高通、幅度、平滑滤波高通滤波是从手的影像中再提取出指头的关键步骤,幅度增强是为了使手指头部分更明显(图像增强),平滑是为了除去噪声干扰(图像去噪),是触点提取过程更加稳定,用专业术语来说是鲁棒性更高(robustness)。注:为什么高通滤波可以把手指从手的影像中分割出来?这是由手所成的像的特征决定的(手指头清晰,其他部分与背景的界限模糊,所以高频信息集中在手指部分)阀值选取(threshhold)不断调整阀值,直到最后得到的跟踪图像(trackedimage)中,只能看到手指头,而且没有虚假触点存在。参数选择影响最终触电提取的精确度第8页共30页改变输入清晰度、帧率、通信、视频以及触点设置ccV的设置文件保存在config.xml中通过对config文件的更改可以改变如下的参数值1.输入清晰度、帧率2.网络通信地址和端口3.测试用的视频文件4.可以跟踪的最大触点数目五、对ccV界面的功能以及概念的的几个解释1.blob:一个明亮发光对象,可以翻译为点或触点。2.blobtracking:给每个点分配一个id号。对每一帧画面进行分析,区别每个触点,并与其在上一帧的状态进行对比。3.blobdetection:从图片中检测出比环境更亮或者更暗的区域的过程。4.thresholdslider:调整追踪点的像素范围(大第9页共30页小)。只有大于这个阈值的点才会被转换成一个追踪点。5.minblobsize:调整可以接受的最小点大小。只有大于这个值,一个点才会被分配一个id。6.maxblobsize:调整可以接受的最大的点大小。当一个点的大小大于这个值后将失去被分配的id。将重新选择点。7.smoothslider:平滑图像并且从图像中过滤噪音8.highpassblurslider:移除图像中模糊的部分,保留比较明显的明亮的部分。9.highpassnoise:在highpassblur之后从图像中过滤掉噪音。附录关于quicktimequicktime是苹果公司提供的系统及代码的压缩包,它拥有c和pascal的编程界面,更高级的软件可以用它来控制时基信号。在quicktime中时基信号被叫做影片。应用程第10页共30页序可以用quicktime来生成,显示,编辑,拷贝,压缩影片和影片数据,就象通常操纵文本文件和静止图像那样。除了处理视频数据以外,quicktime3.0还能处理静止图像,动画图像,矢量图,多音轨,midi音乐,三维立体,虚拟现实全景和虚拟现实的物体,当然还包括文本。它可以使任何应用程序中都充满各种各样的媒体。quicktime包括影片工具箱、图像压缩两个管理器,加上内嵌的一套组件。1、ccV中涉及到的dll,库的调用关系库addons目录下ofxkinectclnui:包括了采用微软kinect的设备(如xboxnuiaudio,nuicamera,nuimotorandaccelerometer等)的稳定的驱动程序、sdk和api。ofxopencV:opencV的库。opencV是c/c++的一套函数第11页共30页库,基本上开源的摄像头相关的软件/插件都是基于opencV做的,当前版本是2.x。ofxps3:用于支持多个ps3eye(playstationeye,摄像头)的使用ofxthread:支持线程操作ofxosc:用于osc支持,说简单点,tuio协议是基于osc的,为使用tuio搭建平台ofxVectormath:矩阵运算支持(封装了矩阵转置、求行列式、指定位置的元素进行操作等等运算)ofxxmlsettings:用于读写xml文件。extensiblemarkuplanguage,简称:xmlofxnetwork:用于进程间通信支持,可以支持udp、tcp两种通信协议。ofxdirlist:用于支持openFrameworkslibrary。openFrameworks是为创造性编码第12页共30页提供的一个开源的c++工具箱。ofxdsVl:directshowVideoprocessinglibrary一个对directshow的简单封装的库,使用起来比较方便,比较容易实现视频编程的应用ofxFFmV:用于支持多个摄像头的使用和切换其中pgrflycapture.h:提供pgRFlycapturelibrary的apiofxncore:ccV的主体部分,实现了ccV的主要功能,包括:calibration:进行触摸屏的标定camera:摄像机控制communication:tuio协议的通信篇二:表面光波技术与其他触摸屏技术对比技术特点真多点触控第13页共30页表面光波多点触控技术是真正支持10点以上的触控技术,并可根据需要扩大触控点数量(16、32点)。国内很多支持多点的触控屏其实只支持2点,且容易产生伪点,并非真正的多点触控。表面光触控是国内首个支持32点的多点触控技术。支持触控物体形状识别,可以扩展更多应用普通红外触摸屏采用的定位方式是x、y方向扫描方式,这种方式只能得到遮挡物的中心坐标,不能描述出遮挡物的轮廓,而表面光波能够描述出与屏幕接触物体的大致轮廓,这是其他所有触控技术不能比的。而且可以扩展更多应用。比如可以识别手掌跟手指的触控为不同触控。高响应速度响应速度小于10ms,比普通的触摸屏的响应速度更快。适用于19-100寸的液晶使用第14页共30页电路设计采用模组的方式设计,从19寸至100寸范围内,可以任意拼接,让其提供的解决方案有更多的可能。无需导电玻璃基板,无需微型光学摄像头表面光多点触控技术不需要导电玻璃基板,表面无任何介质,透光率可达92%(无玻璃的情况下为100%),对显示效果无任何影响。且不受微型光学摄像头此等精密仪器的限制。无压力触控,支持手、笔等任何不透光的物体操作无需触控压力,仅用手、笔或任何不透光的物体轻轻滑动即可操作,更不需要电磁或电容笔。无需校正,无漂移现象触控精确,可识别的最小点大小为2mm2mm,且无漂移现象。若没有感应器与液晶屏相对位置的变化,则不需要校正。主流技术对比第15页共30页光学式触控采用两个cmos/ccd摄像头,接收红外反射条数据,通过计算触控点在反光条上的数据,从而得到触控坐标。表面光波相较于光学式触控技术的优势1、光学式触控由于原理缺陷,只能做到2点触控,并会产生误判,有10%以上的区域只能当单点使用。虽然可通过增加摄像头的方式扩展至3至4个点,但其误判问题仍然时常存在。表面光波技术可以轻松实现2点,10点,16点,32点以上的触控。2、光学式触控由于使用了摄像头,所以致使其边框会很高。表面光波技术的模组,厚度只有5mm,最薄款甚至可以达到3mm。3、光学式触控由于使用了反光条,很容易受污垢灰尘第16页共30页等遮挡,使用一段时间后就容易出现触控失灵,对反光条的不当擦拭也容易照成触控失灵,尤其在教室等经常使用粉笔的情况环境下更为严重。表面光波技术无需反光条,在现有几种触控技术中,表面光波技术是对粉尘,划伤等问题解决最好的触控方案,用名片挡住部分光波,在被挡住的区域仍可正常触控。4、中小尺寸的光学式触控产品因其产能有限,价格昂贵,除hp,dell外,大多厂家只是发布了多点触控产品型号,但市场上均无法采购到。天时通现有国内首条多点触控产品生产线,能大批量生产多点触控产品。红外线触控红外线触摸屏,一般是在显示器屏幕的前面安装一个外框,外框里有电路板,在x、y方向有排布均匀的红外发第17页共30页射管和红外接收管,对应形成横竖交的红外线矩阵。当有触摸时,手指或其它物体就会挡住经过该点的横竖红外线,由控制器判断出触摸点在屏幕的位置。表面光波相较于红外触控技术的优势1、红外触控技术不能实现真正意义上的多点,只能通过分时技术实现伪2点触控,使用伪多点技术实现的2点以上的情况使用效果极差,伪点假点多,当多点同时按下时,该技术也无法工作,俗称1.5点触控技术。由于先天技术缺陷,也无可能通过升级实现多点。表面光波技术可以轻松实现2点,10点,16点,32点以上的触控。2、分辨率高。物理分辨率一般只有300300左右,通过插值法,报告分辨率40964096,但划斜线通常有阶梯现象。表面光波技术物理分辨率可达1414798,报告分辨率第18页共30页可以达到3253532535,手指轻微抖动都能分辨的出来。3、能识别笔尖触控。红外触控技术一般只能识别6mm以上的较粗不遮盖物体,对较细的物体触控基本上工作不正常的,表面光波技术独有的笔尖识别技术可以识别最细2mm的物体触控,在我们的21.5寸触控屏上,甚至可以支持普通2b铅笔芯进行触控,该项技术即使在昂贵的电容屏上也无法实现。4、支持形状识别。红外触控技术无法分辨具体的形状。表面光波技术可以支持形状识别,例如水杯和手机,并支持同时识别多个物体。5、冗余度高。红外触控技术当有一个红外管坏了,就可能造成整个触控屏无法工作。表面光波技术在20%的传感器损坏情况下仍能实现多点第19页共30页触控。6、抗干扰能力强。红外触控技术,无法适应强光环境。表面光波技术采用新式的抗干扰设计,可以实时动态适应强光环境。篇三:communitycoreVision1.3版本使用指南今天是20xx年1月1日,祝大家元旦快乐!今天给大家奉上的communitycoreVision(ccV)1.3版本的指南文章,包括介绍、界面、配置、调试等内容。1.4版本的指南文章过段时间也会发布。同时欢迎大家登陆mt2a.com多点触摸技术论坛讨论多点触摸相关技术。本文在mt2a.com的地址:概述communitycoreVision,简称ccV,一个开放源代码的计算机视觉与机器传感的跨平台解决方案。它需要一个视第20页共30页频输入流用来捕获数据,将数据处理之后,输出追踪数据(如触点坐标和触点大小等)以及触摸事件(如手指按下、移动和按下并保持等),这些都是构建多点触摸应用程序的基本要素。ccV可以与各种网络摄像头或视频采集设备协同工作,通过支持tuio/osc/xml的应用程序进行数据连接,并且支持包括FtiR、di、dsi和llp等在内的多种基于光学的多点触摸硬件方案。ccV具有众多优秀的特性:--简单易用的图形用户界面。--滤镜(动态的背景相减、高通、缩放、阈值算法),可以与所有的光学硬件设备协同工作,支持自定义滤镜模块。--摄像机切换,如果你有多个视频采集设备,你可以通过动态切换传入的视频信号,不需要重启程序。--输入模式切换,可以使用一段视频录像来代替摄像第21页共30页机。--动态网格校准,因为设备的大小差异,导致触点的移动速度和大小不能更好地与应用程序结合,你可以通过调校,添加/减少触点,增加/减小触点尺寸,以达到最佳性能。--图像翻转,支持图像水平或垂直翻转。--网络广播,支持发送osc/tuio协议信息到某一端口,以此让应用程序读取并进行处理。--摄像机和应用程序帧频显示,可以实时显示当前摄像机和应用程序的Fps数值。--gpu模式,支持gpu硬件加速。--跨平台,支持windows、mac(tuio协议,中文)和linux。这部分内容将讲述了ccV的使用、配置和校准,了解ccV的各个部分和操作方法对搭建完整的多点触摸技术方案有着重要的作用。第22页共30页系统要求intel/amd2.0ghzcpu,1gb内存,100mb剩余磁盘空间,nVidia或amd独立显卡,windowsxp/Vista/7,macosxleopard/snowleopard(ppc/intel),ubuntu/debian。windows和mac需装有quicktime,linux需装有libpoco,否则将会出现ccV启动后一闪而过的情况。界面1.源图像。显示从摄像机传入的原始图像或视频文件。2.使用摄像机作为捕获源。3.使用录制好的视频作为捕获源。4.切换到前一个摄像机。第23页共30页5.切换到后一个摄像机。6.捕获影像并处理之后的影像。这个影像已经经过触点追踪和过滤,是最终生成的触动影像。7.反转显示模式。选择此项会切换影像的显示模式。8.阈值调节滑块。调整要追踪的触点大小,值越高,追踪后的触点越大。9.运动过滤。当手指滑动的时候,会产生残留影像,调节此值,可以使手指滑动的时候,触点被追踪得更为精确,类似于液晶显示器中的响应时间。10.最小触点尺寸。调整可以追踪的最小触点,值越高,被分配id的触点就越大。11.最大触点尺寸。调整可以追踪的最大触点,值越高,越大的触点就失去id,相当于追踪的点的大小上限。12.移除背景。捕获当前帧的背景影像,并将它作为活动帧中需要减去的背景,意思就是说为了使背景对触点的第24页共30页追踪的影响降到最低,可以采用移除背景的方式将背景在运算时减去。13.动态相减切换按钮。动态调整背景图像,如果处在一个环境光不稳定的条件下,移动该滑块,将动态处理背景图像并在运算时相减。14.光滑度调节模块。平滑影像并随机过滤影像中的噪点。15.高通模糊调节滑块。去除图像的模糊部分,留下清晰明亮的影像。16.高通噪点。调节此值,将影像中的噪点加以模糊处理,使其尽可能不影响触点的追踪。17.触点放大滑块。如果触点很弱、不稳定,调节amplify滤镜以增强触点亮度和稳定性。18.开关切换。打开或关闭当前开关所在滤镜。第25页共30页19.摄像机设置按钮。开启摄像机高级设置页面。20.垂直翻转切换。将源图像垂直翻转。21.水平翻转切换。将源图像水平翻转。22.gpu模式切换。开启图形硬件加速,只适用于较新的显卡,现在处于功能开发初期,可能无法在所有的机器上启用。23.发送udp协议的tuio触点信息。24.Flashxml。以tcp协议xml格式向外广播触点信息。25.二进制tcp。向外广播原始触点x/y值信息。26.加载校准屏幕,开始校准。27.保存设置。配置1.。2.启动communitycoreVision1.3。第26页共30页3.程序将会默认使用已经录制好的一段视频,并显示在sourceimage,并将处理后的影像显示在trackedimage。4.如果没有选择正确的摄像机,可以通过nextcamera和previouscamera进行摄像机的选择。5.如果现在仍然没有手指影像,点击Removebg按钮或键盘上的b键,程序将捕获背景,这样做的目的是让程序将背景记住并在处理的时候减去。如果处在一个环境光不稳定的环境里,打开dynamicsubtract。6a.(仅限于FtiR和llp)关闭highpass滤镜和amplify滤镜。打开smooth滤镜。调节smooth滤镜的值直到移除噪点。如果触点很弱、不稳定,打开amplify滤镜以增强触点亮度和稳定性。6b.(仅限于di和dsi)关闭smooth滤镜和amplify滤镜。第27页共30页打开highpass滤镜。调节highpass滤镜的blur值和noise值直到手指影像清晰可见。如果触点很弱、不稳定,打开amplify滤镜以增强触点亮度和稳定性。7.最后,调节trackedimage中的threshold滑块值直到只有手指的影像在上面而没有其它的噪点。8.点击savesettings按钮,保存当前设置。程序在退出的时候也会自动保存当前设置。9.进行校准。校准运行校准程序可以校准连接ccV的摄像机和投影仪,校准可以让触点在正确的位置触发。ccV已经将摄像机的坐标转换为屏幕空间坐标。这一部分将介绍如何对ccV进行校第28页共30页准。在开始之前,需要确定投影仪显示的影像为当前摄像机的影像,如果不是,请参照前文内容选择摄像机。我们校准的是trackedimage中的影像数据。1.点击entercalibration按钮或者按键盘上的c键,进入校准模式。界面译文:校准:--按c键开始校准;--按x键返回到ccV主界面;--按b键重新捕获背景;--按t键开启或关闭触点对象十字。改变网格数目(校准点数目)--当前网格数目为×;2.一个带有绿色十字的网格显示出来。当开始校准第29页共30页时,这些十字就是触摸时的校准点。3.这时,你会发现周围有一个白色框,但是这个白色的框不一定正好与屏幕边缘吻合,可能会有某个边溢出屏幕,如果白色框正好与显示的区域吻合,则跳过步骤4,否则,继续下一步。4.使用方向键进行位移,先使左边和上边与屏幕吻合,然后进行下一步。5.w/a/s/d加方向键为拉伸操作,比如,按住d键不要放开,再按右方向键,白色框将向右拉伸,按左方向键,白色框向左拉伸,而左上下边均没有变化,以此类推。反复操作,直到白色框四条边均与屏幕四边吻合。6.如果使用了广角镜头或者想要得到更高的触点识别精度,可以调整校准点网格大小。按主键盘上的是“+”键(就是“=”键)增加y轴校准点,按主键盘上的“_”键(就是“-”键)减少x轴校准点。按住shift键的同时再进行第30页共30页上述操作则改变x轴的校准点数目。增加减少校准点对性能没有影响。7.现在可以按c键开始校准。8.这是,在校准点上会出现一个红色圆圈,现在,用手指触摸这个点,直到这个点变成白色。校准过程中,屏幕上会显示操作指南(英文)。操作指南译文:校准:--触摸当前圆环并保持按下,直到圆环变成白色;',)
提供tuio协议-中文,unity TUIO协议会员下载,编号:1700666086,格式为 docx,文件大小为30页,请使用软件:wps,office word 进行编辑,PPT模板中文字,图片,动画效果均可修改,PPT模板下载后图片无水印,更多精品PPT素材下载尽在某某PPT网。所有作品均是用户自行上传分享并拥有版权或使用权,仅供网友学习交流,未经上传用户书面授权,请勿作他用。若您的权利被侵害,请联系963098962@qq.com进行删除处理。