0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

计算机视觉识别是如何工作的?

柴火创客空间 来源:柴火创客空间 2023-02-09 13:41 次阅读

计算机视觉识别的定义

计算机视觉识别是一种人工智能技术,旨在使计算机系统从数字图像、视频等视觉信息中识别和提取有意义信息的能力。它通过利用图像处理、机器学习和其他相关技术来实现这一目标,并可以完成多种任务,例如图像识别、物体检测、人脸识别等。计算机视觉技术在各种行业中都有着广泛的应用,如自动驾驶、安全监控、医学诊断等。

计算机视觉识别是如何工作的?

计算机视觉识别的工作方式主要通过以下几个步骤:

1. 图像预处理:对图像进行预处理,如去噪、校正图像像素等,以确保图像质量。

2.特征提取:通过各种图像处理技术,从图像中提取有用的特征信息,如边缘、轮廓、颜色值等。

3. 特征分类:使用机器学习算法对提取的特征进行分类,以便对图像中的物体进行识别。

4. 识别结果输出:根据分类结果,输出识别结果,如图像中的物体类型、人脸识别等。

每一个步骤都需要使用合适的算法和技术,才能确保视觉识别输出结果准确性和高效性。

下图左侧是亚伯拉罕·林肯灰度图像缓冲区的简单插图,每个像素由一组 8 位数字表示,范围从 0(黑色)到 255(白色),右侧是识别图像时软件识别出的不同的颜色值。

af0da0b8-a834-11ed-bfe3-dac502259ad0.png

计算机视觉识别的主要应用功能

1、图像分类

顾名思义就是将图像进行类别筛选,通过深度学习方法识别图片属于哪种分类类别,其主要重点在于一张图像只包含一种分类类别,即使该影像内容可能有多个目标,所以单纯图像分类的应用并不普遍。

不过由于单一目标识别对深度学习算法来说是正确率最高的,所以实际上很多应用会先通过目标检测方法找到该目标,再缩小撷取影像范围进行图像分类。所以只要是目标检测可应用的范围,通常也会使用图像分类方法。

图像分类,需要先对本地图像进行边框标记,这个操作需要手动标记才能完成,这样就催生出一个职业 - 人工智能标注师,比如下图左侧是原始图片,右图是被标记过的图像,就会把它标注到猫的分类中。

af27b26e-a834-11ed-bfe3-dac502259ad0.png

2、目标监测

一张图像内可有一或多个目标物,目标物也可以是属于不同类别。算法主要能达到两种目的:找到目标坐标及识别目标类别。

简单来说,就是除了需要知道目标是什么,还需要知道它在哪个位置。

目标检测应用非常普遍,包含前面提到的人脸识别相关技术结合应用,或是制造业方面的瑕疵检测,甚至医院用于X光、超音波进行特定身体部位的病况检测等。

af4359b0-a834-11ed-bfe3-dac502259ad0.png

3、语义分割

算法会针对一张图像中的每个像素进行识别,也就是说不同于目标检测,语义分割可以正确区别各目标的边界像素,简单来说,语义分割就是像素级别的图像分类,针对每个像素进行分类。当然这类应用的模型就会需要较强大的GPU和花较多时间进行训练。

实例分割是语义分割的升级版本。它不是将相同的像素值分配给同一类中的所有对象,而是分段并显示同一类的不同实例。如果在图像中检测到多个相同的对象,则会相应地对其进行标记,如下图所示,绵羊 1、绵羊 2 和绵羊 3会被单独分割识别出来,它通常用于计数。

af99d100-a834-11ed-bfe3-dac502259ad0.png

流行的计算机视觉库和框架

MMDetection

MMDetection是一个基于PyTorch的开源对象检测工具箱。它由训练配方、预训练模型和数据集组成。它运行在Linux,Windows和macOS上,需要Python 3.6+,CUDA 9.2+和PyTorch 1.5+。他们还发布了用于计算机视觉研究的库mmcv。通过模块调用的方法,我们可以用少量的代码实现新的算法。大大提高代码复用率。

