图像处理——灰度化、二值化、膨胀算法、腐蚀算法以及开运算和闭运算

本文详细介绍了图像处理中的关键步骤,包括RGB和ARGB色彩模式,重点讲解了灰度化、二值化、膨胀、腐蚀、开运算和闭运算的概念与应用。通过实例展示了C#实现的简单膨胀和腐蚀算法,这些方法常用于消除噪声、分离和连接图像中的物体。
摘要由CSDN通过智能技术生成

一、RGB

RGB色彩模式使用RGB模型为图像中每一个像素的RGB分量分配一个0~255范围内的强度值。RGB图像只使用三种颜色,R(red)、G(green)、B(blue),就可以使它们按照不同的比例混合,在屏幕上呈现16777216(256 * 256 * 256)种颜色。

在电脑中,RGB的所谓“多少”就是指亮度,并使用整数来表示。通常情况下,RGB各有256级亮度,用数字表示为从0、1、2...直到255。


二、ARGB

一种 色彩模式,也就是 RGB色彩模式附加上Alpha( 透明度)通道,常见于32位 位图存储结构
ARGB---Alpha,Red,Green,Blue.


三、灰度化

 在RGB模型中,如果R=G=B时,则彩色表示一种灰度颜色,其中R=G=B的值叫灰度值,因此,灰度图像每个像素只需一个字节存放灰度值(又称强度值、亮度值),灰度范围为0-255。一般有以下四种方法对彩色图像进行灰度化,具体方法参考: http://blog.csdn.net/evsqiezi/article/details/7905436   


四、二值化

一幅图像包括目标物体、背景还有噪声,要想从多值的数字图像中直接提取出目标物体,最常用的方法就是设定一个全局的阈值T,用T将图像的数据分成两部分:大于T的像素群和小于T的像素群。将大于T的像素群的像素值设定为白色(或者黑色),小于T的像素群的像素值设定为黑色(或者白色)。
比如:计算每一个像素的(R+G+B)/3,如果>127,则设置该像素为白色,即R=G=B=255;否则设置为黑色,即R=G=B=0。
C#实现代码如下:
public Bitmap binarization()
        {
            Bitmap bitImage = new Bitmap(pictureBox1.Image);//二值化pictureBox1中的图片
            Color c;
            int height = pictureBox1.Image.Height;
            int width = pictureBox1.Image.Width;
            for (int i = 0; i < height; i++)
            {
                for (int j = 0; j < width; j++)
                {
                    c = bitImage.GetPixel(j,i);
                    int r = c.R;
                    int g = c.G;
                    int b = c.B;
                    if ((r + g + b) / 3 >= 127)
                    {                       
                        bitImage.SetPixel(j, i, Color.FromArgb(255, 255, 255));                  
                    }
                    else
                    {     
                        bitImage.SetPixel(j, i, Color.FromArgb(0,0,0));
                    }
                }
            }
            return bitImage;
        }
运行结果如图:
左边为处理前,右边为二值化后效果。


五、膨胀算法

膨胀是将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。

可以用来填补物体中的空洞。

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值