如何识别图像是灰度图像或彩色图像在c#
问题描述:
我有要求验证具有高度属性的文件夹中的大量图像(jpg,tif,png)。但彩色图像和灰度图像的验证规则不同。如何识别图像是灰度图像或彩色图像在c#
但我的问题是
如何识别图像是在C#灰度图像还是彩色图像?
至少从哪里开始?
答
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
我相信图像或位图类包含一个ImageFormat属性,指定每像素位。尽管如此,这还不够。您可能需要扫描每个像素,并确保r == g == b – 2013-03-23 05:31:39
能否请您为我提供如此宁静的代码 – Civa 2013-03-23 06:08:39
否。网上有很多例子展示了这个概念。 – 2013-03-23 07:15:59