簡體   English   中英

如何將Labview圖像類型轉換為opencv圖像類型(或Mat)?

[英]How to convert a labview image type to opencv image type (or Mat)?

我正在使用LabView從USB攝像機獲取圖像,然后想通過dll文件(在調用函數VI中使用)使用openCV函數處理該圖像。 現在,我想轉換Labview產生的圖像格式以使用opencv處理它。 我該怎么辦?

使用任何可用的工具箱。 說,這個: https : //www.ehe-lab.com/OpenCV_Wrapper.html

您可以使用“ IMAQ GetImagePixelPtr”在LabView中獲取圖像上的指針。

在dll中,您應該可以像這樣獲取它:

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

我發現防止內存泄漏很復雜。 我建議您使用工具箱: http : //ms-consultants.de/index.php/software/msc-image-processing/37-msc-image-processing-eng

如果您需要更多功能,它們還提供實現新功能的功能。

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

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

它的優點是,通過將從DLL中獲得的數組轉換回映像,可以在Labview中看到src上的所有操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM