/// <summary> /// 現在のフレームで深度画像から統合行列計算 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MenuCalibDepthFrame_Click(object sender, RoutedEventArgs e) { Frame frame = frameSequence.Frames[playingIndex]; List <CvMat> convs = KinectMerge.GetConvMatrixFromDepthFrame(frame, frameSequence.ToWorldConversions, frameSequence.LocalCoordinateMappers); frameSequence.ToWorldConversions = convs; }
/// <summary> /// 現在のフレーム範囲でBoneから統合行列計算 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MenuCalibBoneFrameRange_Click(object sender, RoutedEventArgs e) { ulong[] selectedUsers = frameSequence.selectedOriginalIdList; if (this.isUserSelected.All(b => b)) { List <CvMat> convs = KinectMerge.GetConvMatrixFromBoneFrameSequence(frameSequence, startIndex, endIndex); frameSequence.ToWorldConversions = convs; } }
/// <summary> /// 現在のフレームでBoneから統合行列計算 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MenuCalibBoneFrame_Click(object sender, RoutedEventArgs e) { Frame frame = frameSequence.Frames[playingIndex]; List <CvMat> convs; if (this.isUserSelected.All(b => b)) { if (this.frameSequence.Segmentations == null) { ulong[] selectedUsers = frameSequence.selectedOriginalIdList; convs = KinectMerge.GetConvMatrixFromBoneFrame(frame, frameSequence.ToWorldConversions, selectedUsers); } else { int[] selectedUsers = frameSequence.selecteedIntegretedIdList; convs = KinectMerge.GetConvMatrixFromBoneFrame(frame, frameSequence.ToWorldConversions, selectedUsers); } frameSequence.ToWorldConversions = convs; } }
/// <summary> /// 現在のフレーム範囲で深度画像から統合行列計算 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MenuCalibDepthFrameRange_Click(object sender, RoutedEventArgs e) { List <CvMat> convs = KinectMerge.GetConvMatrixFromDepthFrameSequence(frameSequence, startIndex, endIndex); frameSequence.ToWorldConversions = convs; }