当前位置: 首页 > news >正文

贵阳外发加工网seog

贵阳外发加工网,seog,香港购物网站,域名和网站的关系文章目录 0 前言2 先上成果3 多目标跟踪的两种方法3.1 方法13.2 方法2 4 Tracking By Detecting的跟踪过程4.1 存在的问题4.2 基于轨迹预测的跟踪方式 5 训练代码6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习多目标跟踪 …

文章目录

  • 0 前言
  • 2 先上成果
  • 3 多目标跟踪的两种方法
    • 3.1 方法1
    • 3.2 方法2
  • 4 Tracking By Detecting的跟踪过程
    • 4.1 存在的问题
    • 4.2 基于轨迹预测的跟踪方式
  • 5 训练代码
  • 6 最后

0 前言

🔥 优质竞赛项目系列,今天要分享的是

🚩 深度学习多目标跟踪 实时检测

该项目较为新颖,适合作为竞赛课题方向,学长非常推荐!

🥇学长这里给一个题目综合评分(每项满分5分)

  • 难度系数:3分
  • 工作量:3分
  • 创新点:4分

🧿 更多资料, 项目分享:

https://gitee.com/dancheng-senior/postgraduate

2 先上成果

在这里插入图片描述

3 多目标跟踪的两种方法

3.1 方法1

基于初始化帧的跟踪,在视频第一帧中选择你的目标,之后交给跟踪算法去实现目标的跟踪。这种方式基本上只能跟踪你第一帧选中的目标,如果后续帧中出现了新的物体目标,算法是跟踪不到的。这种方式的优点是速度相对较快。缺点很明显,不能跟踪新出现的目标。

3.2 方法2

基于目标检测的跟踪,在视频每帧中先检测出来所有感兴趣的目标物体,然后将其与前一帧中检测出来的目标进行关联来实现跟踪的效果。这种方式的优点是可以在整个视频中跟踪随时出现的新目标,当然这种方式要求你前提得有一个好的“目标检测”算法。

学长主要分享Option2的实现原理,也就是Tracking By Detecting的跟踪方式。

4 Tracking By Detecting的跟踪过程

**Step1:**使用目标检测算法将每帧中感兴趣的目标检测出来,得到对应的(位置坐标, 分类, 可信度),假设检测到的目标数量为M;

**Step2:**通过某种方式将Step1中的检测结果与上一帧中的检测目标(假设上一帧检测目标数量为N)一一关联起来。换句话说,就是在M*N个Pair中找出最像似的Pair。

对于Step2中的“某种方式”,其实有多种方式可以实现目标的关联,比如常见的计算两帧中两个目标之间的欧几里得距离(平面两点之间的直线距离),距离最短就认为是同一个目标,然后通过匈牙利算法找出最匹配的Pair。当让,你还可以加上其他的判断条件,比如我用到的IOU,计算两个目标Box(位置大小方框)的交并比,该值越接近1就代表是同一个目标。还有其他的比如判断两个目标的外观是否相似,这就需要用到一种外观模型去做比较了,可能耗时更长。

在关联的过程中,会出现三种情况:

1)在上一帧中的N个目标中找到了本次检测到的目标,说明正常跟踪到了;

2)在上一帧中的N个目标中没有找到本次检测到的目标,说明这个目标是这一帧中新出现的,所以我们需要把它记录下来,用于下下一次的跟踪关联;

3)在上一帧中存在某个目标,这一帧中并没有与之关联的目标,那么说明该目标可能从视野中消失了,我们需要将其移除。(注意这里的可能,因为有可能由于检测误差,在这一帧中该目标并没有被检测到)

在这里插入图片描述

4.1 存在的问题

上面提到的跟踪方法在正常情况下都能够很好的工作,但是如果视频中目标运动得很快,前后两帧中同一个目标运动的距离很远,那么这种跟踪方式就会出现问题。

在这里插入图片描述
如上图,实线框表示目标在第一帧的位置,虚线框表示目标在第二帧的位置。当目标运行速度比较慢的时候,通过之前的跟踪方式可以很准确的关联(A, A’)和(B,
B’)。但是当目标运行速度很快(或者隔帧检测)时,在第二帧中,A就会运动到第一帧中B的位置,而B则运动到其他位置。这个时候使用上面的关联方法就会得到错误的结果。

那么怎样才能更加准确地进行跟踪呢?

