CN113671478A - 基于多核cpu的高速机动目标识别数据处理方法 - Google Patents
基于多核cpu的高速机动目标识别数据处理方法 Download PDFInfo
- Publication number
- CN113671478A CN113671478A CN202110850358.3A CN202110850358A CN113671478A CN 113671478 A CN113671478 A CN 113671478A CN 202110850358 A CN202110850358 A CN 202110850358A CN 113671478 A CN113671478 A CN 113671478A
- Authority
- CN
- China
- Prior art keywords
- data
- processing
- thread
- algorithm
- radar
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 8
- 238000012545 processing Methods 0.000 claims abstract description 74
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 64
- 238000000034 method Methods 0.000 claims abstract description 25
- 238000013507 mapping Methods 0.000 claims abstract description 5
- 238000004806 packaging method and process Methods 0.000 claims abstract description 4
- 230000006870 function Effects 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 17
- 239000000872 buffer Substances 0.000 claims description 16
- 238000009825 accumulation Methods 0.000 claims description 15
- 230000035485 pulse pressure Effects 0.000 claims description 15
- 230000001427 coherent effect Effects 0.000 claims description 10
- 230000006835 compression Effects 0.000 claims description 9
- 238000007906 compression Methods 0.000 claims description 9
- 238000012937 correction Methods 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 9
- 230000015654 memory Effects 0.000 claims description 9
- 239000011159 matrix material Substances 0.000 claims description 6
- 230000007246 mechanism Effects 0.000 claims description 5
- 238000012935 Averaging Methods 0.000 claims description 4
- 230000002618 waking effect Effects 0.000 claims description 4
- 230000002776 aggregation Effects 0.000 claims description 3
- 230000017105 transposition Effects 0.000 claims description 2
- 238000004220 aggregation Methods 0.000 claims 1
- 238000006243 chemical reaction Methods 0.000 abstract description 2
- 230000007547 defect Effects 0.000 abstract description 2
- 230000001360 synchronised effect Effects 0.000 description 12
- 238000011161 development Methods 0.000 description 11
- 230000001133 acceleration Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000005054 agglomeration Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007717 exclusion Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000005494 condensation Effects 0.000 description 1
- 238000009833 condensation Methods 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000013486 operation strategy Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000002054 transplantation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/02—Systems using reflection of radio waves, e.g. primary radar systems; Analogous systems
- G01S13/50—Systems of measurement based on relative movement of target
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Radar Systems Or Details Thereof (AREA)
Abstract
本发明属于雷达数据处理技术领域,公开了一种基于多核CPU的高速机动目标识别数据处理方法。本发明利用多核CPU线程,并发实现高速机动目标信号处理流程,并且同时保证每一帧数据都能完整的处理,当每一个通道的每一帧数据到达后,都能被工作线程及时处理,克服了现有技术的接口只能针对特定雷达,不能在其他雷达系统中复用的缺点。将每个独立的算法组件进行封装,再根据信号处理流程,将不同的算法组件的输入和输出进行搭建连接,最后将搭建好的算法组件映射到工作线程上即可。能够根据应用需求进行重构,灵活应对多种任务,有效结解决当前雷达转换升级问题。
Description
技术领域
本发明涉及雷达数据处理技术领域,具体涉及一种基于多核CPU的高速机动目标识别数据处理方法,适用于对高速机动目标的雷达数据的实时处理。
背景技术
传统的雷达系统通常基于嵌入式硬件平台,以DSP,FPGA等处理器所设计实现的雷达信号处理系统在得到高效执行优势的同时也带来了一些弊端,如开发效率低,移植成本大,拓展功能难。开发人员不仅要理解雷达信号处理算法,还要熟悉硬件平台内置资源,其研发周期长,且对于不同用途的雷达而言,其信号参数,目标特性完全不同,所应用的算法也就不同,基于FPGA和DSP芯片所设计的雷达系统平台就不再适用,需要重新开发,使得其重复利用率低。随着数字化技术以及高性能计算的飞速发展,开发满足实时性、可扩展性、可重构性的软件化雷达架构成为新的发展方向。
随着计算机领域的蓬勃发展,多核高性能处理器的性能不断提升,单芯片处理器核数已经达64核,主频也已逼近4.5GHz,处理速度、内存核硬盘容量等可满足系统控制和海量信息存储的需要。CPU具有较高的主频,较快的运算速度和丰富的软硬件资源。用户可通过集成开发环境搭建良好的软硬件生态环境,且在开发过程中采用高级编程语言,降低开发难度。在多核处理器架构中,一个处理器中具有两个或多个完整的计算引擎,通过多核间的任务划分,多核处理器可以在同一时钟周期内执行更多的任务。多核处理器的执行线程数、并行任务数、单位时间处理数据量都比单核处理器强,同时相比多处理器结构,多核处理器的资源利用率更高,功耗更小。
发明内容
针对现有技术存在的问题,本发明的目的在于提供一种基于多核CPU的高速机动目标识别数据处理方法,可使用较低成本和较小面积,快速构建多通道采集系统。
为了达到上述目的,本发明采用以下技术方案予以实现。
基于多核CPU的高速机动目标识别数据处理方法,包括以下步骤:
步骤1,创建线程池,设定线程执行任务入口,并在线程池内开辟与数据通道数量相同的线程;
其中,数据通道数与CPU核数相当;
步骤2,预先申请程序中正向和逆向FFT的计划内存,调用快速傅里叶变换工具包FFTW,搭建FFT中间件,用于进行傅里叶变换运算;
步骤3,对每一帧待处理的雷达回波数据量进行预估,并为每帧数据分配对应内存;采用信号通知机制,使用管道将接收的雷达回波数据传递给主线程;
步骤4,主线程监听每个数据通道是否接收数据完毕,当某个通道数据接收完毕后,主线程将接收的数据进行封装,并将其插入请求队列上;
步骤5,当请求队列上有数据待处理时,则唤醒线程池中睡眠的工作线程,工作线程之间通过竞争取得任务并执行;将不同的工作线程调度至不同的CPU核上执行任务;
步骤6,将一个脉组的数据处理过程映射到一个工作线程上,即一个工作线程处理一个脉组数据;当工作线程处理完当前帧数据后,将输出的点迹信息封装后注册写就绪事件,由主线程将结果写入对应的文件并发送。
进一步地,每个工作线程内部根据处理程序搭建对应的算法组件,包括脉冲压缩算法组件、距离走动校正算法组件、多普勒扩展补偿算法组件、相参积累算法组件、恒虚警检测算法组件和点迹凝聚算法组件中的一种或多种。
更进一步地,将每个独立的算法组件进行封装,再根据信号处理流程,将不同的算法组件的输入和输出进行搭建连接,最后将搭建好的算法组件映射到工作线程上即可。
进一步地,当某一通道的一个完整数据帧全部接收到缓冲区后,由主线程负责将其从缓冲区读出来并封装好插入请求队列中;当某一工作线程处理完毕后,再向内核中注册写事件,epoll_wait监听到写事件后,由主线程负责将工作线程的处理结果写入对应缓冲区并输出。
更进一步地,所述工作线程的处理结果的输出通过网络发送到显示端或者创建一个异步输出线程写入到输出结果文件。
进一步地,所述脉冲压缩算法组件的具体实现步骤如下:
(1)事先存储脉压系数,将雷达脉冲参数作为组件输入;
(2)调用正向FFT中间件,对雷达脉冲数据帧做傅里叶变换,并与脉压系数相乘;
(3)调用逆向FFT中间件,对上述乘积结果做逆傅里叶变换,得到脉压结果。
进一步地,所述距离走动校正算法组件的具体实现步骤如下:
(1)在频域构造一定搜索速度区间范围的频域补偿函数;
(2)将该补偿函数与频域脉压结果进行匹配,并作相参积累,保存每一个补偿函数与脉压结果相乘的结果;
(3)比较每个补偿函数补偿结果,得到最佳搜索速度,并取该补偿函数对应的结果作为经过距离走动校正后的脉压结果。
进一步地,所述多普勒扩展补偿算法组件的具体实现步骤如下:
(1)取目标点所在距离单元的多普勒维线性调频信号,对其进行参数估计,估计其调频率,进而得到加速度值;
(2)用加速度值来补偿距离走动校正后的信号。
进一步地,所述相参积累算法组件的具体实现步骤如下:
(1)取脉冲压缩距离走动校正和多普勒扩展补偿后的信号,并作矩阵转置运算;
(2)将转置后的矩阵在多普勒维调用FFT中间件进行傅里叶变换,得到相参积累结果。
进一步地,所述恒虚警检测算法组件的具体实现步骤如下:采用卷积处理对每个检测单元左右两侧M个参考单元进行累加取均值处理,调用函数库的卷积中间件实现;M为正数。
进一步地,所述点迹凝聚算法组件的具体实现步骤如下:
(1)从恒虚警率检测出来的目标中寻找出其最大幅值点,使其作为第一个目标点,抹除原始数据并对目标另行存储;
(2)通过函数提供窗的长度确定目标在距离维以及速度维两个方向的作用范围,确定目标的窗;
(3)将剩余的目标点进行点迹融合算法处理,判断剩余目标点是否处于该目标的窗内;如果目标点处于该目标的窗之内,则抹除相关信息进行下一个目标点的判断;否则保留该点信息,进行下一个点的处理;
(4)判断所有点之后,重复上述步骤,直至所有点信息被抹除完之后,最终得到目标点信息。
与现有技术相比,本发明的有益效果为:
(1)本发明利用多核CPU线程,并发实现高速机动目标信号处理流程,并且同时保证每一帧数据都能完整的处理,当每一个通道的每一帧数据到达后,都能被工作线程及时处理,克服了现有技术的接口只能针对特定雷达,不能在其他雷达系统中复用的缺点。
(2)当雷达系统功能明确时,通过设计不同的算法组件,将每个独立的雷达信号处理算法逻辑封装好后,根据一定的逻辑和流程关系,将算法组件的输入输出搭建好后映射到工作线程。可以根据应用需求进行重构,灵活应对多种任务,有效结解决当前雷达转换升级问题。
(3)这种实现方式是以空间换时间的思想,通过提前创建好线程池,当服务器进入正式运行阶段,即开始处理数据的时候,直接从池中获取执行资源,无需动态分配,因为分配系统调用资源都是很耗时的。当工作线程处理完后,可以放回池中,等待下一次数据的到来。这样可以充分的利用CPU来实时处理多通道的数据。
附图说明
下面结合附图和具体实施例对本发明做进一步详细说明。
图1是同步I/O模拟Proactor模式工作流程;
图2是传统的半同步/半异步模式工作流程图;
图3是本发明的半同步/半反应堆并发模式编程框架流程图;
图4是本发明中每个工作线程中的算法组件搭建关系图;
图5是本发明一种实施例的不同速度对应的不同算法搭建流程图;
图6是本发明另一种实施例的不同加速度对应的不同算法搭建流程图。
具体实施方式
下面将结合实施例对本发明的实施方案进行详细描述,但是本领域的技术人员将会理解,下列实施例仅用于说明本发明,而不应视为限制本发明的范围。
实施例1
参照图1,为本发明提供的基于多核CPU的高速机动目标识别数据处理方法,包括以下步骤:
步骤1,初始化多核CPU处理线程,创建线程池,设定线程执行任务入口,并在线程池内开辟与数据通道相同数量的线程,数据通道数应与CPU核数相当。
步骤2,预先申请程序中正向和逆向FFT的计划内存,调用快速傅里叶变换工具包FFTW,搭建FFT中间件,用于进行傅里叶变换运算;
调用MKL数学函数库的快速傅里叶变换工具包FFTW,在程序运行开始时,预先花费一定时间申请程序中设立的正向和逆向FFT计划的内存,以估计针对本机器最优的运算策略,搭建FFT中间件,后续傅里叶变换运算只需在对应框架内即可完成高速运算。
步骤3,对每一帧待处理的雷达回波数据量进行预估,并为每帧数据分配对应内存;采用信号通知机制,使用管道将接收的雷达回波数据传递给主线程;
步骤4,主线程监听每个数据通道是否接收数据完毕,当某个通道数据接收完毕后,主线程将接收的数据进行封装,并将其插入请求队列上;
步骤5,当请求队列上有数据待处理时,则唤醒线程池中睡眠的工作线程,工作线程之间通过竞争取得任务并执行;将不同的工作线程调度至不同的CPU核上执行任务;
步骤6,将一个脉组的数据处理过程映射到一个工作线程上,即一个工作线程处理一个脉组数据;当工作线程处理完当前帧数据后,将输出的点迹信息封装后注册写就绪事件,由主线程将结果写入对应的文件并发送。
实施例2
参考图1,首先对高效时间处理模式即同步I/O模拟Proactor模式进行介绍。同步I/O模型要求用户代码自行执行I/O操作(即将数据从内核缓冲区读入用户缓冲区,或将数据从用户缓冲区写入内核缓冲区);而异步I/O机制则由内核来执行(数据在内核缓冲区和用户缓冲区之间的移动是由内核在后台完成的),即同步I/O向应用程序通知的是I/O就绪事件,而异步I/O向应用程序通知的是I/O完成事件。其原理是主线程执行数据读写操作,读写完成之后,主线程向工作线程通知这一“完成事件”。那么工作线程就直接获得了数据读写的结果,工作线程直接对读写的结果进行逻辑处理即可。
使用同步IO模型模拟出的Proactor模式的工作流程如下:
(1)主线程往epoll内核事件表中注册socket上的读就绪时间。
(2)主线程调用epoll_wait等待socket上有数据可读。
(3)当socket上有数据可读,epoll_wait通知主线程,主线程从socket循环读取数据,直到没有更多数据可读,然后将读取到的数据封装成一个请求对象并插入请求队列。
(4)睡眠在请求队列上某个工作线程被唤醒,获得请求对象并处理客户请求,然后往epoll内核事件表中注册该socket上的写就绪事件;
(5)主线程调用epoll_wait等待socket可写;
(6)当socket上有数据可写,epoll_wait通知主线程,主线程往socket上写入服务器处理客户请求的结果。
参考图2,为半同步/半异步模式。在服务器编程模式中,有半同步/半异步模式和追随者/领导者模式。首先,半同步/半异步模式中的“同步”和“异步是完全不同的概念。在并发模式中同步指的是程序完全按照代码序列的顺序执行,异步指的是程序的执行需要由系统事件驱动。常见的系统事件包括中断,信号等。如果按照同步方式运行的线程称为同步线程,按照异步方式运行的线程称为异步线程。在半同步/半异步模式中同步线程用于处理客户逻辑,异步线程用于处理I/O事件。
参考图3,在服务器程序中,本发明结合事件处理模式和I/O模型,将半同步/半异步模式改进为半同步/半反应堆模式。本发明采用的并发编程模式是半同步半反应堆并发模式,在并发模式中同步指的是程序完全按照代码序列的顺序执行,异步指的是程序的执行需要由系统事件驱动,并发模式指I/O处理单元与逻辑单元的协同完成任务的方法。半同步半反应堆的工作流程如下:
(1)主线程充当异步线程,负责监听所有socket上的事件;
(2)若有新请求到来,主线程接收之以得到新的连接socket,然后往epoll内核事件表中注册该socket上的读写事件;
(3)如果接socket上有读写事件发生,主线程从socket上接收数据,并将数据封装成请求对象插入到请求队列中;
(4)工作线程充当同步线程,所有工作线程睡眠在请求队列上,当有任务到来时,通过竞争(如互斥锁)获得任务的接管权。
针对本发明而言,由于每个通道的雷达数据写满缓冲区时间不一致,因此监听雷达数据文件描述符,当某一个通道的一个完整数据帧全部都接收到缓冲区后,由主线程负责把它从缓冲区读出来并封装好插入请求队列中,此时请求队列的信号量相应要加一,睡眠在请求队列上的所有线程被信号量唤醒,它们通过竞争(这里是申请互斥锁)获得任务的接管权,这种竞争机制使得只有空闲的工作线程才有机会来处理新到达的雷达数据帧。将高速机动目标的雷达信号处理流程映射到每个工作线程中,当工作线程处理完毕后,再向内核中注册写事件,epoll_wait监听到写事件后,由主线程负责将处理结果写入对应缓冲区,通过网络发送至显示界面。也可以开辟一个异步输出线程,将其处理结果封装好后插入一个阻塞队列中,由异步输出线程取队列中的数据将其写入本地文件中。
对于多核CPU系统,当线程池中的线程数量与CPU核数相当时,在满足一个工作线程能在一个脉冲重复周期内处理完本帧数据的前提下,操作系统会充分利用CPU资源,将不同的工作线程调度到不同的CPU核上,这样能最大程度利用多核CPU的优势,工作线程基本是并行处理。那么在最坏情况下如果当运行的工作线程在某一个时刻不能即使处理本帧数据,数据也是保存在请求队列中,当其他工作线程处理完毕后会立即取走队列上的数据,保证数据不丢帧,完成了对数据的实时处理。
参考图4,为每个工作线程中的算法组件搭建关系,首先根据高速机动目标信号处理流程,对其进行脉冲压缩,由于速度对距离维的影响,导致在距离维上会发生走动,因此要先对其进行速度搜索,得到合适的频域补偿函数,将信号校正在同一距离维上,而由于高速机动目标还存在加速度,其会对多普勒维产生影响,因此通过在多普勒维的线性调频信号进行参数估计,得到其加速度估计值,对距离走动校正后的脉压信号进行多普勒扩展补偿,再通过相参积累求模处理后,再进行恒虚警检测处理,最后通过点迹凝聚的方式得到目标点的信息。对于上述流程,针对每个互相独立的的过程可以进行算法组件的开发,算法组件相当于一个黑盒,将输入输出对应指定好,调用相应组件,并给与相应输入,那么从组件的输出端就能得到相应输出。当雷达需求发生变化时,可以针对需求在原来的基础上进一步开发组件,并根据信号处理流程来选择所需要的算法组件,丢弃不需要的组件,便于系统升级维护,可重组。算法组件具有如下特征:
(1)算法组件具有标准的对外输入输出通用接口。在对雷达系统维护升级时,可用符合接口规范的新组件快速替换旧部件,提高雷达系统的市场竞争性。
(2)按照标准规范设计实现的雷达信号处理算法、向量矩阵运算和滤波器等组件,能够满足宽带、多通道雷达的功能需求,用于目标检测、识别、成像和抗干扰。并由多种组件构成的算法组件库可保证雷达多体制多模式工作,以组件为单元进行集成可快速实现各种先进算法处理功能,易于提升雷达性能。
(3)组件开发与底层硬件的解耦降低了对算法开发人员知识全面性的要求。开发人员只需掌握关于算法的理论实现,专注于研究如何高效实现算法、提升雷达信号处理效率,而不必关注硬件平台结构资源。
(4)组件为粒度较小、实现某具体功能的算法模块,便于全面测试和改进,进而可保证所集成算法处理结果的准确性。
具体每个算法组件实现步骤如下:
所述脉冲压缩组件的具体实现步骤如下:
(1)提前存储好脉压系数,将必要雷达脉冲参数作为组件输入。
(2)调用MKL计算中间件FFT模块,对雷达脉冲数据帧做傅里叶变换,并与脉压系数相乘。
(3)调用MKL计算中间件逆FFT模块,对上述结果做逆傅里叶变换,得到脉压结果。
所述距离走动校正组件的具体实现步骤如下:
(1)在频域构造一定搜索速度区间范围的频域补偿函数。
(2)将所述频域补偿函数与频域脉压结果进行匹配,并作相参积累,保存每一个补偿函数与脉压结果相乘的结果,以便后续直接使用,减少运算量。
(3)比较每个补偿函数补偿结果,得到最佳搜索速度,并取这个补偿函数对应的结果。此时已经得到经过距离走动校正后的脉压结果。
所述多普勒扩展补偿组件的具体实现步骤如下:
(1)取目标点所在距离单元的多普勒维线性调频信号,对其进行参数估计,估计出其调频率,进而得到加速度值。
(2)用加速度值来补偿距离走动校正后的信号。
所述相参积累组件的具体实现步骤如下:
(1)取脉冲压缩距离走动校正和多普勒扩展补偿后的信号,由于其在内存中存在,为了方便处理不同维度的矩阵,因此需要先将其转置。
(2)将转置后的信号在多普勒维调用MKL计算中间件FFT。
(3)得到相参积累结果。
所述恒虚警检测(CFAR)组件的具体实现步骤如下:
(1)在进行CFAR处理时,需要对每个检测单元左右两侧M个参考单元进行累加取均值处理,如此操作无疑使得参考单元累加取均值处理重复执行多次,降低算法处理速度。
(2)采用卷积处理实现左右两侧参考单元的累加求和计算,调用MKL计算中间件的相关函数实现卷积处理。
(3)通过调用MKL库的卷积函数优化参考单元累加求和运算的处理,实现CFAR的高效处理。
所述点迹凝聚算法组件的具体实现步骤如下:
(1)从恒虚警率检测出来的目标中寻找出其最大幅值点,使其作为第一个目标点,抹除原始数据并对目标另行存储。
(2)通过函数提供窗的长度确定目标在距离维以及速度维两个方向的作用范围,确定目标的窗。
(3)将剩余的目标点进行点迹融合算法处理,判断剩余目标点是否处于该目标的窗内。如果目标点处于该目标的窗之内,则抹除相关信息进行下一个目标点的判断;否则保留该点信息,进行下一个点的处理。
(4)判断所有点之后,重复上述步骤,知道所有点信息被抹除完之后,最终得到目标点信息。
参考图5和图6,针对高速机动目标信号的特点,需要根据其特点指定不同信号处理方案,因此搭建信号处理算法组件的优势在于能够快速适应需求。针对不同速度和不同加速度的雷达信号处理方式是不同的,因此可以按照组件的指定的输入输出,按照逻辑关系来搭建信号处理流程,实现快速开发和维护升级。
虽然,本说明书中已经用一般性说明及具体实施方案对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
Claims (8)
1.一种基于多核CPU的高速机动目标识别数据处理方法,其特征在于,包括以下步骤:
步骤1,创建线程池,设定线程执行任务入口,并在线程池内开辟与数据通道数量相同的线程;
其中,数据通道数与CPU核数相当;
步骤2,预先申请程序中正向和逆向FFT的计划内存,调用快速傅里叶变换工具包FFTW,搭建FFT中间件,用于进行傅里叶变换运算;
步骤3,对每一帧待处理的雷达回波数据量进行预估,并为每帧数据分配对应内存;采用信号通知机制,使用管道将接收的雷达回波数据传递给主线程;
步骤4,主线程监听每个数据通道是否接收数据完毕,当某个通道数据接收完毕后,主线程将接收的数据进行封装,并将其插入请求队列上;
步骤5,当请求队列上有数据待处理时,则唤醒线程池中睡眠的工作线程,工作线程之间通过竞争取得任务并执行;将不同的工作线程调度至不同的CPU核上执行任务;
步骤6,将一个脉组的数据处理过程映射到一个工作线程上,即一个工作线程处理一个脉组数据;当工作线程处理完当前帧数据后,将输出的点迹信息封装后注册写就绪事件,由主线程将结果写入对应的文件并发送。
2.根据权利要求1所述的基于多核CPU的高速机动目标识别数据处理方法,其特征在于,每个工作线程内部根据处理程序搭建对应的算法组件,包括脉冲压缩算法组件、距离走动校正算法组件、多普勒扩展补偿算法组件、相参积累算法组件、恒虚警检测算法组件和点迹凝聚算法组件中的一种或多种。
3.根据权利要求1所述的基于多核CPU的高速机动目标识别数据处理方法,其特征在于,将每个独立的算法组件进行封装,再根据信号处理流程,将不同的算法组件的输入和输出进行搭建连接,最后将搭建好的算法组件映射到工作线程上即可。
4.根据权利要求1所述的基于多核CPU的高速机动目标识别数据处理方法,其特征在于,当某一通道的一个完整数据帧全部接收到缓冲区后,由主线程负责将其从缓冲区读出来并封装好插入请求队列中;当某一工作线程处理完毕后,再向内核中注册写事件,epoll_wait监听到写事件后,由主线程负责将处理结果写入对应缓冲区并输出。
5.根据权利要求4所述的基于多核CPU的高速机动目标识别数据处理方法,其特征在于,所述工作线程的处理结果的输出通过网络发送到显示端或者创建一个异步输出线程写入到输出结果文件。
6.根据权利要求2所述的基于多核CPU的高速机动目标识别数据处理方法,其特征在于,所述脉冲压缩算法组件的具体实现步骤如下:
(1)事先存储脉压系数,将雷达脉冲参数作为组件输入;
(2)调用正向FFT中间件,对雷达脉冲数据帧做傅里叶变换,并与脉压系数相乘;
(3)调用逆向FFT中间件,对上述乘积结果做逆傅里叶变换,得到脉压结果。
7.根据权利要求2所述的基于多核CPU的高速机动目标识别数据处理方法,其特征在于,所述相参积累算法组件的具体实现步骤如下:
(1)取脉冲压缩距离走动校正和多普勒扩展补偿后的信号,并作矩阵转置运算;
(2)将转置后的矩阵在多普勒维调用FFT中间件进行傅里叶变换,得到相参积累结果。
8.根据权利要求2所述的基于多核CPU的高速机动目标识别数据处理方法,其特征在于,所述恒虚警检测算法组件的具体实现步骤如下:采用卷积处理对每个检测单元左右两侧M个参考单元进行累加取均值处理,调用函数库的卷积中间件实现;M为正数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110850358.3A CN113671478B (zh) | 2021-07-27 | 2021-07-27 | 基于多核cpu的高速机动目标识别数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110850358.3A CN113671478B (zh) | 2021-07-27 | 2021-07-27 | 基于多核cpu的高速机动目标识别数据处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113671478A true CN113671478A (zh) | 2021-11-19 |
CN113671478B CN113671478B (zh) | 2024-04-23 |
Family
ID=78540486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110850358.3A Active CN113671478B (zh) | 2021-07-27 | 2021-07-27 | 基于多核cpu的高速机动目标识别数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113671478B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114691375A (zh) * | 2022-06-02 | 2022-07-01 | 青岛展诚科技有限公司 | 基于并行算法的集成电路电阻抽取方法 |
CN115080206A (zh) * | 2022-06-14 | 2022-09-20 | 哈尔滨工业大学 | 一种基于多线程机制的高速回波数据实时记录系统及记录方法 |
CN115656961A (zh) * | 2022-12-26 | 2023-01-31 | 南京楚航科技有限公司 | 一种基于并行处理器的os-cfar处理方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102901956A (zh) * | 2012-09-27 | 2013-01-30 | 电子科技大学 | 一种雷达微弱目标检测方法 |
CN104849698A (zh) * | 2015-05-21 | 2015-08-19 | 中国人民解放军海军工程大学 | 一种基于异构多核系统的雷达信号并行处理方法及系统 |
CN104899064A (zh) * | 2015-06-03 | 2015-09-09 | 成都天奥信息科技有限公司 | 一种脉压导航雷达的双多核dsp的远程智能升级方法 |
CN108802697A (zh) * | 2017-12-29 | 2018-11-13 | 西安电子科技大学 | 一种脉冲多普勒雷达信号的混合并行处理方法 |
CN111220958A (zh) * | 2019-12-10 | 2020-06-02 | 西安宁远电子电工技术有限公司 | 基于一维卷积神经网络的雷达目标多普勒像分类识别方法 |
KR102174056B1 (ko) * | 2020-03-20 | 2020-11-04 | 엘아이지넥스원 주식회사 | Gpu 기반의 레이더 신호 처리 시스템 및 이의 신호 처리 방법 |
-
2021
- 2021-07-27 CN CN202110850358.3A patent/CN113671478B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102901956A (zh) * | 2012-09-27 | 2013-01-30 | 电子科技大学 | 一种雷达微弱目标检测方法 |
CN104849698A (zh) * | 2015-05-21 | 2015-08-19 | 中国人民解放军海军工程大学 | 一种基于异构多核系统的雷达信号并行处理方法及系统 |
CN104899064A (zh) * | 2015-06-03 | 2015-09-09 | 成都天奥信息科技有限公司 | 一种脉压导航雷达的双多核dsp的远程智能升级方法 |
CN108802697A (zh) * | 2017-12-29 | 2018-11-13 | 西安电子科技大学 | 一种脉冲多普勒雷达信号的混合并行处理方法 |
CN111220958A (zh) * | 2019-12-10 | 2020-06-02 | 西安宁远电子电工技术有限公司 | 基于一维卷积神经网络的雷达目标多普勒像分类识别方法 |
KR102174056B1 (ko) * | 2020-03-20 | 2020-11-04 | 엘아이지넥스원 주식회사 | Gpu 기반의 레이더 신호 처리 시스템 및 이의 신호 처리 방법 |
Non-Patent Citations (1)
Title |
---|
范晓波;张永杰;王俊;李少洪;: "基于多处理器高距离分辨力雷达算法并行实现", 北京航空航天大学学报, no. 09, 30 October 2006 (2006-10-30) * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114691375A (zh) * | 2022-06-02 | 2022-07-01 | 青岛展诚科技有限公司 | 基于并行算法的集成电路电阻抽取方法 |
CN114691375B (zh) * | 2022-06-02 | 2022-08-26 | 青岛展诚科技有限公司 | 基于并行算法的集成电路电阻抽取方法 |
CN115080206A (zh) * | 2022-06-14 | 2022-09-20 | 哈尔滨工业大学 | 一种基于多线程机制的高速回波数据实时记录系统及记录方法 |
CN115080206B (zh) * | 2022-06-14 | 2023-08-08 | 哈尔滨工业大学 | 一种基于多线程机制的高速回波数据实时记录系统及记录方法 |
CN115656961A (zh) * | 2022-12-26 | 2023-01-31 | 南京楚航科技有限公司 | 一种基于并行处理器的os-cfar处理方法及系统 |
CN115656961B (zh) * | 2022-12-26 | 2023-03-10 | 南京楚航科技有限公司 | 一种基于并行处理器的os-cfar处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113671478B (zh) | 2024-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113671478B (zh) | 基于多核cpu的高速机动目标识别数据处理方法 | |
Otterness et al. | An evaluation of the NVIDIA TX1 for supporting real-time computer-vision workloads | |
Amert et al. | GPU scheduling on the NVIDIA TX2: Hidden details revealed | |
Schliecker et al. | Bounding the shared resource load for the performance analysis of multiprocessor systems | |
US9996394B2 (en) | Scheduling accelerator tasks on accelerators using graphs | |
US9047114B2 (en) | Method and system for analyzing parallelism of program code | |
Nukada et al. | NVCR: A transparent checkpoint-restart library for NVIDIA CUDA | |
Maia et al. | Schedulability analysis for global fixed-priority scheduling of the 3-phase task model | |
CN112612523B (zh) | 一种嵌入式设备驱动系统及方法 | |
CN101937082A (zh) | 基于gpu众核平台的合成孔径雷达并行成像方法 | |
Savic et al. | An automatic language identification system | |
Otterness et al. | GPU sharing for image processing in embedded real-time systems | |
Amert et al. | OpenVX and real-time certification: The troublesome history | |
CN111459647A (zh) | 基于嵌入式操作系统的dsp多核处理器并行运算方法及装置 | |
Moazzami et al. | Orbit: A platform for smartphone-based data-intensive sensing applications | |
Soliman et al. | Segment streaming for the three-phase execution model: Design and implementation | |
CN110990227B (zh) | 一种数值水池应用特征性能采集和监控系统及其运行方法 | |
CN110716710A (zh) | 一种雷达信号处理软件架构 | |
CN111443898A (zh) | 基于优先级队列与有限状态机的流程式控制软件设计方法 | |
US20220100512A1 (en) | Deterministic replay of a multi-threaded trace on a multi-threaded processor | |
Iyengar et al. | On simulating faults in parallel | |
Feng et al. | Efficient task assignment and scheduling on MPSOC with STT-RAM based hybrid SPMs considering data allocation | |
Wang et al. | Optimally removing synchronization overhead for CNNs in three-dimensional neuromorphic architecture | |
Ara et al. | Tight temporal bounds for dataflow applications mapped onto shared resources | |
Chen et al. | An activity-sensitive contention delay model for highly efficient deterministic full-system simulations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |