2015-07-10 67 views
0

我是C#的新手,所以請原諒我,如果我的問題的答案非常簡單。將幾個圖像保存爲一個鋸齒形陣列

我的目標是從我的相機捕捉和存儲10幀,所以我可以做一些後期調整。我正在使用Gige Basler偵察員單色相機。 我知道如何用while循環獲取10幅圖像。

所以我的問題是如何在while循環的每次迭代中保存每個圖像到相同的鋸齒狀數組?

我的目標是將10張圖像保存爲一個3D鋸齒狀陣列。我聲明交錯數組爲:

UInt16[][,] jaggedArray = new UInt16[10][,];

攝像機得到的圖像轉換爲位圖格式(m_bitmap)。

使用Emgu我可以bitmat轉換爲圖像(不知道如果我必須這樣做):

Image<Gray, UInt16> IMA = new Image<Gray, UInt16>(m_bitmap); 

什麼我想要做的是,在每次迭代中,我可以保存所獲取圖像中的鋸齒狀數組:

itteration 1 :>>  jaggedArray[0] = 1st Image 

itteration 2 :>>  jaggedArray[1] = 2nd Image 

...

itteration 10 :>>  jaggedArray[9] = 10th Image 

但我不知道如何保存獲取的圖像或位圖內鋸齒狀數組(jaggedArray [i] = ???????????)。

在我必須轉換我的圖像或位圖,以便能夠存儲它鋸齒陣列內?

請如果你知道任何更好的方法來解決這個問題隨時告訴我。

捕獲的圖像的大小爲(1280,960)。

預先感謝您!

回答

0

我假設你試圖在每個循環中存儲整個圖像。由於Emgu圖像是一個特定的類,不僅僅是一個數組,您可以有一個十個Emgu圖像的數組。

Image<Gray, UINT16>[] rawCaptures = new Image<Gray, UINT16>[10]; 
// some other code... 
while(cameraIsRunning && iWantMoreImages) 
{ 
    // more code here... 
    Image<Gray, UInt16> IMA = new Image<Gray, UInt16>(m_bitmap); 
    rawCaptures[indexOfCapture] = IMA; 
} 
+0

那你非常感謝你的回答!我感謝你的助手!也很抱歉,但我不能給你一個分數,因爲我不是15級:(無論如何非常感謝你! – Spiros