Exemplo n.º 1
0
      public void TestBOWKmeansTrainer2()
      {
         Image<Gray, byte> box = EmguAssert.LoadImage<Gray, byte>("box.png");
         Brisk detector = new Brisk(30, 3, 1.0f);
         VectorOfKeyPoint kpts = new VectorOfKeyPoint();
         Mat descriptors = new Mat();
         detector.DetectAndCompute(box, null, kpts, descriptors, false);
         Mat descriptorsF = new Mat();
         descriptors.ConvertTo(descriptorsF, CvEnum.DepthType.Cv32F);
         //Matrix<float> descriptorsF = descriptors.Convert<float>();
         BOWKMeansTrainer trainer = new BOWKMeansTrainer(100, new MCvTermCriteria(), 3, CvEnum.KMeansInitType.PPCenters);
         trainer.Add(descriptorsF);
         Mat vocabulary = new Mat();
         trainer.Cluster(vocabulary);

         BFMatcher matcher = new BFMatcher(DistanceType.L2);

         BOWImgDescriptorExtractor extractor = new BOWImgDescriptorExtractor(detector, matcher);
         Mat vocabularyByte = new Mat();
         vocabulary.ConvertTo(vocabularyByte, CvEnum.DepthType.Cv8U);
         extractor.SetVocabulary(vocabularyByte);

         Mat descriptors2 = new Mat();
         extractor.Compute(box, kpts, descriptors2);
      }
Exemplo n.º 2
0
 public void TestBrisk()
 {
    Brisk detector = new Brisk();
    EmguAssert.IsTrue(TestFeature2DTracker(detector, detector), "Unable to find homography matrix");
 }