2015-02-01 5 views
0

Ok 이상한 문제가 있습니다. 내가 할 수있는 한 최선을 다해 설명하려고 노력할 것이다.OpenCV를 사용하여 감지 된 개체가 점프하는 이유

나는 이제 측면

Imgproc.cvtColor(aInputFrame, grayscaleImage, Imgproc.COLOR_RGBA2RGB); 

    MatOfRect objects = new MatOfRect(); 

    // Use the classifier to detect cars 
    if (cascadeClassifier != null) { 
     cascadeClassifier.detectMultiScale(grayscaleImage, objects, 1.1, 1, 
     2, new Size(absoluteObjectSize, absoluteObjectSize), 
     new Size()); 
    } 
    for (int i = 0; i < dataArray.length; i++) { 
       Core.rectangle(aInputFrame, dataArray[i].tl(), dataArray[i].br(), 
         new Scalar(0, 255, 0, 255), 3); 


       mRenderer.setCameraPosition(-5, 5, 60f); 
    } 

에서 찾고 차를 ​​감지하는 내 응용 프로그램을 배운,이 코드는 좋은 작동합니다. 나는 자동차를 감지하고 녹색 직사각형으로 표시했다. 문제는 표시된 사각형이 지옥처럼 점프하는 것입니다. 나는 전화기가 여전히 잡혀있을 때에도 사각형이 왼쪽에서 오른쪽으로 가운데로 점프한다는 것을 의미합니다. 아직 하나의 사각형이 존재하지 않습니다. 문제를 제대로 설명했기를 바랍니다. 나는 그것을 기반으로 오버레이를 그리려 원인 마킹을 stabilizy 싶습니다 그리고 나는이

답변

0
  1. 참조 (1) detectMultiScale에 대한 매개 변수처럼 점프 할 수 없습니다 그것은 유형 CV_8U의 이미지를 기대 . 그레이 스케일 이미지 으로 변환해야합니다. COLOR_RGBA2RGB
  2. detectMultiScale에서 false positives를 피하기 위해 neighbors 매개 변수의 수를 늘리십시오.
  3. 제안 : 입력 비디오 스트림 인 경우, 모든 프레임에 detectMultiScale을 실행하지 않습니다. LBP 캐스케이드를 사용해도 느립니다. 하나의 프레임에서 탐지를 시도한 다음 추적 기술을 시도하십시오.