视频特性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 在做工具这块 开发效率的 ...
随机推荐
- bzoj 1558: [JSOI2009]等差数列
Description Solution 把原数组变为差分数组,然后剩下的就十分显然了 区间查询用线段树维护 修改操作就是区间加法和两个单点修改 一个等差数列实际上就是 开头一个数字+数值相等的一段 ...
- NOIWC颓废记
NOIWC大概就干了3件事情:吃.睡.浪. 吃: 目测绍兴一中的饭比二中的好吃多了,每天都有挺多的肉菜,还有一些甜品,而且是自助,不错的,但是一个不好的是排队时间太长了,于是我这么珍惜时间急着回宿舍的 ...
- TOJ 数据结构实验--静态顺序栈
描述 创建一个顺序栈(静态),栈大小为5.能够完成栈的初始化.入栈.出栈.获取栈顶元素.销毁栈等操作. 顺序栈类型定义如下: typedef struct { int data[Max]; i ...
- CentOS7快速配置nginx node mysql8.0
目录: (一)基础准备 (二)安装node (三)安装nginx (四)安装mySql8.0 (五)整体配置 (六)安装PM2守护进程 (一)基础准备1.1 概述 服务器操作系统为 centos7.4 ...
- URLconnection
URLconnection 开发中最常用的两种网络请求: 1.标准Java接口(java.NET) --HttpURLConnection,可以实现简单的基于URL请求.响应功能: 2.Apache ...
- 用JavaScript按一定格式解析出URL 串中所有的参数
1.先看看location对象 2.其中的search属性就获取当前URL的查询部分(问号?之后的部分) 3.改造location.search 比如当前URL为:https://www.hao123 ...
- rhel7 启动网络
我装的是rhel7 服务器版本(在virtualbox虚拟机里),安装后默认不启动网络,另外还有很多命令也不能用,比如ifconfig, yum-config-manager等. 先解决网络问题: 切 ...
- python解析json文件之简介
一.JSON简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于JavaScript(Standard ECMA-262 3rd Edition ...
- 无忧代理免费ip爬取(端口js加密)
起因 为了训练爬虫技能(其实主要还是js技能-),翻了可能有反爬的网站挨个摧残,现在轮到这个网站了:http://www.data5u.com/free/index.shtml 解密过程 打开网站,在 ...
- 牛客网编程练习之PAT乙级(Basic Level):1033 害死人不偿命的(3n+1)猜想
3n+1水题.... AC代码: import java.util.Scanner; /** * @author CC11001100 */ public class Main { public st ...