论文速览:Optical Flow Estimation from a Single Motion-blurred Image

AAAI 2021接收论文,使用单帧模糊图像估计光流。论文地址:https://arxiv.org/pdf/2103.02996v1.pdf

论文主要有三个贡献:一是首次实现通过单帧运动模糊图像估计光流和运动,二是从视频序列中生成运动模糊图像和groundtruth来训练网络,三是将结果用于运动模糊去除和运动目标分割。

阅读更多

从RNN到Seq2Seq

循环神经网络RNN结构被广泛应用与NPL领域,在机器翻译、语音识别、文字识别等方向大放异彩。后来RNN产生了多种变种,其中Seq2Seq结构和Attention机制被证明在语义理解方面有很大的增益。博主也很久没有碰过这块内容了,简单的摘抄和拼凑,权当复习笔记了 0.0

阅读更多

目标检测算法梳理YOLO、SSD、CornerNet

大概两三年前,博主有发过一篇综述:深度学习综述(二)深度学习用于目标检测 ,那时候主要是Fast-RCNN系列到yolo和ssd系列,之后很久不务正业没有跟进了。最近又开始跟进下,摘抄些笔记,没啥有深度的东西。

梳理下目标检测算法,大致经历了如下发展: 传统机器学习方法(slide window+feature extraction) -> Region Proposal + CNN -> Anchor Based CNN -> Anchor Free CNN。本文简单介绍Anchor Base方法中最著名的YOLO和SSD,Anchor Free方法中的CornerNet。

阅读更多

图神经网络GNN的简单理解

2019年的时针开始转动,在CNN、RNN、LSTM、GAN、GNN、CAP的潮起潮落中,带来了这篇博客。放上一篇参考引用。 其实个人认为理解GNN的核心问题就是理解图怎么做傅里叶变换。CNN的核心操作时卷积,GNN也是。CNN计算二维矩阵的卷积,GNN计算图的卷积。那么我们定义好图的傅里叶变换和图的卷积就可以了,其媒介就是图的拉普拉斯矩阵。

好了,这篇博客将简要介绍图神经网络的原理,但是不会设计太多数学细节(因为博主数学很烂啦)。通过理解图神经网络的卷积操作,来理解其流程,再会配合代码来做简单解释。

阅读更多

MTCNN进行人脸特征点检测和特征点提取

级联CNN提出与2015年,在目标检测领域有着很成功的应用。好久好久好久没看过目标检测了,今天被问到这个,临时翻论文到源码,发现还是很容易理解的。只是好久好久好久没玩Caffe,发现Caffe现在丰富了太多。这篇博客介绍的MTCNN人脸检测,就是基于Caffe平台的,与级联CNN有关,清楚所有技术细节之后,决定写一篇博客记录一下。

阅读更多

图像跟踪(十)C-COT算法:连续空间域的卷积操作

C-COT算法是DCF(KCF)算法的又一重要演进算法,该算法在VOT-16上取得了不错的成绩。C-COT使用深度神经网络VGG-net提取特征,通过立方插值,将不同分辨率的特征图插值到连续空间域,再应用Hessian矩阵可以求得亚像素精度的目标位置(就和SURF、SIFT里面获取亚像素精度特征点的思想类似)。确定插值方程之后,还解决了在连续空间域进行训练的问题。C-COT的代码结合了deepSRDCF、SRDCFdeno的样本进化,和C-COT进行插值等算法。这里面博主也有许多地方没有理解,毕竟Martin的数学功底大家都明白,这里就当时写一下自己的理解了。文章代码

阅读更多

