2015-04-06 236 views

回答

0

您可以使用「IMAQ GetImagePixelPtr」獲取LabView中圖像的指針。

在DLL中,你應該能夠得到這樣的:

int function(unsigned __int8 *LVImagePointer, int lineWidth, int height, int width) 
    { 
     Mat image(height, width, CV_8UC1, LVImagePointer, lineWidth); 
     ... 
    } 
+0

Vivien,opencv沒有再次創建圖像。輸出爲黑白損壞的圖像:( – 2015-04-12 15:21:19

+0

是您的黑白圖像 如果沒有,你可以嘗試: '墊溫度(高度,寬度,CV_8UC4,LVImagePtr,4×線寬);' – Vivien 2015-04-13 18:06:31

+0

這是一個RGB?圖像,我試過你添加的最後修改仍然我得到一個損壞的圖像 – 2015-04-15 10:51:19

0

我發現它很容易使用IMAQ ImageToArrayIMAGEIMAQ GetImageSizeIMAGE_HEIGHTIMAGE_WIDTH並通過這些給DLL。他們被稱爲是這樣的:

cv::Mat src = cv::Mat(IMAGE_HEIGHT, IMAGE_WIDTH, CV_8UC1, IMAGE); 

它的優點是在src所有操作都可以在LabVIEW中你走出DLL回的圖像數組轉換中可以看出。

相關問題