之前程序是用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 stm32开发clion时遇到的编译问题
- ¥15 lna设计 源简并电感型共源放大器
- ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
- ¥15 Vue3地图和异步函数使用
- ¥15 C++ yoloV5改写遇到的问题
- ¥20 win11修改中文用户名路径
- ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
- ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
- ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
- ¥15 帮我写一个c++工程