当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]由于受到无线传输带宽的限制, 无人机对地面目标侦察获得的高分辨率视频图像必须经过有效压缩才能实时传输给地面接收处理系统。现有的视频压缩标准有H.261、H. 262、H . 263 及MPEG-1、M

由于受到无线传输带宽的限制, 无人机对地面目标侦察获得的高分辨率视频图像必须经过有效压缩才能实时传输给地面接收处理系统。现有的视频压缩标准有H.261、H. 262、H . 263 及MPEG-1、MPEG-2、MPEG-4 等。

其中MPEG-4 由于采用基于对象的压缩编码方法, 较之以往各标准的基于帧的压缩编码方法, 其时间和空间冗余更低, 在保持解码质量的同时提高了压缩率。MPEG-4 还具有更好的交互性能及更强的抗误码性能 , 较之以往的压缩标准, 更适合无线信道的传输。

视频压缩算法比较复杂, 加之无人机有效载荷的重量和体积限制, 难以实现对机载视频图像的实时压缩编码,通常只能低分辨率图像实时压缩。本文基于TI 公司最新推出的媒体处理器TMS320DM642 设计并实现了机载图像实时压缩编码与处理系统, 实现了对最高分辨率为D1分辨率机载视频图像的分辨率和压缩比可调的MPEG-4实时压缩处理及恒定码流的输出。

1 设计要求

整个压缩处理系统完成对机载高分辨率摄像机输出的PA L 制式模拟视频信号进行实时采集、压缩与传输。

为了便于地面接收处理系统实时地分析图像, 须将无人机拍摄图像的时间及空间位置等附加信息和压缩图像数据实时地打包。MPEG-4 为不等长压缩编码, 为便于无线传输, 需将MPEG-4 数据包流进行编帧, 形成256 KB/ s的恒定基带码流, 实时传输给无线信道子系统供调制发射。系统还需根据控制命令动态地改变图像的分辨率及压缩比。

2 系统硬件设计

2. 1 TMS320DM642 芯片的特点

DM642 属于TMS320C64x 系列DSPs。Veloci T I 结构使C6000 DSPs 在视频和图像处理中得到广泛应用。

CPU 的VLIW 结构由多个并行运行的执行单元组成, 这些单元在单个周期内可执行多种指令。并行是C6000 获得高性能的关键。C64x 在C6000 的基础上有一些重要的改进。除了有更高的时钟频率外, C64x 从以前的VelociTI 结构扩展到Veloci TI. 2 结构, 包含了许多新的指令,增加了额外的数据通道, 寄存器的数量也增加了一倍。这些扩展使得CPU 可以在一个时钟周期内处理更多的数据, 从而获得更高的运算性能。

DM642 芯片集成了各种片内外设, 使得开发视频和图像领域的应用更为方便。它带有3 个可配置的视频端口, 提供与视频输入、视频输出以及码流输入的无缝接口。

这些视频端口支持许多格式的视频输入/ 输出。利用DM642 开发视频编码器, 其视频输入部分只需要一块视频采集芯片即可, 如AD 公司的A DV7181, 无需外加逻辑控制电路和FIFO 缓存, 使硬件系统更为简单和稳定。

DM642 集成的64 位的无缝外部存储器接口( EMIF) , 能够实现与外部同步和异步存储器或外设的无缝连接。

DM642 的其他外设包括: 10 Mbps/ 100 Mbps 的以太网口( EMAC) 、多通道音频串口(McASP) 、主机接口( HPI) 、多通道缓冲串口( McBSP) 以及PCI 接口等。

2. 2 系统硬件组成

机载图像实时压缩与处理系统以TMS320DM642 高性能通用DSP 芯片为核心, 由视频输入采集模块、图像压缩处理模块、外部存储模块及传输控制接口模块组成。其硬件系统框图如图1 所示。

图1 机载视频图像实时压缩处理系统硬件框图

图像采集模块对输入模拟视频信号进行同步捕获、采集和视频解码。视频解码器输出的数据格式为YUV4: 2:2。视频解码数据通过DMA 通道向DM642 VPORT 通道缓冲单元发送数据, 当采集完一帧数据时产生DMA 中断。图像压缩处理模块根据接收到的控制命令将视频解码数据进行实时压缩数理后缓存到存储模块中。存储模块采用32 MB 64 位的SDRAM, 实现程序和数据的存储。

