深度系统介绍了 52 个目标检测模型,纵观 2013 年到 2020 年,从最早的 R-CNN、OverFeat 到后来的 SSD、YOLO v3 再到去年的 M2Det,新模型层出不穷,性能也越来越好!
OpenCV DNN不光支持图像分类,对象检测作为计算机视觉主要任务之一,OpenCV DNN支持多种对象检测模型,可以快速实现基于COCO数据集与Pascal VOC数据集的对象检测。此外基于自定义数据集,通过tensorflow对象检测框架或者pytorch的ONNX格式还可以支持自定义对象检测模型训练导出与部署。本文总结了OpenCV DNN支持的各种对象检测模型与它们的输入输出。
SSD: Single Shot MultiBox Detector intro: ECCV 2016 Oral arxiv: http://arxiv.org/abs/1512.02325
看上去这么乱乱的图就是目标检测应用的输出了,简单说,目标检测的任务就是输入一张图片或者一帧图像,通过一系列计算,使得输出是这样的一个可视化结果或一个等同于这种可视化结果的数据结果。也就是让计算机把图片上哪里有物体,物体是什么,多少概率。图上我们看到的其实就是这样一个内容的输出了。
继续来开开脑洞,今天要介绍BMVC 2017的一个SSD的改进算法R-SSD。关于SSD可以看一下之前的论文笔记:目标检测算法之SSD,后面我也会整理出来一个非常详细的Pytorch版本的SSD代码的解读,确认无误后发送给感兴趣的同学。这里先看一下SSD的网络结构图吧。
《从零开始学习SSD》教程是首发于GiantPandaCV公众号的一个完整的系列,针对的是Github上3.5k Star的SSD进行的讲解,地址为:
机器之心专栏 本专栏由机器之心SOTA!模型资源站出品,每周日于机器之心公众号持续更新。 本专栏将逐一盘点自然语言处理、计算机视觉等领域下的常见任务,并对在这些任务上取得过 SOTA 的经典模型逐一详解。前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及 API 等资源。 本文将分 3 期进行连载,共介绍 17 个在目标检测任务上曾取得 SOTA 的经典模型。 第 1 期:R-CNN、SPP-Net、Fast R-CNN、Faster R-C
大数据文摘作品 编译:Yanruo、小鱼 这是一份详细介绍了目标检测的相关经典论文、学习笔记、和代码示例的清单,想要入坑目标检测的同学可以收藏了! 在大数据文摘后台回复“目标检测”可打包下载全部论文~
对于多任务学习而言,它每一组loss之间的数量级和学习难度并不一样,寻找平衡点是个很难的事情。我举两个我在实际应用中碰到的问题。第一个是多任务学习算法MTCNN,这算是人脸检测领域最经典的算法之一,被各家厂商魔改,其性能也是很不错的,也有很多版本的开源实现(如果不了解的话,请看:https://blog.csdn.net/qq_36782182/article/details/83624357)。但是我在测试各种实现的过程中,发现竟然没有一套实现是超越了原版的(https://github.com/kpzhang93/MTCNN_face_detection_alignment)。下图中是不同版本的实现,打了码的是我复现的结果。
从广义上说,计算机视觉就是“赋予机器自然视觉能力”的学科。计算机视觉与人工智能有密切联系,但也有本质的不同。人工智能更强调推理和决策,但至少计算机视觉目前还主要停留在图像信息表达和物体识别阶段。计算机视觉的研究内容,大体可以分为物体视觉(object vision)和空间视觉(spatial vision)二大部分. 物体视觉在于对物体进行精细分类和鉴别,而空间视觉在于确定物体的位置和形状,为“动作(action)” 服务。 基于学习的视觉,是指以机器学习为主要技术手段的计算机视觉研究。基于学习的视觉研究
作者提到,在2017年以前,目标检测中的一个基本挑战就是目标检测模型在处理目标多尺度变化问题的不足,因为在当时很多网络都使用了利用单个高层特征,(比如说Faster R-CNN利用下采样四倍的卷积层——Conv4,进行后续的物体的分类和bounding box的回归),但是这样做有一个明显的缺陷,即小物体本身具有的像素信息较少,在下采样的过程中极易被丢失,而之前的图像金字塔结构虽然也能解决多尺度问题,但计算量大,内存消耗大,因此作者提出了特征金字塔结构,能在增加极小的计算量的情况下,处理好物体检测中的多尺度变化问题。
这是卷积神经网络的第十七篇文章,Google 2017年发表的MobileNet V1,其核心思想就是提出了深度可分离卷积来代替标准卷积,将标准卷积分成Depthwise+Pointwise两部分,来构建轻量级的深层神经网络,这一网络即使现在也是非常常用的。论文原文地址和代码实现见附录。
原文:https://towardsdatascience.com/guide-to-learn-computer-vision-in-2020-36f19d92c934
关注并星标 从此不迷路 计算机视觉研究院 公众号ID|ComputerVisionGzq 学习群|扫码在主页获取加入方式 计算机视觉研究院专栏 作者:Edison_G YOLOAir 算法代码库是一个基于 PyTorch 的 YOLO 系列目标检测开源工具箱。使用统一模型代码框架、统一应用方式、统一调参,该库包含大量的改进模块,可使用不同网络模块来快速构建不同网络的检测模型。基于 YOLOv5 代码框架,并同步适配 YOLOv5(v6.0/v6.1 更新) 部署生态。用户在使用这个项目之前, 可以先
作者:叶 虎 编辑:祝鑫泉 前言 目标检测近年来已经取得了很重要的进展,主流的算法主要分为两个类型:(1)two-stage方法,如R-CNN系算法,其主要思路是先通过启发式方法(selective search)或者CNN网络(RPN)产生一系列稀疏的候选框,然后对这些候选框进行分类与回归,two-stage方法的优势是准确度高;(2)one-stage方法,如Yolo和SSD,其主要思路是均匀地在图片的不同位置进行密集抽样,抽样时可以采用不同尺度和长宽比,然后利用CNN提取特征后直接进行分类与回归
论文地址:Feature Pyramid Networks for Object Detection
SSD是Single Shot MultiBox Detector的缩写,速度比Faster RCNN更快,mAP优于YOLO v1,SSD为单阶段目标检测算法,所谓单阶段目标检测指的是同时进行分类与定位,一气呵成,目前使用比较火爆的目标检测网络有
尽管R-CNN是物体检测的鼻祖,但其实最成熟投入使用的是faster-RCNN,而且在pytorch的torchvision内置了faster-RCNN模型,当然还内置了mask-RCNN,ssd等。既然已经内置了模型,而且考虑到代码的复杂度,我们也无需再重复制造轮子,但对模型本身还是需要了解一下其原理和过程。
本专栏将逐一盘点自然语言处理、计算机视觉等领域下的常见任务,并对在这些任务上取得过 SOTA 的经典模型逐一详解。前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及 API 等资源。
首先将图片 Resize 到固定尺寸,然后通过一套卷积神经网络,最后接上 FC 直接输出结果,这就他们整个网络的基本结构。
最近在复盘今年上半年做的一些事情,不管是训练模型、部署模型搭建服务,还是写一些组件代码,零零散散是有一些产出。
目标检测近年来已经取得了很重要的进展,主流的算法主要分为两个类型:(1)two-stage方法,如R-CNN系算法,其主要思路是先通过启发式方法(selective search)或者CNN网络(RPN)产生一系列稀疏的候选框,然后对这些候选框进行分类与回归,two-stage方法的优势是准确度高;(2)one-stage方法,如Yolo和SSD,其主要思路是均匀地在图片的不同位置进行密集抽样,抽样时可以采用不同尺度和长宽比,然后利用CNN提取特征后直接进行分类与回归,整个过程只需要一步,所以其优势是速度快,但是均匀的密集采样的一个重要缺点是训练比较困难,这主要是因为正样本与负样本(背景)极其不均衡(参见Focal Loss,https://arxiv.org/abs/1708.02002),导致模型准确度稍低。不同算法的性能如图1所示,可以看到两类方法在准确度和速度上的差异。
本系列为 斯坦福CS231n 《深度学习与计算机视觉(Deep Learning for Computer Vision)》的全套学习笔记,对应的课程视频可以在 这里 查看。更多资料获取方式见文末。
DSDD全称为Deconvolutional Single Shot Detector,即在SSD算法的前面加了一个反卷积单词,这是CVPR 2017的一篇文章,主要是对SSD进行了一个改进。关于SSD的详细解释请看目标检测算法之SSD,然后关于反卷积请看深入理解神经网络中的反(转置)卷积。
作者 | Kevin Lee、Adi Gangidi、Mathew Oldham
SSD 方法基于前馈卷积网路来生成 bounding boxes集合,以及各box中物体类别分数,采用 NMS(non-maximum suppression) 来得到最终的检测结果.
基于“Proposal + Classification”的目标检测方法中,R-CNN 系列(R-CNN、 SPPnet、
什么是图像分割问题呢?简单的来讲就是给一张图像,检测是用框出框出物体,而图像分割分出一个物体的准确轮廓。也这样考虑,给出一张图像 I,这个问题就是求一个函数,从I映射到Mask。至于怎么求这个函数有多种方法。我们可以看到这个图,左边是给出图像,可以看到人和摩托车,右边是分割结果。
pytorch中自带几种常用的深度学习网络预训练模型,torchvision.models包中包含alexnet、densenet、inception、resnet、squeezenet、vgg等常用网络结构,并且提供了预训练模型,可通过调用来读取网络结构和预训练模型(模型参数)。往往为了加快学习进度,训练的初期直接加载pretrain模型中预先训练好的参数。加载model如下所示:
我们知道,对于pytorch上的搭建动态图的代码的可读性非常高,实际上对于一些比较简单的网络,比如alexnet,vgg阅读起来就能够脑补它们的网络结构,但是对于比较复杂的网络,如unet,直接从代码脑补网络结构可能就比较吃力
CVPR2018上关于目标检测(object detection)的论文比去年要多很多,而且大部分都有亮点。从其中挑了几篇非常有意思的文章,特来分享,每篇文章都有详细的博客笔记,可以点击链接阅读。
最近在复盘今年上半年做的一些事情,不管是训练模型、部署模型搭建服务,还是写一些组件代码等,零零散散是有一些产出。
本文介绍了单次多框检测(Single Shot MultiBox Detector, SSD)算法,该算法是一种基于深度学习的目标检测算法,主要应用于计算机视觉领域。SSD算法可以同时检测多个目标,并且能够在不增加计算量的情况下提高检测精度。该算法具有速度快、精度高的特点,是当前比较流行的物体检测算法之一。
1、Cascaded RCNN 论文:Cascade R-CNN Delving into High Quality Object Detection 论文链接:https://arxiv.org/abs/1712.00726 代码链接:https://github.com/zhaoweicai/cascade-rcnn 详细内容请移步:Cascade RCNN算法笔记
DSOD(Deeply Supervised Object Detectors)是ICCV 2017的一篇文章,它表达了一个非常有意思的东西。这篇论文不是从目标检测的高mAP值或者速度更快出发,而是从另外一个角度切入来说明fine-tune后的检测模型和直接训练的检测模型的差距其实是可以减少的,也即是说一些检测模型可以摆脱fine-tune这一过程,并且相比于fine-tune训练出来的模型效果并不会变差。
作者:arlencai,腾讯 WXG 应用研究员 微信“扫一扫”识物已上线一段时间,在公司内外均受到极大的关注。相比于行内相关竞品的“拍”,“扫一扫”识物的特点在于“扫”,带来更为便捷的用户体验。“扫”离不开高效的移动端物体检测,本文将为你揭秘。 一、背景 “扫”是“扫一扫”识物的亮点,带来更为便捷的用户体验。相比于“拍”的交互方式,“扫”的难点在于如何自动地选择包含物体的图像帧,这离不开高效的移动端物体检测。 二、问题 “扫一扫”识物是一种面向开放环境的通用物体检测——复杂多样的物体形态要求模型具有
翻译 | 人工智能头条(ID:AI_Thinker) 参与 | 林椿眄 本文概述了 Facebook AI Research(FAIR)近期在计算机视觉领域的研究进展,内容主要包括基础结构模块的创新、卷积神经网络、one shot 检测模块等,以及一些在实例分割方面的创新方法,并介绍了弱半监督学习方式下实例分割的研究进展。下面将逐一介绍,文中的一些引用可在文末的参考文献中找到。 ▌Feature Pyramid Networks( 特征金字塔网络) 首先,我们要介绍的是著名的特征金字塔网络[1](这是发表在
“扫”是“扫一扫”识物的亮点,带来更为便捷的用户体验。相比于“拍”的交互方式,“扫”的难点在于如何自动地选择包含物体的图像帧,这离不开高效的移动端物体检测。
导读:目标检测(Object Detection)是计算机视觉领域的基本任务之一,学术界已有将近二十年的研究历史。近些年随着深度学习技术的火热发展,目标检测算法也从基于手工特征的传统算法转向了基于深度神经网络的检测技术。从最初 2013 年提出的 R-CNN、OverFeat,到后面的 Fast/Faster R-CNN、SSD、YOLO 系列,再到 2018 年最近的 Pelee。短短不到五年时间,基于深度学习的目标检测技术,在网络结构上,从 two stage 到 one stage,从 bottom-up only 到 Top-Down,从 single scale network 到 feature pyramid network,从面向 PC 端到面向手机端,都涌现出许多好的算法技术,这些算法在开放目标检测数据集上的检测效果和性能都很出色。
目标检测(Object Detection)是计算机视觉领域的基本任务之一,学术界已有将近二十年的研究历史。近些年随着深度学习技术的火热发展,目标检测算法也从基于手工特征的传统算法转向了基于深度神经网络的检测技术。从最初 2013 年提出的 R-CNN、OverFeat,到后面的 Fast/Faster R-CNN、SSD、YOLO 系列,再到 2018 年最近的 Pelee。短短不到五年时间,基于深度学习的目标检测技术,在网络结构上,从 two stage 到 one stage,从 bottom-up only 到 Top-Down,从 single scale network 到 feature pyramid network,从面向 PC 端到面向手机端,都涌现出许多好的算法技术,这些算法在开放目标检测数据集上的检测效果和性能都很出色。
关注并星标 从此不迷路 计算机视觉研究院 公众号ID|ComputerVisionGzq 学习群|扫码在主页获取加入方式 论文地址:https://arxiv.org/pdf/2111.05297.pdf 代码和模型:https://github.com/szq0214/SReT 计算机视觉研究院专栏 作者:Edison_G 今天跟大家分享一篇来自CMU等机构的论文《Sliced Recursive Transformer》,该论文已被 ECCV 2022 接收。 转自《机器之心》 目前 visi
今天来学习一下这篇ECCV 2018的网络PFPNet,它借鉴了SPP的思想并通过MSCA(多尺度语义融合)模块来进行特征融合,进而提出了PFPNet来提升目标检测算法的效果。PFPNet在结构上借鉴了SSD,而在特征融合上借鉴了SPP思想加宽了网络,同时这里提出的MSCA模块完成了类似于FPN的特征融合,最后基于融合后的特征再进行检测,最终PFPNet在多个BenchMark上获得了和CVPR 2018 RefineDet相似的性能。
深度学习开源框架众多,对于开发者来说其中有一个很硬的需求,就是模型结构和权重的可视化。使用过Caffe的同学都因为强大的Netscope可以离线修改实时可视化网络结构而暗爽,那其他的框架怎么样呢?
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
在作者的原github中,也提到了一点,如果在实际部署的场景中大多数情况为中近距离、人脸大同时人脸的数量也比较少的时候,则可以采用
熟悉TensorFlow的人都知道,tf在Github上的主页是: https://github.com/tensorflow , 然后这个主页下又有两个比较重要的repo(看star数就知道了),分别是TensorFlow的源代码repo:tensorflow/tensorflow,还有一个tensorflow/models。 后者tensorflow/models是Google官方用TensorFlow做的各种各样的模型,相当于示例代码,比如用于图像分类的Slim,深度文字OCR,以及用于NLP任务
领取专属 10元无门槛券
手把手带您无忧上云