应用于雷达采集卡的图像压缩方法.pdf

上传人:1*** 文档编号:1106268 上传时间:2018-03-31 格式:PDF 页数:30 大小:1.33MB
返回 下载 相关 举报
摘要
申请专利号:

CN200910072800.3

申请日:

2009.09.07

公开号:

CN101662685A

公开日:

2010.03.03

当前法律状态:

终止

有效性:

无权

法律详情:

未缴年费专利权终止 IPC(主分类):H04N 7/30申请日:20090907授权公告日:20110420终止日期:20140907|||授权|||实质审查的生效IPC(主分类):H04N 7/30申请日:20090907|||公开

IPC分类号:

H04N7/30; G01S7/02

主分类号:

H04N7/30

申请人:

哈尔滨工程大学科技园发展有限公司

发明人:

魏 宇; 孙晓梅; 李玉深

地址:

150001黑龙江省哈尔滨市南岗区南通大街258号船舶大厦15楼

优先权:

专利代理机构:

哈尔滨市松花江专利商标事务所

代理人:

张果瑞

PDF下载: PDF下载
内容摘要

应用于雷达采集卡的图像压缩方法,属于雷达领域,本发明是为了解决现有的雷达采集卡将未经压缩的大量的图像直接传送给PC机,没有实现在板卡上的压缩,导致对传输总线实时传输性能的要求过高的问题。本发明的雷达卡采集雷达模拟VGA信号,转换成三路VGA数字信号,由三个从DSP依次传输给主DSP,主DSP将三路VGA数字信号依据三基色原理合成获得一幅完整雷达图像,主DSP采用LS97小波对采集到的所述一幅完整雷达图像进行小波正变换,获得小波系数,主DSP采用基于块位长的无链表小波分块编码算法对步骤七得到的

权利要求书

1: 应用于雷达采集卡的图像压缩方法,所述雷达采集卡包括AD采样电路 (1)、FPGA(2)、主DSP(3)、R路从DSP(4)、G路从DSP(5)、B路从 DSP(6)、主外部存储器(31)、R路外部存储器(41)、G路外部存储器(51) 和B路外部存储器(61),FPGA(2)内部构建有R路FIFO数据缓存器(2-1)、 G路FIFO数据缓存器(2-2)、B路FIFO数据缓存器(2-3)和控制器(2-4), AD采样电路(1)将采集的VGA模拟信号转换成三路数字信号输出,AD 采样电路(1)的R路数字信号输出端与R路FIFO数据缓存器(2-1)的输入 端相连,R路FIFO数据缓存器(2-1)的输出端与R路从DSP(4)的输入端相 连,R路从DSP(4)的数据输入输出端与R路外部存储器(41)的数据输入输 出端相连, AD采样电路(1)的G路数字信号输出端与G路FIFO数据缓存器(2-2) 的输入端相连,G路FIFO数据缓存器(2-2)的输出端与G路从DSP(5)的 输入端相连,G路从DSP(5)的数据输入输出端与G路外部存储器(51)的 数据输入输出端相连, AD采样电路(1)的B路数字信号输出端与B路FIFO数据缓存器(2-3) 的输入端相连,B路FIFO数据缓存器(2-3)的输出端与B路从DSP(6)的输 入端相连,B路从DSP(6)的数据输入输出端与B路外部存储器(61)的数据 输入输出端相连, R路从DSP(4)的I 2 C串行端口与AD采样电路(1)的I 2 C串行端口相连, 主DSP(3)、R路从DSP(4)、G路从DSP(5)和B路从DSP(6)通过控制 器(2-4)进行McBSP级联,其特征在于,该方法包括以下步骤: 步骤一、AD采样电路(1)采集雷达VGA模拟信号,并将所述VGA模拟 信号转换成三路VGA数字信号输出给FPGA(2), 步骤二、所述FPGA(2)将接收到的三路VGA数字信号进行暂存处理后, 分别发送给R路从DSP(4)、G路从DSP(5)和B路从DSP(6), 步骤三、所述R路从DSP(4)、G路从DSP(5)和B路从DSP(6)分别 把接收到的信息存入相应的外部存储器中, 步骤四、判断R路外部存储器(41)、G路外部存储器(51)和B路外部 存储器(61)存储的数据是否能达到一幅完整雷达图像, 判断结果为是,执行步骤五,判断结果为否,执行步骤一, 步骤五、在FPGA(2)的控制器(2-4)的控制下,R路外部存储器(41)、 G路外部存储器(51)和B路外部存储器(61)依次将存储的VGA数字信号 发送给主DSP(3),并存储在主外部存储器(31)中, 步骤六、主DSP(3)将存储在主外部存储器(31)中的三路VGA数字信 号依据三基色原理合成获得一幅完整雷达图像, 步骤七、主DSP(3)采用LS97小波对采集到的所述一幅完整雷达图像进 行小波正变换,获得小波系数, 步骤八、主DSP(3)采用基于块位长的无链表小波分块编码算法对步骤七 得到的小波系数进行编码,获得压缩码流,完成对采集到的雷达图像的压缩。
2: 根据权利要求1所述的应用于雷达采集卡的图像压缩方法,其特征在于, 步骤二所述FPGA(2)将接收到的三路VGA数字信号进行暂存处理后,分别 发送给R路从DSP(4)、G路从DSP(5)和B路从DSP(6)的过程中,三路 VGA数字信号的处理过程分别为: R路VGA数字信号的处理过程: R路VGA数字信号暂存在R路FIFO数据缓存器(2-1)中,当R路FIFO 数据缓存器(2-1)中的数据容量达到一半时,FPGA(2)将R路FIFO数据缓 存器(2-1)暂存的信息发送给R路从DSP(4); G路VGA数字信号的处理过程: G路VGA数字信号暂存在G路FIFO数据缓存器(2-2)中,当G路FIFO 数据缓存器(2-2)中的数据容量达到一半时,FPGA(2)将G路FIFO数据缓 存器(2-2)暂存的信息发送给G路从DSP(5); B路VGA数字信号的处理过程: B路VGA数字信号暂存在B路FIFO数据缓存器(2-3)中,当B路FIFO 数据缓存器(2-3)中的数据容量达到一半时,FPGA(2)将B路FIFO数据缓 存器(2-3)暂存的信息发送给B路从DSP(6)。
3: 根据权利要求1所述的应用于雷达采集卡的图像压缩方法,其特征在于, 步骤四关于判断R路外部存储器(41)、G路外部存储器(51)和B路外部存 储器(61)存储的数据是否能达到一幅完整雷达图像的方法为:当R路外部存 储器(41)、G路外部存储器(51)和B路外部存储器(61)中每一路都存有场 总点数×行总点数大小的数据时,则判定存储的数据达到一幅完整雷达图像。

