Dll导出功能和opencv

时间:2013-06-09 14:18:08

标签: c++ opencv dll

我正在尝试使用opencvunity。我试图打开一个功能打开相机,另一个打开相机:

#include "stdafx.h"
#include "camera.h"
#include <fstream>
using namespace std;

#define DllExport   __declspec( dllexport )

cameraControl mycam;
HANDLE threadCamera;
int threadCameraNumber = 0;

extern "C"
{
    DWORD WINAPI cameraStart(LPVOID lpParam)
    {       
             mycam.captureStart();
             return 0;
    }

    DllExport void cameraRun()
    {
            threadCamera = CreateThread(NULL, 0, cameraStart, &threadCameraNumber, 0, NULL);
    }

    DllExport void cameraStop()
    {
             mycam.captureEnd();    
    }
}

问题是,当我调用第一个函数cameraRun()时,它会打开凸轮,但是当我调用第二个函数cameraStop()时它没有做任何事情。

1 个答案:

答案 0 :(得分:0)

这可能会有所帮助: http://opencv.jp/opencv-1.0.0_org/docs/ref/opencvref_highgui.htm

cvQueryFrame 从相机或文件中抓取并返回一个框架

IplImage * cvQueryFrame(CvCapture * capture); 捕获 视频捕捉结构。 函数cvQueryFrame从相机或视频文件中获取帧,解压缩并返回它。此函数只是一次调用中cvGrabFrame和cvRetrieveFrame的组合。用户不应释放或修改返回的图像。