之前程序是用C++写的,现在想要移植到java平台,需要用java重新写一遍,但是opencv里同一个函数在C++和java里有所变化,比如特征点检测里的detect,在C++里的参数可以是(Mat image,vectorcv::KeyPoint keypointslist),但是在java里只能是(Mat image,KeyPoint keypoints)或者(List image,List keypoints),即输入图像image和输出关键点keypoints必须全是List或全不是List,但是一幅图像提取出的特征点有好多,大概几千个。可能是我的理解有偏差,不用list也可以存储多个keypoints;
第二个问题是:返回keypoints后,怎么从中提取出里面的属性(pt.x,pt.y,angle,class_id,octave,response,size)呢?我是想读出来存储在txt文件里,已在C++里实现。
java小白,只看过基本的语法,没什么项目经验,求大神解惑!
java项目里调用opencv,提取surf特征,如何从keyPoints中读出提取的特征点?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 寂寞空虚党 2017-08-14 03:23关注
MatOfKeyPoint mkp =new MatOfKeyPoint ();
fd.detect(test_mat, mkp);
for (KeyPoint keyPoint :mkp.toList() ) {
System.out.println( keyPoint.pt.x+","+keyPoint.pt.y);
}
我也是opencv新手,希望能学习下。解决 无用评论 打赏 举报
悬赏问题
- ¥15 如何在scanpy上做差异基因和通路富集?
- ¥20 关于#硬件工程#的问题,请各位专家解答!
- ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
- ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
- ¥30 截图中的mathematics程序转换成matlab
- ¥15 动力学代码报错,维度不匹配
- ¥15 Power query添加列问题
- ¥50 Kubernetes&Fission&Eleasticsearch
- ¥15 報錯:Person is not mapped,如何解決?
- ¥15 c++头文件不能识别CDialog