帧丢失恢复

2024-10-24

帧丢失恢复(共5篇)

帧丢失恢复 篇1

0引言

分布式视频编码是建立在多信源信息编码理论[1,2]基础上的一种新型的视频编码框架。与传统的视频编码(H.261,H.263,H.264等)相比,这种视频编码结构具有编码简单,解码复杂,并且能够实现高效压缩的特点,适合计算能力和内存容量都受限的无线视频终端。比如:无线传感网络,无线视频监控,移动视频电话等传统视频编码不合适的场合。分布式视频编码的结构可以将视频流分成两种:关键帧和Wyner-Ziv帧[3]。关键帧是利用传统的帧内编码,Wyner-Ziv帧利用Wyner-Ziv编码。边信息SI(Side information)是对Wyner-Ziv帧的估计,在分布式视频编码中起着至关重要的作用。重建边信息越精确,所需要传输WZ的码流越小,解码后的WZ帧质量越好。

在传统的分布式视频编码中,边信息是通过前后关键帧的运动补偿时间内插得到的,并利用块匹配算法进行运动估计。Aaron等最早提出基于像素域分布式视频编码框架,采用运动补偿时间内插和运动不长时间外插的方法构造边信息,并证明了内插的效果比外插好[3]。Artigas X等提出了一种迭代运动补偿方法,利用运动补偿时间内插和运动补偿恢复提高边信息质量,从而提高解码WZ帧的质量[3,4,5]。文献[6]提出了用空间运动矢量平滑来改善双线性运动补偿时间内插的性能。但是,空间运动平滑只对移除孤立脉冲噪声产生的错误矢量发挥作用。文献[7]提出了一种新的改善边信息的方案,即采用视频序列中时间和空间的相关性。

1分布式视频编码框架

文献[8]中的分布式视频编码框架,如图1所示。一个视频序列分为关键帧(用K帧表示)和WZ帧(用S帧表示)。图像组(GOP)一般采用固定的两帧构成,一帧K帧,一帧S帧。文中图像组采用三帧组成,两帧K帧,一帧S帧。

Wyner-Ziv编码器的工作原理为:首先对序列X进行可选的预处理(如DCT变换)以去除序列中空域相关性,然后对相应的变换系数进行量化,产生量化的符号流。量化后的符号流经由Slepian-Wolf编码器产生量化符号流的奇偶校验信息。在解码端,利用已解码帧(K帧和S帧)进行边信息估计,得到边信息序列S,并于Slepian-Wolf解码初的校验比特一起重构出S帧。一旦解码的校验比特无法满足误码率的要求时,Wyner-Ziv解码系统通过反向信道要求Slepian-Wolf编码器提供更多的校验信息。这样的话,在某种意义上就实现了对码率的控制。

2 边信息估计算法

从效率角度来看,Wyner-Ziv编码器的编码效率在很大程度上取决于边信息的估计,其估计质量越高,解码端所需要的校验位越少,编码器的压缩效率越高且复杂度越低。另外,边信息对分布式视频编码的码率性能也有明显的影响。

2.1 整帧重建算法

在低码率视频通信中,由于信道错误引起的数据丢失常常会造成整帧图像的丢失,针对整帧图像丢失的情况,提出了基于运动矢量估计的错误掩盖算法。具体算法如下:

运动矢量估计基于线性运动的假设,利用最近解码帧的运动矢量估计当前帧每个8×8块的运动矢量。如图2所示,Frame0为待重建WZ帧,Frame1为前面最近解码的关键帧,Frame2为Frame1的参考帧。B0为当前丢失数据块,B1为Frame1中具有相同空间位置的块。B1块的运动矢量为MV1(x1, y1)。假设B1块在时间方向上满足线性运动,则B1的前向运动矢量MV0(x0, y0)为

undefined

式中,t0为Frame0与Frame1之间的时间距离,t1为Frame1与Frame2之间的时间距离。

如图2所示,B1块的前向运动矢量MV0指向Frame0中的E块。假设其所在区域满足运动一致行,则B0块的运动矢量也为MV0,其在Frame1中的参考块为B2块。

估计B2块的4个顶点所在4个8×8块的运动一致性。设4个运动矢量分别为MVLU,MVLD,MVRU和MVRD,定义相关性如下

undefined

当SMV小于阈值MVTHR0时,B2块运动平滑,取4个运动矢量的均值作为B2块的运动矢量MV2(x2,y2)。反之,跳过当前块,继续下一个块的运动矢量估计。

假设B2块在时间方向上满足线性运动,则其前向运动矢量为

undefined

MV0与MV3的差值为

DMV=|x0-x3|+|y0-y3| (4)

当DMV小于预设的阈值MVTHR1时,B0块的运动矢量MV0符合其真实运动情况,用MV0指向的B2块替代丢失的B0块。

反之,图像发生了不规则运动,需要对B0的运动矢量进行修正。如图2所示,B1块在Frame0中的前向投影块为E,B2块在Frame0中的前向投影块为F。从E到F,假设图像的不规则运动在垂直方向上以函数f(y)变化,而且其变化是线性的。则满足f(0)=y0,f(2y0-y3)=y3。于是,三个点满足函数f(y)=ax+b。

