Example #1
0
      /// <summary>
      /// Create a flann index for 3D points
      /// </summary>
      /// <param name="points">The IPosition3D array</param>
      /// <param name="ip">The index parameters</param>
      public Index3D(MCvPoint3D32f[] points, IIndexParams ip)
      {
         _points = points;

         _dataHandle = GCHandle.Alloc(_points, GCHandleType.Pinned);
         _dataMatrix = new Matrix<float>(_points.Length, 3, _dataHandle.AddrOfPinnedObject());
         
         _flannIndex = new Index(_dataMatrix, ip);
         
         _query = new Matrix<float>(1, 3);
         _distance = new Matrix<float>(1, 1);
         _index = new Matrix<int>(1, 1);
      }
Example #2
0
 /// <summary>
 /// Create a flann index
 /// </summary>
 /// <param name="values">A row by row matrix of descriptors</param>
 /// <param name="ip">The index parameter</param>
 /// <param name="distType">The distance type</param>
 public Index(IInputArray values, IIndexParams ip, DistType distType = DistType.L2)
 {
     using (InputArray iaValues = values.GetInputArray())
         _ptr = CvInvoke.cveFlannIndexCreate(iaValues, ip.IndexParamPtr, distType);
 }
Example #3
0
 /// <summary>
 /// Create a Flann based matcher.
 /// </summary>
 /// <param name="indexParams">The type of index parameters</param>
 /// <param name="search">The search parameters</param>
 public FlannBasedMatcher(IIndexParams indexParams, SearchParams search)
 {
     _ptr = Features2DInvoke.cveFlannBasedMatcherCreate(indexParams.IndexParamPtr, search.Ptr, ref _descriptorMatcherPtr);
 }
Example #4
0
 /// <summary>
 /// Create a flann index
 /// </summary>
 /// <param name="values">A row by row matrix of descriptors</param>
 /// <param name="ip">The index parameter</param>
 public Index(IInputArray values, IIndexParams ip)
 {
    using (InputArray iaValues = values.GetInputArray())
       _ptr = cveFlannIndexCreate(iaValues, ip.IndexParamPtr);
 }
Example #5
0
 /// <summary>
 /// Create a flann index
 /// </summary>
 /// <param name="values">A row by row matrix of descriptors</param>
 /// <param name="ip">The index parameter</param>
 public Index(IInputArray values, IIndexParams ip)
 {
     using (InputArray iaValues = values.GetInputArray())
         _ptr = cveFlannIndexCreate(iaValues, ip.IndexParamPtr);
 }