传输控制接口模块将缓存在SDRAM 中的待传输码流以256 KB/ s 的恒定速率8 位并行传输至输出端口, 并接收地面发送的控制命令。该模块由FIFO 芯片和CPLD 组成, FIFO 半空时向DSP 发送中断信号。

2. 3 系统工作流程

系统由初始化模块、采集模块、压缩模块、打包编帧模块、存储模块和传输模块组成。其工作流程如图2 所示。

图2 机载图像将压缩处理子系统软件工作流程

初始化模块完成对程序从Flash 中导入内存、DSP各端口及解码芯片工作模式的设置及全局数据的申请及初始化, 并启动对视频端口状态的查询。当定时检测到视频端口缓冲区中有数据时, 将端口缓冲区中的原始数据根据接收的控制命令进行指定大小大抽取, 输出YUV4: 2: 0格式的图像数据缓存到外围存储模块中。压缩模块将采集的图像数据进行MPEG-4 压缩。打包、编帧模块将压缩后的MPEG-4 编码数据进行实时打包, 并对打包后的数据进行连续的实时编帧。当数据包缓冲区中无数据时,便在传输帧中插入空数据。编帧完的数据64 位并行缓存到外围SDRAM 中。在FIFO 中断服务程序中, 启动一次DMA 传输, 将缓存在SDRAM 中的帧数据流传输到FIFO 中, 实现256 KB/ s 的恒定速率的数据传输。

需要注意的是原始图像和压缩码流在DSP 中的存储。视频端口、编码程序都要访问原始图像, 例如在某一时刻,编码程序访问当前帧图像, 而视频端口正在输入下一帧图像, 为了避免访问冲突, 原始图像在DSP 中采用三缓冲区进行管理。压缩码流由编码程序写入, 根据FIFO 状态恒定码率输出, 所以采用环式存储管理协调读写的步调。

2. 4 内存分配

DM642 片内只有256 KB 的存储空间, 因此当前帧、参考帧和当前帧的重建帧都必须放至片外存储器, 压缩码流若被主机读取, 也放至片外。其他数据如程序代码、全局变量、VLC码表、各编码模块产生的中间数据等均可放至片内。

由于CPU 访问片外的速度通常要比访问片内慢几十倍, 片外数据的传输通常成为程序运行时的瓶颈, 即使代码效率很高, 流水线也会因为等待数据而被严重阻塞。解决这一问题的有效方法是用EDMA 传送数据。程序是逐个宏块进行编码时, 在编码当前宏块的同时, EDMA 将下一个宏块的数据、用到的参考帧数据由片外传送至片内;当前宏块做完成运动补偿后, EDMA 将重建后的宏块由片内传送至片外。这样CPU 只对片内数据进行操作, 使得流水线可以顺利进行, 而压缩码流按逐个码字有时间间隔地写入, 可由CPU 直接写至片外。

3 基于DM642 的软件优化技术

为了提高代码的执行效率, 必须充分利用C64x CPU的VL IW 和流水线结构对其进行优化, 使程序无冲突地并行执行[ 6] 。MPEG 4 编码程序中包含大量的循环体, 例如计算量化、DCT、半像素插值、运动补偿和构建重建帧等。这些循环体代码并不复杂, 且执行次数频繁, 占据了编码的绝大部分时间, 因此循环体的优化是重点。本文所采取的代码优化为C 语言优化和编写线性汇编两个步骤,主要从消除数据相关性、数据打包和循环体的软件流水3个方面进行优化。

3. 1 针对C语言的优化

C 代码的优化主要依靠开发环境CCS 的编译器完成, 编程者需要合理选择编译选项, 并利用特定的关键字和指令向编译器提供优化信息 。例如关键字rest rict 用来消除数据间的相关性, 编译器从而可以安排语句的并行执行 ; 内联函数_ nasser t 有助于数据的打包处理; 宏指令# pragma MU ST _IT ERAT E 告诉编译器有关循环迭代次数的信息, 编码器会根据这一信息进行软件流水。

3. 2 用线性汇编改写关键代码

线性汇编是TMS320C6000 特有的一种编程语言, 介于高级语言和汇编语言之间。它可以指定指令用到的寄存器和功能单元, 更易于对数据的打包处理。

