自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 资源 (2)
  • 收藏
  • 关注

原创 python 读写文件方法

方法一、用open()的方法(open()返回一个文件对象,它是可迭代的)f = open('test.txt',’r‘) r表示文本文件,rb是二进制文件,默认r若文件不存在,则该函数会抛出一个IOError的错误,如下:>>> f = open('test.txt','r') Traceback (most recent call last): File "<stdin>", line 1, in <module>FileNotFoundEr

2020-11-05 14:27:50 524

原创 手撕代码必会排序算法(冒泡、快排、堆排)

一、冒泡排序1、基础版def bubble_Sort(arr): n = len(arr) for i in range(n-1): for j in range(n-i-1): if arr[j] > arr[j+1]: arr[j], arr[j+1] = arr[j+1], arr[j]2、改进版加入Flag,若剩余的都已经是有序的则无需继续def super_bubble_Sort(arr):

2020-09-23 16:20:54 502

原创 二叉树的前中后序、层序遍历以及重建

一、Tree的结构class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = None二、前序遍历根->左->右,前中后都是指的是根,左右的关系永远是先左后右1、递归方法这个是通用写法,对于中序和后序,仅需稍微调整一下(详情看后面)def preord_Recur(root): res = [] def he

2020-09-23 12:25:18 407

原创 视觉岗高频基础代码题

1、NMS基础中的基础,直接放代码(有注释)import numpy as npdef NMS(dets, nms_th): #检测结果解析 x1 = dets[:, 0] y1 = dets[:, 1] x2 = dets[:, 2] y2 = dets[:, 3] scores = dets[: 4] #获得置信度从大到小的索引信息 order = scores.argsort()[::-1] #计算所有候选框的面积

2020-09-23 11:27:02 218

原创 智力题:1000瓶水和老鼠

1000瓶水和老鼠题目:现在有1000瓶水,里面有一瓶有毒,且老鼠喝了后24小时才毒发身亡,问若要求24小时内判断出哪瓶水有毒,最少需要多少只老鼠?答:这其实是一道编码问题,2^9 <1000<2^10,所以需要10只老鼠。这里举8瓶水里找毒药的例子, 8=2^3,所以需要三只老鼠;老鼠就代表了每个二进制位,1代表死亡,2代表没死000代表第0瓶水有毒(没有老鼠死亡)001代表第1瓶水有毒(代表只有一号老鼠喝了第1瓶水,且死亡)010代表第2瓶水有毒(代表只有二号老鼠喝了第2瓶水,且

2020-07-10 13:26:10 1038

原创 2020中兴捧月算法大赛-阿尔法(MOT)赛道--赛后总结

比赛结束了,很荣幸拿到了中兴捧月算法大赛 MOT赛道 全国总决赛第二名的亚军奖杯,这估计也是我找到工作前最后一个比赛了,收获满满,下面算是自己给自己写的一个简单的赛后总结,做的比较粗糙,细节也就不多赘述,当然也欢迎交流。一、初赛初赛截榜前一周,我才开始做这个比赛,参赛模型是今年的SOTA模型FairMOT,主要针对跟踪部分做了一些针对性改进,当时也没想着能进复赛,只是想着拿个面笔试资格,哈哈,但是没想到进了复赛。初赛排名:Rank28。二、复赛复赛不是技术赛,而是面试,大概问了以下问题:先是问了关

2020-06-24 21:06:31 1597 7

原创 CV领域常用的注意力机制模块(SE、CBAM)

CV领域常用的注意力机制模块(SE、SAM、CAM、CBAM)一、SE模块(Squeeze-and-Excitation)更详细内容推荐博客:最后一届ImageNet冠军模型:SENetSENet网络的创新点:在于关注channel之间的关系,希望模型可以自动学习到不同channel特征的重要程度。1、SE结构能说一说么?一个SEblock的过程分为 Squeeze(压缩) 和 Excitation(激发) 两个步骤:Squeeze(压缩) 通过在Feature Map层上执行Global

2020-06-03 17:10:42 47163 26

原创 MOT paper translation (MOT论文的译文或学习笔记,持续更新...)

pdf地址:https://github.com/TimeChi/MOT-paper-translation该仓库保存了目前的文章有:MOTDT:《REAL-TIME MULTIPLE PEOPLE TRACKING WITH DEEPLY LEARNED CANDIDATE SELECTION AND PERSON RE-IDENTIFICATION》DAN:《Deep Affinity Network for Multiple Object Tracking》JDE:《Towards Real

2020-05-12 12:38:14 527

原创 MOT相关博客记录(持续更新...)

本文旨在收录一些写的不错的MOT相关博客多目标跟踪MOT16数据集和评价指标

2020-04-28 17:39:24 288

原创 模型大小、推理速度相关

模型参数量(Params)和模型每秒浮点运算速度(Flops)对卷积层而言Params量计算公式:(Kh∗Kw∗Cin)∗Cout(K_h*K_w*C_in )*C_out(Kh​∗Kw​∗Ci​n)∗Co​utFlops计算公式:(Kh∗Kw∗Cin∗Cout)∗(Hout∗Wout)(K_h*K_w*C_in*C_out )*(H_out*W_out)(Kh​∗Kw​∗Ci​n∗Co​u...

2020-04-24 13:54:50 1378

原创 C++ 声明N*M的数组

一、静态申明N*M的数组int n = 5;int m = 5;int a[n][m];//内存连续二、动态声明N*M的数组与静态不同,动态申明的数组程序不会自己释放内存,必须手动释放,且内存未必连续(任意的p[k]都是一个int* 类型,即一个地址,所以只能p[i][j]或者 * (* (p+i) + j)来访问数组的元素,而不能a[i * n + j]使用。)1.1、动态申明一个...

2020-04-11 11:36:43 1885

原创 炼丹Tricks相关博文收录(持续更新...)

如何理解深度学习分布式训练中的large batch size与learning rate的关系?

2020-04-01 14:35:54 180

原创 Tracktor:《Tracking without bells and whistles》

.本文核心思想:  本文提出的Tracktor仅通过一个目标检测器即可完成MOT任务。对于给定的帧t包含两个主要的处理步骤,如上图,用蓝色和红色表示。  首先(蓝色部分,对应轨迹bbox回归更新),将t-1帧已有的轨迹边界框作为第t帧该轨迹的起始边界框,进行回归对齐即可得到当前帧对应轨迹的bbox(这里的理论支持前提是高帧率视频下,前一帧和后一帧位置变化不大)。然后,将新bbox的位置相...

2020-03-21 13:19:33 2477

原创 常见激活函数回顾总结

激活函数分类示意图**“饱和激活函数”**的存在的问题:1) 在接近饱和区时,变化太缓慢,导数趋于0,容易出现梯度消失。2) 反向传播求解误差梯度时,梯度趋于0,收敛速度慢。 **“非饱和激活函数”**的优势:1) 没有饱和区,抑制了“梯度消失”问题。(梯度消失问题的原因是多方面的,不仅仅是激活函数的锅)2) 收敛速度快3) ReLU会使一部分神经元输出为0,使网络更加稀...

