❶ image segmentation摘要翻译=.=
颜色的目标图像分割是仍然把图像分成均匀的地区。目标提取、目标识别的统整与分裂是典型的应用程序,使用压缩分割为低层仍然图像处理。摘要提出了一种新的方法,色彩分割。该算法把图像分成均匀的地区被当地阈值。他们的数量自适应阈值,导出了一个自动过程,是考虑到当地的信息。首先,分水岭算法的应用。其结果是作为一个初始化的下一步,是融合过程中迭代。在迭代过程中,区域合并和当地的阈值。一个接一个的阈值确定不同时期的历史过程。每个阈值进行局部信息和其周围地区。任何统计信息输入图像是无法得到。该算法是可靠的,具有较强的鲁棒性,发现不同类型的图像。
图像分割的图像重叠区域的划分成…一个地区被定义为一种一元化的连接与尊重,选定一个像素财产有几种方法可以确定的一个区域,是基于一种特定的目标分割过程例如,它可以用色,灰色层次,纹理、运动、深度的层次,等之间的重叠
地区是不被允许的,因此,每个像素只属于一个地区两个相邻区域应该融合的新组合区是均匀的. 因此,每一个地区预计在尽可能大在它的某些特性然后,总数量的地区就减少了。
❷ MATLAB 分水岭分割算法
其实,这涉及到命令和算法,单一的命令往往不能解决所有的问题,要有前处理或后处理,才能达到目的。另外,也说明,某个命令应该升级或更新了。所以,watershed这个命令,单用达不到所期望的效果,只有加上预处理才行。
❸ OpenCV 如何进行二值图像的分水岭算法
没用过。不过从程序看,处理彩色图像先要转成灰色图像,处理完再转回彩色。转换函数是cvCvtColor(...),参数CV_BGR2GRAY 是RGB到grey, 参数 CV_GRAY2BGR 是grey 到RGB.
处理结果是彩色的,则转灰色就是了:
cvCvtColor( inputImg, grayImg, CV_BGR2GRAY);
❹ matlab图像方面的问题
我把正确的给你传过去了,不懂在追问我。
❺ 水文分析系统怎么下手
水文分析
水文分析是
DEM
数据应用的一个重要方面。利用
DEM
生成的集水流域和水流网络,
成为大多数地表水文分析模型的主要输入数据。
表面水文分析模型研究与地表水流有关的各
种自然现象例如洪水水位及泛滥情况,
划定受污染源影响的地区,
预测当某一地区的地貌改
变时对整个地区将造成的影响等。
基于
DEM
地表水文分析的主要内容是利用水文分析工具提取地表水流径流模型的水流
方向、汇流累积量、水流长度、河流网络(包括河流网络的分级等)以及对研究区的流域进
行分割等。
通过对这些基本水文因子的提取和分析,
可再现水
流的流动过程,最终完成水文分析过程。
本章主要介绍
ArcGIS
水文分析模块的应用。
ArcGIS
提供
的水文分析模块主要用来建立地表水的运动模型,
辅助分析地
表水流从哪里产生以及要流向何处,
再现水流的流动过程。
同
时,
通过水文分析工具的应用,
有助于了解排水系统和地表水
流过程的一些基本概念和关键过程。
ArcGIS
将水文分析中的地表水流过程集合到
ArcToolbox
里,如图
11.1
所示。主要包括水流的地表模拟过程中的水流
方向确定、
洼地填平、
水流累计矩阵的生成、
沟谷网络的生成
以及流域的分割等。
本章
1
至
5
节主要是依据水文分析中的水文因子的提取过
程对
ArcGIS
中的水文分析工具逐一介绍。文中所用的
DEM
数据在光盘中
chp11
文件夹下的
tutor
文件夹里面,每个计算
过程以及每一节所产生的数据存放在
tutor
文件夹的
result
文件
夹里面,
文件名与书中所命名相同,
读者可以利用该数据进行
参照练习。本章最后一节还提供了三个水文分析应用的实例。
9.1
无洼地
DEM
生成
DEM
一般被认为是比较光滑的地形表面的模拟,但是由于内插的原因以及一些真实地
形(如喀斯特地貌)的存在,使得
DEM
表面存在着一些凹陷的区域。这些区域在进行地表
水流模拟时,
由于低高程栅格的存在,
使得在进行水流流向计算时在该区域得到不合理的或
错误的水流方向。因此,在进行水流方向的计算之前,应该首先对原始
DEM
数据进行洼地
填充,得到无洼地的
DEM
。
洼地填充的基本过程是先利用水流方向数据计算出
DEM
数据中的洼地区域,
然后计算
出这些的洼地区域的洼地深度,最后以这些洼地深度为参考而设定填充阈值进行洼地填充。
9.1.1
水流方向提取
水流方向是指水流离开每一个栅格单元时的指向。
在
ArcGIS
中通过
将中心栅格的
8
个邻域栅格编码,
水流方向便可由其中的某一值来确定,
图
11.2
水流流向编码
图
11.1 ArcToolBox
中的
水文分析模块
栅格方向编码如图
11.2
所示。
例如:如果中心栅格的水流流向左边,则其水流方向被赋值为
16
。输出的方向值以
2
的幂值指定是因为存在栅格水流方向不能确定的情况,
此时需将数个方向值相加,
这样在后
续处理中从相加结果便可以确定相加时中心栅格的邻域栅格状况。
水流的流向是通过计算中心栅格与邻域栅格的最大距离权落差来确定。
距离权落差是指
中心栅格与邻域栅格的高程差除以两栅格间的距离,
栅格间的距离与方向有关,
如果邻域栅
格对中心栅格的方向值为
2
、
8
、
32
、
128
,则栅格间的距离为
2
倍的栅格大小,否则距离
为
1
。
ArcGIS
中的水流方向是利用
D8
算法(最大距离权落差)来计算水流方向的。具体计
算步骤如下:
1.
在
ArcMap
中单击
ArcToolbox
图标,启动
ArcToolbox
;
2.
展开
Spatial Analysis Tools
工具箱,打开
Hydrology
工具集;
3.
双击
Flow Direction
工具,弹出(如图
11.3
所示)水流方向(
Flow Direction
)
计算对话框;
(
1
)
I
nput surface data
文本框中选择输入的
DEM
数据:
dem
。
(
2
)
在
Output flow direction raster
文本框中
命名计算出来的水流方向文件名为
flowdir
,并选择保存路径;
(
3
)
若
选
中
Force
all
edge
cells
to
flow
outward(Optional)
前的复选框,指所有
在
DEM
数据边缘的栅格的水流方向全
部是流出
DEM
数据区域。默认为不选择。这一步为可选步骤;
(
4
)
输
出
drop
raster
。
drop
raster
是该栅格在其水流方向上与其临近的栅格之间的高程差与
距离的比值,
以百分比的形式记录,
它反映了在整个区域中最大坡降的分布情况。
这一
步为可选步骤;
(
5
)
单
击
OK
按钮,完成操作。按钮,完成操作。计算出的水流方向数据结果如图
11.4
所
示。
图
11.3
水流方向
Flow Direction
计算对话框
9.1.2
洼地计算
洼地区域是水流方向不合理的地方,
可以通过水流方向来判断哪些地方是洼地,
然后对
洼地填充。
但是,
并不是所有的洼地区域都是由于数据的误差造成的,
有很多洼地是地表形
态的真实反映。
因此,在进行洼地填充之前,
必须计算洼地深度,
判断哪些地区是由于数据
误差造成的洼地而哪些地区又是真实的地表形态,
然后在洼地填充的过程中,
设置合理的填
充阈值。
1.
洼地提取
(
1
)
双
击
Hydrology
工具集中的
Sink
工具,
弹出洼地计算对话框,如图
11.5
所示;
(
2
)
在
Input flow direction raster
文本框中,
选择水流方向数据
flowdir
;
(
3
)
在
Output raster
文本框中,选择存放的
路径以及重新命名输出文件为
sink
;
图
11.4
利用
Flow Direction
工具计算出来的水流方向图
图
11.5
洼地计算对话框
(
4
)
单
击
OK
按钮,完成操作。计算结果如图
11.6
所示,深色的区域是洼地。
2.
洼地深度计算
(
1
)
双
击
Hydrology
工具集中的
Watershed
工具,弹出流域计算对话框,如图
11.7
所示,
它用来计算洼地的贡献区域;
(
2
)
在
Input flow direction raster
文本框中
选择水流方向数据
flowdir
,在
Input
raster or feature pour point
文本框中选
择洼地数据
sink
,在
pour
point
field
文本框中选择
value
;
(
3
)
在
Output
raster
文本框中设置输出数
据的名称为
watershsink
;
(
4
)
单
击
OK
按钮,完成操作。计算出的
洼地贡献区域如图
11.8
所示;
图
11.7
洼地贡献区域计算对话窗口(
watershed
)
图
11.6
计算出来的洼地区域
(
5
)
计
算每个洼地所形成的贡献区域的最低高程;
1
)
打开
Spatial Analysis Tools
工具箱中
Zonal
工具集,双击
Zonal Statistic
工具,弹出
如图
11.9
所示的分区统计对话框;
2
)
在
Input raster or feature zonal data
文本框中,选择洼地贡献区域数据
watershsink
;
3
)
在
Input value raster
文本框中选择
dem
作为
value raster
;
4
)
在
Output raster
文本框中将输出数
据文件命名为
zonalmin
,存放路径
保持不变;
5
)
在统计类型选择的下拉菜单中选
择最小值(
MINIMUM
)作为统计
类型;
6
)
单击
OK
按钮,完成操作。
(
6
)
计
算每个洼地贡献区域出口的最低高程即洼地出水口高程;
1
)
打开
Spatial Analysis Tools
工具箱中
Zonal
工具集,双击
Zonal Fill
工具,弹出如图
11.10
所示的
Zone Fill
对话框;
2
)
在
Input zone raster
文本框中选择
watershsink
,在
Input weight raster
文本框中选择
dem
,在
Output raster
文本框中将输出数据命名改为
zonalmax
;
3
)
单击
OK
按钮,完成操作。
(
7
)
计
算洼地深度。
图
11.8
计算出来的洼地贡献区域
图
11.9
分区统计对话框
❻ 帮帮我 我不知道分水岭算法在图像分割中的应用…… 代码,还有别的帮帮我
clear,clc
%三种方法进行分水岭分割
%读入图像
filename='sar1.bmp';
f=imread(filename);
Info=imfinfo(filename);
if Info.BitDepth>8
f=rgb2gray(f);
end
figure,mesh(double(f));%显示图像,类似集水盆地
%方法1:一般分水岭分割,从结果可以看出存在过分割问题
b=im2bw(f,graythresh(f));%二值化,注意应保证集水盆地的值较低(为0),否则就要对b取反
d=bwdist(b); %求零值到最近非零值的距离,即集水盆地到分水岭的距离
l=watershed(-d); %matlab自带分水岭算法,l中的零值即为风水岭
w=l==0; %取出边缘
g=b&~w; %用w作为mask从二值图像中取值
figure
subplot(2,3,1),imshow(f);
subplot(2,3,2),imshow(b);
subplot(2,3,3),imshow(d);
subplot(2,3,4),imshow(l);
subplot(2,3,5),imshow(w);
subplot(2,3,6),imshow(g);
%方法2:使用梯度的两次分水岭分割,从结果可以看出还存在过分割问题(在方法1的基础上改进)
h=fspecial('sobel');%获得纵方向的sobel算子
fd=double(f);
g=sqrt(imfilter(fd,h,'replicate').^2+imfilter(fd,h','replicate').^2);%使用sobel算子进行梯度运算
l=watershed(g);%分水岭运算
wr=l==0;
g2=imclose(imopen(g,ones(3,3)),ones(3,3));%进行开闭运算对图像进行平滑
l2=watershed(g2);%再次进行分水岭运算
wr2=l2==0;
f2=f;
f2(wr2)=255;
figure
subplot(2,3,1),imshow(f);
subplot(2,3,2),imshow(g);
subplot(2,3,3),imshow(l);
subplot(2,3,4),imshow(g2);
subplot(2,3,5),imshow(l2);
subplot(2,3,6),imshow(f2);
%方法3:使用梯度加掩模的三次分水岭算法(在方法2的基础上改进)
h=fspecial('sobel');%获得纵方向的sobel算子
fd=double(f);
g=sqrt(imfilter(fd,h,'replicate').^2+imfilter(fd,h','replicate').^2);%使用sobel算子进行梯度运算
l=watershed(g);%分水岭运算
wr=l==0;
rm=imregionalmin(g); %计算图像的区域最小值定位,该函数仅仅是用来观察为何分水岭算法产生这么多集水盆地
im=imextendedmin(f,2);%上面仅是产生最小值点,而该函数则是得到最小值附近的区域,此处的附近是相差2的区域
fim=f;
fim(im)=175; %将im在原图上标识出,用以观察
lim=watershed(bwdist(im));%再次分水岭计算
em=lim==0;
g2=imimposemin(g,im|em);%在梯度图上标出im和em,im是集水盆地的中心,em是分水岭
l2=watershed(g2); %第三次分水岭计算
f2=f;
f2(l2==0)=255; %从原图对分水岭进行观察
figure
subplot(3,3,1),imshow(f);
subplot(3,3,2),imshow(g);
subplot(3,3,3),imshow(l);
subplot(3,3,4),imshow(im);
subplot(3,3,5),imshow(fim);
subplot(3,3,6),imshow(lim);
subplot(3,3,7),imshow(g2);
subplot(3,3,8),imshow(l2)
subplot(3,3,9),imshow(f2);
❼ matlab中面积阈值算法是什么跪求!!!!谢谢了!!!
第一类是阈值方法,这种方法是根据图像灰度值得分布特性确定某个阈值来进行图像分割...MATLAB图像处理工具箱中的watershed函数可以用于显示分水岭算法。
❽ MP4到底是代表哪几种视频格式呀!真是急死了,没有人能说清楚吗谢谢!
自己找找相关的基础文章看看吧,没什么好急的,学知识要主动才行。mpeg4压缩方案包含很多种编码方式的。
MPEG全称是Moving Pictures Experts Group,它是“动态图象专家组”的英文缩写,该专家组成立于1988年,致力于运动图像及其伴音的压缩编码标准化工作,原先他们打算开发MPEG1、MPEG2、MPEG3和MPEG4四个版本,以适用于不同带宽和数字影像质量的要求。
目前,MPEG1技术被广泛的应用于VCD,而MPEG2标准则用于广播电视和DVD等。MPEG3最初是为HDTV开发的编码和压缩标准,但由于MPEG2的出色性能表现, MPEG3只能是死于襁褓了。而我们今天要谈论的主角——MPEG4于1999年初正式成为国际标准。它是一个适用于低传输速率应用的方案。与MPEG1和MPEG2相比,MPEG4更加注重多媒体系统的交互性和灵活性。下面就让我们一起进入多彩的MPEG4世界。
MPEG4的技术特点
MPEG1、MPEG2技术当初制定时,它们定位的标准均为高层媒体表示与结构,但随着计算机软件及网络技术的快速发展,MPEG1.MPEG2技术的弊端就显示出来了:交互性及灵活性较低,压缩的多媒体文件体积过于庞大,难以实现网络的实时传播。而MPEG4技术的标准是对运动图像中的内容进行编码,其具体的编码对象就是图像中的音频和视频,术语称为“AV对象”,而连续的AV对象组合在一起又可以形成AV场景。因此,MPEG4标准就是围绕着AV对象的编码、存储、传输和组合而制定的,高效率地编码、组织、存储、传输AV对象是MPEG4标准的基本内容。
在视频编码方面,MPEG4支持对自然和合成的视觉对象的编码。(合成的视觉对象包括2D、3D动画和人面部表情动画等)。在音频编码上,MPEG4可以在一组编码工具支持下,对语音、音乐等自然声音对象和具有回响、空间方位感的合成声音对象进行音频编码。
由于MPEG4只处理图像帧与帧之间有差异的元素,而舍弃相同的元素,因此大大减少了合成多媒体文件的体积。应用MPEG4技术的影音文件最显着特点就是压缩率高且成像清晰,一般来说,一小时的影像可以被压缩为350M左右的数据,而一部高清晰度的DVD电影, 可以压缩成两张甚至一张650M CD光盘来存储。对广大的“平民”计算机用户来说, 这就意味着, 您不需要购置 DVD-ROM就可以欣赏近似DVD质量的高品质影像。而且采用MPEG4编码技术的影片,对机器硬件配置的要求非常之低,300MHZ 以上CPU,64M的内存和一个 8M显存的显卡就可以流畅的播放。在播放软件方面,它要求也非常宽松,你只需要安装一个 500K左右的 MPEG4 编码驱动后,用 WINDOWS 自带的媒体播放器就可以流畅的播放了(下面我们会具体讲到)。
视频编码研究与MPEG标准演进
人类获取的信息中70%来自于视觉,视频信息在多媒体信息中占有重要地位;同时视频数据冗余度最大,经压缩处理后的视频质量高低是决定多媒体服务质量的关键因素。因此数字视频技术是多媒体应用的核心技术,对视频编码的研究已成为信息技术领域的热门话题。
视频编码的研究课题主要有数据压缩比、压缩/解压速度及快速实现算法三方面内容。以压缩/解压后数据与压缩前原始数据是否完全一致作为衡量标准,可将数据压缩划分为无失真压缩(即可逆压缩)和有失真压缩(即不可逆压缩)两类。
传统压缩编码建立在仙农信息论基础之上的,以经典集合论为工具,用概率统计模型来描述信源,其压缩思想基于数据统计,因此只能去除数据冗余,属于低层压缩编码的范畴。
伴随着视频编码相关学科及新兴学科的迅速发展,新一代数据压缩技术不断诞生并日益成熟,其编码思想由基于像素和像素块转变为基于内容 (content-based)。它突破了仙农信息论框架的束缚,充分考虑了人眼视觉特性及信源特性,通过去除内容冗余来实现数据压缩,可分为基于对象(object-based)和基于语义(semantics-based)两种,前者属于中层压缩编码,后者属于高层压缩编码。
与此同时,视频编码相关标准的制定也日臻完善。视频编码标准主要由ITU-T和ISO/IEC开发。ITU-T发布的视频标准有H.261、 H.262、 H.263、 H.263+、H.263++,ISO/IEC公布的MPEG系列标准有MPEG-1、MPEG-2 、MPEG-4 和MPEG-7,并且计划公布MPEG-21。
MPEG即Moving Picture Expert Group(运动图像专家组),它是专门从事制定多媒体视音频压缩编码标准的国际组织。MPEG系列标准已成为国际上影响最大的多媒体技术标准,其中MPEG-1和MPEG-2是采用以仙农信息论为基础的预测编码、变换编码、熵编码及运动补偿等第一代数据压缩编码技术;MPEG-4(ISO/IEC 14496)则是基于第二代压缩编码技术制定的国际标准,它以视听媒体对象为基本单元,采用基于内容的压缩编码,以实现数字视音频、图形合成应用及交互式多媒体的集成。MPEG系列标准对VCD、DVD等视听消费电子及数字电视和高清晰度电视(DTV&&HDTV)、多媒体通信等信息产业的发展产生了巨大而深远的影响。
MPEG-4视频编码核心思想及关键技术
核心思想
在MPEG-4制定之前,MPEG-1、MPEG-2、H.261、H.263都是采用第一代压缩编码技术,着眼于图像信号的统计特性来设计编码器,属于波形编码的范畴。第一代压缩编码方案把视频序列按时间先后分为一系列帧,每一帧图像又分成宏块以进行运动补偿和编码,这种编码方案存在以下缺陷:
· 将图像固定地分成相同大小的块,在高压缩比的情况下会出现严重的块效应,即马赛克效应;
· 不能对图像内容进行访问、编辑和回放等*作;
· 未充分利用人类视觉系统(HVS,Human Visual System)的特性。
MPEG-4则代表了基于模型/对象的第二代压缩编码技术,它充分利用了人眼视觉特性,抓住了图像信息传输的本质,从轮廓、纹理思路出发,支持基于视觉内容的交互功能,这适应了多媒体信息的应用由播放型转向基于内容的访问、检索及*作的发展趋势。
AV对象(AVO,Audio Visual Object)是MPEG-4为支持基于内容编码而提出的重要概念。对象是指在一个场景中能够访问和*纵的实体,对象的划分可根据其独特的纹理、运动、形状、模型和高层语义为依据。在MPEG-4中所见的视音频已不再是过去MPEG-1、MPEG-2中图像帧的概念,而是一个个视听场景(AV场景),这些不同的AV场景由不同的AV对象组成。AV对象是听觉、视觉、或者视听内容的表示单元,其基本单位是原始AV对象,它可以是自然的或合成的声音、图像。原始AV对象具有高效编码、高效存储与传输以及可交互*作的特性,它又可进一步组成复合AV对象。因此MPEG-4标准的基本内容就是对AV对象进行高效编码、组织、存储与传输。AV对象的提出,使多媒体通信具有高度交互及高效编码的能力,AV对象编码就是MPEG-4的核心编码技术。
MPEG-4不仅可提供高压缩率,同时也可实现更好的多媒体内容互动性及全方位的存取性,它采用开放的编码系统,可随时加入新的编码算法模块,同时也可根据不同应用需求现场配置解码器,以支持多种多媒体应用。
MPEG-4 采用了新一代视频编码技术,它在视频编码发展史上第一次把编码对象从图像帧拓展到具有实际意义的任意形状视频对象,从而实现了从基于像素的传统编码向基于对象和内容的现代编码的转变,因而引领着新一代智能图像编码的发展潮流。
关键技术
MPEG-4除采用第一代视频编码的核心技术,如变换编码、运动估计与运动补偿、量化、熵编码外,还提出了一些新的有创见性的关键技术,并在第一代视频编码技术基础上进行了卓有成效的完善和改进。下面重点介绍其中的一些关键技术。
A. 视频对象提取技术
MPEG-4实现基于内容交互的首要任务就是把视频/图像分割成不同对象或者把运动对象从背景中分离出来,然后针对不同对象采用相应编码方法,以实现高效压缩。因此视频对象提取即视频对象分割,是MPEG-4视频编码的关键技术,也是新一代视频编码的研究热点和难点。
视频对象分割涉及对视频内容的分析和理解,这与人工智能、图像理解、模式识别和神经网络等学科有密切联系。目前人工智能的发展还不够完善,计算机还不具有观察、识别、理解图像的能力;同时关于计算机视觉的研究也表明要实现正确的图像分割需要在更高层次上对视频内容进行理解。因此,尽管MPEG-4 框架已经制定,但至今仍没有通用的有效方法去根本解决视频对象分割问题,视频对象分割被认为是一个具有挑战性的难题,基于语义的分割则更加困难。
目前进行视频对象分割的一般步骤是:先对原始视频/图像数据进行简化以利于分割,这可通过低通滤波、中值滤波、形态滤波来完成;然后对视频/图像数据进行特征提取,可以是颜色、纹理、运动、帧差、位移帧差乃至语义等特征;再基于某种均匀性标准来确定分割决策,根据所提取特征将视频数据归类;最后是进行相关后处理,以实现滤除噪声及准确提取边界。
在视频分割中基于数学形态理论的分水岭(watershed)算法被广泛使用,它又称水线算法,其基本过程是连续腐蚀二值图像,由图像简化、标记提取、决策、后处理四个阶段构成。分水岭算法具有运算简单、性能优良,能够较好提取运动对象轮廓、准确得到运动物体边缘的优点。但分割时需要梯度信息,对噪声较敏感,且未利用帧间信息,通常会产生图像过度分割。
B. VOP视频编码技术
视频对象平面(VOP,Video Object Plane)是视频对象(VO)在某一时刻的采样,VOP是MPEG-4视频编码的核心概念。MPEG-4在编码过程中针对不同VO采用不同的编码策略,即对前景VO的压缩编码尽可能保留细节和平滑;对背景VO则采用高压缩率的编码策略,甚至不予传输而在解码端由其他背景拼接而成。这种基于对象的视频编码不仅克服了第一代视频编码中高压缩率编码所产生的方块效应,而且使用户可与场景交互,从而既提高了压缩比,又实现了基于内容的交互,为视频编码提供了广阔的发展空间。
MPEG-4支持任意形状图像与视频的编解码。对于任意形状视频对象。对于极低比特率实时应用,如可视电话、会议电视,MPEG-4则采用VLBV(Very Low Bit-rate Video,极低比特率视频)核进行编码。
传统的矩形图在MPEG-4中被看作是VO的一种特例,这正体现了传统编码与基于内容编码在MPEG-4中的统一。VO概念的引入,更加符合人脑对视觉信息的处理方式,并使视频信号的处理方式从数字化进展到智能化,从而提高了视频信号的交互性和灵活性,使得更广泛的视频应用及更多的内容交互成为可能。因此VOP视频编码技术被誉为视频信号处理技术从数字化进入智能化的初步探索。
C. 视频编码可分级性技术
随着因特网业务的巨大增长,在速率起伏很大的IP(Internet Protocol)网络及具有不同传输特性的异构网络上进行视频传输的要求和应用越来越多。在这种背景下,视频分级编码的重要性日益突出,其应用非常广泛,且具有很高的理论研究及实际应用价值,因此受到人们的极大关注。
视频编码的可分级性(scalability)是指码率的可调整性,即视频数据只压缩一次,却能以多个帧率、空间分辨率或视频质量进行解码,从而可支持多种类型用户的各种不同应用要求。
MPEG-4通过视频对象层(VOL,Video Object Layer)数据结构来实现分级编码。MPEG-4提供了两种基本分级工具,即时域分级(Temporal Scalability)和空域分级(Spatial Scalability),此外还支持时域和空域的混合分级。每一种分级编码都至少有两层VOL,低层称为基本层,高层称为增强层。基本层提供了视频序列的基本信息,增强层提供了视频序列更高的分辨率和细节。
在随后增补的视频流应用框架中,MPEG-4提出了FGS(Fine Granularity Scalable,精细可伸缩性)视频编码算法以及PFGS(Progressive Fine Granularity Scalable,渐进精细可伸缩性)视频编码算法。
FGS编码实现简单,可在编码速率、显示分辨率、内容、解码复杂度等方面提供灵活的自适应和可扩展性,且具有很强的带宽自适应能力和抗误码性能。但还存在编码效率低于非可扩展编码及接收端视频质量非最优两个不足。
PFGS则是为改善FGS编码效率而提出的视频编码算法,其基本思想是在增强层图像编码时使用前一帧重建的某个增强层图像为参考进行运动补偿,以使运动补偿更加有效,从而提高编码效率。
D. 运动估计与运动补偿技术
MPEG-4采用I-VOP、P-VOP、B-VOP三种帧格式来表征不同的运动补偿类型。它采用了H.263中的半像素搜索(half pixel searching)技术和重叠运动补偿(overlapped motion compensation)技术,同时又引入重复填充(repetitive padding)技术和修改的块(多边形)匹配(modified block (polygon)matching)技术以支持任意形状的VOP区域。
此外,为提高运动估计算法精度,MPEG-4采用了MVFAST(Motion Vector Field Adaptive Search Technique)和改进的PMVFAST(Predictive MVFAST)方法用于运动估计。对于全局运动估计,则采用了基于特征的快速顽健的FFRGMET(Feature-based Fast and Robust Global Motion Estimation Technique)方法。
在MPEG-4视频编码中,运动估计相当耗时,对编码的实时性影响很大。因此这里特别强调快速算法。运动估计方法主要有像素递归法和块匹配法两大类,前者复杂度很高,实际中应用较少,后者则在H.263和MPEG中广泛采用。在块匹配法中,重点研究块匹配准则及搜索方法。目前有三种常用的匹配准则:
(1)绝对误差和(SAD, Sum of Absolute Difference)准则;
(2)均方误差(MSE, Mean Square Error)准则;
(3)归一化互相关函数(NCCF, Normalized Cross Correlation Function)准则。
在上述三种准则中,SAD准则具有不需乘法运算、实现简单方便的优点而使用最多,但应清楚匹配准则的选用对匹配结果影响不大。
在选取匹配准则后就应进行寻找最优匹配点的搜索工作。最简单、最可靠的方法是全搜索法(FS, Full Search),但计算量太大,不便于实时实现。因此快速搜索法应运而生,主要有交叉搜索法、二维对数法和钻石搜索法,其中钻石搜索法被MPEG-4校验模型(VM, Verification Model)所采纳,下面详细介绍。
钻石搜索(DS, Diamond Search)法以搜索模板形状而得名,具有简单、鲁棒、高效的特点,是现有性能最优的快速搜索算法之一。其基本思想是利用搜索模板的形状和大小对运动估计算法速度及精度产生重要影响的特性。在搜索最优匹配点时,选择小的搜索模板可能会陷入局部最优,选择大的搜索模板则可能无法找到最优点。因此DS算法针对视频图像中运动矢量的基本规律,选用了两种形状大小的搜索模板。
· 大钻石搜索模板(LDSP, Large Diamond Search Pattern),包含9个候选位置;
· 小钻石搜索模板(SDSP, Small Diamond Search Pattern),包含5个候选位置。
DS算法搜索过程如下:开始阶段先重复使用大钻石搜索模板,直到最佳匹配块落在大钻石中心。由于LDSP步长大,因而搜索范围广,可实现粗定位,使搜索不会陷于局部最小,当粗定位结束后,可认为最优点就在LDSP 周围8 个点所围菱形区域中。然后再使用小钻石搜索模板来实现最佳匹配块的准确定位,以不产生较大起伏,从而提高运动估计精度。
此外Sprite视频编码技术也在MPEG-4中应用广泛,作为其核心技术之一。Sprite又称镶嵌图或背景全景图,是指一个视频对象在视频序列中所有出现部分经拼接而成的一幅图像。利用Sprite可以直接重构该视频对象或对其进行预测补偿编码。
Sprite视频编码可视为一种更为先进的运动估计和补偿技术,它能够克服基于固定分块的传统运动估计和补偿技术的不足,MPEG-4正是采用了将传统分块编码技术与Sprite编码技术相结合的策略。
MPEG4的应用领域
凭借着出色的性能,MPEG4技术目前在多媒体传输、多媒体存储等领域得到了广泛的应用,下面我们就来看看目前在那些领域MPEG4技术得到了大显伸手的机会。
1、精彩的视频世界
精彩的视频世界是MPEG4技术应用最多也是最为广大朋友所熟悉的的形式。目前它主要以两种形式出现,一种是DIVX-MPEG4影碟(国内市面上已出现,且D版居多),另一种是网上MPEG4电影。
(1)、我们先来说说DIVX-MPEG4影碟,DIVX视频编码技术实际上就是MPEG4压缩技术,它由微软MPEG4V3修改而来,使用的是MPEG4压缩算法,并同时分离视频和音频。它的核心部分便是由DivX对DVD音视频进行压缩,生成Mpeg4视频格式文件(也就是AVI格式)。
小提示:笔者也是经常被朋友所问到:“我看到的MPEG4电影片段明明是avi(扩展名)格式文件,并且Windows的媒体播放器也与之关联,但就是无法播放”。其实, MPEG4并没有确定必须用什么扩展名,它只是一种编码方法而已。使用avi作为扩展名,是一种习惯性的沿用。
在计算机上播放MPEG4影音文件的方法目前有两种:第一种是用诸如DivxPlayer等专门的播放软件来播放;第二种播放方法是安装MPEG4(Divx)插件后,用Windows自带的媒体播放机来播放。
(2)、随着网络技术的不断发展,互联网上的视频流应用也成为了近几年的热门话题。目前,在互联网上比较流行的几种影像格式包括Quicktime、RealPlay以及微软的MediaPlayer等。MPEG4技术出现之后,互联网上又出现了MPEG4格式的电影,不过在观看前,系统会提示你下载最新的MPEG4解码软件。
小提示:大家平时在网上可能经常会看见ASF格式的电影,其实它也是微软公司开发出的一种可以直接在网上观看视频节目的压缩格式。使用的也是MPEG4的压缩算法,但因为它是以网上即时观看电影的视频流格式存在的,所以它的图像质量相对要差一些。
2、低比特率下的多媒体通信,
目前,MPEG4技术已经广泛的应用在如视频电话、视频电子邮件、移动通信、电子新闻等多媒体通信领域。由于这些应用对传输速率要求较低,一般在4.8~64kbit/s之间,分辨率为176×144左右。因此MPEG4技术完全可以充分的利用网络带宽,通过帧重建技术压缩和传输数据,以最少的数据量获得最佳的图像质量。
3、实时多媒体监控。
多媒体监控领域原来一直是MPEG1技术担当重任,但近些年来,它们也是“城头变换大王旗”了。由于MPEG4压缩技术原本是一种适用在低带宽下进行信息交换的音视频处理技术,它的特点是可以动态的侦测图像各个区域变化,基于对象的调整压缩方法可以获得比MPEG1更大的压缩比,使压缩码流更低。因此,尽管MPEG4技术一开始并不是专为视频监控压缩领域而开发的,但它高清晰度的视频压缩,在实时多媒体监控上,无能是存储量,传输的速率,清晰度都比MPEG1具有更大的优势。
4、基于内容存储和检索的多媒体系统。
由于MPEG4在压缩方法上远远优于MPEG1技术,更是MJPEG技术所不能比拟的。 经过专家的测试表明,在相同清晰度对应MPEG1(500Kbits/sec)码流情况下, MPEG4比MPEG1节省了2/3的硬盘空间,在一般活动场景下也节省近一般的容量。因此无论是从内容存储量,还是从多媒体文件的检索速度来说,MPEG4技术都是多媒体系统应用的不二之选。
5、硬件产品上面的应用
目前,MPEG4技术在硬件产品上也已开始逐步得到应用。特别是在视频监控、播放上,这项高清晰度,高压缩的技术得到了众多硬件厂商的钟爱,而市场上支持MPEG4技术的产品也是种类繁多。下面笔者就列举一些代表性的产品,旨在让读者了解MPEG4技术在今天应用范围之广。
(1)、摄像机:日本夏普公司推出过应用在互联网上的数字摄像机VN-EZ1。这台网络摄像机利用MPEG4格式,可把影像文件压缩为ASF(高级流格式),用户只要利用微软公司的MediaPlayer播放程序,就可以直接在电脑上进行播放。
(2)、播放机:飞利浦公司于今年八月份推出了一款支持DivX的DVD播放机DVD737。它可以支持DivX 3.11、4.xx、5.xx等MPEG4标准,而对于新标准的支持则可以通过升级固件来实现。
(3)、数码相机:日本京瓷公司在11月中旬发售其最新款数码相机Finecam L30,这款是采用300万像素、3倍光学变焦设计的数码相机产品, L30采用了MPEG4格式动态视频录制,可以让动态视频录制画面效果比传统数码相机更出色。
(4)、手机:在手机领域,MPEG4技术更是得到了广泛的应用,各大手机厂商也都推出了可拍摄MPEG4动态视频的手机型号,如西门子ST55、索尼爱立信P900/P908、LG 彩屏G8000等。
(5)、MPEG4数字硬盘:在今年深圳举行的安防展览会上,开发数字录像监控产品的厂家纷纷推出了他们的最新产品,而支持MPEG4的DVR压缩技术也成为改展会上的亮点。
如北京华青紫博科技推出的“E眼神MPEG4数字视频王”便是一款基于网络环境的高清晰数字化监控报警系统。内置多画面处理器,集现场监控、监听、多路同时数字录像与回放等多种功能为一体。
其实,市场上还有许多基于MPEG4技术的硬件产品,笔者这里就不一一列举了,不过笔者相信,随着视频压缩技术的不断发展,MPEG4技术的产品会越来越多的出现在我们生活,工作中。