public void Bootstrap(Mat img) { ValidateImages(null, img); _bootstrapKp.Clear(); _detector.DetectRaw(img, _bootstrapKp); _trackedFeatures = new VectorOfKeyPoint(_bootstrapKp.ToArray()); _trackedFeatures3D.Clear(); CvInvoke.CvtColor(img, _prevGray, ColorConversion.Bgr2Gray); }
public void Bootstrap(Mat img) { //Detect first features in the image (clear any current tracks) if (img.IsEmpty || !img.IsEmpty && img.NumberOfChannels != 3) { throw new Exception("Image is not appropriate (Empty or wrong number of channels)."); } _bootstrapKp.Clear(); _detector.DetectRaw(img, _bootstrapKp); _trackedFeatures = new VectorOfKeyPoint(_bootstrapKp.ToArray()); #region Trace Trace.Indent(); Trace.WriteLine($"Bootstrap keypoints: { _trackedFeatures.Size}."); Trace.Unindent(); Trace.WriteLine("--------------------------"); #endregion CvInvoke.CvtColor(img, _prevGray, ColorConversion.Bgr2Gray); }