簡體   English   中英

OpenCV Android CamShift斷言失敗錯誤

[英]OpenCV Android CamShift Assertion failed error

我正在嘗試使用OpenCV camShift函數在android上實現對象跟蹤應用程序。 我正在使用我的Android平板電腦的相機獲取圖像幀。 我定義了要在圖像框架內跟蹤的空間的矩形。 之后,我將這兩個值傳遞給Video.Camshift函數以及終端條件。 啟動應用程序后,我得到:

OpenCV錯誤:斷言失敗–錯誤

以下是相關代碼:

public Mat onCameraFrame(CvCameraViewFrame inputFrame) {

     Mat scene = inputFrame.rgba();

     if(trackingFrame == null){
          trackingFrame = new Rect(scene.cols()/2,scene.rows()/2,50,50);
     }
     System.out.println(trackingFrame.size().toString());
     RotatedRect box =Video.CamShift(scene, trackingFrame, new TermCriteria(TermCriteria.EPS,10,1)); 
     trackingFrame = box.boundingRect();
     Point pt1 =new Point(trackingFrame.x,trackingFrame.y);
     Point pt2 =new Point(trackingFrame.x+trackingFrame.width,trackingFrame.y+trackingFrame.height);
     Scalar RED = new Scalar(255,0,0);
     Imgproc.rectangle(scene, pt1, pt2, RED);
     return scene;
 }

這是我得到的錯誤:

E/cv::error()(19177): OpenCV Error: Assertion failed (cn == 1) in int cv::meanShift(cv::InputArray, cv::Rect&, cv::TermCriteria), file /home/maksim/workspace/android-pack/opencv/modules/video/src/camshift.cpp, line 59
E/org.opencv.video(19177): video::CamShift_10() caught cv::Exception: /home/maksim/workspace/android-pack/opencv/modules/video/src/camshift.cpp:59: error: (-215) cn == 1 in function int cv::meanShift(cv::InputArray, cv::Rect&, cv::TermCriteria)
W/dalvikvm(19177): threadid=11: thread exiting with uncaught exception (group=0x42f05500)
E/AndroidRuntime(19177): FATAL EXCEPTION: Thread-8274
E/AndroidRuntime(19177): CvException [org.opencv.core.CvException: cv::Exception: /home/maksim/workspace/android-pack/opencv/modules/video/src/camshift.cpp:59: error: (-215) cn == 1 in function int cv::meanShift(cv::InputArray, cv::Rect&, cv::TermCriteria)

我真的不明白問題出在哪里,因為錯誤消息中沒有具體說明。 有誰能夠幫助我?

好的,我發現了我的錯誤。 而不是使用攝像機輸入,我首先必須:

  • 選擇要跟蹤的圖片內的對象
  • calcHist制作該圖片的直方圖
  • 使用該直方圖作為calcBackProject函數
  • calcBackProject中使用Video.CamShift的輸出

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM