2013-04-13 205 views
0

我有灰色的位圖圖像。如何在灰色位圖圖像上繪製彩色圖形?

 Image<Gray, byte> cannyImage = new Image<Gray, byte>(pathImg); 
     Bitmap drawImg = cannyImage.ToBitmap(); 

我想在這個圖像上畫一些形狀:

Graphics g = Graphics.FromImage(drawImg); 
    g.DrawLines(new Pen(Color.Purple), shapes[0].sample.pointsArray); 

在代碼的最後一行我得到這個錯誤:

圖形對象不能從圖像中被創建,具有索引像素格式。

任何想法如何在灰色位圖圖像上繪製彩色形狀? 提前謝謝!

+0

紫色像素,(RGB:230,230,250,可以存儲在一個字節僅當一些索引表用於存儲顏色,即圖象標題具有其限定允許的256個色的表.i認爲需要Bgr創建圖像時才能使用它的顏色。 –

回答

2

轉換爲Bgr(RGB),然後試試你的代碼。

Image<Bgr, Byte> cannyBgr = cannyImage.Convert<Bgr, Byte>(); 
Bitmap drawImg = cannyBgr.ToBitmap(); 
相關問題