/// <summary> /// Add the model descriptors /// </summary> /// <param name="modelDescriptors">The model discriptors</param> public void Add(Matrix <Byte> modelDescriptors) { if (!(_distanceType == DistanceType.Hamming || _distanceType == DistanceType.HammingLUT)) { throw new ArgumentException("Hamming distance type requires model descriptor to be Matrix<Byte>"); } DescriptorMatcherInvoke.CvDescriptorMatcherAdd(_ptr, modelDescriptors); }
/// <summary> /// Add the model descriptors /// </summary> /// <param name="modelDescriptors">The model discriptors</param> public void Add(Matrix <float> modelDescriptors) { if (!(_distanceType == DistanceType.L2F32 || _distanceType == DistanceType.L1F32)) { throw new ArgumentException("L1 / L2 distance type requires model descriptor to be Matrix<float>"); } DescriptorMatcherInvoke.CvDescriptorMatcherAdd(_ptr, modelDescriptors); }
/// <summary> /// Add the model descriptors /// </summary> /// <param name="modelDescriptors">The model descriptors</param> public void Add(IInputArray modelDescriptors) { using (InputArray iaModelDescriptors = modelDescriptors.GetInputArray()) DescriptorMatcherInvoke.CvDescriptorMatcherAdd(_descriptorMatcherPtr, iaModelDescriptors); }