由此得到B0块运动矢量的垂直分量为

f(y0)=yundefined/(2y0-y3) (5)

用同样的方法可求得B0块运动矢量的水平分量为

f(x0)=xundefined/(2x0-x3) (6)

B0块的运动矢量为MV(f(x0),f(y0))。而当2x0-x3=0或者2y0-y3=0时,分别用x0和y0替代MV的水平和垂直分量。

MV指向的参考块为G。用上文同样的方法,判断G块的前向运动矢量与MV的一致性。判断通过,用G块替代B0块,反之,跳过当前块。

2.2 改进算法

从以上分析可以看出,当图像发生了不规则运动,需要对B0的运动矢量进行修正时,其变化不一定是线性的,本文利用二次曲线进行修正(当变化为线性情况下,二次曲线可以退化为线性关系)。这时,B1块在Frame0中的前向投影块为E,B2块在Frame0中的前向投影块为F,并假定B1和B2的中间块为B4,而且B4块的运动矢量为MV4(x4, y4)。从E到F,假设图像的不规则运动在垂直方向上以函数f(y)变化满足:

undefined

于是,3个点满足函数:

f(y)=ax2+bx+c (8)

由此得到B0块运动矢量的垂直分量:

undefined

用同样的方法可求得B0块运动矢量的水平分量:

undefined

B0块的运动矢量为MV(f(x0), f(y0))。而当2x0-x3=0或undefined时,分别用x0和y0替代MV的水平或垂直分量。

2.3 加权的混合边界匹配准则

对于跳过的块,采用基于边界匹配的错误掩盖算法利用选定的匹配准则,从相邻块的运动矢量以及前一帧相应块的运动矢量等组成的备选矢量集中选择最佳的运动矢量,用该运动矢量指向的参考数据替代错误数据。这里采用边界匹配准则(BMA)根据图像相邻数据的空间相关性来恢复错误块。错误块外边界数据与内边界对应像素点数据做差,得到的绝对误差和(DDBMA)。

undefined

式中,DDBMA为平均每条边的匹配误差;T为正确接收或者已经恢复的邻居块个数;N为错误块的大小,(x0,y0)为错误块左上像素点的坐标;Fx,y为错误图像中像素点的值;Fundefined为参考图像中像素点的值;(Vx, Vy)为运动矢量。

外边界匹配,利用错误块的外边界像素与参考块的外边界像素的差值作为匹配度量DEBMA。当错误块的外边界像素与参考块外边界像素等同时,参考块放入错误块中便可以与周边自然衔接。

undefined

考虑到边界平滑性与衔接自然性,可以得到如下的混合边界匹配准则

DMBMA=DDBMA+DEBMA (13)

为了提高匹配的精度,可以给不同类型的边界以不同的权重ω,当相邻块不存在或者为错误数据时,对应的ω取0,当相邻块为正确接收的数据,对应的ω取1。

3 实验结果

文献[9]中应用TDWZ分布式视频编码方式,在这种编码方式下,只编码亮度信号。视频序列采用Foreman,格式为QCIF,帧频为15fps,分布式编码运行前50帧。阈值MVTHR0和MVTHR1分别取3和1。

图3是Foreman序列的边信息结果。TDWZ方法生成的边信息在建筑和人脸处包含明显的块效应。本文是利用图像局部区域的运动为线性运动,估计丢失块的运动矢量,利用运动矢量指向的参考块的运动情况来验证估计运动矢量的可靠性,所以生成的图像具有更好的效果,提高了6.3dB。

图4是运用本文方法产生的Foreman序列的边信息PSNR值。当图像运动缓慢时,计算出的运动矢量就越精确,生成的边信息更准确,对应的PSNR值就高。相反,当图像运动剧烈时,计算出的运动矢量偏差就大,生成的边信息就不够准确,则对应的PSNR值就低。图5是生成的第2帧和第14帧图像的边信息,第2帧的PSNR值低,生成的边信息偏差大,第14帧PSNR值高,生成的边信息更准确。

图6是利用LDPC完全译码时的平均码率。结合图4可以看出,生成的边信息越精确,即生成边信息的PSNR值越高,所需要的译码码率越低,即在解码端所需的校验位越少。相反,如果生成的边信息不够精确,则译码码率越高,在解码端所需的校验位越多。

4 结束语

本文提出了一种新的边信息产生方法,改进了传统视频编码中的帧丢失恢复算法。新算法将帧丢失恢复算法中图像局部区域运动为线性运动的假设,改为二次曲线,使其适合非线性运动,从而提高边信息的准确性。与传统的边信息生成方法(TDWZ)相比,生成的边信息PSNR值较高,而且利用LDPC完全译码时所需的码率较小,说明生成的边信息更准确,很好地改善了边信息。

参考文献

[1]Huber L,Borojevic D.Space vector modulated three-phaseto three-phase matrix converter with input power factorcorrection[J].IEEE Transactions on industry application(S0093-9994),1995,31(6):1234-1246.

