From: http://www.cnblogs.com/jillzhang/archive/2006/10/09/524571.html
学习
1 /// <summary>
 2        /// 将彩色图片变成黑白色的照片
 3        /// </summary>
 4        /// <param name="image">原来图片</param>
 5        /// <returns>返回的黑白照片</returns>
 6        public static Bitmap WhiteAndBlack(System.Drawing.Bitmap image)
 
7        {
 
8            //原来图片的长度
 9            int width = image.Width;
10            //原来图片的高度
11            int height = image.Height;
12            //改变色素
13            //横坐标
14            for (int x = 0; x < width; x++)
15            {
16                //纵坐标
17                for (int y = 0; y < height; y++)
18                {
19                    //获得坐标(x,y)颜色
20                    Color color = image.GetPixel(x, y);
21                    //获得该颜色下的黑白色
22                    int value = (color.R + color.G + color.B) / 3;
23                    //设置颜色
24                    image.SetPixel(x,y,Color.FromArgb(value, value, value));
25                }

26            }

27            return image;
28        }
小时候的一些照片都是黑白色的,现在的呢都是彩色,看多了五彩缤纷,反而觉得黑白更顺眼,颜色都是由(R(红色),G(绿色),B(蓝色))混合组成,分别在0-255之间,将(R+G+B)/3,形成的颜色就是黑白的了。
程序很简单
 1 /// <summary>
 2        /// 将彩色图片变成黑白色的照片
 3        /// </summary>
 4        /// <param name="image">原来图片</param>
 5        /// <returns>返回的黑白照片</returns>

 6        public static Bitmap WhiteAndBlack(System.Drawing.Bitmap image)
 7        {
 8            //原来图片的长度
 9            int width = image.Width;
10            //原来图片的高度
11            int height = image.Height;
12            //改变色素
13            //横坐标
14            for (int x = 0; x < width; x++)
15            {
16                //纵坐标
17                for (int y = 0; y < height; y++)
18                {
19                    //获得坐标(x,y)颜色
20                    Color color = image.GetPixel(x, y);
21                    //获得该颜色下的黑白色
22                    int value = (color.R + color.G + color.B) / 3;
23                    //设置颜色
24                    image.SetPixel(x,y,Color.FromArgb(value, value, value));
25                }

26            }

27            return image;
28        }
测试效果:
原图:

黑白:
作者:jillzhang
出处:http://jillzhang.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
 posted on 2012-05-15 15:01  纳米程序员  阅读(749)  评论(0编辑  收藏  举报