2020-03-14 20:18:38 320

原创 JDE 《Towards Real-Time Multi-Object Tracking》学习笔记

论文链接:https://arxiv.org/pdf/1909.12605.pdf代码链接:https://github.com/Zhongdao/Towards-Realtime-MOT翻译链接:https://blog.csdn.net/weixin_42907473/article/details/104407606  该方法是基于YOLOv3和MOTDT做的。它网络前面都和YOLOv...

2020-03-14 14:27:58 2545 1

原创 多目标跟踪 MOTDT 学习笔记

论文地址:https://arxiv.org/pdf/1809.04427.pdf代码地址:https://github.com/longcw/MOTDT图片来源  本文整体框架和DeepSort很相似,不同之处在于扩大了关联候选者的范围,使卡尔曼滤波预测结果也作为候选者,为了统一度量检测框和预测框的置信度,前者采用了R-FCN结构,后者设计了轨迹置信度函数,分别得到检测框和预测框的置...

2020-03-12 21:34:14 1269

原创 DeepSORT的细节

一、整体把握目标在每帧中的轨迹状态是如何表示的?  作者用8维向量[u,v,r,h,x’,y’,r’,h’]来表示目标所处的轨迹状态, u,v,r,h分别对应目标的中心坐标、r是长宽比、h是高。而x’,y’,r’,h’这四个参数代表目标对应的运动速度(可将其看成前四个参数分别的运动数据)。该轨迹向量同时提供了目标在当前帧的bbox信息以及bbox的运动信息,为预测bbox下一帧可能的位置提供了...

2020-03-01 18:29:24 1882 1

原创 商汤《Multi-Object Tracking with Multiple Cues and Switcher-Aware Classification》学习笔记

问题的提出:   当前绝大多数MOT都是遵循 Tracking-By-Detection 方式,该方式将检测作为输入,关联检测结果作为最终轨迹输出。然而,检测不总是足够精准的,这可能会影响跟踪。此外,遮挡和形变也是MOT中的两个重要问题。图1 .( a ) False negative(FN): 检测器没有检测到遮挡的目标,但是SOT可以找到目标来辅助完善检测器。( b ) Occlu...

2020-02-22 19:18:46 335

翻译 《Towards Real-Time Multi-Object Tracking》 翻译

Abstract   现在的MOT系统通常使用tracking-by-detection的方式。这种方式有以下两个部件:1)用于目标定位的检测模型,2)用于数据关联(data association)的外观嵌入模型(appearance embedding model)。两个模型分开执行可能会导致效率问题,其运行时间只是简单的将两个结构的运行时间加起来,而没有去探究它们之间可能某些结构可...

