首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓OpenCV List<KeyPoint> to Mat

安卓OpenCV List<KeyPoint> to Mat
EN

Stack Overflow用户
提问于 2012-04-13 16:03:11
回答 1查看 3.7K关注 0票数 1

我正在尝试使用opencv for android中的立体校准整流

我没有找到在java中从列表转换为Mat的方法,但在opencv c++中,我们可以从矢量创建Mat

这是我所做的步骤:

代码语言:javascript
复制
//find fundamental matrix
//srcmatchkey and dstmatchkey are List<Point> as required in findFundamentalMat function,    

they have been calculated using FLANN Matcher


Cali3D.findFundamentalMat(srcMatchKey, dstMatchKey, Calib3d.FM_8POINT);

//this is the strange part

Calib3D.stereoRectifyUncalibrated(Mat points1,Mat,points1,Mat fundamentalMatrix,Mat H1,Mat H2)

据我所知,Mat points1和Mat points2是由srcMatchKey和dstMatchKey组成的Mat (或者我错了吗??,如果是错误的,请改正它),并且没有接受列表或c++中的向量之类的Mat构造函数,而Mat c++有这一点。

所以问题是,有没有办法在android中从列表中创建Mat?谢谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-13 21:04:36

如果您使用的是安卓版OpenCV 2.3.1,List到Mat的转换代码为:

代码语言:javascript
复制
  List<Point> lp = null;
  Mat mp = Converters.vector_Point_to_Mat(lp);

或者说到stereoRectifyUncalibrated(),它可以是:

代码语言:javascript
复制
  Mat mp = Converters.vector_Point2d_to_Mat(lp);

在用于安卓的Java2.4.beta(最近发布)中,所有的List<T>类型都被MatOfT类型所取代,该类型阻止了在原生和OpenCV之间来回复制数据。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10137249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档