前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【简单的CV】1.7 图像二值化

【简单的CV】1.7 图像二值化

作者头像
EdenChen
发布2019-11-06 13:50:56
7480
发布2019-11-06 13:50:56
举报
文章被收录于专栏:ROBOTEDU

1.6 灰度图

01

二值化的图像

二值化图像是一种特殊的灰度度,它的像素只有两个值0或者1,这样一个像素点用一位(Bit)就可以表示。

二值化的图像像素值只有两个

二值化图像

02

彩色图片的二值化

首先将彩色图转为灰度图,再将灰度图转为二值图

由灰度转二值是一种常见的转变,可以通过一个简单的过滤函数来实现。

THR也就是我们设置阈值

03

二值过滤代码

代码语言:javascript
复制
        public static Bitmap Matboolcal( Bitmap bitmap,int thr1,int thr2)
        {
            points.Clear();
            Bitmap bitmap_dst = new Bitmap(bitmap.Width, bitmap.Height);
            if (true)
            {
                for (int hl = 0; hl < bitmap.Height; hl++)//遍历所有列
                {
                    for (int wl = 0; wl < bitmap.Width;wl++)//遍历所有列
                    {
                        if (bitmap.GetPixel(wl, hl).R <thr1)
                        {
                            bitmap_dst.SetPixel(wl, hl, Color.FromArgb(0, 0, 0));
                            Point point = new Point(); point.X = wl; point.Y = hl;
                            points.Add(point);//记录这些点
                        }
                        else
                        {
                            bitmap_dst.SetPixel(wl, hl, Color.FromArgb(255,255,255));
                        }
                    }
                }
            }
            return bitmap_dst;
        }

04

利用二值化来发现对象轮廓

刚刚在遍历的时候,我们已经记录了没有被过滤的点的坐标。这些点,有的可能是长方形的边,有些可能是噪点。我们把这些点位置的像素用红色在原图上标出。

代码语言:javascript
复制
        private void matFindCounterToolStripMenuItem_Click(object sender, EventArgs e)
        {
            foreach (PointF item in ESCV.points)
            {
                scbitmap.SetPixel((int)item.X, (int)item.Y, Color.Red);
            }
            pictureBox1.Image = scbitmap;
        }

小结

1. 二值化的算法

2. 二值化来计算轮廓

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-10-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ROBOTEDU 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档