2012-11-05 4 views
1

이번엔 각 프레임에 대해 x 및 y 픽셀 좌표의 카메라 모션을 어떻게 계산할 수 있는지 알고 싶습니다. 저는 봤습니다. CalcOpticalFlowLK가이를 수행 할 수 있음을 알았습니다. 나는 opencv 전문가가 아니며 귀하의 도움을 요청하고 있습니다! 감사합니다.CalcOpticalFlowLK 카메라 모션 C++

답변

1

예 OpenCV가이 작업을 수행 할 수 있습니다. CalcOpticalFlowLK 구현을 직접 시작한 다음 시도하려면 아래 사이트의 자습서를 따라야합니다. 특정 문제 (코드 샘플 포함)를 여기에 게시하면 도와 드리겠습니다.

http://opencv-srf.blogspot.ie/2010/09/opencv-basics.html

그런 다음 내가 샘플에 lkdemo.cpp하고자 노력했습니다

OpenCV tracking using optical flow

+0

봐, 그것은 웹캠에서 프레임 소요 -> VideoCapture 캡; CvCapture로 변경하려고 할 때 * cap = cvCaptureFromFile ("C : \ cropped.avi"); capturefromfile이 VideoCapture 캡 ("C : \ cropped.avi")으로 시도한 것보다 cv :: mat 대신 iplimage를 반환하기 때문에 오류가 발생합니다. 그러나 그것은 웹캠을 열어 두었습니다. ... 어쨌든 샘플을 사용하면 창에서 많은 수의 점을 선택할 수있게됩니다. 좌표로 그 점을 추적 할 수 있습니까? 나쁜 영어로 죄송합니다. – Lorenzo

+0

저는 이것을 새로운 질문으로 여깁니다. 그런 식으로 나보다 더 많은 사람들이 그것을 알아 차릴 것입니다. 미리 선택한 좌표를 사용하는 대신 GoodFeaturesToTrack을 사용하여 자동으로이 점을 선택합니다. 샘플을 가리 키도록 위의 내 대답을 편집했습니다. – Totero

+0

고마워요! 어쨌든 내가 마지막으로 처리해야하는 .avi를 열면 모든 비디오에서 일련의 점을 초기화하는 needToInit = true를 설정합니다. 이제해야 할 마지막 사항은 해당 점의 픽셀 좌표를 찾아서 계산하는 것입니다. 운동. 누군가가 그 일을하는 법을 알고 있다면 나는 매우 감사 할 것입니다! 감사합니다. – Lorenzo