线性汇编代码的并行处理和软件流水由汇编优化器完成, 编程者需要熟悉C64x DSP 的CPU 结构和指令集, 认真设计代码并充分利用编译器的反馈信息合理修改代码, 才能写出高质量的线性汇编。本设计中程序主框架采用C 语言编写, 其它各关键部分的代码采用线性汇编实现。

4 结果分析

本压缩系统在对标准Foreman 序列、地面人群及道路车辆等视频序列进行压缩测试。对D1 分辨率视频序列能够实现25 帧/ 秒实时的压缩编码, 压缩码率为1. 8 Mb/ s, 解码图像视觉效果良好, 经编帧后输出250KB/ s 恒定基带码流。在图像传输中没有出现数据拥塞和丢失现象。有效满足了高清晰机载图像帧察的目的。

5 结束语

本文以TMS320DM642 芯片为中心, 详细介绍了机载图像实时压缩系统的设计及MPEG 4 实时编码器的优化。系统经测试实现了高分辨率图像的实时压缩和实时编帧传输, 满足了系统设计需求。本文采用MPEG 4Simlpe Profile 算法, 在算法方面还有一定的研究空间。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

嵌入式处理器是一种特殊的计算机处理器,它被设计用于嵌入到各种设备和系统中,以实现特定的功能。由于其低功耗、高性能和可靠性等特点,嵌入式处理器在许多领域都有广泛的应用,如汽车电子、工业控制、医疗设备等。本文将对嵌入式处理器...

关键字: 嵌入式处理器 嵌入式系统

2023年10月10日, [恩智浦创新技术论坛] 在深圳湾万丽酒店举行,众多工业、物联网、新能源和医疗等行业的企业出席论坛,深入交流市场趋势与行业洞察,一同讨论如何协同面对市场的机遇与挑战,共同促进未来市场的发展。米尔电...

关键字: NXP 嵌入式处理器

据业内信息报道,昨天 AMD 在 Embedded World 上宣布了其第四代 EPYC 嵌入式处理器,该处理器采用其 Zen 4 架构,旨在云和企业计算以及工厂车间工业边缘服务器中的嵌入式网络、安全、防火墙和存储。

关键字: Zen 4 AMD EPYC 嵌入式处理器

摘 要 :智能电网以优良的性能服务于国民生产,主要依靠接入电力系统设备间的网络通信。便携式电力设备的网络通信性能测试对于智能电网的运行具有重要意义。以嵌入式处理器为核心,提出了一种智能电网设备网络通信性能的便携式测试装置...

关键字: 智能电网 嵌入式处理器 WinCE操作系统 通信 便携式测试装置 人机接口

随着对高处理能力、实时多任务、网络通信、超低功耗需求的增长,传统8位机已远远满足不了新产品的要求,高端嵌入式处理器已经进入了国内开发人员的视野,并在国内得到了普遍的重视和应用。

关键字: 32位 ARM 嵌入式处理器 调试技术

技嘉官网现出现了两款新的迷你PC产品,GB-BSRE-1505和GB-BSRE-1605,这两款型号是面向商用的,一般会是公司采购,所以并不像消费者产品那么紧跟时代潮流,这两款新的迷你PC用的处理器还是AMD的第一代锐龙...

关键字: 技嘉 pc 锐龙 嵌入式处理器

  Ixia宣称,推出用于验证 LTE 小型蜂窝系统的新型测试解决方案。Ixia 的 IxCatapult 测试解决方案能够确保 LTE 毫微微蜂窝、微微蜂窝和微蜂窝的高性能、复原能力和品质。

关键字: 图像压缩 jpeg2000 视频编码 lm9627

  车道偏离报警和自动泊车等汽车应用将成为今年嵌入式视觉系统的主要增长动因,嵌入式视觉系统是一项赋予机器“视觉”并通过计算机视觉软件解释数据的技术。   汽车发动

关键字: 嵌入式处理器 工厂自动化 嵌入式视觉系统 工业安防

智能锁是指区别于传统机械锁,在用户识别、安全性、管理性方面更加智能化的锁具,涵盖指纹锁、电子密码锁、电子感应锁、联网锁、遥控锁等具体类型锁具产品。 智能门锁的优点: 便利性

关键字: 单片机 嵌入式处理器 智能锁
关闭
关闭