要说这YOLO是个我第一次听到这名字的时候,也觉得挺新鲜的,听着跟个口号似的。那时我正自己瞎折腾点小项目,想让摄像头能实时认出画面里有啥东西,结果每次跑起来都慢吞吞的,像在看幻灯片,心里那个急。找了好多办法,都不是特别满意。

有一次跟个老哥们儿聊天,他随口提了句YOLO,说这玩意儿跑得贼快,专门干实时检测的。我当时心想,还有这种好东西?赶紧自己回家就上网搜,一查才知道,YOLO全名是“You Only Look Once”,意思是“你只看一次”。光听名字就觉得霸气,只看一次就能把活儿干完,这不就是我想要的效率吗?

我怎么理解这YOLO到底是啥

我当时就琢磨,到底是个什么原理,能让它这么神。我把网上那些讲YOLO的视频、文章,统统都翻出来看了一遍,还把一些开源的代码下载下来,跟着别人的教程一步步地跑起来。这才渐渐摸清楚了它的门道。

我理解的YOLO,它跟咱们以前知道的那些检测方法不一样,那些老方法,好多都是两步走的:第一步先在图片里找哪些地方可能有个东西,就像先画个大圈;第二步再把这些大圈圈里的东西拿出来仔细看看,到底是个这样就得来来回回好几趟,当然慢了。

但是YOLO它不是,它牛就牛在它“一锅端”。它上来就直接把一整张图片看成一块儿,然后一次性就把画面里所有东西的位置和类别,全都给我猜出来。就像你一眼扫过去,就知道桌子上摆了碗筷,还有几盘菜,而不是先找到碗,再认碗,再去找菜,再认菜。

它最核心的一个点就是“一次性”。没了那些来回找、来回看的步骤,速度自然就嗖嗖地快起来了。

小编温馨提醒:本站只提供游戏介绍,下载游戏请前往89游戏主站,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区

它是怎么实现实时检测的

要说它具体咋弄的,这事儿我可花了不少时间才弄明白。我一开始就好奇,怎么才能“看一次”就全搞定?

我一步步跟着教程,自己敲代码,跑模型,发现它主要玩了这么几招:

  • 把图片分成好多格子:它拿到一张图片,不光是看一眼,它会把这张图片在脑子里给切成很多个小格子,就像一张大方格纸一样。每个格子都各自负责自己那一亩三分地。
  • 每个格子自己做预测:好玩儿的来了,每个小格子都会自己去“猜”:
    • “我这个格子里有没有目标?”
    • “要是有的话,那目标大概在什么位置?它有多大?”(它会画一个框框,咱们叫它边界框)
    • “我猜这个目标是个是人?是车?是狗?”(它会给个类别)
    • “我对自己猜的这些,有多大的信心?”(它还会给个自信分)
  • 一次性输出结果:关键就在这里,它不是等所有格子都猜完了,再把框框和类别分开弄。而是每个格子在猜的时候,就把目标位置、大小、类别、自信度,一次性全给掏出来了。所有格子都干完自己的活儿,把这些猜出来的结果汇总一下,那些自信度低、重复的框框就给去掉,剩下的就是画面里识别出来的所有目标了。

这么一通操作下来,你想想,从原始图片输进去,到所有目标都带着框框和类别出来,整个过程就走了一遍。不像传统方法,得先走一趟找区域,再走一趟识别,那速度能一样吗?

我那时候就在想,这不就是把传统的两步甚至多步走的工作,硬是给拧巴成一步走了吗?而且它还把所有的东西,比如图像特征提取,到的预测,都塞进一个大神经网络里头,从头到尾一起训练。这样整个系统就特别紧凑,跑起来效率就特别高。

我那会儿用树莓派连了个小摄像头,跑自己训练的一个YOLO小模型,用来识别家里有没有宠物跑出来。以前用的那些土办法,画面卡得像幻灯片,基本上没法看。结果换了YOLO,那画面上的框框真的是跟着猫猫狗狗“唰唰唰”地跑,实时性杠杠的。那一刻,我真觉得这钱花得值(虽然是免费的开源代码,哈哈)。

在我看来,YOLO之所以能实现实时检测,就是因为它把一个“多步骤”的问题,巧妙地转化成了一个“一步到位”的问题,而且整个流程特别顺滑,就像流水线一样,从头到尾不带卡壳的。

免责声明:喜欢请购买正版授权并合法使用,此软件只适用于测试试用版本。来源于转载自各大媒体和网络。 此仅供爱好者测试及研究之用,版权归发行公司所有。任何组织或个人不得传播或用于任何商业用途,否则一切后果由该组织及个人承担!我方将不承担任何法律及连带责任。 对使用本测试版本后产生的任何不良影响,我方不承担任何法律及连带责任。 请自觉于下载后24小时内删除。如果喜欢本游戏,请购买正版授权并合法使用。 本站内容侵犯了原著者的合法权益,可联系我们进行处理。