コード例 #1
0
        public void createSubsets(GestureDataSet allGestureTraces)
        {
            trainingSubsets = new GestureDataSet[nSubsets];
            testSubsets     = new GestureDataSet[nSubsets];

            var subsetSize = allGestureTraces.Values.First().Count() / nSubsets;

            for (int curSubset = 0; curSubset < nSubsets; curSubset++)
            {
                trainingSubsets[curSubset] = allGestureTraces.ToDictionary(
                    e => e.Key,
                    e => (IEnumerable <BaseTrajectory>)e.Value.Where((_, index) => (index / subsetSize) != curSubset).ToArray()
                    );

                testSubsets[curSubset] = allGestureTraces.ToDictionary(
                    e => e.Key,
                    e => (IEnumerable <BaseTrajectory>)e.Value.Where((_, index) => (index / subsetSize) == curSubset).ToArray()
                    );
            }
        }
コード例 #2
0
 public GestureDataSet processAllGestures(GestureDataSet data)
 {
     return(data.ToDictionary(
                e => e.Key,
                e => e.Value.Select(t =>
     {
         if (t is Stroke)
         {
             var s = t as Stroke;
             return (BaseTrajectory)(new Stroke(samplePoints(s.TrajectoryPoints), s.FingerID));
         }
         else
         {
             throw new NotImplementedException("This subclass of BaseTrajectory is currently not implemented here");
         }
     })));
 }
コード例 #3
0
 public void createSubsets(GestureDataSet allGestureTraces)
 {
     trainingSet = allGestureTraces.ToDictionary(e => e.Key, e => e.Value.Take(nTraining));
     testSet     = allGestureTraces.ToDictionary(e => e.Key, e => e.Value.Skip(nTraining));
 }