From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Cannot convert OpenCV Mat to IMAQ image.ctl format

Hi all,

 

I'm using LabVIEW 2016 with the NIVision OpenCV Utility installed. I'm trying to learn calling OpenCV library from LabVIEW so I build a very simple VI that grabs image from webcam, do a thresholding (OpenCV library), and output the result image. The OpenCV part works fine as I can save the images from OpenCV code. However I encountered this problem that the image cannot be displayed or saved in LabVIEW panel. 

 

I've checked the sample "OpenCV motion detection" as it also has an image output. I noted there are basically three lines of codes I need to add in for the conversion, which I have followed exactly in my codes:

 

EXTERN_C void NI_EXPORT NIVisOpenCV_GetMovingObjectMask(int handle, NIImageHandle sourceHandle, NIImageHandle outMaskHandle, NIErrorHandle errorHandle){

NIImage mask(outMaskHandle);

...
Mat outMask;

...
ThrowNIError(mask.MatToImage(outMask));

}

 

I attach my VI and codes here. Hope can have some suggestions. Thanks!

 

EXTERN_C void NI_EXPORT NIVisOpenCV_Test(int thre, NIImageHandle sourceHandle, NIImageHandle grayImageHandle, NIArrayHandle rectLV, NIErrorHandle errorHandle)
{
NIERROR error = NI_ERR_SUCCESS;
ReturnOnPreviousError(errorHandle);
try {
NIImage source(sourceHandle);
NIImage gray(grayImageHandle);

NIArray1D<LV_Rect> rect(rectLV);

//Do image conversions
Mat sourceMat;
ThrowNIError(source.ImageToMat(sourceMat));

Mat greyImg, procImg;
cvtColor(sourceMat, greyImg, CV_BGR2GRAY);
threshold(greyImg, procImg, thre, 255, THRESH_BINARY_INV);

imwrite("D:\\proc.jpg", procImg);
ThrowNIError(gray.MatToImage(greyImg));

}
catch (NIERROR _err) {
error = _err;
}
catch (...) {
error = NI_ERR_OCV_USER;
}
}

 

 

Download All
0 Kudos
Message 1 of 1
(2,286 Views)