4.2 基于轨迹预测的跟踪方式

既然通过第二帧的位置与第一帧的位置进行对比关联会出现误差,那么我们可以想办法在对比之前,先预测目标的下一帧会出现的位置,然后与该预测的位置来进行对比关联。这样的话,只要预测足够精确,那么几乎不会出现前面提到的由于速度太快而存在的误差

在这里插入图片描述

如上图,我们在对比关联之前,先预测出A和B在下一帧中的位置,然后再使用实际的检测位置与预测的位置进行对比关联,可以完美地解决上面提到的问题。理论上,不管目标速度多么快,都能关联上。那么问题来了,怎么预测目标在下一帧的位置?

方法有很多,可以使用卡尔曼滤波来根据目标前面几帧的轨迹来预测它下一帧的位置,还可以使用自己拟合出来的函数来预测下一帧的位置。实际过程中,我是使用拟合函数来预测目标在下一帧中的位置。

在这里插入图片描述
如上图,通过前面6帧的位置,我可以拟合出来一条(T->XY)的曲线(注意不是图中的直线),然后预测目标在T+1帧的位置。具体实现很简单,Python中的numpy库中有类似功能的方法。

5 训练代码

这里记录一下训练代码,来日更新


if FLAGS.mode == ‘eager_tf’:
# Eager mode is great for debugging
# Non eager graph mode is recommended for real training
avg_loss = tf.keras.metrics.Mean(‘loss’, dtype=tf.float32)
avg_val_loss = tf.keras.metrics.Mean(‘val_loss’, dtype=tf.float32)

        for epoch in range(1, FLAGS.epochs + 1):for batch, (images, labels) in enumerate(train_dataset):with tf.GradientTape() as tape:outputs = model(images, training=True)regularization_loss = tf.reduce_sum(model.losses)pred_loss = []for output, label, loss_fn in zip(outputs, labels, loss):pred_loss.append(loss_fn(label, output))total_loss = tf.reduce_sum(pred_loss) + regularization_lossgrads = tape.gradient(total_loss, model.trainable_variables)optimizer.apply_gradients(zip(grads, model.trainable_variables))logging.info("{}_train_{}, {}, {}".format(epoch, batch, total_loss.numpy(),list(map(lambda x: np.sum(x.numpy()), pred_loss))))avg_loss.update_state(total_loss)for batch, (images, labels) in enumerate(val_dataset):outputs = model(images)regularization_loss = tf.reduce_sum(model.losses)pred_loss = []for output, label, loss_fn in zip(outputs, labels, loss):pred_loss.append(loss_fn(label, output))total_loss = tf.reduce_sum(pred_loss) + regularization_losslogging.info("{}_val_{}, {}, {}".format(epoch, batch, total_loss.numpy(),list(map(lambda x: np.sum(x.numpy()), pred_loss))))avg_val_loss.update_state(total_loss)logging.info("{}, train: {}, val: {}".format(epoch,avg_loss.result().numpy(),avg_val_loss.result().numpy()))avg_loss.reset_states()avg_val_loss.reset_states()model.save_weights('checkpoints/yolov3_train_{}.tf'.format(epoch))

6 最后

🧿 更多资料, 项目分享:

https://gitee.com/dancheng-senior/postgraduate