说明书


应用于雷达采集卡的图像压缩方法

    【技术领域】

    本发明涉及一种应用于雷达采集卡的图像压缩方法,属于雷达领域。

    背景技术

    雷达图像采集卡(简称雷达采集卡)是船载航行数据记录仪的重要组成部分,是专用的雷达接口,用于采集船舶雷达显示器上实际显示的全部信息。这些信息包括任何距离圈或标志、方位标志、电子标绘符号、雷达图、选择的部分SENC(System Electronic Navigational Chart,系统电子导航图)或其他电子海图、航线计划、导航数据、航行警报和在显示器上可见的雷达状况据等。采集的信息通过一定的处理和传送,最后储存到数据保护容器中,如实地再现了采集时所显示的完整的雷达信息。

    VDR雷达采集卡应采集的是雷达显示器视频缓存输出的VGA模拟信号,需要将模拟的雷达图像信号转换为数字的图像信号。另一方面,对于一幅刷新率为1280×1024的雷达图像而言,如果雷达采集卡每15秒采集一幅图像,连续存储最近12小时的数字图像信号数据量是1280×1024×3×4×60×12≈11.3Gbyte,这么大的数据量,必须进行压缩。目前,仅用于AD采集的雷达采集卡大多利用一款高速视频AD采集VGA模拟信号,采集到的数字信号暂存在外部存储器中,然后数据不经过压缩,就利用PCI或USB或网络传输到PC机。依靠PC机的强大处理能力,进行图像数据的压缩,压缩完的数据再存储到数据保护容器里。这种方案的最大优点是硬件结构比较简单,硬件开支较小,但是其主要的缺点是:首先,由于这么大的数据量,需要采用高性能的传输总线解决实时传输的问题;其次,使得PC机的任务加重。微视图像公司生产的V520高精度图像采集卡就属于这种方案。还没有实现在板卡上的压缩。

    【发明内容】

    本发明的目的是解决现有的雷达采集卡将未经压缩的大量的图像直接传送给PC机,没有实现在板卡上的压缩,导致对传输总线实时传输性能的要求过高的问题,提供了一种应用于雷达采集卡的图像压缩方法。

    本发明所述雷达采集卡包括AD采样电路、FPGA、主DSP、R路从DSP、G路从DSP、B路从DSP、主外部存储器、R路外部存储器、G路外部存储器和B路外部存储器,FPGA内部构建有R路FIFO数据缓存器、G路FIFO数据缓存器、B路FIFO数据缓存器和控制器,

    AD采样电路将采集的VGA模拟信号转换成三路数字信号输出,AD采样电路的R路数字信号输出端与R路FIFO数据缓存器的输入端相连,R路FIFO数据缓存器的输出端与R路从DSP的输入端相连,R路从DSP的数据输入输出端与R路外部存储器的数据输入输出端相连,

    AD采样电路的G路数字信号输出端与G路FIFO数据缓存器的输入端相连,G路FIFO数据缓存器的输出端与G路从DSP的输入端相连,G路从DSP的数据输入输出端与G路外部存储器的数据输入输出端相连,

    AD采样电路的B路数字信号输出端与B路FIFO数据缓存器的输入端相连,B路FIFO数据缓存器的输出端与B路从DSP的输入端相连,B路从DSP的数据输入输出端与B路外部存储器的数据输入输出端相连,

    R路从DSP的I2C串行端口与AD采样电路的I2C串行端口相连,主DSP、R路从DSP、G路从DSP和B路从DSP通过控制器进行McBSP级联,该方法包括以下步骤:

    步骤一、AD采样电路采集雷达VGA模拟信号,并将所述VGA模拟信号转换成三路VGA数字信号输出给FPGA,

    步骤二、所述FPGA将接收到地三路VGA数字信号进行暂存处理后,分别发送给R路从DSP、G路从DSP和B路从DSP,

    步骤三、所述R路从DSP、G路从DSP和B路从DSP分别把接收到的信息存入相应的外部存储器中,

    步骤四、判断R路外部存储器、G路外部存储器和B路外部存储器存储的数据是否能达到一幅完整雷达图像,

    判断结果为是,执行步骤五,判断结果为否,执行步骤一,

    步骤五、在FPGA的控制器的控制下,R路外部存储器、G路外部存储器和B路外部存储器依次将存储的VGA数字信号发送给主DSP,并存储在主外部存储器中,

    步骤六、主DSP将存储在主外部存储器中的三路VGA数字信号依据三基色原理合成获得一幅完整雷达图像,

    步骤七、主DSP采用LS97小波对采集到的所述一幅完整雷达图像进行小波正变换,获得小波系数,

    步骤八、主DSP采用基于块位长的无链表小波分块编码算法对步骤七得到的小波系数进行编码,获得压缩码流,完成对采集到的雷达图像的压缩。

    本发明的优点:大量的雷达图像在板卡上压缩后再传送给上位机,对传输总线的传输性能要求不高,实时性好,灵活性高,硬件结构简单。

    【附图说明】

    图1是本发明方法的流程图,图2是本发明所述雷达采集卡的原理图,图3是四个DSP的JTAG连接图,图4是两个DSP之间McBSP串行端口连接示意图,图5是四个DSP通过控制器实现McBSP级联的原理示意图,图6是以太网接口电路W5100与主DSP的连接图,图7是上位机的工作流程,图8是与上位机配套的采集卡的总的工作流程,图9是主DSP工作流程图,图10是R路从DSP工作流程图,图11是G路从DSP工作流程图,图12是B路从DSP工作流程图,图13是16块分裂示意图。

    【具体实施方式】

    具体实施方式一:下面结合图1至图13说明本实施方式,本实施方式所述雷达采集卡包括AD采样电路1、FPGA2、主DSP3、R路从DSP4、G路从DSP5、B路从DSP6、主外部存储器31、R路外部存储器41、G路外部存储器51和B路外部存储器61,FPGA2内部构建有R路FIFO数据缓存器2-1、G路FIFO数据缓存器2-2、B路FIFO数据缓存器2-3和控制器2-4,

    AD采样电路1将采集的VGA模拟信号转换成三路数字信号输出,AD采样电路1的R路数字信号输出端与R路FIFO数据缓存器2-1的输入端相连,R路FIFO数据缓存器2-1的输出端与R路从DSP4的输入端相连,R路从DSP4的数据输入输出端与R路外部存储器41的数据输入输出端相连,

    AD采样电路1的G路数字信号输出端与G路FIFO数据缓存器2-2的输入端相连,G路FIFO数据缓存器2-2的输出端与G路从DSP5的输入端相连,G路从DSP5的数据输入输出端与G路外部存储器51的数据输入输出端相连,

    AD采样电路1的B路数字信号输出端与B路FIFO数据缓存器2-3的输入端相连,B路FIFO数据缓存器2-3的输出端与B路从DSP6的输入端相连,B路从DSP6的数据输入输出端与B路外部存储器61的数据输入输出端相连,

    R路从DSP4的I2C串行端口与AD采样电路1的I2C串行端口相连,主DSP3、R路从DSP4、G路从DSP5和B路从DSP6通过控制器2-4进行McBSP级联,该方法包括以下步骤:

    步骤一、AD采样电路1采集雷达VGA模拟信号,并将所述VGA模拟信号转换成三路VGA数字信号输出给FPGA2,

    步骤二、所述FPGA2将接收到的三路VGA数字信号进行暂存处理后,分别发送给R路从DSP4、G路从DSP5和B路从DSP6,三路VGA数字信号的处理过程分别为:

    R路VGA数字信号的处理过程:

    R路VGA数字信号暂存在R路FIFO数据缓存器2-1中,当R路FIFO数据缓存器2-1中的数据容量达到一半时,FPGA2将R路FIFO数据缓存器2-1暂存的信息发送给R路从DSP4;

    G路VGA数字信号的处理过程:

    G路VGA数字信号暂存在G路FIFO数据缓存器2-2中,当G路FIFO数据缓存器2-2中的数据容量达到一半时,FPGA2将G路FIFO数据缓存器2-2暂存的信息发送给G路从DSP5;

    B路VGA数字信号的处理过程:

    B路VGA数字信号暂存在B路FIFO数据缓存器2-3中,当B路FIFO数据缓存器2-3中的数据容量达到一半时,FPGA2将B路FIFO数据缓存器2-3暂存的信息发送给B路从DSP6。

    步骤三、所述R路从DSP4、G路从DSP5和B路从DSP6分别把接收到的信息存入相应的外部存储器中,

    步骤四、判断R路外部存储器41、G路外部存储器51和B路外部存储器61存储的数据是否能达到一幅完整雷达图像,判断方法为:

    当R路外部存储器41、G路外部存储器51和B路外部存储器61中每一路都存有场总点数×行总点数大小的数据时,则判定存储的数据达到一幅完整雷达图像。

    判断结果为是,执行步骤五,判断结果为否,执行步骤一,

    步骤五、在FPGA2的控制器2-4的控制下,R路外部存储器41、G路外部存储器51和B路外部存储器61依次将存储的VGA数字信号发送给主DSP3,并存储在主外部存储器31中,

    步骤六、主DSP3将存储在主外部存储器31中的三路VGA数字信号依据三基色原理合成获得一幅完整雷达图像,

    步骤七、主DSP3采用LS97小波对采集到的所述一幅完整雷达图像进行小波正变换,获得小波系数,

    步骤八、主DSP3采用基于块位长的无链表小波分块编码算法对步骤七得到的小波系数进行编码,获得压缩码流,完成对采集到的雷达图像的压缩。

    雷达图像采集卡采集的输入信号的是雷达显示器的视频缓存输出,即雷达图像的VGA模拟信号,该图像的分辨率应在640×350到1280×1024之间,刷新频率在60Hz到85Hz之间,并且至少每隔15秒采集一幅完整的雷达图像。AD采样电路1将VGA模拟信号转换为标准的VGA数字信号,分别是R路数字信号、G路数字信号和B路数字信号。由于采集的雷达图像是分辨率从640×350到1280×1024、刷新率在60Hz至85Hz之间的共18种不同类型的图像。所以,每采集一种类型的雷达图像,都需要重新配置AD采样电路1相关寄存器的值,RGB信号输出模式等参数都是由AD采样电路1内部的控制寄存器的值决定,由主DSP3发命令给R路从DSP4,通过I2C总线对这些寄存器进行设置和修改,实现对AD采样电路1的初始化。

    AD采样电路1采用ADI公司的AD9888芯片。

    根据IEC61996对雷达采集卡的要求,采集输入的是RGB色度信号,采集图像的最高分辨率达到1280×1024,刷新频率为85Hz。这时,图像实际的行总点数是1728,场总点数是1072,算出像素的时钟频率:1728×1072×85=157.5Mhz。AD9888和THS8083能够满足这么高的采样频率。然而,由于TVP7002是TI公司刚推出来的最新的视频采样芯片THS8083的价格昂贵,使用率不普及,同时这方面的技术支持远没有AD公司做的全面和成熟。所以选择AD9888芯片。

    主DSP3、R路从DSP4、G路从DSP5和B路从DSP6采用TI公司C6000系列的TMS320DM642,所述TMS320DM642以下简称为DM642。

    DM642是一款针对多媒体处理领域的高速DSP处理器,基于C64x核心架构。它集成了丰富的外围设备和接口,最高主频达到了720MHz,并行处理指令的能力最大可达每个指令周期处理8条32位指令,因此最大指令处理速度为5760MIPS。

    当输入图像的分辨率是1280×1024,刷新频率是85Hz时,其像素频率可达到157.5MHz,这也就是说明了R路数字信号、G路数字信号和B路数字信号的输出速率也是157.5M,每路的数字量是1.3MB。然而,对于TI公司的DSP而言,仅是TMS320C6000系列(简称C6000)的DSP含有100MHz对外围设备的增强直接存储器存取EDMA(去除冗余,实际应用中仅能达到75MHz左右),因此本实施方式选择C6000系列的DSP来读取这三路数字信号。由于三路数字所要求的最高频率为157.5×3÷4=118.125MHz,因此,选用三片C6000的DSP(主DSP3、R路从DSP4和G路从DSP5),分别接收AD采样电路1输出的R路数字信号、G路数字信号和B路数字信号。在AD采样电路1后面,加入一款高速的FPGA2,在FPGA2里面构建三个并行的8位进32位出的FIFO(First In First Out,先进先出数据缓存器),分别为R路FIFO数据缓存器2-1、G路FIFO数据缓存器2-2、B路FIFO数据缓存器2-3,然后再把这三路数字信号读取到与从DSP相对应的外部存储器中。

    DM642具有2个独立的EMIF:EMIFA和EMIFB,EMIFA总线宽度为64bit,EMIFB总线宽度为16bit。

    四个DSP同时硬件仿真调试,要求这些DM642的JTAG端口和14针的接头间以菊花链方式互连,如图3所示。扫描链数据信号从JTAG插座的TDI引脚输出,依次经过R路从DSP4、主DSP、G路从DSP5和B路从DSP6,最后从B路从DSP6的TDO引脚返回JTAG插座,形成一个串行的回路。由于需要驱动多片DM642,故为JTAG链路添加了驱动芯片245。TCK是时钟信号,DM642所接收的来自TDI引脚的数据在TCK的上升沿取样,驱动器输出分别驱动各个DM642的TCK信号。TMS、TEST分别为JTAG接口的状态控制信号和复位信号,经过驱动后输出。EMU是TI公司DSP的专用信号,DM642通过此引脚发出在线编程的信号,告诉主机可以开始对其在线调试和编程。EMU0、EMU1、TMS、TDI和TCK需要通过上拉电阻连接至VCC,以便当仿真器未连接时,可控制它们至一确定的值。

    DM642有2个McBSP端口,图4是两片DM642进行McBSP数据通信的管脚连接图。为了达到最大的传输速度,DM642的McBSP发送数据部分必须作为时钟信号和帧同步信号的主控端。

    主DSP3与哪一路从DSP进行通讯通过FPGA2中的控制器2-4来控制,主DSP3通过往控制器2-4里写0x01、0x02和0x03对应选择与R路从DSP4、G路从DSP5、B路从DSP6进行McBSP(双通道缓冲串行口)通讯,四个DSP的McBSP级联示意图如图5所示。

    主外部存储器31、R路外部存储器41、G路外部存储器51和B路外部存储器61采用SDRAM。

    在图像采集系统中,采集图像的最高分辨率可到1280x1024,而AD采样电路1的RGB三个通道的量化位数为8位,因此,我们存储一帧图像至少需要的存储器容量为:1280×1024×8×3=31457280bit约31.5Mbit。SDRAM可以无缝的接入到DM642的EMIFA,EMIFA支持8\16\32\64bit的数据访问,SDRAM可以满足EMIFA的100M的输入时钟,SDRAM的成本低,速度和体积满足要求,操作方便。SDRAM的工作速度与系统总线速度是同步的,工作时钟周期最小可为5ns。SDRAM只在时钟的上升沿读取数据,是DRAM系列产品中控制最简单的。

    所述雷达采集卡还包括主非易失性存储器32、R路非易失性存储器42、G路非易失性存储器52和B路非易失性存储器62,主DSP3的数据暂存输入输出端与主非易失性存储器32的数据暂存输入输出端相连,R路从DSP4的数据暂存输入输出端与R路非易失性存储器42的数据暂存输入输出端相连,,G路从DSP5的数据暂存输入输出端与G路非易失性存储器52的数据暂存输入输出端相连,B路从DSP6的数据暂存输入输出端与B路非易失性存储器62的数据暂存输入输出端相连。

    主非易失性存储器32、R路非易失性存储器42、G路非易失性存储器52和B路非易失性存储器62采用AMD公司的AM29LV160B闪存芯片。

    由于DM642自身不能存储程序代码,所以对每一片DM642都需要外扩非易失性存储器。Flash(闪速存储器)是近些年发展起来的新型非易失性存储器,它具有掉电数据不丢失、快速的数据存取速度、电可擦除、容量大、在线可编程、价格低廉以及足够多的擦写次数(十万次)和较高的可靠性等诸多优点。

    雷达压缩方法的具体分析如下:

    首先对AD采样电路1和三个从DSP进行初始化,AD采样电路1初始化后,采集雷达图像VGA模拟信号,并转成R路数字信号、G路数字信号和B路数字信号,R路数字信号存入R路FIFO数据缓存器2-1,G路数字信号存入G路FIFO数据缓存器2-2,B路数字信号存入B路FIFO数据缓存器2-3,当三个从DSP接到主DSP3的命令后,分别接收对应FIFO中的数据,即R路从DSP4接收R路FIFO数据缓存器2-1中的数据,G路从DSP5接收G路FIFO数据缓存器2-2中的数据,B路从DSP6接收B路FIFO数据缓存器2-3中的数据,然后三个从DSP将接收的数据分别存入与之相配套的外部存储器中。主DSP3发送命令给三个从DSP,分别接收它们的数据,存在主DSP3配套的主外部存储器31中,由主DSP3中完成对接收图像的压缩处理。

    参见图5,主DSP3与三个从DSP进行通讯的过程为:主DSP利用FPGA2中的控制器2-4,通过写0x01、0x02和0x03对应选择与R路从DSP4、G路从DSP5和B路从DSP6进行McBSP通讯,把这26个8bit的协议再分别转送给B路从DSP4、G路从DSP5和R路从DSP6。之后,第二次利用控制器2-4选择与对应从DSP进行McBSP通讯,主DSP给R路从DSP4、G路从DSP5和B路从DSP6发送复位中断标志0x12,以等待接收FIFO的图像数据。然后,给R路从DSP4发送数据采集启动标志0x34,第三次利用控制器选择,接收R路从DSP4、G路从DSP5和B路从DSP6传输的R、G、B图像数据。图像数据经处理之后利用W5100传输至上位机8。

    下面介绍下位机(雷达采集卡)的总的工作流程与上位机8的工作流程,以及相互配合情况,参见图7和图8,首先,上位机8对主DSP3进行连接请求,为了通讯的方便,四个DSP与上位机8之间确定了一个通讯协议。该协议总共有26个8bit的数据,起始位和结束位分别是:0x55和0xAA,选用这两个数据作为起始和终止是因为它们的或正好是0xFF,能正确接收到这两个数说明每一bit的数据线都正常。如果起始位和结束位有不正确的,从DSP将请求上位机8再一次发送协议,直到正确为止。中间的其它数据分别是:场总点数、行总点数、高度、宽度、垂直起始、水平起始(各占两字节)、阻抗、电流、相位、红色对比度、绿色对比度、蓝色对比度、红色亮度、绿色亮度、蓝色亮度、行同步、场同步、数据顺序和频率范围,这后面的四个数的范围是0到3,不与0xAA冲突。如果连接上了,则给主DSP3下达配置文件,再命令主DSP3采集雷达图像数据。

    雷达采集卡此时已经作好准备,这些准备工作包括:对四个DSP进行初始化,初始化包括EMIF、McBSP0、CSL、GPIO,等待连接请求,接到上位机8的连接请求后,等待上位机8下达采集命令,当接收到上位机8的采集命令后,雷达采集卡开始采集雷达图像数据工作。

    雷达采集卡按上位机下达的配置文件对AD采样电路进行配置,具体的配置过程为:

    R路从DSP4设定AD9888的14个寄存器的固定值。然后接收从主DSP3传输过来的含有26个8bit的数据协议,从场总点数、行总点数、高度、宽度、垂直起始、水平起始(各占两字节)、阻抗、电流、相位、红色对比度、绿色对比度、蓝色对比度、红色亮度、绿色亮度、蓝色亮度、行同步、场同步、数据顺序和频率范围这组数据中,设定AD采样电路1某种类型图像的所需的12个寄存器的值,通过I2C配置这些寄存器。

    对AD采样电路1的配置完成后,开始采集雷达VGA图像数据,采集到的数字图像信号就不断传输出AD采样电路1。R路从DSP4接收到复位标志0x12之后,R路FIFO数据缓存器2-1复位。复位之后,一旦接收到数据采集标志0x34。这时,只要R路FIFO数据缓存器2-1接收到了AD采样电路1发出的场同步信号,R路FIFO数据缓存器2-1就在像素时钟的上升沿,把AD采样电路1传输出的R路数字信号数据装入R路FIFO数据缓存器2-1。当R路FIFO数据缓存器2-1达到半满的时候(通过FPGA2编程设置半满的大小为2048字节),R路FIFO数据缓存器2-1就给R路从DSP4一个中断信号,然后R路从DSP4把R路FIFO数据缓存器2-1存储的2048个数据通过R路从DSP4内置的EMDA传输到R路外部存储器41中,相应的,G路数字信号存储到G路外部存储器51中,B路数字信号存储到B路外部存储器61中,经过场总点数×行总点数/2048次传输,三路都接收到场总点数×行总点数大小的数据后即完成了整幅图像的传输。最后,依据垂直起始、水平起始的值,去除掉采集图像中的消隐信号,提取暂存在R路外部存储器41中的一幅实际分辨率大小的图像信号,通过McBSP0通讯传输到主外部存储器31中。

    四个DSP的工作流程如图9至图12所示。

    在主DSP3中完成对雷达图像的压缩,如步骤三和步骤四所述,步骤三采用LS97小波对采集到的所述雷达图像进行小波正变换,获得小波系数,

    本实施方式使用的是图像编码中最常用的小波基——双正交的(7,9)小波,从而获得更好的峰值信噪比,减少了运行时间。

    步骤四采用基于块位长的无链表小波分块编码算法对步骤三得到的小波系数进行编码,获得压缩码流,完成对采集到的雷达图像的压缩。

    一幅图像经过小波变换后,得到的只是与原图像数据相等的小波系数矩阵;这样就需要对小波系数进行压缩,而目前典型的基于小波变换的图像编码方法有两类,一类是充分利用在不同子带内相同空间位置的小波系数之间所具有的相似性来进行编码,这一类是以EZW和SPIHT为代表的小波零树编码方法;另一类是SPECK算法,是充分利用在同一子带内不重要系数的相关性来进行编码。

    这几种编码算法都是采用链表编码的,在编码过程中包含大量的链表操作,包括动态分配链表节点、删除节点,不利于硬件实现;而且在编码过程中都需要维护排序信息和细化信息,而用于排序信息和细化信息的链表需要占用大量的内存,以SPIHT算法为例,由于在编码过程中需要维护3个链表,对于一幅N×N×8bits大小的图像,共需要占用内存N×N×3×18bits,巨大的数据存储量使编码时的内存占用很大,既影响编码速度又不利于硬件实现。因此研究如何节省编码内存成为小波编码方法是否实用的一个关键因素。

    为了节省内存,基于块位长的无链表小波分块编码算法采用分块编码,即分块各自独立编码,而不是对整幅图像同时进行编码;为了加快编码速度,采用大的量化步长且全部一次性输出码流;为了一次性全部输出码流,扫描并建立块最大绝对值位长对应的位图,并且采用16块分裂,用来加快搜索速度、减少编码量。

    分块就是一幅图像分割成各个64×64块大小的小波系数进行独立编码。然后再对大块进行俩次16分裂,分成16中块与256小块;再扫描各块对应的最大绝对值位长,再重算位长、建立位长位图,这样若一幅512×512×8bits的图像以SPIHT算法为例,则需占用1.6875M bytes内存,而无链表分块编码算法在编码过程中占用的内存仅为[(1+16+256)×8+64×64×16]bits即8.27Kbytes,内存耗费较少,易于硬件实现。其中(1+16+256)×8bits为块最大绝对值位长;64×64×16bits为每一块的小波系数,从而硬件实现时,在编码过程中的数据运算都可以在内存中运行,可以大大加快编码速度。

    由于是采用树状块位长的方法来建立位图,这样就有两大优势,一是可以快速搜索各块的最大绝对值位长,这实际上就相当于SPIHT算法中的各级阈值,只是以位长的形式表示出来;二是可以一次性输出码流也可以逐级输出码流,在此采用一次性输出码流,这里的一次性输出码流是指当小块最大绝对值位长达到阈值时将该小块内的小波系数一次性输出。

    由于采用的是分块编码输出,所以在分块之前需要对整幅图像进行量化。

    1)整幅图像量化

    采用的是死区标量量化方法,对于给定的一个小波变换系数x,量化器产生一个有符号的整数q如式(1)。式中sign(x)表示提取x的符号,Q为量化步长。式中|x|表示x的绝对值,表示对x向下取整运算,例如若则x≡3。

    而为了快速编码,采用尽量大的量化步长,同时还要保证量化后的数据信息能够生成足够的码流来满足事先给定的码率要求,而且为了避免信息损失,需要选择保守的量化步长,根据对多幅测试图像在各种不同码率下编码测试的结果,给出一个选择量化步长的简单经验公式为:

    Q=(4+α)/R    (2)

    其中R为码率,α为图像复杂度,这里为了简化计算采取简单的线性公式来计算α,经验公式如式(3)所示。其中MSE为HH1子带内小波系数的绝对值均方差如(4)式所示,选取HH1子带是因为该子带包含了这幅图像较完整的细节信息。(4)式中|f(i,j)|表示大小为N×M的HH1子带内的小波系数绝对值,|f(i,j)|为HH1子带内小波系数绝对值的均值。

    a=0MSE<10MSE/10-110≤MSE≤504MSE>50---(3)]]>

    MSE=1NMΣi=0N-1Σj=0M-1{[|f(i,j)|-|f(i,j)‾|]2}---(4)]]>

    2)小波系数的分块方式

    为了节省内存,对小波系数进行分块编码块,取每一独立编码大块的大小为64×64,再对该大块进行再分块,再分成16中块(大小为16×16);对每个中块再分块,分成16小块(大小为4×4)。16块分裂如图13所示,其中小块内的虚线表示若该小块的最大绝对值位长为1,则再分成4个(2×2)的子块。

    3)取一大块来扫描块位长

    首先定义Xi,j为量化后对应64×64内部位置的小波系数,Bit_long_d表示大块位长,Bit_long_zm,n表示中块位长,Bit_long_xi,j表示小块位长,则对于每一64×64的大块小波系数,按16块分裂可以得到大块位长和中块位长之间的树关系为:

    Tree(Bit_long_d)={Bit_long_z01,Bit_long_z02,......,Bit_long_z33};

    中块位长和小块位长之间的树关系为:

    Tree(Bit_long_zm,n)={Bit_long_x4m,4n,Bit_long_x4m,4n+1,......,Bit_long_x4m+3,4n+3|0≤m,n≤3};

    小块位长和小波系数之间的树关系为:

    Tree(Bit_long_xi,j)={X4i,4j,X4i,4j+1,......,X4i+3,4j+3|0≤i,j≤15};

    根据上面给出的对应关系计算出位图树结构各节点的值;位图树结构的小块位长由(5)式计算,中块位长由(6)式计算,大块位长由(7)式计算。

    Bit_long_zm,n=maxBit_long_xi,j∈Tree(Bit_long_zm,n){Bit_long_xi,j}---(6)]]>

    Bit_long_d=maxBit_long_zm,n∈Tree(Bit_long_d){Bit_long_zm,n}---(7)]]>

    4)重算块位长,建立位长位图

    当大块及其内部的16中块、256小块的最大绝对值位长都计算出来后,从编码输出考虑,大块位长保持不变,再由式(8)重算16中块的块位长并存储,等16中块计算完后,再通过式(9)重算256小块的块位长并建立位长位图。重算位长是人为的保证在每一次16分裂中位长差在3以内,为接下去的块位长输出方式做准备。

    Bit_long_zm,n=Bit_long_zm,nBit_long_d-Bit_long_zm,n≤2Bit_long_d-3Bit_long_d-Bit_long_zm,n≥3---(8)]]>

    Bit_long_xi,j=Bit_long_xi,jBit_long_zi/4,j/4-Bit_long_xi,j≤2Bit_long_zi/4,j/4-3Bit_long_zi/4,j/4-Bit_long_xi,j≥3---(9)]]>

    5)以位长差的方式输出块位长位图供解码使用

    首先输出4bit的大块位长Bit_long_d;再输出中块与大块最大绝对值位长的差,如式(10)所示;最后输出小块与对应中块最大绝对值位长差,如式(11)所示。由式(10)、(11)可知以位长差的方式表示一块位长最大不超过2bit(大块为4bit除外),而从大块到小块的位长差最多可达到6;这已经可以足够正确表示绝大部分的小块位长。式(11)中Bit_long_xi,j∈Tree(Bit_long_zm,n)。

    式(10)表示:当大块位长(Bit_long_d)为零时,不输出。当大块位长为1时,有2种情况,即中块位长(Bit_long_zm,n)为1时输出1,为0时输出0,都是1bit输出。当大块位长为2时,有3种情况,根据中块位长的不同用1bit或是2bit输出。当大块位长大于等于3时,有4种情况,再根据大块与中块位长之间的差,用2bit输出。

    对一幅小波分解之后的图像进行基于块位长的无链表小波分块编码步骤如下:

    第1步:算法初始化。

    首先按(1)式对整幅图像进行量化,再将整幅图像分成各个64×64大小的小波系数块。

    第2步:分块扫描过程;即对所有的64×64大小的小波系数块作:

    (2.1)16块分裂及计算各级块位长。

    按图5.10所示进行16块分裂,再由(5)式计算出256块小块的块位长Bit_long_xi,j;由(6)式计算出16块中块的块位长Bit_long_zm,n;最后由(7)式计算出大块位长Bit_long_d。

    (2.2)重算位长建立位长位图,并以位长差的方式输出位长位图。

    按(8)式计算出各中块的块位长Bit_long_zm,n,再按(9)式计算出各小块的块位长Bit_long_xi,j;这样就建立起由重算的Bit_long_zm,n构成的中块位长位图和重算的Bit_long_xi,j构成的小块位长位图。

    建立起位长位图后,首先输出4bit的大块位长Bit_long_d;再用式(10)输出中块与大块最大绝对值位长的差;最后用式(11)输出小块与对应中块最大绝对值位长差。

    (2.3)块位长扫描编码输出。

    选定待编码的这一大块的块位长,取θ=Bit_long_d。

    (2.3.1)对所有Bit_long_zm,n∈Tree(Bit_long_d)

    ●ifθ≥Bit_long_zm,n,对所有Bit_long_xi,j∈Tree(Bit_long_zm,n)

    ifθ≡Bit_long_xi,j

    ★ifθ≠1,则不用再分块。对所有Xi,j∈Tree(Bit_long_xi,j)进行扫描,一次性输出码流。

    *if Q>4

    采用(5-8)式输出

    *else

    采用(5-9)式输出

    ★else

    需要将该小块分成4个(2×2)子块,扫描4子块,并输出;

    *if子块内小波系数不全为0

    输出1,再按式(12)输出该子块内的4个小波系数

    *else

    输出0

    (2.3.2)量化更新;所有中块扫描完,令θ=θ-1

    ●θ≡0,这一大块编码结束,返回第2步,直至所有大块扫描结束。

    ●θ≠0,转入(2.3.1)继续扫描;

    output=11Xi,j≡-110Xi,j≡10Xi,j≡0---(12)]]>

    小结:本文算法的数据输出是在(2.2)、(2.3)两步,(2.2)步是以大块与中块、中块与小块之间的位长差方式输出块位长位图,供解码使用;(2.3)步是通过搜索块位长位图,再按各子块位长的大小顺序来扫描各子块,输出数据。

    编码一幅图像的流程简单概括如下:由第1步中计算量化步长,对全部小波系数进行量化;再将整幅图像分成各个64×64的大块,再按之字型顺序对各大块进行独立编码,(2.1)步中主要就是说明如何进行俩次16分裂;并扫描出其对应的各块最大绝对值位长;再接着通过(2.2)步重算各块位长,首先大块位长不变,再重算中块位长并建立位图,最后重算小块位长并建立相应的位图;然后以块位长差的方式输出位图供解码使用;通过(2.3)步对该大块进行编码输出;最后重复循环(2.1)、(2.2)、(2.3)直至所有大块编码结束,则整幅图像编码结束。

    所述雷达采集卡通过以太网接口电路7与上位机8连接,主DSP3的输入输出端与以太网接口电路7的第一输入输出端相连,以太网接口电路7的第二输入输出端与上位机8的输入输出端相连。

    以太网接口电路7采用WIZnet公司的W5100固件网络芯片。

    对于一帧最高分辨率的雷达图像,不经过压缩,系统最大传输的数据量为1280×1024×8×3=31457280bit,约31.5Mbit。WIZnet公司推出的固件网络芯片W5100,它集成了以太网物理层RTL8201CP核。与之前的网络芯片W3100A和W3150A+相比,具有更好的集成性,拥有更稳定、更优良的性能。W5100集TCP/IP协议栈、以太网MAC和PHY为一体,支持TCP、UDP、IPv4、ICMP、ARP、IGMP和PPPoE等网络协议。它提供多种总线,包括两种并行总线(直接总线接口和间接总线接口),以及SPI串行总线等接口方式。内置16KByte发送/接收数据缓冲区,可快速进行数据交换,W5100支持且自动识别全双工或半双工的传输模式,最大通信速率可达25Mbps,实际工作速率是6Mbps左右,上述的一幅图像可在5秒多的时间传输至上位机8或数据保护容器。在图像采集卡中,利用该固件网络芯片W5100,可以很方便地与DM642进行无逢连接。W5100与DM642的连接图如图6所示。

    主DSP3对雷达图像数据压缩完成后,通过网络将压缩后的图像传输给上位机8。

    上位机8接收到压缩后的雷达图像数据后,将其保存起来,并进行解码,即压缩的反过程,首先对小波数据解码,再对解码后的数据进行小波反变换,恢复信号,将图像还原到压缩前的状态,以供使用。同时,以bmp格式再将解码后的图像保存起来,供实验测试用。

应用于雷达采集卡的图像压缩方法.pdf_第1页
第1页 / 共30页
应用于雷达采集卡的图像压缩方法.pdf_第2页
第2页 / 共30页
应用于雷达采集卡的图像压缩方法.pdf_第3页
第3页 / 共30页
点击查看更多>>
资源描述

《应用于雷达采集卡的图像压缩方法.pdf》由会员分享,可在线阅读,更多相关《应用于雷达采集卡的图像压缩方法.pdf(30页珍藏版)》请在专利查询网上搜索。

应用于雷达采集卡的图像压缩方法,属于雷达领域,本发明是为了解决现有的雷达采集卡将未经压缩的大量的图像直接传送给PC机,没有实现在板卡上的压缩,导致对传输总线实时传输性能的要求过高的问题。本发明的雷达卡采集雷达模拟VGA信号,转换成三路VGA数字信号,由三个从DSP依次传输给主DSP,主DSP将三路VGA数字信号依据三基色原理合成获得一幅完整雷达图像,主DSP采用LS97小波对采集到的所述一幅完整雷。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1