我必须将图像转换为黑白图像,这是使用移动相机捕获的。
我已经阅读了与将图像转换为黑白有关的问题和答案,但是提供的解决方案对我没有帮助。
下面是我捕获的图像。
因此,我必须根据需要将上面的图像转换为黑白,以将其保存在应用程序文件夹中。
我已经尝试过使用C#代码,但是它给我的图像不完整。
代码1
Bitmap bmp = new Bitmap(@"c:\test.jpg");
Bitmap bw = bmp.Clone(new Rectangle(0, 0, bmp.Width, bmp.Height),
PixelFormat.Format8bppIndexed);
代码2
Bitmap bmp = new Bitmap(@"c:\test.jpg");
int width = bmp.Width;
int height = bmp.Height;
int[] arr = new int[225];
int i = 0;
Color p;
//Grayscale
for (int y = 0; y < height; y++)
{
for (int x = 0; x < width; x++)
{
p = bmp.GetPixel(x, y);
int a = p.A;
int r = p.R;
int g = p.G;
int b = p.B;
int avg = (r + g + b) / 3;
avg = avg < 128 ? 0 : 255; // Converting gray pixels to either pure black or pure white
bmp.SetPixel(x, y, Color.FromArgb(a, avg, avg, avg));
}
}
这可能是由于使用移动设备捕获图像时出现阴影所致。
请让我知道如何在不丢失图像的情况下将该图像转换为黑白图像。
有没有可以帮助我的图书馆。