CN100574440C - 一种基于像素行重排的图像和视频抗误码方法 - Google Patents
一种基于像素行重排的图像和视频抗误码方法 Download PDFInfo
- Publication number
- CN100574440C CN100574440C CN 200710168411 CN200710168411A CN100574440C CN 100574440 C CN100574440 C CN 100574440C CN 200710168411 CN200710168411 CN 200710168411 CN 200710168411 A CN200710168411 A CN 200710168411A CN 100574440 C CN100574440 C CN 100574440C
- Authority
- CN
- China
- Prior art keywords
- image
- images
- error code
- pixel
- subimage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明涉及一种基于像素行重排的图像和视频抗误码方法,所采用的方法是:在编码器对一帧图像编码之前,执行以下步骤:1.按照像素行对图像进行1/N抽取,得到N个高度缩小为1/N的子图像;2.将这些子图像在垂直方向拼接成一个和原始图像等大小的新图像,将该新图像经过解码器解码得到一帧解码图像后,执行以下步骤:3.从解码图像恢复N个子图像;4.将多个子图像依次逐行交织在一起,恢复原始图像;5.如果有误码导致部分图像无法解码,则用相邻子图像做空间预测替换丢失的图像。本发明的思想是用类似全息照相的方法,通过对图像的像素行重排,使图像的局部具有在一定程度上表示整幅图像的能力,从而在发生误码时,能够用剩余的图像较好的恢复图像丢失的部分。
Description
技术领域
本发明属于视频和图像信号的处理和传输领域。具体的说是一种基于像素行重排的图像和视频抗误码方法。
背景技术
随着视频编码技术、网络技术和存储技术的迅速发展,基于视频和图像压缩编码的传输和存储***都得到了越来越广泛的应用,例如视频会议、视频监控、DVD视盘***和数字相册等。然而任何通信网络和存储媒体都不能保证数据完全可靠。而常用的各种视频压缩编码方法基本上都采用了传统的基于时间预测的混合视频编码方法,虽然获得了很高的压缩率,但是对误码也格外地敏感。这就限制了视频***在一些高误码的信道和存储媒体上的应用。同样的情况也发生在图像压缩编码应用中。因此,如何使视频编码算法具有良好的错误恢复能力,对其应用,特别是对目前受到广泛关注的网络视频和无线视频意义重大。
在现有视频编码中,由于时间预测的影响,如果某一帧视频数据出现错误,不但这一帧的解码图像会出现错误,即使后续视频帧数据均正确,也会导致其后若干帧的解码图象出现错误,直到下一个I帧(非预测帧)为止。因此,视频信号解码器中,为了得到更好的视觉表现,如果发现了误码,在下一个I帧之前,解码器如果不冻结输出画面就只能尽可能的通过各种方法猜测丢失的部分图像,这被称为错误掩盖。在具有反馈信道的视频通信***中,虽然可以由解码器通知编码器更新I帧或者类似的方法恢复图像,但是由于网络的往返延迟,在I帧到来之前,解码器也只有冻结输出画面和通过错误掩盖尽量恢复图像两个选择。所以错误掩盖方法的优劣对解码器遭遇误码时的画面质量至关重要。
对于视频编码,常见的错误掩盖方法一般可以归为两类:1、时间预测法:一般用相邻宏块的运动矢量估计错误宏块的运动矢量,再用运动矢量指定的参考块直接替代误码块;2、空间预测法:用相邻宏块的梯度信息和相邻像素通过插值或者滤波的方法恢复丢失的宏块。在实际应用中,这两种方法在特定的条件下都能取得一定的效果。采用时间预测法,恢复质量取决于恢复的运动矢量的误差和编码残差分量的大小,对于图像运动不复杂,编码残差小的地方能取得较好的恢复效果。采用空间预测法,一般只能恢复图像的低频成份,表现为高频成份的图像细节难以恢复。对于图像编码,不存在时间预测,只能采用空间预测的方法,情况完全类似。
但是,无论是时间预测法,还是空间预测法,有一点是相同的,那就是均需要利用相邻宏块的数据进行错误掩盖。如果相邻宏块的数据也是错误的,则错误掩盖失败。时间预测法和空间预测法都是以宏块为基本单位的,时间预测法一般需要由相邻宏块的运动矢量估计丢失宏块的运动矢量,空间预测法需要用相邻像素恢复丢失宏块。也就是说,现有的错误掩盖技术一般要求错误的宏块不能是连续的,而实际上图像视频数据往往表现为连续多个宏块的突发错误,这严重影响了现有的时间预测法和空间预测法的错误掩盖效果。
发明内容
本发明的目的在于提出一种简单有效抗误码方法,对数据出现连续错误的图像仍具有良好的错误掩盖能力,处理简单,易于用DSP或者硬件实现,不需要对现有编码算法做任何修改,对图像和视频一样适用的基于像素行重排的图像和视频抗误码方法,以克服现有错误掩盖方法在图像数据连续错误情况下效果退化的不足。
为了实现上述目的,本发明所采用的方法是:
在编码器对一帧图像编码之前,执行以下步骤:
第一步骤、按照像素行对图像进行1/N抽取,得到N个高度缩小为1/N的子图像;
第二步骤、将这些子图像在垂直方向拼接成一个和原始图像等大小的新图像,将该新图像进行编码,将该编码后的新图像经过传输信道或存储媒体提供给解码器,经过解码器解码得到一帧解码图像后,执行以下步骤:
第三步骤、从解码图像恢复N个子图像;
第四步骤、将多个子图像依次逐行交织在一起,恢复原始图像;
第五步骤、如果有误码导致部分图像无法解码,则用相邻子图像做空间预测替换丢失的图像;
第六步骤、对于视频解码,如果发生了误码,还要把第五步骤得到的图像重新按照第一和第二步骤进行抽取和拼接后取代解码图像保存为解码器的参考帧。
上述第一步骤的抽取方法是将像素行的行号对N取模,模相同的行按原顺序抽取到一起,构成一个子图像,共得到N个子图像,模值即子图像的序号。
上述第二步骤的拼接方法是将N个子图像按照序号递增顺序从上向下连续存放在一起。
上述第三步骤的恢复子图像的方法是第二步骤的逆过程。
上述第四步骤的恢复原始图像的方法是第一步骤的逆过程。
上述第五步骤的具体方法是:对于图像任何区域,由于相邻N行被分散到N个子图像中,均匀分布在整个图像中,只要这个区域在N个子图像中的对应部分没有都丢失,那么第五步骤的输入图像中,任意M(M<N)个连续的错误像素行总是夹在两个正确的像素行之间,通过在正确像素行之间利用空间预测恢复M个连续的错误像素行。
上述第六步骤的方法是对于视频解码,把第五步骤得到的图像重新按照第一和第二步骤进行抽取和拼接后取代解码图像保存为解码器的参考帧。用于提高后续帧时间参考的质量,提高解码效果。
本发明的思想是用类似全息照相的方法,通过对图像的像素行重排,使图像的局部具有在一定程度上表示整幅图像的能力,从而在发生误码时,能够用剩余的图像较好的恢复图像丢失的部分。实验表明,本发明的方法有很强的错误纠正能力,以突发误码导致的图像连续丢失为例,只要图像正常部分超过1/N,仍然能够恢复整幅图像。由于图像相邻行的相关性非常高,在N不大于3时,本发明恢复的图像质量非常高,在画面大面积丢失时,其视觉效果明显优于其它方法。本发明可以用于抗误码视频和图像编码,对编码器没有任何特别的要求,兼容性好,是一种通用的方法。
附图说明
图1为本发明的视频/图像编解码***框图。
图2为本发明实施例以N=3为例,抽取出子图像0得到子图像1和子图像2。
图3为本发明实施例以N=3为例,将子图像0,子图像1和子图像2拼接为新图像。
图4为本发明实施例以N=3为例,将子图像0,子图像1和子图像2从解码图像中恢复出来。
图5为本发明实施例以N=3为例,用子图像0,子图像1和子图像2恢复源图像。
图6为本发明实施例以N=2,图像为CIF大小,误码导致第8、9宏块行无法解码为例,说明丢失图像的恢复方法,图中灰色的部分是误码导致丢失的图像。
图7为本发明实施例以N=2为例,连续1行丢失时线性插值的方法图。
图8为本发明实施例以N=3,图像为CIF大小,误码导致第6到12宏块行无法解码为例,说明丢失图像的恢复方法,图中灰色的部分是误码导致丢失的图像。
图9为本发明实施例以N=3为例,连续2行丢失时线性插值的方法图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。
本发明的原理为:图像的像素行重新排列,把原图像中相邻的像素行逐行抽取为N个子图像,这样每个子图像都可视为整幅图像在垂直方向上的一个亚采样表示,在一定程度上可以单独表示整幅图像。再把N个子图像在垂直方向上按照顺序拼接在一起形成重排图像,从而使得原图像在亚采样基础上具有N个表示,形成了在亚采样基础上的冗余。如果其中若干个子图像被破坏,只要其中任何一个子图像存在,就能在一定程度上恢复整幅图像。通过重排,使原图像中相邻的像素行被抽取到不同的子图像中,在重排图像中存放在距离较远的地方,从而不容易被突发错误同时破坏。因此,即使图像数据中某部分出现连续错误,导致部分宏块无法解码,也只会影响其中某些子图像。只要N个子图像对应部位没有全部丢失,由于图像相邻行的高度相关性,仍然可以用剩余的完好子图像在邻近像素行之间做空间预测恢复丢失的图像。所以在取N个子图像时,在图像连续丢失不超过(N-1)/N的情况下仍然能恢复原图像。在绝大部分情况下,传输媒体和记录媒体上的数据错误都呈突发分布,所以误码导致的图像丢失也多是连续错误。实验表明,在图像连续错误小于(N-1)/N的情况下,本发明的方法仍然能恢复原图像,在N不大于3时,恢复的图像峰值质量和视觉效果明显优于其它方法。由于本发明的方法不涉及视频和图像的编码、解码过程,并且只在图像内部做错误掩盖,所以本发明对视频编码和图像编码是通用的,可以配合任何视频编码算法和图像编码算法,是一种通用性非常高的方法。由于采用基于像素行的处理,简单且并行性高,本发明易于用DSP或者硬件实现。
本发明的具体方法是:在编码器对一帧图像编码之前先做前处理(图1):
第一步、对源图像按照像素行进行1/N抽取,得到N个垂直高度缩小为1/N的子图像:源图像的像素行号为从0开始依次递增的整数,将行号对N取模,结果为0到N-1,将取模结果相同的所有像素行按照原顺序存放在一起,得到N个子图像。由于图像行数不一定是N的整数倍,所以子图像的高度可能有1的差别。
以N=3为例,抽取出子图像0,子图像1和子图像2(图2)。
第二步、将子图像在垂直方向拼接成一个和原始图像等大小的新图像:将N个子图像根据序号在垂直方向字节拼接在一起。以N=3为例,将子图像0,子图像1和子图像2拼接为新图像(图3)。
在解码器得到一帧解码图像后做后处理:
第三步、从解码图像恢复N个子图像:这是第二步的逆过程,以N=3为例,将子图像0,子图像1和子图像2从解码图像中恢复出来(图4)。
第四步、将多个子图像依次逐行拼接,恢复原始图像:这是第一步的逆过程,以N=3为例,用子图像0,子图像1和子图像2恢复源图像(图5)。
第五步、如果有误码导致部分图像无法解码,则用相邻子图像做空间预测替换丢失的图像,这是本发明的核心:通过重排,原图像中相邻的像素行被抽取到不同的子图像中,从而不容易被突发错误同时破坏。因此,即使图像数据中某部分出现连续错误,导致部分宏块无法解码,也只会影响其中某些子图像。只要N个子图像对应部位没有全部丢失,由于图像相邻行的高度相关性,仍然可以用剩余的完好子图像在邻近像素行之间做空间预测恢复丢失的图像。所以在取N个子图像时,在图像连续丢失不超过(N-1)/N的情况下仍然能恢复原图像。
第六步骤、对于视频解码,如果发生了误码,还要把第五步骤得到的图像重新按照第一和第二步骤进行抽取和拼接后取代解码图像保存为参考帧。用于提高后续帧时间参考的质量,提高解码效果。
下面以最简单实用的线性插值的空间预测方法为例,说明错误图像的恢复方法。
对于连续丢失的图像,对任意N,只要丢失的图像不超过整幅图像的(N-1)/N,即可以保证在第四步拼接子图像后,任意丢失的像素行,总是位于有效的像素行之间。假设有效像素行a和b之间有M个丢失的像素行,则如下图,对第m行丢失的像素行,线性插值的通用公式如下:
xmi=((M-m-1)ai+(m+1)bi+M/2)/M
其中下标i表示像素的纵坐标。
下面分别以N=2和N=3,图像为CIF大小为例,说明丢失图像的恢复万法。
N=2时,假设误码导致解码器无法解码第8、9宏块行,即第128到159像素行(图6的灰色部分)。图中可以看出,在第四步结束后,所有无法解码的像素行都被夹在正常像素行之间。丢失的第n行可以由第n-1行和第n+1行的线性插值恢复,这里的n为1、3、5、...、31和256、258、260、...、286。
线性插值的方法如图7,公式如下:
xi=(ai+bi+1)/2
N=3时,假设误码导致解码器无法解码第6到12宏块行(子图像1全部和子图像2的第1个宏块行),即第96到207像素行(图7的灰色部分)。图8中可以看出,在第四步结束后,所有无法解码的像素行仍然被正常像素行分隔开。丢失的图像可以分为两部分,丢失的第n、n+1行可以由第n-1行和第n+2行的线性插值恢复,这里的n为1、4、7、...、46。
线性插值的方法如图9,公式如下:
x0i=(2ai+bi+2)/3
x1i=(ai+2bi+2)/3
和N=2类似,丢失的第n行可以由第n-1行和第n+1行的线性插值恢复,这里的n为49、52、55、...、286。这部分线性插值的方法和N=2的情况相同。
由于以上每一步对图像的处理都是以行为单位,在行内的多个像素点之间并行进行的,所以不但非常有利于在PC机上用CPU的SIMD指令集实现,也非常易于用DSP或者硬件实现。另外,本发明的方法仅在图像内部利用空间预测做错误掩盖,不涉及视频和图像的编码、解码过程,所以本发明对视频编码和图像编码是通用的,可以配合任何视频编码算法和图像编码算法。这是一种实用性非常高的方法。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (6)
1、一种基于像素行重排的图像和视频抗误码方法,包含以下步骤:
在编码器对一帧图像编码之前,执行以下步骤:
第一步骤、按照像素行对图像进行1/N抽取,得到N个高度缩小为1/N的子图像;
第二步骤、将这些子图像在垂直方向拼接成一个和原始图像等大小的新图像,将该新图像进行编码,将该编码后的新图像经过传输信道或存储媒体提供给解码器,经过解码器解码得到一帧解码图像后,执行以下步骤:
第三步骤、从解码图像恢复N个子图像;
第四步骤、将多个子图像依次逐行交织在一起,恢复原始图像;
第五步骤、如果有误码导致部分图像无法解码,则用相邻子图像做空间预测替换丢失的图像;
第六步骤、对于视频解码,如果发生了误码,把第五步骤得到的图像重新按照第一和第二步骤进行抽取和拼接后取代解码图像保存为解码器的参考帧。
2、如权利要求1所述的基于像素行重排的图像和视频抗误码方法,其特征在于:第一步骤的抽取方法是将像素行的行号对N取模,模相同的行按原顺序抽取到一起,构成一个子图像,共得到N个子图像,模值即子图像的序号。
3、如权利要求1所述的基于像素行重排的图像和视频抗误码方法,其特征在于:第二步骤的拼接方法是将N个子图像按照序号递增顺序从上向下连续存放在一起。
4、如权利要求1所述的基于像素行重排的图像和视频抗误码方法,其特征在于:第三步骤的恢复子图像的方法是第二步骤的逆过程。
5、如权利要求1所述的基于像素行重排的图像和视频抗误码方法,其特征在于:第四步骤的恢复原始图像的方法是第一步骤的逆过程。
6、如权利要求1所述的基于像素行重排的图像和视频抗误码方法,其特征在于:第五步骤的具体方法是:对于图像任何区域,由于相邻N行被分散到N个子图像中,均匀分布在整个图像中,只要这个区域在N个子图像中的对应部分没有都丢失,那么第五步骤的输入图像中,任意M个连续的错误像素行总是夹在两个正确的像素行之间,通过在正确像素行之间利用空间预测恢复M个连续的错误像素行,其中M<N。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710168411 CN100574440C (zh) | 2007-11-22 | 2007-11-22 | 一种基于像素行重排的图像和视频抗误码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710168411 CN100574440C (zh) | 2007-11-22 | 2007-11-22 | 一种基于像素行重排的图像和视频抗误码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101267555A CN101267555A (zh) | 2008-09-17 |
CN100574440C true CN100574440C (zh) | 2009-12-23 |
Family
ID=39989638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710168411 Expired - Fee Related CN100574440C (zh) | 2007-11-22 | 2007-11-22 | 一种基于像素行重排的图像和视频抗误码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100574440C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111683216A (zh) * | 2020-05-25 | 2020-09-18 | 福建云视听信息科技有限公司 | 一种交织模式下隔行视频处理方法、***、设备及介质 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098500A (zh) * | 2011-03-02 | 2011-06-15 | 天津大学 | 一种提高八视点自由立体视频网络传输性能的纠错方法 |
CN102164286B (zh) * | 2011-05-27 | 2012-09-26 | 天津大学 | 一种八视点自由立体视频传输错误隐藏方法 |
CN110769206B (zh) * | 2019-11-19 | 2022-01-07 | 深圳开立生物医疗科技股份有限公司 | 一种电子内窥镜信号传输方法、装置和***及电子设备 |
-
2007
- 2007-11-22 CN CN 200710168411 patent/CN100574440C/zh not_active Expired - Fee Related
Non-Patent Citations (2)
Title |
---|
全景图拼接算法的设计与实现. 杨刚.重庆工学院学报(自然科学版),第21卷第9期. 2007 |
全景图拼接算法的设计与实现. 杨刚.重庆工学院学报(自然科学版),第21卷第9期. 2007 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111683216A (zh) * | 2020-05-25 | 2020-09-18 | 福建云视听信息科技有限公司 | 一种交织模式下隔行视频处理方法、***、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101267555A (zh) | 2008-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100677083B1 (ko) | 디지털 영상 데이터 통신 시스템에서의 오류 전파 억제를위한 송수신 데이터의 처리 방법 및 이를 위한 기록 매체 | |
KR101055738B1 (ko) | 베이스 레이어의 내부모드 블록의 예측정보를 이용하여 영상신호를 엔코딩/디코딩하는 방법 및 장치 | |
KR100667806B1 (ko) | 영상 부호화 및 복호화 방법 및 장치 | |
Puri et al. | PRISM: A new robust video coding architecture based on distributed compression principles | |
JP5918328B2 (ja) | 画像符号化方法及び画像復号方法 | |
CN102204242B (zh) | 用于增加帧显示速率的方法和*** | |
US20080130738A1 (en) | Reference Frame Ordering For Multi-View Coding | |
US20090052528A1 (en) | Method and Apparatus for Encoding/Decoding Video Signal Using Block Prediction Information | |
CN113766249B (zh) | 视频编解码中的环路滤波方法、装置、设备及存储介质 | |
CN101163250B (zh) | 一种基于边界梯度的视频流容错方法 | |
CN100574440C (zh) | 一种基于像素行重排的图像和视频抗误码方法 | |
JP3351645B2 (ja) | 動画像信号の符号化方法 | |
CN101291436B (zh) | 视频编/解码方法和视频编/解码装置 | |
KR20060063608A (ko) | 영상신호의 엔코딩/디코딩시에 영상블록에 대한 레지듀얼예측을 수행하는 방법 및 장치 | |
CN103997651A (zh) | 一种合成图像的数据压缩方法及装置 | |
Song et al. | A data embedding scheme for H. 263 compatible video coding | |
CN1147157C (zh) | 解码装置和解码方法 | |
KR100883591B1 (ko) | 베이스 레이어의 내부모드 블록의 예측정보를 이용하여영상신호를 엔코딩/디코딩하는 방법 및 장치 | |
CN101601297B (zh) | 用于对视频序列的画面组进行编码的方法和设备 | |
CN102300098A (zh) | 一种基于可逆信息隐藏和冗余技术的视频容错编码方法 | |
CN111212288B (zh) | 视频数据的编解码方法、装置、计算机设备和存储介质 | |
CN101986713A (zh) | 基于视点合成的多视点容错编码框架 | |
Lin et al. | An error resilient technique using reversible data embedding in H. 264/AVC | |
US20080049836A1 (en) | Method and System for a Fast Video Transcoder | |
CN103702129A (zh) | 视频编码方法与视频编码装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091223 Termination date: 20111122 |