[2]Nielsen P,Blaabjerg F,Pedersen J K.Space vector modula-ted matrix converter with minimized number of switchingand a feed-forward compensation of input voltage unbalance[C]//Proceedings of PEDES96.Piscataway,1996:833-839.

[3]Aaron A,Girod B.Compression with side information usingturbo codes[C]//Proc IEEE Data compression conference.Snowbird UT,2002:252-261.

[4]Wu X L,Tan G J.Method to enhance the voltage transferratio based space vector control of matrix converter[J].Electric drive,2007,37(2):31-34.

[5]Qiu X F,Liu Y Q.Research on simulation of matrix con-verter based on double space vector modulation[J].Tele-com power technologies,2007,24(4):5-8.

[6]Ascenso J,Brites C,Pereira F.Improving frame interpola-tion with spatial motion smoothing for pixel domain distrib-uted video coding[C]//EURASIP conference on speech andimage processing,Multimedia communications and serv-ices.Sloyak republic:EURASIP,2005:127-132.

[7]Shuiming Y,Ouaret M,Dufaux F.Improved side informa-tion generation with iterative decoding and frame interpola-tion for Distributed Video Coding[C]//15th IEEE Interna-tional conference on image processing.San diego,CA:Ecolepolytech,2008:2228-2231.

[8]尹明,章云,程良伦,等.Wyner-Ziv视频编码中边信息估计算法改进[J].计算机应用研究,2009,26(12):4818-4821.

[9]Brites C,Ascenso J,Pereira F.Improving transform domainWyner-Ziv video coding performance[C]//IEEE Interna-tional conference on acoustics,Speech and signal process-ing.Toulouse:IEEE Press,2006:525-528.

谈谈硬盘数据丢失与恢复 篇2

关键词:数据损坏;数据恢复;硬盘故障

中图分类号:TP399 文献标识码:A文章编号:1007-9599 (2011) 15-0000-01

Talk about Hard Disk Data Loss and Recovery

Zhang Xin,Yun Yonggang,Bai Lu

(Department of Basic Xuzhou Air Force College,Xuzhou221000,China)

Abstract:Data stored in the computer hard drive is the main site,so data security can not be ignored.Because people pay enough attention to the data,human error operation,virus attack,hardware damage,data loss may lead to the user's work and life bring great distress and inconvenience.This article will introduce a variety of data loss causes and solutions.

Keywords:Data loss;Data recovery;Hard disk failure

一、概述

現在人类的生产生活已离不开计算机,电子格式的数据显得极其重要。伴随着科技的发展,500G、750G的硬盘在普通用户中已屡见不鲜了。硬盘是电脑中存储数据的主要场所,因此数据安全性不可忽视。数据丢失的原因各种各样,最大因素是硬件或系统故障,再加人为误操作,其他还包括计算机病毒和自然灾害。那么,采用什么办法才能解决常见的硬盘数据丢失故障,已成为用户十分关注的问题。遇到数据丢失该怎么办?本文就此向大家介绍一些数据恢复的方法,希望对大家恢复硬盘数据有一定的积极作用。

二、硬盘数据丢失的原因

(一)人为误操作。作为计算机使用者,日常使用中难免会犯一些操作上的错误。一般可分为二类:误删文件导致重要数据丢失;没有备份就格式化硬盘导致数据大面积丢失。

(二)硬盘故障。此类故障大致分为三类:(1)硬盘分区表损坏:病毒通过攻击并破坏硬盘主引导扇区中的分区表(DPT:Disk Partition Table),表中数据被破坏导致记录被损毁,就可以毁掉硬盘分区信息,从而达到破坏数据的目的。(2)硬盘磁道损坏:可分为“0”磁道损坏和“非0”磁道损坏。“0”磁道处于硬盘上一个重要位置,主引导记录区(MBR:Main Boot Record)就在该位置上。MBR位于硬盘的0磁道0柱面1扇区,其中存放着分区表与主引导程序。MBR扇区的总容量为512个字节,其中446个字节划给硬盘主引导程序,64个字节分给硬盘分区表(DPT),两个字节(55和AA)为分区结束标志。“0”磁道一旦遭到破坏,硬盘的主引导程序和分区表信息将丢失,直接导致硬盘无法引导。“非0”磁道是相对“0”磁道而言的。这些故障一般都由非法操作、电脑USB口供电不足及硬件老化所引起。(3)其他故障:硬盘磁头损坏、电路板故障、微型马达失灵、芯片信息丢失等。

三、硬盘数据恢复一些常用方法

(一)误删除之后的数据恢复。计算机使用中常见的数据恢复就是被误删除之后的数据恢复,但是在这时候千万不要再向该分区或者磁盘写入信息了,因为刚被删除的文件被恢复的可能性最大。现象上是盘中的数据已经完全消失,也就是删除了硬盘分区表信息,其实硬盘中的任何分区的数据均没有发生变化。删除与格式化操作对于文件的数据部分实质上没有什么变化,这就给文件恢复提供了可能,只要利用一些反删除软件就可以实现文件恢复。误格式化同误删除的恢复方法在使用上基本没有大的不同,Fdisk命令没有打乱分区的硬盘,需要恢复的文件所占用的簇不被别的文件占用,那么,格式化前的大部分数据是可以恢复的。

