视频传输系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

视频编码的可能性
视频能够压缩的根本原因在于视频数据具有较高的冗余度。压缩 就是消除冗余,主要基于两种技术:统计学和心理视觉。 1).消除统计冗余的基本依据是视频数字化过程在时间和空间上采 用了规则的采样过程。简言之,理想的压缩系统能够动态适应视 频在时间和空间上的变化,所需要的数据量远低于数字化采样所 产生的原始数据。
MPEG-1,MPEG-2
MPEG-1是1991年为工业级标准而设计的,传输速率约1.5Mb/s, 每秒播放30帧或25帧.这个标准主要是针对具有这种数据传输率 的CD-ROM和网络而开发的,用于在CD-ROM上存储数字视频和 在网络上传输数字视频。MPEG-1的实时编码通常需要硬件才能 完成,解码可以用软件来完成。该标准不能提供分级图像编码, 也不能在丢包率高的情况下应用。 MPEG-2是MPEG-l的扩充,它增加了许多新的功能,是一个直接 与数字电视广播有关的高质量图像和声音的编码标准。它提供了 一个较为广泛的压缩比改变范围,以适应各种情况下不同画面质 量、存储容量和带宽的要求。它的传输速率约为3Mbps一10Mbps, 主要用于高清晰度电视(HDTV)及DVD的标准。
视频压缩编码的基本原理
1
预测编码 基本概念 帧内预测编码
2
变换编码 基本概念 K-L变换
3
熵编码
基本概念
变长编码
算术编码
帧间预测编码
运动估计
DCT变换
游程编码
预测编码
预测法是最简单和实用的视频压缩编码方法,这时压缩编码后传 输的并不是像素本身的取样幅值,而是该取样的预测值和实际值 之差。 为什么取像素预测值与实际值之差作为传输的信号?因为大量统 计表明,同一幅图像的邻近像素之间有着相关性,或者说这些像 素值相似。邻近像素之间发生突变或“很不相似”概率很小。而 且同帧图像中邻近行之间对应位置的像素之间也有较强的相关性。 人们可以利用这些性质进行视频压缩编码。
H.264
H.264,同时也是MPEG-4第十部分。 H.264标准的目的是提供与以往其它视频编码标准相比更高的图 像压缩比更好的图像压缩质量.但是,实际上H.264所采用的压缩 思想同H.263和MPEG-4等标准是十分相似的,都包括以下四个 主要步骤: 1)将每个视频帧都分成若干个像素宏块,对视频图像的处理以宏 块为基本处理单元。 2)通过帧内预测对原始宏块进行编码,以减小帧内部的空间冗余, 再对帧内预测后的残差数据进行变换,量化和熵编码(可变长编码 VLC)。
MPEG-4
www.themegallery.com
MPEG-4是一个数据速率很低的多媒体通信标准,特别是 64kbps下的音频、视频压缩,这是为了在标准电话线上传送可 视电话。相对于MPEG的前两个压缩标准,MPEG-4己经不再 是个单纯的视频音额编解码标准,它更多定义的是一种格式和 框架,而不是具体的算法,从而为多媒体数据压缩提供了一个 更广泛的平台。MPEG-4支持的应用包括:因特网多媒体应用、 实时可视通信。例如可视电话、会议电视等:交互式存储媒体 应用,广播电视,远程视频监控等。MPEG-4最大的特点就是 利用很窄的带宽,通过帧重建技术,压缩和传输数据,以求以 最少的数据获得最佳的图像质量。在易受干扰环境下有很强的 鲁棒性,因此特别适合在网络中传输视频数据。
视频编码 H.264:新一代视频压缩编码标准
H.264是国际标准化组织(ISO)和国际电信联盟(ITU)共同 提出的继MPEG4之后的新一代数字视频压缩格式。H.264是 ITU-T以H.26x系列为名称命名的视频编解码技术标准之一。
H.264标准的主要目标是:与其它现有的视频编码标准相比, 在相同的带宽下提供更加优秀的图象质量。通过该标准,在同 等图象质量下的压缩效率比以前的标准(MPEG-2)提高了2倍 左右。
视频采集模块
配置USB摄像头驱动及V4L
采集程序实现过程
视频采集模块
截取视频图像
配置USB摄像头驱动及V4L.
在Linux下,所有外设都被看成是一种特殊的文件,称为设备文件。系 统调用是内核和应用程序之间的接口,而设备驱动程序则是内核和外设之 间的接口。它完成设备的初始化和释放、对设备文件的各种操作和中断 处理等 功能,为应用程序屏蔽了外设硬件的细节,使得应用程序可以像普 通文件一 样对外设进行操作。
2).心理视觉技术主要是针对人类视觉系统极限。人类视觉在对比 度带宽、空间带宽(特别是彩色视觉)、时间带宽等方面存在极限, 而且,这些极限并非相互独立,整体的视觉系统存在上限。例如, 人眼不可能同时察觉到时间和空间的高分辨率。显然,没有必要 表征那些不能被感知的信息,一定程度的压缩损失是人的视觉系 统感知不出来的。
帧内预测:一维线性预测方法 预测值:
其中f(x)为当前像素值,以f(x)为基准,f(x-1)为前一个像素值,f(x-2)为前两个像素值。 把前m个像素值的加权和作为f(x)的预测值。 是预测系数,m 为预测阶数。其预测误 差如下:
为获得最佳预测效果,应使e(x)的均方误差最小,编码效率最高:
帧间预测和运动估计 帧间预测:单向预测,双向预测; 运动估计:在帧间预测编码中,由于活动图 像邻近帧中的景物存在着一定的相关性。因 此,可将活动图像分成若干块或宏块,并设 法搜索出每个块或宏块在邻近帧图像中的位 置,并得出两者之间的空间位置的相对偏移 量,得到的相对偏移量就是通常所指的运动 矢量,得到运动矢量的过程被称为运动估计。
H.264
www.themegallery.com
3)在连续的图像帧中的宏块之间存在着很大的时间相关性,所以 只需编码和传输连续帧之间的变化量。时间预测的主要手段是运 动估计和运动补偿。对任何给定宏块,通过对先前编码的一帧或 几帧内的宏块进行搜索匹配来确定运动矢量,运动矢量则在编码 和解码过程中用来进行宏块的预测。 4)通过对残差数据的编码来进一步减少数据间存在的空间冗余, 残差数据即为原始宏块与预测宏块之间的差值,同样也要经过变 换,量化和熵编码。
视频编码的必要性及编码目标
1.数字化后的视频和音频的信息数据量非常庞大,给存储和网络实时 传输带来困难。特别是视频数据,未经压缩的视频网络传输所需带宽 远远超过网络的承载带宽。只有压缩后的视频,存储时会更方便,传 输时才会减少带宽。因此对数字视频和音频数据进行压缩是很有必要 的。 2.将视频信号在传送前先进行压缩编码,即进行视频源压缩编码, 然后在网络上进行传送,以便节省传送带宽和存储空间。这里有两 个要求: 1) 必须压缩在一定的带宽内,即视频编码器应具有足够的压缩比; 2) 视频信号压缩之后,应保持一定的视频质量。 这个视频质量有两个标准:一个为主观质量,由人从视觉上进行评 定;一个为客观质量,通常用信噪比(S/N)表示。如果不问质量, 一味地压缩,虽然压缩比很高,但压缩后严重失真,显然达不到要 求;反之,如只讲质量,压缩比太小,也不符合要求。
采集程序实现过程
开始
获取设备信息和图像信息
图像参数设定 内存映射mmap VIDEOCAPTURE
No
等待采集完成
No
本缓冲区满 ?
Yes
指向下一个缓冲区 停止视频采集 ?
YesBaidu Nhomakorabea
关闭视频设备
结束
截取视频图像
对视频图像的截取有两种方法: 一种是read()直接读取; 另外一种mmap() 内存映射. Read()通过内核缓冲区来读取数据,该系统调用在驱动中的解决办法就是 用copytouser()函数在内核空间、用户空间的内存空间中互相拷贝。但 是对于像视频应用等大批量的数据,采用拷贝的方法显然会增加时间开销; 而mmap()通过把设备文件映射到内存中,绕过了内核缓冲区,最快的 磁盘访问往往还是慢于最慢的内存访问,所以mmap()方式加速了I/O访问。 另外,mmap()系统调用使得进程之间通过映射同一文件实现共享内存,各 进 程可以像访问普通内存一样对文件进行访问,访问时只需要使用指针而 不用 调用文件操作函数。因为mm印()的以上优点,所以在程序实现中采 用了内存映射方式,即mmap()方式。
Company
LOGO
嵌入式远程视频监控系统
目录
远程视频监控系统的发展状况
视频监控系统结构
嵌入式视频监控系统的开发模式
视频采集模块
基于H.264的视频编码模块
发展状况 视频监控系统的发展经历了三个阶段: 第一个阶段主要是以模拟设备为主的模 拟视频监控系统。 第二个阶段是基于PC或工控机的远程监 控系统。 第三个阶段是基于嵌入式技术的网络监 控系统。
远程视频监控系统结构图
视频监控端
网络传输模块 视频编码模块 视频采集模块
USB摄像头驱动程序
视频系统开发模式
开发模式
先在宿主机上调试 通过后,再移植到 目标板上
直接在目标板上进 行开发
两种开发模式的比较
1.先在宿主机上调试通过后,再移植到目标板上。移 植的工作包括两个方面: 函数库的问题。在程序移植 时可能会有函数未定义的问题。 对于这种问题,一般要求开发者自己编制这些要用到 却又未定义的函数。 这种模式存在一些问题,我们主要介绍第二种方法: 2.直接在目标板上进行开发。将宿主机和目标板通 过以太网连接,在宿主PC机上运行minicom作为目标 板的显示终端,在目标板上通过NFS(网络文件系统) 来mount宿主机硬盘,让应用程序直接运行在目标板 上进行调试
Company Logo
H.264 的技术亮点
www.themegallery.com
1)分层设计 H.264的算法在概念上可以分为两层:视频编码层 负责高效的视频内容表示,网络提取层(NAL:Network Abstraction Layer)负责以网络所要求的恰当的方式对数据进行打 包和传送。在VCL和NAL之间定义了一个基于分组方式的接口, 打包和相应的信令属于NAL的一部分。这样,高编码效率和网络 友好性的任务分别由VCL和NAL来完成。 2)高精度、多模式运动估计 在H.264中,允许编码器使用多于一帧的先前帧用于运动估计,这 就是所谓的多帧参考技术。例如2帧或3帧刚刚编码好的参考帧, 编码器将选择对每个目标宏块能给出更好的预测帧,并为每一宏 块指示是哪一帧被用于预测。 3).面向IP和无线环境 H.264 草案中包含了用于差错消除的工具,便于压缩视频在误码, 丢包多发环境中传输,如移动信道或IP信道中传输的健壮性。
码。
正交变换:K-L变换 游程编码 DCT变换
熵编码 用信源的统计特性进行码率压缩的编码就称 为熵编码,也叫统计编码。
视频编码常用的有两种:变长编码和算术编 码。
视频压缩标准
从九十年代开始,国际上先后制定了一系列视频图像编码标准。 目前从事视频压缩标准制定的国际标准组织主要有国际电信联盟 (ITU-T)的视频编码专家组VCEG和国际标准化组织(ISO)的运动 图像专家组MPEG。为了对视频数据进行压缩编码,国际标准化 组织(ISO)已制定出一系列压缩标准,主要有H标准(如H.261, H.263等)、JPEG和MPEG等系列标准.但被普遍认可并成为权威 的还是MPEG技术。 MPEG系列目前常用有三个MPEG标准:MPEG-1(1991), MPEG-2(1994)和MPEG-4(1999)。 H.264视频压缩标准正式公布于2003年。
变换编码
绝大多数图像都有一个共同的特征:平坦区域和内容缓慢变化区 域占据一幅图像的大部分,而细节区域和内容突变区域则占小部 分。也可以说,图像中直流和低频区占大部分,高频区占小部分。 这样,空间域的图像变换到频域或所谓的变换域,会产生相关性 很小的一些变换系数,并可对其进行压缩编码,即所谓的变换编
Linux系统中的视频子系统Video4Linux为视频应用程序提供了一套统一 的API,视频应用程序通过标准的系统调用即可操作各种不同的视频捕获 设 备。Video4Linux向虚拟文件系统注册视频设备文件,应用程序通过操 作视 频设备文件实现对视频设备的访问。在嵌入式Linux的内核定制和 编译阶段, 已经加入了对V4L模块以及OV511设备的支持,运行Linux下的 视频图像 采集程序,可以通过V4L提供的编程接口(API)从OV5ll设备中获 取图像帧.
相关文档
最新文档