これは恥ずかしいほどばかげた質問ですが、クラスが見つかりません。建物を通過する車を数え、その色に注意するモーション追跡アプリケーションに取り組んでいます。OpenCVの .Net 管理ラッパーであるEmguCVを使用しています。
EmguCV サンプルには、Emgu.CV.Example\VideoSurveilance
私のアプリケーションの出発点として最適なアプリケーションがありますが、基礎となる OpenCV クラスを見て、それらがどのパラメータで動作するかを確認したいと思います。
EmguCV サンプル コードの簡単な行を次に示します。
_tracker = new BlobTrackerAuto<Bgr>();
じゃあ後で:
_tracker.Process(frame, forgroundMask);
foreach (MCvBlob blob in _tracker)
{
そのコードをEmguCV ソースEmgu.CV.VideoSurveillance
コードまでたどると、EmguCV コア プロジェクトの名前空間に次のコードが見つかります。
public void Process(Image<TColor, Byte> currentFrame, Image<Gray, Byte> foregroundMask)
{
CvInvoke.CvBlobTrackerAutoProcess(_ptr, currentFrame.Ptr, foregroundMask == null ? IntPtr.Zero : foregroundMask.Ptr);
}
[DllImport(CvInvoke.EXTERN_LIBRARY, CallingConvention = CvInvoke.CvCallingConvention)]
internal extern static void CvBlobTrackerAutoProcess(IntPtr tracker, IntPtr pImg, IntPtr pMask);
したがって、OpenCV API リファレンスのどこかに のようなメソッドを見つけることができるはずCvBlobTrackerAutoProcess
です。しかし、私はまったく関係があるものを見つけることができませんBlobTrackerAuto
。
では、これは OpenCV API 階層のどこに BlobTracker クラスがあるのかを尋ねる長々とした方法ですか?