视频特性TI(时间信息)和SI(空间信息)的计算工具:TIandSI-压缩码流版
=====================================================
TI(时间信息)和SI(空间信息)计算工具文章列表:
视频特性TI(时间信息)和SI(空间信息)的计算工具:TIandSI
视频特性TI(时间信息)和SI(空间信息)的计算工具:TIandSI-压缩码流版
=====================================================
此前在文章《视频特性TI(时间信息)和SI(空间信息)的计算工具:TIandSI》中记录过两个基于YUV视频数据的TI和SI计算工具:一个图形界面工具和一个命令行工具。由于近期正在研究视频内容复杂度方面的东西,所以顺手将原来的TIandSI工具进行了升级,添加了另外两个支持压缩码流的TI和SI的工具,并将版本改为3.0。
目前的TIandSI项目中一共包含4个项目:
TIandSI : 计算YUV数据的TI和SI-图形界面版。
TIandSIcmd : 计算YUV数据的TI和SI-命令行版。
TIandSIpro : 计算压缩码流数据的TI和SI-图形界面版。
TIandSIprocmd : 计算压缩码流数据的TI和SI-命令行版。
其中后两个“pro”版用于计算压缩码流的TI和SI。
项目主页
SourceForge:https://sourceforge.net/projects/tiandsi/Github:https://github.com/leixiaohua1020/TIandSI开源中国:http://git.oschina.net/leixiaohua1020/TIandSI
CSDN下载
源代码:http://download.csdn.net/detail/leixiaohua1020/8754819
windows可执行程序:http://download.csdn.net/detail/leixiaohua1020/8755215
使用方法
TIandSIprocmd
TIandSIprocmd是用于计算压缩码流的TI和SI的命令行工具。该工具有如下选项。
-i 输入文件
-o 输出包含TI和SI的*.csv 文件 [默认是 {input name}.csv]
-l 计算的帧数
-g 图形化显示计算的中间图像 [可以是 'ti' 或者 'si']
-n 中间图像显示的间隔 [默认是 5]
-h 打开帮助
下面举几条示例命令。
计算“test.avi”的TI和SI,结果保存在“test.csv”。
TISIprogCmd -i test.avi
计算“test.avi”的TI和SI,结果保存在“test_cal.csv”。
TISIprogCmd -i test.avi -o test_cal.csv
计算“test.avi”的TI和SI,计算过程中显示TI的中间图像。
TISIprogCmd -i test.avi -g ti
程序在运行过程中会在屏幕上打印出TI和SI,并将结果保存成“.csv”文件。程序运行截图如下所示。
显示的SI中间信息如下所示(Sobel滤波)。
显示的TI中间信息如下所示(帧差)。
TIandSIpro
TIandSIprocmd是用于计算压缩码流的TI和SI的图形界面工具。该工具的界面如下所示。
该工具的使用可以分成三步:
(1)选择视频文件
(2)点击“添加”将视频文件添加到“视频处理列表”
(3)点击“开始”进行计算
计算的过程中可以选择输出TI或者SI中间信息,如下图所示。
输入的视频为H264裸流,如下图所示。此外也支持mp4、mkv、avi等容器中的视频码流。
计算的结果保存成了“.csv”文件,TI和SI分成两列进行记录。
TI |
SI |
5.091792 |
96.63046 |
4.006694 |
97.14991 |
4.047168 |
95.78278 |
4.016123 |
96.68823 |
5.111005 |
95.08357 |
4.308331 |
95.99482 |
4.231775 |
94.96137 |
4.243418 |
96.51315 |
4.777538 |
94.69438 |
4.63109 |
95.99242 |
4.442572 |
95.27241 |
5.958293 |
94.07044 |
4.802421 |
93.54437 |
3.626003 |
94.44892 |
67.47028 |
55.96951 |
4.859533 |
55.73122 |
2.576851 |
55.94511 |
3.537802 |
55.95005 |
3.136736 |
56.02485 |
2.776622 |
55.88079 |
5.21654 |
56.21251 |
4.816776 |
56.34703 |
2.113539 |
56.39521 |
2.463277 |
56.54902 |
3.58151 |
56.62169 |
4.281242 |
56.89031 |
2.611747 |
56.9627 |
2.134903 |
56.98027 |
2.935039 |
56.72913 |
2.607401 |
56.88178 |
1.745702 |
56.99831 |
2.356833 |
57.06902 |
3.137143 |
56.77847 |
3.540902 |
56.97581 |
2.897511 |
56.95166 |
2.958283 |
56.95023 |
3.18626 |
56.48377 |
3.212861 |
56.56799 |
3.140944 |
56.53749 |
3.214078 |
56.51278 |
3.40129 |
56.14477 |
3.60599 |
56.56562 |
4.518811 |
56.72331 |
7.05519 |
56.32037 |
6.418852 |
56.10862 |
3.521006 |
56.34639 |
3.380948 |
56.21924 |
4.811128 |
56.01251 |
5.344801 |
56.30534 |
5.112007 |
56.1002 |
4.340466 |
55.77702 |
4.603604 |
55.81942 |
5.183671 |
55.94553 |
5.25707 |
55.90999 |
6.184795 |
55.43008 |
6.549098 |
55.66671 |
7.301097 |
55.66413 |
6.839081 |
55.41397 |
6.012524 |
55.64191 |
6.21944 |
55.88689 |
7.074984 |
54.75292 |
7.934908 |
55.05619 |
6.990477 |
55.15948 |
6.806325 |
54.92125 |
7.230724 |
54.62891 |
5.788167 |
54.68493 |
5.61761 |
54.06684 |
5.728929 |
54.35502 |
5.711939 |
54.16241 |
5.219654 |
54.27668 |
5.367257 |
54.10954 |
5.890024 |
54.08825 |
7.249853 |
53.98721 |
6.442775 |
54.22794 |
6.254034 |
53.70972 |
6.627275 |
54.26056 |
6.446436 |
54.10505 |
6.364463 |
54.14791 |
6.606837 |
54.38265 |
7.350156 |
55.03591 |
6.401467 |
54.62808 |
4.030468 |
54.80471 |
4.21936 |
54.94787 |
3.748936 |
54.91839 |
3.503878 |
54.6622 |
4.081355 |
54.84961 |
3.576916 |
54.7182 |
3.589109 |
54.85014 |
3.072421 |
54.54525 |
3.071072 |
54.48639 |
3.125489 |
54.22224 |
3.183908 |
54.37459 |
3.93243 |
54.0887 |
TI_AVG |
SI_AVG |
5.308657 |
61.55853 |
输入Excel之后可以得到以下结果。图中TI的峰值处出现了画面的突变。SI发生变化的地方视频的场景发生了变化。
雷霄骅
leixiaohua1020@126.com
http://blog.csdn.net/leixiaohua1020
视频特性TI(时间信息)和SI(空间信息)的计算工具:TIandSI-压缩码流版的更多相关文章
- Oracle日期查询:季度、月份、星期等时间信息
--oracle有关时间信息 Select to_char(sysdate,'Q') from dual;--指定日期的季度 Select to_char(sysdate,'MM') from dua ...
- PHP获取日期时间信息
getdate函数 描述:可以获取日期/时间信息 语法:array getdate( [ int timestamp ] ) 返回一个数组 例: Array ( [seconds] => 30 ...
- iOS - 获取音视频文件的Metadata信息
// // MusicInfoArray.h // LocationMusic // // Created by Wengrp on 2017/6/22. // Copyright © 2017年 W ...
- Lucene4.6 把时间信息写入倒排索引的Offset偏移量中,并实现按时间位置查询
有个新的技术需求,需要对Lucene4.x的源码进行扩展,把如下的有时间位置的文本写入倒排索引,为此,我扩展了一个TimeTokenizer分词器,在这个分词器里将时间信息写入 偏移量Offset中. ...
- Java8新特性 - 新时间和日期 API
本地时间和时间戳 主要方法: now:静态方法,根据当前时间创建对象 of:静态方法,根据指定日期/时间创建对象 plusDays,plusWeeks,plusMonths,plusYears:向当前 ...
- ping加上时间信息
一.linux系统ping加时间戳信息 1.ping 加时间信息,然后还要实时保存到一个文件中,那么就与awk结合 ping 115.239.211.112 -c 10 | awk '{ print ...
- 从H264码流中获取视频宽高 (SPS帧) 升级篇
之前写过 <从H264码流中获取视频宽高 (SPS帧)> . 但发现很多局限性,而且有时解出来是错误的. 所以重新去研究了. 用了 官方提供的代码库来解析. 花了点时间,从代码库里单独把解 ...
- 直接将视频文件原码流转换成YUV,输出到屏幕显示
#include "stdafx.h" #define inline _inline#ifndef INT64_C#define INT64_C(c) (c ## LL)#defi ...
- go http 下载视频(TS码流文件)(推荐一个网站学习 go example)
视频 http下载代码 dn.go(注意:代码很ugly,没怎么花时间) 总体感觉特别简单,网上看了下 net/http ,io这2个库的使用, 几分钟就写完了,感觉cpp 在做工具这块 开发效率的 ...
随机推荐
- NOIP 2007树网的核
题目描述 设T=(V, E, W) 是一个无圈且连通的无向图(也称为无根树),每条边到有正整数的权,我们称T为树网(treebetwork),其中V,E分别表示结点与边的集合,W表示各边长度的集合,并 ...
- C++Primer学习——const
Const int size = 512; 在编译的时候,编译器会把用到该变量的地方全部替换成对应的值. const&可以绑定字面值,所以当用常量引用绑定一个常量时,是否可以看成那个值在编译阶 ...
- bzoj3944Sum
3944: Sum Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 5149 Solved: 1385[Submit][Status][Discuss ...
- UVA 1146 Now or later
The Terminal Radar Approach CONtrol (TRACON) controls aircraft approaching and departing when they a ...
- bzoj4710: [Jsoi2011]分特产 组合+容斥
4710: [Jsoi2011]分特产 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 289 Solved: 198[Submit][Status] ...
- 对I/O设备分配的一般策略是什么?
策略是:独享分配.共享分配.虚拟分配 补充:I/O设备的分配算法 1. 先请求先服务 2. 优先级最高者优先
- Python中模块之copy的功能介绍
模块之copy的功能介绍 copy主要分两种: 1.浅拷贝 2.深拷贝 赋值: 在python中赋值算特殊的拷贝,其实赋值可以理解为同一个对象有两个名字,所以当其中一个发生变化,另一个也跟着会变化. ...
- java.lang.NumberFormatException: For input string: " "
原因:这个异常是说,在将字符串""转换为number的时候格式化错误.额,很简单的异常,以前我是写个方法,然后遍历对比不正确的数字或者用正则表达式之类的.现在发现一个很漂亮的方法, ...
- 浏览器本地下拉框查询选择js
首先需要引用jquery-1.7.2.js. 页面下拉框有对应的数据,此下拉框的查询将不与服务器交互.本地下拉框查询.暂不支持通过键盘上下按键和enter键控制 // JavaScript Docum ...
- JAVA 面试基础
经典的Java基础面试题________________________________________________________________________________________ ...