09-23-2009 04:58 AM
Hi..
Greetings!!!!!
I am very new in Imaging Processing in OpenCV and Visual Studio, I am trying to write Dll to call Open CV Funcition in labview.
I successful of calling Image through Open CV in labview through dll
#include "extcode.h"
#include "cv.h" //main OpenCV header
#include "highgui.h" //GUI header
int __declspec (dllexport) Thershold(char Imagepath[])
{
IplImage*Img;
Img=cvLoadImage(Imagepath,1);
cvNamedWindow("PCB",2);
cvShowImage("PCB",Img);
return(Img->width);
}
Data Structure of IplImage is
typedef struct _IplImage
{
int nSize; /* sizeof(IplImage) */
int ID; /* version (=0)*/
int nChannels; /* Most of OpenCV functions support 1,2,3 or 4 channels */
int alphaChannel; /* Ignored by OpenCV */
int depth; /* Pixel depth in bits: IPL_DEPTH_8U, IPL_DEPTH_8S, IPL_DEPTH_16S,
IPL_DEPTH_32S, IPL_DEPTH_32F and IPL_DEPTH_64F are supported. */
char colorModel[4]; /* Ignored by OpenCV */
char channelSeq[4]; /* ditto */
int dataOrder; /* 0 - interleaved color channels, 1 - separate color channels.
cvCreateImage can only create interleaved images */
int origin; /* 0 - top-left origin,
1 - bottom-left origin (Windows bitmaps style). */
int align; /* Alignment of image rows (4 or 8).
OpenCV ignores it and uses widthStep instead. */
int width; /* Image width in pixels. */
int height; /* Image height in pixels. */
struct _IplROI *roi; /* Image ROI. If NULL, the whole image is selected. */
struct _IplImage *maskROI; /* Must be NULL. */
void *imageId; /* " " */
struct _IplTileInfo *tileInfo; /* " " */
int imageSize; /* Image data size in bytes
(==image->height*image->widthStep
in case of interleaved data)*/
char *imageData; /* Pointer to aligned image data. */
int widthStep; /* Size of aligned image row in bytes. */
int BorderMode[4]; /* Ignored by OpenCV. */
int BorderConst[4]; /* Ditto. */
char *imageDataOrigin; /* Pointer to very origin of image data
(not necessarily aligned) -
needed for correct deallocation */
}
IplImage;
I want to Pass pointer name (Img) ofIplImage through labview insted of writing Hard core ,
if any body have Idea to do the same Please give me suggesition to do the same.
Warm Regards
Orooj Ahmed
Email: orooj2k2@gmail.com
I
09-23-2009 10:15 AM
Hi,
Probably this example will be helpful for you: Using OpenCV library in LabVIEW
Here IMAQ Image used in connection with OpenCV, but image transferred as pointer.
Andrey.
12-16-2018 04:05 AM
but i tried it so many times it gives me the error of " call libarary function node.dll" i dont know how to call the libraries in labview?
i dont know how to create dll files and how to upload in labview??
can you help me pleaze ??
thankyou in advance