(二)误格式化硬盘数据的恢复。在某些磁盘操作系统(DOS)版本下,格式化命令Format缺省情况下都有用于恢复格式化的磁盘信息,实际上是把磁盘的Fat分区表,DOS引导区(目录表)的所有内容复制到了磁盘的后几个扇区中(后面的扇区很少使用),因而数据区中的内容根本没有变化。此时就可以使用多种恢复软件来进行数据恢复,例如可使用Easyrecovery等恢复软件均可以进行数据恢复。

(三)0磁道损坏时的数据恢复。在0磁道上硬盘的主引导记录区(MBR)就放在此处。0磁道受到损坏会使硬盘的分区表信息和主引导程序破坏,导致硬盘无法引导。0磁道损坏判断:虽然系统自检能通过,但启动时候,C盘目录或者分区丢失,硬盘将呈现“咯吱••••••咯吱”的有规律的寻道声。可运行SCANDISK扫描C盘,这时在第一簇出现红色的“B”,或者Fdisk找不到硬盘、DM死在0磁道上,这种情况即为0磁道损坏,属于硬盘坏道之一,0磁道遭到破坏,会产生严重的后果,可以用工具软件PCTOOLS的DE磁盘编辑器(或者DiskMan)来使0磁道下移一个扇区,把1磁道作为0磁道来使用。而数据可以通过Easyecovery来按照簇进行恢复,但数据无法保证得到百分之百的恢复。

(四)分区表损坏时的数据恢复。病毒重点攻击的地方是硬盘主引导记录(MBR)所在的扇区,可通过破坏主引导扇区中的DPT(分区表)容易地损毁硬盘分区信息,对资料进行破坏。记录被破坏是由于分区表的损坏而造成的。那么就可以使用一些软件来进行修复。所以一旦硬盘分区后,应该马上备份分区表把它放在光盘等移动存储介质中。诺顿磁盘医生NDD对恢复分区绝对是一种强劲的工具软件,可用来自动修复分区丢失等情况,还可以抢救磁盘坏区中的数据,能够强制读出数据后移动到其他空白扇区。在硬盘异常的情况或崩溃下,有希望对数据恢复。出现数据丢失的情况后,用准启动盘启动计算机,运行诺顿磁盘医生,选择Diagnose来进行诊断。诺顿磁盘医生能够对硬盘进行全盘扫描,发现错误,会提示错误信息,可根据软件的提示选择修复项便可,针对这些问题诺顿磁盘医生都能够很容易地解决。可用工具软件:DiskMan,对于重建分区表方面有非常实用的功能,在修复分区表的损坏是很合适的。但重建分区表的功能并不能做到完全修复好硬盘分区表,故保护好硬盘更为重要,应尽可能避免病毒的侵扰和硬件损伤,要定时做好分区表备份。

如果Windows系统还可以正常使用的话,那么最简单的恢复方法就是Windows版Easyrecovery软件,它恢复硬盘数据的功能十分强大,不仅能恢复被从回收站清除的文件,而且还能恢复被格式化的FAT16、FAT32或NTFS分区中的文件。

四、结束语

帧丢失恢复 篇3

H.264/AVC[1,2]编码是目前较常用的视频编码标准,它也被广泛使用在了包括互联网视频流媒体、3G手机电视等多种多媒体通信应用场合当中。当视频流打包传输时,信道传输中的数据损坏和丢失直接反映为数据包的丢失。H.264码流某些帧当中的数据丢失,不但会影响到当前帧的正常显示,而且会使错误在时域上扩散[3],使后续帧也出现错误。错误掩盖技术可以最大限度地减小错误带来的视觉影响,阻碍错误在时域上的扩散。

在视频编码错误掩盖领域,已有诸多研究成果发表,大多是针对部分宏块或条带进行掩盖。H.264标准自带的边缘匹配算法(BMA)[4]是最经典的算法。在文献[5]中,作者提出了一个拉格朗日插值的方法来重建丢失块的运动矢量(MV)。

针对整帧丢失的错误掩盖算法相对较少,其最大的困难在于没有任何像素域信息可参考。文献[6-7]中的算法均是基于运动矢量外插,这种算法在处理整帧丢失时效果较好,但仍有提高空间:该算法缺乏一个稳定的选择标准来获取最佳运动矢量,并且也没有充分利用后一帧信息。另外,目前针对B帧的错误掩盖算法很少。针对这些问题,本文提出了一种有效的算法进一步提高整帧丢失下错误掩盖的效果。实验证明,这种算法可以有效应用于P帧和B帧。

1 基于场一致性的掩盖方法

1.1 修改解码流程,获取后一帧信息

传统的解码流程当中,当某个P帧丢失时,后续的P帧由于时域上的依赖性,无法被解出。所以基于传统的解码流程的算法,对于某个P帧的掩盖,只能参考前面帧的信息,比如运动矢量或亮度。