afb099b2-a834-11ed-bfe3-dac502259ad0.png

边缘设备部署

MMDeploy是一个开源深度学习模型部署工具集,它是OpenMMLab项目的一部分,如果你想了解如何在 NVIDIA Jetson 系列边缘平台(如 Seeed 的 reComputer)上安装 MMDeploy。可以通过部署指南来学习部署过程。

OpenCV

OpenCV是最受欢迎的开源计算机视觉和ML软件库之一。它旨在为计算机视觉应用程序提供通用基础架构。它可以在Windows,Linux,Android和macOS上运行,可用于Python,JavaC++MATLAB

边缘设备部署

我们的合作伙伴 alwaysAI 将 OpenCV 构建为边缘计算环境的核心部分。这意味着在每个 alwaysAI 应用程序中,您都可以添加导入 cv2 并在您的应用程序中使用 OpenCV。alwaysAI 围绕 OpenCV 构建了一套工具,以实现端到端流程的无缝衔接,并解决了使用边缘设备时一些常见痛点。

NVIDIA VPI 边缘部署

NVIDIA 视觉编程接口 (VPI) 是一个软件库,可在 NVIDIA NVIDIA Jetson 系列边缘平台设备中,实现计算机视觉和图像处理算法。VPI 为 CPU 和 NVIDIA CUDA 算法实现提供了统一的 API,以及 VPI 和 OpenCV 以及 CUDA 之间的互操作性。

aff60a10-a834-11ed-bfe3-dac502259ad0.png

TensorFlow

TensorFlow是一个端到端的开源ML平台,能够执行无数的任务,包括计算机视觉。TensorFlow Lite允许您在移动和边缘设备上运行模型,而TensorFlow JS适用于Web。它运行在Windows,macOS和WSL2上,支持Python,C,C++,Java等。

边缘设备部署

在小型或微型处理设备上部署机器学习,主要是通过TensorFlow Lite 框架来进行部署,TensorFlow Lite 主要对微型机器学习功能进行了优化,重点关注延迟、隐私、连接、大小和功耗。

边缘计算硬件设备

人工智能AI正在加快速度从“云端”走向“边缘”,进入到越来越小的小型或微型控制设备中,在终端和边缘侧的微处理器上实现机器学习,下面介绍两款边缘计算硬件设备。

SeeedreTerminal

reTerminal是 Raspberry Pi一体机,由 Raspberry Pi计算模块(CM4)提供支持,集成了一个IPS面板式多点触摸屏,配备双频2.4GHz / 5GHz Wi-Fi蓝牙5.0,预装了基于Raspberry Pi的Linux系统,提供存储4 GB RAM和32 GB eMMC。通过模块化设计,该机配备了多个可访问组件和高速连接器。可以更好的部署AI开发应用程序,也可以执行适合作为工业设施的工业级功能。

b0296ed2-a834-11ed-bfe3-dac502259ad0.png

使用Seeed reTerminal 设备快速部署TensorFlow Lite 框架,具体方法请看下面的地址:

reComputer for Jetson

Jetson 的 reComputer 系列是采用 NVIDIA Advanced AI 嵌入式系统构建的紧凑型边缘计算机:J10(Nano 4GB)和 J20(Jetson Xavier NX 8GB 和 Jetson Xavier 16GB)。

凭借丰富的扩展模块、工业外设和热管理,reComputer for Jetson 已准备好通过将流行的 DNN 模型和 ML 框架部署到边缘并以高性能进行推理来帮助您加速和扩展下一代 AI 产品






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 计算机视觉
    +关注

    关注

    8

    文章

    1600

    浏览量

    45617
  • 机器学习
    +关注

    关注

    66

    文章

    8126

    浏览量

    130571
  • Raspberry Pi
    +关注

    关注

    1

    文章

    552

    浏览量

    22054
  • dnn
    dnn
    +关注

    关注

    0

    文章

    56

    浏览量

    8952

