嵌入式视频图像系统压缩算法的实现和优化
[10-10 20:42:03] 来源:http://www.88dzw.com 电子制作 阅读:8505次
文章摘要:return 1; } DAT.copy(tempbuf,framebuf,152064); Tembuf+=152064; return 0; } 编码器的总体性能 表2MPEG-4编码器的性能 从表2数据可以看出,对于不同的视频序列帧率提高至少5倍以上,信噪比虽然有所降低,但是由于频帧的大幅度提高并达到实时要求而得到弥补,显示效果更好。 结语 笔者论述了TMS32OC6455DSP 平台上进行视频编码算法优化的措施。主要考虑根据DSP自身特点和视频算法进行优化,通过实验可以验证达到30帧/秒以上的实时性要求,随着IC 技术的发展和DSP 价格的降低,基于DSP的视频编码器的商用价值越来越
嵌入式视频图像系统压缩算法的实现和优化,标签:电子小制作,http://www.88dzw.comreturn 1;
}
DAT.copy(tempbuf,framebuf,152064);
Tembuf+=152064;
return 0;
}
编码器的总体性能
表2 MPEG-4编码器的性能
从表2数据可以看出,对于不同的视频序列帧率提高至少5倍以上,信噪比虽然有所降低,但是由于频帧的大幅度提高并达到实时要求而得到弥补,显示效果更好。
结语
笔者论述了TMS32OC6455DSP 平台上进行视频编码算法优化的措施。主要考虑根据DSP自身特点和视频算法进行优化,通过实验可以验证达到30帧/秒以上的实时性要求,随着IC 技术的发展和DSP 价格的降低,基于DSP的视频编码器的商用价值越来越明显。
2.尽量减少数据类型的大小。可以用 8位数据就不用 16位数据 , 这样不但节省空间 ,而且能提高L1D的使用效率。因为 L1D行的大小是固定的, 在一行内如果采用 8位数据 比 16位数据可多放一倍 , 从而减少程序中 Cache缺失情况的发生。
3.采用乒乓缓存结构, 提高 Cache命中率 , 减少 CPU等待时间。
在视频编码模块中,当前帧和参考帧数据放在片外存储器,在编码过程中需要依次对图像帧中的每个宏块进行操作。但宏块直接从片外内存读取,这就会发生CPU等待。可以设置两对片上缓存,一对存放当前帧宏块,一对存放参考帧宏块,它们以乒乓方式工作。乒乓缓冲工作模式如图1所示。编码前E DMA将片外的当前帧中编码宏块数据和在搜索范围内的参考帧宏块数据搬移到片上内存。在用EDMA搬移数据到其中一块片内缓存的同时,,处理器可以对另一块缓存中的数据进行处理。经过这样的修改,CPU一直从片上读取存储器数据大大减少了CPU阻塞情况的发生,提高了编码速度。
图2 乒乓缓冲存储器结构
SAD和像素插值的优化
SAD(Sum ofAbsolute Difference)是运动估计模块[7]关键模块 , 而 DM642提供了一套丰富的视频和图像专用指令可以高效实现运动估计算法。
LDNDW (Load Non2alignedDoubleWord)指令,可以一次读取 64位无边界数据。这个指令可以从当前帧中和参考帧一次读取8个 8位像素数据。因此可以提高当前帧和参考帧宏块数据的搬移速度。
SUBABS4(Subtractwith Absolute)指令,计算在两组 8位数据包之间的 4个绝对值之差。
DOPTPU4是个计算 4对 8位数据乘积求和的运算。两个 DOPTPU4可在单周期内并行 , 所以可极大地提高 SAD的计算速度。具体步骤如下:
1)两个 LDNDW指令从当前帧和参考帧取 8个像素;
2)两个 SUBABS4计算 8个像素的差值;
3)两个 DOTPU4计算 8个像素乘积求和。
像素插值也是个计算量大的模块。AVG4指令可执行 4个 8位数值平均值计算。AVG2可以执行 2个 16位数据的平均计算。SHRMB(Shift Right andMerge Byte) 右移第 2个寄存器 , 把第 1个寄存器的低位作为高字节。AVG4计算平均值,SHRMB处理结果。
此外笔者参考 TI提供的 IMGLIB支持库 该库中还包括了许多常用的图像和视频处理的函数 ,以完成 DCT、 IDCT (Inverse Direct Cosine Transform)、中值滤波等功能 , 这些函数都是经过汇编优化。完全能够实现软件流水, 执行效率很高。采用标准序列 Coastguard.yuv编码 5帧数据,主要函数优化前后性能比较,如表 1所示。
表 1 各个函数优化性能比较
Tab1Performance of functions by analysis
- 上一篇:新一代视频编码器
《嵌入式视频图像系统压缩算法的实现和优化》相关文章
- › 嵌入式视频图像系统压缩算法的实现和优化
- › 基于GM8180的嵌入式视频服务器设计
- › 嵌入式视频监控组件的设计与实现
- › 面向嵌入式视频处理平台的Linux移植
- › 嵌入式视频处理系统领域的FPGA验证
- 在百度中搜索相关文章:嵌入式视频图像系统压缩算法的实现和优化
- 在谷歌中搜索相关文章:嵌入式视频图像系统压缩算法的实现和优化
- 在soso中搜索相关文章:嵌入式视频图像系统压缩算法的实现和优化
- 在搜狗中搜索相关文章:嵌入式视频图像系统压缩算法的实现和优化