最近在搞微软的kinect,尝试了在linux下安装其驱动,但是可能因为是在虚拟机上的原因,驱动安装屡屡碰壁,无奈之下转到微软的亲儿子平台windows下来弄,果然分分钟安装好 ,接下来就要借助kinect的强大功能,这里我暂时只用到它的双目相机,并尝试这先用opencv来实现一些想法。下面是配置opencv的c++接口,配置的过程遇到了不少麻烦,好大一部分原因是其他教程的版本不同引起的一系列问题,如果你的vs和opencv版本和我一样,那么接下来可能可以帮助到你!

  • Visual Studio 2017
  • OpenCV3.4 下载地址
    下载好后双击安装即可

为了在C++中能调用opencv,需要进行如下配置:

1.设置环境变量

我的电脑--->属性--->高级系统设置--->环境变量


12115116-948f1981bf0f5e17.png

双击Path,添加..\opencv\build\x64\vc15\bin这个路径,具体路径依据你之前下载的地址


12115116-266b17e97bf5b278.png

2.新建项目demo

12115116-6cb95e405f880e19.png

12115116-63fe53dbeeabd8ea.png

12115116-81eafd7d8da33747.png
很重要
12115116-f357a9888eda7d10.png

12115116-9bbaeb42dae0dc31.png

12115116-3d6c7f98953cad4a.png

添加好后点击确定。


3.测试demo

12115116-24f3f5a57afbcc65.png

选择C++文件(.cpp)
输入如下代码测试能否获取摄像头:

#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;

int main()
{
    VideoCapture capture(0);

    while (true)
    {
        Mat frame;
        capture >> frame;
        imshow("视频", frame);
        waitKey(30);
    }
    return 0;
}

输入如下代码测试能否读取图片:

#include <iostream>
#include <opencv2/opencv.hpp>
using namespace cv;

int main()
{
    Mat image = imread("E:\\kinect\\OpencvProjects\\Project1\\mc.jpg");
    imshow("test", image);
    waitKey(0);
    return 0;
}

注意:图片地址需要用\\转义,或者改为用/来间隔,否则会报内存错误!

  • 如果出现其他报错,查看下debug是否是64位,再看看之前的路径是否设置完整,有没有漏掉的。
Logo

更多推荐