c++ - findHomography 返回的 mask 参数值代表什么?

标签 c++ opencv computer-vision homography ransac

我将 OpenCV 的函数 findHomography 与 RANSAC 方法结合使用,以便找到将两个图像与一组关键点相关联的单应性。

主要问题是我在任何地方都找不到函数输出的掩码矩阵的值是多少。

我知道的唯一信息是 0 值是离群值,非零值是离群值。但这意味着什么是异常值?有人知道吗?

我调用 findHomography 的一段代码:

cv::Mat H12;
cv::Mat mask;

H12 = cv::findHomography(FvPointsIm1, FvPointsIm2, mask, CV_RANSAC, 5); 
ui->Debug_Label->setText(Mat2QString(mask));

最佳答案

findHomography返回的掩码是一个 8 位单 channel cv::Mat (或 std::vector<uchar> ,如果您愿意)包含 01指示异常值状态。

编辑:您可以通过调用 .at<double> 来访问掩码的每个元素,这导致了困惑的输出。你应该使用 .at<uchar> ,这将正确解释矩阵值。

关于c++ - findHomography 返回的 mask 参数值代表什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15815304/

相关文章:

android - 为什么 eglMakeCurrent() 因 EGL_BAD_MATCH 而失败?

python - 如何在 opencv 中使用 matlab imadjust 函数?

C++ vector of priority_queue of strings with custom strings comparator

c++ - 将 glm::vec3 常量引用分配给另一个 glm::vec3 时发生奇怪的崩溃

python - 如何在将 dicom 文件转换为 jpg 文件时设置窗口宽度和窗口中心

opencv - 在 OpenCV 中使用 k-means 进行颜色分类

python - 如何在python中将azure自定义视觉注释格式更改为yolo v8格式

python - 使用 Python OpenCV 在模糊对象周围找到紧密轮廓

c++ - 更正 size_t : %zu or %Iu? 的 printf 格式说明符

c++ - 在opencv中创建透明图像