c++包opencv DLL C#使用
C++
新增下方include並寫setpath與pshow兩方法。
前者為得到圖片位址並回傳指標,後者利用得到的指標去取得圖片位址並顯示圖片。
#include "cv.h"
#include "cxcore.h"
#include "highgui.h"
#include <iostream>
using namespace std;
extern "C" _declspec(dllexport) IplImage* setpath();
_declspec(dllexport) IplImage* setpath()
{
IplImage *image = cvLoadImage("D:\\test.jpg" ,1);
IplImage* output = image;
return output;
}
extern "C" _declspec(dllexport) void pshow(IplImage *image);
_declspec(dllexport) void pshow(IplImage *image)
{
cvNamedWindow("show" ,1 );
cvShowImage("show" , image);
cvWaitKey();
}
C#中要使用指標,需先至專案 >> 屬性 >> 建置 >> 勾選"容許Unsafe程式碼",在所要用的方法前加上unsafe即可
新增下方include並寫setpath與pshow兩方法。
前者為得到圖片位址並回傳指標,後者利用得到的指標去取得圖片位址並顯示圖片。
#include "cv.h"
#include "cxcore.h"
#include "highgui.h"
#include <iostream>
using namespace std;
extern "C" _declspec(dllexport) IplImage* setpath();
_declspec(dllexport) IplImage* setpath()
{
IplImage *image = cvLoadImage("D:\\test.jpg" ,1);
IplImage* output = image;
return output;
}
extern "C" _declspec(dllexport) void pshow(IplImage *image);
_declspec(dllexport) void pshow(IplImage *image)
{
cvNamedWindow("show" ,1 );
cvShowImage("show" , image);
cvWaitKey();
}
C#中要使用指標,需先至專案 >> 屬性 >> 建置 >> 勾選"容許Unsafe程式碼",在所要用的方法前加上unsafe即可
留言
張貼留言