而修改H.264的解码流程之后,对于丢失帧,除了能获取前面帧的信息外,还能够获取后一帧的部分信息,以用于丢失帧的掩盖。

具体实现方法是,在掩盖丢失帧之前,加入了一个模块以获取下一帧的运动矢量,然后调用掩盖丢失帧的接口函数,最后将掩盖完成的帧在下一帧之前插入输出缓存以待输出。

1.2 P帧上的双向映射掩盖技术

获取了前一帧和后一帧的运动矢量之后,如何有效使用它们进行掩盖仍然值得研究。

本算法首先需要做运动矢量的映射与外插,前一帧和后一帧的处理类似,以前一帧为例进行说明:假设当前第n个P帧丢失,找到它的前一帧(n-1)帧。对(n-1)帧上的第i个4×4的块,将其运动矢量反向,沿着反向的运动矢量映射到第n帧上产生相应的映射块,其运动矢量与原块的运动矢量相同。

将所有(n-1)帧上的块按这样的方式映射到第n帧上之后,第n帧上的每个4×4块必然被若干个映射块覆盖。对于第n帧上的第j个块,它被(n-1)帧上第i个映射块覆盖的面积定义为2个块重叠像素的数目。对于第n帧上的第j个块,能获得所有覆盖块的运动矢量VNi(j)。对于第j个块,k个所有符合条件的参考运动矢量VNi(j)组成它的参考运动矢量列表listVN(j)。传统的方法中,运动矢量列表listVN(j)中所对应的块覆盖面积大的那个被用来重建丢失帧中的块j。但是存在的问题在于重合面积并不一定和运动矢量的相关程度成正比。为了解决这个问题,本文提出了一个方法可以较准确地从参考运动矢量中选取最佳矢量以重建丢失块。

首先获取第j个块的参考运动矢量列表listVN(j),它包括了k个所有符合条件的参考运动矢量VNi(j)。然后对于参考列表中的每一个参考矢量list VNk(j),按照它的方向将丢失帧中的当前块j映射到前一帧(n-1)帧上,一般地,它将会覆盖4个块:Block1n-1,Block 2n-2,Block3n-3和Block 4n-4。当前块j和其重合面积分别为w1,w2,w3和w4,这4个块的运动矢量分别为VN-1(1),VN-1(2),VN-1(3)和VN-1(4),如图1a和1b所示。

由于视频的帧率较高,因而除了场景变换时,物体在相邻帧间的运动存在一定连续性。对应到运动矢量上,相邻帧间同一区域内的运动矢量场存在一定的相似性或一致性。可以用场一致性判别标准来判定任一VNi(j)的优劣:对于覆盖的部分,按照运动矢量的加权平均估算出这部分的似然运动矢量SVNi(j),即

注意到当前VN(j)=list VNk(j),根据场的一致性,VNi(j)应该和似然运动矢量SVNi(j)接近,可以用场一致性判别标准来判定任一VNi(j)的优劣。用正交法定义矢量的差

选取和似然运动矢量SVNi(j)的差最小的参考运动矢量作为前一帧的最佳运动矢量pre VNi(j)。

对于后一帧的运动矢量,可以用类似的映射方式和场一致性判决方式得到一个属于后一帧的最佳重建矢量。最后采用线性插值的方法,根据前一帧和后一帧的最佳重建矢量,获得最终的重建运动矢量recon VNi(j),根据实验选取α=0.5。

1.3 算法在B帧上的应用

B帧错误掩盖的重要性比P帧略低,因为在通常H.264的GOP结构中,B帧不会作为其他帧的参考帧,因而不会使错误在时域上扩散,相比之下对视觉的影响要低一些,所以对B帧丢失采取高效而较为简单的策略。

以P帧间内插一个B帧为例,GOP为IBPBP,为这5帧依次编号为1~5,实际显示输出的顺序自然是“12345”,但解码的顺序为“13254”。即B帧是在两个参考P帧完全解码后再解码。本文采用了单向映射掩盖的方法,即通过B帧前一解码P帧的运动矢量,根据场一致性判决算法,得出每个块的最佳掩盖矢量,如图2所示。

对丢失B帧进行掩盖时,仅使用解码B帧时相邻的后P帧来获取掩盖矢量并进行重建,这样可减小一半的复杂度,同时对于视觉效果没有特别大的影响。掩盖B帧时,对于该帧上每一个块,通过前述的基于场一致性判决的映射方法,从后P帧的运动矢量中,筛选出最佳掩盖矢量preVN(j)。由于B帧到后P帧的间隔只有2个P帧间隔的1/2,最终的重建矢量是preVN(j)/2,方向相反。

