에 감사드립니다. 내가 알아 낸 것들 중 몇 가지는 다음과 같다.
CvBlobTrackerAuto::Process
은 추적 정보 (얼룩 및 위치)를 업데이트하기 위해 마지막으로 캡처 한 이미지를 처리하는 데 사용됩니다. 실제로 CvBlobTrackerAuto
은 CvBlobTrackerAuto::Process
에 대한 구현을 제공하지 않으므로 추상 클래스입니다. 유일하게 구체적인 구현은 (필자가 알 수있는 한) CvBlobTrackerAuto1
이며 blobtrackingauto.cpp에서 찾을 수 있습니다.
- 전경 감지 :이 전경에 해당하는 바이너리 마스크를 생산
CvBlobTrackerAuto1::Process
이 무엇 는 다음 파이프 라인을 구현하는 것입니다.
- 얼룩 추적 : 얼룩의 위치를 업데이트합니다. 평균 이동, 입자 필터 또는 이들의 조합을 사용할 수 있습니다.
- 후 처리 : (이 섹션의 기능에 대해 잘 모르겠습니다.)
- 블롭 삭제 : 거기에있는 설명에 따르면 "실험적이고 간단합니다". 그것은 너무 작거나 마지막 프레임의 이미지 테두리 근처에있는 얼룩을 삭제합니다.
- 얼룩 감지 : 새 얼룩을 감지합니다. enterblobdetection.cpp를 참조하십시오.
- 궤도 생성 : (무엇을하는지 확실하지 않음).
- 트랙 분석 : (. 그것이 무엇하지만 기억하고 확실하지 않은 코드를 읽고는 BLOB 추적에 영향이 없다고 결정, 그래서 그것을 해제하는 데.)이 특정 구현에서
에게 CvBlobTrackerAuto::Process
이면 pMask
매개 변수가 전혀 사용되지 않습니다. 디폴트 값은 NULL이며 변수에 한 번만 할당됩니다. 나중에 일부 라인을 덮어 쓰게됩니다.
samples/c/blobtrack_sample.cpp에서 찾을 수있는 OpenCv 샘플은이 CvBlobTrackerAuto1
클래스 주위에 구축되어 파이프 라인의 각 모듈에 다른 옵션을 제공합니다.
도움이되기를 바랍니다.
OpenCV 메일 링 그룹에서이 질문을했을 때 다음 링크로 이동했습니다. 이 문서에서는 OpenCV Blobtracker 및 해당 모듈 https://code.ros.org/trac/opencv/export/490/trunk/opencv/doc/vidsurv/Blob_Tracking_Modules에 대해 설명합니다.doc 희망이 BLOBtracker을 공부하는 사람에게 도움이 될 것입니다 – Niroshan