草庐IT

毕业设计-基于深度学习的视频目标检测

HaiLang_IT 2024-04-26 原文

目录

前言

课题背景和意义

实现技术思路

实现效果图样例


前言


    📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科同学来说是充满挑战。为帮助大家顺利通过和节省时间与精力投入到更重要的就业和考试中去,学长分享优质的选题经验和毕设项目与技术思路。

🚀对毕设有任何疑问都可以问学长哦!

选题指导: https://blog.csdn.net/qq_37340229/article/details/128243277

大家好,这里是海浪学长毕设专题,本次分享的课题是

🎯基于深度学习的视频目标检测

课题背景和意义

视频目标检测是为了解决每一个视频帧中出现的目标如何进行定位和识别的问题。相比于图像目标
检测,视频具有高冗余度的特性,其中包含了大量的时空局部信息。随着深度卷积神经网络在静态图像目标检测领域的迅速普及,在性能上相较于传统方法显示出了非常大的优越性,并逐步在基于视频的目标检测任务上也发挥了应有的作用。但现有的视频目标检测算法仍然面临改进与优化主流目标检测算法的性能、保持视频序列的时空一致性、检测模型轻量化等关键技术的挑战。视频目标检测已成为众多的计算机视觉领域学者追逐的热点,将来会有更加高效、精度更高的算法被相继提出,其发展方向也会越来越好。 视频目标检测在无人驾驶 、视频监控和物联网等领域中一项重要的任务,与静态图像的目 标检测相比更具挑战性和实用性。与静态图像目标 检测不同的是,目标在视频中是动态变化的,即其自 身属性诸如外观、形状、尺寸会动态地改变,检测过 程中视频序列需要在时间和空间维度保持一致以防 检测目标丢失成为了视频目标检测任务的研究难 点。

实现技术思路

 对近几年基于深度学习的视频目标检测工作进行了梳理和总结,将其分为以下几个核心问题:

(1)目标在视频序列中的位置变化会产生相应的运动信息,而通过这些运动信息便可以进行目标
检测。(2)检测算法首先对视频序列中每一个视频帧进行检测,然后应用相关的跟踪算法对目标检测框进行跟踪,最后将跟踪得到的结果与检测结果进行对比修正以此达到视频目标检测的目的。 (3)视频目标检测模型的轻量化。(4)检测模型的跨界问题。(5)保持目标在视频序列中的时空一致性。具体的挑战可分为以下五类: 运动模糊、虚焦、遮挡、外观变化、外观变化。

一、基于深度学习的视频目标检测

基于运动信息的视频目标检测算法
1)光流法 是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻物体之间的运动信息的一种方法。

2)DFF 的网络结构大致可分为特征提取网络和检测网络。特征网络只作用于关键帧的特征提取,利用光流将关键帧的特征聚集到非关键帧,获得非关键帧的特征图,最后将这些特征图送入检测网络进行计算来获得结果。

3)FGFA 主要由特征提取和特征融合两大模块组 成。首先是通过光流网络对当前帧与相邻帧提取光流,并将提取到的光流与当前帧的特征组合在一起, 组合完成后将组合后的特征与相邻帧的多个特征进行聚合。

4)在 THP 中提出了使用稀疏递归聚合的方法估计特征网络, 特征聚合只在挑选出来的关键帧上进行,即用上一个 关键帧的特征来增强当前关键帧的特征,增强后的 关键帧再去增强下一个关键帧,如此递归进行。

基于检测和跟踪的视频目标检测算法
1)T-CNN
解决视频中目标的时空一致性问题最直接的方法就是进行跟踪,这其中具有代表性的工作便是 T-CNN( tubelets with convolutional neural networks) 。 其核心思想是用跟踪算法学习视频序列中目标变化 的时间信息,用检测算法学习单帧图像中目标的空间信息,之后将二者有机结合起来提升视频目标检测的性能。T-CNN 提出了一种目标检测和跟踪的多阶段框架,该框架分别由管道提取模块、管道分类和重记分模块三部分组成。
 
