解析C#彩色图像灰度化算法的实现代码详解_C#教程-查字典教程网
解析C#彩色图像灰度化算法的实现代码详解
解析C#彩色图像灰度化算法的实现代码详解
发布时间:2016-12-28 来源:查字典编辑
摘要:代码如下所示:复制代码代码如下:publicstaticBitmapMakeGrayscale(Bitmaporiginal){//crea...

代码如下所示:

复制代码 代码如下:

public static Bitmap MakeGrayscale(Bitmap original)

{

//create a blank bitmap the same size as original

Bitmap newBitmap = new Bitmap(original.Width, original.Height);

//get a graphics object from the new image

Graphics g = Graphics.FromImage(newBitmap);

//create the grayscale ColorMatrix

System.Drawing.Imaging.ColorMatrix colorMatrix = new System.Drawing.Imaging.ColorMatrix(

new float[][]

{

new float[] {.3f, .3f, .3f, 0, 0},

new float[] {.59f, .59f, .59f, 0, 0},

new float[] {.11f, .11f, .11f, 0, 0},

new float[] {0, 0, 0, 1, 0},

new float[] {0, 0, 0, 0, 1}

});

//create some image attributes

System.Drawing.Imaging.ImageAttributes attributes = new System.Drawing.Imaging.ImageAttributes();

//set the color matrix attribute

attributes.SetColorMatrix(colorMatrix);

//draw the original image on the new image

//using the grayscale color matrix

g.DrawImage(original, new Rectangle(0, 0, original.Width, original.Height),

0, 0, original.Width, original.Height, GraphicsUnit.Pixel, attributes);

//dispose the Graphics object

g.Dispose();

return newBitmap;

}

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新C#教程学习
    热门C#教程学习
    编程开发子分类