- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用OpenCV tutorial on image template matching跟随javacpp-presets。
我想丢掉得分太低的比赛,但minMaxLoc
似乎不返回minVal
和maxVal
。
import org.bytedeco.javacpp.DoublePointer;
import org.bytedeco.javacpp.opencv_core.Mat;
import org.bytedeco.javacpp.opencv_core.Point;
import static org.bytedeco.javacpp.opencv_core.CV_32FC1;
import static org.bytedeco.javacpp.opencv_core.NORM_MINMAX;
import static org.bytedeco.javacpp.opencv_core.minMaxLoc;
import static org.bytedeco.javacpp.opencv_core.normalize;
import static org.bytedeco.javacpp.opencv_imgcodecs.IMREAD_COLOR;
import static org.bytedeco.javacpp.opencv_imgcodecs.imread;
import static org.bytedeco.javacpp.opencv_imgproc.TM_CCOEFF_NORMED;
import static org.bytedeco.javacpp.opencv_imgproc.matchTemplate;
public class MatchTemp {
public static void match(String img, String temp) {
Mat image = imread(img, IMREAD_COLOR);
Mat template = imread(temp, IMREAD_COLOR);
int resultRows = image.rows() - template.rows() + 1;
int resultCols = image.cols() - template.cols() + 1;
Mat result = new Mat(resultRows, resultCols, CV_32FC1);
matchTemplate(image, template, result, TM_CCOEFF_NORMED);
Mat normalizedResult = new Mat();
normalize(result, normalizedResult, 0, 1, NORM_MINMAX, -1, new Mat());
DoublePointer maxVal = new DoublePointer();
DoublePointer minVal = new DoublePointer();
Point minLoc = new Point();
Point maxLoc = new Point();
minMaxLoc(normalizedResult, minVal, maxVal, minLoc, maxLoc, null);
System.out.println("min: "+minLoc.x()+", "+minLoc.y());
System.out.println("max: "+maxLoc.x()+", "+maxLoc.y());
minVal.get(); // this throws exception
maxVal.get(); // this throws exception
}
}
Exception in thread "main" java.lang.NullPointerException: This pointer address is NULL.
at org.bytedeco.javacpp.DoublePointer.get(Native Method)
at org.bytedeco.javacpp.DoublePointer.get(DoublePointer.java:101)
...
Mat
的内容?
最佳答案
该错误告诉您它正在尝试访问Null引用。阅读DoublePointer constructor的文档,它告诉您看看Pointer.Pointer(),它基本上告诉您以下内容:
Default constructor that does nothing.
double *p;
public DoublePointer(long size)
double p[1];
double *p = new double;
关于java - OpenCV:minMaxLoc没有给出最小/最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51654336/
我已经被这个问题困扰了很长一段时间。你能帮我知道吗,Opencv 中的 minMaxLoc() 在查找 Mat 变量的最大值、最小值时考虑了什么数据类型?我从该函数中获得了某个值,但我不知道该值实际代
这是我用于模板匹配的代码,min_val、max_val、min_loc、max_loc 是什么意思?它们有什么用? import cv2 import numpy as np from matplo
我不明白 minMaxLoc 的什么参数表示或表示颜色。参数:maxVal——指向返回最大值的指针;如果不需要,则使用 NULL。maxLoc – 指向返回的最大位置的指针(在 2D 情况下);如果不
我在使用 minMaxLoc 时遇到了一些麻烦,当我尝试将点作为引用传递给 max_Loc 时,我遇到了错误。环顾四周后,我发现了很多人使用 double 而不是点的例子,但这里不是这种情况。 这里是
昨天我有一个类似的问题,并且能够推断出错误,感谢您的帮助。好吧,今天我遇到了一个非常相似的问题,但是以我最好的水平,仍然无法定位到这段特定代码中的段错误的原因。 int main()
我一直在使用 minMaxLoc 来计算通过在灰度图像上运行拉普拉斯滤波器获得的数据的最大值。我的简单意图是粗略估计锐度。我遇到了一个令人困惑的情况,我已经在这里讨论过。 对于一组图像,从 minMa
我在 opencv 和模板匹配方面遇到了一些麻烦,所以我希望这里有人可以帮助迷失的灵魂。 因此,作为我正在使用的代码的一部分,我有以下两行我不太理解,但我应该理解。 result = cv2.matc
我有一张源图片和 5 个其他样本,我想找到与源图像最匹配的样本。我的结论是应该使用模板匹配,因为直方图比较不能很好地解决问题。我使用 cv::minMaxLoc 来确定结果矩阵的最小值和最大值,但我误
我在 Python 中使用 OpenCV。 我正在尝试创建一个 Mask此函数中使用的矩阵变量:cv.minMaxLoc . Matrix 变量的大小应与我的模板图像相同,类型 = CV_8UC1 .
我在 iOS 上使用 OpenCV,该项目运行良好并且可以检测到哈里斯角,但是当我尝试使用以下行时出现编译错误: cv::minMaxLoc(cornerStrength,&minStrength,&
简单的问题,但无法弄明白。 通常它的 void minMaxLoc(InputArray src, double* minVal, double* maxVal=0, Point* minLoc=0,
我正在做模板匹配以找到人眼的虹膜。我一直在关注我在 OpenCV4Android 网站上找到的 romanhosek 教程 - http://romanhosek.cz/android-eye-det
OpenCV 中的模板匹配很棒。您可以将掩码传递给 cv2.minMaxLoc,这样您就可以只在部分图像中搜索(某种程度上)所需的模板。您也可以在 matchTemplate 操作中使用掩码,但这只会
使用 OpenCV 2.3.1。我正在运行 cv::minMaxLoc() 并且它返回最小和最大位置的点 (-1, -1),两者的值均为 0。这是什么意思? 最佳答案 以下是 minMaxLoc 的相
我是一名优秀的程序员,十分优秀!