2020-02-20 15:09:08 1100 1

原创 markdown 使用记录

图片和文字居中:<center>要居中的文字、图片</center>要居中的文字、图片首行缩进:链接

2020-02-20 12:28:45 166

转载 堆和栈的区别

堆和栈的区别(博客园):http://www.cnblogs.com/jiahuafu/p/8575044.html关于堆栈的讲解(我见过的最经典的):https://blog.csdn.net/yingms/article/details/53188974堆栈的工作原理:https://blog.csdn.net/laoqiuge/article/details/53728179...

2020-02-05 12:55:53 79

原创 SORT多目标跟踪论文译文

摘要本文探讨了一种实用的多对象跟踪方法,其主要重点是为在线和实时应用有效地关联对象。 为此,检测质量被认为是影响跟踪性能的关键因素,更换检测器可以使跟踪性能提高多达18.9%。 尽管仅对跟踪组件使用了诸如卡尔曼过滤器和匈牙利算法之类的熟悉技术的基本组合,但该方法仍可达到与最新在线跟踪器相当的精度。 此外,由于我们跟踪方法的简便性,该跟踪器以260 Hz的速率进行更新,比其他最新的跟踪器快20倍以...

2019-12-27 22:29:58 1503

原创 2019年“创青春.交子杯”新网银行高校金融科技挑战赛-AI算法赛道比赛总结

比赛已经结束,很荣幸能和队友一起拿到这个冠军奖杯,非常感谢队友的付出,写个总结,算是对这几个月付出的一个交代。一、简述比赛原因及队伍组成:这个比赛是我一个队友给我推荐的,当时也是看着感觉题目很有意思,所以就和他一起参加了。另一个队友,则是之前其他比赛认识的,最终组成了我们这个跨校三人小队。队名由来:我们的队伍名字是“学学没完”,这其实是我的账户名,前期是我一个人在做这个比赛因此这样取名,后来...

2019-12-10 21:53:32 5263 47

原创 视频动作分类网络《TSM: Temporal Shift Module for Efficient Video Understanding》学习笔记

全文按照原文的结构来描述(你可以当做是翻译,但不是谷歌翻译,是加入理解的翻译),尽可能保持作者原文想表达的意思,里面会穿插自己的想法(会注明)。Abstract问题:视频流的爆炸增长带来了对高准确度和低成本计算的视频理解挑战。常规的2D CNN 在计算上是相对廉价的,但其无法捕获时间维度的关系。而基于3D CNN 的方法可以达到良好的效果性能,但计算量大,因此部署成本很大。解决方案:结...

2019-11-12 14:48:22 12611 15

原创 ubuntu16.04 检测不到扩展屏幕(解决方案)

搜到这个问题的你,相信也被这个问题困扰、浪费了很多时间说一下,我遇到的情况:xrandr 检测不到扩展屏,从nvidia官网下载了各种版本的驱动,装上都没用。经过几天的倒腾,直接说结论:如果要分屏就不要用nvidia官方提供的驱动(F**k nvidia !!!),直接用ubuntu系统设置-》软件与更新-》附加驱动里选一个第三方的驱动。这里可能会遇到没有驱动或者显示的驱动过老的情况,添加...

2019-11-05 19:14:12 15339 11

原创 《SlowFast Networks for Video Recognition》阅读笔记

这是恺明大佬实验室的今年4月份的新作。接下来我就按照原文对内容的安排来聊一聊这篇文章吧。Abstract他们的模型分为两个部分:一、低帧速率运行的Slow pathway,用来捕获空间的语义信息;二、高帧速率运行的Fast pathway,以良好的时间分辨率来捕获动作信息;关于Fast pathway,作者通过减少通道来使其变得特别轻巧(图像的细节特征不依赖这个提取),其主要学习时间维度...

2019-10-17 21:17:44 2043

原创 c++使用记录(持续更新...)

该贴是用来记录自己平时看到还不错的帖子,如果大家看到相同问题但讲的更好的帖子也可以评论区分享一下高质量c++(有了malloc/free 为什么还要new/delete )...

2019-09-24 13:48:55 127

原创 深度学习、目标检测相关博客链接

Focal Loss : https://www.cnblogs.com/king-lps/p/9497836.html

2019-09-11 23:06:00 229

原创 YOLO系列简述主干思想步骤

废话不多说,本篇博客就是为什么总结一下yolo系列的主体思想,方便回头查看。有任何问题欢迎交流YOLO v1一、主体思想1. 将输入图片划分为S×S的网格。如果一个目标的中心落入一个网格单元中,则该网格单元负责检测该目标。2. 每个网格单元预测B个bounding boxes和这些bboxes的置信度分数(confidence scores)。置信度分数反映了该模型对box包围目标的信心,...

