我在正确使用OpenCV
Java库时遇到问题,以下代码崩溃:
MatOfKeyPoint keypoints = new MatOfKeyPoint(); this.myFeatures.detect(inputimage,keypoints);
我认为关键点是这个可变对象,我将其传递给检测功能并接收回来.例如.后来我想做:
Features2d.drawKeypoints(inputimage,keypoints,outputimage);
我在这做错了什么?谢谢.
解决方法
问题已解决 – 您不仅需要转换颜色类型,而且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,rgb); Imgproc.cvtColor(rgb,outputimage,Imgproc.COLOR_RGB2RGBA);
原文地址:https://www.jb51.cc/java/121026.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。