2013-03-23 103 views
0

我有要求驗證具有高度屬性的文件夾中的大量圖像(jpg,tif,png)。但彩色圖像和灰度圖像的驗證規則不同。如何識別圖像是灰度圖像或彩色圖像在c#

但我的問題是

如何識別圖像是在C#灰度圖像還是彩色圖像?

至少從哪裏開始?

+0

我相信圖像或位圖類包含一個ImageFormat屬性,指定每像素位。儘管如此,這還不夠。您可能需要掃描每個像素,並確保r == g == b – 2013-03-23 05:31:39

+0

能否請您爲我提供如此寧靜的代碼 – Civa 2013-03-23 06:08:39

+0

否。網上有很多例子展示了這個概念。 – 2013-03-23 07:15:59

回答

2
bool IsGreyScale(Bitmap YourCurrentBitmap) 
{ 
Color c; 
for(int i=0; i < YourCurrentBitmap.Width; i++) 
    for(int j=0; j < YourCurrentBitmap.Height; j++) 
      { 
       c = YourCurrentBitmap.GetPixel(i,j); 
       if(!(c.R == c.G == c.B)) return false; 
      } 
return true; 
} 

但是這種方法雖然比較慢。

+1

感謝您的回答:) – Civa 2013-03-23 09:07:48