簡體   English   中英

使用eBUS SDK和EmguCV在C#中從PvBuffer創建Mat

[英]Create a Mat from a PvBuffer in C# using eBUS SDK and EmguCV

我正在使用EmguCV 3.4.1和eBUS SDK。 我有視頻通過GigE傳入,我想將PvBuffer轉換為MAT,以便可以使用OpenCV創建直方圖顯示。

我遵循了與在C ++中創建Mat相似的樣式。 不幸的是,此解決方案要求將項目標記為不安全。

    unsafe private Mat convertPvBufferToMat(PvBuffer aBuffer)
    {
        PvImage lImage = aBuffer.Image;
        lImage.Alloc(lImage.Width, lImage.Height, PvPixelType.Mono16);
        int[] sizes = new int[2] { (int)lImage.Height, (int)lImage.Width };
        Mat aMat = new Mat(sizes, DepthType.Cv16U, (IntPtr)lImage.DataPointer);

        return aMat;
    }

我正在從紅外攝像機拍攝輸出16位灰度圖像的圖像。

暫無
暫無

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

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