图像跟踪(九)FCNT语义跟踪

        刚有一个idea,用语义分割来做图像跟踪,搜了一下发现已经有人做过了,细细的看了下Paper,和自己相当还不一样。FCN是深度学习语义分割的鼻祖,而这片Paper的名字叫做FCNT,看了之后发现我误会了,此FCN非彼FCN,由于是比较早的算法了,性能和MEEM处于同一层次,不过考虑到这是深度学习方法用于跟踪的重要实践,还是做个笔记好了。

        博主认为图像跟踪过程的本质就是语义的跟踪(我是这么理解的),所以,使用语义分割来完成图像跟踪是自然而然想到的。事实上深度学习用于图像跟踪,也就是利用了其深层特征中的语义信息。这篇博客就主要介绍这篇文献:Visual Tracking with Fully Convolutional Networks。

阅读更多

视频图像跟踪算法综述

cf2_teaser        图像跟踪一直都是计算机视觉领域的难题,事先知道第一帧中的目标位置,然后需要在后续帧中找到目标。先验知识少,目标被遮挡、目标消失、运动模糊、目标和环境的剧烈变化、目标的高速运动、相机的抖动都会对目标跟踪造成影响,图像跟踪一直都是CV领域的难题。

        深度学习用于图像跟踪有两大要解决的问题,一是图像跟踪一般使用在线学习,很难提供大量样本集,二是深度学习使用CNN时,由于卷积池化,最后一层的输出丢失了位置信息,而图像跟踪就是要输出目标的位置。

        2013年以来,深度学习开始用于目标跟踪,并且为这些问题提供了一些解决思路。这篇博客首先阐述图像跟踪今年来的研究进展,然后再介绍深度学习用于图像跟踪近年来的研究,最后附上一些学习资料和相关网站。

阅读更多

MatConvNet深度学习框架简介及GPU使用注意事项

        MatConvNet是一个基于Matlab的深度学习框架,在计算部分,最底层混编了C/C++或者CUDA C,这使得其速度并不是特别慢。就使用体验来说,MatConvNet是非常优秀的,借助于Matlab,定义网络,使用现有模型以及数据可视化都非常方便。

        由于MatConvNet文档和Demo都比较完备,所以这篇博客主要介绍一些GPU的配置细节。

阅读更多

MIT-Deeplearning 学习笔记

        今年是DeepLearning诞生十周年,这项技术已相对成熟。这个月,有两本史诗级教科书出炉,这十年的成果做了教科书式的总结,上周MIT的deeplearning教科书定稿,由Ian Goodfellow、Yoshua Bengio、Aaron Courvilla主编,几乎所有深度学习大牛参与其中。初学者学习Deep Learning四处搜集资料和Paper,四处修补知识体系的过程行将成为历史,博主将长期更新博客,对这本书的要点进行阐述。

阅读更多

深度学习综述(三)深度学习工具介绍

        随着深度学习的兴起,诞生了许多优秀的深度学习框架,借助深度学习框架完成理论研究、实验和深度学习开发已成为深度学习研究的重要手段。深度学习框架加快了研究的速度,并且使得一般的深度学习研究者也可以轻松设计自己的深度神经网络。由于深度学习框架灵活、多样、高性能、分布式等特点,当前的许多深度学习技术都是基于深度学习框架进行开发的。这篇博客主要介绍TensorFlow、Torch、Theano、Caffe四种深度学习开源框架的特点。

阅读更多

深度学习综述(二)深度学习用于目标检测

        目标识别、目标检测、目标分割、目标跟踪是计算机视觉领域最热门的方向之一。传统机器学习方法中较为常见的做法是在滑动窗口中手工提取特征(例如Hog、SIFT等),然后将提取的特征送入分类器(例如SVM、Adaboost等)中,训练分类器预测输出。而每一类物体都有不同的特征,我们也很难提前知道哪种特征更加优秀,于是近年来目标识别的研究方向转向了深度学习。

        目标识别(检测)问题与分类问题不同,识别或检测要求精准定位目标。一种解决问题的思路是将其看作一个回归问题,这种思路解决问题的效果可能并不理想,另一种更为普遍的做法还是使用滑动窗口进行检测。

阅读更多