WPF:图像处理(二)灰度化(2)
来源:未知 责任编辑:责任编辑 发表时间:2014-05-20 18:33 点击:次
new FormatConvertedBitmap(bitmap, PixelFormats.Bgr32, null, 0).CopyPixels(Pixels, Stride, 0);
}
// 将像素数据转换为彩色数组
Color[,] ColorArray = new Color[PixelHeight, PixelWidth];
for (Int32 i = 0; i < PixelHeight; i++)
{
for (Int32 j = 0; j < PixelWidth; j++)
{
Int32 Index = i * Stride + (j << 2);
ColorArray[i, j].B = Pixels[Index];
ColorArray[i, j].G = Pixels[Index + 1];
ColorArray[i, j].R = Pixels[Index + 2];
ColorArray[i, j].A = Pixels[Index + 3];
}
}
return ColorArray;
}
/// <summary>
/// 将位图转换为灰度数组(256级灰度)
/// </summary>
/// <param name="bitmap">原始位图</param>
/// <returns>灰度数组</returns>
/// <remarks>扩展方法</remarks>
public static Byte[,] ToGrayArray(this BitmapSource bitmap)
{ // 将像素格式统一到Bgr32,并提取图像数据
Int32 PixelHeight = bitmap.PixelHeight; // 图像高度
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>