70 likes | 231 Views
kinect - mssdk - openni -bridge Supplemental Diagrams. Tomoto Shimizu Washio tomoto@gmail.com Twitter: @tomoto335e (en) / @tomoto335 ( ja ) Rev 1: 9/15/2012. Problem. SensorKinect Driver and K4W Driver cannot coexist. OpenNI App. KinectSDK App. UserID + Skeleton. User ID. Image.
E N D
kinect-mssdk-openni-bridgeSupplemental Diagrams Tomoto Shimizu Washio tomoto@gmail.com Twitter: @tomoto335e (en) / @tomoto335 (ja) Rev 1: 9/15/2012
Problem • SensorKinect Driver and K4W Driver cannot coexist OpenNI App KinectSDK App UserID+ Skeleton User ID Image Depth Image Depth Skeleton OpenNI FW NITE User Node Avin2’s SensorKinect Kinect SDK Image Node Depth Node Image Stream Depth Stream Skeleton Stream SensorKinect Driver K4W Driver
Bridge Solution • Bridge alters SensorKinect by providing OpenNI-complient nodes that wrap Kinect SDK, so that OpenNI/KinectSDK apps can coexist OpenNI App KinectSDK App UserID+ Skeleton User ID Image Depth UserID+ Skeleton Image Depth Skeleton OpenNI FW NITE User Node Kinect SDK Bridge Image Stream Depth Stream Skeleton Stream Image Node Depth Node User Node K4W Driver Kinect Studio .xed
Bridge Solution (cont.) • App can apply NITE’s algorithms (e.g. User node) upon Bridge’s Depth node • App can choose either User node of NITE’s or bridge’s • User “query” on node creation • Bridge’s User node works by itself but requires no depth node • App can even use both at the same time if needed • Compatible with recording/playback with Kinect Studio • Because it is totally transparent under Kinect SDK
ONI Recording • Recorder node can apply on bridges Depth and Image node • So XED -> ONI conversion is possible OpenNI App UserID+ Skeleton UserID+ Skeleton Image Depth OpenNI FW NITE .oni Recorder Node User Node User ID Image Depth Skeleton Kinect SDK Bridge Image Stream Depth Stream Skeleton Stream Image Node Depth Node User Node K4W Driver Kinect Studio .xed
ONI Playback • Bridge does not do anything with ONI playback • Kinect SDK’s skeleton tracking cannot be applied on ONI OpenNI App UserID+ Skeleton Image Depth Skeleton OpenNI FW User ID NITE Depth User Node Image Kinect SDK Mocks Bridge I D S .oni Image Node Depth Node ImageNode Depth Node User Node K4W Driver
Misc • Audio node is supported • Wrapping DMO • Device node is supported • App can choose one of multiple connected Kinect Sensors • Kind of hack, not perfect at all • Design policy • Stay upon Kinect SDK as possible rather than working around it