我正在嘗試在我的項目中實現SURF特徵,即關於人臉識別。我在android上的opencv是新的。所以找到邏輯錯誤有點難。此外,我試圖從谷歌搜索,但沒有我可以修復。 我導入了用於處理特徵問題的libray org.opencv.features2d。使用Android OpenCV SDK進行SURF特徵提取 - 獲取一些錯誤
開始時這是我的SURF實現代碼(的一部分)。
public void SURFExtraction()
{
FeatureDetector detector = FeatureDetector.create(FeatureDetector.SURF);
DescriptorExtractor SurfExtractor = DescriptorExtractor.create(DescriptorExtractor.SURF);
Mat img1 = Highgui.imread("/mnt/sdcard/FaceDB/1.jpg");//one of my face
Mat img2 = Highgui.imread("/mnt/sdcard/FaceDB/2.jpg");//one of my different face
//extract keypoints
MatOfKeyPoint keypoints = new MatOfKeyPoint();
MatOfKeyPoint logoKeypoints = new MatOfKeyPoint();
detector.detect(img1, keypoints);//this is the problem "fatal signal"
Log.d("LOG!", "number of query Keypoints= " + keypoints.size());
detector.detect(img2, logoKeypoints);
Log.d("LOG!", "number of logo Keypoints= " + logoKeypoints.size());
}
當我執行程序時,它會給出一個錯誤。只是這個。
A/libc(30444): Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1)
我搜索了這個錯誤。他們說,當本地類嘗試達到或寫入0x00000000內存地址時會發生此錯誤。但我無法弄清楚如何解決這個問題。 你能告訴我我該怎麼辦?
在此先感謝
有你在STDERR的任何輸出消息? – brotherofken 2013-04-07 13:15:23
我試圖在logcat中顯示錯誤。我得到了同樣的致命信號錯誤。另一方面,我不知道如何使用或在哪裏使用STDERR。 – COvayurt 2013-04-07 14:09:08