发布日期:2024-10-07 13:05 点击次数:149
笔者:梁羽白虎 女
本文援用地址:https://www.eepw.com.cn/article/202109/428499.htm谋划机视觉(CV)是东说念主工智能商讨的热门主张之一,其中枢在于若何让机器“看见”和“默契”——通过算法从像片、视频等前言中索求高脉络信息并加以诓骗。
跟着民众谋划才略和数据量的双增长,谋划机视觉取得了长足的阐发,在自动驾驶、智能安防、体育通晓(如记载分析通晓员跑姿就使用了AI助力的东说念主体姿势揣摸)等范围随地着花。
通晓生物力学民众分析苏炳添磨练时的跑姿
英特尔3DAT时代¹(三维通晓员追踪),基于OpenVINO框架征战
一般来说,常见的谋划机视觉任务基于静止的单帧图像进行,主要罗致机器学习和深度学习两类方法。
在GPU算力足以撑捏复杂神经集中之前,机器学习方法一度是谋划机视觉范围的金步调,行动代表的灵验于图像分类的撑捏向量机(SVM)、用于特征索求的Bag-of-Features模子(SIFT、MSER等)、用于东说念主脸识别的Viola-Jones算法等。这些经典算法大多在开源谋划机视觉库OpenCV中有收场,不错参考网上的初学贵寓(比如这篇【OpenCV+Python谋划机视觉导学】²)进行学习,在此不再伸开。
尔后,以2015年为界,神经集中在ImageNet图片分类比赛中特出东说念主类水平³,拉开了深度学习在谋划机视觉范围无数应用的序幕。基于深度学习的图片识别以卷积神经集中(CNN)进行特征索求、多层感知机(MLP)进行分类,并在其上生息出了提防力机制、FPN、Transformer、NAS等新架构和商讨方法,在谋划机视觉任务的准确度、运行速率和泛用性上齐有很大培植。
使用深度学习进行对象检测/对象追踪
确立算力的增长也带来了另一个平正,谋划机视觉学者们得以将主张从图片转向视频,让算法端到端地捕捉视频每一帧之间的相关。通过单帧图像,算法能知说念某刹那间的情况(场景里有哪些物体、户外是好天如故雨天),而基于视频的识别大要挖掘出更多信息,举例让谋划机默契一段时辰内发生的事件:
图片识别:“场景里有两个通晓员。”
视频识别:“场景里的两个通晓员正在打羽毛球。”
在运行先容视频磋磨的算法前,咱们将先从图像识别运行,对基于深度学习的谋划机视觉有些主张上的执意。
主流图像识别算法
典型的图像分类集中(VGG-16)
广阔图像识别算法中,图片分类任务最基础也最费事:通过为图片分类任务磨练神经集中白虎 女,不错得到在其他任务也能使用的骨干集中(base network/backbone network)。骨干集中预防从图像中抽取出高层的概述特征,基于这些概述特征可收场分类、检测、分割等任务。如上图架构中输出224*224*64的卷积层到输出14*14*512的卷积层即是一种骨干集中(VGG-16)。
对神经集中算法进行选型,一般接洽两组策动:准确率,以及集中的参数目(params)和浮点运算次数(FLOPs)。准确率是量化算法本死后果的策动,而浮点运算次数和参数目不错被用来估量模子的复杂度,前者描写了神经集中需要的谋划才略,后者描写了运行神经集中需要的内存大小(也标明了部署模子需要的硬盘空间/集中带宽)。
在结尾确立部署神经集中时,不同类型确实立(桌面GPU/桌面CPU/Movidus等专用VPU/树莓派等ARM架构确立)对复杂度有不同的条目。关于镶嵌式确立部署,如一些东说念主脸识别和智谋安防类应用,就应选择尽可能轻量的模子来达到及时处理的主张。其他情况下,就需要因地制宜地在模子准确度和复杂度中取得均衡,挑选最允洽我方应用的算法模子。
内容使用中,咱们齐但愿使用运算量尽可能小、而准确度尽可能高的神经集中。为了收场这号称刁难的需求,深度学习学家们使用了集中架构搜索(NAS)时代来自动化地进行神经集中的瞎想。
图片分类
欧美色色常用的骨干集中模子
(左图为ImageNet Top-1准确率,右图为模子准确率/浮点运算数对比)
具体到图像识别分类任务所使用的骨干集中来看,行动逼迫之一,Google建议了EfficientNet⁴,一个对集中准确度和模子复杂度进行集结优化的神经集中家眷。
EfficientNet的模子参数目-准确率对比
虽然,集中瞎想仅仅第一步,实在要用起来还有磨练、优化部署等款式。一般来说,神经集中集中的磨练是最为繁琐的,其中波及到远盛大于部署阶段的谋划才略、大型数据集和超参数调优,因此关于通用目的的神经集中,罗致公开的预磨练模子是最常见的作念法。
关于OpenVINO框架来说,预磨练模子和神经集中的优化器齐还是集成在框架中一说念提供,前文提到的EfficientNet和其他骨干集中的齐不错从GitHub上的官方模子库下载得到。
对象检测
主张检测模子基于骨干集中索求的特征来进行识别,而左证识别和分类物体的里面收场来说,主流对象检测集中不错分红Anchor-based的两阶段检测器和单阶段检测器,以及Anchor-Free的主张检测器。
Faster-RCNN(Anchor-based二阶段检测器代表)
Faster-RCNN模子架构图
两阶段检测器由候选区域集中(RPN)和分类器组成。候选区域集中基于骨干集中生成的特征,在图片中鉴识出潜在的感趣味区域(RoI),并将这些其余和先前得到的特征一并送进分类器,得到每个候选框的具体分类。
Faster-RCNN以模子的复杂度行动代价,换来了相对较高的识别准确度。其处理一张图片需要约200ms(5FPS),离及时处理如故有一些距离。
SSD/YOLO(Anchor-based一阶段检测器代表)
YOLO v3模子架构图
以YOLO v3为例,输入的图片会先被鉴识为数个单位格,每个单位格上会预计出一些识别框和对应的分类。在磨练时,YOLO v3会左证磨练聚拢检测框的大小和位置作念事前学习,寻找出最常见的检测框位置,并左证这些陈迹来鉴识单位格。
与Faster-RCNN等二阶段检测器不同,YOLO和SSD会同期进行候选框和主张分类的预计,从而检朴了性能支出。一般较小的YOLO模子齐不错在30ms内处理完成一张图片,达到及时速率。
Anchor-free检测器
DETR模子架构图
不管是Anchor-based如故Anchor-free方法,主张检测器念念要科罚的中枢问题齐是若何预计检测框和类别。这一类的检测器代表有CenterNet等基于点的方法、FCOS等诓骗FPN进行多法式预计的模子,以及上图DETR等基于Transformer的模子。
因为集中结构浅陋,Anchor-free关于工业应用会愈加友好,况兼其集中架构上和实例分割等任务更接近,有收场多功能的后劲。
小结
在这篇著作中,笔者浅陋先容了图像识别,以及用深度学习进行谋划机视觉任务的磋磨内容。图像识别的磋磨示例不错参考这篇【OpenVINO征战实战课程】中的录播教程进行学习,注册eepw账号后即可赢得~
下篇中,咱们会关防护频默契的磋磨算法,以及冉冉教养若何使用OpenVINO进行视频识别,一定要怜惜哦!
参考贵寓
[1]腾讯网,2021/3/17报说念,《解脱传统监测妙技,英特尔3DAT成体育磨练数据分析“神器”》,https://new.qq.com/rain/a/20210317A03E6J00
[2]EEPW论坛,作家zhuzhaokun1987,【原创】【AI东说念主工智能系列】OpenCV+Python谋划机视觉导学——目次汇总(点击目次可跳转对应章节,永恒更新),
[3]微软亚洲商讨院(MSRA)在2015年发表的使命,作家何恺明等,Delving Deep into Rectifiers:Surpassing Human-Level Performance on ImageNet Classification,https://arxiv.org/pdf/1502.01852.pdf
[4]Google于2019年发表在ICML上的使命,作家Mingxing Tan等,EfficientNet:Rethinking Model Scaling for Convolutional Neural Networks白虎 女,https://arxiv.org/pdf/1905.11946v5.pdf