2016-09-25 70 views
0

我想要做的是在Emgu.CV.Mat中使用let說預加載的圖像。它提供了一個可以指定文件名的構造函數。但是我的圖像已經在代碼中加載(和操縱)了,因此在這裏保存文件只是爲了加載它是沒有意義的。Mat.Mat構造函數中使用的WriteableBitmap(Emgu.CV)

我正在WPF環境下工作,因此當前的我的圖像爲WriteableBitmap。此外,我發現了幾個提示(例如here)如何將Mat轉換爲WriteableBitmap。但我正在尋找的是另一種方式,使用WriteableBitmap爲了Emgu.CV的東西。

根據Emgu CV 2.x it was possible要使用Bitmap,但它接縫該功能已在Emgu CV 3.x中刪除。

任何想法如何在Emgu CV版本3中做到這一點?

回答

0

我一直在這方面嘗試一個工作相關的應用程序。要有效地使用帶有Mat或圖像的WriteableBitmap,您需要訪問原始像素。

因爲我有來自硬件以及創建RenderTargetBitmap的圖像,我發現我的作品是使用合適大小的HGlobalAlloc分配緩衝區,並使用RenderTargetBitmap.CopyPixels()將數據移動到此緩衝區。我還使用一個IntPtr創建一個圖像到這個數據。一旦我完成了操作,我使用WiteableBitmap.WritePixels()將圖像放回到WriteableBitmap中。

這裏也是從Emgu溶液:BitmapSourceConverter

道格