原文标题:边缘计算|什么是视觉识别?如何在边缘设备部署视觉识别?

文章出处:【微信号:ChaiHuoMakerSpace,微信公众号:柴火创客空间】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    机器视觉计算机视觉的关系简述

    计算机视觉是一门独立的学科,有着30年左右的历史,集图像处理、模式识别、人工智能技术为一体,着重服务于一幅或多幅图像的计算机分析。机器视觉
    发表于 05-13 14:57

    让机器“看见”—计算机视觉入门及实战 第二期基础技术篇

    过优异成绩。其主要的兴趣是关注人工智能特别是计算机视觉技术如何从技术、产品和商业角度在真实世界中大规模落地。主题简介及亮点:本次直播,讲者将介绍计算机
    发表于 09-04 17:56

    基于OpenCV的计算机视觉技术实现

    基于OpenCV的计算机视觉技术实现OpencV是用来实现计算机视觉相关技术的开放源码工作库,是计算机
    发表于 11-23 21:06 0次下载
    基于OpenCV的<b class='flag-5'>计算机</b><b class='flag-5'>视觉</b>技术实现

    计算机视觉贾云德pdf版

    计算机视觉
    发表于 05-09 11:00 0次下载

    AI新闻:计算机视觉和模式识别会议

    了解和注册计算机视觉和模式识别会议(CVPR 2018)!
    的头像 发表于 11-05 06:14 2893次阅读

    计算机视觉与机器视觉区别

     “计算机视觉”,是指用计算机实现人的视觉功能,对客观世界的三维场景的感知、识别和理解。计算机
    的头像 发表于 12-08 09:27 1.2w次阅读

    计算机视觉就业怎么样

    计算机视觉是指用机器模拟“视觉器官”,对目标进行识别、跟踪和测量等,并由计算机代替大脑完成进一步的图像处理和解释。目前我们手机常用的人脸
    的头像 发表于 04-04 16:06 1.5w次阅读

    计算机视觉中的重要研究方向

    计算机视觉是一门研究如何让计算机达到人类那样看的技术。使用摄像头和电脑来代替人类完成一些复杂的工作,例如对目标进行分类、识别、分割、跟踪等,
    的头像 发表于 11-19 14:32 1.1w次阅读

    计算机视觉工作流程

    引言 计算机视觉(Computer Vision)自兴起以来就非常迅速且广泛应用于各个领域,比如我们熟悉的且每天都会使用的基于手机摄像头的人脸识别,除此之外,它还可以在自动驾驶领域辅助汽车识别
    的头像 发表于 12-26 11:00 5916次阅读

    计算机视觉工作流程与主要应用

    计算机视觉的主要目的是让计算机能像人类一样甚至比人类更好地看见和识别世界。计算机视觉通常使用C+
    的头像 发表于 01-08 14:06 4905次阅读

    剖析计算机视觉识别简史

    最近,物体识别已经成为计算机视觉和 AI 最令人激动的领域之一。即时地识别出场景中所有的物体的能力似乎已经不再是秘密。随着卷积神经网络架构的发展,以及大型训练数据集和高级
    的头像 发表于 04-30 10:14 2375次阅读
    剖析<b class='flag-5'>计算机</b><b class='flag-5'>视觉</b><b class='flag-5'>识别</b>简史

    基于计算机视觉的客机舱门识别与定位方法

    基于计算机视觉的客机舱门识别与定位方法
    发表于 06-22 16:37 42次下载

    模式识别计算机视觉手册

    模式识别计算机视觉手册免费下载。
    发表于 06-24 10:02 3次下载

    计算机视觉中手语识别研究

    计算机视觉中手语识别研究 手语识别的目的就是通过计算机提供一种有效的、准确的机制将聋哑人常用的手语手势
    的头像 发表于 04-14 16:11 831次阅读

    机器视觉计算机视觉的区别

    机器视觉计算机视觉的区别 机器视觉计算机视觉是两个相关但不同的概念。虽然许多人使用这两个术语
    的头像 发表于 08-09 16:51 1141次阅读