法律状态公告日
法律状态信息
法律状态
2016-02-17
专利权的转移 IPC(主分类):G06T1/00 登记生效日:20160122 变更前: 变更后: 申请日:20090924
专利申请权、专利权的转移
2012-04-25
授权
授权
2010-06-02
实质审查的生效 IPC(主分类):G06T1/00 申请日:20090924
实质审查的生效
2010-04-21
公开
公开
技术领域
本发明涉及的是一种图像处理技术领域的装置及其方法,具体是一种基于ARM(高级精简指令集计算机)和DSP(数字信号处理)异构双核处理器的图像融合系统和方法。
背景技术
图像融合技术在医学、军工和航天领域的嵌入式应用中前景广阔,一般的图像融合技术都使用台式计算机或者图形工作站实现,由于这些台式设备不能满足空间、功耗、性能和成本的综合要求,导致图像融合技术难以广泛应用。
经对现有技术文献的检索发现,中国专利申请号为:01133782.6,名称为:基于DSP的嵌入式人脸自动检测装置和方法,该申请案可从复杂的场景中自动检测出标准化的人脸用于执行各种身份确认、识别操作,也可应用于只需对人脸进行检测而不需要进行确认、识别的应用场合。但是,该技术是在DSP的单核处理器上实现的,DSP在处理控制语句时的低效率极大的限制了该技术的检测速度。
另经检索发现,中国专利申请号为:200810048425,名称为:一种基于ARM的便携式图像实时采集和显示终端,该申请案采用嵌入式Linux(林纳克思操作系统)技术,利用Linux内核的相应编程接口函数编写图像采集程序,使用图像数据的双缓冲存储技术和将LCD(液晶显示器)模块的显示缓冲区映射到用户内存区的方法,实现LCD显示模块图像的实时显示。但由于受到ARM核处理矩阵速度不快的限制,该终端运行速度缓慢。
发明内容
本发明的目的在于克服现有技术中存在的不足,提供一种基于ARM和DSP异构双核处理器的图像融合系统和方法。利用ARM和DSP处理程序时各自的优异性能,将原本在通用计算机上运行的图像融合处理的程序移植到ARM和DSP上,通过对程序的各个任务的分配,利用ARM善于处理分支预测和控制语句与DSP善于进行乘法运算的特点,高效率的运行图像融合的程序。
本发明是通过以下技术方案实现的:
本发明所涉及的基于ARM和DSP异构双核处理器的图像融合系统,包括:运算处理模块和用户终端,其中:用户终端与运算处理模块相连传输用户终端交叉编译的信息和运算处理模块的输出信息。
所述用户终端是桌面计算机。
所述的运算处理模块,包括:硬盘驱动模块、ARM、共享存储器和DSP,其中:ARM和DSP集成在同一芯片内,硬盘驱动模块与用户终端相连传输交叉编译信息和运算处理模块的输出信息,ARM与硬盘驱动模块相连传输二进制文件系统和ARM的运算结果,ARM与DSP通过共享存储器相连传输复杂运算的矩阵和DSP的运算结果。
所述的硬盘驱动模块包括:硬盘驱动器、RS-232(串行数据通信的接口标准)接口和Ethernet MAC接口,其中:RS-232接口输入端与用户终端相连,RS-232接口输出端与硬盘驱动器相连,Ethernet MAC接口输入端与硬盘驱动器相连,Ethernet MAC接口输出端与ARM相连。
所述的硬盘驱动器为ATA(高级工艺附件)接口的硬盘驱动器。
所述的ARM是ARM 926EJ-S,包括:16KB的指令cache(高速缓冲存储器)、8KB的数据cache、16KB的RAM(随机存储器)和16KB的ROM(只读存储器)。利用ARM核内运行的Linux操作系统对ARM进行控制和管理,包括进程控制和文件系统的管理。
所述的DSP是DSP TMS320C64x,拥有八个高度独立的定点乘法运算单元,支持不对齐的存取结构,支持64个32位的通用寄存器、32KB的一级程序cache、80KB的一级数据cache和64KB的二级cache。
所述的共享存储器包括:片内共享缓存和片外共享内存,其中:片内共享缓存与ARM和DSP处于同一芯片内,片外共享内存位于芯片外。
本发明涉及上述基于ARM和DSP异构双核处理器的图像融合系统的图像融合方法,包括以下步骤:
第一步,用户终端通过交叉编译工具将图像融合的算法代码生成硬盘驱动器可执行的二进制文件系统,并通过RS-232接口将生成的二进制文件系统传输到硬盘驱动器;
第二步,硬盘驱动器利用网络文件系统技术通过Ethernet MAC接口将二进制文件系统映射到ARM核内的Linux操作系统的根目录下;
第三步,ARM核会从Linux操作系统的文件系统中读入需要进行融合的两幅图像的灰度值,并以矩阵的形式进行组织和存储;
第四步,ARM执行图像融合程序的过程中,在需要进行复杂运算时,将需要处理的矩阵存入共享的缓冲器,并调用DSP;
第五步,DSP从共享缓冲器中读入需要处理的矩阵,进行矩阵运算,并且在计算结束后把计算结果存入共享的缓冲器;
第六步,ARM从共享的缓冲器读入DSP的运算结果,继续执行图像融合程序,在此期间,只要遇到复杂的运算,ARM就会调用DSP来进行运算;
第七步,待ARM运算结束后,通过Ethernet MAC接口将最后的运算结果映射回硬盘驱动器;
第八步,硬盘驱动器将结果通过RS-232接口传输给用户终端,最后经用户终端处理得到融合后的图像。
所述的共享缓存器的物理实现是以片内的共享缓存为主,只有当片内的共享缓存发生缺失或者替换时,缓存器的物理实现才会延伸到片外的共享内存。
与现有技术相比,本发明具有如下优点:采用ARM调用DSP的嵌入式系统来实现异构双核共同完成图像融合的功能,ARM善于处理分支预测而DSP善于进行乘法运算,因此该技术的图像融合速度明显提高。
附图说明
图1为实施例的结构连接图;
图2为实施例中ARM调用DSP的过程。
具体实施方式
下面结合附图对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
如图1所示,本实施例所涉及的基于ARM和DSP异构双核处理器的图像融合系统,包括:运算处理模块1和用户终端2,其中:用户终端2与运算处理模块1相连。
所述用户终端2是桌面计算机,该计算机与运算处理模块1相连传输用户终端2交叉编译的信息和运算处理模块1的输出信息。
所述的运算处理模块1,包括:硬盘驱动模块3、ARM 4、共享存储器5和DSP 6,其中:ARM 4和DSP 6集成在同一芯片内,硬盘驱动模块3与用户终端2相连,ARM 4与硬盘驱动模块3相连,共享存储器5与ARM 4相连,DSP 6与共享存储器5相连。
所述的硬盘驱动模块3包括:硬盘驱动器7、RS-232接口8和Ethernet MAC接口9,其中:RS-232接口8输入端与用户终端2相连,RS-232接口8输出端与硬盘驱动器7相连,Ethernet MAC接口9输入端与硬盘驱动器7相连,EthernetMAC接口9输出端与ARM 4相连。
所述的硬盘驱动器7为ATA接口的硬盘驱动器。
所述的ARM 4是ARM926EJ-S,包括:16KB的指令cache、8KB的数据cache、16KB的RAM和16KB的ROM。利用ARM 4核内运行的Linux操作系统对ARM4进行控制和管理,包括进程控制和文件系统的管理。
所述的DSP 6是DSP TMS320C64x,拥有八个高度独立的定点乘法运算单元,支持不对齐的存取结构,支持64个32位的通用寄存器、32KB的一级程序cache、80KB的一级数据cache和64KB的二级cache。
所述的共享存储器5包括:片内共享缓存10和片外共享内存11,其中:片内共享缓存10与ARM 4和DSP 6处于同一芯片内,片外共享内存11位于芯片外。
本实施例中用户终端2的操作系统采用TI公司的DaVinci(达芬奇)平台,包括ARM和DSP的双核架构,该平台具有丰富的外设,便于进行程序开发和设计。根据图像信号具有二维性的特点,本实施例采取了能够更加有效地捕获图像中二维特性的Contourlet(轮廓小波)变换的图像融合算法,将两幅图像分别进行Contourlet变换之后,对低频分量进行平均处理,高频分量取绝对值最大,再利用Contourlet反变换得到融合之后的图像。
本实施例涉及上述的基于ARM和DSP异构双核处理器的图像融合系统的图像融合方法,其实施步骤为:
第一步,用户终端2通过交叉编译工具将图像融合的算法代码生成硬盘驱动器7可执行的二进制文件系统,并通过RS-232接口8将生成的二进制文件系统传输到硬盘驱动器7;
第二步,硬盘驱动器7利用网络文件系统技术通过Ethernet MAC接口9将二进制文件系统映射到ARM 4核内的Linux操作系统的根目录下;
第三步,ARM 4核会从Linux操作系统的文件系统中读入需要进行融合的两幅图像的灰度值,并以矩阵的形式进行组织和存储;
第四步,ARM 4执行图像融合程序的过程中,在需要进行复杂运算时,将需要处理的矩阵存入共享存储器5,并调用DSP 6;
第五步,DSP 6从共享存储器5中读入需要处理的矩阵,进行矩阵运算,并且在计算结束后把计算结果存入共享存储器5;
第六步,ARM 4从共享存储器5读入DSP 6的运算结果,继续执行图像融合程序,在此期间,只要遇到复杂的运算,ARM 4就会调用DSP 6来进行运算;
第七步,待ARM 4运算结束后,通过Ethernet MAC接口9将最后的运算结果映射回硬盘驱动器7;
第八步,硬盘驱动器7将结果通过RS-232接口8传输给用户终端2,最后经用户终端2处理得到融合后的图像。
图2所示是ARM 4调用DSP 6的过程,图像融合的过程是在ARM 4核和DSP 6核上完成的。程序的入口是在ARM 4核中,在ARM 4核上运行的Linux操作系统中,运行图像融合程序的二进制文件,ARM 4核会从Linux操作系统的文件系统中读入需要进行融合的两幅图像的灰度值,并以矩阵的形式进行组织和存储;ARM 4核执行图像融合程序的过程中,在需要进行复杂运算时,将需要处理的矩阵存入共享存储器5,并调用DSP 6;DSP 6从共享存储器5中读入需要处理的矩阵,进行矩阵运算,并且在计算结束后把计算结果存入共享存储器5;ARM再从共享存储器5读入运算结果。在本实施例中,共享缓存器5的物理实现是以片内共享缓存10为主。只有当片内共享缓存10发生缺失或者替换时,共享存储器5的物理实现才会延伸到片外共享内存11。
本实施例采用ARM 4调用DSP 6的嵌入式系统来实现异构双核共同完成图像融合的功能,ARM 4善于处理分支预测而DSP 6善于进行乘法运算,因此本实施例的图像融合速度明显加快。
机译: 图像融合系统,信息处理器,信息终端和信息处理方法
机译: 图像融合系统,信息处理器,信息终端和信息处理方法
机译: 基于DSP处理器的变压器保护微分继电器方法