Loading [MathJax]/jax/output/HTML-CSS/config.js

2015-02-19

Kinect v2にてMultiSourceFrameを利用する

Kinectプログラミングでは、v1ではAllFrameReadyイベントを用いて各種フレームを一括で処理するのが便利ですが、v2でも同様のイベントがあります。が、名前が変わっており、処理の仕方やメソッド名も違うので注意が必要です。具体的には以下のようになります。
private void Window_Loaded(object sender, RoutedEventArgs e){
KinectSensor kinect = KinectSensor.GetDefault();
if (kinect != null){
MultiSourceFrameReader multiReader = kinect.OpenMultiSourceFrameReader(FrameSourceTypes.Color | FrameSourceTypes.Depth|FrameSourceTypes.Body);
multiReader.MultiSourceFrameArrived += multiReader_MultiSourceFrameArrived;
kinect.Open();
}
}
void multiReader_MultiSourceFrameArrived(object sender, MultiSourceFrameArrivedEventArgs e){
MultiSourceFrame reference = e.FrameReference.AcquireFrame();
// Color
using (ColorFrame myColorFrame = reference.ColorFrameReference.AcquireFrame())
using (DepthFrame myDepthFrame = reference.DepthFrameReference.AcquireFrame())
using (BodyFrame myBodyFrame = reference.BodyFrameReference.AcquireFrame()){
// ここにいろいろ書いていく
}


0 件のコメント:

コメントを投稿