一般地,假设两个P帧间有M个B帧,那么由几何关系可以得到,按后顺序的第k个B帧(0

2 实验结果

为了测试该错误掩盖算法的有效性,本文采用了手机电视中常用的CIF(352×288)序列,在H.264/AVC软解码模型JM[8]中进行测试。测试条件为30 f/s(帧/秒),并且I帧的周期是15帧,QP设为28。码流封装在RTP包中并且将一帧封入一个数据包中以仿真整帧丢失。

对于P帧的测试,GOP设为IPPP,丢包率为5%,为了更好地观测帧丢失后错误在时域上扩散的情况,一个GOP中只丢失一个帧。在测试当中,本算法和直接复制前一帧算法(FC)、简单运动矢量映射算法[6](MP)、双向插值算法[9](BME)等进行了比较,见表1。能发现在各序列中,本文算法均比其他算法有着不同程度的提升。

dB

算法掩盖效果的主观评价,观察table第60帧和foreman第15帧在各算法下的表现,如图3、图4所示。

对于B帧,在测试中将GOP设为IBP,由于B帧的错误不扩散,没有必要观察整序列,仅需要观察单个帧的掩

盖质量。由于少有针对B帧的整帧掩盖算法,本文和直接复制前一帧算法(FC)进行了比较(见表2)。

dB

对于B帧掩盖的主观评价即显示效果,本文选取foreman序列的第9帧进行比较,如图5。虽然就单一图片来看FC方法得到的图像较完美,但是当视频播放时视觉上有暂时停顿的感觉。而采用本文算法,由于考虑了运动的连续性,该B帧中物体的运动和相邻P帧是连续的,所以播放时物体运动较流畅,基本没有停顿的感觉。

3 小结

实验结果表明此种算法不论在PSNR数值上还是主观效果上,掩盖结果大部分优于传统算法,说明本算法是一种有效的针对整帧丢失的错误掩盖方法。本算法的不足之处在于由于仅使用了运动矢量信息,对于场景变换的问题无法很好解决,有待进一步改进。

参考文献

[1]ITU-T Rec.H.264/ISO/IEC14496-10AVC,Draft ITU-T recomme dation and final draft international standard of joint video specification[S].2003.

[2]王嵩,薛全,张颖,等.H.264视频编码新标准及性能分析[J].电视技术,2003,27(6):25-27.

[3]SUH J,HO Y.Error concealment techniques for digital TV[J].IEEE Transactions on Broadcasting,2002,48(4):299-306.

[4]ITU-T VCEG-N62,Non-normative error concealment algorithms[S].2001.

[5]ZHENG J,CHAU L.A temporal error concealment algorithm for H.264/AVC using Lagrange interpolation[C]//Proc.IEEE Internation al Symposium on Circuits and Systems.[S.l.]:IEEE Press,2004:133-136.

[6]WU Zhenyu,BOYCE J M.An error concealment scheme for entire frame losses based on H.264/AVC[C]//Proc.IEEE International Symposium on Circuits and Systems.[S.l.]:IEEE Press,2006:4463-4466.

[7]YAN B,GHARAVI H.Efficient error concealment for whole-frame loss based on H.264/AVC[C]//Proc.2008IEEE International Confer ence on Image Processing.[S.l.]:IEEE Press,2008:3064-3067.

[8]H.264/AVC JM软件参考模型[EB/OL].[2011-04-18].http://iphome.hhi.de/suehring/tml/index.htm.

计算机数据的丢失与恢复 篇4

1 逻辑和物理删除后的数据恢复

所谓逻辑删除, 就是数据虽已删除, 但仍被放置在磁盘中, 如把文件删除到回收站中。而物理删除则是数据已从磁盘上彻底删除, 如已从回收站中清空了文件等。

被逻辑删除的数据恢复很简单, 只需打开“回收站”, 选择要删除的文件或文件夹, 然后选择“还原”, 即可恢复数据到原位置。

要恢复被物理删除的数据, 虽然方法很多, 但首先要做的是立即停止对计算机的操作, 以免后续操作的数据覆盖了原来的数据。数据恢复的方法归纳起来有两大类:一种是在DOS下进行;一种是在Windows下进行。在DOS下进行的操作稳定可靠, 但操作起来较为复杂。在Windows下进行的操作方便、快捷, 但可靠性稍差。

在DOS下恢复数据较常用的软件是Norton8.0中的DiskEdit。实际上, Norton8.0也支持在Windows下工作, 通常称之为半D0S状态。

用这种软件恢复丢失数据的步骤如下。首先, 重启计算机, 切换到DOS下 (启动时按F8进入Command prompt only模式) , 执行Lock指令, 这样是为了让某些直接存磁盘的程序能够进行。然后运行Diskedit, 在主菜单下选择“Tool/Configuration”, 将配置菜单中的“Read only”功能取消。随后在主菜单中选“Object/Drive”命令, 切换到要恢复文件所在的位置, 选“Directory”命令再切换到要恢复文件所在的目录, 在清单中找到需要恢复的文件“Undelete/file.TXT”。然后在Diskedit主菜单中选“View/As Hex”察看目录区数据, 开头为“E5H”, 后面为“?ndelete~1.TXT”, 即是所要找的文件, 把“?”改为“U”, 把“E5H”改为“42H”, 最后按“Esc”, 在弹出的对话框中选择“Writer”, 即可将所修改的结果存盘。至此, 文件就可以恢复了。

在Windows下进行数据的恢复较为简便, 主要方法是利用专用工具如Recover NT等, 其方法如下。运行Recover NT程序, 按下工具栏“打开”按键, 选择被删除文件存放的盘符, 按下“选择”按键, Recover NT开始扫描打开的磁盘, 扫描完毕以后, 返回Recover NT的主界面。在主界面的文件列表栏下显示Recover NT扫描磁盘的结果, 在文件或目录上有红色圆标记的就是找到的被删除文件。然后单击被删除文件, 按下工具栏“保存”按键, 在弹出的对话框中填入将删除文件恢复的盘符、文件夹、格式 (FAT1, FAT2) 。另外注意, 恢复的文件保存位置不能和被删除文件在同一个盘符下。按下“确定”按键, Recover NT将被删除文件保存到选择的目录下, Recover NT主菜单下被删除文件的图标发生改变, 表示文件已经恢复。

Recover NT一次可以恢复多个文件, 但文件夹恢复时, 必须先保存文件夹, 再进入文件夹, 方可恢复文件夹内的所有文件。

2 因存储位置或名称不详等而无法找到丢失文件

这种丢失文件的查找与恢复, 用Windows自带的搜索工具较为方便。其方法与操作步骤如下。

用鼠标右击“我的电脑”, 选择“搜索”选项, 在弹出的对话框中选“所有文件和文件夹”。在选项中可以输入文件名或文件夹名进行查找;如果忘记了文件或文件夹名, 可以按文件或文件夹存储的时间段进行查找;如果以上都记不清了, 也可以根据文件中的某些词句进行查找, 最后打开或另存。不管按什么方式查找, 尽可能地把搜索范围缩小, 因为范围越小, 搜索速度越快。

除此之外, 还可以用Norton, PC Tools等有关专用工具进行查找, 也可以在DOS下用“DIR”命令进行查找。

3 Word或WPS文件出现乱码而无法打开

出现这种现象, 数据文件虽然未丢失, 但如不能妥善处理, 与丢失数据无异。

解决这类问题的常用方法有:打开该乱码文件, 另存为XX.TXT格式文件或XX.RTF格式文件, 再把该文件复制到另一个Word或WPS文件中即可。

另外, 还可以通过打开损坏的Word文档, 单击“工具/选项”菜单, 选择“编辑”标签, 取消对“使用智能段落选择范围”复选框的勾选, 然后单击按钮来修复Word或WPS文件。

帧丢失恢复 篇5

硬盘数据恢复技术是一种跨硬件平台、跨软件系统的特殊的计算机技术, 是现有所有计算机数据存储技术的集合, 是在人们对信息的依赖性越来越高、信息数据的价值远高于设备本身的情况下应运而生的, 它是针对数据的丢失和破坏进行的一种数据挽救措施。

本论文主要结合硬盘的工作机制, 对其数据丢失恢复进行分析研究, 以期能够提出一种安全可靠的硬盘数据丢失恢复软件的设计实现, 并以此和广大同行分享。

2. 硬盘数据存储原理分析

硬盘是用来存储数据的, 为了方便使用和管理这些数据, 这些数据又是以文件的形式存储在硬盘上。任何操作系统都有自己的文件管理系统。不同的文件系统又有各自不同的逻辑组织方式。本论文主要对FAT32文件系统下硬盘的数据结构进行分析。

在硬盘的数据存储中, 在主引导扇区之后, 从0柱面0磁头2扇区到0柱面0磁头63扇区这62扇区空间为系统保留, 为以后的其他特殊用途留有余地。在系统保留扇区后是第一个系统的引导扇区DBS。它位于0柱面1磁头1扇区。

D B S (D i s k B o o t S e c t o r) 除了引导程序部分D B R (D i s k B o o t Record) , 还有一个重要的即BPB参数表, 记录了保留扇区、FAT、FDT等在各个分区中的起始位置。系统在磁盘分区上逻辑地划出若干个大小相等地“簇”, 每个簇都有一个逻辑编号, 文件在磁盘上地存放并不是连续的, 为了让系统了解文件数据在磁盘上的分配情况, 从而能够建立、管理和访问文件。FAT16、FAT 32系统采用FAT簇链的方式来实现, 过程大致如下:FAT区中被逻辑地划分出若干个FAT项, 每个FAT项有一个逻辑编号, 不同FAT结构的FAT项的长度是不一样的, FAT 16结构的分区中每个FAT项占用16位, FAT32结构的分区中每个FAT项占用32位, 这个编号对应了数据区中的若干个簇。

FAT1和FAT2是两个完全一样的FAT, 系统同时建立两套完全一样的FAT链, 这样做的目的是当FAT1损坏时可以用FAT2进行恢复。在FAT区后面是系统的根目录区, 由若干目录项组成。在根目录区后面是文件的数据区, 这个区域中存放的是用户和系统建立的文件数据, 这个区被逻辑地划分成了若干个大小相等的簇, 从而便于系统管理和使用文件。

其他格式类型的数据存储原理与上述FAT格式原理基本相同, 这里就不一一赘述。

3. 硬盘数据丢失恢复软件的设计研究

3.1 删除原理

Windows操作系统在删除硬盘上的一个文件时并没有真正的将文件数据彻底抹去, 而是做了一个删除标记。文件删除分为经“回收站”删除和不经过“回收站”删除两种。经“回收站”删除时将文件暂时放到回收站中。系统在文件的目录项上作上标记, FAT表和DATA区在删除前后都不作改动。而不经过“回收站”删除一个文件时, 即将删除过的文件从回收站清空。此时, 系统在文件的文件目录项FDT上作了个标记, 即把记录文件名的首字节标记为ESH, 并把相应的FAT表项值更改为OH。文件在DATA区的数据并没有删除。因此通过第三方恢复软件可以恢复这些丢失的数据。需注意的是, 发现文件丢失后, 在数据恢复前不要向该分区或磁盘写入信息, 因为向该分区或磁盘写入信息就可能将误删的数据覆盖。而造成无法恢复。准备使用恢复软件时, 不能直接在本机装这些恢复工具, 因为软件的安装可能恰恰把刚才丢失的文件覆盖掉。最好使用能够从光盘直接运行的数据恢复软件, 或把硬盘挂在别人的机器上进行恢复。

3.2 文件分配表机制分析

FAT (File Allocation Table) 即文件分配表, 是DOS/windows系统的文件寻址系统。对于FAT32格式, 位置是从引导扇区开始的第32个扇区就是第一个FAT表的位置, 其大小由这个分区的空间大小及文件分配单元的大小决定, 文件分配表占据扇区的多少凭磁盘类型大小而定。

文件分配表是用来表示磁盘文件的空间分配信息的。它不对引导区、文件目录表的信息进行表示, 也不真正存储文件内容。其主要功能是:表明磁盘类型、表明每个文件所占簇链的使用情况、标明坏簇和可用簇。为了防止意外损坏, FAT一般做两个, 第二FAT为第一FAT的备份, FAT32采用4个字节来表示簇的位置。磁盘的最小存储单位是扇区, 若干个扇区合为一个簇, 在FAT32中每8个扇区为一个簇进行编号, 每个簇在文件分配表中都有对应的表项, 簇号即为表项号。在FAT文件系统中对数据区的存储空间是按簇进行划分和管理的, 由于FAT32中文件的存放是链式存储结构, 它可以由若干个连接的簇进行连接存储, 在表项内的数值是该文件的下一个簇的簇号, 值到最后一个簇的标志为结束。

3.3 数据丢失恢复的设计思路

在编写程序前先来分析一下程序要做的事情。该程序的主要功能是通过用户指明的文件名和盘符找到FAT32卷中被误删除的文件数据, 然后进行恢复。根据前面的分析我们知道, 硬盘上的文件是由FAT表和FDT目录项进行统一管理, 而FAF与FDT对数据的存储管理又是链式的。因此, 通过链式搜索查找, 可以准确定位被误删除的文件在磁盘中的确切位置。

当文件被删除后, 该文件FDT目录项的首字节的值被改成“ES”, 引导扇区的第二个扇区中表示该分区点用空间大小的相应信息也被同时改写。因此, 在程序设计时, 要根据其存储结构, 对相应的地方进行修改, 来搜索ES删除标志, 再通过被删除文件的数据链来进行恢复。整个流程大致如下:

(1) 获取磁盘分区类型, 分区存储空间, FAT、FDT文件等存储的起始扇区。

(2) 获取FAT、FDT表项内的簇信息, 即簇的删除、未使用、坏簇、以及占用簇的起始扇区信息。

(3) 通过FAI, 、FDT计算不同文件在物理扇区的起始位置, 包括有标识ES除文件起始位置、文件类型、占用大小和文件存储的所在簇。

(4) 改变删除位, 通过过程 (3) 得到的结果, 并按FAT表对文件进行链式查找并缓存, 当达到文件所在簇尾时, 停止操作。

(5) 对存储的数据进行转换, 生成文件.

(6) 对文件进行异区存储。而操作系统在读写文件时, 会根据FDT中的起始单元, 结合FAT表就知道文件在磁盘的具体位置, 然后顺序读取每个簇的内容, 从而完成文件的恢复工作。

4. 结语

“硬盘有价, 数据无价”。针对愈演愈烈的数据丢失和破坏现象, 如何保护好这些重要数据, 如何在数据被破坏或丢失的情况下, 尽可能的恢复这些信息, 将是一项长期而艰巨的任务。基于windowFAT32操作系统, 本文对数据恢复的基本技术进行了分析和讨论。对于进一步提高硬盘数据被删除后的恢复应用水平具有较好的实用价值和指导意义。

参考文献

[1]戴士剑, 涂彦晖.数据恢复技术[M].北京:电子工业出版社, 2005.

[2]黄步根.数据恢复与计算机取证[J].计算机安全, 2006, (6) :32-33.

[3]戴士剑, 涂彦晖.数据恢复技术 (第2版) [M].北京:电子工业出版社, 2007.

上一篇:物理市场经济制度下一篇:复杂型钢组合结构