java opencv point2d,java - java opencv Feature2d.drawMatches-断言失败或NullPointerException - 堆栈内存溢出...

在尝试使用OpenCV Java API的Feature2d.drawMatches方法显示从SIFT特征提取的图像匹配时,遇到一个断言错误。错误提示为OpenCV中的outImage.empty()检查失败。代码中已经进行了empty()检查,但问题仍然存在。尝试过初始化输出Mat为非空,但结果不变。问题可能源于参数设置或方法调用的其他方面。
摘要由CSDN通过智能技术生成

我正在尝试使用openCV Java API中的Feature2d.drawMatches方法创建一个图像,该图像描述从sift文件生成的图像中关键点之间的匹配。 我似乎无法弄清楚该方法将采用哪种参数作为输出参数-我不断收到以下断言错误:

OpenCV(3.4.1) Error: Assertion failed (!outImage.empty()) in

cv::drawKeypoints, file C:\build\master_winpack-bindings-win32-vc14-

static\opencv\modules\features2d\src\draw.cpp, line 115

Exception in thread "main" CvException [org.opencv.core.CvException:

cv::Exception: OpenCV(3.4.1) C:\build\master_winpack-bindings-win32-vc14-

static\opencv\modules\features2d\src\draw.cpp:115: error: (-215)

!outImage.empty() in function cv::drawKeypoints

]

at org.opencv.features2d.Features2d.drawMatches_1(Native Method)

at org.opencv.features2d.Features2d.drawMatches(Features2d.java:71)

at com.company.GUI.ImagesView.matchPoints(ImagesView.java:94)

at com.company.GUI.ImagesView.(ImagesView.java:69)

at com.company.Main.main(Main.java:17)

我的代码:

private void matchPoints() {

System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

MatOfKeyPoint matKey1 = new MatOfKeyPoint(keyPoints1);

MatOfKeyPoint matKey2 = new MatOfKeyPoint(keyPoints2);

MatOfDMatch matDMatch = new MatOfDMatch(matches);

Mat output = new Mat();

//output = new Mat(matKey1.rows(), matKey1.cols(), CvType.CV_8U, Scalar.all(0));

if (!output.empty())

System.out.println("not empty");

else

System.out.println("empty");

Features2d.drawMatches(mat1, matKey1, mat2, matKey2, matDMatch, output);

HighGui.imshow("Matches", output);

}

尽管下面的empty()检查为这两个Mats返回了不同的值,但是否取消注释了注释行,却显示出完全相同的断言错误。 我很茫然,将不胜感激。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值