2019-09-09 20:43:44 922

原创 pytorch使用博客记录(持续更新...)

PyTorch 中的 ModuleList 和 Sequential: 区别和使用场景

2019-09-04 20:44:31 114

原创 python 三个点‘...’、Ellipsis符号

第一次看到这个符号的时候还是有点懵逼。搜了也没搜到,原来是方式错了应该搜Ellipsis符号附上我看到的几个帖子链接:python小结之Ellipsis对象Python 的 Ellipsis 对象Python 装逼篇之 Ellipsis看完之后的感受就是,好像没什么卵用,感觉最准确的一种解释就是:用来省略代码,作用类似于pass的一种替代方案,这是python的’TBD’(未确定内容)...

2019-09-04 17:10:17 3898

原创 旷视ThunderNet网络学习笔记

Thundernet关于Thundernet的实现细节:一、Backbone 部分输入分辨率: 一般情况下,two-stage检测器的输入分辨率比较大,如FPN网络使用了800*800的分辨率,这虽然带来了一些优势但同时也需要更多的计算能力,大佬们通过一系列的实验,发现图片输入的分辨率应当和backbone的负载能力相匹配,一个小的backbone+大分辨率输入和大的backbone+小分...

2019-09-01 22:56:37 401

原创 python使用常用博客记录

Python @函数装饰器及用法(超级详细)

2019-08-28 20:06:22 137

原创 Global average Pooling解析

这个概念出自于 network in network主要是用来解决全连接的问题,其主要是是将最后一层的特征图进行整张图的一个均值池化,形成一个特征点,将这些特征点组成最后的特征向量,进行softmax中进行计算。举个例子:假如,最后的一层的数据是10个66的特征图,global average pooling是将每一张特征图计算所有像素点的均值,输出一个数据值,这样10 个特征图就会输出1...

2019-08-27 16:33:18 824

原创 pytorch中contiguous()的用法

contiguous:view只能用在contiguous的variable上。如果在view之前用了transpose, permute等,需要用contiguous()来返回一个contiguous copy。一种可能的解释是:有些tensor并不是占用一整块内存,而是由不同的数据块组成,而tensor的view()操作依赖于内存是整块的,这时只需要执行contiguous()这个函数,把...

2019-07-08 23:31:25 2683

转载 python try finally和with as的使用方法和注意事项

python的try finally (还真不简单):https://www.cnblogs.com/xuanmanstein/p/8080629.html

2019-07-02 15:05:34 368

原创 C++ 对容器的下标访问、C++11新特性访问以及迭代器访问速度对比

结论:下标访问最快,其次到C++11新特性方式,最慢的是迭代器访问贴代码:`#include #include <time.h>#include using namespace std;int main(){vector pri(10000,1);time_t begin,end;double ret=0;begin = clock();for(auto iter...

2019-07-01 19:49:56 1249

原创 ubuntu pip安装太慢导致失败

直接上图下载太慢,导致失败,需要改源,但是和apt-get安装的改源不一样,这里需要改的是pip源具体操作步骤:~$ mkdir ~/.pip~$ sudo gedit ~/.pip/pip.conf然后添加国内源(任选):清华:https://pypi.tuna.tsinghua.edu.cn/simple阿里云:http://mirrors.aliyun.com/pypi/si...

2019-05-21 17:11:40 4239 2

原创 ubuntu16.04 pip3显示已经安装,但是用的时候却又显示未安装

pip3 显示未安装我装行吧?What? 已装?再试一遍pip3 -version,结果还是老样子吐血!好吧,我脚本安装,行了吧输入wget https://bootstrap.pypa.io/get-pip.py接着输入sudo python3 get-pip.pySuccessfully installed!开心,下面测试一下嗯,可以了...

2019-05-21 16:16:00 3363 1

原创 2019华为软件精英挑战赛赛后总结

先摆上最后成绩:西北赛区复赛18名 队名:心有多大路就有多宽现在离比赛结束已经快一个月过去了,成绩不佳,老师那边也有活要忙,赛后总结就耽搁下来了。最近闲下来,所以写一写总结,当作是个留念吧。队伍名字我觉得很棒,很符合题意,也很有哲学气息。我想出来的,哈哈,先自我吹捧一下。缘由是一开始小心翼翼发车怕堵车,可是真正发车的时候才发现随机发很多车都能不堵车,有感而发一句心有多大路就有多宽,名字也就...

2019-05-17 18:33:29 2857

NSGAII在ZDT和DTLZ测试函数的matlab代码

本资源是NSGAII遗传算法在ZDT和DTLZ测试函数上跑的代码 matlab编写,绝对良心

2018-12-08

《机器学习实战》Python3代码

原书上提供的是Python2的代码,这个资源是Python3的代码,良心资源

2018-12-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除