2013-04-24 4 views
6

मैं OpenCV जावा पुस्तकालय का उपयोग करने में समस्या हो रही है का पता लगाने के लिए OpenCV, निम्नलिखित कोड क्रैश हो रहा है:एंड्रॉयड MatOfKeyPoint का उपयोग करने और feature2d

MatOfKeyPoint keypoints = new MatOfKeyPoint(); 
this.myFeatures.detect(inputImage, keypoints); 

मैंने सोचा था कि keypoints था इस परिवर्तनशील उद्देश्य यह है कि मैं detect समारोह में पारित और वापस प्राप्त करें। जैसे बाद में मैं करना चाहता हूं:

Features2d.drawKeypoints(inputImage, keypoints, outputImage); 

मैं यहां क्या गलत कर रहा हूं? धन्यवाद।

उत्तर

9

समस्या हल हो गई - न केवल आपको रंग प्रकारों को परिवर्तित करना है, लेकिन कम से कम लाइब्रेरी में, SURF एल्गोरिदम उपलब्ध नहीं है। यहाँ काम कर कोड है:

myFeatures = FeatureDetector.create(FeatureDetector.FAST); 
rgb = new Mat(); 
outputImage = new Mat(); 
keypoints = new MatOfKeyPoint(); 

Imgproc.cvtColor(inputImage, rgb, Imgproc.COLOR_RGBA2RGB); 
myFeatures.detect(rgb, keypoints); 
Features2d.drawKeypoints(rgb, keypoints, rgb); 
Imgproc.cvtColor(rgb, outputImage, Imgproc.COLOR_RGB2RGBA); 

काश वे fatal signal 11 से एक त्रुटि बेहतर लौटे ...

संबंधित मुद्दे