私はこのような何かを実装しようとしています:http://www.youtube.com/watch?v=zjxWpKCQqJc android。ここでAndroid OpenCVオブジェクト検出
私のコード:
public Mat onCameraFrame(CvCameraViewFrame inputFrame) {
Mat novo = new Mat();
Mat resp = new Mat();
Mat homer = new Mat();
//resp = inputFrame.gray();
novo = inputFrame.gray();
Mat lido = new Mat();
try {
lido = Utils.loadResource(this, R.drawable.homer);
} catch (IOException e) {
e.printStackTrace();
}
Imgproc.cvtColor(lido, homer, Imgproc.COLOR_RGB2GRAY);
FeatureDetector surf = FeatureDetector.create(FeatureDetector.FAST);
MatOfKeyPoint keypointsHomer = new MatOfKeyPoint();
MatOfKeyPoint keypoints = new MatOfKeyPoint();
surf.detect(homer, keypointsHomer);
surf.detect(novo, keypoints);
DescriptorExtractor SurfExtractor = DescriptorExtractor.create(FeatureDetector.SURF);
Mat descriptors = new Mat();
Mat homerDescriptors = new Mat();
SurfExtractor.compute(novo, keypoints, descriptors);
SurfExtractor.compute(homer, keypointsHomer, homerDescriptors);
DescriptorMatcher m = DescriptorMatcher.create(DescriptorMatcher.BRUTEFORCE);
MatOfDMatch matches = new MatOfDMatch();
m.match(descriptors, homerDescriptors, matches);
Features2d.drawMatches(novo, keypoints, homer, keypointsHomer, matches, resp);
return resp;
}
、私は次のエラーました:私はこのようなキーポイントを描画しようとした場合https://dl.dropboxusercontent.com/u/2345114/error_android.png
を:
Features2d.drawKeypoints(novo, keypoints, resp);
Features2d.drawKeypoints(homer, keypointsHomer, resp);
の両方が正常に動作します! 私は間違って何をしていますか?
問題を自分で解決した場合は、解決策を投稿してくださいだった?また、あなたのリンクはもう働きません。あなたのアプリケーションはGoogleプレイでもう利用できないようです。 – pocmo
私はそうしました。私はなぜアプリがGoogleプレイから削除されたのか分からないが、私のウェブサイトには、ソースコードへのリンクがあり、apkが含まれています。 http://quintao.info 私は助けになることを願っています! = D –
ねえ、あなたがそこでやった素晴らしい仕事!異なるシンプソンの人々の違いをどうやって作ったのですか?私はあなたの検出器のような何かをしようとしているが、車の部品です。私はステアリングホイールと車輪の違いを作る必要があります。私に何かお勧めしますか? – definera