计算机视觉理论笔记 (6) - 二值图像处理 (Binary Image Processing)
二值图像处理 - Binary Image Processing
- 总览
- 二值形态学操作 (Binary Morphology)
- 基础操作
- 腐蚀 (Erosion)
- 膨胀 (Dilation)
- 边界提取 (Boundary Extraction)
- 开操作 (Opening)
- 闭操作 (Closing)
- 连通分量分析 (Connected Component Analysis)
- 邻点(Neighbor)
- 连通分量标记(Connected Component Labelling - CCL)
- 算法
总览
在应用阈值运算之后,图象只有两个量化级别(quantisation levels):
0 - 低于阈值。
1 - 高于阈值。
如果二值图像需要被进一步处理,则线性滤波器(LPF, HPF等)的应用效率并不高。二值图像的处理需要其他方法。
二值形态学操作 (Binary Morphology)
二值图像处理基于形态学,而形态学又基于集合论(set theory)。二值图像表示为一组有序坐标对(ordered coordinate pairs)。
基础操作
有一系列基础操作:
- Ac: 图像A的补码 complement (反转 inversion)。
- A ∪ B: 图像A和图像B的并集 (union)。
- A ∩ B: 图像A和图像B的交集 (intersection)。
- A - B = A ∩ B c: 图像A 和 图像B 的差集 (difference)。
如果图像B对应于形态过滤器内核(morphological filter kernel),则基本操作可用于定义二值图像处理算法。
腐蚀 (Erosion)
设B为 3 x 3 的全是1的滤波器。
当滤波器访问的9个像素都为1时,则输出像素为1。(pixel-based AND)
膨胀 (Dilation)
当滤波器访问的9个像素中至少其中一个是1,则输出像素为1。(pixel-based OR)
边界提取 (Boundary Extraction)
边界 = 原图像 - 腐蚀一圈的图像
当具有少量简单对象的图像可以被轻松二值化时,此方法比其他边缘检测方法更加计算高效。
开操作 (Opening)
先腐蚀,后膨胀
开操作可用于消除 在单独对象之间 由于噪声产生的错误连接。
原图片 - 开操作之后的图片:能够展示从原始图像中被删除的内容。结果可以用于制造过程中的自动检查。(检查PCB走线等)
闭操作 (Closing)
先膨胀,再腐蚀
闭操作能够用于消除对象内部的单独噪声样本或者细线。
原图片 - 闭操作之后的图片:能够展示从原始图像中被删除的内容。结果可以用于制造过程中的自动检查。(小裂缝,划痕之类的)
连通分量分析 (Connected Component Analysis)
邻点(Neighbor)
输入量 (input): 像素值代表类别标签(class labels)或者强度值(intensity)的图像。
连接组件 (connected component): 连接的组件由具有相同类别标签的连接像素组成。且每一个连接的组件通常被视为对象 (object)。
连通分量分析: 分别标记单独的“对象”。
连通分量标记(Connected Component Labelling - CCL)
如果可以找到一条路径,图像中的两个点"连接"在一起。对于该路径,图像标记的值在整个路径上都相同。
算法
输入: 一个二值图片(前景 foreground/背景 background像素),在图中的所有像素点都是未标记的 (unlabelled)。
输出: 被标记成组件的所有前景像素。
过程:
方法1:Sequential
- 选择图像中任何未标记的像素并为其分配标签。
- 将相同的标签分配给具有相同图像功能值的任何相邻像素。
- 继续标记邻居,直到没有其他邻居可以分配该标签。
- 选择另一个标签和另一个尚未标记的像素,之后继续。
- 如果没有更多未标记的像素点,则算法结束。
方法2:Recursive
- 扫描图像以找到未标记的前景像素,并为其分配新的标签L。
- 将标签L递归地分配给其所有相同单位值的邻点 。
- 如果没有其他未标记像素,则停止。
- 返回步骤1。
四连通结果(4-connectivity)
八连通结果(8-connectivity)
- 连通组件分析通常遵循基于聚类的分割(cluster-based segmentation)来提取对象。
- 四连通和八连通的选择:
- 可能导致不同的数量的物体或者具有不同形状的物体。
- 取决于你的应用。
- 可以在连通组件分析之后应用大小过滤(size filtering)。
计算机视觉理论笔记 (6) - 二值图像处理 (Binary Image Processing)相关推荐
- 计算机视觉理论笔记 (3) - 图像采集 (Image Acquisition)
计算机视觉笔记 - 图像采集 Introduction 镜头 (lens) 图像传感器 (Image Sensor) 彩色图像 单传感器数码相机 颜色插值 (Color Interpolation) ...
- 计算机视觉理论笔记 (5) - 边缘检测 (Edge Detection)
边缘检测 - Edge Detection 总览 边缘(edges) 基于梯度 (gradient)的边缘检测 检测不连续性(detection of discontinuities) 1D 2D 梯 ...
- 计算机组成原理笔记——存储器分类、层次结构、技术指标、存储单元地址分配
计算机组成原理笔记--存储器分类.层次结构.技术指标.存储单元地址分配 一. 概述 存储器的分类 按存储介质划分: (1)半导体存储器 双极型(TTL).MOS (2)磁表面存储器 磁头.载磁体 (3 ...
- 计算机组成原理笔记(王道考研) 第七章:输入输出系统
内容基于中国大学MOOC的2023考研计算机组成原理课程所做的笔记. 感谢LY,他帮我做了一部分笔记.由于听的时间不一样,第四章前的内容看起来可能稍显啰嗦,后面会记得简略一些. 西电的计算机组织与体系 ...
- 计算机组成原理笔记(王道考研) 第二章:数据的表示和运算1
内容基于中国大学MOOC的2023考研计算机组成原理课程所做的笔记. 感谢LY,他帮我做了一部分笔记.由于听的时间不一样,第四章前的内容看起来可能稍显啰嗦,后面会记得简略一些. 西电的计算机组织与体系 ...
- 计算机组成原理笔记(王道考研) 第二章:数据的表示和运算2
内容基于中国大学MOOC的2023考研计算机组成原理课程所做的笔记. 感谢LY,他帮我做了一部分笔记.由于听的时间不一样,第四章前的内容看起来可能稍显啰嗦,后面会记得简略一些. 西电的计算机组织与体系 ...
- 计算机组成原理笔记(王道考研) 第六章:总线
内容基于中国大学MOOC的2023考研计算机组成原理课程所做的笔记. 感谢LY,他帮我做了一部分笔记.由于听的时间不一样,第四章前的内容看起来可能稍显啰嗦,后面会记得简略一些. 西电的计算机组织与体系 ...
- 【计算机组成原理】计算机系统结构笔记:合集
200803本篇是郑纬民<计算机系统结构>的读书笔记,欢迎各位路过指正!今天把九章全部更新完毕啦. 0. 分章节目录 [计算机组成原理]计算机系统结构笔记(1):基本概念 [计算机组成原理 ...
- 老农的计算机学习笔记(一)计算机的诞生及其基础
菜鸟的计算机学习笔记 =================== 2014-06-08 "万法归一" 改变世界的发明 计算工具的早期发展 计算机来源于人类对于计算工具的不断改 ...
最新文章
- linux内核层功能 和核心,Linux内核研发工程师
- 用自定义代码分析来标准开发人员的开发规范
- php integer
- html5之form表单
- boost::mp11::mp_transform_front相关用法的测试程序
- 技术的想象力:云栖大会第一天发布了什么?
- 当鼠标滑过文本框自动选中输入框内容JS代码
- arm linux读cpu id,基于ARM架构的芯片获取CPU信息(cpuID)的多种方法
- matlab数组存字符串,MATLAB字符串数组存储为CSV格式
- nlog轻量级日志组件
- 把本地文件上传到gitee
- php中id如何与删除关联,ThinkPHP查询语句与关联查询用法实例
- 【BZOJ28431180】极地旅行社,LCT练习
- C# WPD PortableDeviceApiLib获取便携设备列表
- python层次聚类_python中做层次聚类,使用scipy.cluster.hierarchy.fclusterdata方法 | 学步园...
- 「手把手带你学算法」本周小结!(动态规划系列七)
- MVC学习笔记:MVC实现用户登录验证ActionFilterAttribute用法并实现统一授权
- 解决gaim+msn的ssl库及不能发出提示音问题的指南(转)
- 基于基因组数据的癌症亚型发现聚类研究
- Matlab工具箱实现张正友相机标定
热门文章
- nprogress 进度条插件使用
- 【uni-app】base64转图片
- Encoding::UndefinedConversionError: \xE5 from ASCII-8BIT to UTF-8
- vue移动端表格,超出横向滚动,固定第一列
- Unity UGUI polygon collider
- D. Fragmentation merging
- C#操作word合并单元格
- 使用PDFBOX提取PDF中的文字
- 异步读写(ReadFileEx和ReadFile)之overlapped
- 深度学习图像标注软件labelme使用教程