![]()
内容推荐 随着机器视觉技术的飞速发展,大量需要使用机器视觉代替人工检测的需求应运而生。Halcon在开发机器视觉项目中表现出的高效性和稳定性,使其应用范围非常广泛。本书将针对机器视觉的原理和算法,以及如何应用算法解决问题进行探讨和说明,并利用Halcon对各种机器视觉算法进行举例,让读者全面、深入、透彻地理解Halcon机器视觉开发过程中的各种常用算法的原理及其应用方法,提高实际开发水平和项目实战能力。同时,也为机器视觉项目的管理者提供项目管理和技术参考。 本书适合需要全面学习机器视觉算法的初学者,希望掌握Halcon进行机器视觉项目开发的程序员,需要了解机器视觉项目开发方法的工业客户、机器视觉软件开发项目经理、专业培训机构的学员,以及对机器视觉算法兴趣浓厚的人员阅读。 作者简介 杨青,毕业于北京大学,现任某科研单位图像算法主管。2010年以来一直从事图像视觉算法与软件研发工作,2015年起开始主导机器视觉项目,曾负责双目立体视觉探测、基于机器视觉的自动化产品检测、显示器缺陷检测、屏幕参数自动化识别等多个视觉项目。为医疗、航天、工业、科研等多个领域的客户提供了智能场景的机器视觉系统的软硬件方案。 目录 第1章 机器视觉概述 1.1 什么是机器视觉 1.2 机器视觉与计算机视觉的区别 1.3 机器视觉的工作原理 1.4 机器视觉的应用领域 第2章 如何做机器视觉项目 2.1 项目的前期准备 2.1.1 从5个方面初步分析客户需求 2.1.2 方案评估与验证 2.1.3 签订合同 2.2 项目规划 2.2.1 定义客户的详细需求 2.2.2 制订项目管理计划 2.2.3 方案评审 2.3 详细设计 2.3.1 硬件设备的选择与环境搭建 2.3.2 软件开发平台与开发工具的选择 2.3.3 机器视觉系统的整体框架与开发流程 2.3.4 交互界面设计 2.3.5 Halcon与开发工具 2.4 项目交付 2.4.1 软件功能测试 2.4.2 现场调试 2.4.3 系统维护 第3章 硬件环境搭建 3.1 相机 3.1.1 相机的主要参数 3.1.2 相机的种类 3.1.3 相机的接口 3.1.4 相机的选型 3.2 图像采集卡 3.2.1 图像采集卡的种类 3.2.2 图像采集卡的选型 3.3 镜头 3.4 光源 3.5 实例:硬件选型 第4章 软件图像采集 4.1 获取非实时图像 4.1.1 读取图像文件 4.1.2 读取视频文件 4.2 获取实时图像 4.2.1 Halcon的图像采集步骤 4.2.2 使用 Halcon接口连接相机 4.2.3 使用相机的 SDK采集图像 4.2.4 外部触发采集图像 4.3 多相机采集图像 4.4 Halcon图像的基本结构 4.5 实例:采集 Halcon图像并进行简单处理 第5章 图像预处理 5.1 图像的变换与校正 5.1.1 二维图像的平移、旋转和缩放 5.1.2 图像的仿射变换 5.1.3 投影变换 5.1.4 实例:透视形变图像校正 5.2 感兴趣区域(ROI) 5.2.1 ROI的意义 5.2.2 创建 ROI 5.3 图像增强 5.3.1 直方图均衡 5.3.2 增强对比度 5.3.3 处理失焦图像 5.4 图像平滑与去噪 5.4.1 均值滤波 5.4.2 中值滤波 5.4.3 高斯滤波 5.5 光照不均匀 第6章 图像分割 6.1 阈值处理 6.1.1 全局阈值 6.1.2 基于直方图的自动阈值分割方法 6.1.3 自动全局阈值分割方法 6.1.4 局部阈值分割方法 6.1.5 其他阈值分割方法 6.2 区域生长法 6.2.1 regiongrowing算子 6.2.2 regiongrowing_mean算子 6.3 分水岭算法 第7章 颜色与纹理 7.1 图像的颜色 7.1.1 图像的色彩空间 7.1.2 Bayer图像 7.1.3 颜色空间的转换 7.2 颜色通道的处理 7.2.1 图像的通道 7.2.2 访问通道 7.2.3 通道分离与合并 7.2.4 处理 RGB信息 7.3 实例:利用颜色信息提取背景相似的字符区域 7.4 纹理分析 7.4.1 纹理滤波器 7.4.2 实例:织物折痕检测 第8章 图像的形态学处理 8.1 腐蚀与膨胀 8.1.1 结构元素 8.1.2 腐蚀 8.1.3 膨胀 8.2 开运算与闭运算 8.2.1 开运算 8.2.2 闭运算 8.3 顶帽运算与底帽运算 8.3.1 顶帽运算 8.3.2 底帽运算 8.3.3 顶帽运算与底帽运算的应用 8.4 灰度图像的形态学运算 8.4.1 灰度图像与区域的区别 8.4.2 灰度图像的形态学运算效果及常用算子 8.5 实例:粘连木材图像的目标分割与计数 第9章 特征提取 9.1 区域形状特征 9.1.1 区域的面积和中心点 9.1.2 封闭区域(孔洞)的面积 9.1.3 根据特征值选择区域 9.1.4 根据特征值创建区域 9.2 基于灰度值的特征 9.2.1 区域的灰度特征值 9.2.2 区域的最大、最小灰度值 9.2.3 灰度的平均值和偏差 9.2.4 灰度区域的面积和中心 9.2.5 根据灰度特征值选择区域 9.3 基于图像纹理的特征 9.3.1 灰度共生矩阵 9.3.2 创建灰度共生矩阵 9.3.3 用共生矩阵计算灰度值特征 9.3.4 计算共生矩阵并导出其灰度值特征 9.3.5 实例:提取图像的纹理特征 第10章 边缘检测 10.1 像素级边缘提取 10.1.1 经典的边缘检测算子 10.1.2 边缘检测的一般流程 10.1.3 sobel_amp算子 10.1.4 edges_image算子 10.1.5 其他滤波器 10.2 亚像素级边缘提取 10.2.1 edges_sub_pix算子 10.2.2 edges_color_sub_pix算子 10.2.3 lines_gauss算子 10.3 轮廓处理 10.3.1 轮廓的生成 10.3.2 轮廓的处理 第11章 模板匹配 11.1 模板匹配的种类 11.1.1 基于灰度值的模板匹配 11.1.2 基于相关性的模板匹配 11.1.3 基于形状的模板匹配 11.1.4 基于组件的模板匹配 11.1.5 基于形变的模板匹配 11.1.6 基于描述符的模板匹配 11.1.7 基于点的模板匹配 11.1.8 模板匹配方法总结 11.2 图像金字塔 11.3 模板图像 |