2)D&T
D&T detect to track and track to detect) 通过使用一个简单的卷积网络模型—— ConvNet 在视频序列中实现了多目标的跟踪和检测,设计了一个新颖的损失函数,里面既包含了单帧检测的多任务损失,也包含了多帧间的跟踪回归损失;引入了同一目标在不同帧中同时出现时的相关特征来增强跟踪效果。

视频目标检测模型的轻量化
尽管视频目标检测模型已经成功部署在桌面GPU( graphics processing unit )上,但是距离移动端的 发展还尚有一段距离。通过 使用 Slownetwork Fastnetwork 分别提取不同帧的特征,减少计算冗余,使用 Conv-LSTM( convolutional long short-term memory )特征融合后生成检测框来实现检测的实时性,并通过基于Q-learning学习自适应交替策略,取得速度和准确率的平衡,在移动端设备上达到了当时视频目标检测已知的最快速度。
跨界模型在视频目标检测中的应用
Transformer 从分类、检测、分割等各个任务上所替代。 Transformer 以其优越的性能被越来越多地用来改进各种视觉任务的算法模型。 Transformer 用到了目标检测任务中,其效果可以和Faster R-CNN 相媲美,即 Transformer 的视觉版本 DETR detection transformer)DETR 的出现从 根本上改变了 CNN 模型的算法架构,基于 Trans-former 的端到端目标检测,没有 NMS non-maximum suppression)后处理步骤,真正的没有 anchor ,其性能 对标Faster R-CNN

二、 相关数据集

数据集不仅为衡量和比较视频目标检测算法的性能提供了依据,同时也为视频目标检测算法越
来越高效和越来越实用提供了强大的支撑力。视频目标检测中所使用的通用数据集主要包括FlyingChairs 、 Epic Kitchen 和 ImageNet VID 等。

 三、算法性能比较

目标检测中的性能指标主要包括精确率( preci-sion rate)、召回率( recall rate )、平均精度( average pre-cision, AP )、平均精度均值( mean average precision , mAP)和速度( frame per second FPS)。 通过对相关挑战中的很多算法以及相应的数据集和目标检测中的性能介绍,下面 从基础检测器、主干网络、数据集、检测精度等相关信息进行对比分析。

 由以上可知(1)随着深度学习在静态图片的目标检测逐步延伸到视频的目标检测,使得视频目标检测的质量有了很大的提升。(2)在视频目标检测的算法的相关改进中,由于光流的计算费时费力,在后续的发展中光流的作用被逐渐弃用(3)在视频目标检测算法的发展过程中,以追求精度提升的检测算法中,其主干网络大都采用ResNet 系列的网络架构。(4)加入了 NMS 后处理的方法比原来没有加入 的算法精度都有了不同程度的提升;(5)随着算法性能的不断提高,检测精度不断提升,在基于光流的算法中,如RDN、OGEMNSELSA在ImageNet VID数据集上将检测精度提上了一个新的高度

实现效果图样例

最先进的目标检测算法主要基于深度神经网络,基于深度学习的视频目标检测:

我是海浪学长,创作不易,欢迎点赞、关注、收藏、留言。

毕设帮助,疑难解答,欢迎打扰!

最后

