(视频分辨率介绍)混淆的概念:SIF与CIF、4CIF与D1
《混淆的概念:SIF与CIF、4CIF与D1》
在目前国内监控行业中,涉及视频采集卡、压缩卡、硬盘录像机(DVR)等产品时,经常会遇到诸如SIF、CIF、4CIF、D1等等分辨率标准名词。而在实际上,由于安防行业缺乏行业规范和标准,业内很多名词多来源于其它行业的标准,因此CIF、SIF、D1等几个词不但来源不同,甚至连名词本身都已经被讹以传讹而相互混淆,令人一头雾水。
若追溯源头来看,安防视频监控行业源于闭路电视(CCTV),因此标准一直沿用的是电视行业的SIF系列标准和录像机行业的D1标准,而在国内安防业内,SIF被讹以传讹成了CIF,D1也经常与4CIF、4SIF等概念混淆。一个典型的现象是,采用CIF和D1做为关键字去搜索视频采集卡、压缩卡、DVR等产品,搜到的几乎都是国内产品及国产外销产品,而用SIF做关键字才能搜到同类的国外产品。下面分别对CIF、SIF及D1三个来源不同的系列标准做简单介绍。
一、CIF
CIF(Common Intermediate Format,通用媒介格式)也称为FCIF(FullCIF),是一种用于规范YCbCr色差分量视频信号的像素分辨率的标准格式,常用于电信领域的视频会议系统。
CIF格式是国际电信联盟(ITU)在1990年推出的的H.261视频编码标准(ITU-TH.261)中首次被定义的一种格式标准(后续H.263对CIF系列标准进一步完善),其设计目的是为了便于与电视行业的NTSC和PAL两种视频制式标准对接(【注】SECAM制式与PAL制式差异很小),推动电信领域和电视领域之间的互联互通。
为了便于和PAL和NTSC两种制式进行转换,由于视频尺寸变换时“缩小”要比“放大”处理起来简单,因此CIF格式定义时采用了最大兼容原则(二者相比取较大者),在分辨率上采用与PAL制的SIF(SourceInput Format)格式相同的352×288,在帧率上则采用与NTSC制相同的29.97fps(30000帧/1001秒),色彩空间编码则采用YCbCr 4:2:0标准。
QCIF含义为"Quarter CIF",即四分之一CIF的意思,其分辨率的宽和高都是CIF格式的一半;SQCIF含义为"SubQuarterCIF",其分辨率的宽为CIF的4/11,高为CIF的1/3,像素数为CIF的4/33;类似的格式定义还有4CIF(4×CIF)和16CIF(16×CIF),都是以CIF格式做为基准进行定义。
CIF格式图像尺寸大小之所以确定为352×288,是因为在H.261定义的视频压缩/解压的算法中,采用了基于宏块(大小为16×16像素)的DCT变换(DiscreteCosineTransform,离散余弦变换),实际上CIF格式视频的帧是由22×18个宏块组成,因此每一帧图像的像素数为352×288。
需要注意的是,国际电信联盟(ITU)定义的xCIF系列标准中的所采用的像素都是非正方形像素(像素显示时横纵比为12:11),像素数量横纵比(即存储横纵比)为352:288(即11:9)。因此,当xCIF系列标准视频在正方形像素显示设备(计算器显示器、大部分HDTV高清数字电视)中显示时,需要将画面横向拉长为原来的12/11倍(约为109.1%),分辨率变为384×288(正方形像素),像素数量的横纵比从原来的11:9变为4:3。
【注】“正方形像素”是一个相当重要的概念,涉及到视频的采集、编码/解码、传输、存储、显示整个过程,关于此概念的详细讲解可参见《关于“正方形像素”》一文。
| 格式标准 | 分辨率(非正方形像素) | 分辨率(正方形像素) | 标准帧率(帧/秒) |
| QCIF | 176 × 144 | 192 × 144 | 29.97 fps |
| CIF(FCIF) | 352 × 288 | 384 × 288 | 29.97 fps |
| 4CIF | 704 × 576 | 768 × 576 | 29.97 fps |
| 16CIF | 1408 × 1152 | 1536 × 1152 | 29.97 fps |
二、SIF
动态图像专家组(MPEG)在1992年推出的MPEG-1标准中首次定义了SIF(Source InputFormat,源输入格式),SIF是一种用于数字视频的存储和传输的视频格式,常用于VCD(MPEG-1视频编码)、DVD(MPEG-2的视频编码)和某些视频会议系统中。
由于SIF系列标准主要应用电视行业,因此SIF标准格式分为SIF-525(NTSC制式)和SIF-625(PAL制式和SECAM制式)两种:
(1)525@59.94Hz的SIF格式(SIF-525)用于NTSC制式中,其分辨率为352×240像素,刷新频率(帧率)为29.97fps(帧/秒)
(2)625@50Hz的SIF格式(SIF-625)用于PAL制式和SECAM制式中,其分辨率为352×288像素,刷新频率(帧率)为25fps(帧/秒)
其中SIF-525和SIF-625两种格式都属于非隔行(逐行)标准,此外SIF还有一种隔行版本被称为SIF-I。
SIF格式视频流也被称为MPEG-1 CPB(constrained parametersbitstream,约束参数码流)。与国际电信联盟(ITU)定义的CCIR 601(又名ITU-RBT.601/Rec.601)电视信号数字编码标准相比,SIF可以看为CCIR601格式在帧长、帧宽、帧率和色度上均减半的标准。
动态图像专家组(MPEG)在定义SIF(Source InputFormat)格式标准时参照了国际电信联盟(ITU)定义的CIF格式标准,因此SIF标准格式几乎与CIF标准格式相同,两者的区别在于:SIF格式在NTSC制式(525-line)下为352×240@29.97fps,在PAL/SECAM制式(625-line)下为352×288@25fps;而CIF格式则无制式之分,标准格式固定为352×288@29.97fps(在H.263中帧率标准扩展支持7.49fps、14.99fps、59.94fps等值)。
由于计算机行业广泛采用正方形像素,因此在计算机行业里SIF格式(正方形像素版本)被定义为:分辨率为320×240(相当于计算机行业的QVGA标准)或者384×288像素,帧率则可以是计算机支持的任意刷新频率(60Hz、75Hz、85Hz、……)。
【注】“正方形像素”概念同上,详细讲解可参见http://www.microjie.com/index.php/professional-knowledge/82-standards-parterns。
| 格式标准 | 分辨率(非正方形像素) | 分辨率(正方形像素) | 标准帧率(帧/秒) |
| SIF@NTSC制式 | 352 × 240 | 320 × 240 | 29.97 fps |
| SIF@PAL/SECAM制式 | 352 × 288 | 384 × 288 | 25 fps |
| 4SIF@NTSC制式 | 704 × 480 | 640 × 480 | 29.97 fps |
| 4SIF@PAL/SECAM制式 | 704 × 576 | 768 × 576 | 25 fps |
三、D1(又称为D-1、Sony'sD1)
D1是一种专业数字视频格式标准,主要应用于数字广播电视和录像行业。D1标准的产生在CIF和SIF标准之前,早于20世纪80年代就在Sony(索尼)和Bosch-BTS(博世-BTS)公司的DVR(数字录像机)产品中被首次使用。1986年,在电影电视工程师协会(SMPTE)工程师委员会的努力下,D1被采用为SMPTE标准,主要在DVTR(数字磁带录像机)产品中使用,是视频录像行业中的第一种主流格式。
D1采用非压缩数字复合视频,颜色编码采用CCIR 601(于1981年定义)的YCbCr4:2:2格式,音频采用PCM格式;音频和视频被同步存储在19mm(3/4")的盒式录像带上,D1录像带最大存储时间为94分钟。D1的分辨率在NTSC制式下定义为720×486(非正方形像素),在PAL/SECAM制式下为720×576(非正方形像素)。早期的D1系统复杂且操作困难,虽然后来迅速稳定下来,但就当时(1986年)来说,D1以其华丽的画质(相当于后来的SD,即标准清晰度画质)、价格的昂贵、配置要求高、升级成本高等因素而著称。
| 格式标准 | 分辨率(非正方形像素) | 分辨率(正方形像素) | 标准帧率(帧/秒) |
| D1@NTSC制式 | 720 × 486 | 720 × 540 | 29.97 fps |
| D1@PAL/SECAM制式 | 720 × 576 | 768 × 576 | 25 fps |
四、CIF、SIF、D1三种系列标准对比
| 格式标准 | 标准化时间 | 标准化组织 | 应用领域 |
| D1 | 1986年 | 电影电视工程师协会(SMPTE) | 广播电视、电影、录像领域 |
| CIF | 1990年 | 国际电信联盟(ITU) | 电信、网络视频领域 |
| SIF | 1992年 | 动态图像专家组(MPEG) | 多媒体领域(影视、VCD、DVD等) |
在实际应用中,最容易混淆的三种格式为4CIF、PAL制式的4SIF,以及PAL制式的D1,这三种格式的主要区别如下:
(1)应用领域不同;
(2)制定的标准化组织不同;
(3)刷新频率(帧率)定义不同;
(4)在非正方形像素模式下分辨率不同。
| 格式标准 | 分辨率(非正方形像素) | 分辨率(正方形像素) | 标准帧率(帧/秒) |
| 4CIF | 704 × 576 | 768 × 576 | 29.97fps |
| 4SIF@PAL/SECAM制式 | 704 × 576 | 768 × 576 | 25 fps |
| D1@PAL/SECAM制式 | 720 ×576 | 768 × 576 | 25 fps |
(视频分辨率介绍)混淆的概念:SIF与CIF、4CIF与D1的更多相关文章
- 音视频处理基础知识扫盲:数字视频YUV像素表示法以及视频帧和编解码概念介绍
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...
- C#多线程之旅(1)——介绍和基本概念
原文地址:C#多线程之旅(1)——介绍和基本概念 C#多线程之旅目录: C#多线程之旅(1)——介绍和基本概念 C#多线程之旅(2)——创建和开始线程 C#多线程之旅(3)——线程池 C#多线程之旅( ...
- 关于 Delphi 中的Sender和易混淆的概念(转)
/////////////////////////////////////////////////////// Delphi 中Sender对象的定义///////////////////////// ...
- TensorFlow入门,基本介绍,基本概念,计算图,pip安装,helloworld示例,实现简单的神经网络
TensorFlow入门,基本介绍,基本概念,计算图,pip安装,helloworld示例,实现简单的神经网络
- Office 365系列(二) -一些比较容易混淆的概念
上一篇比较简明地说了Office 365怎么注册使用,在继续探讨之前先讨论一些比较容易混淆的概念! 1. Office 365: 是微软云计划的一部分包括Exchange online, Lync ...
- ZooKeeper入门实战教程(一)-介绍与核心概念
1.ZooKeeper介绍与核心概念1.1 简介ZooKeeper最为主要的使用场景,是作为分布式系统的分布式协同服务.在学习zookeeper之前,先要对分布式系统的概念有所了解,否则你将完全不知道 ...
- 使用深度学习的超分辨率介绍 An Introduction to Super Resolution using Deep Learning
使用深度学习的超分辨率介绍 关于使用深度学习进行超分辨率的各种组件,损失函数和度量的详细讨论. 介绍 超分辨率是从给定的低分辨率(LR)图像恢复高分辨率(HR)图像的过程.由于较小的空间分辨率(即尺寸 ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_1-1.SpringBoot整合微信支付开发在线教育视频站点介绍
笔记 第一章项目介绍和前期准备 1.SpringBoot整合微信支付开发在线教育视频站点介绍 简介: 课程介绍,和小D课堂在线教育项目搭建开发 1.课程大纲介绍 2.微信支付项 ...
- WebRTC视频分辨率设置
前面我们能够打开摄像头.getUserMedia()时会传入参数,在参数里我们可以指定宽高信息.通过宽高参数控制输出的视频分辨率. html 在页面上摆放一些元素,下面是主要部分 <div id ...
随机推荐
- Java 面试题经典 77 问(含答案)!
金三银四了,3月底,4月初,找工作换单位的黄金时期.4月初将会有有一大批职场人士流动... 作为Java开发码农的你是不是也在蠢蠢欲动,或者已经搞了几轮车轮战了? 我们为大家准备了 77 道经典 Ja ...
- 14.data.js
dict_data = { "_id":1, name:"王五", age:55, gender:true } db.stu.insert(dict_data) ...
- <Python基础>集合的基本操作
#小知识点:返回对象的内存地址 i,j = 1,2 print(id(i),id(j)) #集合的基本操作, #相当于没有键值对的字典,里面的元素是无序且不重复的 #一般写法 s = set({1,2 ...
- Mid-Atlantic 2008 Lawrence of Arabia /// 区间DP oj21080
题目大意: 输入n,m 输入n个数 将n个数切割m次分为m+1段,使得各段的Strategic Value总和最小 一组数a b c d的SV值为 a*b + a*c + a*d + b*c + b* ...
- Spring 泛型依赖注入(3)
BaseService<T>:有RoleService和UserService两的子类 BaseRepepositry<T>:有UserRepository和RoleRepos ...
- 小程序跳转传参参数值为url时参数丢失
通过先encodeURIComponent,取到值以后再decodeURIComponent,拼接参数正常传递 A页面 switch: function (e) { var aa = 'UNNZVUf ...
- Python3.6爬虫+Djiago2.0+Mysql --运行djiago环境
1.安装djiago 模块 pip install Django --默认安装最新的 安装完成以后可以python -m pip list 查看模块是否安装 2.创建项目及app 及生成目录 备注 ...
- 你知道的和不知道的sass
关于sass,大多数人的认识一个写css的工具而已 其实就是的 但是这个工具的威力你发挥了多少呢... 以下全部都是干货,希望你能用在自己的项目里 定义集合 我们通常是这么定义变量的 $warning ...
- Android基础控件ProgressBar进度条的使用
1.简介 ProgressBar继承与View类,直接子类有AbsSeekBar和ContentLoadingProgressBar, 其中AbsSeekBar的子类有SeekBar和RatingBa ...
- SpringBoot 04_热部署
热部署应用环境 IDEA2017.2 + MAVEN3.5 + SpringBoot1.5.6 热部署说明 1. devtools会监听classpath下的文件变动,并且会立即重启应用(发生在保存时 ...