资源描述:
《7829OS_Chapter9_Developing_Fluid_Wall_Using_the_Microsoft_Kinect》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、DevelopingFluidWallUsingtheMicrosoftKinectThischapterwillwalkyouthroughthedevelopmentofFluidWall,aprogramthatintegratesthedepth-sensingcapabilitiesoftheMicrosoftKinectSensorwiththeopticalflowprovidedbyOpenCV.TheprogramcombinesthefunctionsprovidedbyOpenN
2、I,OpenCV,andOpenGLtocreateafun,real-time,fluidsimulationthatuserscaninteractwithusinggesturesandmovements.Inthischapter,wecover:•AnintroductiontoFluidWallapplication•Kinectsensorspecificationsandhowitworks•SettingupOpenNIlibrariesandretrievingKinectdata
3、withOpenNI•Abrieflookatfluiddynamicsandimplementingthefluidsimulation•OpticalflowbasicsandopticalflowalgorithmsinOpenCVintegratingKinectdata,fluidsimulation,andopticalflow•CurrentlimitationsandfutureimprovementsfortheFluidWallapplicationDevelopingFluidW
4、allUsingtheMicrosoftKinectWhatisFluidWallFluidWallisareal-time,artistic,interactiveapplicationthatcapturesanddisplaysusersinfrontoftheKinectsensorintheformofsilhouettesinafluidsimulationonthescreen.Itwasintendedtocreateanintuitiveenvironmentforplayanddi
5、scoverythatfusessensationsoflight,reflection,andfluids.TheapplicationrecognizesandseparatestheusersinfrontofthesensorusingthedepthinformationfromtheKinectsensor.Whentheapplicationisstarted,eachnewuser(anypersoninfrontoftheKinect)isdetectedanddisplayedon
6、thescreenasasilhouetteinthemiddleofaflowingliquidenvironment.TheusercantheninteractwiththisenvironmentusinggesturesandmovementsthatwillbetrackedbytheKinectsensor.Thefluidenvironmentissimulatedbyafluidsolverintheprogram,whichcreatesseveralvirtualemitters
7、aroundeachuserthatcontroltheemissionandflowofthefluidonthescreen.EachtimeanewuserisdetectedbytheKinect,thefluidsolverassignsanewsetofemittersforthenewuser.Theycreatecoloredemissionsaroundtheuser,whichflowonscreenwiththemovementsoftheuser.Theemissionscan
8、bounceoffandbepushedaroundbydifferentusers'silhouettescreatingthelookofliquidcolorsflowingonscreen.Theprogramhasfourmodes,eachofwhichremainsonthescreenforaroundtwentysecondsbeforeswitchingtothenext.SinglecolormodeAsinglecolored-f