有关毕业设计-基于深度学习的视频目标检测的更多相关文章

  1. ruby-on-rails - Rails - 子类化模型的设计模式是什么? - 2

    我有一个模型:classItem项目有一个属性“商店”基于存储的值,我希望Item对象对特定方法具有不同的行为。Rails中是否有针对此的通用设计模式?如果方法中没有大的if-else语句,这是如何干净利落地完成的? 最佳答案 通常通过Single-TableInheritance. 关于ruby-on-rails-Rails-子类化模型的设计模式是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

  2. ruby-on-rails - 使用 rails 4 设计而不更新用户 - 2

    我将应用程序升级到Rails4,一切正常。我可以登录并转到我的编辑页面。也更新了观点。使用标准View时,用户会更新。但是当我添加例如字段:name时,它​​不会在表单中更新。使用devise3.1.1和gem'protected_attributes'我需要在设备或数据库上运行某种更新命令吗?我也搜索过这个地方,找到了许多不同的解决方案,但没有一个会更新我的用户字段。我没有添加任何自定义字段。 最佳答案 如果您想允许额外的参数,您可以在ApplicationController中使用beforefilter,因为Rails4将参数

  3. ruby - RuntimeError(自动加载常量 Apps 多线程时检测到循环依赖 - 2

    我收到这个错误:RuntimeError(自动加载常量Apps时检测到循环依赖当我使用多线程时。下面是我的代码。为什么会这样?我尝试多线程的原因是因为我正在编写一个HTML抓取应用程序。对Nokogiri::HTML(open())的调用是一个同步阻塞调用,需要1秒才能返回,我有100,000多个页面要访问,所以我试图运行多个线程来解决这个问题。有更好的方法吗?classToolsController0)app.website=array.join(',')putsapp.websiteelseapp.website="NONE"endapp.saveapps=Apps.order("

  4. 叮咚买菜基于 Apache Doris 统一 OLAP 引擎的应用实践 - 2

    导读:随着叮咚买菜业务的发展,不同的业务场景对数据分析提出了不同的需求,他们希望引入一款实时OLAP数据库,构建一个灵活的多维实时查询和分析的平台,统一数据的接入和查询方案,解决各业务线对数据高效实时查询和精细化运营的需求。经过调研选型,最终引入ApacheDoris作为最终的OLAP分析引擎,Doris作为核心的OLAP引擎支持复杂地分析操作、提供多维的数据视图,在叮咚买菜数十个业务场景中广泛应用。作者|叮咚买菜资深数据工程师韩青叮咚买菜创立于2017年5月,是一家专注美好食物的创业公司。叮咚买菜专注吃的事业,为满足更多人“想吃什么”而努力,通过美好食材的供应、美好滋味的开发以及美食品牌的孵

  5. 基于C#实现简易绘图工具【100010177】 - 2

    C#实现简易绘图工具一.引言实验目的:通过制作窗体应用程序(C#画图软件),熟悉基本的窗体设计过程以及控件设计,事件处理等,熟悉使用C#的winform窗体进行绘图的基本步骤,对于面向对象编程有更加深刻的体会.Tutorial任务设计一个具有基本功能的画图软件**·包括简单的新建文件,保存,重新绘图等功能**·实现一些基本图形的绘制,包括铅笔和基本形状等,学习橡皮工具的创建**·设计一个合理舒适的UI界面**注明:你可能需要先了解一些关于winform窗体应用程序绘图的基本知识,以及关于GDI+类和结构的知识二.实验环境Windows系统下的visualstudio2017C#窗体应用程序三.

  6. LC滤波器设计学习笔记(一)滤波电路入门 - 2

    目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称

  7. CAN协议的学习与理解 - 2

    最近在学习CAN,记录一下,也供大家参考交流。推荐几个我觉得很好的CAN学习,本文也是在看了他们的好文之后做的笔记首先是瑞萨的CAN入门,真的通透;秀!靠这篇我竟然2天理解了CAN协议!实战STM32F4CAN!原文链接:https://blog.csdn.net/XiaoXiaoPengBo/article/details/116206252CAN详解(小白教程)原文链接:https://blog.csdn.net/xwwwj/article/details/105372234一篇易懂的CAN通讯协议指南1一篇易懂的CAN通讯协议指南1-知乎(zhihu.com)视频推荐CAN总线个人知识总

  8. 深度学习部署:Windows安装pycocotools报错解决方法 - 2

    深度学习部署:Windows安装pycocotools报错解决方法1.pycocotools库的简介2.pycocotools安装的坑3.解决办法更多Ai资讯:公主号AiCharm本系列是作者在跑一些深度学习实例时,遇到的各种各样的问题及解决办法,希望能够帮助到大家。ERROR:Commanderroredoutwithexitstatus1:'D:\Anaconda3\python.exe'-u-c'importsys,setuptools,tokenize;sys.argv[0]='"'"'C:\\Users\\46653\\AppData\\Local\\Temp\\pip-instal

  9. 计算机毕业设计ssm+vue基本微信小程序的小学生兴趣延时班预约小程序 - 2

    项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU

  10. kvm虚拟机安装centos7基于ubuntu20.04系统 - 2

    需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc

随机推荐