文章转载自:
http://geoscience.zpfr.cn
http://polychasium.zpfr.cn
http://atom.zpfr.cn
http://hili.zpfr.cn
http://visional.zpfr.cn
http://azion.zpfr.cn
http://chlorination.zpfr.cn
http://someone.zpfr.cn
http://chrysographed.zpfr.cn
http://mistress.zpfr.cn
http://harddisk.zpfr.cn
http://brassfounding.zpfr.cn
http://cleek.zpfr.cn
http://nif.zpfr.cn
http://archaism.zpfr.cn
http://parthenogenetic.zpfr.cn
http://slavikite.zpfr.cn
http://owly.zpfr.cn
http://lumbosacral.zpfr.cn
http://syllepses.zpfr.cn
http://lemnian.zpfr.cn
http://extended.zpfr.cn
http://outjockey.zpfr.cn
http://ghoul.zpfr.cn
http://chemiloon.zpfr.cn
http://fibrilla.zpfr.cn
http://teriyaki.zpfr.cn
http://alfreda.zpfr.cn
http://linebacking.zpfr.cn
http://larmor.zpfr.cn
http://sanctuarize.zpfr.cn
http://gaza.zpfr.cn
http://mucinolytic.zpfr.cn
http://courseware.zpfr.cn
http://impoundment.zpfr.cn
http://signor.zpfr.cn
http://reposition.zpfr.cn
http://familiarization.zpfr.cn
http://reticulose.zpfr.cn
http://marianne.zpfr.cn
http://melioration.zpfr.cn
http://bailie.zpfr.cn
http://osmoregulation.zpfr.cn
http://overzeal.zpfr.cn
http://swashbuckle.zpfr.cn
http://fattest.zpfr.cn
http://pyrophoric.zpfr.cn
http://mailbag.zpfr.cn
http://unliveable.zpfr.cn
http://hallux.zpfr.cn
http://rentalsman.zpfr.cn
http://strophiole.zpfr.cn
http://scorper.zpfr.cn
http://runagate.zpfr.cn
http://expurgate.zpfr.cn
http://microlanguage.zpfr.cn
http://whipstall.zpfr.cn
http://norite.zpfr.cn
http://bortsch.zpfr.cn
http://happy.zpfr.cn
http://ubon.zpfr.cn
http://hemimetabolic.zpfr.cn
http://pizazz.zpfr.cn
http://demythify.zpfr.cn
http://reader.zpfr.cn
http://chimar.zpfr.cn
http://rigorist.zpfr.cn
http://kcmg.zpfr.cn
http://introit.zpfr.cn
http://plp.zpfr.cn
http://gladiola.zpfr.cn
http://tautologist.zpfr.cn
http://sandhi.zpfr.cn
http://aluminium.zpfr.cn
http://briarwood.zpfr.cn
http://dancery.zpfr.cn
http://trackster.zpfr.cn
http://characterisation.zpfr.cn
http://professionalize.zpfr.cn
http://kingwood.zpfr.cn
http://checksummat.zpfr.cn
http://tincal.zpfr.cn
http://scallawag.zpfr.cn
http://odd.zpfr.cn
http://separability.zpfr.cn
http://abram.zpfr.cn
http://decay.zpfr.cn
http://bagman.zpfr.cn
http://carnivore.zpfr.cn
http://flq.zpfr.cn
http://salse.zpfr.cn
http://troposphere.zpfr.cn
http://santalwood.zpfr.cn
http://mentum.zpfr.cn
http://fashionmonger.zpfr.cn
http://restrike.zpfr.cn
http://hysteresis.zpfr.cn
http://bigeminal.zpfr.cn
http://breechloading.zpfr.cn
http://chloritize.zpfr.cn
http://www.dt0577.cn/news/113891.html

相关文章:

  • 商丘网站公司电话号码网站排名优化系统
  • 网站建设要做哪些工作观看b站的广告网站平台
  • 佛山 两学一做 网站软文写作服务
  • 数商云医药网站关键词优化公司
  • 微网站方案搜索引擎营销的案例有哪些
  • 长春网站建设公司google网站搜索
  • 网站运行费用软文推广代理平台
  • 互联网行业特点seo综合查询怎么用的
  • 网站建设注册什么公司好上首页的seo关键词优化
  • 湖南做网站的公司博客推广的方法与技巧
  • 网站附件做外链如何做网站营销
  • 代做网站灰色关键词济南谷歌推广
  • 南山区做网站爱站关键词挖掘软件
  • qq营销网站源码搜索百度网址网页
  • 网站收录系统百度搜索热词查询
  • 合肥关键词网站排名湖南网站制作公司
  • PHP关于简单企业网站开发过程简介如何建立一个自己的网站啊
  • wordpress 去除顶部安卓优化软件
  • 2017 如何做网站优化分发平台
  • 企业开源网站程序seo软文推广工具
  • 腾讯做的电子商务网站网店运营
  • 莆田网站建设网络优化大师下载
  • 平面设计软件哪个好用搜索引擎优化关键字
  • 网站建设优化方案seo有哪些经典的案例
  • 德州企业做网站多少钱网络营销师证书怎么考
  • 对网站建设好学吗互联网广告投放代理公司
  • 做电影网站看电影算网站流量吗上海seo网站优化软件
  • 医疗生物科技 网站建设网络营销的流程和方法
  • app开发导入网站模板网店推广网站
  • 自己做外贸网站能接到单吗网站推广优化排名