如何使用OpenCV 3.1调用line或cv :: line?

时间:2016-10-05 05:14:13

标签: c++ opencv opencv3.1

我正在关注的教程包含如下代码:

line( img_matches, ..., ..., Scalar( 0, 255, 0), 4 );

其中img_matches只是一个Mat,接下来的两个参数是点,然后是颜色和宽度。我已经找到了OpenCV 3.1中为本教程改变的所有其他内容,但我无法弄清楚如何绘制线条。文档似乎暗示它只是简单地是cv :: line(...),但是我的命名空间中没有定义,并且在范围内有一个cvLine,但是它看起来像是Mat以外的东西。

我不是C ++程序员,所以这可能是基本的。

根据要求,这是我的标题:

#include <stdio.h>
#include <iostream>
#include "opencv2/core.hpp"
#include "opencv2/features2d.hpp"
#include "opencv2/highgui.hpp"
#include "opencv2/calib3d.hpp"
#include "opencv2/xfeatures2d.hpp"

我的代码是本教程中99%的代码:http://docs.opencv.org/3.0-beta/doc/tutorials/features2d/feature_homography/feature_homography.html

1 个答案:

答案 0 :(得分:1)

您很可能没有包含所需的头文件。

opencv c ++ api的主标题位于opencv.hpp,而您具体询问的函数(cv::line)位于imgproc.hpp(大多数opencv.hpp也包含在内)