(转)Low-Mid-High
暑假听了computer vision的一个Summer School,里面Jason J. Corso讲了他们运用Low-Mid-High层次结构进行Video Understanding 和 Activity Recognition的方法,受益颇深,在这里把他的方法总结一下:
-------------------------------------------------------------------------------------------------
1. 层次结构表示:
- 底层part 重用
- 每个object都是一个由有向和无向边连接起来的混合图
- 底层通过非线性学习让原子节点形成时空线、平面和区域
- 人的活动呢,就是这些object在中层和高层连接的混合图
-------------------------------------------------------------------------------------------------------------------
2.Motion Perception——STS
- Different action stimulate different subpopulation of cells.
- -------------------------------------------------------------------------------------------------------------
3. Activity Recognition
Corso的方法:
- Low-Level:底层最effective的做法是Bag of Features,特征为bottom-up / low level的时空特征,随着时间和层次不断update。通过模版进行底层object检测;
- Mid-Level:中间层从images中检测、跟踪2D骨架pose,并通过背景内容分析动态pose;
- High-Level:高层活动组合方法为,将不同时间点的feature组成时间-概率模型。时间上进行feature的时空跟踪,概率上根据组成语法进行概率模型的组合。
- Recognition的另一种表示方法:Segmentation
思想:建立Space-Time Patch Descriptors,组成visual Words直方图,建立多通道分类器。
找出shikongHarris角点:
要求在feature上进行Densely Sample而非Sparse Sample。
提取Action Feature:f,用HOG/HOF描述
Space-Time Patch描述子形成histogram。每个histogram,是特征点在x,y,t三个分量上的直方图。
但是采用HOG、HOF存在问题,就是只能从前后帧去看,而不能考虑整个球的特征变化。出于这一想法,提出了HOG3D, 该特征在BMVC08中有文章进行具体描述,此处不予赘述,大家有兴趣去看文章吧.
-----------------------------------------------------------------------------------------------------
4.行为轨迹
采用 KLT: Kanade-Lucas-Tomasi Feature Tracker 进行特征点的跟踪,可作为局部特征检测的辅助手段。
- Trajectories by Local Keypoint Tracking
- Use Dense Trajectory(Dense sampling can improve object recognition and action recognition)
- CVPR 2011 Wang et al. “Action Recognition by Dense Trajectories.”中提出了一种方法,用一个单密度光流场跟踪轨迹
- 用HOG/HOF/MBH进行轨迹点描述.
- Action Bank
图中所示为Action bank的基本思想<CVPR 2012: Action Bank: A High-Level Representation of Activity in Video>
Action bank :
记录在不同scale和viewpoints的一个大action detector集合
- 在Ns个scales上进行检测,action bank上有Na个detector,每组action-scale上有1^3+2^3+4^3=73维向量。所以action bank特征向量共有Na*Ns*73维(关于73怎么来的可以详细参考《Beyond Bags of Features: Spatial Pyramid Matching for Recognizing Natural Scene Categories》)
- 实际做的时候采用1-2个scale上的detector
二维图像识别问题中,object bank的分bin统计方法,视频中的action bank就是搞成三维统计(加一维时间)
classifier 使用SVM分类器:
e.g. 对于打篮球这个action,根据高层表现,将jumping ,throwing, running 加入正样本,将biking,fencing,drumming加入负样本,用SVM进行打篮球二类分类训练。
PS: 作者曾使用L1-Regularization 和 随机森林,都没有明显的改善。
实现Action Bank的建立:
1.选取UCF上的50个action,KTH上6个action和visint.org上的digging action,组成205 templates totally
2.每个action选择3-6个不同视角、style或运动节奏的examples
3.平均分辨率:50×120pixel;40-50frames/example
简单的说呢,就是根据不同视角、style和运动节奏来描述一个templates,由此组成了205个模版,描述57个action。
关于模版
1.只要一个新的视点/运动节奏/style被找到了,就选择该模板
2.每个template都由人工裁剪到时空范围内都有human action的大小
6. 基于Human Pose方法的Activity 识别
将人分为不同part,进行各部分的姿势估计可以清晰的进行model描述。
3D Human Pose Estimation:
7. 基于Parts的Human Pose Estimation
模型结合了局部appearance和对称结构,有多篇文章涉及模型估计:
Pictorial Structures (Fischler & Elschlager 73, Felzenswalb and Huttenlocher 00)
Cardboard People (Yu et al 96)
Body Plans (Forsyth & Fleck 97)
Active Appearance Models (Cootes & Taylor 98)
Constellation Models (Burl et all 98, Fergus et al 03)
采用deformable part model
Slide credit: D. Ramanan. Method is from Yang and Ramanan, CVPR 2011.
- Dynamic Pose based Activity Recognition
2. For classification we use many one-versus-one histogram intersection kernel SVMs.
3. 处理dynamic pose和全局context都在动的情况,用 HoG3D and Dense Trajectory可得better效果。
9.视频分割:Beyond Points for Video Understanding
标准方法:
- meanshift
- Graph-Based
- Hierarchical graph-based
- Nystrom normalized cuts
- Segmentation by weighted aggregation
ECCV 2012 Xu, Xiong and Corso的方法:将视频看做一个流,根据流向和时间上的马尔科夫假设建立一个估计构架,进行video分割。
Segmentation: S = {S1, S2, ... , Sm}
Input Video: V = {V1, V2, ... , Vm}(时间序列上的输入流)
取S*=arg min E(S|V)
在一个layer的分割中采取:
在整个hierarchy中采取同样假设:
<ECCV 2012 Xu, Xiong and Corso>
转载于:https://www.cnblogs.com/594jing/p/3198568.html
(转)Low-Mid-High相关推荐
- 算法图解/二分查找/简单查找/选择排序/递归算法/快速排序算法/
大 O 表示法 大 O 表示法在讨论运行时间时,log 指的都是 log2 大 O 表示法指出了算法有多快,让你能够比较操作数,它指出了算法运行时间的增速,而并非以秒为单位的速度. 大 O 表示法指出 ...
- LeetCode简单题之猜数字大小
题目 猜数字游戏的规则如下: 每轮游戏,我都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪个数字. 如果你猜错了,我会告诉你,你猜测的数字比我选出的数字是大了还是小了. 你可以通过调用一个预先 ...
- LeetCode简单题之寻找比目标字母大的最小字母
题目 给你一个排序后的字符列表 letters ,列表中只包含小写英文字母.另给出一个目标字母 target,请你寻找在这一有序列表里比目标字母大的最小字母. 在比较时,字母是依序循环出现的.举个例子 ...
- LeetCode简单题之二分查找
题目 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1. 示例 1: 输入: n ...
- 二分查找模板全面总结
二分查找 二分法的引入 情形1 1.X的平方根 2.搜索旋转排序数组 情形2 1.第一个错误的版本 2.寻找峰值 3.寻找旋转排序数组中的最小值 情形3 在排序数组中查找第一个和最后一个位置 当遇到查 ...
- Java 二分法查找
二分法查找的步骤 1 查找前元素先排序 2 确定中间区域的位置mid=(low+high)/2 3 比较 如果等于要查找的值则直接返回,如果大于查找的值,那么则去小的部分查找每次则会减1 如果要查找的 ...
- python自动开发之(算法)第二十七天
1.什么是算法? 算法(Algorithm):一个计算过程,解决问题的方法 2.复习:递归 递归的两个特点:(1) 调用自身 (2)结束条件 def func1(x):print(x)func1(x- ...
- [nowCoder] 局部最小值位置
定义局部最小的概念.arr长度为1时,arr[0]是局部最小.arr的长度为N(N>1)时,如果arr[0]<arr[1],那么arr[0]是局部最小:如果arr[N-1]<arr[ ...
- codeforces 165B(Burning Midnight Oil)
[题意描述] 本题就是给定代码任务为n行,起始代码书写能力为v行,然后每经过一次除以k,当v变为0时看是否完成代码任务n?并求出最小的v. [解题思路] 我们可以对v值进行二分,然后确定最后的v值. ...
- 从今天开始收集一些经典的算法。
一.用过excel的都知道excel的列编号是这样的: a b c .... z aa ab ac .... az ba bb bc .... yz za zb zc .... zz aaa aab ...
最新文章
- Win2008 R2 WEB 服务器安全设置指南之修改3389端口与更新补丁
- 参观中央财经大学机房安装centos6.4及优化小结
- Making the impossible: 3 nodes intercontinental replication--转载
- 【研发管理】中国企业 VS 世界优秀企业在产品研发上差距(上)
- mysql 学习笔记08 日期相关函数2
- sphinx帮助我通过rst生成静态html
- java 自定义 operator_见微知著——从自定义类型的operator==说起
- asp.net页面去调用通过SSL加密的webservice报错
- php压缩解压zip文件夹,php利用ZipArchive类实现文件压缩与解压
- 图片选择器ImagePicker
- 程序员职业规划(转)
- 每日一题(4.27 - 5.2)
- python+pygame Hopscotch小游戏
- 什么是X11-Forwarding
- ERR_NETWORK_CHANGED
- Ubuntu18.04 安装最新版WPS
- 02 | 论文中的「题目、目录、摘要和结论」应该怎么写?
- 计算机科学与技术专业教学计划表
- scipy.sparse.vstack
- AHC(AsyncHttpClient)文件描述符泄漏
热门文章
- dma和通道的区别_Java中IO和NIO的本质和区别
- mysql 5.7 sys schema_案例详细说明MySQL5.7中 performance与sys schema中的监控参数
- func服务器报警显示C,serve_func.c
- oracle的解析計劃,Oracle中获取执行计划的几种方法分析
- python界面开发工具手机版_Python界面编程工具包WxPython
- shiro-cas------整合springboot客户端
- 终端服务器配置未启用rdp安全层,终端服务配置RDP-Tcp连接属性.PPT
- w10安装ubuntu_Windows10安装ubuntu18.04双系统教程
- 如何复制对冲基金的成功?
- Kano模型在用户调研中的应用——CRM工具调研实例