版权声明: 本翻译文章为原文《Fundamentals of Machine Vision》原始来源:https://www.autovis.com/images/pdf/resources/fundamentals-of-machine-vision.pdf(作者:Peppy West - AUTOMATED VISION SYSTEMS, INC. San Jose, California 95124 U.S.A.)。作者和贡献者对原文内容享有版权。请阅读原文以了解详细信息和权限限制。翻译权归本翻译者所有,非商业用途,仅用于学术研究和交流目的。未经授权,不得用于商业目的或其他侵权行为。本翻译保留所有权利。如有引用或使用,请注明原文出处和作者。本翻译文章中的内容仅供参考,可能存在错误或不准确之处,请读者自行核实原文内容。
图像处理中的一个重要问题是选择使用算法、工具还是深度学习。首先,让我们来看一下图像处理的过程,实际上它是算法执行图像处理的分类学。
基本上,图像处理包括四个步骤,从开始的图像获取过程到最后的结果输出过程。这个过程如图30所示,包括以下四个步骤:预处理、分割、特征提取和解释。这个图表有些简化,因为并不是所有应用都需要这四个步骤。有些应用不需要预处理,而有些应用则不需要分割。其中的任何一个步骤可能需要一个或多个算法。通常情况下,会有反馈回路,初步分析根据检测到的图像特征和内容选择特定的步骤序列。
预处理
预处理算法以图像作为输入,并生成修改后的图像作为输出。例如,该算法可以滤除噪声(图31),或者提取边缘(图32)。存在大量的预处理操作。非常有经验的图像处理程序员会知道哪些操作符是适用于任何应用的好选择。然而,需要大量的实验来选择正确的操作符,并进行微调,以使其在所有条件下可靠地工作。并非所有机器视觉应用都需要预处理。
分割
通常需要对图像进行分割:即识别图像中的不同区域。同样,程序员可以选择各种技术。请参见图34和图33的示例。通常,应用的要求会使熟练的图像处理程序员很容易选择合适的技术,但为了在应用的图像上获得最佳结果,仍需要时间和实验来调整分割过程。
与预处理类似,分割并非所有应用都需要。
特征提取
机器视觉的定义表明,从图像中获取数据是必不可少的。从图像中提取的特征就是这些数据。每个机器视觉过程都必须从图像中提取特征。请参见图35和图36的示例。
从图像中可以提取出数百种特征。通常只需要其中的几个特征。通常,从视觉系统的要求中很容易确定所需的特征。
机器视觉的定义表明,从图像中获取数据是必不可少的。从图像中提取的特征就是这些数据。
解释
拥有特征还不足以完成任务。需要进行解释。零件是好还是坏?将机器人发送到哪里来取零件?应将零件放入哪个容器?
经典的解释方法是决策树(见图37)。它由“如果-那么-否则”语句组成,这对于任何有过编程经验的人来说都是熟悉的。
其他机器学习技术也有用武之地,比如线性鉴别器(见图38)。
大多数机器视觉软件包都提供工具来执行任务,从而消除了机器视觉程序员需要整理和尝试数百种算法的需求。这些工具涵盖特定功能,如:
机器视觉图像分析领域的最新主要趋势是深度学习。深度学习使用一个具有多个内部层的神经网络,并将图像作为其输入。内部层对用户或者通常连机器视觉工程师都不可见。一套训练图像用于训练这个网络。在每次训练过程中,根据输出的误差,每个层的系数会被调整一小部分。
最常见的网络方法是卷积神经网络(CNN)。这种方法被描述为使用数据而不是计算机代码进行编程。
尽管深度学习正在解决一些非常困难的机器视觉问题,但它并非万能的。专家们一致认为,如果一个应用可以通过工具和算法来解决而不费太多努力,那么这条路线将比使用深度学习更容易。
虽然深度学习是“用数据编程”,但它需要大量正确标记的数据集来训练网络以可靠地执行任务。数据采集和标记的成本绝非微不足道,并且比训练网络本身需要更多的时间。
原网址: 访问
创建于: 2024-03-01 10:49:14
目录: default
标签: 无
未标明原创文章均为采集,版权归作者所有,转载无需和我联系,请注明原出处,南摩阿彌陀佛,知识,不只知道,要得到
java windows火焰图_mob64ca12ec8020的技术博客_51CTO博客 - 在windows下不可行,不知道作者是怎样搞的 监听SpringBoot 服务启动成功事件并打印信息_监听springboot启动完毕-CSDN博客 SpringBoot中就绪探针和存活探针_management.endpoint.health.probes.enabled-CSDN博客 u2u转换板 - 嘉立创EDA开源硬件平台 Spring Boot 项目的轻量级 HTTP 客户端 retrofit 框架,快来试试它!_Java精选-CSDN博客 手把手教你打造一套最牛的知识笔记管理系统! - 知乎 - 想法有重合-理论可参考 安宇雨 闲鱼 机械键盘 客制化 开贴记录 文本 linux 使用find命令查找包含某字符串的文件_beijihukk的博客-CSDN博客_find 查找字符串 ---- mac 也适用 安宇雨 打字音 记录集合 B站 bilibili 自行搭建 开坑 真正的客制化 安宇雨 黑苹果开坑 查找工具包maven pom 引用地 工具网站 Dantelis 介绍的玩轴入坑攻略 --- 关于轴的一些说法 --- 非官方 ---- 心得而已 --- 长期开坑更新 [本人问题][新开坑位]关于自动化测试的工具与平台应用 机械键盘 开团 网站记录 -- 能做一个收集的程序就好了 不过现在没时间 -- 信息大多是在群里发的 - 你要让垃圾佬 都去一个地方看难度也是很大的 精神支柱 [超级前台]sprinbboot maven superdesk-app 记录 [信息有用] [环境准备] [基本完成] [sebp/elk] 给已创建的Docker容器增加新的端口映射 - qq_30599553的博客 - CSDN博客 [正在研究] Elasticsearch, Logstash, Kibana (ELK) Docker image documentation elasticsearch centos 安装记录 及 启动手记 正式服务器 39 elasticsearch 问题合集 不断更新 6.1.1 | 6.5.1 两个版本 博客程序 - 测试 - bug记录 等等问题 laravel的启动过程解析 - lpfuture - 博客园 OAuth2 Server PHP 用 Laravel 搭建带 OAuth2 验证的 RESTful 服务 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区 利用Laravel 搭建oauth2 API接口 附 Unauthenticated 解决办法 - 煮茶的博客 - SegmentFault 思否 使用 OAuth2-Server-php 搭建 OAuth2 Server - 午时的海 - 博客园 基于PHP构建OAuth 2.0 服务端 认证平台 - Endv - 博客园 Laravel 的 Artisan 命令行工具 Laravel 的文件系统和云存储功能集成 浅谈Chromium中的设计模式--终--Observer模式 浅谈Chromium中的设计模式--二--pre/post和Delegate模式 浅谈Chromium中的设计模式--一--Chromium中模块分层和进程模型 DeepMind 4 Hacking Yourself README.md update 20211011
Laravel China 简书 知乎 博客园 CSDN博客 开源中国 Go Further Ryan是菜鸟 | LNMP技术栈笔记 云栖社区-阿里云 Netflix技术博客 Techie Delight Linkedin技术博客 Dropbox技术博客 Facebook技术博客 淘宝中间件团队 美团技术博客 360技术博客 古巷博客 - 一个专注于分享的不正常博客 软件测试知识传播 - 测试窝 有赞技术团队 阮一峰 语雀 静觅丨崔庆才的个人博客 软件测试从业者综合能力提升 - isTester IBM Java 开发 使用开放 Java 生态系统开发现代应用程序 pengdai 一个强大的博主 HTML5资源教程 | 分享HTML5开发资源和开发教程 蘑菇博客 - 专注于技术分享的博客平台 个人博客-leapMie 流星007 CSDN博客 - 舍其小伙伴 稀土掘金 Go 技术论坛 | Golang / Go 语言中国知识社区
最新评论